diff options
Diffstat (limited to 'oncology/dpfhack_display/src/p_start_pearl.s')
-rw-r--r-- | oncology/dpfhack_display/src/p_start_pearl.s | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/oncology/dpfhack_display/src/p_start_pearl.s b/oncology/dpfhack_display/src/p_start_pearl.s new file mode 100644 index 00000000..dde8ef9a --- /dev/null +++ b/oncology/dpfhack_display/src/p_start_pearl.s @@ -0,0 +1,32 @@ +; Patch for startup (mod37 on pearl) + .include 'dpf.inc' + .include 'dpf_int.inc' + .include 'hack.inc' + + .area HOME (CODE) + .area BANK0 (CODE, ABS) + + .org 0x1330 + + orl wdtcon,#0x20 + mov a,i_G_f + jbc acc.3, usbact ; If this bit is 1, USB is plugged in. + sjmp continue +usbact: + ljmp hack + + .org 0x133c +continue: + + .org 0x15b0 +hack: + clr ea ; No IRQ + mov dptr, #(0x196a - 0x800) + mov a, #cloned_jumptable_offset >> 16 + movx @dptr, a + + ; Jump into own firmware: + mov a,#(54 - 1) + mov dptr,#entry_addr + ljmp tramp_jmp + |