diff options
author | xCrystal <rgr.crystal@gmail.com> | 2018-04-10 16:25:35 +0200 |
---|---|---|
committer | xCrystal <rgr.crystal@gmail.com> | 2018-04-10 16:25:35 +0200 |
commit | 2bbc1a63239201be8f1a7b360e81d19192093a8f (patch) | |
tree | 3970359d9ac5db26b39229911d975fff0825f772 /src/engine/bank3.asm | |
parent | 6895547b0d2c86d769b29dc8eb5f5021723fc763 (diff) |
Add leading zero to temporary bankX.asm filenames so they show up in order
Diffstat (limited to 'src/engine/bank3.asm')
-rw-r--r-- | src/engine/bank3.asm | 3225 |
1 files changed, 0 insertions, 3225 deletions
diff --git a/src/engine/bank3.asm b/src/engine/bank3.asm deleted file mode 100644 index e53fc38..0000000 --- a/src/engine/bank3.asm +++ /dev/null @@ -1,3225 +0,0 @@ -LoadMap: ; c000 (3:4000) - call DisableLCD - call EnableSRAM - bank1call Func_6785 - call DisableSRAM - ld a, GAME_EVENT_OVERWORLD - ld [wGameEvent], a - xor a - ld [wd10f], a - ld [wd110], a - ld [wMatchStartTheme], a - farcall Func_10a9b - call Func_c1a4 - call ZeroObjectPositions - xor a - ld [wTileMapFill], a - call LoadDuelHUDTiles - call Set_OBJ_8x8 - xor a - ld [wcd08], a - xor a - ld [wd291], a -.asm_c037 - farcall Func_10ab4 - call Func_c1a4 - call Func_c241 - call EmptyScreen - call Func_3ca0 - ld a, PLAYER_TURN - ldh [hWhoseTurn], a - farcall Func_1c440 - ld a, [wd0bb] - ld [wCurMap], a - ld a, [wd0bc] - ld [wPlayerXCoord], a - ld a, [wd0bd] - ld [wPlayerYCoord], a - call Func_c36a - call Func_c184 - call Func_c49c - farcall Func_80000 - call Func_c4b9 - call Func_c943 - call Func_c158 - farcall Func_80480 - call Func_c199 - xor a - ld [wd0b4], a - ld [wd0c1], a - call Func_39fc - farcall Func_10af9 - call Func_c141 - call Func_c17a -.asm_c092 - call DoFrameIfLCDEnabled - call SetScreenScroll - call Func_c0ce - ld hl, wd0b4 - ld a, [hl] - and $d0 - jr z, .asm_c092 - call DoFrameIfLCDEnabled - ld hl, wd0b4 - ld a, [hl] - bit 4, [hl] - jr z, .asm_c0b6 - ld a, $c - call PlaySFX - jp .asm_c037 -.asm_c0b6 - farcall Func_10ab4 - call Func_c1a0 - ld a, [wMatchStartTheme] - or a - jr z, .asm_c0ca - call Func_c280 - farcall Duel_Init -.asm_c0ca - call Func_c280 - ret - -Func_c0ce: ; c0ce (3:40ce) - ld a, [wd0bf] - res 7, a - rlca - add LOW(PointerTable_c0e0) - ld l, a - ld a, HIGH(PointerTable_c0e0) - adc $0 - ld h, a - ld a, [hli] - ld h, [hl] - ld l, a - jp hl - -PointerTable_c0e0: ; c0e0 (3:40e0) - dw Func_c0e8 - dw Func_c0ed - dw Func_c0f1 - dw Func_c10a - -Func_c0e8: ; c0e8 (3:40e8) - farcall Func_10e55 - ret - -Func_c0ed: ; c0ed (3:40ed) - call Func_c510 - ret - -Func_c0f1: ; c0f1 (3:40f1) - ld a, [wd3b6] - ld [wd3aa], a - farcall Func_1c768 - ld a, c - ld [wd0c6], a - ld a, b - ld [wd0c7], a - ld a, $3 - ld [wd0bf], a - jr Func_c10a - -Func_c10a: ; c10a (3:410a) - ld hl, wd0c6 - ld a, [hli] - ld h, [hl] - ld l, a - jp hl - -; closes dialogue window. seems to be for other things as well. -CloseDialogueBox: ; c111 (3:4111) - ld a, [wd0c1] - bit 0, a - call nz, Func_c135 - ld a, [wd0c1] - bit 1, a - jr z, .asm_c12a - ld a, [wd3b6] - ld [wd3aa], a - farcall Func_1c5e9 -.asm_c12a - xor a - ld [wd0c1], a - ld a, [wd0c0] - ld [wd0bf], a - ret - -Func_c135: ; c135 (3:4135) - push hl - farcall Func_80028 - ld hl, wd0c1 - res 0, [hl] - pop hl - ret - -Func_c141: ; c141 (3:4141) - ld hl, wd0c2 - ld a, [hl] - or a - ret z - push af - xor a - ld [hl], a - pop af - dec a - ld hl, PointerTable_c152 - jp JumpToFunctionInTable - -PointerTable_c152: ; c152 (3:4152) - dw Func_c9bc - dw Func_fc2b - dw Func_fcad - -Func_c158: ; c158 (3:4158) - ld a, [wd0c2] - cp $1 - ret nz - ld a, [wd0c4] - ld [wd3ab], a - call Func_39c3 - jr c, .asm_c179 - ld a, [wd3aa] - ld l, $4 - call Func_39ad - ld a, [wd0c5] - ld [hl], a - farcall Func_1c58e -.asm_c179 - ret - -Func_c17a: ; c17a (3:417a) - ld a, [wd0bf] - cp $3 - ret z - call Func_c9b8 - ret - -Func_c184: ; c184 (3:4184) - push bc - ld c, $1 - ld a, [wCurMap] - cp OVERWORLD_MAP - jr nz, .asm_c190 - ld c, $0 -.asm_c190 - ld a, c - ld [wd0bf], a - ld [wd0c0], a - pop bc - ret - -Func_c199: ; c199 (3:4199) - ld hl, Func_380e - call SetDoFrameFunction - ret - -Func_c1a0: ; c1a0 (3:41a0) - call ResetDoFrameFunction - ret - -Func_c1a4: ; c1a4 (3:41a4) - xor a - call SetBGP - xor a - call SetOBP0 - xor a - call SetOBP1 - ret - -Func_c1b1: ; c1b1 (3:41b1) - ld a, $c - ld [wd32e], a - ld a, $0 - ld [wd0bb], a - ld a, $c - ld [wd0bc], a - ld a, $c - ld [wd0bd], a - ld a, $2 - ld [wd0be], a - call Func_c9cb - call Func_c9dd - farcall Func_80b7a - farcall Func_1c82e - farcall Func_131b3 - xor a - ld [wPlayTimeCounter + 0], a - ld [wPlayTimeCounter + 1], a - ld [wPlayTimeCounter + 2], a - ld [wPlayTimeCounter + 3], a - ld [wPlayTimeCounter + 4], a - ret - -Func_c1ed: ; c1ed (3:41ed) - call Func_c9cb - farcall Func_11416 - call Func_c9dd - ret - -Func_c1f8: ; c1f8 (3:41f8) - xor a - ld [wd0b8], a - ld [wd0b9], a - ld [wd0ba], a - ld [wd11b], a - ld [wd0c2], a - ld [wd111], a - ld [wd112], a - ld [wd3b8], a - call EnableSRAM - ld a, [sa007] - ld [wd421], a - ld a, [sa006] - ld [wTextSpeed], a - call DisableSRAM - farcall Func_10756 - ret - -Func_c228: ; c228 (3:4228) - ld a, [wCurMap] - ld [wd0bb], a - ld a, [wPlayerXCoord] - ld [wd0bc], a - ld a, [wPlayerYCoord] - ld [wd0bd], a - ld a, [wd334] - ld [wd0be], a - ret - -Func_c241: ; c241 (3:4241) - push hl - push bc - push de - ld de, $307f - call Func_2275 - call Func_c258 - pop de - pop bc - pop hl - ret - -Func_c251: ; c251 (3:4251) - ldh a, [hffb0] - push af - ld a, $1 - jr asm_c25d - -Func_c258: ; c258 (3:4258) - ldh a, [hffb0] - push af - ld a, $2 -asm_c25d - ldh [hffb0], a - push hl - call Func_c268 - pop hl - pop af - ldh [hffb0], a - ret - -Func_c268: ; c268 (3:4268) - ld hl, Unknown_c27c -.asm_c26b - push hl - ld a, [hli] - ld h, [hl] - ld l, a - or h - jr z, .asm_c27a - call Func_2c29 - pop hl - inc hl - inc hl - jr .asm_c26b -.asm_c27a - pop hl - ret - -Unknown_c27c: ; c27c (3:427c) - INCROM $c27c, $c280 - -Func_c280: ; c280 (3:4280) - call Func_c228 - call Func_3ca0 - call ZeroObjectPositions - ld hl, wVBlankOAMCopyToggle - inc [hl] - call EnableLCD - call DoFrameIfLCDEnabled - call DisableLCD - farcall Func_12871 - ret - -Func_c29b: ; c29b (3:429b) - push hl - ld hl, wd0c1 - or [hl] - ld [hl], a - pop hl - ret - -Func_c2a3: ; c2a3 (3:42a3) - push hl - push bc - push de - call Func_c335 - farcall Func_10ab4 - ld a, $80 - call Func_c29b - ld de, $307f - call Func_2275 - farcall Func_12ba7 - call Func_3ca0 - call ZeroObjectPositions - ld a, $1 - ld [wVBlankOAMCopyToggle], a - call EnableLCD - call DoFrameIfLCDEnabled - call DisableLCD - pop de - pop bc - pop hl - ret - -Func_c2d4: ; c2d4 (3:42d4) - xor a - ld [wd10f], a - ld [wd110], a - -Func_c2db: ; c2db (3:42db) - push hl - push bc - push de - call DisableLCD - call Set_OBJ_8x8 - call Func_3ca0 - farcall Func_12bcd - ld a, PLAYER_TURN - ldh [hWhoseTurn], a - call Func_c241 - call EmptyScreen - ld a, [wd111] - push af - farcall Func_80000 - pop af - ld [wd111], a - ld hl, wd0c1 - res 0, [hl] - call Func_c34e - farcall Func_12c5e - farcall Func_1c6f8 - ld hl, wd0c1 - res 7, [hl] - ld hl, wd10f - ld a, [hli] - or [hl] - jr z, .asm_c323 - ld a, [hld] - ld l, [hl] - ld h, a - call Func_3c45 -.asm_c323 - farcall Func_10af9 - pop de - pop bc - pop hl - ret - -Func_c32b: ; c32b (3:432b) - ld a, l - ld [wd10f], a - ld a, h - ld [wd110], a - jr Func_c2db - -Func_c335: ; c335 (3:4335) - ld a, [wOBP0] - ld [wd10c], a - ld a, [wOBP1] - ld [wd10d], a - ld hl, wObjectPalettesCGB - ld de, wd0cc - ld bc, 8 palettes - call CopyDataHLtoDE_SaveRegisters - ret - -Func_c34e: ; c34e (3:434e) - ld a, [wd10c] - ld [wOBP0], a - ld a, [wd10d] - ld [wOBP1], a - ld hl, wd0cc - ld de, wObjectPalettesCGB - ld bc, 8 palettes - call CopyDataHLtoDE_SaveRegisters - call SetFlushAllPalettes - ret - -Func_c36a: ; c36a (3:436a) - xor a - ld [wd323], a - ld a, [wCurMap] - cp POKEMON_DOME_ENTRANCE - jr nz, .asm_c379 - xor a - ld [wd324], a -.asm_c379 - ret -; 0xc37a - - INCROM $c37a, $c41c - -Func_c41c: ; c41c (3:441c) - ld a, [wd332] - sub $40 - ld [wSCXBuffer], a - ld a, [wd333] - sub $40 - ld [wSCYBuffer], a - call Func_c430 - ret - -Func_c430: ; c430 (3:4430) - push bc - ld a, [wd237] - sla a - sla a - sla a - ld b, a - ld a, [wSCXBuffer] - cp $b1 - jr c, .asm_c445 - xor a - jr .asm_c449 -.asm_c445 - cp b - jr c, .asm_c449 - ld a, b -.asm_c449 - ld [wSCXBuffer], a - ld a, [wd238] - sla a - sla a - sla a - ld b, a - ld a, [wSCYBuffer] - cp $b9 - jr c, .asm_c460 - xor a - jr .asm_c464 -.asm_c460 - cp b - jr c, .asm_c464 - ld a, b -.asm_c464 - ld [wSCYBuffer], a - pop bc - ret - -Func_c469: ; c469 (3:4469) - ld a, [wSCXBuffer] - add $4 - and $f8 - rrca - rrca - rrca - ld [wd233], a - ld a, [wSCYBuffer] - add $4 - and $f8 - rrca - rrca - rrca - ld [wd234], a - ret - -SetScreenScrollWram: ; c484 (3:4484) - ld a, [wSCXBuffer] - ld [wSCX], a - ld a, [wSCYBuffer] - ld [wSCY], a - ret - -SetScreenScroll: ; c491 (3:4491) - ld a, [wSCX] - ldh [hSCX], a - ld a, [wSCY] - ldh [hSCY], a - ret - -Func_c49c: ; c49c (3:449c) - ld a, [wPlayerXCoord] - and $1f - ld [wPlayerXCoord], a - rlca - rlca - rlca - ld [wd332], a - ld a, [wPlayerYCoord] - and $1f - ld [wPlayerYCoord], a - rlca - rlca - rlca - ld [wd333], a - ret - -Func_c4b9: ; c4b9 (3:44b9) - xor a - ld [wd4ca], a - ld [wd4cb], a - ld a, $1d - farcall Func_80418 - ld b, $0 - ld a, [wConsole] - cp $2 - jr nz, .asm_c4d1 - ld b, $1e -.asm_c4d1 - ld a, b - ld [wd337], a - ld a, $0 - farcall Func_1299f - ld a, [wWhichSprite] - ld [wd336], a - ld b, $2 - ld a, [wCurMap] - cp OVERWORLD_MAP - jr z, .asm_c4ee - ld a, [wd0be] - ld b, a -.asm_c4ee - ld a, b - ld [wd334], a - call Func_c5e9 - ld a, [wCurMap] - cp OVERWORLD_MAP - call nz, Func_c6f7 - xor a - ld [wd335], a - ld [wd338], a - ld a, [wCurMap] - cp OVERWORLD_MAP - jr nz, .asm_c50f - farcall Func_10fde -.asm_c50f - ret - -Func_c510: ; c510 (3:4510) - ld a, [wd336] - ld [wWhichSprite], a - ld a, [wd335] - bit 4, a - ret nz - bit 0, a - call z, Func_c5ac - ld a, [wd335] - or a - jr z, .asm_c535 - bit 0, a - call nz, Func_c66c - ld a, [wd335] - bit 1, a - call nz, Func_c6dc - ret -.asm_c535 - ldh a, [hButtonsPressed] - and START - call nz, Func_c74d - ret - -Func_c53d: ; c53d (3:453d) - ld a, [wd336] - ld [wWhichSprite], a - ld a, [wd335] - bit 0, a - call nz, Func_c687 - ld a, [wd335] - bit 1, a - call nz, Func_c6dc - ret - -Func_c554: ; c554 (3:4554) - ld a, [wd336] - ld [wWhichSprite], a - ld a, [wCurMap] - cp OVERWORLD_MAP - jr nz, .asm_c566 - farcall Func_10e28 - ret -.asm_c566 - push hl - push bc - push de - call Func_c58b - ld a, [wSCXBuffer] - ld d, a - ld a, [wSCYBuffer] - ld e, a - ld c, SPRITE_ANIM_COORD_X - call GetSpriteAnimBufferProperty - ld a, [wd332] - sub d - add $8 - ld [hli], a - ld a, [wd333] - sub e - add $10 - ld [hli], a - pop de - pop bc - pop hl - ret - -Func_c58b: ; c58b (3:458b) - push hl - ld a, [wPlayerXCoord] - ld b, a - ld a, [wPlayerYCoord] - ld c, a - call GetFloorObjectFromPos - and $10 - push af - ld c, SPRITE_ANIM_FIELD_0F - call GetSpriteAnimBufferProperty - pop af - ld a, [hl] - jr z, .asm_c5a7 - or $80 - jr .asm_c5a9 -.asm_c5a7 - and $7f -.asm_c5a9 - ld [hl], a - pop hl - ret - -Func_c5ac: ; c5ac (3:45ac) - ldh a, [hButtonsHeld] - and D_PAD - jr z, .asm_c5bf - call Func_c5cb - call Func_c5fe - ld a, [wd335] - and $1 - jr nz, .asm_c5ca -.asm_c5bf - ldh a, [hButtonsPressed] - and A_BUTTON - jr z, .asm_c5ca - call Func_c71e - jr .asm_c5ca -.asm_c5ca - ret - -Func_c5cb: ; c5cb (3:45cb) - call Func_c5d5 -Func_c5ce: ; c5ce (3:45ce) - ld [wd334], a - call Func_c5e9 - ret - -Func_c5d5: ; c5d5 (3:45d5) - push hl - ld hl, Unknown_c5e5 - or a - jr z, .asm_c5e2 -.asm_c5dc - rlca - jr c, .asm_c5e2 - inc hl - jr .asm_c5dc -.asm_c5e2 - ld a, [hl] - pop hl - ret - -Unknown_c5e5: ; c5e5 (3:45e5) - db $02,$00,$03,$01 - -Func_c5e9: ; c5e9 (3:45e9) - push bc - ld a, [wd336] - ld [wWhichSprite], a - ld a, [wd337] - ld b, a - ld a, [wd334] - add b - farcall Func_12ab5 - pop bc - ret - -Func_c5fe: ; c5fe (3:45fe) - push bc - call Func_c653 - call AttemptScriptedMovement - pop bc - ret - -StartScriptedMovement: ; c607 (3:4607) - push bc - ld a, [wd336] - ld [wWhichSprite], a - ld a, [wd339] - call FindScriptedMovementWithOffset - call AttemptScriptedMovement - pop bc - ret - -; bc is the location the player is being scripted to move towards. -AttemptScriptedMovement: ; c619 (3:4619) - push hl - push bc - ld a, b - cp $1f - jr nc, .quit_movement - ld a, c - cp $1f - jr nc, .quit_movement - call GetFloorObjectFromPos - and $40 | $80 ; the two impassable objects found in the floor map - jr nz, .quit_movement - ld a, b - ld [wPlayerXCoord], a - ld a, c - ld [wPlayerYCoord], a - ld a, [wd335] ; I believe everything starting here is animation related. - or $1 - ld [wd335], a - ld a, $10 - ld [wd338], a - ld c, SPRITE_ANIM_FIELD_0F - call GetSpriteAnimBufferProperty - set 2, [hl] - ld c, SPRITE_ANIM_MOVEMENT_COUNTER - call GetSpriteAnimBufferProperty - ld a, $4 - ld [hl], a -.quit_movement - pop bc - pop hl - ret - -Func_c653: ; c653 (3:4653) - ld a, [wd334] - -FindScriptedMovementWithOffset: ; c656 (3:4656) - rlca - ld c, a - ld b, $0 - push hl - ld hl, ScriptedMovementOffsetTable - add hl, bc - ld a, [wPlayerXCoord] - add [hl] - ld b, a - inc hl - ld a, [wPlayerYCoord] - add [hl] - ld c, a - pop hl - ret - -Func_c66c: ; c66c (3:466c) - push hl - push bc - ld c, $1 - ldh a, [hButtonsHeld] - bit B_BUTTON_F, a - jr z, .asm_c67e - ld a, [wd338] - cp $2 - jr c, .asm_c67e - inc c -.asm_c67e - ld a, [wd334] - call Func_c694 - pop bc - pop hl - ret - -Func_c687: ; c687 (3:4687) - push bc - ld a, [wd33a] - ld c, a - ld a, [wd339] - call Func_c694 - pop bc - ret - -Func_c694: ; c694 (3:4694) - push hl - push bc - push bc - rlca - ld c, a - ld b, $0 - ld hl, Unknown_396b - add hl, bc - pop bc -.asm_c6a0 - push hl - ld a, [hli] - or a - call nz, Func_c6cc - ld a, [hli] - or a - call nz, Func_c6d4 - pop hl - ld a, [wd338] - dec a - ld [wd338], a - jr z, .asm_c6b8 - dec c - jr nz, .asm_c6a0 -.asm_c6b8 - ld a, [wd338] - or a - jr nz, .asm_c6c3 - ld hl, wd335 - set 1, [hl] -.asm_c6c3 - call Func_c41c - call Func_c469 - pop bc - pop hl - ret - -Func_c6cc: ; c6cc (3:46cc) - push hl - ld hl, wd332 - add [hl] - ld [hl], a - pop hl - ret - -Func_c6d4: ; c6d4 (3:46d4) - push hl - ld hl, wd333 - add [hl] - ld [hl], a - pop hl - ret - -Func_c6dc: ; c6dc (3:46dc) - push hl - ld hl, wd335 - res 0, [hl] - res 1, [hl] - call Func_c6f7 - call Func_3997 - call Func_c70d - ld a, [wd0bf] - cp $1 - call z, Func_c9c0 - pop hl - ret - -Func_c6f7: ; c6f7 (3:46f7) - ld a, [wd336] - ld [wWhichSprite], a - ld c, SPRITE_ANIM_FIELD_0F - call GetSpriteAnimBufferProperty - res 2, [hl] - ld c, SPRITE_ANIM_MOVEMENT_COUNTER - call GetSpriteAnimBufferProperty - ld a, $ff - ld [hl], a - ret - -Func_c70d: ; c70d (3:470d) - push hl - ld hl, wd0bb - ld a, [wCurMap] - cp [hl] - jr z, .asm_c71c - ld hl, wd0b4 - set 4, [hl] -.asm_c71c - pop hl - ret - -Func_c71e: ; c71e (3:471e) - ld a, $ff - ld [wd3b6], a - call Func_c653 - call GetFloorObjectFromPos - and $40 - jr z, .asm_c73d - farcall Func_1c72e - jr c, .asm_c73d - ld a, [wd3aa] - ld [wd3b6], a - ld a, $2 - jr .asm_c748 -.asm_c73d - call Func_3a5e - jr nc, .asm_c746 - ld a, $3 - jr .asm_c748 -.asm_c746 - or a - ret -.asm_c748 - ld [wd0bf], a - scf - ret - -Func_c74d: ; c74d (3:474d) - push hl - push bc - push de - call MainMenu_c75a - call CloseDialogueBox - pop de - pop bc - pop hl - ret - -MainMenu_c75a: ; c75a (3:475a) - call PauseSong - ld a, MUSIC_PAUSE_MENU - call PlaySong - call Func_c797 -.asm_c765 - ld a, $1 - call Func_c29b -.asm_c76a - call DoFrameIfLCDEnabled - call HandleMenuInput - jr nc, .asm_c76a - ld a, e - ld [wd0b8], a - ldh a, [hCurrentMenuItem] - cp e - jr nz, .asm_c793 - cp $5 - jr z, .asm_c793 - call Func_c2a3 - ld a, [wd0b8] - ld hl, PointerTable_c7a2 - call JumpToFunctionInTable - ld hl, Func_c797 - call Func_c32b - jr .asm_c765 -.asm_c793 - call ResumeSong - ret - -Func_c797: ; c797 (3:4797) - ld a, [wd0b8] - ld hl, Unknown_cd98 - farcall Func_111e9 - ret - -PointerTable_c7a2: ; c7a2 (3:47a2) - dw Func_c7ae - dw Func_c7b3 - dw Func_c7b8 - dw Func_c7cc - dw Func_c7e0 - dw Func_c7e5 - -Func_c7ae: ; c7ae (3:47ae) - farcall Func_10059 - ret - -Func_c7b3: ; c7b3 (3:47b3) - farcall Func_100a2 - ret - -Func_c7b8: ; c7b8 (3:47b8) - xor a - ldh [hSCX], a - ldh [hSCY], a - call Set_OBJ_8x16 - farcall Func_1288c - farcall Func_8db0 - call Set_OBJ_8x8 - ret - -Func_c7cc: ; c7cc (3:47cc) - xor a - ldh [hSCX], a - ldh [hSCY], a - call Set_OBJ_8x16 - farcall Func_1288c - farcall Func_a288 - call Set_OBJ_8x8 - ret - -Func_c7e0: ; c7e0 (3:47e0) - farcall Func_10548 - ret - -Func_c7e5: ; c7e5 (3:47e5) - farcall Func_103d2 - ret - -PC_c7ea: ; c7ea (3:47ea) - ld a, MUSIC_PC_MAIN_MENU - call PlaySong - call Func_c241 - call $4915 - call DoFrameIfLCDEnabled - ldtx hl, TurnedPCOnText - call Func_2c73 - call $484e -.asm_c801 - ld a, $1 - call Func_c29b -.asm_c806 - call DoFrameIfLCDEnabled - call HandleMenuInput - jr nc, .asm_c806 - ld a, e - ld [wd0b9], a - ldh a, [hCurrentMenuItem] - cp e - jr nz, .asm_c82f - cp $4 - jr z, .asm_c82f - call Func_c2a3 - ld a, [wd0b9] - ld hl, $4846 - call JumpToFunctionInTable - ld hl, $484e - call Func_c32b - jr .asm_c801 -.asm_c82f - call Func_c135 - call DoFrameIfLCDEnabled - ldtx hl, TurnedPCOffText - call Func_c891 - call CloseDialogueBox - xor a - ld [wd112], a - call Func_39fc - ret -; 0xc846 - - INCROM $c846, $c891 - -Func_c891: ; c891 (3:4891) - push hl - ld a, [wd0c1] - bit 0, a - jr z, .asm_c8a1 - ld hl, wd3b9 - ld a, [hli] - or [hl] - call nz, Func_c135 - -.asm_c8a1 - xor a - ld hl, wd3b9 - ld [hli], a - ld [hl], a - pop hl - ld a, $1 - call Func_c29b - call Func_c241 - call $4915 - call DoFrameIfLCDEnabled - call Func_2c73 - ret - -Func_c8ba: ; c8ba (3:48ba) - ld a, e - or d - jr z, Func_c891 - push hl - ld a, [wd0c1] - bit 0, a - jr z, .asm_c8d4 - ld hl, wd3b9 - ld a, [hli] - cp e - jr nz, .asm_c8d1 - ld a, [hl] - cp d - jr z, .asm_c8d4 - -.asm_c8d1 - call Func_c135 - -.asm_c8d4 - ld hl, wd3b9 - ld [hl], e - inc hl - ld [hl], d - pop hl - ld a, $1 - call Func_c29b - call Func_c241 - call $4915 - call DoFrameIfLCDEnabled - call $2c62 - ret -; 0xc8ed - -Func_c8ed: ; c8ed (3:c8ed) - push hl - push bc - push de - push hl - ld a, $1 - call Func_c29b - call $4915 - call DoFrameIfLCDEnabled - pop hl - ld a, l - or h - jr z, .asm_c90e - push hl - xor a - ld hl, wd3b9 - ld [hli], a - ld [hl], a - pop hl - call YesOrNoMenuWithText - jr .asm_c911 - -.asm_c90e - call YesOrNoMenu - -.asm_c911 - pop de - pop bc - pop hl - ret - -Func_c915: ; c915 (3:4915) - push bc - push de - ld de, $000c - ld bc, $1406 - call AdjustCoordinatesForWindow - call $43ca - pop de - pop bc - ret - -Func_c926: ; c926 (3:4926) - push bc - call Func_39c3 - ld a, [wd3aa] - ld [wd3b6], a - farcall Func_1c768 - pop bc - -Func_c935: ; c935 (3:4935) - push hl - ld hl, wd0c6 - ld [hl], c - inc hl - ld [hl], b - ld a, $3 - ld [wd0bf], a - pop hl - ret - -Func_c943: ; c943 (3:4943) - push hl - push bc - push de - ld l, $0 - call Func_3abd - jr nc, .asm_c98f -.asm_c94d - ld a, l - ld [wd4c4], a - ld a, h - ld [wd4c5], a - ld a, $4 - ld [wd4c6], a - ld de, wd3ab - ld bc, $0006 - call Func_3bf5 - ld a, [wd3ab] - or a - jr z, .asm_c98f - push hl - ld a, [wd3af] - ld l, a - ld a, [wd3b0] - ld h, a - or l - jr z, .asm_c97a - call Func_3c45 - jr nc, .asm_c988 -.asm_c97a - ld a, [wd3ab] - farcall Func_11857 - call Func_c998 - farcall Func_1c485 -.asm_c988 - pop hl - ld bc, $0006 - add hl, bc - jr .asm_c94d -.asm_c98f - ld l, $2 - call Func_c9c2 - pop de - pop bc - pop hl - ret - -Func_c998: ; c998 (3:4998) - ld a, [wd3ab] - cp $22 - ret nz - ld a, [wd3d0] - or a - ret z - ld b, $4 - ld a, [wConsole] - cp $2 - jr nz, .asm_c9ae - ld b, $e -.asm_c9ae - ld a, b - ld [wd3b1], a - ld a, $0 - ld [wd3b2], a - ret - -Func_c9b8: ; c9b8 (3:49b8) - ld l, $8 - jr Func_c9c2 - -Func_c9bc: ; c9bc (3:49bc) - ld l, $a - jr Func_c9c2 - -Func_c9c0: ; c9c0 (3:49c0) - ld l, $c - -Func_c9c2: ; c9c2 (3:49c2) - call Func_3abd - ret nc - jp hl - -Func_c9c7: ; c9c7 (3:49c7) - ld l, $e - jr Func_c9c2 - -Func_c9cb: ; c9cb (3:49cb) - push hl - push bc - ld hl, wEventFlags - ld bc, $0040 -.asm_c9d3 - xor a - ld [hli], a - dec bc - ld a, b - or c - jr nz, .asm_c9d3 - pop bc - pop hl - ret - -Func_c9dd: ; c9dd (3:49dd) - xor a - ld [wd411], a - call Func_c9e8 - call Func_ca0e - ret - -Func_c9e8: ; c9e8 (3:49e8) - ld c, $0 - call Func_ca69 - db $13 - cp $2 - jr c, .asm_ca04 -.asm_c9f2 - call UpdateRNGSources - and $3 - ld c, a - ld b, $0 - ld hl, Unknown_ca0a - add hl, bc - ld a, [wd0bb] - cp [hl] - jr z, .asm_c9f2 -.asm_ca04 - ld a, c - call Func_ca8f - db $34 - ret - -Unknown_ca0a: ; ca0a (3:4a04) - INCROM $ca0a, $ca0e - -Func_ca0e: ; ca0e (3:4a0e) - ld a, [wd32e] - cp $b - jr z, .asm_ca68 - call Func_ca69 - db $22 - or a - jr nz, .asm_ca4a - call Func_ca69 - db $40 - cp $7 - jr z, .asm_ca68 - or a - jr z, .asm_ca33 - cp $2 - jr z, .asm_ca62 - ld c, $1 - call Func_ca8f - db $40 - jr .asm_ca62 -.asm_ca33 - call Func_ca69 - db $3f - cp $7 - jr z, .asm_ca68 - or a - jr z, .asm_ca68 - cp $2 - jr z, .asm_ca68 - ld c, $1 - call Func_ca8f - db $3f - jr .asm_ca68 -.asm_ca4a - call UpdateRNGSources - ld c, $1 - and $3 - or a - jr z, .asm_ca56 - ld c, $0 -.asm_ca56 - call Func_ca8f - db $41 - jr .asm_ca5c -.asm_ca5c - ld c, $7 - call Func_ca8f - db $40 -.asm_ca62 - ld c, $7 - call Func_ca8f - db $3f -.asm_ca68 - ret - -Func_ca69: ; ca69 (3:4a69) - call Func_cab3 -CheckIfEventFlagSet: ; ca6c (3:4a6c) - push hl - push bc - call GetEventFlagMod - ld c, [hl] - ld a, [wd3d1] -.asm_ca75 - bit 0, a - jr nz, .asm_ca7f - srl a - srl c - jr .asm_ca75 -.asm_ca7f - and c - pop bc - pop hl - or a - ret -; 0xca84 - - INCROM $ca84, $ca8f - -Func_ca8f: ; ca8f (3:4a8f) - call Func_cab3 - -; a - pointer on table for cb1d, c - set or reset control bit -ModifyEventFlags: ; ca92 (3:4a92) - push hl - push bc - call GetEventFlagMod - ld a, [wd3d1] -.asm_ca9a - bit 0, a - jr nz, .asm_caa4 - srl a - sla c - jr .asm_ca9a -.asm_caa4 - ld a, [wd3d1] - and c - ld c, a - ld a, [wd3d1] - cpl - and [hl] - or c - ld [hl], a - pop bc - pop hl - ret - -Func_cab3: ; cab3 (3:4ab3) - push hl - ld hl, sp+$4 - push bc - ld c, [hl] - inc hl - ld b, [hl] - ld a, [bc] - inc bc - ld [hl], b - dec hl - ld [hl], c - pop bc - pop hl - ret -; 0xcac2 - - INCROM $cac2, $cac5 - -SetEventFlags: ; cac5 (3:4ac5) - push bc - ld c, $ff - call ModifyEventFlags - pop bc - ret -; 0xcacd - - INCROM $cacd, $cad0 - -Func_cad0: ; cad0 (3:4ad0) - push bc - ld c, $0 - call ModifyEventFlags - pop bc - ret - -Func_cad8: ; cad8 (3:4ad8) - push hl - push bc - ld hl, $4b15 - ld bc, $0008 -.asm_cae0 - ld a, [hli] - call CheckIfEventFlagSet - jr z, .asm_cae7 - inc b - -.asm_cae7 - dec c - jr nz, .asm_cae0 - ld c, b - call Func_ca8f - ld l, $79 - push af - cp $8 - jr nc, .asm_caff - cp $7 - jr nc, .asm_cb05 - cp $3 - jr nc, .asm_cb0b - jr .asm_cb11 - -.asm_caff - ld a, $c - farcall $4, $4a70 - -.asm_cb05 - ld a, $b - farcall $4, $4a70 - -.asm_cb0b - ld a, $a - farcall $4, $4a70 - -.asm_cb11 - pop af - pop bc - pop hl - ret -; 0xcb15 - - INCROM $cb15, $cb1d - -GetEventFlagMod: ; cb1d (3:4b1d) - push bc - ld c, a - ld b, $0 - sla c - rl b - ld hl, EventFlagMods - add hl, bc - ld a, [hli] - ld c, a - ld a, [hl] - ld [wd3d1], a - ld b, $0 - ld hl, wEventFlags - add hl, bc - pop bc - ret - -; offset - bytes to set or reset -EventFlagMods: ; cb37 (3:4b37) - INCROM $cb37, $cc32 - -Func_cc32: ; cc32 (3:4c32) - push hl - ld hl, wd0c8 - ld e, [hl] - inc hl - ld d, [hl] - pop hl - call Func_c8ba - ret -; 0xcc3e - - INCROM $cc3e, $cc42 - -; called when pressing a in front of an object. creates a pointer to the data right after an RST20 -; was called, then runs RunOverworldScript to handle that data -RST20: ; cc42 (3:4c42) - pop hl - ld a, l - ld [wOWScriptPointer], a - ld a, h - ld [wOWScriptPointer+1], a - xor a - ld [wBreakOWScriptLoop], a -.asm_cc4f - call RunOverworldScript - ld a, [wBreakOWScriptLoop] ; if you break out, it jumps - or a - jr z, .asm_cc4f - ld hl, wOWScriptPointer - ld a, [hli] - ld c, a - ld b, [hl] - push bc - ret - -IncreaseOWScriptPointerBy1: ; cc60 (3:4c60) - ld a, 1 - jr IncreaseOWScriptPointer -IncreaseOWScriptPointerBy2: ; cc64 (3:4c64) - ld a, 2 - jr IncreaseOWScriptPointer -IncreaseOWScriptPointerBy4: ; cc68 (3:4c68) - ld a, 4 - jr IncreaseOWScriptPointer -IncreaseOWScriptPointerBy5: ; cc6c (3:4c6c) - ld a, 5 - jr IncreaseOWScriptPointer -IncreaseOWScriptPointerBy6: ; cc70 (3:4c70) - ld a, 6 - jr IncreaseOWScriptPointer -IncreaseOWScriptPointerBy7: ; cc74 (3:4c74) - ld a, 7 - jr IncreaseOWScriptPointer -IncreaseOWScriptPointerBy3: ; cc78 (3:4c78) - ld a, 3 - -IncreaseOWScriptPointer: ; cc7a (3:4c7a) - ld c, a - ld a, [wOWScriptPointer] - add c - ld [wOWScriptPointer], a - ld a, [wOWScriptPointer+1] - adc 0 - ld [wOWScriptPointer+1], a - ret - -SetOWScriptPointer: ; cc8b (3:4c8b) - ld hl, wOWScriptPointer - ld [hl], c - inc hl - ld [hl], b - ret -; 0xcc92 - - INCROM $cc92, $cc96 - -GetOWSArgs1AfterPointer: ; cc96 (3:4c96) - ld a, $1 - jr GetOWSArgsAfterPointer - -GetOWSArgs2AfterPointer: ; cc9a (3:4c9a) - ld a, $2 - jr GetOWSArgsAfterPointer -GetOWSArgs3AfterPointer: ; cc9e (3:4c9e) - ld a, $3 - -GetOWSArgsAfterPointer: ; cca0 (3:4ca0) - push hl - ld l, a - ld a, [wOWScriptPointer] - add l - ld l, a - ld a, [wOWScriptPointer+1] - adc $0 - ld h, a - ld a, [hli] - ld c, a - ld b, [hl] - pop hl - or b - ret - -Func_ccb3: ; ccb3 (3:4cb3) - ld a, $ff - ld [wd415], a - ret - -Func_ccb9: ; ccb9 (3:4cb9) - xor a - ld [wd415], a - ret - -OWScript_EndScriptLoop1: ; ccbe (3:4cbe) -OWScript_EndScriptLoop2: ; ccbe (3:4cbe) -OWScript_EndScriptLoop3: ; ccbe (3:4cbe) -OWScript_EndScriptLoop4: ; ccbe (3:4cbe) -OWScript_EndScriptLoop5: ; ccbe (3:4cbe) -OWScript_EndScriptLoop6: ; ccbe (3:4cbe) -OWScript_EndScriptLoop7: ; ccbe (3:4cbe) -OWScript_EndScriptLoop8: ; ccbe (3:4cbe) -OWScript_EndScriptLoop9: ; ccbe (3:4cbe) -OWScript_EndScriptLoop10: ; ccbe (3:4cbe) - ld a, $01 - ld [wBreakOWScriptLoop], a - jp IncreaseOWScriptPointerBy1 - -OWScript_CloseTextBox: ; ccc6 (3:4cc6) - call CloseDialogueBox - jp IncreaseOWScriptPointerBy1 - -OWScript_EndScriptCloseText: ; cccc (3:4ccc) - call OWScript_CloseTextBox - call OWScript_EndScriptLoop1 - pop hl - ret - -; args: 2-Text String Index -OWScript_PrintTextString: ; ccd4 (3:4cd4) - ld l, c - ld h, b - call Func_cc32 - jp IncreaseOWScriptPointerBy3 - -Func_ccdc: ; ccdc (3:4cdc) - ld l, c - ld h, b - call Func_c891 - jp IncreaseOWScriptPointerBy3 - -Func_cce4: ; cce4 (3:4ce4) - ld a, $1 - ld [wcd9a], a - -; Asks the player a question then jumps if they answer yes -OWScript_AskQuestionJump: ; cce9 (3:4ce9) - ld l, c - ld h, b - call Func_c8ed - ld a, [hCurrentMenuItem] - ld [wd415], a - jr c, .asm_ccfe - call GetOWSArgs3AfterPointer - jr z, .asm_ccfe - jp SetOWScriptPointer - -.asm_ccfe - jp IncreaseOWScriptPointerBy5 - -; args - prize cards, deck id, duel theme index -; sets a battle up, doesn't start until we break out of the script system. -OWScript_StartBattle: ; cd01 (3:4d01) - call Func_cd66 - ld a, [wd3b6] - ld l, $0 - call Func_39ad - ld a, [hl] - farcall Func_118d3 - ld a, [wcc19] - cp $ff - jr nz, .asm_cd26 - ld a, [wd695] - ld c, a - ld b, $0 - ld hl, $4d63 - add hl, bc - ld a, [hl] - ld [wcc19], a -.asm_cd26 - ld a, [wd3b6] - ld l, $0 - call Func_39ad - ld a, [hl] -asm_cd2f - ld [wd0c4], a - ld [wcc14], a - push af - farcall Func_1c557 - ld [wd0c5], a - pop af - farcall Func_118a7 - ld a, GAME_EVENT_DUEL - ld [wGameEvent], a - ld hl, wd0b4 - set 6, [hl] - jp IncreaseOWScriptPointerBy4 - -Func_cd4f: ; cd4f (3:4d4f) - call Func_cd66 - ld a, [wd696] - farcall Func_118bf - ld a, $16 - ld [wMatchStartTheme], a - ld a, [wd696] - jr asm_cd2f - -Unknown_dd63: ; cd4f (3:4d4f) - INCROM $cd63, $cd66 - -Func_cd66: ; cd66 (3:4d66) - ld a, c - ld [wcc18], a - ld a, b - ld [wcc19], a - call GetOWSArgs3AfterPointer - ld a, c - ld [wDuelTheme], a - ret - -Func_cd76: ; cd76 (3:4d76) - ld a, GAME_EVENT_BATTLE_CENTER - ld [wGameEvent], a - ld hl, wd0b4 - set 6, [hl] - jp IncreaseOWScriptPointerBy1 - -Func_cd83: ; cd83 (3:4d83) - ld a, [wd415] - or a - jr nz, .asm_cd8c - call GetOWSArgs3AfterPointer -.asm_cd8c - ld l, c - ld h, b - call Func_cc32 - jp IncreaseOWScriptPointerBy5 - -Func_cd94: ; cd94 (3:4d94) - call Func_ca69 - ld b, h -Unknown_cd98: - dec a - and $3 - add a - inc a - call GetOWSArgsAfterPointer - ld l, c - ld h, b - call Func_cc32 - jp IncreaseOWScriptPointerBy7 - -Func_cda8: ; cda8 (3:4da8) - ld a, [wd415] - or a - jr nz, .asm_cdb1 - call GetOWSArgs3AfterPointer -.asm_cdb1 - ld l, c - ld h, b - call Func_c891 - jp IncreaseOWScriptPointerBy5 - -OWScript_PrintTextCloseBox: ; cdb9 (3:4db9) - ld l, c - ld h, b - call Func_cc32 - call CloseDialogueBox - ld a, $1 - ld [wBreakOWScriptLoop], a - call IncreaseOWScriptPointerBy3 - pop hl - ret - -Func_cdcb: ; cdcb (3:4dcb) - ld a, [wd3b6] - ld [wd3aa], a -Func_4dd1: ; cdd1 (3:4dd1) - farcall Func_1c50a - jp IncreaseOWScriptPointerBy1 - -Func_cdd8: ; cdd8 (3:4dd8) - ld a, [wd3aa] - push af - ld a, [wd3ab] - push af - ld a, [wd696] - ld [wd3ab], a - call Func_39c3 - call Func_4dd1 - pop af - ld [wd3ab], a - pop af - ld [wd3aa], a - ret - -Func_cdf5: ; cdf5 (3:4df5) - ld a, [wd3aa] - push af - ld a, [wd3ab] - push af - ld a, [wd696] - ld [wd3ab], a - ld a, c - ld [wd3ac], a - ld a, b - ld [wd3ad], a - ld a, $2 - ld [wd3ae], a - ld a, [wd3ab] - farcall Func_11857 - farcall Func_1c485 - pop af - ld [wd3ab], a - pop af - ld [wd3aa], a - jp IncreaseOWScriptPointerBy3 - -Func_ce26: ; ce26 (3:4e26) - ld a, [wd3b6] - ld [wd3aa], a - farcall Func_1c455 - rlca - add c - ld l, a - ld a, b - adc $0 - ld h, a - ld c, [hl] - inc hl - ld b, [hl] - -Func_ce3a: ; ce3a (3:4e3a) - farcall Func_1c78d -.asm_ce3e - call DoFrameIfLCDEnabled - farcall Func_1c7de - jr nz, .asm_ce3e - jp IncreaseOWScriptPointerBy3 - -Func_ce4a: ; ce4a (3:4e4a) - ld a, [wd3b6] - ld [wd3aa], a - jr Func_ce3a - -Func_ce52: ; ce52 (3:4e52) - ld a, [wd3aa] - push af - ld a, [wd3ab] - push af - ld a, [wd696] -asm_ce5d - ld [wd3ab], a - call Func_39c3 - call Func_ce3a - pop af - ld [wd3ab], a - pop af - ld [wd3aa], a - ret - -Func_ce6f: ; ce6f (3:4e6f) - ld a, [wd3aa] - push af - ld a, [wd3ab] - push af - ld a, c - push af - call GetOWSArgs2AfterPointer - push bc - call IncreaseOWScriptPointerBy1 - pop bc - pop af - jr asm_ce5d - -Func_ce84: ; ce84 (3:4e84) - call Func_c135 - jp IncreaseOWScriptPointerBy1 - -; args: booster pack index, booster pack index, booster pack index -OWScript_GiveBoosterPacks: ; ce8a (3:4e8a) - xor a - ld [wd117], a - push bc - call Func_c2a3 - pop bc - push bc - ld a, c - farcall BoosterPack_1031b - ld a, 1 - ld [wd117], a - pop bc - ld a, b - cp $ff - jr z, .asm_ceb4 - farcall BoosterPack_1031b - call GetOWSArgs3AfterPointer - ld a, c - cp $ff - jr z, .asm_ceb4 - farcall BoosterPack_1031b -.asm_ceb4 - call Func_c2d4 - jp IncreaseOWScriptPointerBy4 - -Func_ceba: ; ceba (3:4eba) - xor a - ld [wd117], a - call Func_c2a3 - ld hl, $4edd -.asm_cec4 - ld a, [hl] - cp $ff - jr z, .asm_ced7 - push hl - farcall BoosterPack_1031b - ld a, $1 - ld [wd117], a - pop hl - inc hl - jr .asm_cec4 -.asm_ced7 - call Func_c2d4 - jp IncreaseOWScriptPointerBy1 -; 0xcedd - - INCROM $cedd, $cee2 - -Func_cee2: ; cee2 (3:4ee2) - call Func_c2a3 - ld a, c - cp $ff - jr z, .asm_cf09 - or a - jr nz, .asm_cef0 - ld a, [wd697] - -.asm_cef0 - push af - farcall Func_10000 - farcall Func_10031 - pop af - bank1call Func_7594 - call Func_c1a4 - call DoFrameIfLCDEnabled - call Func_c2d4 - jp IncreaseOWScriptPointerBy2 - -.asm_cf09 - xor a - jr .asm_cef0 - -Func_cf0c: ; cf0c (3:4f0c) - ld a, c - call GetCardCountInCollectionAndDecks - jr asm_cf16 - -Func_cf12: ; cf12 (3:4f12) - ld a, c - call GetCardCountInCollection - -asm_cf16 - or a - jr nz, asm_cf1f - -asm_cf19 - call Func_ccb9 - jp IncreaseOWScriptPointerBy4 - -asm_cf1f - call Func_ccb3 - call GetOWSArgs2AfterPointer - jr z, asm_cf2a - jp SetOWScriptPointer - -asm_cf2a - jp IncreaseOWScriptPointerBy4 - -Func_cf2d: ; cf2d (3:4f2d) - push bc - call IncreaseOWScriptPointerBy1 - pop bc - call GetRawAmountOfCardsOwned - ld a, h - cp b - jr nz, .asm_cf3b - ld a, l - cp c - -.asm_cf3b - jr nc, asm_cf1f - jr asm_cf19 - -Func_cf3f: ; cf3f (3:4f3f) - ld a, c - or a - jr nz, .asm_cf46 - ld a, [wd697] - -.asm_cf46 - call AddCardToCollection - jp IncreaseOWScriptPointerBy2 - -Func_cf4c: ; cf4c (3:4f4c) - ld a, c - call RemoveCardFromCollection - jp IncreaseOWScriptPointerBy2 - -Func_cf53: ; cf53 (3:4f53) - ld c, $1 - ld b, $0 -.asm_cf57 - ld a, c - call GetCardCountInCollection - add b - ld b, a - inc c - ld a, c - cp $8 - jr c, .asm_cf57 - ld a, b - or a - jr nz, Func_cf6d -Func_cf67: ; cf67 (3:4f67) - call Func_ccb9 - jp IncreaseOWScriptPointerBy3 - -Func_cf6d: ; cf6d (3:4f6d) - call Func_ccb3 - call GetOWSArgs1AfterPointer - jr z, .asm_cf78 - jp SetOWScriptPointer - -.asm_cf78 - jp IncreaseOWScriptPointerBy3 - -Func_cf7b: ; cf7b (3:4f7b) - ld c, $1 -.asm_cf7d - push bc - ld a, c - call GetCardCountInCollection - jr c, .asm_cf8c - ld b, a -.asm_cf85 - ld a, c - call RemoveCardFromCollection - dec b - jr nz, .asm_cf85 - -.asm_cf8c - pop bc - inc c - ld a, c - cp $8 - jr c, .asm_cf7d - jp IncreaseOWScriptPointerBy1 - -; This function doesn't look like a valid function, but it's pointed to in the table. -Func_cf96: ; cf96 (3:4f96) - ld c, $0 - call Func_ca69 - ld de, $28b7 - ld hl, $08fe - jr c, .asm_cfa4 - inc c - -.asm_cfa4 - call Func_ca69 - rla - cp $8 - jr c, .asm_cfad - inc c - -.asm_cfad - call Func_ca69 -.asm_cfb0 - jr nz, .asm_cfb0 - ld [$0138], sp - inc c - ld a, c - rlca - add $3 - call GetOWSArgsAfterPointer - jp SetOWScriptPointer - -Func_cfc0: ; cfc0 (3:4fc0) - call GetOWSArgs1AfterPointer - jp SetOWScriptPointer - -Func_cfc6: ; cfc6 (3:4fc6) - ld a, [wd3b6] - ld [wd3aa], a - ld a, c - farcall Func_1c52e - jp IncreaseOWScriptPointerBy2 - -Func_cfd4: ; cfd4 (3:4fd4) - call Func_ca69 - dec l - ld b, a -.asm_cfd9 - ld a, $5 - call Random - ld e, $1 - ld c, a - push bc - or a - jr z, .asm_cfea -.asm_cfe5 - sla e - dec c - jr nz, .asm_cfe5 - -.asm_cfea - ld a, e - and b - pop bc - jr nz, .asm_cfd9 - ld a, e - or b - push bc - ld c, a - call Func_ca8f - dec l - pop bc - ld b, $0 - ld hl, $5006 - add hl, bc - ld c, [hl] - call Func_ca8f - dec hl - jp IncreaseOWScriptPointerBy1 - - INCROM $d006, $d00b - -Func_d00b: ; d00b (3:500b) - sla c - ld b, $0 - ld hl, wTxRam2 - add hl, bc - push hl - call Func_ca69 - dec hl - ld e, a - ld d, $0 - call GetCardName - pop hl - ld [hl], e - inc hl - ld [hl], d - jp IncreaseOWScriptPointerBy2 - -Func_d025: ; d025 (3:5025) - call Func_ca69 - dec hl - call GetCardCountInCollectionAndDecks - jp c, Func_cf67 - jp Func_cf6d - -Func_d032: ; d032 (3:5032) - call Func_ca69 - dec hl - call GetCardCountInCollection - jp c, Func_cf67 - jp Func_cf6d - -Func_d03f: ; d03f (3:503f) - call Func_ca69 - dec hl - call RemoveCardFromCollection - jp IncreaseOWScriptPointerBy1 - -OWScript_ScriptJump: ; d049 (3:5049) - call GetOWSArgs1AfterPointer - jp SetOWScriptPointer - -Func_d04f: ; d04f (3:504f) - call Func_cad8 - jp IncreaseOWScriptPointerBy1 - -Func_d055: ; d055 (3:5055) - ld a, c - call Func_c5ce - jp IncreaseOWScriptPointerBy2 - - -OWScript_MovePlayer: ; 505c (3:505c) - ld a, c - ld [wd339], a - ld a, b - ld [wd33a], a - call StartScriptedMovement -.asm_d067 - call DoFrameIfLCDEnabled - call SetScreenScroll - call Func_c53d - ld a, [wd335] - and $03 - jr nz, .asm_d067 - call DoFrameIfLCDEnabled - call SetScreenScroll - jp IncreaseOWScriptPointerBy3 - -Func_d080: ; d080 (3:5080) - ld a, c - farcall Func_11893 - jp IncreaseOWScriptPointerBy2 - -Func_d088: ; d088 (3:5088) - ld a, c - ld [wd3ab], a - call GetOWSArgs2AfterPointer - call Func_c926 - jp IncreaseOWScriptPointerBy4 - -Func_d095: ; d095 (3:5095) - ld a, [wd3b6] - ld [wd3aa], a - push bc - call GetOWSArgs3AfterPointer - ld a, [wd3b6] - ld l, $5 - call Func_39ad - res 4, [hl] - ld a, [hl] - or c - ld [hl], a - pop bc - ld e, c - ld a, [wConsole] - cp $2 - jr nz, .asm_d0b6 - ld e, b - -.asm_d0b6 - ld a, e - farcall Func_1c57b - jp IncreaseOWScriptPointerBy4 - -Func_d0be: ; d0be (3:50be) - ld a, [wd3b6] - ld [wd3aa], a - ld a, c - ld c, b - ld b, a - farcall Func_1c461 - jp IncreaseOWScriptPointerBy3 - -Func_d0ce: ; d0ce (3:50ce) - push bc - call DoFrameIfLCDEnabled - pop bc - dec c - jr nz, Func_d0ce - jp IncreaseOWScriptPointerBy2 - -Func_d0d9: ; d0d9 (3:50d9) - ld a, [wd3b6] - ld [wd3aa], a - ld d, c - ld e, b - farcall Func_1c477 - ld a, e - cp c - jp nz, Func_d48a - ld a, d - cp b - jp nz, Func_d48a - jp Func_d490 - -Func_d0f2: ; d0f2 (3:50f2) - ld a, [wPlayerXCoord] - cp c - jp nz, Func_d48a - ld a, [wPlayerYCoord] - cp b - jp nz, Func_d48a - jp Func_d490 - -Func_d103: ; d103 (3:5103) - ld a, [wd3aa] - push af - ld a, [wd3ab] - push af - ld a, c - ld [wd3ab], a - call Func_39c3 - jr c, .asm_d119 - call $54d1 - jr .asm_d11c - -.asm_d119 - call $54e6 - -.asm_d11c - pop af - ld [wd3ab], a - pop af - ld [wd3aa], a - ret - -Func_d125: ; d125 (3:5125) - ld a, c - push af - call Func_c2a3 - pop af - farcall Medal_1029e - call Func_c2d4 - jp IncreaseOWScriptPointerBy2 - -Func_d135: ; d135 (3:5135) - sla c - ld b, $0 - ld hl, wTxRam2 - add hl, bc - push hl - ld a, [wd32e] - rlca - ld c, a - ld b, $0 - ld hl, $5151 - add hl, bc - ld e, [hl] - inc hl - ld d, [hl] - pop hl - ld [hl], e - inc hl - ld [hl], d - jp IncreaseOWScriptPointerBy2 - - INCROM $d153, $d16b - -Func_d16b: ; d16b (3:516b) - ld hl, wd0c8 - ld e, [hl] - inc hl - ld d, [hl] - push de - sla c - ld b, $0 - ld hl, wTxRam2 - add hl, bc - push hl - ld a, [wd696] - farcall Func_11893 - pop hl - ld a, [wd0c8] - ld [hli], a - ld a, [wd0c9] - ld [hl], a - pop de - ld hl, wd0c8 - ld [hl], e - inc hl - ld [hl], d - jp IncreaseOWScriptPointerBy2 - -Func_d195: ; d195 (3:5195) - ld a, [wd3ab] - push af - call Func_ca69 - ld b, l - inc a - ld c, a - call Func_ca8f - ld b, l - call Func_f580 - pop af - ld [wd3ab], a - jp IncreaseOWScriptPointerBy1 - -Func_d1ad: ; d1ad (3:51ad) - call MainMenu_c75a - jp IncreaseOWScriptPointerBy1 - -Func_d1b3: ; d1b3 (3:51b3) - call Func_ca69 - ld b, h - dec a - cp $2 - jr c, .asm_d1c3 - ld a, $d - call Random - add $2 - -.asm_d1c3 - ld hl, $51dc -asm_d1c6 - ld e, a - add a - add e - ld e, a - ld d, $0 - add hl, de - ld a, [hli] - ld [wd697], a - ld a, [hli] - ld [wTxRam2], a - ld a, [hl] - ld [wTxRam2 + 1], a - jp IncreaseOWScriptPointerBy1 - - INCROM $d1dc, $d209 - -Func_d209: ; d209 (3:5209) - call Func_ca69 - ld [hl], c - ld e, a -.asm_d20e - call UpdateRNGSources - ld d, $8 - and $3 - ld c, a - ld b, a -.asm_d217 - jr z, .asm_d21e - srl d - dec b - jr .asm_d217 - -.asm_d21e - ld a, d - and e - jr nz, .asm_d20e - push bc - ld b, $0 - ld hl, $5240 - add hl, bc - ld a, [hl] - call SetEventFlags - pop bc - ld hl, $5234 - ld a, c - jr asm_d1c6 - - INCROM $d234, $d244 - -Func_d244: ; d244 (3:5244) - ld a, c - farcall Func_80ba4 - jp IncreaseOWScriptPointerBy2 - -Func_d24c: ; d24c (3:524c) - ld hl, $525e - xor a - call Func_d28c - ld a, [wd695] - ld c, a - call Func_ca8f - halt - jp IncreaseOWScriptPointerBy1 - - INCROM $d25e, $d271 - -Func_d271: ; d271 (3:5271) - ld hl, $527b - xor a - call Func_d28c - jp IncreaseOWScriptPointerBy1 -; 0xd27b - - INCROM $d27b, $d28c - -Func_d28c: ; d28c (3:528c) - ld [wd416], a - push hl - call Func_c241 - call Func_c915 - call DoFrameIfLCDEnabled - pop hl - ld a, [hli] - ld e, a - ld a, [hli] - ld d, a - ld a, [hli] - push hl - ld h, [hl] - ld l, a - or h - jr z, .asm_d2a8 - call Func_c8ba - -.asm_d2a8 - ld a, $1 - call Func_c29b - pop hl - inc hl - ld a, [hli] - push hl - ld h, [hl] - ld l, a - ld a, [wd416] - farcall Func_111e9 - pop hl - inc hl - ld a, [hli] - ld [wd417], a - push hl - -.asm_d2c1 - call DoFrameIfLCDEnabled - call HandleMenuInput - jr nc, .asm_d2c1 - ld a, [hCurrentMenuItem] - cp e - jr z, .asm_d2d9 - ld a, [wd417] - or a - jr z, .asm_d2c1 - ld e, a - ld [hCurrentMenuItem], a - -.asm_d2d9 - pop hl - ld a, [hli] - push hl - ld h, [hl] - ld l, a - ld a, e - ld [hl], a - add a - ld c, a - ld b, $0 - pop hl - inc hl - ld a, [hli] - ld h, [hl] - ld l, a - or h - jr z, .asm_d2f5 - add hl, bc - ld a, [hli] - ld [wTxRam2], a - ld a, [hl] - ld [wTxRam2 + 1], a - -.asm_d2f5 - ret - -Func_d2f6: ; d2f6 (3:52f6) - ld hl, $530c - xor a - call Func_d28c - ld a, [wd694] - ld c, a - call Func_ca8f - ld [hl], l - xor a - ld [wd694], a - jp IncreaseOWScriptPointerBy1 -; 0xd30c - - INCROM $d30c, $d317 - -Func_d317: ; d317 (3:5317) - ld hl, $532b - ld a, [wd694] - call Func_d28c - ld a, [wd694] - ld c, a - call Func_ca8f - ld [hl], l - jp IncreaseOWScriptPointerBy1 - - - INCROM $d32b, $d336 - -DeckMachine_d336: ; d336 (3:5336) - push bc - call Func_c2a3 - call PauseSong - ld a, MUSIC_DECK_MACHINE - call PlaySong - call EmptyScreen - xor a - ldh [hSCX], a - ldh [hSCY], a - farcall Func_1288c - call EnableLCD - pop bc - ld a, c - or a - jr z, .asm_d360 - dec a - ld [wd0a9], a - farcall Func_ba04 - jr .asm_d364 -.asm_d360 - farcall Func_b19d -.asm_d364 - call ResumeSong - call Func_c2d4 - jp IncreaseOWScriptPointerBy2 - -Func_d36d: ; d36d (3:536d) - ld a, [wOWScriptPointer] - ld l, a - ld a, [wOWScriptPointer+1] - ld h, a - inc hl - ld a, [hli] - ld a, [hli] - ld [wd0bb], a - ld a, [hli] - ld [wd0bc], a - ld a, [hli] - ld [wd0bd], a - ld a, [hli] - ld [wd0be], a - ld hl, wd0b4 - set 4, [hl] - jp IncreaseOWScriptPointerBy6 - -Func_d38f: ; d38f (3:538f) - farcall Func_10c96 - jp IncreaseOWScriptPointerBy2 - -Func_d396: ; d396 (3:5396) - farcall Func_1157c - jp IncreaseOWScriptPointerBy2 - -Func_d39d: ; d39d (3:539d) - ld a, c - or a - jr nz, .asm_d3ac - farcall Func_10dba - ld c, a - call Func_ca8f - ld [hl], d - jr .asm_d3b6 - -.asm_d3ac - ld a, GAME_EVENT_GIFT_CENTER - ld [wGameEvent], a - ld hl, wd0b4 - set 6, [hl] - -.asm_d3b6 - jp IncreaseOWScriptPointerBy2 - -Func_d3b9: ; d3b9 (3:53b9) - call Func_3917 - ld a, GAME_EVENT_CREDITS - ld [wGameEvent], a - ld hl, wd0b4 - set 6, [hl] - jp IncreaseOWScriptPointerBy1 - -Func_d3c9: ; d3c9 (3:53c9) - ld a, c - farcall Func_10a70 - jp IncreaseOWScriptPointerBy2 - -Func_d3d1: ; d3d1 (3:53d1) - jp IncreaseOWScriptPointerBy1 - -Func_d3d4: ; d3d4 (3:53d4) - ld a, [wd693] - bank1call Func_7576 - jp IncreaseOWScriptPointerBy1 - - INCROM $d3dd, $d3e0 - -Func_d3e0: ; d3e0 (3:53e0) - ld a, $1 - ld [wd32e], a - farcall Func_11024 -.asm_d3e9 - call DoFrameIfLCDEnabled - farcall Func_11060 - ld a, [wd33e] - cp $2 - jr nz, .asm_d3e9 - farcall Func_10f2e - jp IncreaseOWScriptPointerBy1 - -Func_d3fe: ; d3fe (3:53fe) - ld a, c - ld [wd112], a - call PlaySong - jp IncreaseOWScriptPointerBy2 - -Func_d408: ; d408 (3:5408) - ld a, c - ld [wd111], a - jp IncreaseOWScriptPointerBy2 - -Func_d40f: ; d40f (3:540f) - ld a, c - call Func_3c83 - jp IncreaseOWScriptPointerBy2 - -Func_d416: ; d416 (3:5416) - ld a, c - call PlaySFX - jp IncreaseOWScriptPointerBy2 - -Func_d41d: ; d41d (3:541d) - call Func_39fc - jp IncreaseOWScriptPointerBy1 - -Func_d423: ; d423 (3:5423) - call PauseSong - jp IncreaseOWScriptPointerBy1 - -Func_d429: ; d429 (3:5429) - call ResumeSong - jp IncreaseOWScriptPointerBy1 - -Func_d42f: ; d42f (3:542f) - call Func_3c96 - jp IncreaseOWScriptPointerBy1 - -Func_d435: ; d435 (3:5435) - ld a, c - farcall Func_1c83d - jp IncreaseOWScriptPointerBy2 - -Func_d43d: ; d43d (3:543d) - ld a, GAME_EVENT_CHALLENGE_MACHINE - ld [wGameEvent], a - ld hl, wd0b4 - set 6, [hl] - jp IncreaseOWScriptPointerBy1 - -OWScript_CustomModifyEventFlags: ; d44a (3:544a) - ld a, c - ld c, b - call ModifyEventFlags - jp IncreaseOWScriptPointerBy3 - -Func_d452: ; d452 (3:5452) - ld a, c - push af - call CheckIfEventFlagSet - inc a - ld c, a - pop af - call ModifyEventFlags - jp IncreaseOWScriptPointerBy2 - -Func_d460: ; d460 (3:5460) - ld a, c - call CheckIfEventFlagSet - or a - jr z, asm_d46d -asm_d467 - call Func_ccb9 - jp IncreaseOWScriptPointerBy4 - -asm_d46d - call Func_ccb3 - call GetOWSArgs2AfterPointer - jr z, .asm_d478 - jp SetOWScriptPointer - -.asm_d478 - jp IncreaseOWScriptPointerBy4 - -OWScript_JumpIfFlagSet: ; d47b (3:547b) - ld a, c - call CheckIfEventFlagSet - or a - jr nz, asm_d46d - jr asm_d467 - -Func_d484: ; d484 (3:5484) - call Func_d4b6 - cp c - jr z, Func_d490 - -Func_d48a: ; d48a (3:548a) - call Func_ccb9 - jp IncreaseOWScriptPointerBy5 - -Func_d490: ; d490 (3:5490) - call Func_ccb3 - call GetOWSArgs3AfterPointer - jr z, .asm_d49b - jp SetOWScriptPointer - -.asm_d49b - jp IncreaseOWScriptPointerBy5 - -Func_d49e: ; d49e (3:549e) - call Func_d4b6 - cp c - jr nz, Func_d490 - jr Func_d48a - -Func_d4a6: ; d4a6 (3:54a6) - call Func_d4b6 - cp c - jr nc, Func_d490 - jr Func_d48a - -Func_d4ae: ; d4ae (3:54ae) - call Func_d4b6 - cp c - jr c, Func_d490 ; 0xd4b2 $dc - jr Func_d48a ; 0xd4b4 $d4 - -Func_d4b6: ; d4b6 (3:54b6) - ld a, c - ld c, b - call CheckIfEventFlagSet - ret - -OWScript_SetEventFlags: ; d4bc (3:54bc) - ld a, c - call SetEventFlags - jp IncreaseOWScriptPointerBy2 - -Func_d4c3: ; d4c3 (3:54c3) - ld a, c - call Func_cad0 - jp IncreaseOWScriptPointerBy2 - -Func_d4ca: ; d4ca (3:54ca) - ld a, c - call CheckIfEventFlagSet - or a - jr z, asm_d4e6 -Func_d4d1: - call Func_ccb3 - call GetOWSArgs2AfterPointer - jr z, .asm_d4dc - jp SetOWScriptPointer -.asm_d4dc - jp IncreaseOWScriptPointerBy4 - -OWScript_JumpIfFlagNotSet: - ld a, c - call CheckIfEventFlagSet - or a - jr z, Func_d4d1 -asm_d4e6 - call Func_ccb9 - jp IncreaseOWScriptPointerBy4 -; 0xd4ec - - INCROM $d4ec, $d753 - -OWSequence_d753: ; d753 (3:5753) - start_script - run_script OWScript_MovePlayer - db $00 - db $02 - run_script OWScript_MovePlayer - db $00 - db $02 - run_script OWScript_MovePlayer - db $00 - db $02 - run_script OWScript_MovePlayer - db $00 - db $02 - run_script OWScript_MovePlayer - db $00 - db $02 - run_script OWScript_MovePlayer - db $00 - db $02 - run_script OWScript_MovePlayer - db $00 - db $02 - run_script OWScript_MovePlayer - db $00 - db $02 - run_script OWScript_MovePlayer - db $00 - db $02 - run_script OWScript_PrintTextString - tx Text05e3 - run_script OWScript_CloseTextBox - run_script Func_d088 - db $07 - db $79 - db $57 - run_script OWScript_EndScriptLoop1 - ret - - start_script - run_script Func_ce4a - db $80 - db $58 - db $02 - - ; there's more to this script but it hasn't been disassembled yet - - INCROM $d77e, $e13f - -WaterClubMovePlayer: ; e13f (3:613f) - ld a, [wPlayerYCoord] - cp $8 - ret nz - call Func_ca69 - inc sp - cp $2 - ret nc - ld a, $21 - ld [wd3ab], a - ld bc, OWSequence_NotReadyToSeeAmy - jp Func_c926 - -WaterClubAfterDuel: ;e157 (3:6157) - ld hl, .after_duel_table - call FindEndOfBattleScript - ret - -.after_duel_table - dw $1f1f - dw OWSequence_BeatSara - dw OWSequence_LostToSara - - dw $2020 - dw OWSequence_BeatAmanda - dw OWSequence_LostToAmanda - - dw $2121 - dw $626c - dw $6260 - - dw $2222 - dw $6322 - dw $6344 - db $00 - -OWSequence_Sara: ; e177 (3:6177) - start_script - run_script OWScript_PrintTextString - tx Text042c - run_script OWScript_AskQuestionJump - tx Text042d - dw .yes_duel - run_script OWScript_PrintTextString - tx Text042e - run_script OWScript_EndScriptCloseText -.yes_duel - run_script OWScript_PrintTextString - tx Text042f - run_script OWScript_StartBattle - db 2 - db WATERFRONT_POKEMON_DECK_ID ; 6189 - db MUSIC_DUEL_THEME_1 - run_script OWScript_EndScriptCloseText - -OWSequence_BeatSara: ; e18c (3:618c) - start_script - run_script OWScript_SetEventFlags - db FLAG_BEAT_SARA - run_script OWScript_PrintTextString - tx Text0430 - run_script OWScript_GiveBoosterPacks - db BOOSTER_COLOSSEUM_WATER - db BOOSTER_COLOSSEUM_WATER - db NO_BOOSTER - run_script OWScript_PrintTextString - tx Text0431 - run_script OWScript_EndScriptCloseText - -OWSequence_LostToSara: ; e19a (03:619a) - start_script - run_script OWScript_PrintTextCloseBox - tx Text0432 - -OWSequence_Amanda: ; e19e (03:619e) - start_script - run_script OWScript_PrintTextString - tx Text0433 - run_script OWScript_AskQuestionJump - tx Text0434 - dw .yes_duel - run_script OWScript_PrintTextString - tx Text0435 - run_script OWScript_EndScriptCloseText -.yes_duel - run_script OWScript_PrintTextString - tx Text0436 - run_script OWScript_StartBattle - db 03 - db LONELY_FRIENDS_DECK_ID - db MUSIC_DUEL_THEME_1 - run_script OWScript_EndScriptCloseText - -OWSequence_BeatAmanda: ; e1b3 (03:61b3) - start_script - run_script OWScript_SetEventFlags - db FLAG_BEAT_AMANDA - run_script OWScript_PrintTextString - tx Text0437 - run_script OWScript_GiveBoosterPacks - db BOOSTER_MYSTERY_LIGHTNING_COLORLESS - db BOOSTER_MYSTERY_LIGHTNING_COLORLESS - db NO_BOOSTER - run_script OWScript_PrintTextString - tx Text0438 - run_script OWScript_EndScriptCloseText - -OWSequence_LostToAmanda: ; e1c1 (03:61c1) - start_script - run_script OWScript_PrintTextCloseBox - tx Text0439 - -OWSequence_NotReadyToSeeAmy: - INCROM $e1c5, $e21c - -OWSequence_Joshua: - start_script - run_script OWScript_JumpIfFlagNotSet - db FLAG_BEAT_AMANDA - dw .sara_and_amanda_not_beaten - run_script OWScript_JumpIfFlagNotSet - db FLAG_BEAT_SARA - dw .sara_and_amanda_not_beaten - run_script OWScript_ScriptJump - dw .beat_sara_and_amanda -.sara_and_amanda_not_beaten - run_script OWScript_CustomModifyEventFlags - db $33 ; offset on flagmod table - db $01 ; the control bit - run_script OWScript_PrintTextString - tx Text043b - run_script OWScript_EndScriptCloseText -.beat_sara_and_amanda - run_script OWScript_JumpIfFlagSet - db $33 - dw $623c - run_script OWScript_CustomModifyEventFlags - db $33 - db $01 - run_script OWScript_PrintTextString - tx Text043b - run_script OWScript_PrintTextString - tx Text043c - run_script Func_d484 - db $33 - db $01 - - INCROM $e23f, $e52c - -FindEndOfBattleScript: ; e52c (3:652c) - ld c, $0 - ld a, [wDuelResult] - or a ; cp DUEL_WIN - jr z, .player_won - ld c, $2 - -.player_won - ld a, [wd0c4] - ld b, a - ld de, $0005 -.check_enemy_byte_loop - ld a, [hli] - or a - ret z - cp b - jr z, .found_enemy - add hl, de - jr .check_enemy_byte_loop - -.found_enemy - ld a, [hli] - ld [wd3ab], a - ld b, $0 - add hl, bc - ld c, [hl] - inc hl - ld b, [hl] - jp Func_c926 -; 0xe553 - - INCROM $e553, $f580 - -Func_f580: ; f580 (3:7580) - call Func_ca69 - ld b, h - cp $3 - jr z, .asm_f596 - call Func_ca69 - ld b, l - cp $3 - ld d, $18 - jr nz, .asm_f598 - ld a, $2 - jr .asm_f5ac - -.asm_f596 - ld d, $19 - -.asm_f598 - ld a, d - call Random - ld c, a - call $75cc - jr c, .asm_f598 - call $75d4 - ld b, $0 - ld hl, $75b3 - add hl, bc - ld a, [hl] - -.asm_f5ac - ld [wd3ab], a - ld [wd696], a - ret -; 0xf5b3 - - INCROM $f5b3, $fc2b - -Func_fc2b: ; fc2b (3:7c2b) - ld a, [wDuelResult] - cp 2 - jr c, .asm_fc34 - ld a, $2 -.asm_fc34 - rlca - ld c, a - ld b, $0 - ld hl, PointerTable_fc4c - add hl, bc - ld c, [hl] - inc hl - ld b, [hl] - ld a, $b0 - ld [wd0c8], a - ld a, $3 - ld [wd0c9], a - jp Func_c935 - -PointerTable_fc4c: ; fc4c (3:7c4c) - dw Unknown_fc64 - dw Unknown_fc68 - dw Unknown_fc60 - - INCROM $fc52, $fc60 - -Unknown_fc60: ; fc60 (3:7c60) - INCROM $fc60, $fc64 - -Unknown_fc64: ; fc64 (3:7c64) - INCROM $fc64, $fc68 - -Unknown_fc68: ; fc68 (3:7c68) - INCROM $fc68, $fcad - -Func_fcad: ; fcad (3:7cad) - INCROM $fcad, $10000 |