Func_e8783: ; e8783 (3a:4783) ld a, 9 Func_e8785: push af ld hl, wOverworldMap lb bc, 4, 13 xor a call Func_e8a2e xor a ld [rSB], a ld [rSC], a ld [wUnknownSerialFlag_d49b], a ld hl, wUnknownSerialFlag_d49a set 0, [hl] ld a, [wd498] ld [$cae3], a pop af ld [$caf4], a ret ; e87a8 Func_e87a8: ; e87a8 (3a:47a8) ld a, [wOverworldMap] ld e, a ld d, 0 ld hl, Jumptable_e87b7 add hl, de add hl, de ld a, [hli] ld h, [hl] ld l, a jp [hl] Jumptable_e87b7: dw Func_e87fd dw Func_e88c9 dw Func_e88a6 dw Func_e881f dw Func_e8906 dw Func_e88b4 dw Func_e884b dw Func_e8906 dw Func_e88a6 dw Func_e8864 dw Func_e8906 dw Func_e88a6 dw Func_e8927 dw Func_e87e9 dw Func_e87f3 dw Func_e88a6 dw Func_e8889 dw Func_e87f7 dw Func_e8936 dw Func_e8939 Func_e87df: ld hl, wOverworldMap inc [hl] ret Func_e87e4: ld hl, wOverworldMap dec [hl] ret Func_e87e9: xor a ld [$c971], a ld hl, wOverworldMap set 7, [hl] ret Func_e87f3: call Func_e87df ret Func_e87f7: ld a, $01 ld [wOverworldMap], a ret Func_e87fd: call Func_e8981 ld hl, Data_e8a3a call Func_e8968 xor a ld [$c976], a ld [$c977], a ld a, [$caf4] ld [$c6e9], a call Func_e87df call Func_e8949 ld a, $01 ld [$cae0], a ret Func_e881f: call Func_e8981 ld hl, $c6e9 ld a, [hl] and a jr z, Func_e884b ld hl, Data_e8a46 call Func_e8968 call Func_e89e6 ld a, $80 ld [$c976], a ld a, $02 ld [$c977], a call Func_e899f call Func_e87df call Func_e8949 ld a, $02 ld [$cae0], a ret Func_e884b: ld a, $06 ld [wOverworldMap], a ld hl, Data_e8a4c call Func_e8968 xor a ld [$c976], a ld [$c977], a call Func_e87df call Func_e8949 ret Func_e8864: call Func_e8981 ld hl, Data_e8a40 call Func_e8968 call Func_e89cf ld a, $04 ld [$c976], a ld a, $00 ld [$c977], a call Func_e899f call Func_e87df call Func_e8949 ld a, $03 ld [$cae0], a ret Func_e8889: call Func_e8981 ld hl, Data_e8a3a call Func_e8968 xor a ld [$c976], a ld [$c977], a ld a, [$caf4] ld [$c6e9], a call Func_e87df call Func_e8949 ret Func_e88a6: ld hl, $c973 inc [hl] ld a, [hl] cp a, $06 ret c xor a ld [hl], a call Func_e87df ret Func_e88b4: ld hl, $c973 inc [hl] ld a, [hl] cp a, $06 ret c xor a ld [hl], a ld hl, $c6e9 dec [hl] call Func_e87e4 call Func_e87e4 ret Func_e88c9: ld a, [wUnknownSerialFlag_d49b] and a ret nz ld a, [$c970] cp a, $ff jr nz, .asm_e88dc ld a, [$c971] cp a, $ff jr z, .asm_e88f8 .asm_e88dc ld a, [$c970] cp a, $81 jr nz, .asm_e88f8 ld a, [$c971] cp a, $00 jr nz, .asm_e88f8 ld hl, wUnknownSerialFlag_d49a set 1, [hl] ld a, $05 ld [$c972], a call Func_e87df ret .asm_e88f8 ld a, $ff ld [$c970], a ld [$c971], a ld a, $0e ld [wOverworldMap], a ret Func_e8906: ld a, [wUnknownSerialFlag_d49b] and a ret nz ld a, [$c971] and a, $f0 jr nz, .asm_e8921 ld a, [$c971] and a, $01 jr nz, .asm_e891d call Func_e87df ret .asm_e891d call Func_e87e4 ret .asm_e8921 ld a, $12 ld [wOverworldMap], a ret Func_e8927: ld a, [wUnknownSerialFlag_d49b] and a ret nz ld a, [$c971] and a, $f3 ret nz call Func_e87df ret Func_e8936: call Func_e87df Func_e8939: ld a, [wUnknownSerialFlag_d49b] and a ret nz ld a, [$c971] and a, $f0 ret nz xor a ld [wOverworldMap], a ret Func_e8949: .asm_e8949 ld a, [wUnknownSerialFlag_d49b] and a jr nz, .asm_e8949 xor a ld [$c974], a ld [$c975], a ld a, $01 ld [wUnknownSerialFlag_d49b], a ld a, $88 ld [rSB], a ld a, $01 ld [rSC], a ld a, $81 ld [rSC], a ret Func_e8968: ld a, [hli] ld [$c6ea], a ld a, [hli] ld [$c6eb], a ld a, [hli] ld [$c6ec], a ld a, [hli] ld [$c6ed], a ld a, [hli] ld [$c6ee], a ld a, [hl] ld [$c6ef], a ret Func_e8981: xor a ld hl, $c6ea ld [hli], a ld [hli], a ld [hli], a ld [hl], a ld hl, $c6ee ld [hli], a ld [hl], a xor a ld [$c976], a ld [$c977], a ld hl, $c6f0 ld bc, $0280 call Func_e8a2e ret Func_e899f: ld hl, $0000 ld bc, $0004 ld de, $c6ea call Func_e89c2 ld a, [$c976] ld c, a ld a, [$c977] ld b, a ld de, $c6f0 call Func_e89c2 ld a, l ld [$c6ee], a ld a, h ld [$c6ef], a ret Func_e89c2: .asm_e89c2 ld a, [de] inc de add l jr nc, .asm_e89c8 inc h .asm_e89c8 ld l, a dec bc ld a, c or b jr nz, .asm_e89c2 ret Func_e89cf: ld a, $01 ld [$c6f0], a ld a, [$cae2] ld [$c6f1], a ld a, $e4 ld [$c6f2], a ld a, [$cae3] ld [$c6f3], a ret Func_e89e6: ld a, [$c6e9] ld b, a ld a, [$caf4] sub b ld hl, wPrinterTileBuffer ld de, $0028 .asm_e89f4 and a jr z, .asm_e89fb add hl, de dec a jr .asm_e89f4 .asm_e89fb ld e, l ld d, h ld hl, $c6f0 ld c, $28 .asm_e8a02 ld a, [de] inc de push bc push de push hl swap a ld d, a and a, $f0 ld e, a ld a, d and a, $0f ld d, a and a, $08 ld a, d jr nz, .asm_e8a1a or a, $90 jr .asm_e8a1c .asm_e8a1a or a, $80 .asm_e8a1c ld d, a ld bc, $3a01 call CopyVideoData pop hl ld de, $0010 add hl, de pop de pop bc dec c jr nz, .asm_e8a02 ret Func_e8a2e: ; e8a2e (3a:4a2e) push de ld e, a .asm_e8a30 ld [hl], e inc hl dec bc ld a, c or b jr nz, .asm_e8a30 ld a, e pop de ret Data_e8a3a: db $01, $00, $00, $00, $01, $00 Data_e8a40: db $02, $00, $04, $00, $00, $00 Data_e8a46: db $04, $00, $80, $02, $00, $00 Data_e8a4c: db $04, $00, $00, $00, $04, $00 Data_e8a52: db $08, $00, $00, $00, $08, $00 Data_e8a58: db $0f, $00, $00, $00, $0f, $00 Func_e8a5e: ; e8a5e (3a:4a5e) ld a, [wUnknownSerialFlag_d49b] ld e, a ld d, 0 ld hl, Jumptable_e8a6d add hl, de add hl, de ld a, [hli] ld h, [hl] ld l, a jp [hl] Jumptable_e8a6d: dw Func_e8ab2 dw Func_e8ab3 dw Func_e8abc dw Func_e8ac6 dw Func_e8ad0 dw Func_e8ada dw Func_e8ae4 dw Func_e8b0f dw Func_e8b19 dw Func_e8b23 dw Func_e8b2c dw Func_e8b3a dw Func_e8ab3 dw Func_e8b44 dw Func_e8b4d dw Func_e8b4d dw Func_e8b4d dw Func_e8b44 dw Func_e8b4d dw Func_e8b23 dw Func_e8b2c dw Func_e8b6a dw Func_e8ab3 dw Func_e8b56 dw Func_e8b4d dw Func_e8b4d dw Func_e8b4d dw Func_e8b56 dw Func_e8b4d dw Func_e8b23 dw Func_e8b2c dw Func_e8b3a Func_e8aad: ld hl, wUnknownSerialFlag_d49b inc [hl] ret Func_e8ab2: ret Func_e8ab3: ld a, $33 call Func_e8b5f call Func_e8aad ret Func_e8abc: ld a, [$c6ea] call Func_e8b5f call Func_e8aad ret Func_e8ac6: ld a, [$c6eb] call Func_e8b5f call Func_e8aad ret Func_e8ad0: ld a, [$c6ec] call Func_e8b5f call Func_e8aad ret Func_e8ada: ld a, [$c6ed] call Func_e8b5f call Func_e8aad ret Func_e8ae4: ld hl, $c976 ld e, [hl] inc hl ld d, [hl] ld a, e or d jr z, .asm_e8b0c dec de ld [hl], d dec hl ld [hl], e ld a, [$c974] ld e, a ld a, [$c975] ld d, a ld hl, $c6f0 add hl, de inc de ld a, e ld [$c974], a ld a, d ld [$c975], a ld a, [hl] call Func_e8b5f ret .asm_e8b0c call Func_e8aad Func_e8b0f: ld a, [$c6ee] call Func_e8b5f call Func_e8aad ret Func_e8b19: ld a, [$c6ef] call Func_e8b5f call Func_e8aad ret Func_e8b23: ld a, $00 call Func_e8b5f call Func_e8aad ret Func_e8b2c: ld a, [rSB] ld [$c970], a ld a, $00 call Func_e8b5f call Func_e8aad ret Func_e8b3a: ld a, [rSB] ld [$c971], a xor a ld [wUnknownSerialFlag_d49b], a ret Func_e8b44: ld a, $0f call Func_e8b5f call Func_e8aad ret Func_e8b4d: ld a, $00 call Func_e8b5f call Func_e8aad ret Func_e8b56: ld a, $08 call Func_e8b5f call Func_e8aad ret Func_e8b5f: ld [rSB], a ld a, $01 ld [rSC], a ld a, $81 ld [rSC], a ret Func_e8b6a: ld a, [rSB] ld [$c971], a xor a ld [wUnknownSerialFlag_d49b], a ret Func_e8b74: ; e8b74 (3a:4b74) ld a, [$cfca] push af xor a ld [$cfca], a ld [$ffdb], a call Func_e8f24 ld a, [rIE] push af xor a ld [rIF], a ld a, $09 ld [rIE], a xor a ld [$ffba], a call Func_e8c30 call Func_e8785 ld a, [$caf9] and a jr z, .asm_e8b9e ld a, $10 jr .asm_e8ba0 .asm_e8b9e ld a, $13 .asm_e8ba0 ld [$cae2], a call Func_e8efc call ClearScreen callab Func_401c2 callab Func_4027c ld a, $01 ld [$ffba], a call Func_e8c0c jr c, .asm_e8bf4 ld a, [$caf9] and a jr z, .asm_e8bf4 xor a ld [wUnknownSerialFlag_d49a], a ld [wUnknownSerialFlag_d49b], a ld c, $0c call DelayFrames call SaveScreenTilesToBuffer1 xor a ld [$ffba], a call Func_e8c50 ld a, $07 call Func_e8785 ld a, $03 ld [$cae2], a call Func_e8efc call LoadScreenTilesFromBuffer1 ld a, $01 ld [$ffba], a call Func_e8c0c .asm_e8bf4 xor a ld [wUnknownSerialFlag_d49a], a ld [wUnknownSerialFlag_d49b], a xor a ld [rIF], a pop af ld [rIE], a call Func_0f3d call Func_e8f3b pop af ld [$cfca], a ret Func_e8c0c: call Func_e8f16 .asm_e8c0f call JoypadLowSensitivity call Func_e8eca jr c, .asm_e8c2e ld a, [$c6e8] bit 7, a jr nz, .asm_e8c2c call Func_e87a8 call Func_e8f51 call Func_e8f82 call DelayFrame jr .asm_e8c0f .asm_e8c2c and a ret .asm_e8c2e scf ret Func_e8c30: callab Func_4039c ld a, l ld [$caf5], a ld a, h ld [$caf6], a ld a, $00 rla ld [$caf9], a and a jr z, .asm_e8c4d ld a, $05 jr .asm_e8c4f .asm_e8c4d ld a, $09 .asm_e8c4f ret Func_e8c50: call ClearScreen callab Func_404bc ret Func_e8c5c: xor a ld [$ffdb], a call Func_e8f24 call Func_e910a 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 call Func_e8efc call Func_e8f16 .asm_e8c7d call JoypadLowSensitivity call Func_e8eca jr c, .asm_e8c9a ld a, [$c6e8] bit 7, a jr nz, .asm_e8c9a call Func_e87a8 call Func_e8f51 call Func_e8f82 call DelayFrame jr .asm_e8c7d .asm_e8c9a xor a ld [wUnknownSerialFlag_d49a], a ld [wUnknownSerialFlag_d49b], a call Func_e8f09 xor a ld [rIF], a pop af ld [rIE], a call Func_0f3d call Func_e8f3b ret Func_e8cb1: xor a ld [$ffdb], a call Func_e8f24 call _DisplayDiploma ld a, [rIE] push af xor a ld [rIF], a ld a, $09 ld [rIE], a call Func_e8783 ld a, $10 ld [$cae2], a call Func_e8efc call Func_e8d11 jr c, .asm_e8cfa xor a ld [wUnknownSerialFlag_d49a], a ld [wUnknownSerialFlag_d49b], a ld c, $0c call DelayFrames call SaveScreenTilesToBuffer1 xor a ld [$ffba], a call Func_e9ad3 call Func_e8783 ld a, $03 ld [$cae2], a call Func_e8efc call LoadScreenTilesFromBuffer1 call Func_e8d11 .asm_e8cfa xor a ld [wUnknownSerialFlag_d49a], a ld [wUnknownSerialFlag_d49b], a call Func_e8f09 xor a ld [rIF], a pop af ld [rIE], a call Func_0f3d call Func_e8f3b ret Func_e8d11: call Func_e8f16 .asm_e8d14 call JoypadLowSensitivity call Func_e8eca jr c, .asm_e8d33 ld a, [$c6e8] bit 7, a jr nz, .asm_e8d31 call Func_e87a8 call Func_e8f51 call Func_e8f82 call DelayFrame jr .asm_e8d14 .asm_e8d31 and a ret .asm_e8d33 scf ret Func_e8d35:: ; e8d35 (3a:4e79) ld a, [wBoxDataStart] and a jp z, Func_e8df4 ld a, [wUpdateSpritesEnabled] push af xor a ld [wUpdateSpritesEnabled], a ld [hItemCounter], a call Func_e8f24 ld a, [rIE] push af xor a ld [rIF], a ld a, $09 ld [rIE], a call SaveScreenTilesToBuffer1 xor a ld [H_AUTOBGTRANSFERENABLED], a call Func_e988a call Func_e8783 ld a, $10 ld [$cae2], a call Func_e8efc call LoadScreenTilesFromBuffer1 call Func_e8dfb jr c, .asm_e8ddc xor a ld [wUnknownSerialFlag_d49a], a ld [wUnknownSerialFlag_d49b], a ld c, 12 call DelayFrames xor a ld [H_AUTOBGTRANSFERENABLED], a call Func_e98ec call Func_e8783 ld a, $00 ld [$cae2], a call Func_e8efc call LoadScreenTilesFromBuffer1 call Func_e8dfb jr c, .asm_e8ddc xor a ld [wUnknownSerialFlag_d49a], a ld [wUnknownSerialFlag_d49b], a ld c, 12 call DelayFrames xor a ld [H_AUTOBGTRANSFERENABLED], a call Func_e9907 call Func_e8783 ld a, $00 ld [$cae2], a call Func_e8efc call LoadScreenTilesFromBuffer1 call Func_e8dfb jr c, .asm_e8ddc xor a ld [wUnknownSerialFlag_d49a], a ld [wUnknownSerialFlag_d49b], a ld c, 12 call DelayFrames xor a ld [H_AUTOBGTRANSFERENABLED], a call Func_e9922 call Func_e8783 ld a, $03 ld [$cae2], a call Func_e8efc call LoadScreenTilesFromBuffer1 call Func_e8dfb .asm_e8ddc xor a ld [wUnknownSerialFlag_d49a], a ld [wUnknownSerialFlag_d49b], a xor a ld [rIF], a pop af ld [rIE], a call Func_0f3d call Func_e8f3b pop af ld [wUpdateSpritesEnabled], a ret Func_e8df4: ; e8df4 ld hl, String_e8e1f call PrintText ret Func_e8dfb: ; e8dfb call Func_e8f16 .asm_e8dfe call JoypadLowSensitivity call Func_e8eca jr c, .asm_e8e1d ld a, [wOverworldMap] bit 7, a jr nz, .asm_e8e1b call Func_e87a8 call Func_e8f51 call Func_e8f82 call DelayFrame jr .asm_e8dfe .asm_e8e1b and a ret .asm_e8e1d scf ret String_e8e1f: ; e8e1f TX_FAR _NoPokemonText db "@" Func_e8e24: ; e8e24 xor a ld [hItemCounter], a call Func_e8f24 call Func_ea3ea 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 call Func_e8efc call Func_e8f16 .asm_e8e45 call JoypadLowSensitivity call Func_e8eca jr c, .asm_e8e62 ld a, [wOverworldMap] bit 7, a jr nz, .asm_e8e62 call Func_e87a8 call Func_e8f51 call Func_e8f82 call DelayFrame jr .asm_e8e45 .asm_e8e62 xor a ld [wUnknownSerialFlag_d49a], a ld [wUnknownSerialFlag_d49b], a call Func_e8f09 xor a ld [rIF], a pop af ld [rIE], a 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) coord hl, 0, 0 coord de, 0, 0, wPrinterTileBuffer ld bc, SCREEN_HEIGHT * SCREEN_WIDTH call CopyData ret Func_e8f09: ; e8f09 (3a:4f09) coord hl, 0, 0, wPrinterTileBuffer coord de, 0, 0 ld bc, SCREEN_HEIGHT * SCREEN_WIDTH call CopyData ret Func_e8f16: ; e8f16 (3a:4f16) xor a ld [hJoyLast], a ld [hJoyReleased], a ld [hJoyPressed], a ld [hJoyHeld], a ld [hJoy5], a ld [hJoy6], a ret Func_e8f24: ; e8f24 (3a:4f24) call Func_e8f42 ld a, [wAudioROMBank] ld [wAudioSavedROMBank], a ld a, BANK(Music_GBPrinter) ld [wAudioROMBank], a ld a, MUSIC_GB_PRINTER ld [wNewSoundID], a call PlaySound ret Func_e8f3b: ; e8f3b (3a:4f3b) call Func_e8f42 call PlayDefaultMusic ret Func_e8f42: ; e8f42 (3a:4f42) ld a, $4 ld [wAudioFadeOutControl], a call StopAllMusic .asm_e8f4a ld a, [wAudioFadeOutControl] and a jr nz, .asm_e8f4a ret Func_e8f51: ; e8f51 (3a:4f51) ld a, [$c970] cp $81 jr z, .asm_e8f62 ld a, [$c971] cp $ff jr z, .asm_e8f7c xor a jr .asm_e8f7e .asm_e8f62 ld a, [$c971] and $e0 ret z bit 7, a jr nz, .asm_e8f78 bit 6, a jr nz, .asm_e8f74 ld a, 6 jr .asm_e8f7e .asm_e8f74 ld a, 7 jr .asm_e8f7e .asm_e8f78 ld a, 4 jr .asm_e8f7e .asm_e8f7c ld a, 5 .asm_e8f7e ld [wcae0], a ret Func_e8f82: ; e8f82 (3a:4f82) dr $e8f82,$e8fb8 String_e8fb8: db "Press B to Cancel@" Table_e8fca: dw String_e8fdc dw String_e8fdd dw String_e8ff0 dw String_e9003 dw String_e9014 dw String_e9049 dw String_e907e dw String_e90b3 dw String_e90e8 String_e8fdc: db "@" String_e8fdd: db "" next " CHECKING LINK...@" String_e8ff0: db "" next " TRANSMITTING...@" String_e9003: db "" next " PRINTING...@" String_e9014: db " Printer Error 1" next "" next "Check the Game Boy" next "Printer Manual.@" String_e9049: db " Printer Error 2" next "" next "Check the Game Boy" next "Printer Manual.@" String_e907e: db " Printer Error 3" next "" next "Check the Game Boy" next "Printer Manual.@" String_e90b3: db " Printer Error 4" next "" next "Check the Game Boy" next "Printer Manual.@" String_e90e8: db "This is not the" next "Game Boy Printer!@" Func_e910a: call GBPalWhiteOutWithDelay3 call ClearScreen ld de, SurfingPikachu2Graphics ld hl, vChars2 lb bc, BANK(SurfingPikachu2Graphics), (SurfingPikachu2GraphicsEnd - SurfingPikachu2Graphics) / $10 call CopyVideoData coord hl, 0, 0 call Func_e91a9 coord hl, 0, 17 call Func_e91a9 coord hl, 0, 0 call Func_e91b5 coord hl, 19, 0 call Func_e91b5 ld a, $04 coord hl, 0, 0 ld [hl], a coord hl, 0, 17 ld [hl], a coord hl, 19, 0 ld [hl], a coord hl, 19, 17 ld [hl], a ld de, Data_e91c4 coord hl, 10, 8 lb bc, 3, 8 call Func_e925d ld de, Data_e91dc coord hl, 2, 11 lb bc, 6, 16 call Func_e925d ld de, String_e923c coord hl, 3, 2 call PlaceString ld de, String_e924b coord hl, 9, 4 call PlaceString ld de, String_e9256 coord hl, 12, 6 call PlaceString ld de, wPlayerName ld hl, wPlayerName ld bc, 0 .asm_e9182 ld a, [hli] inc c cp "@" jr nz, .asm_e9182 ld a, 8 sub c jr nc, .asm_e918e xor a .asm_e918e ld c, a coord hl, 2, 4 add hl, bc call PlaceString call Func_e926f ld b, 8 call RunPaletteCommand ld a, $1 ld [H_AUTOBGTRANSFERENABLED], a call Delay3 call GBPalNormal ret Func_e91a9: ld c, SCREEN_WIDTH / 2 .asm_e91ab ld [hl], $00 inc hl ld [hl], $01 inc hl dec c jr nz, .asm_e91ab ret Func_e91b5: ld c, SCREEN_HEIGHT / 2 ld de, SCREEN_WIDTH .asm_e91ba ld [hl], $02 add hl, de ld [hl], $03 add hl, de dec c jr nz, .asm_e91ba ret Data_e91c4: db $7f, $7f, $10, $11, $12, $13, $14, $15 db $0f, $3c, $3d, $3e, $20, $21, $30, $31 db $4c, $4d, $4e, $50, $34, $1a, $51, $2d Data_e91dc: db $7f, $7f, $7f, $7f, $7f, $7f, $16, $17, $18, $19, $7f, $1b, $1c, $1d, $1e, $1f db $7f, $7f, $22, $23, $24, $25, $26, $27, $28, $29, $2a, $2b, $2c, $7f, $2e, $2f db $7f, $7f, $32, $33, $33, $35, $36, $37, $38, $39, $3a, $3b, $7f, $7f, $7f, $3f db $40, $41, $42, $43, $44, $45, $46, $47, $48, $49, $4a, $4b, $40, $40, $40, $4f db $52, $52, $52, $53, $54, $55, $56, $57, $58, $59, $5a, $5b, $5c, $5d, $5d, $5e db $7f, $7f, $7f, $05, $06, $07, $08, $09, $0a, $0b, $0c, $0d, $0e, $7f, $7f, $7f String_e923c: db "Pikachu's Beach@" String_e924b: db "'s Hi-Score@" String_e9256: db "Points@" 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" SurfingPikachu2GraphicsEnd: 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 [wd11e], 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 "----------@"