mirror of
https://github.com/pret/pokestadium.git
synced 2024-11-26 22:40:30 +00:00
a
This commit is contained in:
parent
08f3e577a9
commit
f7b52c5327
6
Makefile
6
Makefile
@ -236,6 +236,7 @@ build/src/boot/libu64/%.o: OPTFLAGS := -O2
|
||||
build/src/boot/fault.o: CFLAGS += -trapuv
|
||||
build/src/boot/fault_drawer.o: CFLAGS += -trapuv
|
||||
build/src/C030.o: OPTFLAGS += -Wo,-loopunroll,0
|
||||
build/src/hal_libc.o: CFLAGS += -signed
|
||||
|
||||
# cc & asm-processor
|
||||
build/src/libleo/%.o: CC := $(ASM_PROC) $(ASM_PROC_FLAGS) $(CC_OLD) -- $(AS) $(ASFLAGS) --
|
||||
@ -257,6 +258,11 @@ clean:
|
||||
|
||||
libclean:
|
||||
$(MAKE) -C lib/ultralib clean VERSION=$(ULTRALIB_VERSION) TARGET=$(ULTRALIB_TARGET)
|
||||
$(RM) -rf $(BUILD_DIR)/lib
|
||||
$(RM) -r build/$(TARGET)-$(VERSION).elf
|
||||
$(RM) -r build/$(TARGET)-$(VERSION).ld
|
||||
$(RM) -r build/$(TARGET)-$(VERSION).map
|
||||
$(RM) -r build/$(TARGET)-$(VERSION).z64
|
||||
|
||||
distclean: clean libclean
|
||||
$(RM) -r $(BUILD_DIR) asm/ assets/ .splat/
|
||||
|
@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env python3
|
||||
|
||||
def apply(config, args):
|
||||
config['baseimg'] = 'baserom.z64'
|
||||
config['baseimg'] = 'baseroms/us/baserom.z64'
|
||||
config['myimg'] = 'build/pokestadium-us.z64'
|
||||
config['mapfile'] = 'build/pokestadium-us.map'
|
||||
config['source_directories'] = ['.']
|
||||
|
@ -153,9 +153,7 @@ s32 __osCheckPackId(OSPfs* pfs, __OSPackId* check);
|
||||
s32 __osGetId(OSPfs *pfs);
|
||||
s32 __osCheckId(OSPfs *pfs);
|
||||
s32 __osPfsRWInode(OSPfs *pfs, __OSInode *inode, u8 flag, u8 bank);
|
||||
s32 __osPfsSelectBank(OSPfs *pfs, u8 bank);
|
||||
s32 __osPfsDeclearPage(OSPfs *pfs, __OSInode *inode, int file_size_in_pages, int *first_page, u8 bank, int *decleared, int *last_page);
|
||||
s32 __osPfsReleasePages(OSPfs *pfs, __OSInode *inode, u8 start_page, u8 bank, __OSInodeUnit *last_page);
|
||||
s32 __osBlockSum(OSPfs *pfs, u8 page_no, u16 *sum, u8 bank);
|
||||
s32 __osContRamRead(OSMesgQueue *mq, int channel, u16 address, u8 *buffer);
|
||||
s32 __osContRamWrite(OSMesgQueue *mq, int channel, u16 address, u8 *buffer, int force);
|
||||
@ -166,7 +164,7 @@ void __osPfsGetInitData(u8* pattern, OSContStatus* data);
|
||||
u8 __osContAddressCrc(u16 addr);
|
||||
u8 __osContDataCrc(u8 *data);
|
||||
s32 __osPfsGetStatus(OSMesgQueue *queue, int channel);
|
||||
s32 __osGbpakSelectBank(OSPfs *pfs, u8 bank);
|
||||
s32 __osGbpakSetBank(OSPfs *pfs, u8 bank);
|
||||
|
||||
extern u8 __osContLastCmd;
|
||||
extern OSTimer __osEepromTimer;
|
||||
@ -183,13 +181,6 @@ extern u8 __osMaxControllers;
|
||||
if (ret != 0) \
|
||||
return ret;
|
||||
|
||||
#define SET_ACTIVEBANK_TO_ZERO \
|
||||
if (pfs->activebank != 0) \
|
||||
{ \
|
||||
pfs->activebank = 0; \
|
||||
ERRCK(__osPfsSelectBank(pfs)) \
|
||||
}
|
||||
|
||||
#define PFS_CHECK_ID \
|
||||
if (__osCheckId(pfs) == PFS_ERR_NEW_PACK) \
|
||||
return PFS_ERR_NEW_PACK;
|
||||
|
@ -58,3 +58,50 @@ $(BUILD_DIR)/src/audio/%.marker: OPTFLAGS := -O3
|
||||
$(BUILD_DIR)/src/rg/%.marker: OPTFLAGS := -O3
|
||||
$(BUILD_DIR)/src/gt/%.marker: OPTFLAGS := -O3
|
||||
endif
|
||||
|
||||
ifneq ($(filter $(VERSION),I_P),)
|
||||
$(BUILD_DIR)/src/audio/reverb.marker: OPTFLAGS := -O2
|
||||
$(BUILD_DIR)/src/audio/synthesizer.marker: OPTFLAGS := -O2
|
||||
$(BUILD_DIR)/src/audio/drvrnew.marker: OPTFLAGS := -O2
|
||||
$(BUILD_DIR)/src/audio/env.marker: OPTFLAGS := -O2
|
||||
$(BUILD_DIR)/src/audio/save.marker: OPTFLAGS := -O2
|
||||
|
||||
$(BUILD_DIR)/src/io/gbpakgetstatus.marker: OPTFLAGS := -O2
|
||||
$(BUILD_DIR)/src/io/gbpakcheckconnector.marker: OPTFLAGS := -O2
|
||||
$(BUILD_DIR)/src/io/gbpakpower.marker: OPTFLAGS := -O2
|
||||
$(BUILD_DIR)/src/io/contreaddata.marker: OPTFLAGS := -O2
|
||||
$(BUILD_DIR)/src/io/gbpakinit.marker: OPTFLAGS := -O2
|
||||
$(BUILD_DIR)/src/io/pfsgetstatus.marker: OPTFLAGS := -O2
|
||||
$(BUILD_DIR)/src/io/pimgr.marker: OPTFLAGS := -O2
|
||||
$(BUILD_DIR)/src/io/devmgr.marker: OPTFLAGS := -O2
|
||||
$(BUILD_DIR)/src/io/pirawdma.marker: OPTFLAGS := -O2
|
||||
$(BUILD_DIR)/src/io/conteepprobe.marker: OPTFLAGS := -O2
|
||||
$(BUILD_DIR)/src/io/conteepwrite.marker: OPTFLAGS := -O2
|
||||
$(BUILD_DIR)/src/io/contpfs.marker: OPTFLAGS := -O2
|
||||
$(BUILD_DIR)/src/io/epirawread.marker: OPTFLAGS := -O2
|
||||
$(BUILD_DIR)/src/io/epirawdma.marker: OPTFLAGS := -O2
|
||||
$(BUILD_DIR)/src/io/aisetfreq.marker: OPTFLAGS := -O2
|
||||
$(BUILD_DIR)/src/io/viswapcontext.marker: OPTFLAGS := -O2
|
||||
$(BUILD_DIR)/src/io/visetspecial.marker: OPTFLAGS := -O2
|
||||
$(BUILD_DIR)/src/io/gbpakreadid.marker: OPTFLAGS := -O2
|
||||
$(BUILD_DIR)/src/io/cartrominit.marker: OPTFLAGS := -O2
|
||||
$(BUILD_DIR)/src/io/pfsselectbank.marker: OPTFLAGS := -O2
|
||||
$(BUILD_DIR)/src/io/contramwrite.marker: OPTFLAGS := -O2
|
||||
$(BUILD_DIR)/src/io/contramread.marker: OPTFLAGS := -O2
|
||||
$(BUILD_DIR)/src/io/crc.marker: OPTFLAGS := -O2
|
||||
$(BUILD_DIR)/src/io/epirawwrite.marker: OPTFLAGS := -O2
|
||||
$(BUILD_DIR)/src/io/vimgr.marker: OPTFLAGS := -O2
|
||||
$(BUILD_DIR)/src/io/gbpakreadwrite.marker: OPTFLAGS := -O2
|
||||
$(BUILD_DIR)/src/io/gbpaksetbank.marker: OPTFLAGS := -O2
|
||||
$(BUILD_DIR)/src/io/conteepread.marker: OPTFLAGS := -O2
|
||||
$(BUILD_DIR)/src/io/sprawdma.marker: OPTFLAGS := -O2
|
||||
$(BUILD_DIR)/src/io/sirawdma.marker: OPTFLAGS := -O2
|
||||
$(BUILD_DIR)/src/io/sirawread.marker: OPTFLAGS := -O2
|
||||
$(BUILD_DIR)/src/io/epiread.marker: OPTFLAGS := -O2
|
||||
$(BUILD_DIR)/src/io/epiwrite.marker: OPTFLAGS := -O2
|
||||
|
||||
|
||||
$(BUILD_DIR)/src/libc/syncprintf.marker: OPTFLAGS := -O2
|
||||
|
||||
|
||||
endif
|
||||
|
@ -269,6 +269,7 @@ pfsreadwritefile.o
|
||||
pfsfilestate.o
|
||||
pfssearchfile.o
|
||||
pfssetlabel.o
|
||||
pfsselectbank.o
|
||||
pfsgetlabel.o
|
||||
pfsisplug.o
|
||||
pfsfreeblocks.o
|
||||
|
@ -31,7 +31,7 @@ extern "C" {
|
||||
#if defined(_LANGUAGE_C) || defined(_LANGUAGE_C_PLUS_PLUS)
|
||||
|
||||
/* Routine for HW interrupt "handler" */
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
extern void __osSetHWIntrRoutine(OSHWIntr interrupt,
|
||||
s32 (*handler)(void), void *stackEnd);
|
||||
extern void __osGetHWIntrRoutine(OSHWIntr interrupt,
|
||||
|
@ -46,7 +46,7 @@ s32 osAiSetFrequency(u32 frequency) {
|
||||
|
||||
IO_WRITE(AI_DACRATE_REG, dacRate - 1);
|
||||
IO_WRITE(AI_BITRATE_REG, bitRate - 1);
|
||||
#if BUILD_VERSION < VERSION_J
|
||||
#if BUILD_VERSION < VERSION_I_P
|
||||
IO_WRITE(AI_CONTROL_REG, AI_CONTROL_DMA_ON);
|
||||
#endif
|
||||
return osViClock / (s32)dacRate;
|
||||
|
@ -63,6 +63,7 @@ OSPiHandle* osCartRomInit(void) {
|
||||
|
||||
return &__CartRomHandle;
|
||||
}
|
||||
|
||||
#else
|
||||
|
||||
OSPiHandle CartRomHandle ALIGNED(8);
|
||||
|
@ -7,7 +7,7 @@ OSPifRam __osEepPifRam ALIGNED(16);
|
||||
#if BUILD_VERSION >= VERSION_L
|
||||
s32 __osEepromRead16K;
|
||||
#endif
|
||||
static void __osPackEepReadData(u8 address);
|
||||
void __osPackEepReadData(u8 address);
|
||||
|
||||
s32 osEepromRead(OSMesgQueue* mq, u8 address, u8* buffer) {
|
||||
s32 ret = 0;
|
||||
@ -22,7 +22,7 @@ s32 osEepromRead(OSMesgQueue* mq, u8 address, u8* buffer) {
|
||||
ret = __osEepStatus(mq, &sdata);
|
||||
type = sdata.type & (CONT_EEPROM | CONT_EEP16K);
|
||||
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
if (ret == 0) {
|
||||
switch (type) {
|
||||
case CONT_EEPROM:
|
||||
@ -105,12 +105,12 @@ s32 osEepromRead(OSMesgQueue* mq, u8 address, u8* buffer) {
|
||||
return ret;
|
||||
}
|
||||
|
||||
static void __osPackEepReadData(u8 address) {
|
||||
void __osPackEepReadData(u8 address) {
|
||||
u8* ptr = (u8*)&__osEepPifRam.ramarray;
|
||||
__OSContEepromFormat eepromformat;
|
||||
int i;
|
||||
|
||||
#if BUILD_VERSION < VERSION_J
|
||||
#if BUILD_VERSION < VERSION_I_P
|
||||
for (i = 0; i < ARRLEN(__osEepPifRam.ramarray); i++) {
|
||||
__osEepPifRam.ramarray[i] = CONT_CMD_NOP;
|
||||
}
|
||||
@ -123,7 +123,7 @@ static void __osPackEepReadData(u8 address) {
|
||||
eepromformat.cmd = CONT_CMD_READ_EEPROM;
|
||||
eepromformat.address = address;
|
||||
|
||||
#if BUILD_VERSION < VERSION_J
|
||||
#if BUILD_VERSION < VERSION_I_P
|
||||
for (i = 0; i < ARRLEN(eepromformat.data); i++) {
|
||||
eepromformat.data[i] = 0;
|
||||
}
|
||||
|
@ -6,7 +6,7 @@
|
||||
static void __osPackEepWriteData(u8 address, u8* buffer);
|
||||
s32 osEepromWrite(OSMesgQueue* mq, u8 address, u8* buffer) {
|
||||
s32 ret = 0;
|
||||
#if BUILD_VERSION < VERSION_J
|
||||
#if BUILD_VERSION < VERSION_I_P
|
||||
int i;
|
||||
#endif
|
||||
u16 type;
|
||||
@ -19,13 +19,13 @@ s32 osEepromWrite(OSMesgQueue* mq, u8 address, u8* buffer) {
|
||||
|
||||
__osSiGetAccess();
|
||||
ret = __osEepStatus(mq, &sdata);
|
||||
#if BUILD_VERSION < VERSION_J
|
||||
#if BUILD_VERSION < VERSION_I_P
|
||||
ret = __osEepStatus(mq, &sdata); // Duplicate that was removed in 2.0J
|
||||
#endif
|
||||
|
||||
type = sdata.type & (CONT_EEPROM | CONT_EEP16K);
|
||||
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
if (ret == 0) {
|
||||
switch (type) {
|
||||
case CONT_EEPROM:
|
||||
@ -95,7 +95,7 @@ s32 osEepromWrite(OSMesgQueue* mq, u8 address, u8* buffer) {
|
||||
osRecvMesg(mq, NULL, OS_MESG_BLOCK);
|
||||
|
||||
// skip the first 4 bytes
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
ptr += 4;
|
||||
#else
|
||||
for (i = 0; i < 4; i++) {
|
||||
@ -116,7 +116,7 @@ static void __osPackEepWriteData(u8 address, u8* buffer) {
|
||||
__OSContEepromFormat eepromformat;
|
||||
int i;
|
||||
|
||||
#if BUILD_VERSION < VERSION_J
|
||||
#if BUILD_VERSION < VERSION_I_P
|
||||
for (i = 0; i < ARRLEN(__osEepPifRam.ramarray); i++) {
|
||||
__osEepPifRam.ramarray[i] = CONT_CMD_NOP;
|
||||
}
|
||||
@ -172,7 +172,7 @@ s32 __osEepStatus(OSMesgQueue* mq, OSContStatus* data) {
|
||||
|
||||
ret = __osSiRawStartDma(OS_WRITE, &__osEepPifRam);
|
||||
osRecvMesg(mq, NULL, OS_MESG_BLOCK);
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
__osContLastCmd = CONT_CMD_END;
|
||||
#else
|
||||
__osContLastCmd = CONT_CMD_REQUEST_STATUS;
|
||||
|
@ -4,7 +4,7 @@
|
||||
#include "controller.h"
|
||||
#include "PR/rmon.h"
|
||||
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
__OSInode __osPfsInodeCache ALIGNED(8);
|
||||
s32 __osPfsInodeCacheChannel = -1;
|
||||
u8 __osPfsInodeCacheBank = 250;
|
||||
@ -17,12 +17,12 @@ u16 __osSumcalc(u8* ptr, int length) {
|
||||
|
||||
for (i = 0; i < length; i++) {
|
||||
sum += *tmp++;
|
||||
#if BUILD_VERSION < VERSION_J
|
||||
#if BUILD_VERSION < VERSION_I_P
|
||||
sum = sum & 0xFFFF;
|
||||
#endif
|
||||
}
|
||||
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
return sum & 0xFFFF;
|
||||
#else
|
||||
return sum;
|
||||
@ -53,7 +53,7 @@ s32 __osRepairPackId(OSPfs* pfs, __OSPackId* badid, __OSPackId* newid) {
|
||||
int j;
|
||||
u16 index[4];
|
||||
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
j = 0;
|
||||
#else
|
||||
SET_ACTIVEBANK_TO_ZERO();
|
||||
@ -64,7 +64,7 @@ s32 __osRepairPackId(OSPfs* pfs, __OSPackId* badid, __OSPackId* newid) {
|
||||
newid->serial_mid = badid->serial_mid;
|
||||
newid->serial_low = badid->serial_low;
|
||||
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
SET_ACTIVEBANK_TO_ZERO();
|
||||
#else
|
||||
j = 0;
|
||||
@ -104,7 +104,7 @@ s32 __osRepairPackId(OSPfs* pfs, __OSPackId* badid, __OSPackId* newid) {
|
||||
j++;
|
||||
} while (j < PFS_MAX_BANKS);
|
||||
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
SET_ACTIVEBANK_TO_ZERO();
|
||||
#else
|
||||
ERRCK(SELECT_BANK(pfs, 0));
|
||||
@ -129,7 +129,7 @@ s32 __osRepairPackId(OSPfs* pfs, __OSPackId* badid, __OSPackId* newid) {
|
||||
|
||||
for (i = 0; i < BLOCKSIZE; i++) {
|
||||
if (temp[i] != ((u8*)newid)[i]) {
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
return PFS_ERR_DEVICE;
|
||||
#else
|
||||
return PFS_ERR_ID_FATAL;
|
||||
@ -174,7 +174,7 @@ s32 __osCheckPackId(OSPfs* pfs, __OSPackId* temp) {
|
||||
}
|
||||
|
||||
s32 __osGetId(OSPfs* pfs) {
|
||||
#if BUILD_VERSION < VERSION_J
|
||||
#if BUILD_VERSION < VERSION_I_P
|
||||
int k;
|
||||
#endif
|
||||
u16 sum;
|
||||
@ -209,7 +209,7 @@ s32 __osGetId(OSPfs* pfs) {
|
||||
}
|
||||
}
|
||||
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
bcopy(id, pfs->id, BLOCKSIZE);
|
||||
#else
|
||||
for (k = 0; k < ARRLEN(pfs->id); k++) {
|
||||
@ -228,13 +228,13 @@ s32 __osGetId(OSPfs* pfs) {
|
||||
}
|
||||
|
||||
s32 __osCheckId(OSPfs* pfs) {
|
||||
#if BUILD_VERSION < VERSION_J
|
||||
#if BUILD_VERSION < VERSION_I_P
|
||||
int k;
|
||||
#endif
|
||||
u8 temp[BLOCKSIZE];
|
||||
s32 ret;
|
||||
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
if (pfs->activebank != 0) {
|
||||
ret = __osPfsSelectBank(pfs, 0);
|
||||
|
||||
@ -259,7 +259,7 @@ s32 __osCheckId(OSPfs* pfs) {
|
||||
ERRCK(__osContRamRead(pfs->queue, pfs->channel, PFS_ID_0AREA, (u8*)temp));
|
||||
}
|
||||
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
if (bcmp(pfs->id, temp, BLOCKSIZE) != 0) {
|
||||
return PFS_ERR_NEW_PACK;
|
||||
}
|
||||
@ -280,7 +280,7 @@ s32 __osPfsRWInode(OSPfs* pfs, __OSInode* inode, u8 flag, u8 bank) {
|
||||
int offset;
|
||||
u8* addr;
|
||||
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
if (flag == PFS_READ && bank == __osPfsInodeCacheBank && (pfs->channel == __osPfsInodeCacheChannel)) {
|
||||
bcopy(&__osPfsInodeCache, inode, sizeof(__OSInode));
|
||||
return 0;
|
||||
@ -319,7 +319,7 @@ s32 __osPfsRWInode(OSPfs* pfs, __OSInode* inode, u8 flag, u8 bank) {
|
||||
ret = __osContRamRead(pfs->queue, pfs->channel, pfs->minode_table + bank * PFS_ONE_PAGE + j, addr);
|
||||
}
|
||||
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
sum = __osSumcalc((u8*)&inode->inode_page[offset], (PFS_INODE_SIZE_PER_PAGE - offset) * 2);
|
||||
#endif
|
||||
|
||||
@ -333,7 +333,7 @@ s32 __osPfsRWInode(OSPfs* pfs, __OSInode* inode, u8 flag, u8 bank) {
|
||||
__osContRamWrite(pfs->queue, pfs->channel, pfs->inode_table + bank * PFS_ONE_PAGE + j, addr, FALSE);
|
||||
}
|
||||
}
|
||||
#if BUILD_VERSION < VERSION_J
|
||||
#if BUILD_VERSION < VERSION_I_P
|
||||
else
|
||||
{
|
||||
for (j = 0; j < PFS_ONE_PAGE; j++)
|
||||
@ -345,7 +345,7 @@ s32 __osPfsRWInode(OSPfs* pfs, __OSInode* inode, u8 flag, u8 bank) {
|
||||
#endif
|
||||
}
|
||||
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
__osPfsInodeCacheBank = bank;
|
||||
bcopy(inode, &__osPfsInodeCache, sizeof(__OSInode));
|
||||
__osPfsInodeCacheChannel = pfs->channel;
|
||||
@ -355,7 +355,7 @@ s32 __osPfsRWInode(OSPfs* pfs, __OSInode* inode, u8 flag, u8 bank) {
|
||||
}
|
||||
|
||||
// This was moved into it's own file in 2.0J
|
||||
#if BUILD_VERSION < VERSION_J
|
||||
#if BUILD_VERSION < VERSION_I_P
|
||||
s32 __osPfsSelectBank(OSPfs* pfs) {
|
||||
u8 temp[BLOCKSIZE];
|
||||
int i;
|
||||
|
@ -5,7 +5,7 @@
|
||||
|
||||
#define READFORMAT(ptr) ((__OSContRamReadFormat*)(ptr))
|
||||
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
s32 __osPfsLastChannel = -1;
|
||||
|
||||
s32 __osContRamRead(OSMesgQueue* mq, int channel, u16 address, u8* buffer) {
|
||||
@ -38,7 +38,7 @@ s32 __osContRamRead(OSMesgQueue* mq, int channel, u16 address, u8* buffer) {
|
||||
ptr += channel;
|
||||
}
|
||||
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
READFORMAT(ptr)->addrh = address >> 3;
|
||||
READFORMAT(ptr)->addrl = (u8)((address << 5) | __osContAddressCrc(address));
|
||||
#else
|
||||
|
@ -7,7 +7,7 @@ extern s32 __osPfsLastChannel;
|
||||
|
||||
#define READFORMAT(ptr) ((__OSContRamReadFormat*)(ptr))
|
||||
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
s32 __osContRamWrite(OSMesgQueue* mq, int channel, u16 address, u8* buffer, int force) {
|
||||
s32 ret = 0;
|
||||
s32 i;
|
||||
@ -43,7 +43,7 @@ s32 __osContRamWrite(OSMesgQueue* mq, int channel, u16 address, u8* buffer, int
|
||||
ptr += channel;
|
||||
}
|
||||
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
READFORMAT(ptr)->addrh = address >> 3;
|
||||
READFORMAT(ptr)->addrl = ((address << 5) | __osContAddressCrc(address));
|
||||
#else
|
||||
|
@ -54,7 +54,7 @@ typedef struct
|
||||
/* 0x1 */ u8 txsize;
|
||||
/* 0x2 */ u8 rxsize;
|
||||
/* 0x3 */ u8 cmd;
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
/* 0x4 */ u8 addrh;
|
||||
/* 0x5 */ u8 addrl;
|
||||
#else
|
||||
@ -209,13 +209,13 @@ s32 __osCheckPackId(OSPfs *pfs, __OSPackId *temp);
|
||||
s32 __osGetId(OSPfs *pfs);
|
||||
s32 __osCheckId(OSPfs *pfs);
|
||||
s32 __osPfsRWInode(OSPfs *pfs, __OSInode *inode, u8 flag, u8 bank);
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
s32 __osPfsSelectBank(OSPfs *pfs, u8 bank);
|
||||
#else
|
||||
s32 __osPfsSelectBank(OSPfs *pfs);
|
||||
#endif
|
||||
s32 __osPfsDeclearPage(OSPfs *pfs, __OSInode *inode, int file_size_in_pages, int *first_page, u8 bank, int *decleared, int *last_page);
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
s32 __osPfsReleasePages(OSPfs *pfs, __OSInode *inode, u8 start_page, u8 bank, __OSInodeUnit *last_page);
|
||||
#else
|
||||
s32 __osPfsReleasePages(OSPfs *pfs, __OSInode *inode, u8 start_page, u16 *sum, u8 bank, __OSInodeUnit *last_page, int flag);
|
||||
@ -246,7 +246,7 @@ extern u8 __osMaxControllers;
|
||||
if (ret != 0) \
|
||||
return ret
|
||||
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
|
||||
#define SELECT_BANK(pfs, bank) \
|
||||
__osPfsSelectBank((pfs), (bank))
|
||||
|
@ -1,6 +1,6 @@
|
||||
#include "PR/os_internal.h"
|
||||
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
|
||||
u8 __osContAddressCrc(u16 addr) {
|
||||
u32 temp = 0;
|
||||
|
@ -43,9 +43,11 @@ s32 osGbpakReadId(OSPfs* pfs, OSGbpakId* id, u8* status) {
|
||||
return ret;
|
||||
}
|
||||
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
if (!(*status & OS_GBPAK_RSTB_STATUS)) {
|
||||
return PFS_ERR_CONTRFAIL;
|
||||
}
|
||||
#endif
|
||||
|
||||
#if BUILD_VERSION >= VERSION_K
|
||||
if (bcmp(nintendo, buf + 4, ARRLEN(nintendo))) {
|
||||
@ -68,12 +70,12 @@ s32 osGbpakReadId(OSPfs* pfs, OSGbpakId* id, u8* status) {
|
||||
}
|
||||
|
||||
if (bcmp(nintendo, buf + 4, ARRLEN(nintendo))) {
|
||||
return 4;
|
||||
return PFS_ERR_CONTRFAIL;
|
||||
}
|
||||
}
|
||||
#else
|
||||
if (bcmp(nintendo, buf + 4, ARRLEN(nintendo))) {
|
||||
return 4;
|
||||
return PFS_ERR_CONTRFAIL;
|
||||
}
|
||||
#endif
|
||||
for (i = 0x34, isum = 0; i < 0x4E; i++) {
|
||||
@ -81,7 +83,7 @@ s32 osGbpakReadId(OSPfs* pfs, OSGbpakId* id, u8* status) {
|
||||
}
|
||||
|
||||
if ((isum + 0x19) & 0xFF) {
|
||||
return 4;
|
||||
return PFS_ERR_CONTRFAIL;
|
||||
}
|
||||
|
||||
bcopy(buf, id, 0x50);
|
||||
|
@ -4,10 +4,10 @@
|
||||
#include "PR/rcp.h"
|
||||
#include "macros.h"
|
||||
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
OSPiHandle CartRomHandle ALIGNED(8);
|
||||
OSPiHandle LeoDiskHandle ALIGNED(8);
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
OSPiHandle *__osDiskHandle;
|
||||
|
||||
OSPiHandle *osLeoDiskInit(void) {
|
||||
u32 saveMask;
|
||||
|
||||
|
@ -6,7 +6,11 @@
|
||||
|
||||
extern OSPiHandle *__osDiskHandle;
|
||||
|
||||
#if BUILD_VERSION == VERSION_I_P
|
||||
u8 leoDiskStack[0x10] ALIGNED(16);
|
||||
#else
|
||||
u8 leoDiskStack[OS_PIM_STACKSIZE] ALIGNED(16);
|
||||
#endif
|
||||
|
||||
static void __osLeoAbnormalResume(void);
|
||||
static void __osLeoResume(void);
|
||||
|
@ -4,7 +4,7 @@
|
||||
#include "controller.h"
|
||||
#include "siint.h"
|
||||
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
static OSPifRam __MotorDataBuf[MAXCONTROLLERS] ALIGNED(8);
|
||||
|
||||
#define READFORMAT(ptr) ((__OSContRamReadFormat*)(ptr))
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
#define ROUND_UP_DIVIDE(numerator, denominator) (((numerator) + (denominator)-1) / (denominator))
|
||||
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
|
||||
s32 osPfsAllocateFile(OSPfs* pfs, u16 company_code, u32 game_code, u8* game_name, u8* ext_name, int file_size_in_bytes,
|
||||
s32* file_no) {
|
||||
|
@ -39,7 +39,7 @@ s32 osPfsDeleteFile(OSPfs* pfs, u16 company_code, u32 game_code, u8* game_name,
|
||||
|
||||
for (bank = dir.start_page.inode_t.bank; bank < pfs->banks;) {
|
||||
ERRCK(__osPfsRWInode(pfs, &inode, OS_READ, bank));
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
ERRCK(__osPfsReleasePages(pfs, &inode, startpage, bank, &last_page));
|
||||
#else
|
||||
ERRCK(__osPfsReleasePages(pfs, &inode, startpage, &sum, bank, &last_page, TRUE));
|
||||
@ -81,7 +81,7 @@ s32 osPfsDeleteFile(OSPfs* pfs, u16 company_code, u32 game_code, u8* game_name,
|
||||
return ret;
|
||||
}
|
||||
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
|
||||
s32 __osPfsReleasePages(OSPfs* pfs, __OSInode* inode, u8 start_page, u8 bank, __OSInodeUnit* last_page) {
|
||||
__OSInodeUnit next_page;
|
||||
|
@ -2,7 +2,7 @@
|
||||
#include "controller.h"
|
||||
#include "siint.h"
|
||||
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
void __osPfsRequestOneChannel(int channel, u8 cmd);
|
||||
#else
|
||||
void __osPfsRequestOneChannel(int channel);
|
||||
@ -14,7 +14,7 @@ s32 __osPfsGetStatus(OSMesgQueue* queue, int channel) {
|
||||
OSMesg dummy;
|
||||
OSContStatus data;
|
||||
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
__osPfsInodeCacheBank = 250;
|
||||
|
||||
__osPfsRequestOneChannel(channel, CONT_CMD_REQUEST_STATUS);
|
||||
@ -41,7 +41,7 @@ s32 __osPfsGetStatus(OSMesgQueue* queue, int channel) {
|
||||
return ret;
|
||||
}
|
||||
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
void __osPfsRequestOneChannel(int channel, u8 cmd) {
|
||||
#else
|
||||
void __osPfsRequestOneChannel(int channel) {
|
||||
@ -50,7 +50,7 @@ void __osPfsRequestOneChannel(int channel) {
|
||||
__OSContRequesFormatShort requestformat;
|
||||
int i;
|
||||
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
__osContLastCmd = CONT_CMD_END;
|
||||
#else
|
||||
__osContLastCmd = CONT_CMD_REQUEST_STATUS;
|
||||
@ -61,7 +61,7 @@ void __osPfsRequestOneChannel(int channel) {
|
||||
|
||||
requestformat.txsize = CONT_CMD_REQUEST_STATUS_TX;
|
||||
requestformat.rxsize = CONT_CMD_REQUEST_STATUS_RX;
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
requestformat.cmd = cmd;
|
||||
#else
|
||||
requestformat.cmd = CONT_CMD_REQUEST_STATUS;
|
||||
|
@ -1,7 +1,7 @@
|
||||
#include "PR/os_internal.h"
|
||||
#include "controller.h"
|
||||
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
s32 __osPfsSelectBank(OSPfs* pfs, u8 bank) {
|
||||
u8 temp[BLOCKSIZE];
|
||||
int i;
|
||||
|
@ -134,7 +134,7 @@ OSMesgQueue *osPiGetCmdQueue(void);
|
||||
if (cHandle->var != pihandle->var) \
|
||||
IO_WRITE(reg, pihandle->var)
|
||||
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
|
||||
#define EPI_SYNC(pihandle, stat, domain) \
|
||||
\
|
||||
|
@ -4,7 +4,7 @@
|
||||
#include "piint.h"
|
||||
#include "PR/rdb.h"
|
||||
|
||||
static OSThread piThread ALIGNED(8);
|
||||
OSThread piThread ALIGNED(8);
|
||||
static char piThreadStack[OS_PIM_STACKSIZE] ALIGNED(16);
|
||||
|
||||
#ifndef _FINALROM
|
||||
|
@ -55,7 +55,7 @@
|
||||
s32 __osSiRawStartDma(s32 direction, void* dramAddr) {
|
||||
assert(((u32)dramAddr & 0x3) == 0);
|
||||
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
if (IO_READ(SI_STATUS_REG) & (SI_STATUS_DMA_BUSY | SI_STATUS_RD_BUSY)) {
|
||||
return -1;
|
||||
}
|
||||
|
@ -6,7 +6,7 @@
|
||||
#include "../os/osint.h"
|
||||
|
||||
OSDevMgr __osViDevMgr = { 0 };
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
u32 __additional_scanline = 0;
|
||||
#endif
|
||||
static OSThread viThread;
|
||||
@ -33,7 +33,7 @@ void osCreateViManager(OSPri pri) {
|
||||
return;
|
||||
}
|
||||
__osTimerServicesInit();
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
__additional_scanline = 0;
|
||||
#endif
|
||||
osCreateMesgQueue(&viEventQueue, viEventBuf, ARRLEN(viEventBuf));
|
||||
|
@ -10,7 +10,7 @@ void __osViSwapContext() {
|
||||
register __OSViContext* vc;
|
||||
u32 origin;
|
||||
u32 hStart;
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
u32 vStart;
|
||||
#endif
|
||||
u32 nomValue;
|
||||
@ -37,7 +37,7 @@ void __osViSwapContext() {
|
||||
vc->y.scale = vm->fldRegs[field].yScale;
|
||||
}
|
||||
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
vStart = (vm->fldRegs[field].vStart - (__additional_scanline << 0x10)) + __additional_scanline;
|
||||
#endif
|
||||
hStart = vm->comRegs.hStart;
|
||||
@ -63,7 +63,7 @@ void __osViSwapContext() {
|
||||
IO_WRITE(VI_H_SYNC_REG, vm->comRegs.hSync);
|
||||
IO_WRITE(VI_LEAP_REG, vm->comRegs.leap);
|
||||
IO_WRITE(VI_H_START_REG, hStart);
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
IO_WRITE(VI_V_START_REG, vStart);
|
||||
#else
|
||||
IO_WRITE(VI_V_START_REG, vm->fldRegs[field].vStart);
|
||||
|
@ -20,7 +20,7 @@
|
||||
#define HWINTR_SP 0x04
|
||||
|
||||
/* __osHwInt struct size */
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
#define HWINTR_SIZE 0x8
|
||||
#else
|
||||
#define HWINTR_SIZE 0x4
|
||||
|
@ -68,7 +68,7 @@ EXPORT(__osCauseTable_pt)
|
||||
|
||||
.data
|
||||
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
EXPORT(__osHwIntTable)
|
||||
.word 0, 0
|
||||
.word 0, 0
|
||||
@ -559,7 +559,7 @@ STAY2(mtc0 t1, C0_COMPARE)
|
||||
b next_interrupt
|
||||
|
||||
cart:
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
and s0, s0, ~CAUSE_IP4
|
||||
la t1, __osHwIntTable
|
||||
add t1, HWINTR_SIZE
|
||||
|
@ -9,7 +9,7 @@ struct __osHwInt {
|
||||
|
||||
extern struct __osHwInt __osHwIntTable[];
|
||||
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
void __osGetHWIntrRoutine(OSHWIntr interrupt, s32 (**handler)(void), void** stackEnd) {
|
||||
#else
|
||||
void __osGetHWIntrRoutine(OSHWIntr interrupt, s32 (**handler)(void)) {
|
||||
|
@ -6,7 +6,7 @@
|
||||
#define SIZE_4MB 0x400000
|
||||
#define SIZE_8MB 0x800000
|
||||
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
|
||||
u32 osGetMemSize(void) {
|
||||
vu32* ptr;
|
||||
|
@ -6,7 +6,7 @@
|
||||
.text
|
||||
.set noreorder
|
||||
LEAF(__osDisableInt)
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
la t2, __OSGlobalIntMask
|
||||
lw t3, (t2)
|
||||
andi t3, 0xFF00
|
||||
|
@ -4,7 +4,7 @@
|
||||
#include "osint.h"
|
||||
|
||||
__OSEventState __osEventStateTab[OS_NUM_EVENTS] ALIGNED(8);
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
u32 __osPreNMI = FALSE;
|
||||
#endif
|
||||
|
||||
@ -26,7 +26,7 @@ void osSetEventMesg(OSEvent event, OSMesgQueue* mq, OSMesg msg) {
|
||||
es->messageQueue = mq;
|
||||
es->message = msg;
|
||||
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
if (event == OS_EVENT_PRENMI) {
|
||||
if (__osShutdown && !__osPreNMI) {
|
||||
osSendMesg(mq, msg, OS_MESG_NOBLOCK);
|
||||
|
@ -1,7 +1,7 @@
|
||||
#include "PR/os_internal.h"
|
||||
|
||||
// A stack frame was added to hardware interrupt handlers in 2.0J
|
||||
#if BUILD_VERSION >= VERSION_J
|
||||
#if BUILD_VERSION >= VERSION_I_P
|
||||
|
||||
struct __osHwInt {
|
||||
s32 (*handler)(void);
|
||||
|
@ -11,3 +11,4 @@ EXTERN(_VirtualToPhysicalTask);
|
||||
EXTERN(osSpTaskLoad);
|
||||
EXTERN(osSpTaskStartGo);
|
||||
EXTERN(osViModeMpalLpn1);
|
||||
EXTERN(__osPfsSelectBank);
|
||||
|
@ -40,7 +40,7 @@ __osDisableInt = 0x80062A90; // defined:true
|
||||
__osDispatchThread = 0x80057E44; // defined:true
|
||||
__osEepStatus = 0x8005BFA4; // defined:true
|
||||
__osEnqueueAndYield = 0x80057CEC; // defined:true
|
||||
__osGbpakSelectBank = 0x80065AD0; // defined:true
|
||||
__osGbpakSetBank = 0x80065AD0; // defined:true
|
||||
__osGetId = 0x8005C894; // defined:true
|
||||
__osIdCheckSum = 0x8005C2E4; // defined:true
|
||||
__osLeoInterrupt = 0x80055DF0; // defined:true
|
||||
@ -284,8 +284,8 @@ osResetType = 0x8000030C; // defined:true
|
||||
osAppNMIBuffer = 0x8000031C; // defined:true
|
||||
osTvType = 0x80000300; // defined:true
|
||||
__osGetCause = 0x80063E00; // defined:true
|
||||
CartRomHandle = 0x80102430; // defined:true
|
||||
LeoDiskHandle = 0x801024A8; // defined:true
|
||||
LeoDiskHandle = 0x801024A8;
|
||||
CartRomHandle = 0x80102430;
|
||||
__LeoDiskHandle = 0x801007C0; // defined:true
|
||||
__osGlobalIntMask = 0x800796B0; // defined:true
|
||||
__osShutdown = 0x800796AC; // defined:true
|
||||
|
@ -6,8 +6,6 @@ __osRunningThread = 0x80079630;
|
||||
D_80080001 = 0x80080001;
|
||||
D_80083ACC = 0x80083ACC;
|
||||
__osGlobalIntMask = 0x800796B0;
|
||||
CartRomHandle = 0x80102430;
|
||||
LeoDiskHandle = 0x801024A8;
|
||||
piThreadStack = 0x801026D0;
|
||||
LEOZONE_OUTERCYL_TBL = 0x8007DD08;
|
||||
LEOinterruptThreadStack = 0x80100638;
|
||||
|
@ -2,29 +2,29 @@
|
||||
#include "PR/R4300.h"
|
||||
#include "libleo/internal.h"
|
||||
|
||||
extern OSPiHandle LeoDiskHandle;
|
||||
extern OSPiHandle __LeoDiskHandle;
|
||||
extern OSPiHandle* __osDiskHandle;
|
||||
extern OSPiHandle* __osPiTable;
|
||||
|
||||
OSPiHandle* osLeoDiskInit(void) {
|
||||
u32 saveMask;
|
||||
|
||||
LeoDiskHandle.type = DEVICE_TYPE_64DD;
|
||||
LeoDiskHandle.baseAddress = PHYS_TO_K1(PI_DOM2_ADDR1);
|
||||
LeoDiskHandle.latency = 3;
|
||||
LeoDiskHandle.pulse = 6;
|
||||
LeoDiskHandle.pageSize = 6;
|
||||
LeoDiskHandle.relDuration = 2;
|
||||
LeoDiskHandle.domain = PI_DOMAIN2;
|
||||
LeoDiskHandle.speed = 0;
|
||||
__LeoDiskHandle.type = DEVICE_TYPE_64DD;
|
||||
__LeoDiskHandle.baseAddress = PHYS_TO_K1(PI_DOM2_ADDR1);
|
||||
__LeoDiskHandle.latency = 3;
|
||||
__LeoDiskHandle.pulse = 6;
|
||||
__LeoDiskHandle.pageSize = 6;
|
||||
__LeoDiskHandle.relDuration = 2;
|
||||
__LeoDiskHandle.domain = PI_DOMAIN2;
|
||||
__LeoDiskHandle.speed = 0;
|
||||
|
||||
bzero(&LeoDiskHandle.transferInfo, sizeof(__OSTranxInfo));
|
||||
bzero(&__LeoDiskHandle.transferInfo, sizeof(__OSTranxInfo));
|
||||
|
||||
saveMask = __osDisableInt();
|
||||
LeoDiskHandle.next = __osPiTable;
|
||||
__osPiTable = &LeoDiskHandle;
|
||||
__osDiskHandle = &LeoDiskHandle;
|
||||
__LeoDiskHandle.next = __osPiTable;
|
||||
__osPiTable = &__LeoDiskHandle;
|
||||
__osDiskHandle = &__LeoDiskHandle;
|
||||
__osRestoreInt(saveMask);
|
||||
|
||||
return &LeoDiskHandle;
|
||||
return &__LeoDiskHandle;
|
||||
}
|
||||
|
@ -344,6 +344,7 @@
|
||||
- [0x7A290, lib, libultra, siacs, .data]
|
||||
- [0x7A2A0, lib, libultra, initialize, .data]
|
||||
- [0x7A2C0, lib, libultra, reverb, .data]
|
||||
- [0x7A2E0, data, rom_data_7A2E0]
|
||||
- [0x7B460, lib, libultra, pimgr, .data]
|
||||
- [0x7B490, lib, libultra, vimodentsclpn1, .data]
|
||||
- [0x7B4E0, lib, libultra, vimodempallpn1, .data]
|
||||
@ -429,8 +430,8 @@
|
||||
- [0x7F1E0, lib, libultra, xldtob, .rodata]
|
||||
- [0x7F240, lib, libultra, llcvt, .rodata]
|
||||
|
||||
- [0x7F250, bin, F3DEX2_data] # F3DEX2 data
|
||||
- [0x7F670, bin, unk_bin_7F670]
|
||||
- [0x7F250, rodata, F3DEX2_data] # F3DEX2 data
|
||||
- [0x7F670, rodata, unk_bin_7F670]
|
||||
- [0x7F980]
|
||||
|
||||
# .bss
|
||||
@ -461,15 +462,14 @@
|
||||
- {type: lib, vram: 0x80102200, name: libultra, object: gbpakinit, section: .bss}
|
||||
- {type: lib, vram: 0x80102240, name: libultra, object: kdebugserver, section: .bss}
|
||||
- {type: lib, vram: 0x801023F0, name: libultra, object: pfsisplug, section: .bss}
|
||||
- {type: lib, vram: 0x80102430, name: libultra, object: cartrominit, section: .bss}
|
||||
- {type: lib, vram: 0x801024A8, name: libultra, object: leodiskinit, section: .bss}
|
||||
- {type: lib, vram: 0x80102430, name: libultra, object: leodiskinit, section: .bss}
|
||||
- {type: lib, vram: 0x80102520, name: libultra, object: pimgr, section: .bss}
|
||||
- {type: lib, vram: 0x801036F0, name: libultra, object: contpfs, section: .bss}
|
||||
- {type: lib, vram: 0x801037F0, name: libultra, object: seteventmesg, section: .bss}
|
||||
- {type: lib, vram: 0x80103830, name: libultra, object: rotaterpy, section: .bss}
|
||||
- {type: lib, vram: 0x80103880, name: libultra, object: rotate, section: .bss}
|
||||
- {type: lib, vram: 0x80103890, name: libultra, object: timerintr, section: .bss}
|
||||
- {type: lib, vram: 0x801038E4, name: libultra, object: cartrominit, section: .bss}
|
||||
- {type: lib, vram: 0x801038D0, name: libultra, object: cartrominit, section: .bss}
|
||||
- {type: lib, vram: 0x80103950, name: libultra, object: vimgr, section: .bss}
|
||||
- {type: lib, vram: 0x80104b70, name: libultra, object: conteepread, section: .bss}
|
||||
- [0x7F980]
|
||||
@ -496,7 +496,7 @@
|
||||
- [0x89020, hasm, fragments/1/fragment1_code_asm]
|
||||
- [0x8D1A0, data, fragments/1/fragment1_data]
|
||||
- [0xA8E80, rodata, fragments/1/fragment1_rodata]
|
||||
- [0xAAB60, bin, fragments/1/fragment1_relocs]
|
||||
- [0xAAB60, rodatabin, fragments/1/fragment1_reloc]
|
||||
|
||||
- name: fragment1_misc_yay0
|
||||
type: code
|
||||
@ -517,11 +517,11 @@
|
||||
start: 0x107FA0
|
||||
vram: 0x87800000
|
||||
subsegments:
|
||||
- [0x107FA0, hasm, fragments/2/fragment2_header]
|
||||
- [0x107FA0, textbin, fragments/2/fragment2_header]
|
||||
- [0x107FC0, c, fragments/2/fragment2]
|
||||
- [0x10E2D0, data, fragments/2/fragment2_data]
|
||||
- [0x117850, rodata, fragments/2/fragment2_rodata]
|
||||
- [0x1179C0, bin, fragments/2/fragment2_relocs]
|
||||
- [0x1179C0, rodatabin, fragments/2/fragment2_reloc]
|
||||
|
||||
# model animation code
|
||||
- name: fragment3
|
||||
@ -530,11 +530,11 @@
|
||||
start: 0x118990
|
||||
vram: 0x87900000
|
||||
subsegments:
|
||||
- [0x118990, hasm, fragments/3/fragment3_header]
|
||||
- [0x118990, textbin, fragments/3/fragment3_header]
|
||||
- [0x1189B0, c, fragments/3/fragment3]
|
||||
- [0x11C730, data, fragments/3/fragment3_data]
|
||||
- [0x11E810, rodata, fragments/3/fragment3_rodata]
|
||||
- [0x11E9D0, bin, fragments/3/fragment3_reloc]
|
||||
- [0x11E9D0, rodatabin, fragments/3/fragment3_reloc]
|
||||
|
||||
# MINIGAMES unknown code placed but not executed
|
||||
- name: fragment4
|
||||
@ -543,10 +543,10 @@
|
||||
start: 0x11F560
|
||||
vram: 0x87A00000
|
||||
subsegments:
|
||||
- [0x11F560, hasm, fragments/4/fragment4_header]
|
||||
- [0x11F560, textbin, fragments/4/fragment4_header]
|
||||
- [0x11F580, c, fragments/4/fragment4]
|
||||
- [0x120670, data, fragments/4/fragment4_data]
|
||||
- [0x120860, bin, fragments/4/fragment4_reloc]
|
||||
- [0x120860, rodatabin, fragments/4/fragment4_reloc]
|
||||
|
||||
# DROWZEE MINIGAME unknown code placed but not executed, might be something about other controllers
|
||||
- name: fragment5
|
||||
@ -555,10 +555,10 @@
|
||||
start: 0x120920
|
||||
vram: 0x87B00000 # unknown. we dont actually know this fragment's vaddr yet, but we need a unique vaddr so the linker doesnt complain. Might be an unused fragment, as it's very very small, and seems to only poll the controller.
|
||||
subsegments:
|
||||
- [0x120920, hasm, fragments/5/fragment5_header]
|
||||
- [0x120920, textbin, fragments/5/fragment5_header]
|
||||
- [0x120940, c, fragments/5/fragment5]
|
||||
- [0x1209E0, data, fragments/5/fragment5_data]
|
||||
- [0x120A00, bin, fragments/5/fragment5_reloc]
|
||||
- [0x120A00, rodatabin, fragments/5/fragment5_reloc]
|
||||
|
||||
# magikarp minigame code
|
||||
- name: fragment6
|
||||
@ -567,11 +567,11 @@
|
||||
start: 0x120A10
|
||||
vram: 0x86000000
|
||||
subsegments:
|
||||
- [0x120A10, hasm, fragments/6/fragment6_header]
|
||||
- [0x120A10, textbin, fragments/6/fragment6_header]
|
||||
- [0x120A30, c, fragments/6/fragment6]
|
||||
- [0x123330, .data, fragments/6/fragment6]
|
||||
- [0x123890, .rodata, fragments/6/fragment6]
|
||||
- [0x123940, bin, fragments/6/fragment6_reloc]
|
||||
- [0x123940, rodatabin, fragments/6/fragment6_reloc]
|
||||
|
||||
- name: fragment6_misc
|
||||
type: code
|
||||
@ -588,11 +588,11 @@
|
||||
start: 0x1278D0
|
||||
vram: 0x86100000
|
||||
subsegments:
|
||||
- [0x1278D0, hasm, fragments/7/fragment7_header]
|
||||
- [0x1278D0, textbin, fragments/7/fragment7_header]
|
||||
- [0x1278F0, c, fragments/7/fragment7]
|
||||
- [0x12BF10, data, fragments/7/fragment7_data]
|
||||
- [0x12CC90, rodata, fragments/7/fragment7_rodata]
|
||||
- [0x12CD50, bin, fragments/7/fragment7_reloc]
|
||||
- [0x12CD50, rodatabin, fragments/7/fragment7_reloc]
|
||||
|
||||
# rattata minigame code
|
||||
- name: fragment8
|
||||
@ -601,11 +601,11 @@
|
||||
start: 0x12DF40
|
||||
vram: 0x86200000
|
||||
subsegments:
|
||||
- [0x12DF40, hasm, fragments/8/fragment8_header]
|
||||
- [0x12DF40, textbin, fragments/8/fragment8_header]
|
||||
- [0x12DF60, c, fragments/8/fragment8]
|
||||
- [0x131800, data, fragments/8/fragment8_data]
|
||||
- [0x131AE0, rodata, fragments/8/fragment8_rodata]
|
||||
- [0x131D70, bin, fragments/8/fragment8_reloc]
|
||||
- [0x131D70, rodatabin, fragments/8/fragment8_reloc]
|
||||
|
||||
- name: fragment9
|
||||
type: code
|
||||
@ -613,11 +613,11 @@
|
||||
start: 0x1329E0
|
||||
vram: 0x86300000
|
||||
subsegments:
|
||||
- [0x1329E0, hasm, fragments/9/fragment9_header]
|
||||
- [0x1329E0, textbin, fragments/9/fragment9_header]
|
||||
- [0x132A00, c, fragments/9/fragment9]
|
||||
- [0x133FE0, data, fragments/9/fragment9_data]
|
||||
- [0x1340A0, rodata, fragments/9/fragment9_rodata]
|
||||
- [0x1340F0, bin, fragments/9/fragment9_reloc]
|
||||
- [0x1340F0, rodatabin, fragments/9/fragment9_reloc]
|
||||
|
||||
# drowzee minigame code
|
||||
- name: fragment10
|
||||
@ -626,10 +626,10 @@
|
||||
start: 0x134680
|
||||
vram: 0x86400000
|
||||
subsegments:
|
||||
- [0x134680, hasm, fragments/10/fragment10_header]
|
||||
- [0x134680, textbin, fragments/10/fragment10_header]
|
||||
- [0x1346A0, c, fragments/10/fragment10]
|
||||
- [0x136E40, data, fragments/10/fragment10_data]
|
||||
- [0x1386F0, bin, fragments/10/fragment10_reloc]
|
||||
- [0x1386F0, rodatabin, fragments/10/fragment10_reloc]
|
||||
|
||||
# pikachu minigame code
|
||||
- name: fragment11
|
||||
@ -638,11 +638,11 @@
|
||||
start: 0x138F20
|
||||
vram: 0x86500000
|
||||
subsegments:
|
||||
- [0x138F20, hasm, fragments/11/fragment11_header]
|
||||
- [0x138F20, textbin, fragments/11/fragment11_header]
|
||||
- [0x138F40, c, fragments/11/fragment11]
|
||||
- [0x13BB40, data, fragments/11/fragment11_data]
|
||||
- [0x142170, rodata, fragments/11/fragment11_rodata]
|
||||
- [0x142200, bin, fragments/11/fragment11_reloc]
|
||||
- [0x142200, rodatabin, fragments/11/fragment11_reloc]
|
||||
|
||||
# transfer pak error code
|
||||
- name: fragment12
|
||||
@ -651,11 +651,11 @@
|
||||
start: 0x142B10
|
||||
vram: 0x86600000
|
||||
subsegments:
|
||||
- [0x142B10, hasm, fragments/12/fragment12_header]
|
||||
- [0x142B10, textbin, fragments/12/fragment12_header]
|
||||
- [0x142B30, c, fragments/12/fragment12]
|
||||
- [0x143360, data, fragments/12/fragment12_data]
|
||||
- [0x143400, rodata, fragments/12/fragment12_rodata]
|
||||
- [0x143450, bin, fragments/12/fragment12_reloc]
|
||||
- [0x143450, rodatabin, fragments/12/fragment12_reloc]
|
||||
|
||||
- name: fragment13
|
||||
type: code
|
||||
@ -663,11 +663,11 @@
|
||||
start: 0x143700
|
||||
vram: 0x86700000
|
||||
subsegments:
|
||||
- [0x143700, hasm, fragments/13/fragment13_header]
|
||||
- [0x143700, textbin, fragments/13/fragment13_header]
|
||||
- [0x143720, c, fragments/13/fragment13]
|
||||
- [0x143F40, data, fragments/13/fragment13_data]
|
||||
- [0x143FE0, rodata, fragments/13/fragment13_rodata]
|
||||
- [0x144030, bin, fragments/13/fragment13_reloc]
|
||||
- [0x144030, rodatabin, fragments/13/fragment13_reloc]
|
||||
|
||||
# lickitung minigame code
|
||||
- name: fragment14
|
||||
@ -676,11 +676,11 @@
|
||||
start: 0x1442E0
|
||||
vram: 0x86800000
|
||||
subsegments:
|
||||
- [0x1442E0, hasm, fragments/14/fragment14_header]
|
||||
- [0x1442E0, textbin, fragments/14/fragment14_header]
|
||||
- [0x144300, c, fragments/14/fragment14]
|
||||
- [0x14AFB0, data, fragments/14/fragment14_data]
|
||||
- [0x14B660, rodata, fragments/14/fragment14_rodata]
|
||||
- [0x14B7E0, bin, fragments/14/fragment14_reloc]
|
||||
- [0x14B7E0, rodatabin, fragments/14/fragment14_reloc]
|
||||
|
||||
# gallery camera code
|
||||
- name: fragment15
|
||||
@ -689,11 +689,11 @@
|
||||
start: 0x14CA50
|
||||
vram: 0x86900000
|
||||
subsegments:
|
||||
- [0x14CA50, hasm, fragments/15/fragment15_header]
|
||||
- [0x14CA50, textbin, fragments/15/fragment15_header]
|
||||
- [0x14CA70, c, fragments/15/fragment15]
|
||||
- [0x1554D0, data, fragments/15/fragment15_data]
|
||||
- [0x156EB0, rodata, fragments/15/fragment15_rodata]
|
||||
- [0x157060, bin, fragments/15/fragment15_reloc]
|
||||
- [0x157060, rodatabin, fragments/15/fragment15_reloc]
|
||||
|
||||
# credits loader
|
||||
- name: fragment16
|
||||
@ -702,11 +702,11 @@
|
||||
start: 0x1589E0
|
||||
vram: 0x86A00000
|
||||
subsegments:
|
||||
- [0x1589E0, hasm, fragments/16/fragment16_header]
|
||||
- [0x1589E0, textbin, fragments/16/fragment16_header]
|
||||
- [0x158A00, c, fragments/16/fragment16]
|
||||
- [0x15AF80, data, fragments/16/fragment16_data]
|
||||
- [0x15EB20, rodata, fragments/16/fragment16_rodata]
|
||||
- [0x15EB50, bin, fragments/16/fragment16_reloc]
|
||||
- [0x15EB50, rodatabin, fragments/16/fragment16_reloc]
|
||||
|
||||
# stage loader code
|
||||
- name: fragment17
|
||||
@ -715,11 +715,11 @@
|
||||
start: 0x15F990
|
||||
vram: 0x86B00000
|
||||
subsegments:
|
||||
- [0x15F990, hasm, fragments/17/fragment17_header]
|
||||
- [0x15F990, textbin, fragments/17/fragment17_header]
|
||||
- [0x15F9B0, c, fragments/17/fragment17]
|
||||
- [0x16B580, data, fragments/17/fragment17_data]
|
||||
- [0x16DD70, rodata, fragments/17/fragment17_rodata]
|
||||
- [0x16DF60, bin, fragments/17/fragment17_reloc]
|
||||
- [0x16DF60, rodatabin, fragments/17/fragment17_reloc]
|
||||
|
||||
# ekans minigame code
|
||||
- name: fragment18
|
||||
@ -728,11 +728,11 @@
|
||||
start: 0x1708B0
|
||||
vram: 0x86C00000
|
||||
subsegments:
|
||||
- [0x1708B0, hasm, fragments/18/fragment18_header]
|
||||
- [0x1708B0, textbin, fragments/18/fragment18_header]
|
||||
- [0x1708D0, c, fragments/18/fragment18]
|
||||
- [0x1750F0, data, fragments/18/fragment18_data]
|
||||
- [0x17EC60, rodata, fragments/18/fragment18_rodata]
|
||||
- [0x17ED30, bin, fragments/18/fragment18_reloc]
|
||||
- [0x17ED30, rodatabin, fragments/18/fragment18_reloc]
|
||||
|
||||
- name: fragment19
|
||||
type: code
|
||||
@ -740,11 +740,11 @@
|
||||
start: 0x17FB40
|
||||
vram: 0x86D00000
|
||||
subsegments:
|
||||
- [0x17FB40, hasm, fragments/19/fragment19_header]
|
||||
- [0x17FB40, textbin, fragments/19/fragment19_header]
|
||||
- [0x17FB60, c, fragments/19/fragment19]
|
||||
- [0x180070, data, fragments/19/fragment19_data]
|
||||
- [0x180100, rodata, fragments/19/fragment19_rodata]
|
||||
- [0x180110, bin, fragments/19/fragment19_reloc]
|
||||
- [0x180110, rodatabin, fragments/19/fragment19_reloc]
|
||||
|
||||
# metapod minigame code
|
||||
- name: fragment20
|
||||
@ -753,11 +753,11 @@
|
||||
start: 0x1802B0
|
||||
vram: 0x86E00000
|
||||
subsegments:
|
||||
- [0x1802B0, hasm, fragments/20/fragment20_header]
|
||||
- [0x1802B0, textbin, fragments/20/fragment20_header]
|
||||
- [0x1802D0, c, fragments/20/fragment20]
|
||||
- [0x183260, data, fragments/20/fragment20_data]
|
||||
- [0x184FA0, rodata, fragments/20/fragment20_rodata]
|
||||
- [0x185010, bin, fragments/20/fragment20_reloc]
|
||||
- [0x185010, rodatabin, fragments/20/fragment20_reloc]
|
||||
|
||||
# sandshrew minigame code
|
||||
- name: fragment21
|
||||
@ -766,11 +766,11 @@
|
||||
start: 0x185A10
|
||||
vram: 0x86F00000
|
||||
subsegments:
|
||||
- [0x185A10, hasm, fragments/21/fragment21_header]
|
||||
- [0x185A10, textbin, fragments/21/fragment21_header]
|
||||
- [0x185A30, c, fragments/21/fragment21]
|
||||
- [0x1880A0, data, fragments/21/fragment21_data]
|
||||
- [0x190B90, rodata, fragments/21/fragment21_rodata]
|
||||
- [0x190C00, bin, fragments/21/fragment21_reloc]
|
||||
- [0x190C00, rodatabin, fragments/21/fragment21_reloc]
|
||||
|
||||
# pokemon lab loader
|
||||
- name: fragment22
|
||||
@ -779,11 +779,11 @@
|
||||
start: 0x191660
|
||||
vram: 0x88000000
|
||||
subsegments:
|
||||
- [0x191660, hasm, fragments/22/fragment22_header]
|
||||
- [0x191660, textbin, fragments/22/fragment22_header]
|
||||
- [0x191680, c, fragments/22/fragment22]
|
||||
- [0x193EA0, data, fragments/22/fragment22_data]
|
||||
- [0x1A8320, rodata, fragments/22/fragment22_rodata]
|
||||
- [0x1A8350, bin, fragments/22/fragment22_reloc]
|
||||
- [0x1A8350, rodatabin, fragments/22/fragment22_reloc]
|
||||
|
||||
# pokemon lab PC loader
|
||||
- name: fragment23
|
||||
@ -792,11 +792,11 @@
|
||||
start: 0x1A8570
|
||||
vram: 0x88200000
|
||||
subsegments:
|
||||
- [0x1A8570, hasm, fragments/23/fragment23_header]
|
||||
- [0x1A8570, textbin, fragments/23/fragment23_header]
|
||||
- [0x1A8590, c, fragments/23/fragment23]
|
||||
- [0x1C0160, data, fragments/23/fragment23_data]
|
||||
- [0x1CD3C0, rodata, fragments/23/fragment23_rodata]
|
||||
- [0x1CD500, bin, fragments/23/fragment23_reloc]
|
||||
- [0x1CD500, rodatabin, fragments/23/fragment23_reloc]
|
||||
|
||||
# pokemon lab PC: list code
|
||||
- name: fragment24
|
||||
@ -805,11 +805,11 @@
|
||||
start: 0x1CE9E0
|
||||
vram: 0x88300000
|
||||
subsegments:
|
||||
- [0x1CE9E0, hasm, fragments/24/fragment24_header]
|
||||
- [0x1CE9E0, textbin, fragments/24/fragment24_header]
|
||||
- [0x1CEA00, c, fragments/24/fragment24]
|
||||
- [0x1E5BB0, data, fragments/24/fragment24_data]
|
||||
- [0x1E8C40, rodata, fragments/24/fragment24_rodata]
|
||||
- [0x1E8EA0, bin, fragments/24/fragment24_reloc]
|
||||
- [0x1E8EA0, rodatabin, fragments/24/fragment24_reloc]
|
||||
|
||||
# POKEMON LAB unknown code placed but not executed
|
||||
- name: fragment25
|
||||
@ -818,10 +818,10 @@
|
||||
start: 0x1EA640
|
||||
vram: 0x88400000
|
||||
subsegments:
|
||||
- [0x1EA640, hasm, fragments/25/fragment25_header]
|
||||
- [0x1EA640, textbin, fragments/25/fragment25_header]
|
||||
- [0x1EA660, c, fragments/25/fragment25]
|
||||
- [0x1EA740, data, fragments/25/fragment25_data]
|
||||
- [0x1EA840, bin, fragments/25/fragment25_reloc]
|
||||
- [0x1EA840, rodatabin, fragments/25/fragment25_reloc]
|
||||
|
||||
# POKEMON LAB unknown code placed but not executed
|
||||
- name: fragment26
|
||||
@ -830,11 +830,11 @@
|
||||
start: 0x1EA860
|
||||
vram: 0x88500000
|
||||
subsegments:
|
||||
- [0x1EA860, hasm, fragments/26/fragment26_header]
|
||||
- [0x1EA860, textbin, fragments/26/fragment26_header]
|
||||
- [0x1EA880, c, fragments/26/fragment26]
|
||||
- [0x1F77E0, data, fragments/26/fragment26_data]
|
||||
- [0x1F7810, rodata, fragments/26/fragment26_rodata]
|
||||
- [0x1F7840, bin, fragments/26/fragment26_reloc]
|
||||
- [0x1F7840, rodatabin, fragments/26/fragment26_reloc]
|
||||
|
||||
# pokemon lab PC: pokemon, item, boxes etc
|
||||
- name: fragment27
|
||||
@ -843,11 +843,11 @@
|
||||
start: 0x1F7C90
|
||||
vram: 0x88600000
|
||||
subsegments:
|
||||
- [0x1F7C90, hasm, fragments/27/fragment27_header]
|
||||
- [0x1F7C90, textbin, fragments/27/fragment27_header]
|
||||
- [0x1F7CB0, c, fragments/27/fragment27]
|
||||
- [0x1FD750, data, fragments/27/fragment27_data]
|
||||
- [0x214060, rodata, fragments/27/fragment27_rodata]
|
||||
- [0x2141A0, bin, fragments/27/fragment27_reloc]
|
||||
- [0x2141A0, rodatabin, fragments/27/fragment27_reloc]
|
||||
|
||||
# pokemon lab: pokedex loader
|
||||
- name: fragment28
|
||||
@ -856,11 +856,11 @@
|
||||
start: 0x214900
|
||||
vram: 0x88800000
|
||||
subsegments:
|
||||
- [0x214900, hasm, fragments/28/fragment28_header]
|
||||
- [0x214900, textbin, fragments/28/fragment28_header]
|
||||
- [0x214920, c, fragments/28/fragment28]
|
||||
- [0x21CA50, data, fragments/28/fragment28_data]
|
||||
- [0x23AF80, rodata, fragments/28/fragment28_rodata]
|
||||
- [0x23B0A0, bin, fragments/28/fragment28_reloc]
|
||||
- [0x23B0A0, rodatabin, fragments/28/fragment28_reloc]
|
||||
|
||||
# POKEMON LAB PC some text functions but not executed
|
||||
- name: fragment29
|
||||
@ -869,10 +869,10 @@
|
||||
start: 0x23C250
|
||||
vram: 0x88900000
|
||||
subsegments:
|
||||
- [0x23C250, hasm, fragments/29/fragment29_header]
|
||||
- [0x23C250, textbin, fragments/29/fragment29_header]
|
||||
- [0x23C270, c, fragments/29/fragment29]
|
||||
- [0x23D3C0, data, fragments/29/fragment29_data]
|
||||
- [0x23D430, bin, fragments/29/fragment29_reloc]
|
||||
- [0x23D430, rodatabin, fragments/29/fragment29_reloc]
|
||||
|
||||
- name: fragment29_misc_1
|
||||
type: code
|
||||
@ -904,9 +904,9 @@
|
||||
start: 0x255230
|
||||
vram: 0x88A00000 # unknown vram, since nothing loads this. probably 88A00000?
|
||||
subsegments:
|
||||
- [0x255230, hasm, fragments/30/fragment30_header]
|
||||
- [0x255230, textbin, fragments/30/fragment30_header]
|
||||
- [0x255250, c, fragments/30/fragment30]
|
||||
- [0x2552B0, bin, fragments/30/fragment30_reloc]
|
||||
- [0x2552B0, rodatabin, fragments/30/fragment30_reloc]
|
||||
|
||||
# transfer pak checker
|
||||
- name: fragment31
|
||||
@ -915,12 +915,12 @@
|
||||
start: 0x2552C0
|
||||
vram: 0x81000000
|
||||
subsegments:
|
||||
- [0x2552C0, hasm, fragments/31/fragment31_header]
|
||||
- [0x2552E0, bin, fragments/31/fragment31_unk_table] # what is this?
|
||||
- [0x2552C0, textbin, fragments/31/fragment31_header]
|
||||
- [0x2552E0, textbin, fragments/31/fragment31_unk_table] # what is this?
|
||||
- [0x2554C0, c, fragments/31/fragment31]
|
||||
- [0x259290, data, fragments/31/fragment31_data]
|
||||
- [0x259480, rodata, fragments/31/fragment31_rodata]
|
||||
- [0x259AA0, bin, fragments/31/fragment31_reloc]
|
||||
- [0x259AA0, rodatabin, fragments/31/fragment31_reloc]
|
||||
|
||||
# drowzee minigame stage animations
|
||||
- name: fragment32
|
||||
@ -929,10 +929,10 @@
|
||||
start: 0x25A740
|
||||
vram: 0x81100000
|
||||
subsegments:
|
||||
- [0x25A740, hasm, fragments/32/fragment32_header]
|
||||
- [0x25A740, textbin, fragments/32/fragment32_header]
|
||||
- [0x25A760, c, fragments/32/fragment32]
|
||||
- [0x25B060, data, fragments/32/fragment32_data]
|
||||
- [0x25B070, bin, fragments/32/fragment32_reloc]
|
||||
- [0x25B070, rodatabin, fragments/32/fragment32_reloc]
|
||||
|
||||
# transfer pak code
|
||||
- name: fragment33
|
||||
@ -941,11 +941,11 @@
|
||||
start: 0x25B0D0
|
||||
vram: 0x81300000
|
||||
subsegments:
|
||||
- [0x25B0D0, hasm, fragments/33/fragment33_header]
|
||||
- [0x25B0D0, textbin, fragments/33/fragment33_header]
|
||||
- [0x25B0F0, asm, fragments/33/fragment33]
|
||||
- [0x25ECF0, data, fragments/33/fragment33_data]
|
||||
- [0x25F020, rodata, fragments/33/fragment33_rodata]
|
||||
- [0x25F070, bin, fragments/33/fragment33_reloc]
|
||||
- [0x25F070, rodatabin, fragments/33/fragment33_reloc]
|
||||
|
||||
- name: fragment33_misc
|
||||
type: code
|
||||
@ -962,11 +962,11 @@
|
||||
start: 0x261F70
|
||||
vram: 0x81400000
|
||||
subsegments:
|
||||
- [0x261F70, hasm, fragments/34/fragment34_header]
|
||||
- [0x261F70, textbin, fragments/34/fragment34_header]
|
||||
- [0x261F90, c, fragments/34/fragment34]
|
||||
- [0x26F9C0, data, fragments/34/fragment34_data]
|
||||
- [0x270570, rodata, fragments/34/fragment34_rodata]
|
||||
- [0x270590, bin, fragments/34/fragment34_reloc]
|
||||
- [0x270590, rodatabin, fragments/34/fragment34_reloc]
|
||||
|
||||
# n64 logo code
|
||||
- name: fragment35
|
||||
@ -975,9 +975,9 @@
|
||||
start: 0x271260
|
||||
vram: 0x82000000
|
||||
subsegments:
|
||||
- [0x271260, hasm, fragments/35/fragment35_header]
|
||||
- [0x271260, textbin, fragments/35/fragment35_header]
|
||||
- [0x271280, c, fragments/35/fragment35]
|
||||
- [0x2717C0, bin, fragments/35/fragment35_reloc]
|
||||
- [0x2717C0, rodatabin, fragments/35/fragment35_reloc]
|
||||
|
||||
# title screen code
|
||||
- name: fragment36
|
||||
@ -986,11 +986,11 @@
|
||||
start: 0x2717E0
|
||||
vram: 0x82100000
|
||||
subsegments:
|
||||
- [0x2717E0, hasm, fragments/36/fragment36_header]
|
||||
- [0x2717E0, textbin, fragments/36/fragment36_header]
|
||||
- [0x271800, c, fragments/36/fragment36]
|
||||
- [0x2725A0, data, fragments/36/fragment36_data]
|
||||
- [0x272660, rodata, fragments/36/fragment36_rodata]
|
||||
- [0x272680, bin, fragments/36/fragment36_reloc]
|
||||
- [0x272680, rodatabin, fragments/36/fragment36_reloc]
|
||||
|
||||
# stadium field loader
|
||||
- name: fragment37
|
||||
@ -999,11 +999,11 @@
|
||||
start: 0x272830
|
||||
vram: 0x82200000
|
||||
subsegments:
|
||||
- [0x272830, hasm, fragments/37/fragment37_header]
|
||||
- [0x272830, textbin, fragments/37/fragment37_header]
|
||||
- [0x272850, c, fragments/37/fragment37]
|
||||
- [0x2757D0, data, fragments/37/fragment37_data]
|
||||
- [0x275900, rodata, fragments/37/fragment37_rodata]
|
||||
- [0x275920, bin, fragments/37/fragment37_reloc]
|
||||
- [0x275920, rodatabin, fragments/37/fragment37_reloc]
|
||||
|
||||
# event battle loader
|
||||
- name: fragment38
|
||||
@ -1012,11 +1012,11 @@
|
||||
start: 0x275CE0
|
||||
vram: 0x82300000
|
||||
subsegments:
|
||||
- [0x275CE0, hasm, fragments/38/fragment38_header]
|
||||
- [0x275CE0, textbin, fragments/38/fragment38_header]
|
||||
- [0x275D00, c, fragments/38/fragment38]
|
||||
- [0x27B600, data, fragments/38/fragment38_data]
|
||||
- [0x27B6B0, rodata, fragments/38/fragment38_rodata]
|
||||
- [0x27B700, bin, fragments/38/fragment38_reloc]
|
||||
- [0x27B700, rodatabin, fragments/38/fragment38_reloc]
|
||||
|
||||
# minigames loader
|
||||
- name: fragment39
|
||||
@ -1025,11 +1025,11 @@
|
||||
start: 0x27BCA0
|
||||
vram: 0x82500000
|
||||
subsegments:
|
||||
- [0x27BCA0, hasm, fragments/39/fragment39_header]
|
||||
- [0x27BCA0, textbin, fragments/39/fragment39_header]
|
||||
- [0x27BCC0, c, fragments/39/fragment39]
|
||||
- [0x281E50, data, fragments/39/fragment39_data]
|
||||
- [0x2846C0, rodata, fragments/39/fragment39_rodata]
|
||||
- [0x284790, bin, fragments/39/fragment39_reloc]
|
||||
- [0x284790, rodatabin, fragments/39/fragment39_reloc]
|
||||
|
||||
# gym leader castle clear / pokemon gift code
|
||||
- name: fragment40
|
||||
@ -1038,11 +1038,11 @@
|
||||
start: 0x285DC0
|
||||
vram: 0x83100000
|
||||
subsegments:
|
||||
- [0x285DC0, hasm, fragments/40/fragment40_header]
|
||||
- [0x285DC0, textbin, fragments/40/fragment40_header]
|
||||
- [0x285DE0, c, fragments/40/fragment40]
|
||||
- [0x2879A0, data, fragments/40/fragment40_data]
|
||||
- [0x287C80, rodata, fragments/40/fragment40_rodata]
|
||||
- [0x287CA0, bin, fragments/40/fragment40_reloc]
|
||||
- [0x287CA0, rodatabin, fragments/40/fragment40_reloc]
|
||||
|
||||
# pokemon trade machine loader
|
||||
- name: fragment41
|
||||
@ -1051,11 +1051,11 @@
|
||||
start: 0x287EB0
|
||||
vram: 0x82F00000
|
||||
subsegments:
|
||||
- [0x287EB0, hasm, fragments/41/fragment41_header]
|
||||
- [0x287EB0, textbin, fragments/41/fragment41_header]
|
||||
- [0x287ED0, c, fragments/41/fragment41]
|
||||
- [0x29BA20, data, fragments/41/fragment41_data]
|
||||
- [0x29BF80, rodata, fragments/41/fragment41_rodata]
|
||||
- [0x29C2D0, bin, fragments/41/fragment41_reloc]
|
||||
- [0x29C2D0, rodatabin, fragments/41/fragment41_reloc]
|
||||
|
||||
# gallery loader
|
||||
- name: fragment42
|
||||
@ -1064,11 +1064,11 @@
|
||||
start: 0x29DD30
|
||||
vram: 0x83300000
|
||||
subsegments:
|
||||
- [0x29DD30, hasm, fragments/42/fragment42_header]
|
||||
- [0x29DD30, textbin, fragments/42/fragment42_header]
|
||||
- [0x29DD50, c, fragments/42/fragment42]
|
||||
- [0x2A0EB0, data, fragments/42/fragment42_data]
|
||||
- [0x2A0FE0, rodata, fragments/42/fragment42_rodata]
|
||||
- [0x2A1010, bin, fragments/42/fragment42_reloc]
|
||||
- [0x2A1010, rodatabin, fragments/42/fragment42_reloc]
|
||||
|
||||
# gallery code
|
||||
- name: fragment43
|
||||
@ -1077,11 +1077,11 @@
|
||||
start: 0x2A1B30
|
||||
vram: 0x83400000
|
||||
subsegments:
|
||||
- [0x2A1B30, hasm, fragments/43/fragment43_header]
|
||||
- [0x2A1B30, textbin, fragments/43/fragment43_header]
|
||||
- [0x2A1B50, c, fragments/43/fragment43]
|
||||
- [0x2A4950, data, fragments/43/fragment43_data]
|
||||
- [0x2A49F0, rodata, fragments/43/fragment43_rodata]
|
||||
- [0x2A4A10, bin, fragments/43/fragment43_reloc]
|
||||
- [0x2A4A10, rodatabin, fragments/43/fragment43_reloc]
|
||||
|
||||
# gallery album code
|
||||
- name: fragment44
|
||||
@ -1090,10 +1090,10 @@
|
||||
start: 0x2A4DF0
|
||||
vram: 0x83500000
|
||||
subsegments:
|
||||
- [0x2A4DF0, hasm, fragments/44/fragment44_header]
|
||||
- [0x2A4DF0, textbin, fragments/44/fragment44_header]
|
||||
- [0x2A4E10, c, fragments/44/fragment44]
|
||||
- [0x2A8C60, rodata, fragments/44/fragment44_rodata]
|
||||
- [0x2A8DB0, bin, fragments/44/fragment44_reloc]
|
||||
- [0x2A8DB0, rodatabin, fragments/44/fragment44_reloc]
|
||||
|
||||
# might be print code
|
||||
- name: fragment45
|
||||
@ -1102,11 +1102,11 @@
|
||||
start: 0x2A9790
|
||||
vram: 0x83600000
|
||||
subsegments:
|
||||
- [0x2A9790, hasm, fragments/45/fragment45_header]
|
||||
- [0x2A9790, textbin, fragments/45/fragment45_header]
|
||||
- [0x2A97B0, c, fragments/45/fragment45]
|
||||
- [0x2ACA10, data, fragments/45/fragment45_data]
|
||||
- [0x2ACA70, rodata, fragments/45/fragment45_rodata]
|
||||
- [0x2ACA80, bin, fragments/45/fragment45_reloc]
|
||||
- [0x2ACA80, rodatabin, fragments/45/fragment45_reloc]
|
||||
|
||||
# gallery enlarge code
|
||||
- name: fragment46
|
||||
@ -1115,10 +1115,10 @@
|
||||
start: 0x2AD270
|
||||
vram: 0x83700000
|
||||
subsegments:
|
||||
- [0x2AD270, hasm, fragments/46/fragment46_header]
|
||||
- [0x2AD270, textbin, fragments/46/fragment46_header]
|
||||
- [0x2AD290, c, fragments/46/fragment46]
|
||||
- [0x2AD720, data, fragments/46/fragment46_data]
|
||||
- [0x2AD730, bin, fragments/46/fragment46_reloc]
|
||||
- [0x2AD730, rodatabin, fragments/46/fragment46_reloc]
|
||||
|
||||
# gallery rental pokemon loader
|
||||
- name: fragment47
|
||||
@ -1127,11 +1127,11 @@
|
||||
start: 0x2AD8F0
|
||||
vram: 0x83800000
|
||||
subsegments:
|
||||
- [0x2AD8F0, hasm, fragments/47/fragment47_header]
|
||||
- [0x2AD8F0, textbin, fragments/47/fragment47_header]
|
||||
- [0x2AD910, c, fragments/47/fragment47]
|
||||
- [0x2B25A0, data, fragments/47/fragment47_data]
|
||||
- [0x2B2E50, rodata, fragments/47/fragment47_rodata]
|
||||
- [0x2B2F40, bin, fragments/47/fragment47_reloc]
|
||||
- [0x2B2F40, rodatabin, fragments/47/fragment47_reloc]
|
||||
|
||||
# Gallery Debugger (unused)
|
||||
- name: fragment48
|
||||
@ -1140,11 +1140,11 @@
|
||||
start: 0x2B3F70
|
||||
vram: 0x83900000 # apparently not used either, but VRAM is an estimate based on the patterns around this fragment.
|
||||
subsegments:
|
||||
- [0x2B3F70, hasm, fragments/48/fragment48_header]
|
||||
- [0x2B3F70, textbin, fragments/48/fragment48_header]
|
||||
- [0x2B3F90, c, fragments/48/fragment48]
|
||||
- [0x2B45A0, data, fragments/48/fragment48_data]
|
||||
- [0x2B45C0, rodata, fragments/48/fragment48_rodata]
|
||||
- [0x2B4620, bin, fragments/48/fragment48_reloc]
|
||||
- [0x2B4620, rodatabin, fragments/48/fragment48_reloc]
|
||||
|
||||
- name: fragment49
|
||||
type: code
|
||||
@ -1152,10 +1152,10 @@
|
||||
start: 0x2B46F0
|
||||
vram: 0x83A00000
|
||||
subsegments:
|
||||
- [0x2B46F0, hasm, fragments/49/fragment49_header]
|
||||
- [0x2B46F0, textbin, fragments/49/fragment49_header]
|
||||
- [0x2B4710, c, fragments/49/fragment49]
|
||||
- [0x2B5240, data, fragments/49/fragment49_data]
|
||||
- [0x2B5260, bin, fragments/49/fragment49_reloc]
|
||||
- [0x2B5260, rodatabin, fragments/49/fragment49_reloc]
|
||||
|
||||
# hall of fame loader
|
||||
- name: fragment50
|
||||
@ -1164,11 +1164,11 @@
|
||||
start: 0x2B5350
|
||||
vram: 0x82600000
|
||||
subsegments:
|
||||
- [0x2B5350, hasm, fragments/50/fragment50_header]
|
||||
- [0x2B5350, textbin, fragments/50/fragment50_header]
|
||||
- [0x2B5370, c, fragments/50/fragment50]
|
||||
- [0x2B91D0, data, fragments/50/fragment50_data]
|
||||
- [0x2BC690, rodata, fragments/50/fragment50_rodata]
|
||||
- [0x2BC760, bin, fragments/50/fragment50_reloc]
|
||||
- [0x2BC760, rodatabin, fragments/50/fragment50_reloc]
|
||||
|
||||
|
||||
- name: fragment51
|
||||
@ -1177,9 +1177,9 @@
|
||||
start: 0x2BD0A0
|
||||
vram: 0x82800000 # unknown vram due to being unused, but based on the patterns before hand, this is probably 82800000.
|
||||
subsegments:
|
||||
- [0x2BD0A0, bin, fragments/51/fragment51_header] # need to leave it as a bin. Splat thinks there's a pointer
|
||||
- [0x2BD0A0, textbin, fragments/51/fragment51_header] # need to leave it as a bin. Splat thinks there's a pointer
|
||||
- [0x2BD0C0, c, fragments/51/fragment51]
|
||||
- [0x2BD120, bin, fragments/51/fragment51_reloc]
|
||||
- [0x2BD120, rodatabin, fragments/51/fragment51_reloc]
|
||||
|
||||
|
||||
- name: fragment52
|
||||
@ -1188,10 +1188,10 @@
|
||||
start: 0x2BD130
|
||||
vram: 0x82900000 # unknown vram due to being unused, but based on the patterns before hand, this is probably 82900000.
|
||||
subsegments:
|
||||
- [0x2BD130, bin, fragments/52/fragment52_header] # need to leave it as a bin. Splat thinks there's a pointer
|
||||
- [0x2BD130, textbin, fragments/52/fragment52_header] # need to leave it as a bin. Splat thinks there's a pointer
|
||||
- [0x2BD150, c, fragments/52/fragment52]
|
||||
- [0x2BD600, data, fragments/52/fragment52_data]
|
||||
- [0x2BD660, bin, fragments/52/fragment52_reloc]
|
||||
- [0x2BD660, rodatabin, fragments/52/fragment52_reloc]
|
||||
|
||||
- name: fragment53
|
||||
type: code
|
||||
@ -1199,10 +1199,10 @@
|
||||
start: 0x2BD6E0
|
||||
vram: 0x82A00000
|
||||
subsegments:
|
||||
- [0x2BD6E0, hasm, fragments/53/fragment53_header]
|
||||
- [0x2BD6E0, textbin, fragments/53/fragment53_header]
|
||||
- [0x2BD700, c, fragments/53/fragment53]
|
||||
- [0x2BDA40, data, fragments/53/fragment53_data]
|
||||
- [0x2BDA50, bin, fragments/53/fragment53_reloc]
|
||||
- [0x2BDA50, rodatabin, fragments/53/fragment53_reloc]
|
||||
|
||||
# RENTAL battle, rules, registration loader
|
||||
- name: fragment54
|
||||
@ -1211,10 +1211,10 @@
|
||||
start: 0x2BDAC0
|
||||
vram: 0x82B00000
|
||||
subsegments:
|
||||
- [0x2BDAC0, bin, fragments/54/fragment54_header] # need to leave it as a bin. Splat thinks there's a pointer
|
||||
- [0x2BDAC0, textbin, fragments/54/fragment54_header] # need to leave it as a bin. Splat thinks there's a pointer
|
||||
- [0x2BDAE0, c, fragments/54/fragment54]
|
||||
- [0x2BEBE0, data, fragments/54/fragment54_data]
|
||||
- [0x2BEC00, bin, fragments/54/fragment54_reloc]
|
||||
- [0x2BEC00, rodatabin, fragments/54/fragment54_reloc]
|
||||
|
||||
|
||||
# RENTAL rules loader
|
||||
@ -1224,11 +1224,11 @@
|
||||
start: 0x2BED20
|
||||
vram: 0x83000000
|
||||
subsegments:
|
||||
- [0x2BED20, hasm, fragments/55/fragment55_header]
|
||||
- [0x2BED20, textbin, fragments/55/fragment55_header]
|
||||
- [0x2BED40, c, fragments/55/fragment55]
|
||||
- [0x2C26E0, data, fragments/55/fragment55_data]
|
||||
- [0x2C28A0, rodata, fragments/55/fragment55_rodata]
|
||||
- [0x2C29A0, bin, fragments/55/fragment55_reloc]
|
||||
- [0x2C29A0, rodatabin, fragments/55/fragment55_reloc]
|
||||
|
||||
# options code
|
||||
- name: fragment56
|
||||
@ -1237,9 +1237,9 @@
|
||||
start: 0x2C3220
|
||||
vram: 0x82C00000
|
||||
subsegments:
|
||||
- [0x2C3220, hasm, fragments/56/fragment56_header]
|
||||
- [0x2C3220, textbin, fragments/56/fragment56_header]
|
||||
- [0x2C3240, c, fragments/56/fragment56]
|
||||
- [0x2C4880, bin, fragments/56/fragment56_reloc]
|
||||
- [0x2C4880, rodatabin, fragments/56/fragment56_reloc]
|
||||
|
||||
# RENTAL registration code
|
||||
- name: fragment57
|
||||
@ -1248,11 +1248,11 @@
|
||||
start: 0x2C49D0
|
||||
vram: 0x82D00000
|
||||
subsegments:
|
||||
- [0x2C49D0, hasm, fragments/57/fragment57_header]
|
||||
- [0x2C49D0, textbin, fragments/57/fragment57_header]
|
||||
- [0x2C49F0, c, fragments/57/fragment57]
|
||||
- [0x2CB970, data, fragments/57/fragment57_data]
|
||||
- [0x2CE950, rodata, fragments/57/fragment57_rodata]
|
||||
- [0x2CE9C0, bin, fragments/57/fragment57_reloc]
|
||||
- [0x2CE9C0, rodatabin, fragments/57/fragment57_reloc]
|
||||
|
||||
# sandshrew minigame stage animation
|
||||
- name: fragment58
|
||||
@ -1261,11 +1261,11 @@
|
||||
start: 0x2CF350
|
||||
vram: 0x84000000
|
||||
subsegments:
|
||||
- [0x2CF350, hasm, fragments/58/fragment58_header]
|
||||
- [0x2CF350, textbin, fragments/58/fragment58_header]
|
||||
- [0x2CF370, c, fragments/58/fragment58]
|
||||
- [0x2D1F30, data, fragments/58/fragment58_data]
|
||||
- [0x2D2000, rodata, fragments/58/fragment58_rodata]
|
||||
- [0x2D2050, bin, fragments/58/fragment58_reloc]
|
||||
- [0x2D2050, rodatabin, fragments/58/fragment58_reloc]
|
||||
|
||||
# stadium loader
|
||||
- name: fragment59
|
||||
@ -1274,11 +1274,11 @@
|
||||
start: 0x2D24C0
|
||||
vram: 0x84100000
|
||||
subsegments:
|
||||
- [0x2D24C0, hasm, fragments/59/fragment59_header]
|
||||
- [0x2D24C0, textbin, fragments/59/fragment59_header]
|
||||
- [0x2D24E0, c, fragments/59/fragment59]
|
||||
- [0x2D48F0, data, fragments/59/fragment59_data]
|
||||
- [0x2D58F0, rodata, fragments/59/fragment59_rodata]
|
||||
- [0x2D5900, bin, fragments/59/fragment59_reloc]
|
||||
- [0x2D5900, rodatabin, fragments/59/fragment59_reloc]
|
||||
|
||||
# cup code
|
||||
- name: fragment60
|
||||
@ -1287,11 +1287,11 @@
|
||||
start: 0x2D5CB0
|
||||
vram: 0x82E00000
|
||||
subsegments:
|
||||
- [0x2D5CB0, hasm, fragments/60/fragment60_header]
|
||||
- [0x2D5CB0, textbin, fragments/60/fragment60_header]
|
||||
- [0x2D5CD0, c, fragments/60/fragment60]
|
||||
- [0x2D6DC0, data, fragments/60/fragment60_data]
|
||||
- [0x2D7650, rodata, fragments/60/fragment60_rodata]
|
||||
- [0x2D7660, bin, fragments/60/fragment60_reloc]
|
||||
- [0x2D7660, rodatabin, fragments/60/fragment60_reloc]
|
||||
|
||||
# RENTAL pokemon loader
|
||||
- name: fragment61
|
||||
@ -1300,11 +1300,11 @@
|
||||
start: 0x2D7890
|
||||
vram: 0x84200000
|
||||
subsegments:
|
||||
- [0x2D7890, hasm, fragments/61/fragment61_header]
|
||||
- [0x2D7890, textbin, fragments/61/fragment61_header]
|
||||
- [0x2D78B0, c, fragments/61/fragment61]
|
||||
- [0x2E85D0, data, fragments/61/fragment61_data]
|
||||
- [0x2E9120, rodata, fragments/61/fragment61_rodata]
|
||||
- [0x2E93C0, bin, fragments/61/fragment61_reloc]
|
||||
- [0x2E93C0, rodatabin, fragments/61/fragment61_reloc]
|
||||
|
||||
# battle system code
|
||||
- name: fragment62
|
||||
@ -1313,11 +1313,11 @@
|
||||
start: 0x2EA8C0
|
||||
vram: 0x84300000
|
||||
subsegments:
|
||||
- [0x2EA8C0, hasm, fragments/62/fragment62_header]
|
||||
- [0x2EA8C0, textbin, fragments/62/fragment62_header]
|
||||
- [0x2EA8E0, c, fragments/62/fragment62]
|
||||
- [0x36EC10, data, fragments/62/fragment62_data]
|
||||
- [0x3759C0, rodata, fragments/62/fragment62_rodata]
|
||||
- [0x378D00, bin, fragments/62/fragment62_reloc]
|
||||
- [0x378D00, rodatabin, fragments/62/fragment62_reloc]
|
||||
|
||||
# battle preparation flags, rules, code
|
||||
- name: fragment63
|
||||
@ -1326,11 +1326,11 @@
|
||||
start: 0x394100
|
||||
vram: 0x84B00000
|
||||
subsegments:
|
||||
- [0x394100, hasm, fragments/63/fragment63_header]
|
||||
- [0x394100, textbin, fragments/63/fragment63_header]
|
||||
- [0x394120, c, fragments/63/fragment63]
|
||||
- [0x3A3C10, data, fragments/63/fragment63_data]
|
||||
- [0x3AD980, rodata, fragments/63/fragment63_rodata]
|
||||
- [0x3ADA10, bin, fragments/63/fragment63_reloc]
|
||||
- [0x3ADA10, rodatabin, fragments/63/fragment63_reloc]
|
||||
|
||||
# menu selector before battle code
|
||||
- name: fragment64
|
||||
@ -1339,11 +1339,11 @@
|
||||
start: 0x3AEE50
|
||||
vram: 0x84800000
|
||||
subsegments:
|
||||
- [0x3AEE50, hasm, fragments/64/fragment64_header]
|
||||
- [0x3AEE50, textbin, fragments/64/fragment64_header]
|
||||
- [0x3AEE70, c, fragments/64/fragment64]
|
||||
- [0x3B2390, data, fragments/64/fragment64_data]
|
||||
- [0x3B2530, rodata, fragments/64/fragment64_rodata]
|
||||
- [0x3B25B0, bin, fragments/64/fragment64_reloc]
|
||||
- [0x3B25B0, rodatabin, fragments/64/fragment64_reloc]
|
||||
|
||||
# gym leader castle loader
|
||||
- name: fragment65
|
||||
@ -1352,11 +1352,11 @@
|
||||
start: 0x3B2AE0
|
||||
vram: 0x84A00000
|
||||
subsegments:
|
||||
- [0x3B2AE0, hasm, fragments/65/fragment65_header]
|
||||
- [0x3B2AE0, textbin, fragments/65/fragment65_header]
|
||||
- [0x3B2B00, c, fragments/65/fragment65]
|
||||
- [0x3B59E0, data, fragments/65/fragment65_data]
|
||||
- [0x3B5BE0, rodata, fragments/65/fragment65_rodata]
|
||||
- [0x3B5C10, bin, fragments/65/fragment65_reloc]
|
||||
- [0x3B5C10, rodatabin, fragments/65/fragment65_reloc]
|
||||
|
||||
- name: fragment66
|
||||
type: code
|
||||
@ -1364,10 +1364,10 @@
|
||||
start: 0x3B6130
|
||||
vram: 0x83200000
|
||||
subsegments:
|
||||
- [0x3B6130, hasm, fragments/66/fragment66_header]
|
||||
- [0x3B6130, textbin, fragments/66/fragment66_header]
|
||||
- [0x3B6150, c, fragments/66/fragment66]
|
||||
- [0x3B8080, data, fragments/66/fragment66_data]
|
||||
- [0x3B8140, bin, fragments/66/fragment66_reloc]
|
||||
- [0x3B8140, rodatabin, fragments/66/fragment66_reloc]
|
||||
|
||||
- name: fragment67
|
||||
type: code
|
||||
@ -1375,9 +1375,9 @@
|
||||
start: 0x3B8530
|
||||
vram: 0x8F000000
|
||||
subsegments:
|
||||
- [0x3B8530, hasm, fragments/67/fragment67_header]
|
||||
- [0x3B8530, textbin, fragments/67/fragment67_header]
|
||||
- [0x3B8550, c, fragments/67/fragment67]
|
||||
- [0x3B8560, bin, fragments/67/fragment67_reloc]
|
||||
- [0x3B8560, rodatabin, fragments/67/fragment67_reloc]
|
||||
|
||||
# These are a bunch of seemingly unused(?) fragments which all they do is access or load fragment 67.
|
||||
- name: fragment68
|
||||
@ -1386,9 +1386,9 @@
|
||||
start: 0x3B8570
|
||||
vram: 0x8F100000 # unknown vram. Another unused one? Might be 8F100000?
|
||||
subsegments:
|
||||
- [0x3B8570, hasm, fragments/68/fragment68_header]
|
||||
- [0x3B8570, textbin, fragments/68/fragment68_header]
|
||||
- [0x3B8590, c, fragments/68/fragment68]
|
||||
- [0x3B85F0, bin, fragments/68/fragment68_reloc]
|
||||
- [0x3B85F0, rodatabin, fragments/68/fragment68_reloc]
|
||||
|
||||
- name: fragment69
|
||||
type: code
|
||||
@ -1396,9 +1396,9 @@
|
||||
start: 0x3B8600
|
||||
vram: 0x8F200000 # unknown vram. Another unused one? Might be 8F200000?
|
||||
subsegments:
|
||||
- [0x3B8600, hasm, fragments/69/fragment69_header]
|
||||
- [0x3B8600, textbin, fragments/69/fragment69_header]
|
||||
- [0x3B8620, c, fragments/69/fragment69]
|
||||
- [0x3B8680, bin, fragments/69/fragment69_reloc]
|
||||
- [0x3B8680, rodatabin, fragments/69/fragment69_reloc]
|
||||
|
||||
- name: fragment70
|
||||
type: code
|
||||
@ -1406,9 +1406,9 @@
|
||||
start: 0x3B8690
|
||||
vram: 0x8F300000 # unknown vram. Another unused one? Might be 8F300000?
|
||||
subsegments:
|
||||
- [0x3B8690, hasm, fragments/70/fragment70_header]
|
||||
- [0x3B8690, textbin, fragments/70/fragment70_header]
|
||||
- [0x3B86B0, c, fragments/70/fragment70]
|
||||
- [0x3B8710, bin, fragments/70/fragment70_reloc]
|
||||
- [0x3B8710, rodatabin, fragments/70/fragment70_reloc]
|
||||
|
||||
- name: fragment71
|
||||
type: code
|
||||
@ -1416,9 +1416,9 @@
|
||||
start: 0x3B8720
|
||||
vram: 0x8F400000 # unknown vram. Another unused one? Might be 8F400000?
|
||||
subsegments:
|
||||
- [0x3B8720, hasm, fragments/71/fragment71_header]
|
||||
- [0x3B8720, textbin, fragments/71/fragment71_header]
|
||||
- [0x3B8740, c, fragments/71/fragment71]
|
||||
- [0x3B87A0, bin, fragments/71/fragment71_reloc]
|
||||
- [0x3B87A0, rodatabin, fragments/71/fragment71_reloc]
|
||||
|
||||
- name: fragment72
|
||||
type: code
|
||||
@ -1426,9 +1426,9 @@
|
||||
start: 0x3B87B0
|
||||
vram: 0x8F500000 # unknown vram. Another unused one? Might be 8F500000?
|
||||
subsegments:
|
||||
- [0x3B87B0, hasm, fragments/72/fragment72_header]
|
||||
- [0x3B87B0, textbin, fragments/72/fragment72_header]
|
||||
- [0x3B87D0, c, fragments/72/fragment72]
|
||||
- [0x3B8830, bin, fragments/72/fragment72_reloc]
|
||||
- [0x3B8830, rodatabin, fragments/72/fragment72_reloc]
|
||||
|
||||
- name: fragment73
|
||||
type: code
|
||||
@ -1436,9 +1436,9 @@
|
||||
start: 0x3B8840
|
||||
vram: 0x8F600000 # unknown vram. Another unused one? Might be 8F600000?
|
||||
subsegments:
|
||||
- [0x3B8840, hasm, fragments/73/fragment73_header]
|
||||
- [0x3B8840, textbin, fragments/73/fragment73_header]
|
||||
- [0x3B8860, c, fragments/73/fragment73]
|
||||
- [0x3B88C0, bin, fragments/73/fragment73_reloc]
|
||||
- [0x3B88C0, rodatabin, fragments/73/fragment73_reloc]
|
||||
|
||||
- name: fragment74
|
||||
type: code
|
||||
@ -1446,9 +1446,9 @@
|
||||
start: 0x3B88D0
|
||||
vram: 0x8F700000 # unknown vram. Another unused one? Might be 8F700000?
|
||||
subsegments:
|
||||
- [0x3B88D0, hasm, fragments/74/fragment74_header]
|
||||
- [0x3B88D0, textbin, fragments/74/fragment74_header]
|
||||
- [0x3B88F0, c, fragments/74/fragment74]
|
||||
- [0x3B8950, bin, fragments/74/fragment74_reloc]
|
||||
- [0x3B8950, rodatabin, fragments/74/fragment74_reloc]
|
||||
|
||||
- name: fragment75
|
||||
type: code
|
||||
@ -1456,10 +1456,10 @@
|
||||
start: 0x3B8960
|
||||
vram: 0x8FA00000
|
||||
subsegments:
|
||||
- [0x3B8960, hasm, fragments/75/fragment75_header]
|
||||
- [0x3B8960, textbin, fragments/75/fragment75_header]
|
||||
- [0x3B8980, c, fragments/75/fragment75]
|
||||
- [0x3B9350, data, fragments/75/fragment75_data]
|
||||
- [0x3B9380, bin, fragments/75/fragment75_reloc]
|
||||
- [0x3B9380, rodatabin, fragments/75/fragment75_reloc]
|
||||
|
||||
- name: fragment76
|
||||
type: code
|
||||
@ -1467,9 +1467,9 @@
|
||||
start: 0x3B9590
|
||||
vram: 0x8FB00000 # unknown vram. Another unused one? Might be 8FB00000?
|
||||
subsegments:
|
||||
- [0x3B9590, hasm, fragments/76/fragment76_header]
|
||||
- [0x3B9590, textbin, fragments/76/fragment76_header]
|
||||
- [0x3B95B0, c, fragments/76/fragment76]
|
||||
- [0x3B9610, bin, fragments/76/fragment76_reloc]
|
||||
- [0x3B9610, rodatabin, fragments/76/fragment76_reloc]
|
||||
|
||||
- name: fragment77
|
||||
type: code
|
||||
@ -1477,9 +1477,9 @@
|
||||
start: 0x3B9620
|
||||
vram: 0x8FC00000 # unknown vram. Another unused one? Might be 8FC00000?
|
||||
subsegments:
|
||||
- [0x3B9620, bin, fragments/77/fragment77_header] # need to leave it as a bin. Splat thinks there's a pointer
|
||||
- [0x3B9620, textbin, fragments/77/fragment77_header] # need to leave it as a bin. Splat thinks there's a pointer
|
||||
- [0x3B9640, c, fragments/77/fragment77]
|
||||
- [0x3B96A0, bin, fragments/77/fragment77_reloc]
|
||||
- [0x3B96A0, rodatabin, fragments/77/fragment77_reloc]
|
||||
|
||||
- [0x3B96B0, bin]
|
||||
- [0x3BA190, bin]
|
||||
|
Loading…
Reference in New Issue
Block a user