Difference between revisions of "Routine Locations"
Jump to navigation
Jump to search
m (filling out the kernel/bios routine pages, whether or not they get filled) |
m |
||
Line 61: | Line 61: | ||
0000346c: [[A(0x07) isatty]] also B(0x39) | 0000346c: [[A(0x07) isatty]] also B(0x39) | ||
00004024: [[A(0x08) getc]] also B(0x3a) | 00004024: [[A(0x08) getc]] also B(0x3a) | ||
+ | 00004060: [[A(0x3c) putchar]] also B(0x3d) | ||
00004134: [[A(0x09) putc]] also B(0x3b) | 00004134: [[A(0x09) putc]] also B(0x3b) | ||
+ | 00004164: [[A(0x3d) gets]] also B(0x3e) | ||
+ | 00004304: [[A(0x3e) puts]] also B(0x3f) | ||
... | ... | ||
+ | 07c018e0: [[A(0x3f) printf]] | ||
+ | 07c01920: [[A(0x44) FlushCache]] | ||
+ | 07c01a90: [[A(0x27) bcopy]] | ||
+ | 07c01acc: [[A(0x28) bzero]] | ||
+ | 07c01b08: [[A(0x29) bcmp]] Bugged! | ||
+ | 07c01e24: [[A(0x39) InitHeap]] | ||
+ | 07c01e5c: [[A(0x33) malloc]] | ||
+ | 07c020f0: [[A(0x34) free]] | ||
+ | 07c02104" [[A(0x38) realloc]] Slow | ||
+ | 07c021a0: [[A(0x37) calloc]] Slow | ||
+ | 07c02200: [[A(0x2f) rand]] | ||
+ | 07c02230: [[A(0x30) srand]] | ||
07c02240: [[A(0x13) setjmp]] | 07c02240: [[A(0x13) setjmp]] | ||
07c0227c: [[A(0x14) longjmp]] | 07c0227c: [[A(0x14) longjmp]] | ||
07c022c0: [[A(0x0a) todigit]] | 07c022c0: [[A(0x0a) todigit]] | ||
+ | 07c02324: [[A(0x32) strtod]] Doesn't work! | ||
07c02590: [[A(0x0b) atof]] Doesn't work! | 07c02590: [[A(0x0b) atof]] Doesn't work! | ||
07c025b0: [[A(0x0c) strtoul]] | 07c025b0: [[A(0x0c) strtoul]] | ||
Line 74: | Line 90: | ||
07c02af0: [[A(0x11) atol]] | 07c02af0: [[A(0x11) atol]] | ||
07c02b10: [[A(0x12) atob]] | 07c02b10: [[A(0x12) atob]] | ||
+ | 07c02b50: [[A(0x2a) memcpy]] | ||
+ | 07c02b8c: [[A(0x2b) memset]] | ||
+ | 07c02bc8: [[A(0x2c) memmove]] Bugged! | ||
+ | 07c02c50: [[A(0x2d) memcmp]] Bugged! | ||
+ | 07c02cc0: [[A(0x2e) memchr]] | ||
+ | 07c02d20: [[A(0x35) lsearch]] | ||
+ | 07c02dac: [[A(0x36) bsearch]] | ||
+ | 07c02ea0: [[A(0x25) toupper]] | ||
+ | 07c02edc: [[A(0x26) tolower]] | ||
+ | 07c03098: [[A(0x31) qsort]] | ||
07c03190: [[A(0x15) strcat]] | 07c03190: [[A(0x15) strcat]] | ||
07c03200: [[A(0x16) strncat]] | 07c03200: [[A(0x16) strncat]] | ||
Line 85: | Line 111: | ||
07c0357c: [[A(0x1e) strchr]] | 07c0357c: [[A(0x1e) strchr]] | ||
07c035c0: [[A(0x1f) strrchr]] | 07c035c0: [[A(0x1f) strrchr]] | ||
− | ... | + | 07c03628: [[A(0x20) strpbrk]] |
+ | 07c03694: [[A(0x21) strspn]] | ||
+ | 07c036fc: [[A(0x22) strcspn]] | ||
+ | 07c03764: [[A(0x23) strtok]] | ||
+ | 07c03894: [[A(0x24) strstr]] Bugged! | ||
+ | 07c039b0: [[A(0x41) LoadTest]] | ||
+ | 07c03a18: [[A(0x42) Load]] | ||
+ | 07c03aa4: [[A(0x51) LoadExec]] | ||
+ | 07c03cf0: [[A(0x43) Exec]] | ||
+ | 07c03d80: [[A(0x46) GPU_dw]] | ||
+ | 07c03ea0: [[A(0x47) gpu_send_dma]] | ||
+ | 07c03f8c: [[A(0x48) SendGP1Command]] | ||
+ | 07c03fac: [[A(0x49) GPU_cw]] | ||
+ | 07c03fe0: [[A(0x4a) GPU_cwp]] | ||
+ | 07c03ff0: [[A(0x3b) getchar]] also B(0x3c) | ||
+ | 07c0403c: [[A(0x4b) send_gpu_linked_list]] | ||
+ | 07c040ec: [[A(0x4c) gpu_abort_dma]] | ||
+ | 07c04120: [[A(0x4d) GetGPUStatus]] | ||
+ | 07c04138: [[A(0x4e) gpu_sync]] | ||
+ | 07c042a0: [[A(0x45) init_a0_b0_c0_vectors]] | ||
+ | 07c04850: [[A(0xa2) EnqueueCdIntr]] | ||
+ | 07c048d0: [[A(0xa3) DequeueCdIntr]] | ||
+ | 07c04910: [[A(0x95) CdInitSubFunc]] | ||
+ | 07c04aa0: [[A(0x94) CdromGetInt5errCode]] | ||
+ | 07c04abc: [[A(0x78) CdAsyncSeekL]] | ||
+ | 07c04bc4: [[A(0x7c) CdAsyncGetStatus]] | ||
+ | 07c04c38: [[A(0x7e) CdAsyncReadSector]] | ||
+ | 07c04d50: [[A(0x81) CdAsyncSetMode]] | ||
+ | 07c04dec: [[A(0x90) CdromIoIrqFunc1]] | ||
+ | 07c04fbc: [[A(0x91) CdromDmaIrqFunc1]] | ||
+ | 07c0506c: [[A(0x92) CdromIoIrqFunc2]] | ||
+ | 07c050a4: [[A(0x93) CdromDmaIrqFunc2]] | ||
+ | 07c050dc: [[A(0x9e) SetCdromIrqAutoAbort]] | ||
+ | 07c06680: [[A(0x9f) SetMem]] | ||
+ | 07c06700: [[A(0xb2) ioabort_raw | ||
+ | 07c06728: [[A(0x9d) GetConf]] | ||
+ | 07c06750: [[A(0x9c) SetConf]] | ||
+ | 07c06ca4: [[A(0xa0) _boot]] | ||
+ | 07c06fdc: [[A(0x57) returnZero]] includes a large number of A(0x##) calls. | ||
+ | 07c072b8: [[A(0x56) _96_remove]] also A(0x72), doesn't work | ||
+ | 07c073a0: [[A(0x54) _96_init]] also A(0x71) | ||
+ | 07c078a4: [[A(0x5f) dev_cd_open]] | ||
+ | 07c079f8: [[A(0x61) dev_cd_close]] | ||
+ | 07c07a04: [[A(0x60) dev_cd_read]] | ||
+ | 07c07b88: [[A(0xa4) CdGetLbn]] | ||
+ | 07c07c1c: [[A(0xa5) CdReadSector]] | ||
+ | 07c07f28: [[A(0xa6) CdGetStatus]] | ||
+ | 07c08098: [[A(0x63) dev_cd_nextfile]] | ||
+ | 07c081fc: [[A(0x62) dev_cd_firstfile]] | ||
+ | 07c08354: [[A(0x64) dev_cd_chdir]] | ||
+ | 07c085b0: [[A(0x96) AddCDROMDevice]] | ||
+ | 07c086b0: [[A(0x99) add_nullcon_driver]] | ||
+ | 07c09914: [[A(0x55) _bu_init]] also A(0x70) | ||
+ | 07c0996c: [[A(0x65) dev_card_open]] | ||
+ | 07c09cdc: [[A(0x68) dev_card_close]] | ||
+ | 07c09d3c: [[A(0x66) dev_card_read]] | ||
+ | 07c0a080: [[A(0x67) dev_card_write]] | ||
+ | 07c0a4b4: [[A(0x6a) dev_card_nextfile]] | ||
+ | 07c0a5e4: [[A(0x69) dev_card_firstfile]] nice | ||
+ | 07c0a8bc: [[A(0x6b) dev_card_erase]] | ||
+ | 07c0ab60: [[A(0x6e) dev_card_rename]] | ||
+ | 07c0ad08: [[A(0x6c) dev_card_undelete]] | ||
+ | 07c0b0c4: [[A(0x6f) card_clear_error]]? | ||
+ | 07c0b0d0: [[A(0x6d) dev_card_format]] | ||
+ | 07c0c048: [[A(0xaf) card_write_test]] | ||
+ | 07c0c0dc: [[A(0xab) _card_info]] | ||
+ | 07c0c140: [[A(0xac) _card_load]] | ||
+ | 07c0c1dc: [[A(0xad) _card_auto]] | ||
+ | 07c0c1fc: [[A(0x97) AddMemCardDevice]] | ||
+ | 07c0c220: [[A(0xa7) bufs_cb_0]] | ||
+ | 07c0c248: [[A(0xa8) bufs_cb_1]] | ||
+ | 07c0c270: [[A(0xa9) bufs_cb_2]] | ||
+ | 07c0c298: [[A(0xaa) bufs_cb_3]] | ||
+ | 07c0c2c0: [[A(0xae) bufs_cb_4]] | ||
+ | 07c0c890: [[A(0x5b) dev_tty_init]] fun fact! breaks the ps2 | ||
+ | 07c0c9cc: [[A(0x5c) dev_tty_open]] also breaks the ps2 | ||
+ | 07c0cab4: [[A(0x5d) dev_tty_in_out]] *also* breaks the ps2 | ||
+ | 07c0cc68: [[A(0x5e) dev_tty_ioctl]] ditto | ||
+ | 07c0d4cc: [[A(0x98) AddDuartTtyDevice]] breaks the ps2 | ||
+ | 07c0d4f0: [[A(0xb4) GetSystemInfo]] | ||
+ | 07c0d8d0: [[A(0x3a) _exit]] traps cpu | ||
+ | 07c0d8e0: [[A(0x40) SystemErrorUnresolvedException]] traps cpu | ||
+ | 07c0d8f0: [[A(0x4f) SystemError]] traps cpu | ||
+ | 07c0d900: [[A(0x50) SystemError]] traps cpu | ||
+ | 07c0d910: [[A(0x52) GetSysSp]] also traps cpu, like an exit code. different function in sony devkit? | ||
+ | 07c0d920: [[A(0x53) SystemError]] traps cpu | ||
+ | 07c0d930: [[A(0x9a) SystemError]] traps cpu, used to link to windows to provide error messages! | ||
+ | 07c0d940: [[A(0x9b) SystemError]] traps cpu | ||
+ | 07c0d950: [[A(0xa1) SystemError]] external sources say this takes 2 arguments. I say that's bogus. |
Revision as of 01:02, 22 September 2024
Here is a list of Routine locations in RAM. To view the actual code of the routine follow the link under it.
If you add routines PLEASE keep them in order. When unfinished routines are deciphered they'll be inserted in the correct location. If you know the return locations of the routine, please link to them under the routine code. See "Defense Up" for an example.
Thanks!
Main Routine Locations: RAM -> File 0x00F800 -> SCUS_942.21 0x067000 -> WLDCORE.BIN 0x067000 -> BATTLE.BIN 0x067000 -> OPEN.BIN 0x0E0000 -> WORLD.BIN 0x1BF000 -> ATTACK.OUT 0x1BF000 -> REQUIRE.OUT 0x1BF000 -> OPTION.OUT 0x1BF000 -> ETC.OUT 0x1BF000 -> EQUIP.OUT 0x1BF000 -> CARD.OUT 0x1BF000 -> BUNIT.OUT 0x1DF000 -> JOBSTTS.OUT 0x1DF000 -> HELPMENU.OUT 0x1DF000 -> SP2 + effects + other.
Main Data Locations: RAM -> File 0x00F800 -> SCUS_942.21 0x067000 -> WLDCORE.BIN 0x067000 -> BATTLE.BIN 0x067000 -> OPEN.BIN 0x0E0000 -> WORLD.BIN 0x1BF000 -> ATTACK.OUT 0x1BF000 -> REQUIRE.OUT 0x1BF000 -> OPTION.OUT 0x1BF000 -> ETC.OUT 0x1BF000 -> EQUIP.OUT 0x1BF000 -> CARD.OUT 0x1BF000 -> BUNIT.OUT 0x1DF000 -> JOBSTTS.OUT 0x1DF000 -> HELPMENU.OUT 0x1DF000 -> SP2 + effects + other.
PSX BIOS
000000a0: Jump to 0x5c4 (Bios call - First table) --> Bios call A 000000b0: (Bios call - Second table) --> Bios call B 000000c0: (Bios call - Third table) --> Bios call C 000005c4: Bios A 000005e0: Bios B 00000600: Bios C 00002958: A(0x00) open also B(0x32) 00002a64: A(0x01) lseek also B(0x33) 00002b28: A(0x02) read also B(0x34) 00002c94: A(0x03) write also B(0x35) 00002e00: A(0x04) close also B(0x36) 00002efc: A(0x05) ioctl also B(0x37) 00003000: A(0x06) exit also B(0x38) 0000346c: A(0x07) isatty also B(0x39) 00004024: A(0x08) getc also B(0x3a) 00004060: A(0x3c) putchar also B(0x3d) 00004134: A(0x09) putc also B(0x3b) 00004164: A(0x3d) gets also B(0x3e) 00004304: A(0x3e) puts also B(0x3f) ... 07c018e0: A(0x3f) printf 07c01920: A(0x44) FlushCache 07c01a90: A(0x27) bcopy 07c01acc: A(0x28) bzero 07c01b08: A(0x29) bcmp Bugged! 07c01e24: A(0x39) InitHeap 07c01e5c: A(0x33) malloc 07c020f0: A(0x34) free 07c02104" A(0x38) realloc Slow 07c021a0: A(0x37) calloc Slow 07c02200: A(0x2f) rand 07c02230: A(0x30) srand 07c02240: A(0x13) setjmp 07c0227c: A(0x14) longjmp 07c022c0: A(0x0a) todigit 07c02324: A(0x32) strtod Doesn't work! 07c02590: A(0x0b) atof Doesn't work! 07c025b0: A(0x0c) strtoul 07c02738: A(0x0d) strtol 07c02918: A(0x0e) abs 07c02934: A(0x0f) labs 07c02950: A(0x10) atoi 07c02af0: A(0x11) atol 07c02b10: A(0x12) atob 07c02b50: A(0x2a) memcpy 07c02b8c: A(0x2b) memset 07c02bc8: A(0x2c) memmove Bugged! 07c02c50: A(0x2d) memcmp Bugged! 07c02cc0: A(0x2e) memchr 07c02d20: A(0x35) lsearch 07c02dac: A(0x36) bsearch 07c02ea0: A(0x25) toupper 07c02edc: A(0x26) tolower 07c03098: A(0x31) qsort 07c03190: A(0x15) strcat 07c03200: A(0x16) strncat 07c03288: A(0x17) strcmp 07c03310: A(0x18) strncmp 07c033c8: A(0x19) strcpy 07c03418: A(0x1a) strncpy 07c03494: A(0x1b) strlen 07c034d0: A(0x1c) index 07c03514: A(0x1d) rindex 07c0357c: A(0x1e) strchr 07c035c0: A(0x1f) strrchr 07c03628: A(0x20) strpbrk 07c03694: A(0x21) strspn 07c036fc: A(0x22) strcspn 07c03764: A(0x23) strtok 07c03894: A(0x24) strstr Bugged! 07c039b0: A(0x41) LoadTest 07c03a18: A(0x42) Load 07c03aa4: A(0x51) LoadExec 07c03cf0: A(0x43) Exec 07c03d80: A(0x46) GPU_dw 07c03ea0: A(0x47) gpu_send_dma 07c03f8c: A(0x48) SendGP1Command 07c03fac: A(0x49) GPU_cw 07c03fe0: A(0x4a) GPU_cwp 07c03ff0: A(0x3b) getchar also B(0x3c) 07c0403c: A(0x4b) send_gpu_linked_list 07c040ec: A(0x4c) gpu_abort_dma 07c04120: A(0x4d) GetGPUStatus 07c04138: A(0x4e) gpu_sync 07c042a0: A(0x45) init_a0_b0_c0_vectors 07c04850: A(0xa2) EnqueueCdIntr 07c048d0: A(0xa3) DequeueCdIntr 07c04910: A(0x95) CdInitSubFunc 07c04aa0: A(0x94) CdromGetInt5errCode 07c04abc: A(0x78) CdAsyncSeekL 07c04bc4: A(0x7c) CdAsyncGetStatus 07c04c38: A(0x7e) CdAsyncReadSector 07c04d50: A(0x81) CdAsyncSetMode 07c04dec: A(0x90) CdromIoIrqFunc1 07c04fbc: A(0x91) CdromDmaIrqFunc1 07c0506c: A(0x92) CdromIoIrqFunc2 07c050a4: A(0x93) CdromDmaIrqFunc2 07c050dc: A(0x9e) SetCdromIrqAutoAbort 07c06680: A(0x9f) SetMem 07c06700: [[A(0xb2) ioabort_raw 07c06728: A(0x9d) GetConf 07c06750: A(0x9c) SetConf 07c06ca4: A(0xa0) _boot 07c06fdc: A(0x57) returnZero includes a large number of A(0x##) calls. 07c072b8: A(0x56) _96_remove also A(0x72), doesn't work 07c073a0: A(0x54) _96_init also A(0x71) 07c078a4: A(0x5f) dev_cd_open 07c079f8: A(0x61) dev_cd_close 07c07a04: A(0x60) dev_cd_read 07c07b88: A(0xa4) CdGetLbn 07c07c1c: A(0xa5) CdReadSector 07c07f28: A(0xa6) CdGetStatus 07c08098: A(0x63) dev_cd_nextfile 07c081fc: A(0x62) dev_cd_firstfile 07c08354: A(0x64) dev_cd_chdir 07c085b0: A(0x96) AddCDROMDevice 07c086b0: A(0x99) add_nullcon_driver 07c09914: A(0x55) _bu_init also A(0x70) 07c0996c: A(0x65) dev_card_open 07c09cdc: A(0x68) dev_card_close 07c09d3c: A(0x66) dev_card_read 07c0a080: A(0x67) dev_card_write 07c0a4b4: A(0x6a) dev_card_nextfile 07c0a5e4: A(0x69) dev_card_firstfile nice 07c0a8bc: A(0x6b) dev_card_erase 07c0ab60: A(0x6e) dev_card_rename 07c0ad08: A(0x6c) dev_card_undelete 07c0b0c4: A(0x6f) card_clear_error? 07c0b0d0: A(0x6d) dev_card_format 07c0c048: A(0xaf) card_write_test 07c0c0dc: A(0xab) _card_info 07c0c140: A(0xac) _card_load 07c0c1dc: A(0xad) _card_auto 07c0c1fc: A(0x97) AddMemCardDevice 07c0c220: A(0xa7) bufs_cb_0 07c0c248: A(0xa8) bufs_cb_1 07c0c270: A(0xa9) bufs_cb_2 07c0c298: A(0xaa) bufs_cb_3 07c0c2c0: A(0xae) bufs_cb_4 07c0c890: A(0x5b) dev_tty_init fun fact! breaks the ps2 07c0c9cc: A(0x5c) dev_tty_open also breaks the ps2 07c0cab4: A(0x5d) dev_tty_in_out *also* breaks the ps2 07c0cc68: A(0x5e) dev_tty_ioctl ditto 07c0d4cc: A(0x98) AddDuartTtyDevice breaks the ps2 07c0d4f0: A(0xb4) GetSystemInfo 07c0d8d0: A(0x3a) _exit traps cpu 07c0d8e0: A(0x40) SystemErrorUnresolvedException traps cpu 07c0d8f0: A(0x4f) SystemError traps cpu 07c0d900: A(0x50) SystemError traps cpu 07c0d910: A(0x52) GetSysSp also traps cpu, like an exit code. different function in sony devkit? 07c0d920: A(0x53) SystemError traps cpu 07c0d930: A(0x9a) SystemError traps cpu, used to link to windows to provide error messages! 07c0d940: A(0x9b) SystemError traps cpu 07c0d950: A(0xa1) SystemError external sources say this takes 2 arguments. I say that's bogus.