summaryrefslogtreecommitdiff
path: root/home/map.asm
diff options
context:
space:
mode:
authorPikalaxALT <pikalaxalt@gmail.com>2018-06-11 11:25:14 -0400
committerPikalaxALT <pikalaxalt@gmail.com>2018-06-11 11:25:14 -0400
commit8f9ee9325fb7df11e8c97668a670f51e3e10574f (patch)
tree998683bf9d7ffcf3afc94a232ee8b60d4bcb89b6 /home/map.asm
parent69d6b38f0ba52ee14b3de9aa926e38e400e03d78 (diff)
More functions putatively related to the map and overworld
Diffstat (limited to 'home/map.asm')
-rw-r--r--home/map.asm235
1 files changed, 234 insertions, 1 deletions
diff --git a/home/map.asm b/home/map.asm
index 643ba1a..c07bc96 100644
--- a/home/map.asm
+++ b/home/map.asm
@@ -1538,6 +1538,202 @@ FillEastConnectionStrip:: ; 2a60
jr nz, .loop
ret
+Function2a85::
+.asm_2a85: ; 00:2a85
+ call LoadMap
+ call Function2a8d
+ jr .asm_2a85
+
+Function2a8d:: ; 00:2a8d
+ push hl
+ push de
+ push bc
+ push af
+
+ ld a, [wd637]
+ and $f
+ add a
+ ld e, a
+ ld d, $0
+ ld hl, .Pointers
+ add hl, de
+ add hl, de
+
+ ld a, [hli]
+ call Bankswitch
+
+ inc hl
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ld de, .Return
+ push de
+ jp hl
+
+.Return: ; 00:2aac
+ pop af
+ pop bc
+ pop de
+ pop hl
+ ret
+
+.Pointers: ; 00:2ab1
+ dbbw $00, $55, Function2ae5
+ dbbw $00, $55, Function2b52
+ dbbw $00, $55, Function2b77
+ dbbw $0e, $33, Function3904
+ dbbw $00, $55, Function2b39
+ dbbw $0e, $33, Function391f
+ dbbw $00, $33, Function2b78
+ dbbw $00, $33, Function2b78
+ dbbw $0e, $33, Function3904
+ dbbw $00, $55, Function2b79
+ dbbw $00, $55, Function2b87
+ dbbw $0e, $33, Function3920
+ dbbw $05, $33, Function14777
+
+Function2ae5::
+.asm_2ae5: ; 00:2ae5
+ ld hl, wJoypadFlags
+ set 4, [hl]
+ set 6, [hl]
+ call UpdateTime
+ call TimeOfDayPals
+ ld hl, wJoypadFlags
+ res 4, [hl]
+ res 6, [hl]
+ call GetJoypad
+ call Function2be5
+ ld hl, wc5ed
+ bit 7, [hl]
+ res 7, [hl]
+ ret nz
+ call Function38e3
+ ret nz
+ call OverworldStartButtonCheck
+ ret nz
+ ld hl, PlaceWaitingText
+ ld a, $3
+ call FarCall_hl
+ ldh a, [hMapEntryMethod]
+ and a
+ ret nz
+ call Function2c4a
+ jr nc, .asm_2ae5
+ callba Function824c
+ ld a, [wc5ed]
+ bit 6, a
+ jr nz, .asm_2ae5
+ call CheckMovingOffEdgeOfMap
+ ret c
+ call WarpCheck
+ ret c
+ jr .asm_2ae5
+
+Function2b39::
+ ld hl, wJoypadFlags
+ res 4, [hl]
+ res 6, [hl]
+ ld hl, wce63
+ res 6, [hl]
+ res 7, [hl]
+ ld hl, wVramState
+ res 7, [hl]
+ ld a, $0
+ call WriteIntod637
+ ret
+
+Function2b52::
+.asm_2b52: ; 00:2b52
+ call UpdateTime
+ ld a, [wVramState]
+ bit 7, a
+ jr z, Function2b39
+ ldh a, [hMapEntryMethod]
+ and a
+ ret nz
+ call Function2c4a
+ jr nc, .asm_2b52
+ callba Function824c
+ call CheckMovingOffEdgeOfMap
+ ret c
+ call WarpCheck
+ ret c
+ jr .asm_2b52
+
+Function2b77::
+ ret
+
+Function2b78::
+ ret
+
+Function2b79::
+ callab Functionfce3e
+ ld a, $4
+ call WriteIntod637
+ ret
+
+Function2b87::
+.asm_2b87: ; 00:2b87
+ call UpdateTime
+ call GetJoypad
+ call OverworldStartButtonCheck
+ ret nz
+ callab Functionc000
+ call Function2ba8
+ jr nc, .asm_2b87
+ callba Function824c
+ jr .asm_2b87
+
+Function2ba8:: ; 00:2ba8
+ ldh a, [hROMBank]
+ push af
+ ld a, $1
+ call Bankswitch
+ call Function50b9
+ call Function18a0
+ ld a, $3
+ call Bankswitch
+ call Functiond6e4
+ ld a, $1
+ call Bankswitch
+ call _UpdateSprites
+ call DelayFrame
+ call Function2075
+ ld hl, wd14f
+ set 2, [hl]
+ call DelayFrame
+ pop af
+ call Bankswitch
+ and a
+ ld a, [wcb6e]
+ bit 5, a
+ ret z
+ bit 6, a
+ jr z, Function2ba8
+ scf
+ ret
+
+Function2be5:: ; 00:2be5
+ ld a, [wce63]
+ bit 7, a
+ ret nz
+ ld a, [wMapGroup]
+ ld b, a
+ ld a, [wMapId]
+ ld c, a
+ call SwitchToAnyMapBank
+ call QueueMapTextSubroutine
+ ld hl, wMapScriptPtr
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ld de, .Return
+ push de
+ jp hl
+
+.Return: ; 00:2c04
+ ret
SECTION "LoadTilesetGFX", ROM0[$2D26]
LoadTilesetGFX:: ; 2d26
@@ -1892,8 +2088,45 @@ GetBlockLocation:: ; 2ef8
add hl, bc
ret
+GetFacingSignpost:: ; 00:2f1d
+ call GetFacingTileCoord
+ ld b, a
+ ld a, d
+ sub $4
+ ld d, a
+ ld a, e
+ sub $4
+ ld e, a
+ ld a, [wCurrMapSignCount]
+ and a
+ ret z
+ ld c, a
+ ld hl, wCurrMapSigns
+.asm_2f32: ; 00:2f32
+ ld a, [hli]
+ cp e
+ jr nz, .asm_2f3e
+ ld a, [hli]
+ cp d
+ jr nz, .asm_2f3f
+ ld a, [hli]
+ cp b ; useless comparison
+ jr .asm_2f46
+
+.asm_2f3e: ; 00:2f3e
+ inc hl
+.asm_2f3f: ; 00:2f3f
+ inc hl
+ inc hl
+ dec c
+ jr nz, .asm_2f32
+ xor a
+ ret
+
+.asm_2f46: ; 00:2f46
+ scf
+ ret
-SECTION "LoadTileset", ROM0[$2F48]
LoadTileset:: ; 2f48
push hl
push bc