popoさんにpmfファイルを頂きましたので、適当にありもののEBOOT.PBP(体験版ゲーム認証無し)にpbpmakerを使って突っ込んでみました。
フリーズ->電源断は再現性ありです。
(ブログのメールは見落としてました m( .. )m )
どうもscePaf_Moduleが関係しているようです。以下のように複数スレッドでエラー出る時もありましたが、最初のBus error (data)だけの時もありました。なのでディスアセンブルは 0x08951B68 からだけ取りました。
相手がEBOOT.PBPでもあり、どうやってレジスタコントロールするのか含めてかなり遠いなぁという印象です。
- コード: 全て選択
host0:/> Exception - Bus error (data)
Thread ID - 0x05001D6D
Th Name - movie_player
Module ID - 0x03E9EA1F
Mod Name - scePaf_Module
EPC - 0x08951B68
Cause - 0x1000001C
BadVAddr - 0x00000000
Status - 0x00088612
zr:0x00000000 at:0xDEADBEEF v0:0x093B81A8 v1:0x0A16BCF4
a0:0x0913EC00 a1:0x08A12178 a2:0x09130578 a3:0x0003B780
t0:0x09128428 t1:0x089AA760 t2:0x0916BCF8 t3:0x00FFFFFC
t4:0xDEADBEEF t5:0xDEADBEEF t6:0xDEADBEEF t7:0xDEADBEEF
s0:0x00000001 s1:0x089AA760 s2:0x0913EC00 s3:0x089B0000
s4:0x00000003 s5:0x00000000 s6:0x00000001 s7:0xFFFFFFFC
t8:0xDEADBEEF t9:0xDEADBEEF k0:0x09FE8900 k1:0x00000000
gp:0x089AB120 sp:0x09FE87D0 fp:0x00000209 ra:0x0895256C
0x08951B68: 0x8C620004 '..b.' - lw $v0, 4($v1)
Exception - Address store
Thread ID - 0x04FFD825
Th Name - ScePafJob
Module ID - 0x03E9EA1F
Mod Name - scePaf_Module
EPC - 0x0895151C
Cause - 0x10000014
BadVAddr - 0x756C7067
Status - 0x20088612
zr:0x00000000 at:0x47C35000 v0:0x00000001 v1:0x08A12188
a0:0x00000000 a1:0x756C705F a2:0x08A12180 a3:0x00000010
t0:0x00000001 t1:0x00000001 t2:0x00000000 t3:0x00000000
t4:0x00000000 t5:0x00000000 t6:0x00000000 t7:0x00000000
s0:0x089AA760 s1:0x089AA7A4 s2:0x08A12178 s3:0x00000001
s4:0x089B0000 s5:0x089AA760 s6:0x00000002 s7:0xDEADBEEF
t8:0x08AA2840 t9:0x00000000 k0:0x09FEE900 k1:0x00000000
gp:0x089AB120 sp:0x09FEE7C0 fp:0x09FEE8B0 ra:0x08952378
0x0895151C: 0xACB10008 '....' - sw $s1, 8($a1)
Exception - Bus error (data)
Thread ID - 0x04DB1719
Th Name - SCE_VSH_GRAPHICS
Module ID - 0x03E9EA1F
Mod Name - scePaf_Module
EPC - 0x089516D4
Cause - 0x1000001C
BadVAddr - 0x756C7067
Status - 0x60088612
zr:0x00000000 at:0x3F800000 v0:0xFFFFBFFF v1:0x00000044
a0:0x0000001F a1:0x00000200 a2:0x00020000 a3:0x000003F0
t0:0x00000240 t1:0x089AA79C t2:0x00000000 t3:0x00000000
t4:0x08A12020 t5:0x08A12030 t6:0x08A12040 t7:0x08A12050
s0:0x00004000 s1:0x089AA904 s2:0x00000000 s3:0xF0004052
s4:0x00000001 s5:0x089AA760 s6:0x089AA764 s7:0x089AA860
t8:0x08AA2680 t9:0xDEADBEEF k0:0x09FFEB00 k1:0x00000000
gp:0x09C61690 sp:0x09FFE860 fp:0x00000004 ra:0x08951758
0x089516D4: 0x8E500004 '..P.' - lw $s0, 4($s2)
0x08951B68: 0x8C620004 '..b.' - lw $v0, 4($v1)
0x08951B6C: 0x30420001 '..B0' - andi $v0, $v0, 0x1
0x08951B70: 0x14400006 '..@.' - bnez $v0, 0x08951B8C
0x08951B74: 0xAD4B0004 '..K.' - sw $t3, 4($t2)
0x08951B78: 0x8D45000C '..E.' - lw $a1, 12($t2)
0x08951B7C: 0x8D480008 '..H.' - lw $t0, 8($t2)
0x08951B80: 0x00EB3821 '!8..' - addu $a3, $a3, $t3
0x08951B84: 0xACA80008 '....' - sw $t0, 8($a1)
0x08951B88: 0xAD05000C '....' - sw $a1, 12($t0)
0x08951B8C: 0x2525003C '<.%%' - addiu $a1, $t1, 60
0x08951B90: 0x8CA80008 '....' - lw $t0, 8($a1)
0x08951B94: 0x00C71821 '!...' - addu $v1, $a2, $a3
0x08951B98: 0x34E20001 '...4' - ori $v0, $a3, 0x1
0x08951B9C: 0xACC5000C '....' - sw $a1, 12($a2)
0x08951BA0: 0xACC80008 '....' - sw $t0, 8($a2)
0x08951BA4: 0xACC20004 '....' - sw $v0, 4($a2)
0x08951BA8: 0xAC670000 '..g.' - sw $a3, 0($v1)
0x08951BAC: 0xAD06000C '....' - sw $a2, 12($t0)
0x08951BB0: 0xACA60008 '....' - sw $a2, 8($a1)
0x08951BB4: 0x3C020001 '...<' - lui $v0, 0x1
0x08951BB8: 0x3442FFFF '..B4' - ori $v0, $v0, 0xFFFF
0x08951BBC: 0x0047102B '+.G.' - sltu $v0, $v0, $a3
0x08951BC0: 0x1040FFD3 '..@.' - beqz $v0, 0x08951B10
0x08951BC4: 0x8FBF0000 '....' - lw $ra, 0($sp)
0x08951BC8: 0x8D220004 '..".' - lw $v0, 4($t1)
0x08951BCC: 0x30420002 '..B0' - andi $v0, $v0, 0x2
0x08951BD0: 0x1040FFCF '..@.' - beqz $v0, 0x08951B10
0x08951BD4: 0x00000000 '....' - nop
0x08951BD8: 0x0E2546FF '.F%.' - jal 0x08951BFC
0x08951BDC: 0x01202021 '! .' - move $a0, $t1
0x08951BE0: 0x0A2546C4 '.F%.' - j 0x08951B10
0x08951BE4: 0x8FBF0000 '....' - lw $ra, 0($sp)
0x08951BE8: 0x00EB3821 '!8..' - addu $a3, $a3, $t3
0x08951BEC: 0x34E20001 '...4' - ori $v0, $a3, 0x1
0x08951BF0: 0xACC20004 '....' - sw $v0, 4($a2)
0x08951BF4: 0x0A2546ED '.F%.' - j 0x08951BB4
0x08951BF8: 0xAD260034 '4.&.' - sw $a2, 52($t1)
0x08951BFC: 0x27BDFFF0 '...'' - addiu $sp, $sp, -16
0x08951C00: 0xAFBF0000 '....' - sw $ra, 0($sp)
0x08951C04: 0x8C830004 '....' - lw $v1, 4($a0)
0x08951C08: 0x1060003E '>.`.' - beqz $v1, 0x08951D04
0x08951C0C: 0x00805821 '!X..' - move $t3, $a0
0x08951C10: 0x7C030844 'D..|' - ins $v1, $zr, 1, 1
0x08951C14: 0x000310C2 '....' - srl $v0, $v1, 3
0x08951C18: 0xAC830004 '....' - sw $v1, 4($a0)
0x08951C1C: 0x00021080 '....' - sll $v0, $v0, 2
0x08951C20: 0x00826821 '!h..' - addu $t5, $a0, $v0
0x08951C24: 0x2489003C '<..$' - addiu $t1, $a0, 60
0x08951C28: 0x248C0008 '...$' - addiu $t4, $a0, 8
0x08951C2C: 0x8D850000 '....' - lw $a1, 0($t4)
0x08951C30: 0x10A0002B '+...' - beqz $a1, 0x08951CE0
0x08951C34: 0x01801021 '!...' - move $v0, $t4
0x08951C38: 0xAD800000 '....' - sw $zr, 0($t4)
0x08951C3C: 0x8CA20004 '....' - lw $v0, 4($a1)
0x08951C40: 0x8CAA0008 '....' - lw $t2, 8($a1)
0x08951C44: 0x00403021 '!0@.' - move $a2, $v0
0x08951C48: 0x7C060004 '...|' - ins $a2, $zr, 0, 1
0x08951C4C: 0x00A62021 '! ..' - addu $a0, $a1, $a2
0x08951C50: 0x8C870004 '....' - lw $a3, 4($a0)
0x08951C54: 0x30420001 '..B0' - andi $v0, $v0, 0x1
0x08951C58: 0x7C070804 '...|' - ins $a3, $zr, 0, 2
0x08951C5C: 0x14400008 '..@.' - bnez $v0, 0x08951C80
0x08951C60: 0x00874021 '!@..' - addu $t0, $a0, $a3
0x08951C64: 0x8CA20000 '....' - lw $v0, 0($a1)
0x08951C68: 0x00A22823 '#(..' - subu $a1, $a1, $v0
0x08951C6C: 0x8CA30008 '....' - lw $v1, 8($a1)
0x08951C70: 0x00C23021 '!0..' - addu $a2, $a2, $v0
0x08951C74: 0x8CA2000C '....' - lw $v0, 12($a1)
0x08951C78: 0xAC430008 '..C.' - sw $v1, 8($v0)
0x08951C7C: 0xAC62000C '..b.' - sw $v0, 12($v1)
0x08951C80: 0x8D620034 '4.b.' - lw $v0, 52($t3)
0x08951C84: 0x5082001B '...P' - beql $a0, $v0, 0x08951CF4
0x08951C88: 0x00C73021 '!0..' - addu $a2, $a2, $a3
0x08951C8C: 0x8D020004 '....' - lw $v0, 4($t0)
0x08951C90: 0x30420001 '..B0' - andi $v0, $v0, 0x1
0x08951C94: 0x14400006 '..@.' - bnez $v0, 0x08951CB0
0x08951C98: 0xAC870004 '....' - sw $a3, 4($a0)
0x08951C9C: 0x8C82000C '....' - lw $v0, 12($a0)
0x08951CA0: 0x8C830008 '....' - lw $v1, 8($a0)
0x08951CA4: 0x00C73021 '!0..' - addu $a2, $a2, $a3
0x08951CA8: 0xAC430008 '..C.' - sw $v1, 8($v0)
0x08951CAC: 0xAC62000C '..b.' - sw $v0, 12($v1)
0x08951CB0: 0x8D220008 '..".' - lw $v0, 8($t1)
0x08951CB4: 0x00A61821 '!...' - addu $v1, $a1, $a2
0x08951CB8: 0x34C40001 '...4' - ori $a0, $a2, 0x1
0x08951CBC: 0xAD250008 '..%.' - sw $a1, 8($t1)
0x08951CC0: 0xAC45000C '..E.' - sw $a1, 12($v0)
0x08951CC4: 0xAC660000 '..f.' - sw $a2, 0($v1)
0x08951CC8: 0xACA40004 '....' - sw $a0, 4($a1)
0x08951CCC: 0xACA20008 '....' - sw $v0, 8($a1)
0x08951CD0: 0xACA9000C '....' - sw $t1, 12($a1)
0x08951CD4: 0x1540FFD9 '..@.' - bnez $t2, 0x08951C3C
0x08951CD8: 0x01402821 '!(@.' - move $a1, $t2
0x08951CDC: 0x01801021 '!...' - move $v0, $t4
0x08951CE0: 0x144DFFD2 '..M.' - bne $v0, $t5, 0x08951C2C
0x08951CE4: 0x258C0004 '...%' - addiu $t4, $t4, 4
0x08951CE8: 0x8FBF0000 '....' - lw $ra, 0($sp)
0x08951CEC: 0x03E00008 '....' - jr $ra
0x08951CF0: 0x27BD0010 '...'' - addiu $sp, $sp, 16
0x08951CF4: 0x34C20001 '...4' - ori $v0, $a2, 0x1