diff --git a/build/nandfirm/menu-launcher/ARM7/Makefile b/build/nandfirm/menu-launcher/ARM7/Makefile index 39f65d54..a990d95a 100644 --- a/build/nandfirm/menu-launcher/ARM7/Makefile +++ b/build/nandfirm/menu-launcher/ARM7/Makefile @@ -37,7 +37,10 @@ CRT0_O = crt0_firm.o include $(TWLIPL_ROOT)/build/buildtools/commondefs -LLIBRARIES += libaes_sp$(TWL_LIBSUFFIX).a +LLIBRARIES += $(if $(ISDBG_LIBS_TWL),$(ISDBG_LIBS_TWL),libstubsistd_sp$(TWL_LIBSUFFIX).a) \ + $(if $(ISDBG_LIBS_NITRO),$(ISDBG_LIBS_NITRO),libstubsisd_sp$(TWL_LIBSUFFIX).a) \ + libaes_sp$(TWL_LIBSUFFIX).a + MAKELCF_FLAGS += -DADDRESS_LTDWRAM='0x037c0000' #---------------------------------------------------------------------------- @@ -47,5 +50,4 @@ do-build: $(TARGETS) include $(TWLIPL_ROOT)/build/buildtools/modulerules - #===== End of Makefile ===== diff --git a/build/nandfirm/menu-launcher/ARM7/main.c b/build/nandfirm/menu-launcher/ARM7/main.c index 4062974b..ef2e3eda 100644 --- a/build/nandfirm/menu-launcher/ARM7/main.c +++ b/build/nandfirm/menu-launcher/ARM7/main.c @@ -65,7 +65,8 @@ static void PreInit(void) /* リセットパラメータ(1バイト)を共有領域(4バイト)にコピー */ - *(u32*)HW_RESET_PARAMETER_BUF = (u32)MCUi_ReadRegister( MCU_REG_TEMP_ADDR ); +#define FIRM_AVAILABLE_BIT 0x80000000UL + *(u32*)HW_RESET_PARAMETER_BUF = (u32)MCUi_ReadRegister( MCU_REG_TEMP_ADDR ) | FIRM_AVAILABLE_BIT; /* バッテリー残量チェック */ @@ -83,7 +84,8 @@ static void PreInit(void) static void EraseAll(void) { #ifdef SDK_FINALROM - // TODO + MI_CpuClearFast( (void*)HW_TWL_ROM_HEADER_BUF, HW_TWL_ROM_HEADER_BUF_SIZE ); + OS_BootFromFIRM(); #endif } @@ -116,8 +118,8 @@ static BOOL FsInit(void) SDNandContext = &OSi_GetFromFirmAddr()->SDNandContext; - FS_Init( FS_DMA_NO ); - FS_CreateReadServerThread( THREAD_PRIO_FS ); + //FS_Init( FS_DMA_NO ); // just CARD_Init + //FS_CreateReadServerThread( THREAD_PRIO_FS ); // just CARD_SetThreadPriority if ( !FATFS_Init( FATFS_DMA_NOT_USE, THREAD_PRIO_FATFS ) ) { @@ -168,6 +170,7 @@ void TwlSpMain( void ) if ( !FsInit() ) { + OS_TPrintf("Failed to call FsInit().\n"); goto end; } @@ -180,6 +183,7 @@ void TwlSpMain( void ) if ( PXI_RecvID() != FIRM_PXI_ID_SET_PATH ) { + OS_TPrintf("PXI_RecvID() was received invalid value (!=FIRM_PXI_ID_SET_PATH).\n"); goto end; } @@ -192,6 +196,7 @@ void TwlSpMain( void ) if ( (fd = FS_OpenSrl()) < 0 ) { + OS_TPrintf("Failed to call FS_OpenSrl().\n"); goto end; } @@ -204,6 +209,7 @@ void TwlSpMain( void ) if ( !FS_LoadHeader( fd ) ) { + OS_TPrintf("Failed to call FS_LoadHeader().\n"); goto end; } @@ -216,6 +222,7 @@ void TwlSpMain( void ) if ( PXI_RecvID() != FIRM_PXI_ID_DONE_HEADER ) { + OS_TPrintf("PXI_RecvID() was received invalid value (!=FIRM_PXI_ID_DONE_HEADER).\n"); goto end; } @@ -228,6 +235,7 @@ void TwlSpMain( void ) if ( !FS_LoadStatic( fd ) ) { + OS_TPrintf("Failed to call FS_LoadStatic().\n"); goto end; } @@ -240,6 +248,7 @@ void TwlSpMain( void ) if ( PXI_RecvID() != FIRM_PXI_ID_DONE_STATIC ) { + OS_TPrintf("PXI_RecvID() was received invalid value (!=FIRM_PXI_ID_DONE_STATIC).\n"); goto end; } @@ -258,7 +267,7 @@ void TwlSpMain( void ) OS_TPrintf("\n[ARM7] End\n"); } #endif - OS_SetDebugLED(++step); // 0x8c + OS_SetDebugLED( 0 ); PM_BackLightOn( TRUE ); // last chance OS_BootFromFIRM(); diff --git a/build/nandfirm/menu-launcher/ARM9/Makefile b/build/nandfirm/menu-launcher/ARM9/Makefile index 80865dc0..10376bb6 100644 --- a/build/nandfirm/menu-launcher/ARM9/Makefile +++ b/build/nandfirm/menu-launcher/ARM9/Makefile @@ -30,7 +30,6 @@ CRT0_O = crt0_firm.o MAKEROM_ARM7 = ../ARM7/bin/$(TWL_BUILDTYPE_ARM7)/menu_launcher7.tef MAKEROM_ARM7_BASE = $(basename $(MAKEROM_ARM7)) -MAKEROM_FLAGS += -F #LCFILE_TEMPLATE = $(FIRM_SPECDIR)/$(TWL_PROC)-$(TWL_PLATFORM)-PARTNER.lcf.template diff --git a/build/nandfirm/menu-launcher/ARM9/main.c b/build/nandfirm/menu-launcher/ARM9/main.c index 49e91524..7a27f8f6 100644 --- a/build/nandfirm/menu-launcher/ARM9/main.c +++ b/build/nandfirm/menu-launcher/ARM9/main.c @@ -68,7 +68,7 @@ static void PreInit(void) { static const OSMountInfo firmSettings[] = { - { 'A', OS_MOUNT_DEVICE_NAND, OS_MOUNT_TGT_ROOT, 0, OS_MOUNT_RSC_WRAM, (OS_MOUNT_USR_R|OS_MOUNT_USR_W), 0, 0, "nand", "/" }, + { 'F', OS_MOUNT_DEVICE_NAND, OS_MOUNT_TGT_ROOT, 0, OS_MOUNT_RSC_WRAM, (OS_MOUNT_USR_R|OS_MOUNT_USR_W), 0, 0, "nand", "/" }, { 0 } }; /* @@ -135,7 +135,8 @@ static BOOL CheckHeader(void) static void EraseAll(void) { #ifdef SDK_FINALROM - // TODO + MI_CpuClearFast( (void*)HW_TWL_ROM_HEADER_BUF, HW_TWL_ROM_HEADER_BUF_SIZE ); + OS_BootFromFIRM(); #endif } @@ -184,6 +185,7 @@ void TwlMain( void ) if ( !FS_ResolveSrl( MENU_TITLE_ID ) ) { + OS_TPrintf("Failed to call FS_ResolveSrl( 0x%llx ).\n", MENU_TITLE_ID); goto end; } @@ -201,6 +203,7 @@ void TwlMain( void ) if ( !FS_LoadHeader(&acPool, RSA_KEY_ADDR ) && CheckHeader() ) { + OS_TPrintf("Failed to call FS_LoadHeader() and/or CheckHeader().\n"); goto end; } @@ -218,6 +221,7 @@ void TwlMain( void ) if ( !FS_LoadStatic() ) { + OS_TPrintf("Failed to call FS_LoadStatic().\n"); goto end; } diff --git a/build/nandfirm/menu-launcher/nandfirm.nandsf b/build/nandfirm/menu-launcher/nandfirm.nandsf index 29cd4bf6..cdea8b16 100644 --- a/build/nandfirm/menu-launcher/nandfirm.nandsf +++ b/build/nandfirm/menu-launcher/nandfirm.nandsf @@ -21,4 +21,4 @@ ARM7_ELF : $(MAKEFIRM_ARM7).tef ARM9_X2 : TRUE # TRUE or FALSE -NCD_ROMOFS : 0x07fe00 +NCD_ROMOFS : 0x0f00 diff --git a/build/nandfirm/sdmc-launcher/ARM7/Makefile b/build/nandfirm/sdmc-launcher/ARM7/Makefile index a0d97ed6..046fa05a 100644 --- a/build/nandfirm/sdmc-launcher/ARM7/Makefile +++ b/build/nandfirm/sdmc-launcher/ARM7/Makefile @@ -37,7 +37,10 @@ CRT0_O = crt0_firm.o include $(TWLIPL_ROOT)/build/buildtools/commondefs -LLIBRARIES += libaes_sp$(TWL_LIBSUFFIX).a +LLIBRARIES += $(if $(ISDBG_LIBS_TWL),$(ISDBG_LIBS_TWL),libstubsistd_sp$(TWL_LIBSUFFIX).a) \ + $(if $(ISDBG_LIBS_NITRO),$(ISDBG_LIBS_NITRO),libstubsisd_sp$(TWL_LIBSUFFIX).a) \ + libaes_sp$(TWL_LIBSUFFIX).a + MAKELCF_FLAGS += -DADDRESS_LTDWRAM='0x037c0000' #---------------------------------------------------------------------------- @@ -47,9 +50,4 @@ do-build: $(TARGETS) include $(TWLIPL_ROOT)/build/buildtools/modulerules -test: - @echo LLIBRARY_DIRS=$(LLIBRARY_DIRS) - @echo TWL_BUILDTYPE=$(TWL_BUILDTYPE) - - #===== End of Makefile ===== diff --git a/build/nandfirm/sdmc-launcher/ARM9/Makefile b/build/nandfirm/sdmc-launcher/ARM9/Makefile index 8a291646..e5c6aa8a 100644 --- a/build/nandfirm/sdmc-launcher/ARM9/Makefile +++ b/build/nandfirm/sdmc-launcher/ARM9/Makefile @@ -30,7 +30,6 @@ CRT0_O = crt0_firm.o MAKEROM_ARM7 = ../ARM7/bin/$(TWL_BUILDTYPE_ARM7)/sdmc_launcher7.tef MAKEROM_ARM7_BASE = $(basename $(MAKEROM_ARM7)) -MAKEROM_FLAGS += -F #LCFILE_TEMPLATE = $(FIRM_SPECDIR)/$(TWL_PROC)-$(TWL_PLATFORM)-PARTNER.lcf.template diff --git a/build/norfirm/norfirm-print/ARM7/Makefile b/build/norfirm/norfirm-print/ARM7/Makefile index fd7a991a..d563a18a 100644 --- a/build/norfirm/norfirm-print/ARM7/Makefile +++ b/build/norfirm/norfirm-print/ARM7/Makefile @@ -34,6 +34,10 @@ SRCS = \ #SRCDIR = # using default #LCFILE = # using default +LLIBRARIES += $(if $(ISDBG_LIBS_TWL),$(ISDBG_LIBS_TWL),libstubsistd_sp$(TWL_LIBSUFFIX).a) \ + $(if $(ISDBG_LIBS_NITRO),$(ISDBG_LIBS_NITRO),libstubsisd_sp$(TWL_LIBSUFFIX).a) \ + +MAKELCF_FLAGS += -DADDRESS_LTDWRAM='0x037c0000' include $(TWLIPL_ROOT)/build/buildtools/commondefs