diff --git a/asm/main.s b/asm/main.s index 8b33dda0..5e22ba75 100644 --- a/asm/main.s +++ b/asm/main.s @@ -2,6 +2,7 @@ .include "include/main.inc" .text +.ifdef EUR .global data_02000000 data_02000000: ; 0x02000000 .byte 0xff, 0xde, 0xff, 0xe7, 0xff, 0xde, 0xff, 0xe7, 0xff, 0xde, 0xff, 0xe7, 0xff, 0xde @@ -12,28 +13,73 @@ data_02000000: ; 0x02000000 .byte 0xf4, 0x97, 0xa7, 0x54, 0x3e, 0x63, 0xc3, 0xba, 0x68, 0x58, 0x05, 0x6c, 0x2c, 0xeb, 0x23, 0x3d .byte 0xc9, 0x43, 0x42, 0xb2, 0x3f, 0x29, 0xd2, 0xfc, 0xf7, 0x45, 0xdf, 0xce, 0x1f, 0xa9, 0xf7, 0xb1 .byte 0xce, 0x2f, 0x20, 0x63, 0xf5, 0xac, 0x10, 0x90, 0x4c, 0x5c, 0x87, 0x3f, 0x6d, 0xc1, 0xf6, 0xdb - .byte 0x07, 0x9e, 0xe1, 0x6b, 0xab, 0x00, 0x09, 0xdf, 0x08, 0x1c, 0x70, 0x47, 0x01, 0xc1, 0xf5, 0x7c + .byte 0x07, 0x9e, 0xe1, 0x6b, 0xab, 0x00 + + .global Mod + non_word_aligned_thumb_func_start Mod +Mod: ; 0x02000066 + swi 0x9 + add r0, r1, #0 + bx lr + thumb_func_end Mod + + .global data_0200006c +data_0200006c: ; 0x0200006c + .byte 0x01, 0xc1, 0xf5, 0x7c .byte 0x64, 0x48, 0xdf, 0x3b, 0xc9, 0x89, 0x94, 0x4a, 0xa3, 0x9e, 0xd9, 0xe1, 0x50, 0xa3, 0xff, 0xd7 .byte 0x41, 0x1c, 0x1b, 0x1c, 0xeb, 0xbf, 0x85, 0xcd, 0xef, 0xa2, 0x58, 0x33, 0x9d, 0x51, 0x8e, 0xcd .byte 0x5a, 0xc2, 0x2e, 0xe4, 0xac, 0xcf, 0xfa, 0x1e, 0x4e, 0xa9, 0x87, 0x65, 0xad, 0x3d, 0x2f, 0x38 .byte 0x43, 0x34, 0x2e, 0x5a, 0xb6, 0xe4, 0xb5, 0x8f, 0xa6, 0x87, 0x2a, 0x22, 0x98, 0x80, 0x1e, 0xa2 .byte 0xd7, 0xcb, 0x82, 0x0f, 0x0d, 0x43, 0x75, 0x93, 0xc3, 0xa3, 0x0f, 0x86, 0xa0, 0x91, 0x54, 0x32 .byte 0x9c, 0x28, 0x6c, 0xdc, 0x1a, 0x8e, 0x41, 0x44, 0x82, 0xd0, 0x79, 0xf4, 0x1a, 0x78, 0x5e, 0xbd - .byte 0x1b, 0xb8, 0x01, 0x97, 0x74, 0x8a, 0x00, 0x22, 0x04, 0xdf, 0x70, 0x47, 0x1f, 0xbe, 0x6e, 0xd7 + .byte 0x1b, 0xb8, 0x01, 0x97, 0x74, 0x8a, 0x00, 0x22 + + .global IntrWait + thumb_func_start IntrWait +IntrWait: ; 0x020000d8 + swi 0x4 + bx lr + thumb_func_end IntrWait + + .global data_020000dc +data_020000dc: ; 0x020000dc + .byte 0x1f, 0xbe, 0x6e, 0xd7 .byte 0x3c, 0x11, 0x7e, 0xa0, 0x44, 0xad, 0x2f, 0x57, 0xdf, 0x31, 0x95, 0xa5, 0x69, 0x7b, 0x34, 0x69 .byte 0x28, 0xc5, 0x63, 0x66, 0x44, 0xd7, 0x65, 0xd4, 0xbc, 0x2b, 0xa6, 0x55, 0xa9, 0x50, 0xf6, 0x99 .byte 0x4f, 0xf1, 0xba, 0xa8, 0xd2, 0xb0, 0xdf, 0x4d, 0x44, 0xfd, 0xe4, 0x8b, 0x09, 0x01, 0xc7, 0xf8 .byte 0xa3, 0xdd, 0x55, 0x76, 0x9c, 0x8b, 0x9f, 0x44, 0x7f, 0xda, 0x67, 0xf8, 0xea, 0xf3, 0x7a, 0x41 .byte 0xd4, 0x1c, 0x74, 0x53, 0x38, 0xc0, 0x3d, 0xc1, 0xbd, 0x7f, 0x13, 0x99, 0x6d, 0x39, 0x6b, 0x5e .byte 0x51, 0x6b, 0xb2, 0x15, 0xd3, 0xdb, 0xd6, 0x0f, 0xdf, 0x43, 0xe9, 0xbc, 0xed, 0x15, 0x7f, 0x8c - .byte 0xde, 0x84, 0x41, 0x6c, 0xff, 0x82, 0x14, 0xdf, 0x70, 0x47, 0x83, 0xfe, 0x4b, 0xa4, 0x12, 0xe4 + .byte 0xde, 0x84, 0x41, 0x6c, 0xff, 0x82 + + .global RLUnCompReadNormalWrite8bit + non_word_aligned_thumb_func_start RLUnCompReadNormalWrite8bit +RLUnCompReadNormalWrite8bit: ; 0x02000146 + swi 0x14 + bx lr + thumb_func_end RLUnCompReadNormalWrite8bit + + .global data_0200014a +data_0200014a: ; 0x0200014a + .byte 0x83, 0xfe, 0x4b, 0xa4, 0x12, 0xe4 .byte 0xc4, 0x18, 0x17, 0xe2, 0xf8, 0xaa, 0x62, 0xf7, 0xec, 0x97, 0x3a, 0xee, 0x30, 0xde, 0xe8, 0x44 .byte 0xc6, 0xbe, 0xf1, 0x22, 0x08, 0x33, 0xd4, 0x32, 0x73, 0xb4, 0x96, 0x64, 0xa4, 0xc5, 0xb0, 0xbd .byte 0xef, 0x0b, 0x63, 0x8b, 0xc3, 0xd2, 0x0c, 0x82, 0xab, 0x12, 0x0b, 0x09, 0x27, 0x59, 0x88, 0x55 .byte 0x51, 0x5f, 0x80, 0x59, 0x48, 0x75, 0x21, 0x15, 0x0b, 0xbb, 0x8f, 0x43, 0x00, 0x32, 0xad, 0x39 .byte 0x70, 0x9a, 0x96, 0x89, 0x50, 0xf4, 0x79, 0x4d, 0xec, 0x81, 0x3a, 0x6f, 0x96, 0x46, 0x2a, 0x55 .byte 0x04, 0x12, 0x40, 0x87, 0x0a, 0x13, 0x76, 0xc2, 0x01, 0xa5, 0x0b, 0x26, 0xa2, 0xa4, 0xdf, 0x2b - .byte 0x8e, 0x35, 0x96, 0x85, 0xad, 0x76, 0x12, 0xdf, 0x70, 0x47, 0x9f, 0xbe, 0x59, 0x76, 0x7f, 0xeb + .byte 0x8e, 0x35, 0x96, 0x85, 0xad, 0x76 + + .global LZ77UnCompReadByCallbackWrite16bit + non_word_aligned_thumb_func_start LZ77UnCompReadByCallbackWrite16bit +LZ77UnCompReadByCallbackWrite16bit: ; 0x020001b6 + swi 0x12 + bx lr + thumb_func_end LZ77UnCompReadByCallbackWrite16bit + + .global data_02000000 +data_020001ba: ; 0x020001ba + .byte 0x9f, 0xbe, 0x59, 0x76, 0x7f, 0xeb .byte 0xa7, 0x16, 0xf0, 0x74, 0xeb, 0x7b, 0x91, 0x5e, 0x32, 0x97, 0x32, 0xc0, 0x03, 0xe5, 0x00, 0xce .byte 0x06, 0x3c, 0x5f, 0xac, 0xad, 0xd7, 0x1f, 0xc2, 0x48, 0x67, 0x50, 0x99, 0x80, 0x08, 0x9c, 0x00 .byte 0xaa, 0x23, 0x74, 0xc8, 0x52, 0xf7, 0xf4, 0x27, 0xd8, 0xcb, 0xe2, 0xef, 0xe1, 0x53, 0x8d, 0x20 @@ -42,12 +88,12 @@ data_02000000: ; 0x02000000 .byte 0x5a, 0x92, 0xdd, 0x68, 0x05, 0x6c, 0xd6, 0xc7, 0x98, 0x20, 0x87, 0x8b, 0x71, 0x38, 0xf6, 0x6f .byte 0x70, 0x44, 0x46, 0x1c, 0x95, 0x37, 0x19, 0x15, 0xd5, 0x8d - .global func_0200022a - non_word_aligned_thumb_func_start func_0200022a -func_0200022a: ; 0x0200022a + .global WaitByLoop + non_word_aligned_thumb_func_start WaitByLoop +WaitByLoop: ; 0x0200022a swi 0x3 bx lr - thumb_func_end func_0200022a + thumb_func_end WaitByLoop .global data_0200022e data_0200022e: ; 0x0200022e @@ -59,21 +105,52 @@ data_0200022e: ; 0x0200022e .byte 0x27, 0x77, 0xd6, 0xc1, 0x70, 0xfb, 0x58, 0x88, 0xb6, 0x90, 0x03, 0x8e, 0x2a, 0x0c, 0x26, 0x39 .byte 0x41, 0xc3, 0x71, 0x7c, 0x01, 0x3e, 0xa8, 0x46, 0x65, 0x3f, 0xba, 0x68, 0x06, 0xb9, 0xfe, 0xe6 .byte 0x25, 0xe0, 0xae, 0xcf, 0x76, 0x35, 0x3a, 0xdb, 0xe0, 0xc3, 0x3a, 0xc2, 0x83, 0x5d, 0x14, 0x32 - .byte 0x31, 0xdf, 0x46, 0x8f, 0x84, 0x5e, 0x38, 0x1b, 0x84, 0x3f, 0x50, 0xe1, 0x0d, 0xdf, 0x70, 0x47 + .byte 0x31, 0xdf, 0x46, 0x8f, 0x84, 0x5e, 0x38, 0x1b, 0x84, 0x3f, 0x50, 0xe1 + + .global Sqrt + thumb_func_start Sqrt +Sqrt: ; 0x020002ac + swi 0xd + bx lr + thumb_func_end Sqrt + + .global data_020002b0 +data_020002b0: ; 0x020002b0 .byte 0x64, 0x4a, 0x79, 0xca, 0xa9, 0x89, 0x7e, 0xd8, 0xce, 0x32, 0x5e, 0x96, 0x51, 0xc0, 0x80, 0xd7 .byte 0xb7, 0xc0, 0x7b, 0xeb, 0x0e, 0xb9, 0xe6, 0x8a, 0xf2, 0x22, 0x11, 0x8a, 0xf1, 0x38, 0x94, 0xd7 .byte 0xd5, 0x68, 0x6f, 0x5b, 0x07, 0x25, 0xe2, 0x84, 0xb2, 0xe7, 0x83, 0xdd, 0x3d, 0x91, 0x15, 0x4e .byte 0x9b, 0x85, 0xa7, 0x62, 0xa3, 0xf5, 0x68, 0x2b, 0x47, 0x47, 0x3e, 0x2c, 0x19, 0xcf, 0xd6, 0x89 .byte 0xec, 0x6f, 0xc6, 0xfa, 0x96, 0x8e, 0x18, 0x90, 0xf6, 0x38, 0x1d, 0x8d, 0x8a, 0x6b, 0xe4, 0x35 .byte 0x42, 0x97, 0xce, 0xa2, 0x20, 0x9c, 0x72, 0x1a, 0x6c, 0x86, 0xf8, 0x53, 0xe6, 0x08, 0x16, 0x43 - .byte 0xc2, 0x36, 0x31, 0x4f, 0x65, 0xae, 0x0c, 0xdf, 0x70, 0x47, 0x92, 0xc5, 0x3e, 0x25, 0x46, 0x6f + .byte 0xc2, 0x36, 0x31, 0x4f, 0x65, 0xae + + .global CpuFastSet + non_word_aligned_thumb_func_start CpuFastSet +CpuFastSet: ; 0x02000316 + swi 0xc + bx lr + thumb_func_end CpuFastSet + + .global data_0200031a +data_0200031a: ; 0x0200031a + .byte 0x92, 0xc5, 0x3e, 0x25, 0x46, 0x6f .byte 0x52, 0x96, 0xf3, 0xd6, 0xa1, 0x9e, 0x54, 0x0b, 0xfd, 0x08, 0xb6, 0xc0, 0x66, 0x5e, 0x09, 0x76 .byte 0x1f, 0xd0, 0xa1, 0xae, 0x4d, 0x64, 0xa2, 0x8e, 0x8c, 0xef, 0x6e, 0xff, 0xc6, 0xdd, 0x5c, 0x1f .byte 0x12, 0xdc, 0x41, 0x6c, 0xf1, 0x72, 0x02, 0xe6, 0x0c, 0x48, 0x3a, 0x24, 0xdc, 0xae, 0x15, 0xa3 .byte 0x7b, 0x19, 0x6b, 0x74, 0x5f, 0xbc, 0x72, 0x40, 0x88, 0x27, 0x5f, 0x59, 0x9e, 0x1b, 0x0b, 0xba .byte 0xd7, 0xcc, 0x5b, 0xcd, 0x35, 0xd8, 0x96, 0xed, 0xe2, 0x06, 0x82, 0x38, 0x0d, 0x1a, 0xa3, 0x9b .byte 0x4b, 0x3d, 0x56, 0x21, 0xdd, 0x8e, 0xbb, 0xda, 0xd1, 0x94, 0xfc, 0x04, 0x8d, 0x0a, 0xf9, 0xa8 - .byte 0xc3, 0x10, 0xc6, 0x55, 0x68, 0x80, 0xbe, 0x9d, 0x29, 0x2b, 0x45, 0x61, 0x0f, 0xdf, 0x70, 0x47 + .byte 0xc3, 0x10, 0xc6, 0x55, 0x68, 0x80, 0xbe, 0x9d, 0x29, 0x2b, 0x45, 0x61 + + .global IsDebugger + thumb_func_start IsDebugger +IsDebugger: ; 0x0200038c + swi 0xf + bx lr + thumb_func_end IsDebugger + + .global data_02000390 +data_02000390: ; 0x02000390 .byte 0x0f, 0x60, 0x19, 0x20, 0x9c, 0x9e, 0x00, 0x91, 0x86, 0x99, 0x19, 0x44, 0x42, 0x43, 0xfa, 0x33 .byte 0xef, 0xe8, 0x91, 0x47, 0xd2, 0x11, 0xbb, 0xb1, 0xbc, 0x8e, 0xe7, 0xa9, 0xed, 0xe4, 0xba, 0xa9 .byte 0x65, 0x19, 0x3e, 0x40, 0x61, 0xfa, 0xe7, 0x1d, 0xfa, 0xee, 0x0c, 0xcb, 0x6f, 0x05, 0x9a, 0x67 @@ -81,79 +158,174 @@ data_0200022e: ; 0x0200022e .byte 0x8f, 0x65, 0xa0, 0xbe, 0x95, 0xc3, 0xea, 0x7d, 0x9d, 0x46, 0x17, 0xd4, 0x7b, 0x0e, 0x65, 0x26 .byte 0x5e, 0x3c, 0x74, 0xe4, 0x3d, 0x0d, 0xf2, 0xe4, 0x29, 0x89, 0x0c, 0x4b, 0x27, 0x88, 0x86, 0xb9 .byte 0x47, 0x9a, 0xd1, 0x52, 0xcf, 0x39, 0x0a, 0x5f, 0x49, 0xfc, 0x87, 0xb2, 0x6f, 0x75, 0x02, 0x44 - .byte 0x0a, 0xeb, 0x11, 0xdf, 0x70, 0x47, 0x9f, 0xcd, 0xa9, 0xee, 0x65, 0x89, 0x9b, 0xff, 0x94, 0xd5 + .byte 0x0a, 0xeb + + .global LZ77UnCompReadNormalWrite8bit + non_word_aligned_thumb_func_start LZ77UnCompReadNormalWrite8bit +LZ77UnCompReadNormalWrite8bit: ; 0x02000402 + swi 0x11 + bx lr + thumb_func_end LZ77UnCompReadNormalWrite8bit + + .global data_02000406 +data_02000406: ; 0x02000406 + .byte 0x9f, 0xcd, 0xa9, 0xee, 0x65, 0x89, 0x9b, 0xff, 0x94, 0xd5 .byte 0x15, 0x13, 0x32, 0xf4, 0x64, 0xdc, 0x78, 0xda, 0xab, 0x92, 0xe6, 0x42, 0x80, 0xe9, 0xd6, 0x8a .byte 0xda, 0x5a, 0x02, 0x75, 0x0d, 0x69, 0x9f, 0xdc, 0x2e, 0x94, 0xd1, 0x69, 0xcc, 0x36, 0xfd, 0x0d .byte 0xbb, 0xff, 0x66, 0x99, 0x25, 0xef, 0x1c, 0x30, 0x7f, 0x8f, 0x0c, 0xb5, 0xfa, 0xde, 0x26, 0x2e .byte 0x04, 0x1d, 0x7a, 0xe7, 0x49, 0x64, 0xff, 0xe1, 0xe8, 0x06, 0x20, 0xd7, 0xb3, 0x8a, 0x62, 0x62 .byte 0x41, 0x53, 0xa6, 0x8e, 0x08, 0xbb, 0xd3, 0x71, 0xb1, 0xe1, 0xbc, 0xba, 0x76, 0x9b, 0x10, 0xb8 .byte 0x86, 0x23, 0xd2, 0xba, 0xfe, 0x5f, 0xde, 0x97, 0xc9, 0xec, 0x54, 0xa8, 0x0e, 0xcb, 0x18, 0x21 - .byte 0x83, 0x73, 0x15, 0xdf, 0x70, 0x47, 0xdf, 0x36, 0xa0, 0x7d, 0x93, 0xfe, 0xdf, 0x73, 0x83, 0xf4 + .byte 0x83, 0x73 + + .global RLUnCompReadByCallbackWrite16bit + non_word_aligned_thumb_func_start RLUnCompReadByCallbackWrite16bit +RLUnCompReadByCallbackWrite16bit: ; 0x02000472 + swi 0x15 + bx lr + thumb_func_end RLUnCompReadByCallbackWrite16bit + + .global data_02000476 +data_02000476: ; 0x02000476 + .byte 0xdf, 0x36, 0xa0, 0x7d, 0x93, 0xfe, 0xdf, 0x73, 0x83, 0xf4 .byte 0x23, 0x39, 0x59, 0x9e, 0x04, 0x55, 0xd8, 0xa7, 0xc2, 0xd7, 0x7a, 0x91, 0x51, 0xc8, 0x2c, 0x22 .byte 0x01, 0xd3, 0x25, 0x1a, 0x84, 0x4d, 0x32, 0x57, 0x79, 0x25, 0x1b, 0xea, 0xfb, 0x2f, 0x3f, 0x89 .byte 0xc9, 0x75, 0x21, 0x18, 0x85, 0x0c, 0x6c, 0x5f, 0x08, 0xbb, 0x1c, 0xd0, 0x46, 0xe9, 0x2d, 0xaa .byte 0xbe, 0x5f, 0x2d, 0x58, 0xa1, 0xc1, 0x78, 0xf4, 0x41, 0xe6, 0x5e, 0xc5, 0xe3, 0x53, 0xe3, 0x26 .byte 0x8e, 0x1a, 0xc6, 0xe4, 0x68, 0x9a, 0x90, 0x88, 0x85, 0x0d, 0x26, 0xf6, 0x1a, 0x84, 0x8c, 0xe4 - .byte 0x63, 0x39, 0x39, 0xd2, 0xd3, 0xb2, 0x83, 0xad, 0x04, 0x2a, 0xee, 0x56, 0x36, 0x6a, 0x06, 0xdf - .byte 0x70, 0x47, 0x5d, 0xf3, 0x19, 0xdd, 0x24, 0xab, 0xdf, 0xca, 0xd8, 0x39, 0xf5, 0xbb, 0xcc, 0xf9 + .byte 0x63, 0x39, 0x39, 0xd2, 0xd3, 0xb2, 0x83, 0xad, 0x04, 0x2a, 0xee, 0x56, 0x36, 0x6a + + .global Halt + non_word_aligned_thumb_func_start Halt +Halt: ; 0x020004de + swi 0x6 + bx lr + thumb_func_end Halt + + .global data_020004e2 +data_020004e2: ; 0x020004e2 + .byte 0x5d, 0xf3, 0x19, 0xdd, 0x24, 0xab, 0xdf, 0xca, 0xd8, 0x39, 0xf5, 0xbb, 0xcc, 0xf9 .byte 0xb3, 0xc9, 0x52, 0xa4, 0x1e, 0xe7, 0x33, 0xb4, 0x21, 0x05, 0x52, 0xdd, 0x25, 0x8e, 0xa5, 0x11 .byte 0x8a, 0x88, 0x39, 0x12, 0xcd, 0xbd, 0xf2, 0x28, 0x21, 0x0e, 0x8f, 0x81, 0xe6, 0x33, 0xb8, 0x34 .byte 0x59, 0x49, 0x68, 0x76, 0x32, 0x42, 0x8d, 0xc9, 0x77, 0x6b, 0x11, 0x14, 0x1b, 0x2d, 0x23, 0x59 .byte 0x3f, 0x9e, 0x10, 0xc1, 0x9c, 0x2e, 0x91, 0x22, 0x8f, 0x3c, 0xca, 0xf0, 0x3b, 0x01, 0x5d, 0x0a .byte 0x82, 0x81, 0x61, 0x34, 0x01, 0xb2, 0xa2, 0x2c, 0x1c, 0x55, 0x82, 0x76, 0x25, 0x2f, 0xd5, 0xe5 - .byte 0xae, 0x81, 0x07, 0x2b, 0x85, 0x88, 0xfd, 0x71, 0xe0, 0xc8, 0xbf, 0xe4, 0x00, 0x22, 0x05, 0xdf - .byte 0x70, 0x47, 0x0d, 0xb4, 0x25, 0xe0, 0xe6, 0x46, 0x7b, 0x20, 0x6a, 0x88, 0x84, 0x83, 0x40, 0xcd + .byte 0xae, 0x81, 0x07, 0x2b, 0x85, 0x88, 0xfd, 0x71, 0xe0, 0xc8, 0xbf, 0xe4, 0x00, 0x22 + + .global VBlankIntrWait + non_word_aligned_thumb_func_start VBlankIntrWait +VBlankIntrWait: ; 0x0200054e + swi 0x5 + bx lr + thumb_func_end VBlankIntrWait + + .global data_02000552 +data_02000552: ; 0x02000552 + .byte 0x0d, 0xb4, 0x25, 0xe0, 0xe6, 0x46, 0x7b, 0x20, 0x6a, 0x88, 0x84, 0x83, 0x40, 0xcd .byte 0x4d, 0x81, 0x31, 0xa8, 0x11, 0xdf, 0x13, 0xaf, 0xbf, 0x51, 0x9a, 0x17, 0x69, 0x40, 0xbd, 0xad .byte 0xce, 0xe2, 0x0c, 0x31, 0x53, 0xe9, 0xf1, 0xdc, 0x44, 0x8d, 0x87, 0xa0, 0xef, 0x42, 0x19, 0xd8 .byte 0x5c, 0x69, 0x62, 0x39, 0x35, 0x57, 0x4d, 0xd3, 0xdd, 0x66, 0x0d, 0x36, 0x51, 0x1d, 0xda, 0x52 .byte 0xb9, 0x4f, 0x9b, 0x8f, 0x3a, 0xbb, 0x01, 0x4e, 0xe2, 0xc5, 0x32, 0x9a, 0xa3, 0x77, 0xe1, 0xb0 - .byte 0x78, 0x2b, 0x84, 0xc6, 0x04, 0x1c, 0x55, 0xc4, 0x84, 0xf5, 0xf5, 0x7b, 0x2b, 0x6f, 0x09, 0xdf - .byte 0x70, 0x47, 0x9d, 0xbd, 0x37, 0xef, 0x69, 0x32, 0x01, 0x44, 0x1d, 0x85, 0x72, 0x85, 0x2b, 0xd7 + .byte 0x78, 0x2b, 0x84, 0xc6, 0x04, 0x1c, 0x55, 0xc4, 0x84, 0xf5, 0xf5, 0x7b, 0x2b, 0x6f + + .global Div + non_word_aligned_thumb_func_start Div +Div: ; 0x020005ae + swi 0x9 + bx lr + thumb_func_end Div + + .global data_020005b2 +data_020005b2: ; 0x020005b2 + .byte 0x9d, 0xbd, 0x37, 0xef, 0x69, 0x32, 0x01, 0x44, 0x1d, 0x85, 0x72, 0x85, 0x2b, 0xd7 .byte 0xc8, 0x3f, 0x1b, 0xf2, 0x59, 0xb0, 0xb4, 0xcf, 0x72, 0xe2, 0xab, 0x7d, 0x2f, 0x1a, 0xe7, 0x89 .byte 0xa4, 0xa1, 0x53, 0x1f, 0xb9, 0x23, 0x2e, 0x6e, 0xa3, 0xef, 0x72, 0xf1, 0x3d, 0xbd, 0x44, 0xfe .byte 0x58, 0x28, 0xce, 0x28, 0x03, 0x48, 0x51, 0xad, 0xbd, 0x8e, 0xa5, 0x03, 0xc5, 0x3c, 0x11, 0xde .byte 0x99, 0x0a, 0xdb, 0x99, 0x6e, 0x1c, 0xff, 0x1d, 0x26, 0x7d, 0x2d, 0xc0, 0x79, 0x02, 0x9d, 0xdf .byte 0xb6, 0x90, 0x16, 0x48, 0x4c, 0x54, 0xd0, 0x3b, 0x6a, 0xdd, 0x00, 0xc0, 0xdc, 0x20, 0xaa, 0xac - .byte 0x0e, 0xdf, 0x70, 0x47, 0x92, 0x1e, 0x69, 0x90, 0x4d, 0x7d, 0x81, 0x4d, 0x50, 0x17, 0x58, 0x23 + + .global GetCRC16 + thumb_func_start GetCRC16 +GetCRC16: ; 0x02000610 + swi 0xe + bx lr + thumb_func_end GetCRC16 + + .global data_02000614 +data_02000614: ; 0x02000614 + .byte 0x92, 0x1e, 0x69, 0x90, 0x4d, 0x7d, 0x81, 0x4d, 0x50, 0x17, 0x58, 0x23 .byte 0xc4, 0xa3, 0x89, 0x75, 0xdf, 0xd6, 0x6d, 0x4b, 0xbd, 0x08, 0xd1, 0xa6, 0x9a, 0x54, 0x25, 0x23 .byte 0x7b, 0x82, 0xf1, 0x29, 0x7c, 0xe3, 0x6d, 0x9d, 0x73, 0xe2, 0xfd, 0xb3, 0x3c, 0xbf, 0x74, 0x1a .byte 0x04, 0xe5, 0x25, 0x49, 0xb2, 0x74, 0xa5, 0x00, 0xea, 0x7a, 0xe3, 0xae, 0x5f, 0xfb, 0xc1, 0x54 .byte 0x69, 0x8f, 0x18, 0x25, 0xc1, 0xed, 0x60, 0xab, 0x76, 0x81, 0xf5, 0x36, 0x6f, 0x7d, 0xec, 0x94 .byte 0x81, 0x89, 0x84, 0x8b, 0xf4, 0x0f, 0x64, 0xb9, 0xed, 0x8c, 0x1b, 0x67, 0x15, 0x71, 0xdd, 0xd4 .byte 0x44, 0x26, 0x52, 0x3a, 0x2e, 0xf3, 0xd9, 0xe1, 0x8c, 0x72, 0x00, 0x82, 0xd2, 0x85, 0x62, 0xb3 - .byte 0xa6, 0x0f, 0x2d, 0x26, 0x00, 0xdf, 0x70, 0x47, 0x9f, 0xcb, 0xeb, 0xe1, 0x0a, 0xb5, 0x7a, 0x13 + .byte 0xa6, 0x0f, 0x2d, 0x26 + + .global SoftReset + thumb_func_start SoftReset +SoftReset: ; 0x02000684 + swi 0x0 + bx lr + thumb_func_end SoftReset + + .global data_02000688 +data_02000688: ; 0x02000688 + .byte 0x9f, 0xcb, 0xeb, 0xe1, 0x0a, 0xb5, 0x7a, 0x13 .byte 0x7b, 0x89, 0x7d, 0xc3, 0xbf, 0x54, 0x5b, 0x93, 0xd2, 0x09, 0x39, 0x1a, 0x19, 0x4d, 0xbf, 0xf0 .byte 0xfc, 0xff, 0x9a, 0x70, 0x41, 0x04, 0x9c, 0x5c, 0xa3, 0x2f, 0x95, 0x63, 0xa0, 0x72, 0xc2, 0x90 .byte 0x0a, 0xaf, 0x4d, 0x74, 0xad, 0x8c, 0x68, 0x3f, 0x75, 0x2c, 0x76, 0x47, 0x7a, 0xed, 0x51, 0x98 .byte 0xc0, 0x9a, 0xa7, 0x7a, 0x60, 0x04, 0xcf, 0x6d, 0x8a, 0x02, 0xb9, 0x52, 0x4e, 0x96, 0xae, 0x4f .byte 0xb1, 0x54, 0xa8, 0xc6, 0xe1, 0x9e, 0xdb, 0x81, 0xc4, 0xc7, 0xb0, 0xdc, 0x80, 0xa3, 0x5f, 0xe0 .byte 0xa0, 0x46, 0xdb, 0x89, 0x51, 0xaa, 0x3b, 0x39, 0x09, 0x45, 0xb4, 0x0a, 0xc7, 0x58, 0x50, 0xec - .byte 0x10, 0xdf, 0x70, 0x47, 0x43, 0x95, 0xa8, 0xff, 0xed, 0xdc, 0x5f, 0xf6, 0x21, 0x5c, 0xae, 0xa3 + + .global BitUnPack + thumb_func_start BitUnPack +BitUnPack: ; 0x020006f0 + swi 0x10 + bx lr + thumb_func_end BitUnPack + + .global data_020006f4 +data_020006f4: ; 0x020006f4 + .byte 0x43, 0x95, 0xa8, 0xff, 0xed, 0xdc, 0x5f, 0xf6, 0x21, 0x5c, 0xae, 0xa3 .byte 0x2f, 0x11, 0x99, 0x12, 0x42, 0xc3, 0xea, 0x50, 0x98, 0xfb, 0x7b, 0xd8, 0x66, 0xdf, 0x63, 0x9a .byte 0xd4, 0xf0, 0xec, 0x01, 0x82, 0x13, 0x51, 0xb6, 0x6e, 0x8d, 0xfa, 0x5a, 0xc3, 0x4f, 0xa6, 0x29 .byte 0x68, 0xc3, 0xc4, 0xa6, 0x59, 0x2e, 0x47, 0xa8, 0x7b, 0x9b, 0x62, 0xa7, 0x27, 0x87, 0x7b, 0xf7 .byte 0x9b, 0x8e, 0xc6, 0xed, 0x20, 0x3c, 0x50, 0x15, 0xac, 0x85, 0x2f, 0xbc, 0xc9, 0xf6, 0xf6, 0xc4 .byte 0xfd, 0x56, 0x76, 0x9c, 0x4f, 0xd3, 0x44, 0x48, 0x80, 0x24, 0x5c, 0x9c - .global func_0200074c - thumb_func_start func_0200074c -func_0200074c: ; 0x0200074c + .global CpuSet + thumb_func_start CpuSet +CpuSet: ; 0x0200074c swi 0xb bx lr - thumb_func_end func_0200074c + thumb_func_end CpuSet .global data_02000750 data_02000750: ; 0x02000750 .byte 0x3c, 0x97, 0xf2, 0xe8, 0x29, 0xa2, 0x6c, 0xcc, 0x51, 0xda, 0x32, 0x9c, 0x5d, 0xcf, 0x77, 0xcc .byte 0x34, 0x07, 0xef, 0xc8, 0x1e, 0x85, 0x60, 0xaf, 0x80, 0x81, 0xcc, 0x2c, 0x4b, 0x27, 0xbf, 0x27 .byte 0xaf, 0xdc, 0x30, 0x58, 0xf8, 0xc6, 0xef, 0x60, 0x00, 0x43, 0x01, 0xad, 0x8d, 0x73, 0xb6, 0x28 .byte 0xf0, 0x6f, 0xae, 0x87, 0x43, 0xbd, 0x7e, 0xa0, 0xc6, 0xc2, 0x33, 0xc6, 0x4c, 0xe9, 0x37, 0xc5 - .byte 0x3d, 0x51, 0x3b, 0xc3, 0x85, 0xbb, 0x76, 0x4f, 0xbc, 0x94, 0xaf, 0xa7, 0xb8, 0xe5, 0x13, 0xdf - .byte 0x70, 0x47, 0x7e, 0xdb, 0x8b, 0x69, 0x25, 0x2d, 0x6f, 0x5d, 0x5e, 0x8d, 0x56, 0x16, 0xe1, 0xb6 + .byte 0x3d, 0x51, 0x3b, 0xc3, 0x85, 0xbb, 0x76, 0x4f, 0xbc, 0x94, 0xaf, 0xa7, 0xb8, 0xe5 + + .global HuffUnCompReadByCallback + non_word_aligned_thumb_func_start HuffUnCompReadByCallback +HuffUnCompReadByCallback: ; 0x0200079e + swi 0x13 + bx lr + thumb_func_end HuffUnCompReadByCallback + + .global data_020007a2 +data_020007a2: ; 0x020007a2 + .byte 0x7e, 0xdb, 0x8b, 0x69, 0x25, 0x2d, 0x6f, 0x5d, 0x5e, 0x8d, 0x56, 0x16, 0xe1, 0xb6 .byte 0xfc, 0x5e, 0x80, 0xe6, 0xc1, 0x42, 0xc5, 0xc1, 0x0f, 0x78, 0x4e, 0xb4, 0xe7, 0x86, 0xfd, 0xd9 .byte 0x99, 0x99, 0xd2, 0x51, 0xa3, 0x76, 0x81, 0x17, 0x3e, 0x8e, 0xec, 0x05, 0x90, 0x44, 0x10, 0x75 .byte 0x0a, 0xbc, 0xdf, 0x3e, 0x76, 0xa0, 0x27, 0x3a, 0x85, 0x2f, 0x2c, 0xdc, 0x16, 0xa8, 0xb4, 0x2f .byte 0x11, 0xc1, 0x87, 0x26, 0x03, 0xd2, 0x29, 0x70, 0x00, 0xee, 0x77, 0xbe, 0x92, 0xa0, 0xc4, 0x7e .byte 0x0d, 0x8b, 0xf9, 0x1a, 0x8b, 0x60, 0x6b, 0x1a, 0x17, 0xef, 0xc9, 0xcb, 0x39, 0x2a, 0x00, 0x00 +.endif + .global Entry arm_func_start Entry @@ -16476,7 +16648,7 @@ func_0200c4b4: ; 0x0200c4b4 lsl r4, r4, #0xa _0200c4da: add r0, r4, #0 - bl func_0200022a + bl WaitByLoop ldrh r0, [r5, #6] cmp r0, #0 bne _0200c4da @@ -16531,7 +16703,7 @@ func_0200c534: ; 0x0200c534 mov r4, #0x400 _0200c558: mov r0, r4 - blx func_0200022a + blx WaitByLoop mov r0, r8 mov r1, r7 mov r2, r6 @@ -20388,7 +20560,7 @@ func_0200eebc: func_0200eec8: ; 0x0200eec8 stmdb sp!, {r3, lr} mov r0, #1 - blx func_0200022a + blx WaitByLoop mov r0, #1 mov r1, r0 bl func_0200c08c @@ -88615,7 +88787,7 @@ func_02040d64: ; 0x02040d64 mov r7, #0 _02040d7c: add r0, r4, #0 - bl func_0200022a + bl WaitByLoop add r0, r6, #0 add r1, r5, #0 add r2, r7, #0 @@ -108785,7 +108957,7 @@ func_0204fcc0: ; 0x0204fcc0 ldr r1, _0204fcdc ; =data_02076db0 ldr r2, _0204fce0 ; =0x05000001 add r0, sp, #0 - bl func_0200074c + bl CpuSet blx func_0200c76c ldr r1, _0204fce4 ; =data_02076dac strh r0, [r1, #6] @@ -108994,7 +109166,7 @@ _0204fe26: ldr r0, [r4, #4] blx func_0200ee60 mov r0, #1 - bl func_0200022a + bl WaitByLoop b _0204fe26 _0204fe50: pop {r3, r4, r5, r6, r7, pc} @@ -109034,7 +109206,7 @@ func_0204fe70: ; 0x0204fe70 mov r7, #0 _0204fe88: add r0, r4, #0 - bl func_0200022a + bl WaitByLoop add r0, r6, #0 add r1, r5, #0 add r2, r7, #0 @@ -109260,7 +109432,7 @@ _0205002a: b _02050058 _02050052: add r0, r5, #0 - bl func_0200022a + bl WaitByLoop _02050058: ldrh r0, [r4] cmp r0, #1 diff --git a/asm/ov00/include/ov00_020773c0.inc b/asm/ov00/include/ov00_020773c0.inc index 8f76764a..81b05912 100644 --- a/asm/ov00/include/ov00_020773c0.inc +++ b/asm/ov00/include/ov00_020773c0.inc @@ -55,20 +55,20 @@ .extern func_0200e8f8 .extern func_02002bf4 .extern func_02002bac -.extern func_0200022a +.extern WaitByLoop .extern func_0200e288 .extern func_02008b50 .extern func_02008b04 -.extern func_0200022a +.extern WaitByLoop .extern func_0200e288 .extern func_02008b50 .extern func_02008b04 .extern func_0200e2a4 -.extern func_0200022a +.extern WaitByLoop .extern func_0204366c .extern func_02008b50 .extern func_02008b04 -.extern func_0200022a +.extern WaitByLoop .extern func_02007ad8 .extern func_02007ad8 .extern func_02007ad8 diff --git a/asm/ov00/ov00_020773c0.s b/asm/ov00/ov00_020773c0.s index f23919a6..ca3f7a50 100644 --- a/asm/ov00/ov00_020773c0.s +++ b/asm/ov00/ov00_020773c0.s @@ -1981,7 +1981,7 @@ _02078118: _0207811c: mov r0, #1 lsl r0, r0, #0xe - bl func_0200022a + bl WaitByLoop b _02077ef4 _02078126: add sp, #0x40 @@ -2043,7 +2043,7 @@ _02078192: beq _020781ac mov r0, #1 lsl r0, r0, #0x12 - bl func_0200022a + bl WaitByLoop b _02078192 _020781ac: ldr r1, [sp] @@ -2086,7 +2086,7 @@ _020781e4: beq _020781fe mov r0, #1 lsl r0, r0, #0x12 - bl func_0200022a + bl WaitByLoop b _020781e4 _020781fe: pop {r3, r4, r5, r6, r7, pc} @@ -2151,7 +2151,7 @@ _02078256: cmp r0, #1 beq _0207826e add r0, r4, #0 - bl func_0200022a + bl WaitByLoop b _02078256 _0207826e: mov r0, #1