2022-04-02 21:03:04 +00:00
|
|
|
.include "macros.inc"
|
|
|
|
|
2022-08-26 03:46:24 +00:00
|
|
|
.section .data, "wa"
|
|
|
|
.balign 8
|
|
|
|
|
|
|
|
.global __ctype_map
|
|
|
|
__ctype_map:
|
|
|
|
# ROM: 0x3EFA20
|
|
|
|
.4byte 0x01010101
|
|
|
|
.4byte 0x01010101
|
|
|
|
.4byte 0x01020202
|
|
|
|
.4byte 0x02020101
|
|
|
|
.4byte 0x01010101
|
|
|
|
.4byte 0x01010101
|
|
|
|
.4byte 0x01010101
|
|
|
|
.4byte 0x01010101
|
|
|
|
.4byte 0x04080808
|
|
|
|
.4byte 0x08080808
|
|
|
|
.4byte 0x08080808
|
|
|
|
.4byte 0x08080808
|
|
|
|
.4byte 0x30303030
|
|
|
|
.4byte 0x30303030
|
|
|
|
.4byte 0x30300808
|
|
|
|
.4byte 0x08080808
|
|
|
|
.4byte 0x08A0A0A0
|
|
|
|
.4byte 0xA0A0A080
|
|
|
|
.4byte 0x80808080
|
|
|
|
.4byte 0x80808080
|
|
|
|
.4byte 0x80808080
|
|
|
|
.4byte 0x80808080
|
|
|
|
.4byte 0x80808008
|
|
|
|
.4byte 0x08080808
|
|
|
|
.4byte 0x08606060
|
|
|
|
.4byte 0x60606040
|
|
|
|
.4byte 0x40404040
|
|
|
|
.4byte 0x40404040
|
|
|
|
.4byte 0x40404040
|
|
|
|
.4byte 0x40404040
|
|
|
|
.4byte 0x40404008
|
|
|
|
.4byte 0x08080801
|
|
|
|
.4byte 0
|
|
|
|
.4byte 0
|
|
|
|
.4byte 0
|
|
|
|
.4byte 0
|
|
|
|
.4byte 0
|
|
|
|
.4byte 0
|
|
|
|
.4byte 0
|
|
|
|
.4byte 0
|
|
|
|
.4byte 0
|
|
|
|
.4byte 0
|
|
|
|
.4byte 0
|
|
|
|
.4byte 0
|
|
|
|
.4byte 0
|
|
|
|
.4byte 0
|
|
|
|
.4byte 0
|
|
|
|
.4byte 0
|
|
|
|
.4byte 0
|
|
|
|
.4byte 0
|
|
|
|
.4byte 0
|
|
|
|
.4byte 0
|
|
|
|
.4byte 0
|
|
|
|
.4byte 0
|
|
|
|
.4byte 0
|
|
|
|
.4byte 0
|
|
|
|
.4byte 0
|
|
|
|
.4byte 0
|
|
|
|
.4byte 0
|
|
|
|
.4byte 0
|
|
|
|
.4byte 0
|
|
|
|
.4byte 0
|
|
|
|
.4byte 0
|
|
|
|
.4byte 0
|
|
|
|
|
|
|
|
.global __lower_map
|
|
|
|
__lower_map:
|
|
|
|
# ROM: 0x3EFB20
|
|
|
|
.4byte 0x00010203
|
|
|
|
.4byte 0x04050607
|
|
|
|
.4byte 0x08090A0B
|
|
|
|
.4byte 0x0C0D0E0F
|
|
|
|
.4byte 0x10111213
|
|
|
|
.4byte 0x14151617
|
|
|
|
.4byte 0x18191A1B
|
|
|
|
.4byte 0x1C1D1E1F
|
|
|
|
.4byte 0x20212223
|
|
|
|
.4byte 0x24252627
|
|
|
|
.4byte 0x28292A2B
|
|
|
|
.4byte 0x2C2D2E2F
|
|
|
|
.4byte 0x30313233
|
|
|
|
.4byte 0x34353637
|
|
|
|
.4byte 0x38393A3B
|
|
|
|
.4byte 0x3C3D3E3F
|
|
|
|
.4byte 0x40616263
|
|
|
|
.4byte 0x64656667
|
|
|
|
.4byte 0x68696A6B
|
|
|
|
.4byte 0x6C6D6E6F
|
|
|
|
.4byte 0x70717273
|
|
|
|
.4byte 0x74757677
|
|
|
|
.4byte 0x78797A5B
|
|
|
|
.4byte 0x5C5D5E5F
|
|
|
|
.4byte 0x60616263
|
|
|
|
.4byte 0x64656667
|
|
|
|
.4byte 0x68696A6B
|
|
|
|
.4byte 0x6C6D6E6F
|
|
|
|
.4byte 0x70717273
|
|
|
|
.4byte 0x74757677
|
|
|
|
.4byte 0x78797A7B
|
|
|
|
.4byte 0x7C7D7E7F
|
|
|
|
.4byte 0x80818283
|
|
|
|
.4byte 0x84858687
|
|
|
|
.4byte 0x88898A8B
|
|
|
|
.4byte 0x8C8D8E8F
|
|
|
|
.4byte 0x90919293
|
|
|
|
.4byte 0x94959697
|
|
|
|
.4byte 0x98999A9B
|
|
|
|
.4byte 0x9C9D9E9F
|
|
|
|
.4byte 0xA0A1A2A3
|
|
|
|
.4byte 0xA4A5A6A7
|
|
|
|
.4byte 0xA8A9AAAB
|
|
|
|
.4byte 0xACADAEAF
|
|
|
|
.4byte 0xB0B1B2B3
|
|
|
|
.4byte 0xB4B5B6B7
|
|
|
|
.4byte 0xB8B9BABB
|
|
|
|
.4byte 0xBCBDBEBF
|
|
|
|
.4byte 0xC0C1C2C3
|
|
|
|
.4byte 0xC4C5C6C7
|
|
|
|
.4byte 0xC8C9CACB
|
|
|
|
.4byte 0xCCCDCECF
|
|
|
|
.4byte 0xD0D1D2D3
|
|
|
|
.4byte 0xD4D5D6D7
|
|
|
|
.4byte 0xD8D9DADB
|
|
|
|
.4byte 0xDCDDDEDF
|
|
|
|
.4byte 0xE0E1E2E3
|
|
|
|
.4byte 0xE4E5E6E7
|
|
|
|
.4byte 0xE8E9EAEB
|
|
|
|
.4byte 0xECEDEEEF
|
|
|
|
.4byte 0xF0F1F2F3
|
|
|
|
.4byte 0xF4F5F6F7
|
|
|
|
.4byte 0xF8F9FAFB
|
|
|
|
.4byte 0xFCFDFEFF
|
|
|
|
|
|
|
|
.global __upper_map
|
|
|
|
__upper_map:
|
|
|
|
# ROM: 0x3EFC20
|
|
|
|
.4byte 0x00010203
|
|
|
|
.4byte 0x04050607
|
|
|
|
.4byte 0x08090A0B
|
|
|
|
.4byte 0x0C0D0E0F
|
|
|
|
.4byte 0x10111213
|
|
|
|
.4byte 0x14151617
|
|
|
|
.4byte 0x18191A1B
|
|
|
|
.4byte 0x1C1D1E1F
|
|
|
|
.4byte 0x20212223
|
|
|
|
.4byte 0x24252627
|
|
|
|
.4byte 0x28292A2B
|
|
|
|
.4byte 0x2C2D2E2F
|
|
|
|
.4byte 0x30313233
|
|
|
|
.4byte 0x34353637
|
|
|
|
.4byte 0x38393A3B
|
|
|
|
.4byte 0x3C3D3E3F
|
|
|
|
.4byte 0x40414243
|
|
|
|
.4byte 0x44454647
|
|
|
|
.4byte 0x48494A4B
|
|
|
|
.4byte 0x4C4D4E4F
|
|
|
|
.4byte 0x50515253
|
|
|
|
.4byte 0x54555657
|
|
|
|
.4byte 0x58595A5B
|
|
|
|
.4byte 0x5C5D5E5F
|
|
|
|
.4byte 0x60414243
|
|
|
|
.4byte 0x44454647
|
|
|
|
.4byte 0x48494A4B
|
|
|
|
.4byte 0x4C4D4E4F
|
|
|
|
.4byte 0x50515253
|
|
|
|
.4byte 0x54555657
|
|
|
|
.4byte 0x58595A7B
|
|
|
|
.4byte 0x7C7D7E7F
|
|
|
|
.4byte 0x80818283
|
|
|
|
.4byte 0x84858687
|
|
|
|
.4byte 0x88898A8B
|
|
|
|
.4byte 0x8C8D8E8F
|
|
|
|
.4byte 0x90919293
|
|
|
|
.4byte 0x94959697
|
|
|
|
.4byte 0x98999A9B
|
|
|
|
.4byte 0x9C9D9E9F
|
|
|
|
.4byte 0xA0A1A2A3
|
|
|
|
.4byte 0xA4A5A6A7
|
|
|
|
.4byte 0xA8A9AAAB
|
|
|
|
.4byte 0xACADAEAF
|
|
|
|
.4byte 0xB0B1B2B3
|
|
|
|
.4byte 0xB4B5B6B7
|
|
|
|
.4byte 0xB8B9BABB
|
|
|
|
.4byte 0xBCBDBEBF
|
|
|
|
.4byte 0xC0C1C2C3
|
|
|
|
.4byte 0xC4C5C6C7
|
|
|
|
.4byte 0xC8C9CACB
|
|
|
|
.4byte 0xCCCDCECF
|
|
|
|
.4byte 0xD0D1D2D3
|
|
|
|
.4byte 0xD4D5D6D7
|
|
|
|
.4byte 0xD8D9DADB
|
|
|
|
.4byte 0xDCDDDEDF
|
|
|
|
.4byte 0xE0E1E2E3
|
|
|
|
.4byte 0xE4E5E6E7
|
|
|
|
.4byte 0xE8E9EAEB
|
|
|
|
.4byte 0xECEDEEEF
|
|
|
|
.4byte 0xF0F1F2F3
|
|
|
|
.4byte 0xF4F5F6F7
|
|
|
|
.4byte 0xF8F9FAFB
|
|
|
|
.4byte 0xFCFDFEFF
|
|
|
|
|
2022-04-02 21:03:04 +00:00
|
|
|
.section .text, "ax"
|
|
|
|
|
|
|
|
.global tolower
|
|
|
|
tolower:
|
|
|
|
/* 8038CF24 00389E84 2C 03 FF FF */ cmpwi r3, -1
|
|
|
|
/* 8038CF28 00389E88 40 82 00 0C */ bne lbl_8038CF34
|
|
|
|
/* 8038CF2C 00389E8C 38 60 FF FF */ li r3, -1
|
2022-07-14 05:48:03 +00:00
|
|
|
/* 8038CF30 00389E90 4E 80 00 20 */ blr
|
2022-04-02 21:03:04 +00:00
|
|
|
lbl_8038CF34:
|
2022-08-26 03:46:24 +00:00
|
|
|
/* 8038CF34 00389E94 3C 80 80 3F */ lis r4, __lower_map@ha
|
2022-04-02 21:03:04 +00:00
|
|
|
/* 8038CF38 00389E98 54 60 06 3E */ clrlwi r0, r3, 0x18
|
2022-08-26 03:46:24 +00:00
|
|
|
/* 8038CF3C 00389E9C 38 64 2B 20 */ addi r3, r4, __lower_map@l
|
2022-04-02 21:03:04 +00:00
|
|
|
/* 8038CF40 00389EA0 7C 63 00 AE */ lbzx r3, r3, r0
|
2022-07-14 05:48:03 +00:00
|
|
|
/* 8038CF44 00389EA4 4E 80 00 20 */ blr
|