Files
Persona2-PSX-asm-sources/ghidra_src/EP__OLD_CharLoadBIG_SRC.asm
2025-11-04 23:06:09 +05:00

161 lines
9.2 KiB
NASM

**************************************************************
* FUNCTION *
**************************************************************
undefined MakeCharInScratch()
assume gp = 0x8007c970
undefined v0:1 <RETURN>
undefined4 Stack[-0x8]:4 local_8 XREF[2]: 8001a96c(W),
8001aa40(R)
MakeCharInScratch XREF[1]: DrawCharLine_1a3a8:8001a608(c)
8001a95c e8 ff bd 27 addiu sp,sp,-0x18
assume gp = <UNKNOWN>
8001a960 21 28 80 00 move a1,a0
8001a964 80 1f 04 3c lui a0,0x1f80
8001a968 00 03 84 34 ori a0=>DAT_1f800300,a0,0x300 = ??
8001a96c 10 00 bf af sw ra,local_8(sp)
8001a970 65 6c 00 0c jal makeCharPixels undefined makeCharPixels()
8001a974 21 30 00 00 _clear a2
8001a978 a5 00 83 93 lbu v1,0xa5(gp)=>DAT_8007ca15
8001a97c 01 00 02 24 li v0,0x1
8001a980 03 00 62 14 bne v1,v0,LAB_8001a990
8001a984 80 1f 04 3c _lui a0,0x1f80
8001a988 94 6a 00 0c jal MakeCharShadow undefined MakeCharShadow()
8001a98c 00 03 84 34 _ori a0=>DAT_1f800300,a0,0x300 = ??
LAB_8001a990 XREF[1]: 8001a980(j)
8001a990 80 1f 03 3c lui v1,0x1f80
8001a994 58 03 63 34 ori v1,v1,0x358
8001a998 80 1f 02 3c lui v0,0x1f80
8001a99c 00 03 42 34 ori v0,v0,0x300
8001a9a0 80 1f 04 3c lui a0,0x1f80
8001a9a4 20 03 84 34 ori a0,a0,0x320
LAB_8001a9a8 XREF[1]: 8001a9cc(j)
8001a9a8 00 00 47 8c lw a3,0x0(v0)=>DAT_1f800300 = ??
8001a9ac 04 00 48 8c lw t0,offset DAT_1f800304(v0) = ??
8001a9b0 08 00 49 8c lw t1,offset DAT_1f800308(v0) = ??
8001a9b4 0c 00 4a 8c lw t2,offset DAT_1f80030c(v0) = ??
8001a9b8 00 00 67 ac sw a3,0x0(v1)=>DAT_1f800358 = ??
8001a9bc 04 00 68 ac sw t0,0x4(v1)=>DAT_1f80035c = ??
8001a9c0 08 00 69 ac sw t1,0x8(v1)=>DAT_1f800360 = ??
8001a9c4 0c 00 6a ac sw t2,0xc(v1)=>DAT_1f800364 = ??
8001a9c8 10 00 42 24 addiu v0,v0,0x10
8001a9cc f6 ff 44 14 bne v0,a0,LAB_8001a9a8
8001a9d0 10 00 63 24 _addiu v1,v1,0x10
8001a9d4 03 00 47 88 lwl a3,0x3(v0)
8001a9d8 00 00 47 98 lwr a3,0x0(v0)=>DAT_1f800310 = ??
8001a9dc 00 00 00 00 nop
8001a9e0 03 00 67 a8 swl a3,0x3(v1)
8001a9e4 00 00 67 b8 swr a3,0x0(v1)=>DAT_1f800368 = ??
8001a9e8 80 1f 03 3c lui v1,0x1f80
8001a9ec 9c 03 63 34 ori v1,v1,0x39c
8001a9f0 80 1f 02 3c lui v0,0x1f80
8001a9f4 24 03 42 34 ori v0,v0,0x324
8001a9f8 80 1f 04 3c lui a0,0x1f80
8001a9fc 44 03 84 34 ori a0,a0,0x344
LAB_8001aa00 XREF[1]: 8001aa24(j)
8001aa00 00 00 47 8c lw a3,0x0(v0)=>DAT_1f800324 = ??
8001aa04 04 00 48 8c lw t0,0x4(v0)=>DAT_1f800328 = ??
8001aa08 08 00 49 8c lw t1,0x8(v0)=>DAT_1f80032c = ??
8001aa0c 0c 00 4a 8c lw t2,0xc(v0)=>DAT_1f800330 = ??
8001aa10 00 00 67 ac sw a3,0x0(v1)=>DAT_1f80039c = ??
8001aa14 04 00 68 ac sw t0,0x4(v1)=>DAT_1f8003a0 = ??
8001aa18 08 00 69 ac sw t1,0x8(v1)=>DAT_1f8003a4 = ??
8001aa1c 0c 00 6a ac sw t2,0xc(v1)=>DAT_1f8003a8 = ??
8001aa20 10 00 42 24 addiu v0=>DAT_1f800334,v0,0x10 = ??
8001aa24 f6 ff 44 14 bne v0,a0,LAB_8001aa00
8001aa28 10 00 63 24 _addiu v1,v1,0x10
8001aa2c 03 00 47 88 lwl a3,0x3(v0)
8001aa30 00 00 47 98 lwr a3,0x0(v0)=>DAT_1f800334 = ??
8001aa34 00 00 00 00 nop
8001aa38 03 00 67 a8 swl a3,0x3(v1)
8001aa3c 00 00 67 b8 swr a3,0x0(v1)=>DAT_1f8003ac = ??
8001aa40 10 00 bf 8f lw ra,local_8(sp)
8001aa44 00 00 00 00 nop
8001aa48 08 00 e0 03 jr ra
8001aa4c 18 00 bd 27 _addiu sp,sp,0x18
**************************************************************
* FUNCTION *
**************************************************************
undefined makeCharPixels()
assume gp = 0x8007c970
undefined v0:1 <RETURN>
makeCharPixels XREF[4]: FUN_80016a5c:80016ad0(c),
MakeCharInScratch:8001a970(c),
GenerateSmallChar:8001b334(c),
FUN_8001c0c8:8001c0d8(c)
8001b194 a4 00 8a 93 lbu t2,0xa4(gp)=>DAT_8007ca14
assume gp = <UNKNOWN>
8001b198 09 00 c0 14 bne a2,zero,LAB_8001b1c0
8001b19c 21 40 80 00 _move t0,a0
8001b1a0 1e 80 03 3c lui v1,0x801e
8001b1a4 80 f4 63 34 ori v1,v1,0xf480
8001b1a8 c0 10 05 00 sll v0,a1,0x3
8001b1ac 21 10 45 00 addu v0,v0,a1
8001b1b0 40 10 02 00 sll v0,v0,0x1
8001b1b4 21 48 43 00 addu t1,v0,v1
8001b1b8 77 6c 00 08 j LAB_8001b1dc
8001b1bc 09 00 06 24 _li a2,0x9
LAB_8001b1c0 XREF[1]: 8001b198(j)
8001b1c0 1e 80 03 3c lui v1,0x801e
8001b1c4 00 f0 63 34 ori v1,v1,0xf000
8001b1c8 40 10 05 00 sll v0,a1,0x1
8001b1cc 21 10 45 00 addu v0,v0,a1
8001b1d0 80 10 02 00 sll v0,v0,0x2
8001b1d4 21 48 43 00 addu t1,v0,v1
8001b1d8 06 00 06 24 li a2,0x6
LAB_8001b1dc XREF[1]: 8001b1b8(j)
8001b1dc 21 10 c0 00 move v0,a2
8001b1e0 2f 00 40 10 beq v0,zero,LAB_8001b2a0
8001b1e4 ff ff c6 24 _addiu a2,a2,-0x1
8001b1e8 80 1f 07 3c lui a3,0x1f80
8001b1ec e0 02 e7 34 ori a3,a3,0x2e0
LAB_8001b1f0 XREF[1]: 8001b298(j)
8001b1f0 00 00 23 95 lhu v1=>DAT_801ef480,0x0(t1)=>DAT_801ef482 = ??
8001b1f4 00 00 00 00 nop
8001b1f8 0f 00 64 30 andi a0,v1,0xf
8001b1fc 02 19 03 00 srl v1,v1,0x4
8001b200 0f 00 62 30 andi v0,v1,0xf
8001b204 40 10 02 00 sll v0,v0,0x1
8001b208 21 10 47 00 addu v0,v0,a3
8001b20c 00 00 42 94 lhu v0,0x0(v0)=>DAT_1f8002e0 = ??
8001b210 00 00 00 00 nop
8001b214 18 00 4a 00 mult v0,t2
8001b218 40 20 04 00 sll a0,a0,0x1
8001b21c 21 20 87 00 addu a0,a0,a3
8001b220 12 28 00 00 mflo a1
8001b224 00 00 82 94 lhu v0,0x0(a0)=>DAT_1f8002e0 = ??
8001b228 00 00 00 00 nop
8001b22c 18 00 4a 00 mult v0,t2
8001b230 02 19 03 00 srl v1,v1,0x4
8001b234 0f 00 64 30 andi a0,v1,0xf
8001b238 02 19 03 00 srl v1,v1,0x4
8001b23c 40 18 03 00 sll v1,v1,0x1
8001b240 21 18 67 00 addu v1,v1,a3
8001b244 00 14 05 00 sll v0,a1,0x10
8001b248 12 60 00 00 mflo t4
8001b24c 25 10 82 01 or v0,t4,v0
8001b250 00 00 02 ad sw v0,0x0(t0)
8001b254 00 00 62 94 lhu v0,0x0(v1)=>DAT_1f8002e0 = ??
8001b258 00 00 00 00 nop
8001b25c 18 00 4a 00 mult v0,t2
8001b260 40 20 04 00 sll a0,a0,0x1
8001b264 21 20 87 00 addu a0,a0,a3
8001b268 12 28 00 00 mflo a1
8001b26c 00 00 82 94 lhu v0,0x0(a0)=>DAT_1f8002e0 = ??
8001b270 00 00 00 00 nop
8001b274 18 00 4a 00 mult v0,t2
8001b278 02 00 29 25 addiu t1,t1,0x2
8001b27c 21 18 c0 00 move v1,a2
8001b280 ff ff c6 24 addiu a2,a2,-0x1
8001b284 04 00 08 25 addiu t0,t0,0x4
8001b288 00 14 05 00 sll v0,a1,0x10
8001b28c 12 60 00 00 mflo t4
8001b290 25 10 82 01 or v0,t4,v0
8001b294 00 00 02 ad sw v0,0x0(t0)
8001b298 d5 ff 60 14 bne v1,zero,LAB_8001b1f0
8001b29c 04 00 08 25 _addiu t0,t0,0x4
LAB_8001b2a0 XREF[1]: 8001b1e0(j)
8001b2a0 08 00 e0 03 jr ra
8001b2a4 00 00 00 00 _nop