Get rid of the double FatFs

This commit is contained in:
Aurora
2016-05-03 03:05:11 +02:00
parent fef48a449a
commit 905f816bbe
25 changed files with 49 additions and 7382 deletions

View File

@@ -72,7 +72,7 @@ void loadPayload(u32 pressed)
DIR dir;
FILINFO info;
char path[] = "/luma/payloads";
char path[28] = "/luma/payloads";
FRESULT result = f_findfirst(&dir, &info, path, pattern);
@@ -81,13 +81,25 @@ void loadPayload(u32 pressed)
if(result == FR_OK && info.fname[0])
{
initScreens();
memcpy((void *)PAYLOAD_ADDRESS, loader, loader_size);
path[sizeof(path) - 1] = '/';
memcpy((void *)(PAYLOAD_ADDRESS + 4), path, sizeof(path));
memcpy((void *)(PAYLOAD_ADDRESS + 4 + sizeof(path)), info.altname, 13);
u32 *const loaderAddress = (u32 *)0x24FFFB00;
((void (*)())PAYLOAD_ADDRESS)();
memcpy(loaderAddress, loader, loader_size);
path[14] = '/';
memcpy(&path[15], info.altname, 13);
FIL payload;
unsigned int read;
f_open(&payload, path, FA_READ);
u32 size = f_size(&payload);
f_read(&payload, (void *)0x24F00000, size, &read);
f_close(&payload);
loaderAddress[1] = size;
((void (*)())loaderAddress)();
}
}

View File

@@ -6,7 +6,6 @@
#include "types.h"
#define PAYLOAD_ADDRESS 0x24F00000
#define PATTERN(a) a "_*.bin"
u32 mountFs(void);

View File

@@ -47,12 +47,14 @@ void initScreens(void)
{
if(PDN_GPU_CNT == 1)
{
memcpy((void *)SCREENINIT_ADDRESS, screeninit, screeninit_size);
u32 *const screenInitAddress = (u32 *)0x24FFFC00;
memcpy(screenInitAddress, screeninit, screeninit_size);
//Write brightness level for the stub to pick up
*(vu32 *)(SCREENINIT_ADDRESS + 8) = MULTICONFIG(0);
screenInitAddress[2] = MULTICONFIG(0);
*arm11Entry = SCREENINIT_ADDRESS;
*arm11Entry = (u32)screenInitAddress;
while(*arm11Entry);
//Turn on backlight

View File

@@ -10,7 +10,6 @@
#include "types.h"
#define PDN_GPU_CNT (*(vu8 *)0x10141200)
#define SCREENINIT_ADDRESS 0x24F02000
void deinitScreens(void);
void initScreens(void);