mirror of
https://github.com/rvtr/TwlIPL.git
synced 2025-10-31 06:01:12 -04:00
ランチャーのメモリマップ変更。ARM9への割り当てを増やす。
git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@1427 b08762b0-b915-fc4b-9d8c-17b2551a87ff
This commit is contained in:
parent
9a82c1cc2b
commit
251872aadc
@ -47,7 +47,6 @@ CCFLAGS_OPT = -O4 -inline off
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
include $(TWL_IPL_RED_ROOT)/build/buildtools/commondefs
|
||||
include $(TWLSDK_ROOT)/build/libraries/reboot/commondefs.reboot
|
||||
|
||||
GLIBRARIES := $(filter-out $(CRT0_O),$(GLIBRARIES))
|
||||
|
||||
@ -91,13 +90,19 @@ INSTALL_DIR = $(TWL_INSTALL_COMPONENTSDIR)/$(TARGET_NAME)/$(TWL_BUILDTYPE)
|
||||
LINCLUDES = $(ROOT)/build/libraries/spi/ARM7/include \
|
||||
$(ROOT)/build/libraries/spi/ARM7/pm/include \
|
||||
$(ROOT)/build/libraries/init/common/include \
|
||||
$(ROOT)/build/libraries/reboot/common/include \
|
||||
$(SYSMENU_ROOT)/build/libraries_sysmenu/sysmenu/common/include
|
||||
|
||||
LLIBRARY_DIRS += ./
|
||||
LLIBRARIES += libwl_sp.TWL.LTD.a \
|
||||
libaes_sp.firm.LTD.a \
|
||||
libsea_sp.TWL.LTD.a
|
||||
|
||||
LLIBRARIES += libwl_sp.TWL.LTD.a \
|
||||
libaes_sp.firm.LTD.a \
|
||||
libsea_sp.TWL.LTD.a \
|
||||
libreboot_sp$(TWL_LIBSUFFIX).a
|
||||
|
||||
LDEPENDS_NEF = $(TWL_LIBS) $(LLIBRARIES)
|
||||
|
||||
|
||||
do-build: $(TARGETS)
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
|
||||
@ -111,9 +111,12 @@ BOOL BOOT_WaitStart( void )
|
||||
// 起動アプリNTR-ROMヘッダへのパッチ処理のためコピー
|
||||
MI_CpuCopyFast( th, dh, HW_CARD_ROM_HEADER_SIZE );
|
||||
|
||||
// カードNTR-ROMヘッダをNANDアプリやマルチブートのためコピー
|
||||
// カードNTR-ROMヘッダをNANDアプリやDSダウンロードプレイのためコピー
|
||||
MI_CpuCopyFast( (void*)SYSM_CARD_ROM_HEADER_BAK, (void*)HW_CARD_ROM_HEADER, HW_CARD_ROM_HEADER_SIZE );
|
||||
|
||||
// この処理は、DSダウンロードプレイ側で行う。
|
||||
// MI_CpuCopyFast ( (void *)HW_CARD_ROM_HEADER, (void *)MB_CARD_ROM_HEADER_ADDRESS, 0x160);
|
||||
|
||||
// ブラックリストをチェックし、起動制限をかける
|
||||
BOOTi_CheckTitleBlackList( (void*)th );
|
||||
|
||||
|
||||
@ -152,12 +152,12 @@ BOOL SYSMi_CheckEntryAddress( void )
|
||||
{
|
||||
// エントリアドレスがROM内登録エリアかAGBカートリッジエリアなら、無限ループに入る。
|
||||
if( !( ( (u32)SYSM_GetCardRomHeader()->main_entry_address >= HW_MAIN_MEM ) &&
|
||||
( (u32)SYSM_GetCardRomHeader()->main_entry_address < SYSM_ARM9_MMEM_ENTRY_ADDR_LIMIT )
|
||||
( (u32)SYSM_GetCardRomHeader()->main_entry_address < HW_TWL_MAIN_MEM_SHARED )
|
||||
) ||
|
||||
!( ( ( (u32)SYSM_GetCardRomHeader()->sub_entry_address >= HW_MAIN_MEM ) &&
|
||||
( (u32)SYSM_GetCardRomHeader()->sub_entry_address < SYSM_ARM7_LOAD_MMEM_LAST_ADDR ) ) ||
|
||||
( ( (u32)SYSM_GetCardRomHeader()->sub_entry_address >= HW_WRAM ) &&
|
||||
( (u32)SYSM_GetCardRomHeader()->sub_entry_address < SYSM_ARM7_LOAD_WRAM_LAST_ADDR ) )
|
||||
( (u32)SYSM_GetCardRomHeader()->sub_entry_address < HW_TWL_MAIN_MEM_SHARED ) ) ||
|
||||
( ( (u32)SYSM_GetCardRomHeader()->sub_entry_address >= HW_WRAM_BASE ) &&
|
||||
( (u32)SYSM_GetCardRomHeader()->sub_entry_address < SYSM_NTR_ARM7_LOAD_WRAM_END ) )
|
||||
)
|
||||
) {
|
||||
OS_TPrintf("entry address invalid.\n");
|
||||
|
||||
@ -20,11 +20,16 @@
|
||||
|
||||
Static $(TARGET_NAME)
|
||||
{
|
||||
Address 0x02800200
|
||||
Address 0x02681400
|
||||
Object $(OBJS_STATIC)
|
||||
Library $(LLIBS) $(GLIBS) $(CW_LIBS)
|
||||
}
|
||||
|
||||
Autoload REBOOT
|
||||
{
|
||||
Address 0x02680200
|
||||
Library $(REBOOT_LIB)
|
||||
}
|
||||
|
||||
Autoload ITCM
|
||||
{
|
||||
|
||||
@ -19,11 +19,11 @@
|
||||
|
||||
# ※コンパイルスイッチの都合上、../../../libraries_sysmenu/sysmenu は有効にしておく
|
||||
SUBDIRS = \
|
||||
../../../libraries_sysmenu/sysmenu \
|
||||
../../../libraries_sysmenu/boot \
|
||||
../../../components/hyena.TWL \
|
||||
../../../libraries_sysmenu/hotsw \
|
||||
../../../libraries_sysmenu/sharedFont \
|
||||
# ../../../libraries_sysmenu/sysmenu \
|
||||
# ../../../libraries_sysmenu/boot \
|
||||
# ../../../components/hyena.TWL \
|
||||
# ../../../libraries_sysmenu/hotsw \
|
||||
# ../../../libraries_sysmenu/sharedFont \
|
||||
# ../../../libraries_sysmenu/reloc_info \
|
||||
# ../../../libraries_sysmenu/mcu \
|
||||
# ../../../libraries_sysmenu/ds \
|
||||
@ -83,8 +83,9 @@ SRCS = main.c launcher.c sound.c bannerCounter.c loadWlanFirm.c loadSharedFo
|
||||
|
||||
LINCLUDES = $(MISC_DIR)/include \
|
||||
$(SRCDIR)/$(LOGO_DIR) \
|
||||
$(TWLSDK_ROOT)/build/libraries/wm/common.TWL/inc \
|
||||
$(TWLSDK_ROOT)/build/libraries/wm/ARM9.TWL/nwm/inc
|
||||
$(ROOT)/build/libraries/wm/common.TWL/inc \
|
||||
$(ROOT)/build/libraries/wm/ARM9.TWL/nwm/inc \
|
||||
$(ROOT)/build/libraries/reboot/common/include
|
||||
|
||||
LLIBRARIES += libes$(TWL_LIBSUFFIX).a \
|
||||
libboc$(TWL_LIBSUFFIX).a \
|
||||
@ -96,13 +97,21 @@ LLIBRARIES += libes$(TWL_LIBSUFFIX).a \
|
||||
libsharedfont_launcher$(TWL_LIBSUFFIX).a \
|
||||
WDS$(TWL_LIBSUFFIX).a
|
||||
|
||||
REBOOT_LIB = libreboot$(TWL_LIBSUFFIX).a
|
||||
|
||||
LDEPENDS_NEF += $(REBOOT_LIB)
|
||||
|
||||
ADDRESS_DTCM = 0x0e000000
|
||||
|
||||
DEFAULT_COMP_ARM7 = hyena
|
||||
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Append Flags
|
||||
|
||||
|
||||
MAKELCF_FLAGS += -DREBOOT_LIB='$(REBOOT_LIB)'
|
||||
|
||||
MAKEROM_FLAGS += -F \
|
||||
-DTITLEID_LO='$(TITLEID_LO)' \
|
||||
-DCARD_REGION='$(CARD_REGION)' \
|
||||
@ -144,7 +153,7 @@ endif
|
||||
#----------------------------------------------------------------------------
|
||||
|
||||
include $(TWL_IPL_RED_ROOT)/build/buildtools/commondefs
|
||||
include $(TWLSDK_ROOT)/build/libraries/reboot/commondefs.reboot
|
||||
|
||||
|
||||
# ローカルでビルドしたlibsharedfont_launcherを使用するので、SDKのlibsharedfontは除外する。
|
||||
GLIBRARIES := $(filter-out libsharedfont$(TWL_LIBSUFFIX).a,$(GLIBRARIES))
|
||||
|
||||
Binary file not shown.
@ -29,12 +29,8 @@ extern "C" {
|
||||
// define data ------------------------------------
|
||||
|
||||
// SystemMenu自身のマップ情報定義
|
||||
#define SYSM_OWN_ARM9_MMEM_ADDR 0x02800000
|
||||
//#ifdef DEBUG_USED_CARD_SLOT_B_
|
||||
#define SYSM_OWN_ARM9_MMEM_ADDR_END 0x02e73000
|
||||
#if 0
|
||||
#define SYSM_OWN_ARM9_MMEM_ADDR_END 0x02e76000
|
||||
#endif
|
||||
#define SYSM_OWN_ARM9_MMEM_ADDR SYSM_TWL_ARM9_LTD_LOAD_MMEM_END
|
||||
#define SYSM_OWN_ARM9_MMEM_ADDR_END SYSM_TWL_ARM7_LTD_LOAD_MMEM
|
||||
#define SYSM_OWN_ARM9_MMEM_CODE_ADDR (SYSM_OWN_ARM9_MMEM_ADDR + SYSM_DMA_BUFOVER_BARRIER_SIZE)
|
||||
#define SYSM_OWN_ARM7_MMEM_ADDR 0x02280000
|
||||
#define SYSM_OWN_ARM7_MMEM_ADDR_END 0x02380000
|
||||
@ -47,21 +43,13 @@ extern u32 SDK_AUTOLOAD_WRAM_START[];
|
||||
#endif
|
||||
#define SYSM_OWN_ARM7_WRAM_ADDR_END 0x0380f000
|
||||
|
||||
#define SYSM_BOOTCODE_ARM9_ADDR 0x027ffc00 // ARM9最終ブートコードアドレス
|
||||
#define SYSROM9_NINLOGO_ADR 0xffff0020 // ARM9システムROM内の任天堂ロゴ格納アドレス
|
||||
|
||||
#define SYSM_DMA_BUFOVER_BARRIER_SIZE 0x0200
|
||||
|
||||
// カードアプリ格納バッファ(ROMヘッダバッファはNANDアプリでも使用)
|
||||
#define SYSM_APP_ROM_HEADER_SIZE 0x1000
|
||||
|
||||
//#ifdef DEBUG_USED_CARD_SLOT_B_
|
||||
#define SYSM_CARD_BANNER_BUF ( SYSM_OWN_ARM9_MMEM_ADDR_END )
|
||||
#define SYSM_CARD_BANNER_BUF_END ( SYSM_CARD_BANNER_BUF + 0x3000 )
|
||||
#define SYSM_APP_ROM_HEADER_BUF ( SYSM_CARD_BANNER_BUF_END )
|
||||
#if 0
|
||||
#define SYSM_APP_ROM_HEADER_BUF ( SYSM_OWN_ARM9_MMEM_ADDR_END )
|
||||
#endif
|
||||
#define SYSM_APP_ROM_HEADER_BUF ( 0x02fe6000 )
|
||||
#define SYSM_APP_ROM_HEADER_BUF_END ( SYSM_APP_ROM_HEADER_BUF + SYSM_APP_ROM_HEADER_SIZE )
|
||||
#define SYSM_CARD_ROM_HEADER_BAK ( SYSM_APP_ROM_HEADER_BUF_END )
|
||||
#define SYSM_CARD_ROM_HEADER_BAK_END ( SYSM_CARD_ROM_HEADER_BAK + SYSM_APP_ROM_HEADER_SIZE )
|
||||
@ -69,6 +57,8 @@ extern u32 SDK_AUTOLOAD_WRAM_START[];
|
||||
#define SYSM_CARD_NTR_SECURE_BUF_END ( SYSM_CARD_NTR_SECURE_BUF + SECURE_AREA_SIZE )
|
||||
#define SYSM_CARD_TWL_SECURE_BUF ( SYSM_CARD_NTR_SECURE_BUF_END )
|
||||
#define SYSM_CARD_TWL_SECURE_BUF_END ( SYSM_CARD_TWL_SECURE_BUF + SECURE_AREA_SIZE )
|
||||
#define SYSM_CARD_BANNER_BUF ( SYSM_CARD_TWL_SECURE_BUF_END )
|
||||
#define SYSM_CARD_BANNER_BUF_END ( SYSM_CARD_BANNER_BUF + 0x3000 )
|
||||
|
||||
#define SYSM_NTR_ROM_HEADER_BUF 0x023ffe00
|
||||
#define SYSM_DBG_NTR_ROM_HEADER_BUF 0x027ffe00
|
||||
@ -92,7 +82,7 @@ extern u32 SDK_AUTOLOAD_WRAM_START[];
|
||||
#define SYSM_TWL_ARM7_LOAD_WRAM_END SYSM_NTR_ARM7_LOAD_WRAM_END // ロード可能なARM7 static WRAM 最終アドレス
|
||||
|
||||
#define SYSM_TWL_ARM9_LTD_LOAD_MMEM 0x02400000 // ロード可能なARM9 LTD static MMEM アドレス
|
||||
#define SYSM_TWL_ARM9_LTD_LOAD_MMEM_END 0x02800000 // ロード可能なARM9 LTD static MMEM 最終アドレス
|
||||
#define SYSM_TWL_ARM9_LTD_LOAD_MMEM_END 0x02680000 // ロード可能なARM9 LTD static MMEM 最終アドレス
|
||||
#define SYSM_TWL_ARM7_LTD_LOAD_MMEM 0x02e80000 // ロード可能なARM7 LTD static MMEM アドレス
|
||||
#define SYSM_TWL_ARM7_LTD_LOAD_MMEM_END 0x02f88000 // ロード可能なARM7 LTD static MMEM 最終アドレス
|
||||
#define SYSM_TWL_ARM7_LTD_LOAD_WRAM 0x037c0000 // ロード可能なARM7 LTD static WRAM アドレス
|
||||
@ -103,12 +93,6 @@ extern u32 SDK_AUTOLOAD_WRAM_START[];
|
||||
// マウント情報一時バッファ
|
||||
#define SYSM_TWL_MOUNT_INFO_TMP_BUFFER 0x02ff3400 // マウント情報の一時バッファ
|
||||
|
||||
// ※旧NTR-IPL2のレガシーコード 整理予定
|
||||
#define SYSM_ARM9_LOAD_MMEM_LAST_ADDR 0x02280000 // ロード可能なARM9 staticメインメモリ最終アドレス
|
||||
#define SYSM_ARM7_LOAD_MMEM_LAST_ADDR 0x023c0000 // ロード可能なARM7 staticメインメモリ最終アドレス
|
||||
#define SYSM_ARM7_LOAD_WRAM_LAST_ADDR SYSM_OWN_ARM7_WRAM_ADDR_END // ロード可能なARM7 staticメインメモリ最終アドレス
|
||||
#define SYSM_ARM9_MMEM_ENTRY_ADDR_LIMIT SYSM_ARM9_LOAD_MMEM_LAST_ADDR
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
Loading…
Reference in New Issue
Block a user