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

430 lines
20 KiB
NASM

FUN_8002162c:800216bc(c)
8001a3a8 b0 ff bd 27 addiu sp,sp,-0x50
8001a3ac 38 00 b4 af sw s4,local_18(sp)
8001a3b0 21 a0 80 00 move s4,r4
8001a3b4 28 00 b0 af sw s0,local_28(sp)
8001a3b8 21 80 a0 00 move s0,r5
8001a3bc 2c 00 b1 af sw s1,local_24(sp)
8001a3c0 21 88 c0 00 move s1,r6
8001a3c4 34 00 b3 af sw s3,local_1c(sp)
8001a3c8 80 1f 13 3c lui s3,0x1f80
8001a3cc d0 03 73 36 ori s3,s3,0x3d0
8001a3d0 ff 00 08 3c lui t0,0xff
8001a3d4 ff ff 08 35 ori t0,t0,0xffff
8001a3d8 ff 00 e4 30 andi r4,r7,0xff
8001a3dc 08 80 07 3c lui r7=>DAT_80080000,0x8008 = ??
8001a3e0 00 ff 06 3c lui r6,0xff00
8001a3e4 58 ce e9 24 addiu t1,r7,-0x31a8
8001a3e8 58 ce e3 8c lw v1,-0x31a8(r7)=>DAT_8007ce58 = ??
8001a3ec 60 00 a5 93 lbu r5,Stack-10?(sp)
8001a3f0 00 80 02 3c lui v0,0x8000
8001a3f4 48 00 bf af sw ra,local_8(sp)
8001a3f8 44 00 b7 af sw s7,local_c(sp)
8001a3fc 40 00 b6 af sw s6,local_10(sp)
8001a400 3c 00 b5 af sw s5,local_14(sp)
8001a404 30 00 b2 af sw s2,local_20(sp)
;;init chains
8001a408 24 30 66 00 and r6,v1,r6
8001a40c ff 00 a5 30 andi r5,r5,0xff
8001a410 24 18 68 00 and v1,v1,t0
8001a414 25 a8 62 00 or s5,v1,v0
8001a418 04 00 22 8d lw v0,0x4(t1)=>DAT_8007ce5c = ??
8001a41c 00 00 a3 8e lw v1,0x0(s5)
8001a420 ff ff 42 24 addiu v0,v0,-0x1
8001a424 24 18 68 00 and v1,v1,t0
8001a428 25 30 c3 00 or r6,r6,v1
8001a42c 04 00 22 ad sw v0,0x4(t1)=>DAT_8007ce5c = ??
8001a430 2d 70 00 0c jal StoreColorToAddr undefined StoreColorToAddr()
8001a434 58 ce e6 ac _sw r6,-0x31a8(r7)=>DAT_8007ce58 = ??
8001a438 21 20 a0 02 move r4,s5
8001a43c 00 2c 10 00 sll r5,s0,0x10
8001a440 03 2c 05 00 sra r5,r5,0x10
8001a444 00 34 11 00 sll r6,s1,0x10
8001a448 44 6c 00 0c jal InitDMAtextChain undefined InitDMAtextChain()
8001a44c 03 34 06 00 _sra r6,r6,0x10
;;;;init ScratchPad
;;;;;;;;;;;;;;;;;; CPU TO VRAM
8001a450 80 1f 06 3c lui r6,0x1f80
8001a454 48 03 c6 34 ori r6=>DAT_1f800348,r6,0x348 = ??
;8001a458 80 1f 05 3c lui r5,0x1f80 ;LOWER HALF OF CHAR - DONT NEED!!!
;8001a45c 8c 03 a5 34 ori r5=>DAT_1f80038c,r5,0x38c = ??
;4bit table pattern
8001a4f0 03 00 02 24 li v0,0x3
8001a4f4 1c 00 a2 a7 sh v0,local_34(sp)
8001a4f8 06 00 02 24 li v0,0x6
8001a4fc 0d 00 04 24 li r4,0xd
8001a500 00 a0 03 3c lui v1,0xa000
8001a504 1e 00 a2 a7 sh v0,local_34+0x2(sp)
INIT CHAR
8001a508 00 01 02 3c lui v0,0x100
8001a50c 03 00 c4 a0 sb r4,0x3(r6)=>DAT_1f80034b = ??
8001a510 04 00 c3 ac sw v1,0x4(r6)=>DAT_1f80034c = ??
8001a514 80 1f 01 3c lui at,0x1f80
8001a518 7c 03 22 ac sw v0,offset DAT_1f80037c(at) = ??
8001a51c 03 00 a4 a0 sb r4,0x3(r5)=>DAT_1f80038f = ??
8001a520 04 00 a3 ac sw v1,0x4(r5)=>DAT_1f800390 = ??
8001a524 80 1f 01 3c lui at,0x1f80
8001a528 c0 03 22 ac sw v0,offset DAT_1f8003c0(at) = ??
8001a52c 04 00 02 24 li v0,0x4
8001a530 03 00 62 a2 sb v0,0x3(s3)=>DAT_1f8003d3 = ??
8001a534 64 00 02 24 li v0,0x64
8001a538 07 00 62 a2 sb v0,0x7(s3)=>DAT_1f8003d7 = ??
8001a53c 98 00 84 97 lhu r4,0x98(gp)=>DAT_8007ca08
8001a540 9a 00 83 97 lhu v1,0x9a(gp)=>DAT_8007ca0a
8001a544 80 00 02 24 li v0,0x80
8001a548 04 00 62 a2 sb v0,0x4(s3)=>DAT_1f8003d4 = ??
8001a54c 05 00 62 a2 sb v0,0x5(s3)=>DAT_1f8003d5 = ??
8001a550 06 00 62 a2 sb v0,0x6(s3)=>DAT_1f8003d6 = ??
setY1:
8001a554 1c 00 a2 8f lw v0,local_34(sp)
8001a558 98 00 87 87 lh r7,0x98(gp)=>DAT_8007ca08
8001a55c 18 00 a4 a7 sh r4,local_38(sp)
8001a560 1a 00 a3 a7 sh v1,local_38+0x2(sp)
8001a564 18 00 a4 8f lw r4,local_38(sp)
8001a568 06 00 63 24 addiu v1,v1,0x6
8001a56c 1a 00 a3 a7 sh v1,local_38+0x2(sp) LOWER GLIPH COORD
8001a570 18 00 a3 8f lw v1,local_38(sp)
8001a574 21 40 e0 00 move t0,r7
8001a578 0c 00 c2 ac sw v0,0xc(r6)=>DAT_1f800354 = ??
8001a57c 0c 00 a2 ac sw v0,0xc(r5)=>DAT_1f800398 = ??
8001a580 08 00 c4 ac sw r4,0x8(r6)=>DAT_1f800350 = ??
8001a584 02 00 e1 04 bgez r7,LAB_8001a590
8001a588 08 00 a3 ac _sw v1,0x8(r5)=>DAT_1f800394 = ??
8001a58c 3f 00 e8 24 addiu t0,r7,0x3f
;decoding coords for source sprite
; >DAT_1f8003dc ;STORE CHAR SPRITE X BYTE
LAB_8001a590 XREF[1]: 8001a584(j)
8001a590 83 11 08 00 sra v0,t0,0x6
8001a594 80 11 02 00 sll v0,v0,0x6
8001a598 23 10 e2 00 subu v0,r7,v0
8001a59c 9a 00 83 87 lh v1,0x9a(gp)=>DAT_8007ca0a
8001a5a0 80 10 02 00 sll v0,v0,0x2
8001a5a4 0c 00 62 a2 sb v0,0xc(s3)=>DAT_1f8003dc = ??
8001a5a8 02 00 61 04 bgez v1,LAB_8001a5b4
8001a5ac 21 10 60 00 _move v0,v1
8001a5b0 ff 00 62 24 addiu v0,v1,0xff
; >DAT_1f8003dd ;STORE CHAR SPRITE Y BYTE
LAB_8001a5b4 XREF[1]: 8001a5a8(j)
8001a5b4 03 12 02 00 sra v0,v0,0x8
8001a5b8 00 12 02 00 sll v0,v0,0x8
8001a5bc 23 10 62 00 subu v0,v1,v0
8001a5c0 0d 00 62 a2 sb v0,0xd(s3)=>DAT_1f8003dd = ??
8001a5c4 a0 00 83 97 lhu v1,0xa0(gp)=>DAT_8007ca10
8001a5c8 0c 00 02 24 li v0,0xc
8001a5cc 10 00 62 a6 sh v0,0x10(s3)=>DAT_1f8003e0 = ??
8001a5d0 12 00 62 a6 sh v0,0x12(s3)=>DAT_1f8003e2 = ??
8001a5d4 08 00 70 a6 sh s0,0x8(s3)=>DAT_1f8003d8 = ??
8001a5d8 0a 00 71 a6 sh s1,0xa(s3)=>DAT_1f8003da = ??
8001a5dc 0e 00 63 a6 sh v1,0xe(s3)=>DAT_1f8003de = ??
;TEXT READ START
8001a5e0 00 00 84 96 lhu r4,0x0(s4)
8001a5e4 00 00 00 00 nop
8001a5e8 00 10 82 2c sltiu v0,r4,0x1000
8001a5ec b0 00 40 10 beq v0,zero,LAB_8001a8b0 INIT X IN STACK
8001a5f0 02 00 94 26 _addiu s4,s4,0x2
8001a5f4 08 80 16 3c lui s6,0x8008
8001a5f8 68 ce d7 26 addiu s7,s6,-0x3198
8001a5fc ff 00 10 3c lui s0,0xff
8001a600 ff ff 10 36 ori s0,s0,0xffff
8001a604 00 80 11 3c lui s1,0x8000
LAB_8001a608 NextChar: XREF[1]: 8001a8a8(j)
8001a608 57 6a 00 0c jal MakeCharInScratch undefined MakeCharInScratch()
8001a60c 21 90 00 00 _clear s2
; Coords XY init
8001a610 00 ff 0a 3c lui t2,0xff00
8001a614 21 70 a0 02 move t6,s5
8001a618 10 00 ad 27 addiu t5,sp,0x10
8001a61c 20 00 ad af sw t5,local_30(sp)
8001a620 08 80 0b 3c lui t3,0x8008
8001a624 58 ce 6c 25 addiu t4,t3,-0x31a8
8001a628 21 48 a0 02 move t1,s5
PageLoop:
LAB_8001a62c XREF[1]: 8001a870(j)
8001a62c 68 ce c2 8e lw v0,-0x3198(s6)=>DMA_NEXT_FREE_CHAIN_8007ce68 = ??
8001a630 00 00 00 00 nop
8001a634 24 20 4a 00 and r4,v0,t2
8001a638 24 10 50 00 and v0,v0,s0
8001a63c 25 28 51 00 or r5,v0,s1
8001a640 04 00 e2 8e lw v0,0x4(s7)=>DMA_COUNTER_8007ce6c = ??
8001a644 00 00 a3 8c lw v1,0x0(r5)
8001a648 ff ff 42 24 addiu v0,v0,-0x1
8001a64c 24 18 70 00 and v1,v1,s0
8001a650 25 20 83 00 or r4,r4,v1
8001a654 04 00 e2 ae sw v0,0x4(s7)=>DMA_COUNTER_8007ce6c = ??
8001a658 68 ce c4 ae sw r4,-0x3198(s6)=>DMA_NEXT_FREE_CHAIN_8007ce68 = ??
CopyCmdFromScratch:
8001a65c 00 00 6f 8e lw t7,0x0(s3)=>DAT_1f8003d0 = ??
8001a660 04 00 78 8e lw t8,0x4(s3)=>DAT_1f8003d4 = ??
8001a664 08 00 79 8e lw t9,0x8(s3)=>DAT_1f8003d8 = ??
8001a668 0c 00 6d 8e lw t5,0xc(s3)=>DAT_1f8003dc = ??
8001a66c 00 00 af ac sw t7,0x0(r5)
8001a670 04 00 b8 ac sw t8,0x4(r5)
8001a674 08 00 b9 ac sw t9,0x8(r5)
8001a678 0c 00 ad ac sw t5,0xc(r5)
8001a67c 10 00 6f 8e lw t7,0x10(s3)=>DAT_1f8003e0 = ??
8001a680 00 00 00 00 nop
8001a684 10 00 af ac sw t7,0x10(r5)
8001a688 18 00 23 8d lw v1,0x18(t1)
8001a68c 00 00 a2 8c lw v0,0x0(r5)
8001a690 00 00 63 8c lw v1,0x0(v1)
8001a694 24 10 4a 00 and v0,v0,t2
8001a698 24 18 70 00 and v1,v1,s0
8001a69c 25 10 43 00 or v0,v0,v1
8001a6a0 00 00 a2 ac sw v0,0x0(r5)
8001a6a4 18 00 24 8d lw r4,0x18(t1)
8001a6a8 00 00 00 00 nop
8001a6ac 00 00 82 8c lw v0,0x0(r4)
8001a6b0 24 18 b0 00 and v1,r5,s0
8001a6b4 24 10 4a 00 and v0,v0,t2
8001a6b8 25 10 43 00 or v0,v0,v1
8001a6bc 00 00 82 ac sw v0,0x0(r4)
8001a6c0 18 00 25 ad sw r5,0x18(t1)
8001a6c4 04 00 c2 95 lhu v0,0x4(t6)
8001a6c8 00 00 00 00 nop
8001a6cc 02 00 40 14 bne v0,zero,LAB_8001a6d8 NotFirstChar
8001a6d0 21 40 00 00 _clear t0
8001a6d4 28 00 25 ad sw r5,0x28(t1)
NotFirstChar:
LAB_8001a6d8 XREF[1]: 8001a6cc(j)
8001a6d8 21 38 00 01 move r7,t0
8001a6dc 20 00 a6 8f lw r6,local_30(sp) ---loading from stack????
LAB_8001a6e0 XREF[1]: 8001a7e0(j)
8001a6e0 80 1f 05 3c lui r5,0x1f80
8001a6e4 58 ce 62 8d lw v0,-0x31a8(t3)=>DAT_8007ce58 = ??
8001a6e8 48 03 a5 34 ori r5=>DAT_1f800348,r5,0x348 = ??
8001a6ec 24 10 50 00 and v0,v0,s0
8001a6f0 25 10 51 00 or v0,v0,s1
8001a6f4 00 00 c2 ac sw v0,0x0(r6) ---saving to stack????
8001a6f8 58 ce 63 8d lw v1,-0x31a8(t3)=>DAT_8007ce58 = ??
8001a6fc 00 00 42 8c lw v0,0x0(v0)
8001a700 04 00 84 8d lw r4,0x4(t4)=>DAT_8007ce5c = ??
8001a704 24 18 6a 00 and v1,v1,t2
8001a708 24 10 50 00 and v0,v0,s0
8001a70c 25 18 62 00 or v1,v1,v0
8001a710 ff ff 84 24 addiu r4,r4,-0x1
8001a714 58 ce 63 ad sw v1,-0x31a8(t3)=>DAT_8007ce58 = ??
8001a718 04 00 84 ad sw r4,0x4(t4)=>DAT_8007ce5c = ??
8001a71c 00 00 c4 8c lw r4,0x0(r6)
8001a720 21 18 e5 00 addu v1,r7,r5
8001a724 25 10 64 00 or v0,v1,r4
8001a728 03 00 42 30 andi v0,v0,0x3
8001a72c 16 00 40 10 beq v0,zero,LAB_8001a788
8001a730 30 00 62 24 _addiu v0,v1,0x30
LAB_8001a734 XREF[1]: 8001a778(j)
8001a734 03 00 6f 88 lwl t7,0x3(v1)
8001a738 00 00 6f 98 lwr t7,0x0(v1)=>DAT_1f800348 = ??
8001a73c 07 00 78 88 lwl t8,0x7(v1)
8001a740 04 00 78 98 lwr t8,0x4(v1)=>DAT_1f80034c = ??
8001a744 0b 00 79 88 lwl t9,0xb(v1)
8001a748 08 00 79 98 lwr t9,0x8(v1)=>DAT_1f800350 = ??
8001a74c 0f 00 6d 88 lwl t5,0xf(v1)
8001a750 0c 00 6d 98 lwr t5,0xc(v1)=>DAT_1f800354 = ??
8001a754 03 00 8f a8 swl t7,0x3(r4)
8001a758 00 00 8f b8 swr t7,0x0(r4)
8001a75c 07 00 98 a8 swl t8,0x7(r4)
8001a760 04 00 98 b8 swr t8,0x4(r4)
8001a764 0b 00 99 a8 swl t9,0xb(r4)
8001a768 08 00 99 b8 swr t9,0x8(r4)
8001a76c 0f 00 8d a8 swl t5,0xf(r4)
8001a770 0c 00 8d b8 swr t5,0xc(r4)
8001a774 10 00 63 24 addiu v1,v1,0x10
8001a778 ee ff 62 14 bne v1,v0,LAB_8001a734
8001a77c 10 00 84 24 _addiu r4,r4,0x10
8001a780 ed 69 00 08 j LAB_8001a7b4
8001a784 00 00 00 00 _nop
LAB_8001a788 XREF[2]: 8001a72c(j), 8001a7ac(j)
8001a788 00 00 6f 8c lw t7,0x0(v1)=>DAT_1f800348 = ??
8001a78c 04 00 78 8c lw t8,0x4(v1)=>DAT_1f80034c = ??
8001a790 08 00 79 8c lw t9,0x8(v1)=>DAT_1f800350 = ??
8001a794 0c 00 6d 8c lw t5,0xc(v1)=>DAT_1f800354 = ??
8001a798 00 00 8f ac sw t7,0x0(r4)
8001a79c 04 00 98 ac sw t8,0x4(r4)
8001a7a0 08 00 99 ac sw t9,0x8(r4)
8001a7a4 0c 00 8d ac sw t5,0xc(r4)
8001a7a8 10 00 63 24 addiu v1,v1,0x10
8001a7ac f6 ff 62 14 bne v1,v0,LAB_8001a788
8001a7b0 10 00 84 24 _addiu r4,r4,0x10
LAB_8001a7b4
last4BytesCopy: XREF[1]: 8001a780(j)
8001a7b4 03 00 6f 88 lwl t7,0x3(v1)
8001a7b8 00 00 6f 98 lwr t7,0x0(v1)=>DAT_1f800358 = ??
8001a7bc 07 00 78 88 lwl t8,0x7(v1)
8001a7c0 04 00 78 98 lwr t8,0x4(v1)=>DAT_1f80035c = ??
8001a7c4 03 00 8f a8 swl t7,0x3(r4)
8001a7c8 00 00 8f b8 swr t7,0x0(r4)
8001a7cc 07 00 98 a8 swl t8,0x7(r4)
8001a7d0 04 00 98 b8 swr t8,0x4(r4)
;UPPER/LOWER COMMAND LOOP
8001a7d4 44 00 e7 24 addiu r7,r7,0x44
8001a7d8 01 00 08 25 addiu t0,t0,0x1
8001a7dc 02 00 02 2d sltiu v0,t0,0x2
8001a7e0 bf ff 40 14 bne v0,zero,LAB_8001a6e0
8001a7e4 04 00 c6 24 _addiu r6,r6,0x4
8001a7e8 10 00 a4 8f lw r4,local_40(sp)
8001a7ec 18 00 23 8d lw v1,0x18(t1)
8001a7f0 00 00 82 8c lw v0,0x0(r4)
8001a7f4 00 00 63 8c lw v1,0x0(v1)
8001a7f8 24 10 4a 00 and v0,v0,t2
8001a7fc 24 18 70 00 and v1,v1,s0
8001a800 25 10 43 00 or v0,v0,v1
8001a804 00 00 82 ac sw v0,0x0(r4)
8001a808 18 00 24 8d lw r4,0x18(t1)
8001a80c 10 00 a3 8f lw v1,local_40(sp)
8001a810 00 00 82 8c lw v0,0x0(r4)
8001a814 24 18 70 00 and v1,v1,s0
8001a818 24 10 4a 00 and v0,v0,t2
8001a81c 25 10 43 00 or v0,v0,v1
8001a820 00 00 82 ac sw v0,0x0(r4)
8001a824 14 00 a4 8f lw r4,local_3c(sp)
8001a828 10 00 a3 8f lw v1,local_40(sp)
8001a82c 00 00 82 8c lw v0,0x0(r4)
8001a830 00 00 63 8c lw v1,0x0(v1)
8001a834 24 10 4a 00 and v0,v0,t2
8001a838 24 18 70 00 and v1,v1,s0
8001a83c 25 10 43 00 or v0,v0,v1
8001a840 00 00 82 ac sw v0,0x0(r4)
8001a844 10 00 a4 8f lw r4,local_40(sp)
8001a848 14 00 a3 8f lw v1,local_3c(sp)
8001a84c 00 00 82 8c lw v0,0x0(r4)
8001a850 24 18 70 00 and v1,v1,s0
8001a854 24 10 4a 00 and v0,v0,t2
8001a858 25 10 43 00 or v0,v0,v1
8001a85c 00 00 82 ac sw v0,0x0(r4)
8001a860 14 00 a2 8f lw v0,local_3c(sp)
8001a864 01 00 52 26 addiu s2,s2,0x1
8001a868 18 00 22 ad sw v0,0x18(t1)
8001a86c 02 00 42 2e sltiu v0,s2,0x2
8001a870 6e ff 40 14 bne v0,zero,LAB_8001a62c
8001a874 04 00 29 25 _addiu t1,t1,0x4
X COORD SHIFT (+12)
8001a878 a8 00 82 97 lhu v0,0xa8(gp)=>DAT_8007ca18 ;LOAD INIT X
8001a87c 08 00 63 96 lhu v1,0x8(s3)=>DAT_1f8003d8 ;LOAD LAST X = ??
8001a880 0c 00 42 24 addiu v0,v0,0xc
8001a884 21 18 62 00 addu v1,v1,v0
8001a888 08 00 63 a6 sh v1,0x8(s3)=>DAT_1f8003d8 = ??
r2 = current charDMACount
8001a88c 04 00 a2 96 lhu v0,0x4(s5)
8001a890 00 00 00 00 nop
8001a894 01 00 42 24 addiu v0,v0,0x1
8001a898 04 00 a2 a6 sh v0,0x4(s5)
8001a89c 00 00 84 96 lhu r4,0x0(s4)
8001a8a0 00 00 00 00 nop
8001a8a4 00 10 82 2c sltiu v0,r4,0x1000
8001a8a8 57 ff 40 14 bne v0,zero,LAB_8001a608 IF r4<1000 - GOTO NEXT CHAR
8001a8ac 02 00 94 26 _addiu s4,s4,0x2
LAB_8001a8b0 TEXT END XREF[1]: 8001a5ec(j)
8001a8b0 21 90 00 00 clear s2
8001a8b4 08 80 13 3c lui s3,0x8008
8001a8b8 68 ce 74 26 addiu s4,s3,-0x3198
8001a8bc ff 00 11 3c lui s1,0xff
8001a8c0 ff ff 31 36 ori s1,s1,0xffff
8001a8c4 21 80 a0 02 move s0,s5
8001a8c8 21 28 00 00 clear r5
LAB_8001a8cc XREF[1]: 8001a924(j)
8001a8cc 01 00 06 24 li r6,0x1
8001a8d0 21 90 46 02 addu s2,s2,r6
8001a8d4 00 80 02 3c lui v0,0x8000
8001a8d8 00 ff 04 3c lui r4,0xff00
8001a8dc 68 ce 63 8e lw v1,-0x3198(s3)=>DMA_NEXT_FREE_CHAIN_8007ce68 = ??
8001a8e0 9c 00 87 8f lw r7,0x9c(gp)=>DAT_8007ca0c
8001a8e4 24 18 71 00 and v1,v1,s1
8001a8e8 25 18 62 00 or v1,v1,v0
8001a8ec 30 00 03 ae sw v1,0x30(s0)
8001a8f0 68 ce 62 8e lw v0,-0x3198(s3)=>DMA_NEXT_FREE_CHAIN_8007ce68 = ??
8001a8f4 00 00 63 8c lw v1,0x0(v1)
8001a8f8 24 10 44 00 and v0,v0,r4
8001a8fc 24 18 71 00 and v1,v1,s1
8001a900 04 00 84 8e lw r4,0x4(s4)=>DMA_COUNTER_8007ce6c = ??
8001a904 25 10 43 00 or v0,v0,v1
8001a908 68 ce 62 ae sw v0,-0x3198(s3)=>DMA_NEXT_FREE_CHAIN_8007ce68 = ??
8001a90c ff ff 84 24 addiu r4,r4,-0x1
8001a910 04 00 84 ae sw r4,0x4(s4)=>DMA_COUNTER_8007ce6c = ??
8001a914 30 00 04 8e lw r4,0x30(s0)
8001a918 3f 5e 01 0c jal SetDrawTPage void SetDrawTPage(DR_TPAGE * p, int dfe, int dtd, int tpage)
8001a91c 04 00 10 26 _addiu s0,s0,0x4
8001a920 02 00 42 2e sltiu v0,s2,0x2
8001a924 e9 ff 40 14 bne v0,zero,LAB_8001a8cc
8001a928 21 28 00 00 _clear r5
8001a92c 21 10 a0 02 move v0,s5
8001a930 48 00 bf 8f lw ra,local_8(sp)
8001a934 44 00 b7 8f lw s7,local_c(sp)
8001a938 40 00 b6 8f lw s6,local_10(sp)
8001a93c 3c 00 b5 8f lw s5,local_14(sp)
8001a940 38 00 b4 8f lw s4,local_18(sp)
8001a944 34 00 b3 8f lw s3,local_1c(sp)
8001a948 30 00 b2 8f lw s2,local_20(sp)
8001a94c 2c 00 b1 8f lw s1,local_24(sp)
8001a950 28 00 b0 8f lw s0,local_28(sp)
8001a954 08 00 e0 03 jr ra