mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-07-23 06:09:50 -06:00
ROM dissasm "refresh" + RE + small fixes
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@4938 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
@ -3224,15 +3224,15 @@ void 0f92_Int7_Handler() {
|
||||
}
|
||||
|
||||
// action jump table
|
||||
0f97 0fa9 lris $AC1.M, #0xa9 // Action 0 - restart
|
||||
0f98 0fac lris $AC1.M, #0xac // Action 1 - wait for 10 mails and dump memory?
|
||||
0f99 0fe4 lris $AC1.M, #0xe4 // Action 2 - soft reset
|
||||
0f9a 0fe7 lris $AC1.M, #0xe7 // Action 3 - jump back to main loop
|
||||
0f97 0fa9 // Action 0 - restart
|
||||
0f98 0fac // Action 1 - dump DRAM and jump into iROM where new IRAM and DRAM can be uploaded
|
||||
0f99 0fe4 // Action 2 - soft reset
|
||||
0f9a 0fe7 // Action 3 - jump back to main loop
|
||||
|
||||
// called at AXList end; wait for a last mail and take an action
|
||||
// Note: the same thing can be found in Zelda ucode. It's called after DsyncFrame.
|
||||
// Probably debugging stuff.
|
||||
|
||||
{
|
||||
0f9b 8e00 set16
|
||||
0f9c 8100 clr $ACC0
|
||||
0f9d 8900 clr $ACC1
|
||||
@ -3245,10 +3245,16 @@ void 0f92_Int7_Handler() {
|
||||
0fa6 1c7f mrr $AR3, $AC1.M
|
||||
0fa7 176f jmpr $AR3 // take the action!
|
||||
0fa8 0021 halt
|
||||
|
||||
}
|
||||
|
||||
//ACTION 0 (0xCDD10000)
|
||||
{
|
||||
0fa9 029f 0037 jmp 0037_Unk_Restart()
|
||||
0fab 0021 halt
|
||||
|
||||
0fab 0021 halt
|
||||
}
|
||||
|
||||
//ACTION 1 (0xCDD10001)
|
||||
{
|
||||
0fac 8100 clr $ACC0
|
||||
0fad 8900 clr $ACC1
|
||||
0fae 02bf 0fea call 0x0fea
|
||||
@ -3259,12 +3265,13 @@ void 0f92_Int7_Handler() {
|
||||
0fb6 27ff lrs $AC1.M, @CMBL
|
||||
0fb7 2ece srs @DSMAH, $AC0.M
|
||||
0fb8 2ccf srs @DSMAL, $AC0.L
|
||||
0fb9 16c9 0001 si @DSCR, #0x0001
|
||||
0fb9 16c9 0001 si @DSCR, #0x0001 // DMEM->CPU
|
||||
0fbb 2fcd srs @DSPA, $AC1.M
|
||||
0fbc 2dcb srs @DSBL, $AC1.L
|
||||
0fbd 8100 clr $ACC0
|
||||
0fbe 8900 clr $ACC1
|
||||
0fbf 02bf 0fea call 0x0fea
|
||||
//prepare addr-s/length/dsp-PC for new IRAM/DRAM
|
||||
0fc1 24ff lrs $AC0.L, @CMBL
|
||||
0fc2 1c9e mrr $IX0, $AC0.M
|
||||
0fc3 1cbc mrr $IX1, $AC0.L
|
||||
@ -3286,25 +3293,39 @@ void 0f92_Int7_Handler() {
|
||||
0fd8 21ff lrs $AX1.L, @CMBL
|
||||
0fd9 02bf 0fea call 0x0fea
|
||||
0fdb 23ff lrs $AX1.H, @CMBL
|
||||
//
|
||||
0fdc 26c9 lrs $AC0.M, @DSCR
|
||||
0fdd 02a0 0004 andf $AC0.M, #0x0004
|
||||
0fdf 029c 0fdc jlnz 0x0fdc
|
||||
0fe1 029f 80b5 jmp 0x80b5
|
||||
0fe3 0021 halt
|
||||
0fe1 029f 80b5 jmp 0x80b5 // 80b5_BootUcode()
|
||||
0fe3 0021 halt
|
||||
}
|
||||
|
||||
//ACTION 2 (0xCDD10002)
|
||||
{
|
||||
0fe4 029f 8000 jmp 0x8000
|
||||
0fe6 0021 halt
|
||||
}
|
||||
|
||||
//ACTION 3 (0xCDD10003)
|
||||
{
|
||||
0fe7 029f 004c jmp 0x004c
|
||||
0fe9 0021 halt
|
||||
}
|
||||
|
||||
{
|
||||
0fea 26fe lrs $AC0.M, @CMBH
|
||||
0feb 02c0 8000 andcf $AC0.M, #0x8000
|
||||
0fed 029c 0fea jlnz 0x0fea
|
||||
0fef 02df ret
|
||||
}
|
||||
|
||||
{
|
||||
0ff0 27fe lrs $AC1.M, @CMBH
|
||||
0ff1 03c0 8000 andcf $AC1.M, #0x8000
|
||||
0ff3 029c 0ff0 jlnz 0x0ff0
|
||||
0ff5 02df ret
|
||||
}
|
||||
|
||||
0ff6 0000 nop
|
||||
0ff7 0000 nop
|
||||
|
1985
docs/DSP/DSP_UC_IPL_CB22D5C7.txt
Normal file
1985
docs/DSP/DSP_UC_IPL_CB22D5C7.txt
Normal file
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user