Refactoring, fix bugs, move loader to itcm (without overwriting exception handlers), support for running Luma standalone

This commit is contained in:
Aurora Wright
2017-05-24 15:18:31 +02:00
committed by TuxSH
parent 0b65fcbdd7
commit 9f30244bfb
10 changed files with 163 additions and 82 deletions

View File

@@ -27,25 +27,29 @@
void main(int argc, char **argv)
{
Firm *firm = (Firm *)0x20001000;
char *argvPassed[2],
absPath[24 + 255];
struct fb fbs[2];
char absPath[24 + 255];
if(argc == 2)
{
struct fb *fbsrc = (struct fb *)argv[1];
fbs[0] = fbsrc[0];
fbs[1] = fbsrc[1];
}
if(argc >= 1)
if(argc > 0)
{
u32 i;
for(i = 0; i < sizeof(absPath) - 1 && argv[0][i] != 0; i++)
absPath[i] = argv[0][i];
absPath[i] = 0;
argvPassed[0] = (char *)absPath;
}
char *argvPassed[2] = {absPath, (char *)&fbs};
if(argc == 2)
{
struct fb *fbsrc = (struct fb *)argv[1];
fbs[0] = fbsrc[0];
fbs[1] = fbsrc[1];
argvPassed[1] = (char *)&fbs;
}
launchFirm(firm, argc, argvPassed);
}

View File

@@ -24,7 +24,7 @@
.align 4
.global _start
_start:
ldr sp, =0x27ffe000
ldr sp, =__stack_top__
b main
.text