mirror of
https://github.com/HarbourMasters/Starship.git
synced 2025-01-23 05:25:01 +03:00
Set up yaml and linker scripts for jp0 (#244)
* splits * split and migrate
This commit is contained in:
parent
f0be57a7cc
commit
bccb26174b
120
linker_scripts/jp/rev0/hardware_regs.ld
Normal file
120
linker_scripts/jp/rev0/hardware_regs.ld
Normal file
@ -0,0 +1,120 @@
|
||||
// Signal Processor Registers
|
||||
SP_MEM_ADDR_REG = 0xA4040000; // defined:True
|
||||
SP_DRAM_ADDR_REG = 0xA4040004; // defined:True
|
||||
SP_RD_LEN_REG = 0xA4040008; // defined:True
|
||||
SP_WR_LEN_REG = 0xA404000C; // defined:True
|
||||
SP_STATUS_REG = 0xA4040010; // defined:True
|
||||
SP_DMA_FULL_REG = 0xA4040014; // defined:True
|
||||
SP_DMA_BUSY_REG = 0xA4040018; // defined:True
|
||||
SP_SEMAPHORE_REG = 0xA404001C; // defined:True
|
||||
|
||||
SP_PC = 0xA4080000; // defined:True
|
||||
|
||||
// Display Processor Command Registers / Rasterizer Interface
|
||||
DPC_START_REG = 0xA4100000; // defined:True
|
||||
DPC_END_REG = 0xA4100004; // defined:True
|
||||
DPC_CURRENT_REG = 0xA4100008; // defined:True
|
||||
DPC_STATUS_REG = 0xA410000C; // defined:True
|
||||
DPC_CLOCK_REG = 0xA4100010; // defined:True
|
||||
DPC_BUFBUSY_REG = 0xA4100014; // defined:True
|
||||
DPC_PIPEBUSY_REG = 0xA4100018; // defined:True
|
||||
DPC_TMEM_REG = 0xA410001C; // defined:True
|
||||
|
||||
// Display Processor Span Registers
|
||||
DPS_TBIST_REG = 0xA4200000; // defined:True // DPS_TBIST_REG / DP_TMEM_BIST
|
||||
DPS_TEST_MODE_REG = 0xA4200004; // defined:True
|
||||
DPS_BUFTEST_ADDR_REG = 0xA4200008; // defined:True
|
||||
DPS_BUFTEST_DATA_REG = 0xA420000C; // defined:True
|
||||
|
||||
// MIPS Interface Registers
|
||||
MI_MODE_REG = 0xA4300000; // defined:True // MI_MODE_REG / MI_INIT_MODE_REG
|
||||
MI_VERSION_REG = 0xA4300004; // defined:True
|
||||
MI_INTR_REG = 0xA4300008; // defined:True
|
||||
MI_INTR_MASK_REG = 0xA430000C; // defined:True
|
||||
|
||||
// Video Interface Registers
|
||||
VI_STATUS_REG = 0xA4400000; // defined:True // VI_STATUS_REG / VI_CONTROL_REG
|
||||
VI_DRAM_ADDR_REG = 0xA4400004; // defined:True // VI_DRAM_ADDR_REG / VI_ORIGIN_REG
|
||||
VI_WIDTH_REG = 0xA4400008; // defined:True
|
||||
VI_INTR_REG = 0xA440000C; // defined:True
|
||||
VI_CURRENT_REG = 0xA4400010; // defined:True
|
||||
VI_BURST_REG = 0xA4400014; // defined:True // VI_BURST_REG / VI_TIMING_REG
|
||||
VI_V_SYNC_REG = 0xA4400018; // defined:True
|
||||
VI_H_SYNC_REG = 0xA440001C; // defined:True
|
||||
VI_LEAP_REG = 0xA4400020; // defined:True
|
||||
VI_H_START_REG = 0xA4400024; // defined:True
|
||||
VI_V_START_REG = 0xA4400028; // defined:True
|
||||
VI_V_BURST_REG = 0xA440002C; // defined:True
|
||||
VI_X_SCALE_REG = 0xA4400030; // defined:True
|
||||
VI_Y_SCALE_REG = 0xA4400034; // defined:True
|
||||
|
||||
// Audio Interface Registers
|
||||
AI_DRAM_ADDR_REG = 0xA4500000; // defined:True
|
||||
AI_LEN_REG = 0xA4500004; // defined:True
|
||||
AI_CONTROL_REG = 0xA4500008; // defined:True
|
||||
AI_STATUS_REG = 0xA450000C; // defined:True
|
||||
AI_DACRATE_REG = 0xA4500010; // defined:True
|
||||
AI_BITRATE_REG = 0xA4500014; // defined:True
|
||||
|
||||
// Peripheral/Parallel Interface Registers
|
||||
PI_DRAM_ADDR_REG = 0xA4600000; // defined:True
|
||||
PI_CART_ADDR_REG = 0xA4600004; // defined:True
|
||||
D_A4600005 = 0xA4600005; // defined:True // TODO figure out its name
|
||||
D_A4600006 = 0xA4600006; // defined:True // TODO figure out its name
|
||||
D_A4600007 = 0xA4600007; // defined:True // TODO figure out its name
|
||||
PI_RD_LEN_REG = 0xA4600008; // defined:True
|
||||
PI_WR_LEN_REG = 0xA460000C; // defined:True
|
||||
PI_STATUS_REG = 0xA4600010; // defined:True
|
||||
PI_BSD_DOM1_LAT_REG = 0xA4600014; // defined:True // PI dom1 latency
|
||||
PI_BSD_DOM1_PWD_REG = 0xA4600018; // defined:True // PI dom1 pulse width
|
||||
PI_BSD_DOM1_PGS_REG = 0xA460001C; // defined:True // PI dom1 page size
|
||||
PI_BSD_DOM1_RLS_REG = 0xA4600020; // defined:True // PI dom1 release
|
||||
PI_BSD_DOM2_LAT_REG = 0xA4600024; // defined:True // PI dom2 latency
|
||||
PI_BSD_DOM2_LWD_REG = 0xA4600028; // defined:True // PI dom2 pulse width
|
||||
PI_BSD_DOM2_PGS_REG = 0xA460002C; // defined:True // PI dom2 page size
|
||||
PI_BSD_DOM2_RLS_REG = 0xA4600030; // defined:True // PI dom2 release
|
||||
|
||||
// RDRAM Interface Registers
|
||||
RI_MODE_REG = 0xA4700000; // defined:True
|
||||
RI_CONFIG_REG = 0xA4700004; // defined:True
|
||||
RI_CURRENT_LOAD_REG = 0xA4700008; // defined:True
|
||||
RI_SELECT_REG = 0xA470000C; // defined:True
|
||||
RI_REFRESH_REG = 0xA4700010; // defined:True
|
||||
RI_LATENCY_REG = 0xA4700014; // defined:True
|
||||
RI_RERROR_REG = 0xA4700018; // defined:True
|
||||
RI_WERROR_REG = 0xA470001C; // defined:True
|
||||
|
||||
// Serial Interface Registers
|
||||
SI_DRAM_ADDR_REG = 0xA4800000; // defined:True
|
||||
SI_PIF_ADDR_RD64B_REG = 0xA4800004; // defined:True
|
||||
D_A4800008 = 0xA4800008; // defined:True // reserved
|
||||
D_A480000C = 0xA480000C; // defined:True // reserved
|
||||
SI_PIF_ADDR_WR64B_REG = 0xA4800010; // defined:True
|
||||
D_A4800014 = 0xA4800014; // defined:True // reserved
|
||||
SI_STATUS_REG = 0xA4800018; // defined:True
|
||||
|
||||
LEO_CMD = 0xA5000508;
|
||||
LEO_STATUS = 0xA5000508;
|
||||
LEO_BM_CTL = 0xA5000510;
|
||||
LEO_BM_STATUS = 0xA5000510;
|
||||
LEO_SEQ_CTL = 0xA5000518;
|
||||
LEO_SEQ_STATUS = 0xA5000518;
|
||||
LEO_C2_BUFF = 0xA5000000;
|
||||
LEO_SECTOR_BUFF = 0xA5000400;
|
||||
LEO_DATA = 0xA5000500;
|
||||
LEO_MISC_REG = 0xA5000504;
|
||||
LEO_CUR_TK = 0xA500050C;
|
||||
LEO_ERR_SECTOR = 0xA5000514;
|
||||
LEO_CUR_SECTOR = 0xA500051C;
|
||||
LEO_HARD_RESET = 0xA5000520;
|
||||
LEO_C1_S0 = 0xA5000524;
|
||||
LEO_HOST_SECBYTE = 0xA5000528;
|
||||
LEO_C1_S2 = 0xA500052C;
|
||||
LEO_SEC_BYTE = 0xA5000530;
|
||||
LEO_C1_S4 = 0xA5000534;
|
||||
LEO_C1_S6 = 0xA5000538;
|
||||
LEO_CUR_ADDR = 0xA500053C;
|
||||
LEO_ID_REG = 0xA5000540;
|
||||
LEO_TEST_REG = 0xA5000544;
|
||||
LEO_TEST_PIN_SEL = 0xA5000548;
|
||||
LEO_RAM_ADDR = 0xA5000580;
|
10
linker_scripts/jp/rev0/pif_syms.ld
Normal file
10
linker_scripts/jp/rev0/pif_syms.ld
Normal file
@ -0,0 +1,10 @@
|
||||
// libultra OS symbols
|
||||
|
||||
osTvType = 0x80000300;
|
||||
osRomType = 0x80000304;
|
||||
osRomBase = 0x80000308;
|
||||
osResetType = 0x8000030C;
|
||||
osCicId = 0x80000310;
|
||||
osVersion = 0x80000314;
|
||||
osMemSize = 0x80000318;
|
||||
osAppNMIBuffer = 0x8000031C;
|
27
linker_scripts/jp/rev0/symbol_addrs_migrate.txt
Normal file
27
linker_scripts/jp/rev0/symbol_addrs_migrate.txt
Normal file
@ -0,0 +1,27 @@
|
||||
D_800DB02C = 0x800DB02C; // force_migration:True
|
||||
D_800DB24C = 0x800DB24C; // force_migration:True
|
||||
D_800DB238 = 0x800DB238; // force_migration:True
|
||||
D_800DE430 = 0x800DE430; // force_migration:True
|
||||
D_800DE440 = 0x800DE440; // force_migration:True
|
||||
D_800DE464 = 0x800DE464; // force_migration:True
|
||||
D_800DF21C = 0x800DF21C; // force_migration:True
|
||||
D_i1_80192474 = 0x80192474; // force_migration:True segment:ovl_i1
|
||||
D_i3_801B89CC = 0x801B89CC; // force_migration:True segment:ovl_i3
|
||||
D_i3_801B89D8 = 0x801B89D8; // force_migration:True segment:ovl_i3
|
||||
D_i3_801B89E0 = 0x801B89E0; // force_migration:True segment:ovl_i3
|
||||
D_i3_801B8A08 = 0x801B8A08; // force_migration:True segment:ovl_i3
|
||||
D_i4_80196D64 = 0x80196D64; // force_migration:True segment:ovl_i4
|
||||
D_i5_801B1E6C = 0x801B1E6C; // segment:ovl_i5
|
||||
D_i5_801B2B18 = 0x801B2B18; // force_migration:True segment:ovl_i5
|
||||
D_i5_801B2B4C = 0x801B2B4C; // force_migration:True segment:ovl_i5
|
||||
D_i5_801B2DE0 = 0x801B2DE0; // force_migration:True segment:ovl_i5
|
||||
D_i5_801B2DF4 = 0x801B2DF4; // force_migration:True segment:ovl_i5
|
||||
D_i6_8019E810 = 0x8019E810; // force_migration:True segment:ovl_i6
|
||||
D_menu_801AE890 = 0x801AE890; // force_migration:True segment:ovl_menu
|
||||
jtbl_menu_801AED88 = 0x801AED88; // force_migration:True segment:ovl_menu
|
||||
D_ending_8018D5D0 = 0x8018D5D0; // force_migration:True segment:ovl_ending
|
||||
D_ending_8018DC24 = 0x8018DC24; // force_migration:True segment:ovl_ending
|
||||
D_ending_801B2B18 = 0x801B2B18; // force_migration:True segment:ovl_ending
|
||||
|
||||
D_800C5118 = 0x800C5118;
|
||||
D_800DB5D4 = 0x800DB5D4;
|
3501
linker_scripts/jp/rev0/undefined_syms.ld
Normal file
3501
linker_scripts/jp/rev0/undefined_syms.ld
Normal file
File diff suppressed because it is too large
Load Diff
@ -92,3 +92,29 @@ D_A480000C = 0xA480000C; // defined:True // reserved
|
||||
SI_PIF_ADDR_WR64B_REG = 0xA4800010; // defined:True
|
||||
D_A4800014 = 0xA4800014; // defined:True // reserved
|
||||
SI_STATUS_REG = 0xA4800018; // defined:True
|
||||
|
||||
LEO_CMD = 0xA5000508;
|
||||
LEO_STATUS = 0xA5000508;
|
||||
LEO_BM_CTL = 0xA5000510;
|
||||
LEO_BM_STATUS = 0xA5000510;
|
||||
LEO_SEQ_CTL = 0xA5000518;
|
||||
LEO_SEQ_STATUS = 0xA5000518;
|
||||
LEO_C2_BUFF = 0xA5000000;
|
||||
LEO_SECTOR_BUFF = 0xA5000400;
|
||||
LEO_DATA = 0xA5000500;
|
||||
LEO_MISC_REG = 0xA5000504;
|
||||
LEO_CUR_TK = 0xA500050C;
|
||||
LEO_ERR_SECTOR = 0xA5000514;
|
||||
LEO_CUR_SECTOR = 0xA500051C;
|
||||
LEO_HARD_RESET = 0xA5000520;
|
||||
LEO_C1_S0 = 0xA5000524;
|
||||
LEO_HOST_SECBYTE = 0xA5000528;
|
||||
LEO_C1_S2 = 0xA500052C;
|
||||
LEO_SEC_BYTE = 0xA5000530;
|
||||
LEO_C1_S4 = 0xA5000534;
|
||||
LEO_C1_S6 = 0xA5000538;
|
||||
LEO_CUR_ADDR = 0xA500053C;
|
||||
LEO_ID_REG = 0xA5000540;
|
||||
LEO_TEST_REG = 0xA5000544;
|
||||
LEO_TEST_PIN_SEL = 0xA5000548;
|
||||
LEO_RAM_ADDR = 0xA5000580;
|
||||
|
@ -3633,9 +3633,7 @@ const s16 D_i5_801BAB0C[4][10] = {
|
||||
{ 0, 5, 5, 5, 5, 5, 5, -1, 0, 0 },
|
||||
};
|
||||
|
||||
const s16 D_i5_801BAB5C[8] = {
|
||||
0x456E, 0x6D2D, 0x3E63, 0x6870, 0x743D, 0x3C25, 0x643E, 0x0A00,
|
||||
};
|
||||
const char D_i5_801BAB5C[] = "Enm->chpt=<%d>\n";
|
||||
|
||||
#ifdef NON_MATCHING
|
||||
// Regalloc in the random ternary. Can't be a temp as it's too low on stack
|
||||
|
@ -14,6 +14,7 @@ options:
|
||||
undefined_syms_auto_path: linker_scripts/jp/rev0/auto/undefined_syms_auto.ld
|
||||
|
||||
symbol_addrs_path:
|
||||
- linker_scripts/jp/rev0/symbol_addrs_migrate.txt
|
||||
- linker_scripts/jp/rev0/symbol_addrs.txt
|
||||
- linker_scripts/jp/rev0/symbol_addrs_engine.txt
|
||||
- linker_scripts/jp/rev0/symbol_addrs_libultra.txt
|
||||
|
@ -13,137 +13,149 @@
|
||||
vram: 0x80000450
|
||||
#bss_size: 0x9B1F0
|
||||
subsegments:
|
||||
# Microcode
|
||||
- [0x01050, textbin, BOOT]
|
||||
# Microcode
|
||||
- [0x01050, textbin, rspboot]
|
||||
- [0x01120, textbin, aspmain]
|
||||
- [0x02020, textbin, f3dex]
|
||||
|
||||
# Nintendo libraries
|
||||
- [ 0x3450, asm, sys/sys_joybus]
|
||||
- [ 0x3A90, asm, sys/sys_lib]
|
||||
- [ 0x41E0, asm, sys/sys_lights]
|
||||
- [ 0x4660, asm, sys/sys_main]
|
||||
- [ 0x5A30, asm, sys/sys_math]
|
||||
- [ 0x6460, asm, sys/sys_matrix]
|
||||
- [ 0x7D00, asm, sys/sys_memory]
|
||||
- [ 0x7D40, asm, sys/sys_timer]
|
||||
- [ 0x7F10, asm, sys/sys_save]
|
||||
- [ 0x8190, asm, sys/sys_fault]
|
||||
- [ 0x8E70, asm, audio/audio_synthesis]
|
||||
- [ 0xCA20, asm, audio/audio_heap]
|
||||
- [ 0xF250, asm, audio/audio_load]
|
||||
- [0x125B0, asm, audio/audio_playback]
|
||||
- [0x14120, asm, audio/audio_effects]
|
||||
- [0x14BC0, asm, audio/audio_seqplayer]
|
||||
- [0x17770, asm, audio/audio_general]
|
||||
- [0x1EC30, asm, audio/audio_thread]
|
||||
- [0x1FB40, asm, 1FA60]
|
||||
- [0x1FB50, asm, mio0]
|
||||
- [0x1FBF0, asm, rdramcheck]
|
||||
- [0x206C0, asm, libc_sprintf]
|
||||
- [0x20760, asm] # libultra
|
||||
- [0x20C90, asm] # libultra
|
||||
- [0x21050, asm] # libultra
|
||||
- [0x212B0, asm] # libultra
|
||||
- [0x213F0, asm] # libultra
|
||||
- [0x21540, asm] # libultra
|
||||
- [0x215F0, asm] # libultra
|
||||
- [0x21880, asm] # libultra
|
||||
- [0x21D70, asm] # libultra
|
||||
- [0x21DF0, asm] # libultra
|
||||
- [0x21EA0, asm] # libultra
|
||||
- [0x21FB0, asm] # libultra
|
||||
- [0x22050, asm] # libultra
|
||||
- [0x22150, asm] # libultra
|
||||
- [0x221C0, asm] # libultra
|
||||
- [0x22380, asm] # libultra
|
||||
- [0x223B0, asm] # libultra
|
||||
- [0x22420, asm] # libultra
|
||||
- [0x22490, asm] # libultra
|
||||
- [0x227F0, asm] # libultra
|
||||
- [0x22800, asm] # libultra
|
||||
- [0x22950, asm] # libultra
|
||||
- [0x22E00, asm] # libultra
|
||||
- [0x22F90, asm] # libultra
|
||||
- [0x233A0, asm] # libultra
|
||||
- [0x233B0, asm] # libultra
|
||||
- [0x236E0, asm] # libultra
|
||||
- [0x237C0, asm] # libultra
|
||||
- [0x23AC0, asm] # libultra
|
||||
- [0x242D0, asm] # libultra
|
||||
- [0x24370, asm] # libultra
|
||||
- [0x25030, asm] # libultra
|
||||
- [0x25060, asm] # libultra
|
||||
- [0x25070, asm] # libultra
|
||||
- [0x252A0, asm] # libultra
|
||||
- [0x25380, asm] # libultra
|
||||
- [0x25390, asm] # libultra
|
||||
- [0x25440, asm] # libultra
|
||||
- [0x25450, asm] # libultra
|
||||
- [0x25780, asm] # libultra
|
||||
- [0x258F0, asm] # libultra
|
||||
- [0x25DE0, asm] # libultra
|
||||
- [0x26190, asm] # libultra
|
||||
- [0x26D30, asm] # libultra
|
||||
- [0x26EB0, asm] # libultra
|
||||
- [0x27000, asm] # libultra
|
||||
- [0x27010, asm] # libultra
|
||||
- [0x27020, asm] # libultra
|
||||
- [0x27330, asm] # libultra
|
||||
- [0x273B0, asm] # libultra
|
||||
- [0x27430, asm] # libultra
|
||||
- [0x27470, asm] # libultra
|
||||
- [0x27500, asm] # libultra
|
||||
- [0x27530, asm] # libultra
|
||||
- [0x27950, asm] # libultra
|
||||
- [0x27960, asm] # libultra
|
||||
- [0x27CC0, asm] # libultra
|
||||
- [0x283F0, asm] # libultra
|
||||
- [0x284A0, asm] # libultra
|
||||
- [0x28500, asm] # libultra
|
||||
- [0x28560, asm] # libultra
|
||||
- [0x28600, asm] # libultra
|
||||
- [0x28E80, asm] # libultra
|
||||
- [0x29120, asm] # libultra
|
||||
- [0x29BE0, asm] # libultra
|
||||
- [0x29C40, asm] # libultra
|
||||
- [0x2A1D0, asm] # libultra
|
||||
- [0x2A370, asm] # libultra
|
||||
- [0x2A430, asm] # libultra
|
||||
- [0x2A440, asm] # libultra
|
||||
- [0x2A4A0, asm] # libultra
|
||||
- [0x2A4F0, asm] # libultra
|
||||
- [0x2A590, asm] # libultra
|
||||
- [0x2A5E0, asm] # libultra
|
||||
- [0x2A6D0, asm] # libultra
|
||||
- [0x2A860, asm] # libultra
|
||||
- [0x2BF20, asm, engine/fox_360]
|
||||
- [0x337A0, asm, engine/fox_beam]
|
||||
- [0x3B560, asm, engine/fox_bg]
|
||||
- [0x40940, asm, engine/fox_boss]
|
||||
- [0x40D00, asm, engine/fox_tank]
|
||||
- [0x46540, asm, engine/fox_demo]
|
||||
- [0x4F580, asm, engine/fox_display]
|
||||
- [0x565D0, asm, engine/fox_load]
|
||||
- [0x56F20, asm, engine/fox_edata]
|
||||
- [0x570F0, asm, engine/fox_edisplay]
|
||||
- [0x5E8F0, asm, engine/fox_enmy]
|
||||
- [0x68190, asm, engine/fox_enmy2]
|
||||
- [0x74BE0, asm, engine/fox_effect]
|
||||
- [0x81D10, asm, engine/fox_fade]
|
||||
- [0x82090, asm, engine/fox_852F0]
|
||||
- [0x822D0, asm, engine/fox_hud]
|
||||
- [0x94EA0, asm, engine/fox_97F80]
|
||||
- [0x974A0, asm, engine/fox_std_lib]
|
||||
- [0x9F480, asm, engine/fox_game]
|
||||
- [0xA1250, asm, engine/fox_A4290]
|
||||
- [0xA1860, asm, engine/fox_A48A0]
|
||||
- [0xA1B10, asm, engine/fox_play]
|
||||
- [0xB69E0, asm, engine/fox_rcp]
|
||||
- [0xB8370, asm, engine/fox_radio]
|
||||
- [0xBA0A0, asm, engine/fox_reset]
|
||||
- [0xBA350, asm, engine/fox_vs]
|
||||
- [0xC0580, asm, engine/fox_message]
|
||||
- [0xC0D00, asm, engine/fox_save]
|
||||
- [0xC1030, data] # microcode
|
||||
# Nintendo libraries
|
||||
- [0x03450, c, sys/sys_joybus]
|
||||
- [0x03A90, c, sys/sys_lib]
|
||||
- [0x041E0, c, sys/sys_lights]
|
||||
- [0x04660, c, sys/sys_main]
|
||||
- [0x05A30, c, sys/sys_math]
|
||||
- [0x06460, c, sys/sys_matrix]
|
||||
- [0x07D00, c, sys/sys_memory]
|
||||
- [0x07D40, c, sys/sys_timer]
|
||||
- [0x07F10, c, sys/sys_save]
|
||||
- [0x08190, c, sys/sys_fault]
|
||||
- [0x08E70, c, audio/audio_synthesis]
|
||||
- [0x0CA20, c, audio/audio_heap]
|
||||
- [0x0F250, c, audio/audio_load]
|
||||
- [0x125B0, c, audio/audio_playback]
|
||||
- [0x14120, c, audio/audio_effects]
|
||||
- [0x14BC0, c, audio/audio_seqplayer]
|
||||
- [0x17770, c, audio/audio_general]
|
||||
- [0x1EC30, c, audio/audio_thread]
|
||||
- [0x1FB40, c, 1FA60]
|
||||
- [0x1FB50, hasm, mio0]
|
||||
- [0x1FBF0, hasm, rdramcheck]
|
||||
- [0x206C0, c, libc_sprintf]
|
||||
|
||||
# Libultra
|
||||
- [0x20760, asm]
|
||||
- [0x20C90, asm]
|
||||
- [0x21050, asm]
|
||||
- [0x212B0, asm]
|
||||
- [0x213F0, asm]
|
||||
- [0x21540, asm]
|
||||
- [0x215F0, asm]
|
||||
- [0x21880, asm]
|
||||
- [0x21D70, asm]
|
||||
- [0x21DF0, asm]
|
||||
- [0x21EA0, asm]
|
||||
- [0x21FB0, asm]
|
||||
- [0x22050, asm]
|
||||
- [0x22150, asm]
|
||||
- [0x221C0, asm]
|
||||
- [0x22380, asm]
|
||||
- [0x223B0, asm]
|
||||
- [0x22420, asm]
|
||||
- [0x22490, asm]
|
||||
- [0x227F0, asm]
|
||||
- [0x22800, asm]
|
||||
- [0x22950, asm]
|
||||
- [0x22E00, asm]
|
||||
- [0x22F90, asm]
|
||||
- [0x233A0, asm]
|
||||
- [0x233B0, asm]
|
||||
- [0x236E0, asm]
|
||||
- [0x237C0, asm]
|
||||
- [0x23AC0, asm]
|
||||
- [0x242D0, asm]
|
||||
- [0x24370, asm]
|
||||
- [0x25030, asm]
|
||||
- [0x25060, asm]
|
||||
- [0x25070, asm]
|
||||
- [0x252A0, asm]
|
||||
- [0x25380, asm]
|
||||
- [0x25390, asm]
|
||||
- [0x25440, asm]
|
||||
- [0x25450, asm]
|
||||
- [0x25780, asm]
|
||||
- [0x258F0, asm]
|
||||
- [0x25DE0, asm]
|
||||
- [0x26190, asm]
|
||||
- [0x26D30, asm]
|
||||
- [0x26EB0, asm]
|
||||
- [0x27000, asm]
|
||||
- [0x27010, asm]
|
||||
- [0x27020, asm]
|
||||
- [0x27330, asm]
|
||||
- [0x273B0, asm]
|
||||
- [0x27430, asm]
|
||||
- [0x27470, asm]
|
||||
- [0x27500, asm]
|
||||
- [0x27530, asm]
|
||||
- [0x27950, asm]
|
||||
- [0x27960, asm]
|
||||
- [0x27CC0, asm]
|
||||
- [0x283F0, asm]
|
||||
- [0x284A0, asm]
|
||||
- [0x28500, asm]
|
||||
- [0x28560, asm]
|
||||
- [0x28600, asm]
|
||||
- [0x28E80, asm]
|
||||
- [0x29120, asm]
|
||||
- [0x29BE0, asm]
|
||||
- [0x29C40, asm]
|
||||
- [0x2A1D0, asm]
|
||||
- [0x2A370, asm]
|
||||
- [0x2A430, asm]
|
||||
- [0x2A440, asm]
|
||||
- [0x2A4A0, asm]
|
||||
- [0x2A4F0, asm]
|
||||
- [0x2A590, asm]
|
||||
- [0x2A5E0, asm]
|
||||
- [0x2A6D0, asm]
|
||||
- [0x2A860, asm]
|
||||
|
||||
# Game engine
|
||||
- [0x2BF20, c, engine/fox_360]
|
||||
- [0x337A0, c, engine/fox_beam]
|
||||
- [0x3B560, c, engine/fox_bg]
|
||||
- [0x40940, c, engine/fox_boss]
|
||||
- [0x40D00, c, engine/fox_tank]
|
||||
- [0x46540, c, engine/fox_demo]
|
||||
- [0x4F580, c, engine/fox_display]
|
||||
- [0x565D0, c, engine/fox_load]
|
||||
- [0x56F20, c, engine/fox_edata]
|
||||
- [0x570F0, c, engine/fox_edisplay]
|
||||
- [0x5E8F0, c, engine/fox_enmy]
|
||||
- [0x68190, c, engine/fox_enmy2]
|
||||
- [0x74BE0, c, engine/fox_effect]
|
||||
- [0x81D10, c, engine/fox_fade]
|
||||
- [0x82090, c, engine/fox_852F0]
|
||||
- [0x822D0, c, engine/fox_hud]
|
||||
- [0x94EA0, c, engine/fox_97F80]
|
||||
- [0x974A0, c, engine/fox_std_lib]
|
||||
- [0x9F480, c, engine/fox_game]
|
||||
- [0xA1250, c, engine/fox_A4290]
|
||||
- [0xA1860, c, engine/fox_A48A0]
|
||||
- [0xA1B10, c, engine/fox_play]
|
||||
- [0xB69E0, c, engine/fox_rcp]
|
||||
- [0xB8370, c, engine/fox_radio]
|
||||
- [0xBA0A0, c, engine/fox_reset]
|
||||
- [0xBA350, c, engine/fox_versus]
|
||||
- [0xC0580, c, engine/fox_message]
|
||||
- [0xC0D00, c, engine/fox_save]
|
||||
|
||||
# DATA - Microcode
|
||||
- [0xC1030, data, aspmain]
|
||||
- [0xC1360, data, audio/audio_tables]
|
||||
- [0xC1B20, data, f3dex]
|
||||
|
||||
# DATA - Nintendo Libraries
|
||||
- [0xC2320, data, sys/sys_main]
|
||||
- [0xC2330, data, sys/sys_math]
|
||||
- [0xC2370, data, sys/sys_matrix]
|
||||
@ -157,28 +169,36 @@
|
||||
- [0xC3A50, data, audio/audio_general]
|
||||
- [0xC5240, data, audio/audio_context]
|
||||
- [0xC59C0, data, audio/audio_thread]
|
||||
- [0xC59F0, data] # libultra
|
||||
- [0xC5CC0, rodata, sys/sys_math]
|
||||
- [0xC5D20, rodata, sys/sys_matrix]
|
||||
- [0xC5D30, rodata, sys/sys_save]
|
||||
- [0xC5E50, rodata, sys/sys_fault]
|
||||
- [0xC6230, rodata, audio/audio_synthesis]
|
||||
- [0xC6270, rodata, audio/audio_heap]
|
||||
- [0xC6270, rodata, audio/audio_load]
|
||||
- [0xC62D0, rodata, audio/audio_playback]
|
||||
- [0xC6300, rodata, audio/audio_effects]
|
||||
- [0xC6330, rodata, audio/audio_seqplayer]
|
||||
- [0xC69E0, rodata, audio/audio_general]
|
||||
- [0xC69E0, rodata, audio/audio_thread]
|
||||
- [0xC6F20, rodata] # libultra
|
||||
- [0xC6F30, rodata] # libultra
|
||||
- [0xC6F80, rodata] # libultra
|
||||
- [0xC6FD0, rodata] # libultra
|
||||
- [0xC70D0, rodata] # libultra
|
||||
- [0xC7120, rodata] # libultra
|
||||
- [0xC7140, rodata] # libultra
|
||||
- [0xC7150, rodata] # libultra
|
||||
- [0xC71B0, rodata] # libultra
|
||||
|
||||
# DATA - Libultra
|
||||
- [0xC59F0, data]
|
||||
|
||||
# RODATA - Nintendo Libraries
|
||||
- [0xC5CC0, .rodata, sys/sys_math]
|
||||
- [0xC5D20, .rodata, sys/sys_matrix]
|
||||
- [0xC5D30, .rodata, sys/sys_save]
|
||||
- [0xC5E50, .rodata, sys/sys_fault]
|
||||
- [0xC6230, .rodata, audio/audio_synthesis]
|
||||
- [0xC6270, .rodata, audio/audio_heap]
|
||||
- [0xC6290, .rodata, audio/audio_load]
|
||||
- [0xC62D0, .rodata, audio/audio_playback]
|
||||
- [0xC6300, .rodata, audio/audio_effects]
|
||||
- [0xC6330, .rodata, audio/audio_seqplayer]
|
||||
- [0xC69E0, .rodata, audio/audio_general]
|
||||
- [0xC6D00, .rodata, audio/audio_thread]
|
||||
|
||||
# RODATA - Libultra
|
||||
- [0xC6F20, rodata]
|
||||
- [0xC6F30, rodata]
|
||||
- [0xC6F80, rodata]
|
||||
- [0xC6FD0, rodata]
|
||||
- [0xC70D0, rodata]
|
||||
- [0xC7120, rodata]
|
||||
- [0xC7140, rodata]
|
||||
- [0xC7150, rodata]
|
||||
- [0xC71B0, rodata]
|
||||
|
||||
# DATA - Game engine
|
||||
- [0xC7230, data, engine/fox_360]
|
||||
- [0xC7360, data, engine/fox_beam]
|
||||
- [0xC73D0, data, engine/fox_bg]
|
||||
@ -202,32 +222,36 @@
|
||||
- [0xD2370, data, engine/fox_radio]
|
||||
- [0xD2380, data, engine/fox_reset]
|
||||
- [0xD2390, data, engine/fox_versus]
|
||||
- [0xD2610, data, fox_message]
|
||||
- [0xDB900, data, fox_save]
|
||||
- [0xDBA00, rodata, engine/fox_360]
|
||||
- [0xDBCE0, rodata, engine/fox_beam]
|
||||
- [0xDBF80, rodata, engine/fox_bg]
|
||||
- [0xDC1C0, rodata, engine/fox_boss]
|
||||
- [0xDC1E0, rodata, engine/fox_tank]
|
||||
- [0xDC340, rodata, engine/fox_demo]
|
||||
- [0xDC990, rodata, engine/fox_display]
|
||||
- [0xDCB90, rodata, engine/fox_load]
|
||||
- [0xDCC10, rodata, engine/fox_edisplay]
|
||||
- [0xDCFC0, rodata, engine/fox_enmy]
|
||||
- [0xDD640, rodata, engine/fox_enmy2]
|
||||
- [0xDDE20, rodata, engine/fox_effect]
|
||||
- [0xDE2E0, rodata, engine/fox_fade]
|
||||
- [0xDE310, rodata, engine/fox_hud]
|
||||
- [0xDECB0, rodata, engine/fox_97F80]
|
||||
- [0xDECC0, rodata, engine/fox_std_lib]
|
||||
- [0xDED20, rodata, engine/fox_game]
|
||||
- [0xDEDA0, rodata, engine/fox_A4290]
|
||||
- [0xDEDB0, rodata, engine/fox_A48A0]
|
||||
- [0xDEDC0, rodata, engine/fox_play]
|
||||
- [0xDF6C0, rodata, engine/fox_radio]
|
||||
- [0xDFD20, rodata, engine/fox_versus]
|
||||
- [0xDFE30, rodata, engine/fox_message]
|
||||
- [0xDFEF0, rodata, engine/fox_save]
|
||||
- [0xD2610, data, engine/fox_message]
|
||||
- [0xDB900, data, engine/fox_save]
|
||||
|
||||
# RODATA - Game engine
|
||||
- [0xDBA00, .rodata, engine/fox_360]
|
||||
- [0xDBCE0, .rodata, engine/fox_beam]
|
||||
- [0xDBF80, .rodata, engine/fox_bg]
|
||||
- [0xDC1C0, .rodata, engine/fox_boss]
|
||||
- [0xDC1E0, .rodata, engine/fox_tank]
|
||||
- [0xDC340, .rodata, engine/fox_demo]
|
||||
- [0xDC990, .rodata, engine/fox_display]
|
||||
- [0xDCB90, .rodata, engine/fox_load]
|
||||
- [0xDCC10, .rodata, engine/fox_edisplay]
|
||||
- [0xDCFC0, .rodata, engine/fox_enmy]
|
||||
- [0xDD640, .rodata, engine/fox_enmy2]
|
||||
- [0xDDE20, .rodata, engine/fox_effect]
|
||||
- [0xDE2E0, .rodata, engine/fox_fade]
|
||||
- [0xDE310, .rodata, engine/fox_hud]
|
||||
- [0xDECB0, .rodata, engine/fox_97F80]
|
||||
- [0xDECC0, .rodata, engine/fox_std_lib]
|
||||
- [0xDED20, .rodata, engine/fox_game]
|
||||
- [0xDEDA0, .rodata, engine/fox_A4290]
|
||||
- [0xDEDB0, .rodata, engine/fox_A48A0]
|
||||
- [0xDEDC0, .rodata, engine/fox_play]
|
||||
- [0xDF6C0, .rodata, engine/fox_radio]
|
||||
- [0xDFD20, .rodata, engine/fox_versus]
|
||||
- [0xDFE30, .rodata, engine/fox_message]
|
||||
- [0xDFEF0, .rodata, engine/fox_save]
|
||||
|
||||
# Common assets
|
||||
- [0xDFF60, data, fox_msg_textures]
|
||||
- [0xE4FE0, data, fox_shapes]
|
||||
- [0xE67C0, data, fox_wheels]
|
||||
@ -242,6 +266,6 @@
|
||||
vram: 0x8017E210
|
||||
#follows_vram: main
|
||||
subsegments:
|
||||
- [0xE93C0, .data, dmatable]
|
||||
- [0xE93C0, data, dmatable]
|
||||
|
||||
|
||||
|
@ -17,10 +17,10 @@
|
||||
- [0xDBB940, data, fox_co]
|
||||
- [0xDBBCA0, data, fox_ve1]
|
||||
- [0xDBCFB0, data, fox_tr360]
|
||||
- [0xDBD050, rodata, fox_co]
|
||||
- [0xDBD410, rodata, fox_ve1]
|
||||
- [0xDBD7A0, rodata, fox_tr]
|
||||
- [0xDBD7E0, rodata, fox_tr360]
|
||||
- [0xDBD050, .rodata, fox_co]
|
||||
- [0xDBD410, .rodata, fox_ve1]
|
||||
- [0xDBD7A0, .rodata, fox_tr]
|
||||
- [0xDBD7E0, .rodata, fox_tr360]
|
||||
|
||||
- name: ovl_i2
|
||||
exclusive_ram_id: overlay
|
||||
@ -33,6 +33,13 @@
|
||||
symbol_name_format: i2_$VRAM
|
||||
subsegments:
|
||||
- [0xDBD820, c, fox_i2]
|
||||
- [0xDBD830, c, fox_me]
|
||||
- [0xDC52D0, c, fox_sx]
|
||||
- [0xDCB6D0, data, fox_i2]
|
||||
- [0xDCB6E0, data, fox_me]
|
||||
- [0xDCB8F0, data, fox_sx]
|
||||
- [0xDCBA40, .rodata, fox_me]
|
||||
- [0xDCBD00, .rodata, fox_sx]
|
||||
|
||||
- name: ovl_i3
|
||||
exclusive_ram_id: overlay
|
||||
@ -45,9 +52,19 @@
|
||||
symbol_name_format: i3_$VRAM
|
||||
subsegments:
|
||||
- [0xDCC020, c, fox_i3]
|
||||
- [0xDE3300, c]
|
||||
- [0xDED940, c]
|
||||
- [0xE037E0, c]
|
||||
- [0xDCC030, c, fox_a6]
|
||||
- [0xDD4A50, c, fox_zo]
|
||||
- [0xDE3300, c, fox_so]
|
||||
- [0xDED940, c, fox_aq]
|
||||
- [0xE037D0, data, fox_i3]
|
||||
- [0xE037E0, data, fox_a6]
|
||||
- [0xE04090, data, fox_zo]
|
||||
- [0xE04410, data, fox_so]
|
||||
- [0xE04690, data, fox_aq]
|
||||
- [0xE05430, .rodata, fox_a6]
|
||||
- [0xE058E0, .rodata, fox_zo]
|
||||
- [0xE06000, .rodata, fox_so]
|
||||
- [0xE06560, .rodata, fox_aq]
|
||||
|
||||
- name: ovl_i4
|
||||
exclusive_ram_id: overlay
|
||||
@ -60,10 +77,20 @@
|
||||
symbol_name_format: i4_$VRAM
|
||||
subsegments:
|
||||
- [0xE06D70, c, fox_i4]
|
||||
- [0xE06E40, c]
|
||||
- [0xE0B580, c]
|
||||
- [0xE18DD0, c]
|
||||
- [0xE1E2B0, c]
|
||||
- [0xE06E40, c, fox_fo]
|
||||
- [0xE0B580, c, fox_bo]
|
||||
- [0xE11FD0, c, fox_ka]
|
||||
- [0xE18DD0, c, fox_sz]
|
||||
- [0xE1E2A0, data, fox_i4]
|
||||
- [0xE1E2B0, data, fox_fo]
|
||||
- [0xE1E390, data, fox_bo]
|
||||
- [0xE1E5C0, data, fox_ka]
|
||||
- [0xE1E980, data, fox_sz]
|
||||
- [0xE1EBA0, .rodata, fox_i4]
|
||||
- [0xE1EBE0, .rodata, fox_fo]
|
||||
- [0xE1EDE0, .rodata, fox_bo]
|
||||
- [0xE1F1E0, .rodata, fox_ka]
|
||||
- [0xE1F570, .rodata, fox_sz]
|
||||
|
||||
- name: ovl_i5
|
||||
exclusive_ram_id: overlay
|
||||
@ -76,8 +103,17 @@
|
||||
symbol_name_format: i5_$VRAM
|
||||
subsegments:
|
||||
- [0xE1F870, c, fox_i5]
|
||||
- [0xE21280, c]
|
||||
- [0xE4F680, c]
|
||||
- [0xE1F880, c, fox_ti_cs]
|
||||
- [0xE21280, c, fox_ti]
|
||||
- [0xE31C90, c, fox_ma]
|
||||
- [0xE4CDB0, c, fox_ground]
|
||||
- [0xE4F670, data, fox_i5]
|
||||
- [0xE4F680, data, fox_ti_cs]
|
||||
- [0xE52DC0, .rodata, fox_i5]
|
||||
- [0xE52DD0, .rodata, fox_ti_cs]
|
||||
- [0xE52E30, .rodata, fox_ti]
|
||||
- [0xE53690, .rodata, fox_ma]
|
||||
- [0xE541D0, .rodata, fox_ground]
|
||||
|
||||
- name: ovl_i6
|
||||
exclusive_ram_id: overlay
|
||||
@ -99,11 +135,11 @@
|
||||
- [0xE73680, data, fox_ve2]
|
||||
- [0xE736E0, data, fox_sy]
|
||||
- [0xE73950, data, fox_turret]
|
||||
- [0xE73960, rodata, fox_i6]
|
||||
- [0xE73970, rodata, fox_andross]
|
||||
- [0xE74210, rodata, fox_ve2]
|
||||
- [0xE74250, rodata, fox_sy]
|
||||
- [0xE74CA0, rodata, fox_turret]
|
||||
- [0xE73960, .rodata, fox_i6]
|
||||
- [0xE73970, .rodata, fox_andross]
|
||||
- [0xE74210, .rodata, fox_ve2]
|
||||
- [0xE74250, .rodata, fox_sy]
|
||||
- [0xE74CA0, .rodata, fox_turret]
|
||||
|
||||
- name: ovl_menu
|
||||
exclusive_ram_id: overlay
|
||||
@ -116,6 +152,17 @@
|
||||
symbol_name_format: menu_$VRAM
|
||||
subsegments:
|
||||
- [0xE74D00, c, fox_i_menu]
|
||||
- [0xE74DC0, c, fox_title]
|
||||
- [0xE7F410, c, fox_option]
|
||||
- [0xE8C1E0, c, fox_map]
|
||||
- [0xE9B3E0, data, fox_i_menu]
|
||||
- [0xE9B3F0, data, fox_title]
|
||||
- [0xE9BF60, data, fox_option]
|
||||
- [0xE9CE00, data, fox_map]
|
||||
- [0xEA4740, .rodata, fox_i_menu]
|
||||
- [0xEA4760, .rodata, fox_title]
|
||||
- [0xEA4B00, .rodata, fox_option]
|
||||
- [0xEA4F00, .rodata, fox_map]
|
||||
|
||||
- name: ovl_ending
|
||||
exclusive_ram_id: overlay
|
||||
@ -128,18 +175,24 @@
|
||||
symbol_name_format: ending_$VRAM
|
||||
subsegments:
|
||||
- [0xEA5610, c, fox_end1]
|
||||
- [0xEAAF10, c]
|
||||
- [0xEAAF10, c, fox_end2]
|
||||
- [0xEB0800, data, fox_end1]
|
||||
- [0xEB0E50, data, fox_end2]
|
||||
- [0xEB41A0, .rodata, fox_end1]
|
||||
- [0xEB45A0, .rodata, fox_end2]
|
||||
|
||||
- name: ovl_unused
|
||||
exclusive_ram_id: overlay
|
||||
type: code
|
||||
dir: overlays/ovl_unused
|
||||
start: 0xEB0800
|
||||
start: 0xEB4C00
|
||||
vram: 0x8017E7A0
|
||||
#follows_vram: ast_radio
|
||||
#bss_size: 0x10
|
||||
symbol_name_format: unused_$VRAM
|
||||
subsegments:
|
||||
- [0xEB0800, c, fox_unused]
|
||||
- [0xEB4C00, c, fox_unused]
|
||||
- [0xEB4C10, data, fox_unused]
|
||||
|
||||
|
||||
- [0xEB4CA0]
|
@ -13,12 +13,12 @@
|
||||
vram: 0x80000450
|
||||
bss_size: 0x9B1F0
|
||||
subsegments:
|
||||
# Microcode
|
||||
# Microcode
|
||||
- [0x01050, textbin, rspboot]
|
||||
- [0x01120, textbin, aspmain]
|
||||
- [0x02010, textbin, f3dex]
|
||||
|
||||
# Nintendo libraries
|
||||
# Nintendo libraries
|
||||
- [0x03440, c, sys/sys_joybus]
|
||||
- [0x03A80, c, sys/sys_lib]
|
||||
- [0x041D0, c, sys/sys_lights]
|
||||
@ -47,10 +47,10 @@
|
||||
- [0x206B0, c, libc_math64]
|
||||
- [0x20A60, hasm, libc_math64_fp]
|
||||
|
||||
# GCC
|
||||
# GCC
|
||||
- [auto, c, libultra/gcc_fix/__floatundisf]
|
||||
|
||||
# Libultra
|
||||
# Libultra
|
||||
- [0x20BC0, c, libultra/io/controller]
|
||||
- [0x20F80, c, libultra/io/contreaddata]
|
||||
- [0x211E0, c, libultra/os/recvmesg]
|
||||
@ -174,7 +174,7 @@
|
||||
- [0x2EE80, c, libultra/os/stopthread]
|
||||
- [0x2EF40, hasm, libultra/rmon/rmonrcp]
|
||||
|
||||
# Game engine
|
||||
# Game engine
|
||||
- [0x2EFE0, c, engine/fox_360]
|
||||
- [0x36930, c, engine/fox_beam]
|
||||
- [0x3E6F0, c, engine/fox_bg]
|
||||
@ -280,7 +280,7 @@
|
||||
- [0xCA480, .rodata, libultra/rmon/rmonbrk]
|
||||
- [0xCA650, .rodata, libultra/rmon/rmonmain]
|
||||
|
||||
# DATA - game engine
|
||||
# DATA - Game engine
|
||||
- [0xCA690, .data, engine/fox_360]
|
||||
- [0xCA7C0, .data, engine/fox_beam]
|
||||
- [0xCA830, .data, engine/fox_bg]
|
||||
@ -306,7 +306,7 @@
|
||||
- [0xD5690, .data, engine/fox_versus]
|
||||
- [0xD5910, .data, engine/fox_save]
|
||||
|
||||
# RODATA - game engine
|
||||
# RODATA - Game engine
|
||||
- [0xD5A10, .rodata, engine/fox_360]
|
||||
- [0xD5CF0, .rodata, engine/fox_beam]
|
||||
- [0xD5F90, .rodata, engine/fox_bg]
|
||||
|
Loading…
Reference in New Issue
Block a user