summaryrefslogtreecommitdiff
path: root/engine
diff options
context:
space:
mode:
Diffstat (limited to 'engine')
-rwxr-xr-xengine/printer.asm343
1 files changed, 343 insertions, 0 deletions
diff --git a/engine/printer.asm b/engine/printer.asm
index 6218f6a7..7e6ae637 100755
--- a/engine/printer.asm
+++ b/engine/printer.asm
@@ -997,3 +997,346 @@ Func_e8e24: ; e8e24
call Func_0f3d
call Func_e8f3b
ret
+
+Func_e8e79: ; e8e79 (3a:4e79)
+ push af
+ push bc
+ push de
+ push hl
+ call StopAllMusic
+ ld a, [rIE]
+ push af
+ xor a
+ ld [rIF], a
+ ld a, $09
+ ld [rIE], a
+ call Func_e8783
+ ld a, $13
+ ld [$cae2], a
+ ld a, $1
+ ld [H_AUTOBGTRANSFERENABLED], a
+ call Func_e8efc
+ call Func_ea573
+.asm_e8e9c
+ ld a, [wOverworldMap]
+ bit 7, a
+ jr nz, .asm_e8eae
+ call Func_ea5d1
+ call Func_ea5b7
+ call DelayFrame
+ jr .asm_e8e9c
+
+.asm_e8eae
+ xor a
+ ld [wUnknownSerialFlag_d49a], a
+ ld [wUnknownSerialFlag_d49b], a
+ ld hl, wOAMBuffer + 32 * 4
+ ld bc, $0020
+ xor a
+ call FillMemory
+ xor a
+ ld [rIF], a
+ pop af
+ ld [rIE], a
+ pop hl
+ pop de
+ pop bc
+ pop af
+ ret
+
+Func_e8eca: ; e8eca (3a:4eca)
+ ld a, [hJoyHeld]
+ and B_BUTTON
+ jr nz, .asm_e8ed2
+ and a
+ ret
+
+.asm_e8ed2
+ ld a, [wOverworldMap]
+ cp $0c
+ jr nz, .asm_e8ef6
+.asm_e8ed9
+ ld a, [wUnknownSerialFlag_d49b]
+ and a
+ jr nz, .asm_e8ed9
+ ld a, $16
+ ld [wUnknownSerialFlag_d49b], a
+ ld a, $88
+ ld [rSB], a
+ ld a, $01
+ ld [rSC], a
+ ld a, $81
+ ld [rSC], a
+.asm_e8ef0
+ ld a, [wUnknownSerialFlag_d49b]
+ and a
+ jr nz, .asm_e8ef0
+.asm_e8ef6
+ ld a, $01
+ ld [hItemCounter], a
+ scf
+ ret
+
+Func_e8efc: ; e8efc (3a:4efc)
+ dr $e8efc,$e8f09
+Func_e8f09: ; e8f09 (3a:4f09)
+ dr $e8f09,$e8f16
+Func_e8f16: ; e8f16 (3a:4f16)
+ dr $e8f16,$e8f24
+Func_e8f24: ; e8f24 (3a:4f24)
+ dr $e8f24,$e8f3b
+Func_e8f3b: ; e8f3b (3a:4f3b)
+ dr $e8f3b,$e8f51
+Func_e8f51: ; e8f51 (3a:4f51)
+ dr $e8f51,$e8f82
+Func_e8f82: ; e8f82 (3a:4f82)
+ dr $e8f82,$e910a
+Func_e910a:
+ dr $e910a,$e925d
+
+Func_e925d:
+.asm_e925d
+ push bc
+ push hl
+.asm_e925f
+ ld a, [de]
+ inc de
+ ld [hli], a
+ dec c
+ jr nz, .asm_e925f
+ pop hl
+ ld bc, SCREEN_WIDTH
+ add hl, bc
+ pop bc
+ dec b
+ jr nz, .asm_e925d
+ ret
+
+Func_e926f:
+ ld de, wd496
+ coord hl, 7, 6
+ ld a, [de]
+ call Func_e927a
+ ld a, [de]
+Func_e927a:
+ ld c, a
+ swap a
+ and $f
+ add -10
+ ld [hli], a
+ ld a, c
+ and $f
+ add -10
+ ld [hli], a
+ dec de
+ ret
+
+SurfingPikachu2Graphics: INCBIN "gfx/surfing_pikachu_2.2bpp"
+
+Func_e988a:
+ xor a
+ ld [wBoxNumString], a
+ call ClearScreen
+ call Func_e99de
+ coord hl, 0, 0
+ ld bc, 11 * SCREEN_WIDTH
+ ld a, " "
+ call FillMemory
+ call Func_e99b9
+ call Func_e99a7
+ coord hl, 4, 4
+ ld de, String_e98db
+ call PlaceString
+ coord hl, 7, 6
+ ld de, String_e98e8
+ call PlaceString
+ coord hl, 11, 6
+ ld a, [wCurrentBoxNum]
+ and $7f
+ cp 9
+ jr c, .asm_e98cc
+ sub 9
+ ld [hl], "1"
+ inc hl
+ add "0"
+ jr .asm_e98ce
+
+.asm_e98cc
+ add "1"
+.asm_e98ce
+ ld [hl], a
+ coord hl, 4, 9
+ ld de, wBoxSpecies
+ ld c, $03
+ call Func_e994e
+ ret
+
+
+String_e98db: db "POKéMON LIST@"
+String_e98e8: db "BOX@"
+
+Func_e98ec:
+ call ClearScreen
+ call Func_e99de
+ call Func_e99b9
+ ld a, [wBoxDataStart]
+ cp 4
+ ret c
+ coord hl, 4, 0
+ ld de, wBoxSpecies + 3
+ ld c, 6
+ call Func_e994e
+ ret
+
+Func_e9907:
+ call ClearScreen
+ call Func_e99de
+ call Func_e99b9
+ ld a, [wBoxDataStart]
+ cp 10
+ ret c
+ coord hl, 4, 0
+ ld de, wBoxSpecies + 9
+ ld c, 6
+ call Func_e994e
+ ret
+
+Func_e9922:
+ call ClearScreen
+ call Func_e99de
+ call Func_e99b9
+ coord hl, 0, 15
+ call Func_e99cf
+ coord hl, 0, 16
+ ld bc, 2 * SCREEN_WIDTH
+ ld a, " "
+ call FillMemory
+ ld a, [wBoxDataStart]
+ cp 16
+ ret c
+ coord hl, 4, 0
+ ld de, wBoxSpecies + 15
+ ld c, 5
+ call Func_e994e
+ ret
+
+Func_e994e:
+.asm_e994e
+ ld a, c
+ and a
+ jr z, .asm_e99a6
+ dec c
+ ld a, [de]
+ cp $ff
+ jr z, .asm_e99a6
+ ld [$d11d], a
+ push bc
+ push hl
+ push de
+ push hl
+ ld bc, 12
+ ld a, " "
+ call FillMemory
+ pop hl
+ push hl
+ ld de, SCREEN_WIDTH
+ add hl, de
+ ld bc, 12
+ ld a, " "
+ call FillMemory
+ pop hl
+ push hl
+ call GetMonName
+ pop hl
+ call PlaceString
+ push hl
+ ld hl, wBoxMonNicks
+ ld bc, NAME_LENGTH
+ ld a, [wBoxNumString]
+ call AddNTimes
+ ld e, l
+ ld d, h
+ pop hl
+ ld bc, SCREEN_WIDTH + 1
+ add hl, bc
+ ld [hl], " "
+ inc hl
+ call PlaceString
+ ld hl, wBoxNumString
+ inc [hl]
+ pop de
+ pop hl
+ ld bc, 3 * SCREEN_WIDTH
+ add hl, bc
+ pop bc
+ inc de
+ jr .asm_e994e
+
+.asm_e99a6
+ ret
+
+Func_e99a7:
+ coord hl, 0, 0
+ ld a, $79
+ ld [hli], a
+ ld a, $7a
+ ld c, SCREEN_WIDTH - 2
+.asm_e99b1
+ ld [hli], a
+ dec c
+ jr nz, .asm_e99b1
+ ld a, $7b
+ ld [hl], a
+ ret
+
+Func_e99b9:
+ coord hl, 0, 0
+ ld de, SCREEN_WIDTH - 1
+ ld c, SCREEN_HEIGHT
+.asm_e99c1
+ ld a, $7c
+ ld [hl], a
+ add hl, de
+ ld a, $7c
+ ld [hli], a
+ dec c
+ jr nz, .asm_e99c1
+ ret
+
+Func_e99cc:
+ coord hl, 0, 17
+Func_e99cf:
+ ld a, $7d
+ ld [hli], a
+ ld a, $7a
+ ld c, SCREEN_WIDTH - 2
+.asm_e99b1
+ ld [hli], a
+ dec c
+ jr nz, .asm_e99b1
+ ld a, $7e
+ ld [hl], a
+ ret
+
+Func_e99de:
+ coord hl, 4, 0
+ ld c, 6
+ call Func_e99eb
+ coord hl, 6, 1
+ ld c, 6
+Func_e99eb:
+.asm_e99eb
+ push bc
+ push hl
+ ld de, String_e99fd
+ call PlaceString
+ pop hl
+ ld bc, 3 * SCREEN_WIDTH
+ add hl, bc
+ pop bc
+ dec c
+ jr nz, .asm_e99eb
+ ret
+
+String_e99fd:
+ db "----------@"