summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xengine/printer.asm343
-rwxr-xr-xmain.asm269
2 files changed, 343 insertions, 269 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 "----------@"
diff --git a/main.asm b/main.asm
index 5cfa113f..08b0df82 100755
--- a/main.asm
+++ b/main.asm
@@ -897,275 +897,6 @@ Func_e877e:
ret
INCLUDE "engine/printer.asm"
-
-Func_e8e79: ; e8e79 (3a:4e79)
- dr $e8e79,$e8eca
-Func_e8eca: ; e8eca (3a:4eca)
- dr $e8eca,$e8efc
-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 "----------@"
-
INCLUDE "engine/diploma_3a.asm"
SurfingPikachu3Graphics: INCBIN "gfx/surfing_pikachu_3.t1.2bpp"