summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRangi <remy.oukaour+rangi42@gmail.com>2020-09-18 16:57:30 -0400
committerRangi <remy.oukaour+rangi42@gmail.com>2020-09-18 16:57:30 -0400
commit742f67f6f5715cbf426498ddc58370ca1fb31977 (patch)
tree575ca60b3bf5a308fd63c2600da701f91a5bcb8f
parent93a5d2441575cf8570415df0eb24fa074c13b6f3 (diff)
Disassemble more of bank 0
-rw-r--r--shim.sym6
-rw-r--r--source/bank_00.asm60
2 files changed, 64 insertions, 2 deletions
diff --git a/shim.sym b/shim.sym
index 7bcee8d..13c1908 100644
--- a/shim.sym
+++ b/shim.sym
@@ -10,7 +10,6 @@
00:162f lcd_function_a
00:1776 lcd_function_b
-00:0df5 function_00_0df5
00:0ecf function_00_0ecf
00:0f20 function_00_0f20
00:103c function_00_103c
@@ -53,6 +52,10 @@
09:5a50 function_09_5a50
+19:4000 function_19_4000
+19:40f0 function_19_40f0
+19:4180 function_19_4180
+
22:47e2 function_22_47e2
22:61e8 function_22_61e8
@@ -102,6 +105,7 @@
00:c100 w_c100
00:c300 w_c300
00:c301 w_c301
+00:c302 w_c302
00:c314 w_c314
00:c316 w_c316
00:c320 w_c320
diff --git a/source/bank_00.asm b/source/bank_00.asm
index 3d30cf5..5a543b6 100644
--- a/source/bank_00.asm
+++ b/source/bank_00.asm
@@ -1884,7 +1884,6 @@ farcall_a_hl::
pop_bank_rom
ret
-SECTION "function_00_0d58, etc", ROM0[$0d58]
function_00_0d58::
push hl
ldh a, [rLCDC]
@@ -2006,6 +2005,65 @@ function_00_0d91::
pop af
ret
+function_00_0df5::
+ push af
+ push bc
+ push de
+ push hl
+
+ ld a, [w_c301]
+ and a
+ jr nz, .skip
+ ld a, [w_c302]
+ and a
+ jr nz, .skip
+
+ ld a, [w_c35a]
+ ld [rROMB0], a
+ cp BANK(function_19_4180)
+ jr nz, .not_function_19_4180
+ call function_19_4180
+ jr .done
+.not_function_19_4180
+ call $4003 ; ???
+.done
+ ld a, [w_bank_rom]
+ ld [rROMB0], a
+
+.skip
+ pop hl
+ pop de
+ pop bc
+ pop af
+ ret
+
+function_00_0e22::
+ ld a, [w_c35a]
+ cp BANK(function_19_4000)
+ jr z, .not_bank_19
+ ld a, BANK(function_19_4000)
+ ld [w_c35a], a
+ ld [rROMB0], a
+ call function_19_4000
+ ld a, [w_bank_rom]
+ ld [rROMB0], a
+ ret
+
+.not_bank_19
+ ld a, $7e ; BANK(???)
+ ld [w_c35a], a
+ ld a, $0
+ call function_00_0d91
+ ret
+
+function_00_0e46::
+ ld a, BANK(function_19_40f0)
+ ld [rROMB0], a
+ call function_19_40f0
+ ld a, [w_bank_rom]
+ ld [rROMB0], a
+ ret
+
SECTION "mem functions", ROM0[$0f38]
; Zeroes out RAM
; Parameters: