diff options
-rwxr-xr-x | data/slot_machine_wheels.asm | 6 | ||||
-rwxr-xr-x | engine/battle/animations.asm | 68 | ||||
-rw-r--r-- | engine/battle/draw_hud_pokeball_gfx.asm | 16 | ||||
-rw-r--r-- | engine/battle/ghost_marowak_anim.asm | 12 | ||||
-rwxr-xr-x | engine/game_corner_slots.asm | 8 | ||||
-rwxr-xr-x | engine/intro.asm | 24 | ||||
-rwxr-xr-x | engine/slot_machine.asm | 141 | ||||
-rwxr-xr-x | engine/titlescreen2.asm | 20 | ||||
-rwxr-xr-x | engine/trade.asm | 16 | ||||
-rwxr-xr-x | wram.asm | 4 | ||||
-rwxr-xr-x | yellow/main.asm | 8 |
11 files changed, 167 insertions, 156 deletions
diff --git a/data/slot_machine_wheels.asm b/data/slot_machine_wheels.asm index 8f300152..dc9accca 100755 --- a/data/slot_machine_wheels.asm +++ b/data/slot_machine_wheels.asm @@ -1,4 +1,4 @@ -SlotMachineWheel1: ; 379e5 (d:79e5) +SlotMachineWheel1: ; 37c15 (d:7c15) dw SLOTS7 dw SLOTSMOUSE dw SLOTSFISH @@ -18,7 +18,7 @@ SlotMachineWheel1: ; 379e5 (d:79e5) dw SLOTSMOUSE dw SLOTSFISH -SlotMachineWheel2: ; 37a09 (d:7a09) +SlotMachineWheel2: ; 37c39 (d:7c39) dw SLOTS7 dw SLOTSFISH dw SLOTSCHERRY @@ -38,7 +38,7 @@ SlotMachineWheel2: ; 37a09 (d:7a09) dw SLOTSFISH dw SLOTSCHERRY -SlotMachineWheel3: ; 37a2d (d:7a2d) +SlotMachineWheel3: ; 37c5d (d:7c5d) dw SLOTS7 dw SLOTSBIRD dw SLOTSFISH diff --git a/engine/battle/animations.asm b/engine/battle/animations.asm index c0d0e000..f2b660f7 100755 --- a/engine/battle/animations.asm +++ b/engine/battle/animations.asm @@ -23,15 +23,15 @@ DrawFrameBlock: ; 78000 (1e:4000) dec a jr z,.flipBaseCoords ; 3 .noTransformation - ld a,[W_BASECOORDY] + ld a,[wBaseCoordY] add [hl] ld [de],a ; store Y inc hl inc de - ld a,[W_BASECOORDX] + ld a,[wBaseCoordX] jr .finishCopying .flipBaseCoords - ld a,[W_BASECOORDY] + ld a,[wBaseCoordY] ld b,a ld a,136 sub b ; flip Y base coordinate @@ -39,7 +39,7 @@ DrawFrameBlock: ; 78000 (1e:4000) ld [de],a ; store Y inc hl inc de - ld a,[W_BASECOORDX] + ld a,[wBaseCoordX] ld b,a ld a,168 sub b ; flip X base coordinate @@ -57,7 +57,7 @@ DrawFrameBlock: ; 78000 (1e:4000) inc de jp .nextTile .flipHorizontalAndVertical - ld a,[W_BASECOORDY] + ld a,[wBaseCoordY] add [hl] ; Y offset ld b,a ld a,136 @@ -65,7 +65,7 @@ DrawFrameBlock: ; 78000 (1e:4000) ld [de],a ; store Y inc hl inc de - ld a,[W_BASECOORDX] + ld a,[wBaseCoordX] add [hl] ; X offset ld b,a ld a,168 @@ -95,13 +95,13 @@ DrawFrameBlock: ; 78000 (1e:4000) inc de jp .nextTile .flipHorizontalTranslateDown - ld a,[W_BASECOORDY] + ld a,[wBaseCoordY] add [hl] add a,40 ; translate Y coordinate downwards ld [de],a ; store Y inc hl inc de - ld a,[W_BASECOORDX] + ld a,[wBaseCoordX] add [hl] ld b,a ld a,168 @@ -577,9 +577,9 @@ PlaySubanimation: ; 78e53 (1e:4e53) add hl,de add hl,de ld a,[hli] - ld [W_BASECOORDY],a + ld [wBaseCoordY],a ld a,[hl] - ld [W_BASECOORDX],a + ld [wBaseCoordX],a pop hl inc hl ld a,[hl] ; frame block mode @@ -1235,17 +1235,17 @@ AnimationWaterDropletsEverywhere: ; 79215 (1e:5215) call LoadAnimationTileset ld d, 32 ld a, -16 - ld [W_BASECOORDX], a + ld [wBaseCoordX], a ld a, $71 ld [wDropletTile], a .loop ld a, 16 - ld [W_BASECOORDY], a + ld [wBaseCoordY], a ld a, 0 ld [wUnusedD08A], a call _AnimationWaterDroplets ld a, 24 - ld [W_BASECOORDY], a + ld [wBaseCoordY], a ld a, 32 ld [wUnusedD08A], a call _AnimationWaterDroplets @@ -1256,24 +1256,24 @@ AnimationWaterDropletsEverywhere: ; 79215 (1e:5215) _AnimationWaterDroplets: ; 79246 (1e:5246) ld hl, wOAMBuffer .loop - ld a, [W_BASECOORDY] + ld a, [wBaseCoordY] ld [hli], a ; Y - ld a, [W_BASECOORDX] + ld a, [wBaseCoordX] add 27 - ld [W_BASECOORDX], a + ld [wBaseCoordX], a ld [hli], a ; X ld a, [wDropletTile] ld [hli], a ; tile xor a ld [hli], a ; attribute - ld a, [W_BASECOORDX] + ld a, [wBaseCoordX] cp 144 jr c, .loop sub 168 - ld [W_BASECOORDX], a - ld a, [W_BASECOORDY] + ld [wBaseCoordX], a + ld a, [wBaseCoordY] add 16 - ld [W_BASECOORDY], a + ld [wBaseCoordY], a cp 112 jr c, .loop call AnimationCleanOAM @@ -1379,14 +1379,14 @@ ShakeEnemyHUD_WritePlayerMonPicOAM: ; 792fd (1e:52fd) ; Writes the OAM entries for a copy of the player mon's pic in OAM. ; The top 5 rows are reproduced in OAM, although only 2 are actually needed. ld a, $10 - ld [W_BASECOORDX], a + ld [wBaseCoordX], a ld a, $30 - ld [W_BASECOORDY], a + ld [wBaseCoordY], a ld hl, wOAMBuffer ld d, 0 ld c, 7 .loop - ld a, [W_BASECOORDY] + ld a, [wBaseCoordY] ld e, a ld b, 5 .innerLoop @@ -1398,21 +1398,21 @@ ShakeEnemyHUD_WritePlayerMonPicOAM: ; 792fd (1e:52fd) ret z inc d inc d - ld a, [W_BASECOORDX] + ld a, [wBaseCoordX] add 8 - ld [W_BASECOORDX], a + ld [wBaseCoordX], a jr .loop BattleAnimWriteOAMEntry: ; 79329 (1e:5329) ; Y coordinate = e (increased by 8 each call, before the write to OAM) -; X coordinate = [W_BASECOORDX] +; X coordinate = [wBaseCoordX] ; tile = d ; attributes = 0 ld a, e add 8 ld e, a ld [hli], a - ld a, [W_BASECOORDX] + ld a, [wBaseCoordX] ld [hli], a ld a, d ld [hli], a @@ -1741,9 +1741,9 @@ AnimationShootBallsUpward: ; 794f9 (1e:54f9) lb bc, 6 * 8, 5 * 8 .next ld a, b - ld [W_BASECOORDY], a + ld [wBaseCoordY], a ld a, c - ld [W_BASECOORDX], a + ld [wBaseCoordX], a lb bc, 5, 1 call _AnimationShootBallsUpward jp AnimationCleanOAM @@ -1757,7 +1757,7 @@ _AnimationShootBallsUpward: ; 79517 (1e:5517) ld d, $7a ; ball tile ld hl, wOAMBuffer push bc - ld a, [W_BASECOORDY] + ld a, [wBaseCoordY] ld e, a .initOAMLoop call BattleAnimWriteOAMEntry @@ -1771,7 +1771,7 @@ _AnimationShootBallsUpward: ; 79517 (1e:5517) push bc ld hl, wOAMBuffer .innerLoop - ld a, [W_BASECOORDY] + ld a, [wBaseCoordY] add 8 ld e, a ld a, [hl] @@ -1811,11 +1811,11 @@ AnimationShootManyBallsUpward: ; 79566 (1e:5566) ld [wSavedY], a .loop ld a, [wSavedY] - ld [W_BASECOORDY], a + ld [wBaseCoordY], a ld a, [hli] cp $ff jp z, AnimationCleanOAM - ld [W_BASECOORDX], a + ld [wBaseCoordX], a lb bc, 4, 1 push hl call _AnimationShootBallsUpward @@ -2188,7 +2188,7 @@ InitMultipleObjectsOAM: ; 797e8 (1e:57e8) pop bc xor a ld e, a - ld [W_BASECOORDX], a + ld [wBaseCoordX], a ld hl, wOAMBuffer .loop call BattleAnimWriteOAMEntry diff --git a/engine/battle/draw_hud_pokeball_gfx.asm b/engine/battle/draw_hud_pokeball_gfx.asm index cc0219eb..8cfd30af 100644 --- a/engine/battle/draw_hud_pokeball_gfx.asm +++ b/engine/battle/draw_hud_pokeball_gfx.asm @@ -22,7 +22,7 @@ SetupOwnPartyPokeballs: ; 3a869 (e:6869) ld de, wPartyCount call SetupPokeballs ld a, $60 - ld hl, W_BASECOORDX + ld hl, wBaseCoordX ld [hli], a ld [hl], a ld a, 8 @@ -35,7 +35,7 @@ SetupEnemyPartyPokeballs: ; 3a887 (e:6887) ld hl, wEnemyMons ld de, wEnemyPartyCount call SetupPokeballs - ld hl, W_BASECOORDX + ld hl, wBaseCoordX ld a, $48 ld [hli], a ld [hl], $20 @@ -98,19 +98,19 @@ WritePokeballOAMData: ; 3a8e1 (e:68e1) ld de, wBuffer ld c, PARTY_LENGTH .loop - ld a, [W_BASECOORDY] + ld a, [wBaseCoordY] ld [hli], a - ld a, [W_BASECOORDX] + ld a, [wBaseCoordX] ld [hli], a ld a, [de] ld [hli], a xor a ld [hli], a - ld a, [W_BASECOORDX] + ld a, [wBaseCoordX] ld b, a ld a, [wHUDPokeballGfxOffsetX] add b - ld [W_BASECOORDX], a + ld [wBaseCoordX], a inc de dec c jr nz, .loop @@ -168,7 +168,7 @@ SetupPlayerAndEnemyPokeballs: ; 3a948 (e:6948) ld hl, wPartyMons ld de, wPartyCount call SetupPokeballs - ld hl, W_BASECOORDX + ld hl, wBaseCoordX ld a, $50 ld [hli], a ld [hl], $40 @@ -179,7 +179,7 @@ SetupPlayerAndEnemyPokeballs: ; 3a948 (e:6948) ld hl, wEnemyMons ld de, wEnemyPartyCount call SetupPokeballs - ld hl, W_BASECOORDX + ld hl, wBaseCoordX ld a, $50 ld [hli], a ld [hl], $68 diff --git a/engine/battle/ghost_marowak_anim.asm b/engine/battle/ghost_marowak_anim.asm index 67ed3247..d61e5fec 100644 --- a/engine/battle/ghost_marowak_anim.asm +++ b/engine/battle/ghost_marowak_anim.asm @@ -58,22 +58,22 @@ CopyMonPicFromBGToSpriteVRAM: ; 70994 (1c:4994) ld bc, 7 * 7 call CopyVideoData ld a, $10 - ld [W_BASECOORDY], a + ld [wBaseCoordY], a ld a, $70 - ld [W_BASECOORDX], a + ld [wBaseCoordX], a ld hl, wOAMBuffer lb bc, 6, 6 ld d, $8 .oamLoop push bc - ld a, [W_BASECOORDY] + ld a, [wBaseCoordY] ld e, a .oamInnerLoop ld a, e add $8 ld e, a ld [hli], a - ld a, [W_BASECOORDX] + ld a, [wBaseCoordX] ld [hli], a ld a, d ld [hli], a @@ -83,9 +83,9 @@ CopyMonPicFromBGToSpriteVRAM: ; 70994 (1c:4994) dec c jr nz, .oamInnerLoop inc d - ld a, [W_BASECOORDX] + ld a, [wBaseCoordX] add $8 - ld [W_BASECOORDX], a + ld [wBaseCoordX], a pop bc dec b jr nz, .oamLoop diff --git a/engine/game_corner_slots.asm b/engine/game_corner_slots.asm index ff17d4d3..2e9ab4fb 100755 --- a/engine/game_corner_slots.asm +++ b/engine/game_corner_slots.asm @@ -1,4 +1,4 @@ -StartSlotMachine: ; 37e2d (d:7e2d) +StartSlotMachine: ; 37ed1 (d:7ed1) ld a, [wHiddenObjectFunctionArgument] cp $fd jr z, .printOutOfOrder @@ -41,14 +41,14 @@ StartSlotMachine: ; 37e2d (d:7e2d) call PrintPredefTextID ret -GameCornerOutOfOrderText: ; 37e79 (d:7e79) +GameCornerOutOfOrderText: ; 37f1d (d:7f1d) TX_FAR _GameCornerOutOfOrderText db "@" -GameCornerOutToLunchText: ; 37e7e (d:7e7e) +GameCornerOutToLunchText: ; 37f22 (d:7f22) TX_FAR _GameCornerOutToLunchText db "@" -GameCornerSomeonesKeysText: ; 37e83 (d:7e83) +GameCornerSomeonesKeysText: ; 37f27 (d:7f27) TX_FAR _GameCornerSomeonesKeysText db "@" diff --git a/engine/intro.asm b/engine/intro.asm index bc795d5d..d4db9c93 100755 --- a/engine/intro.asm +++ b/engine/intro.asm @@ -29,9 +29,9 @@ PlayIntroScene: ; 4169d (10:569d) ld b, $3 ; Gengar tiles call IntroCopyTiles ld a, 0 - ld [W_BASECOORDX], a + ld [wBaseCoordX], a ld a, 80 - ld [W_BASECOORDY], a + ld [wBaseCoordY], a lb bc, 6, 6 call InitIntroNidorinoOAM lb de, 80 / 2, MOVE_NIDORINO_RIGHT @@ -141,10 +141,10 @@ AnimateIntroNidorino: ; 41793 (10:5793) ld a, [de] cp $50 ret z - ld [W_BASECOORDY], a + ld [wBaseCoordY], a inc de ld a, [de] - ld [W_BASECOORDX], a + ld [wBaseCoordX], a push de ld c, 6 * 6 call UpdateIntroNidorinoOAM @@ -159,10 +159,10 @@ UpdateIntroNidorinoOAM: ; 417ae (10:57ae) ld a, [wIntroNidorinoBaseTile] ld d, a .loop - ld a, [W_BASECOORDY] + ld a, [wBaseCoordY] add [hl] ld [hli], a ; Y - ld a, [W_BASECOORDX] + ld a, [wBaseCoordX] add [hl] ld [hli], a ; X ld a, d @@ -178,14 +178,14 @@ InitIntroNidorinoOAM: ; 417c7 (10:57c7) ld d, 0 .loop push bc - ld a, [W_BASECOORDY] + ld a, [wBaseCoordY] ld e, a .innerLoop ld a, e add 8 ld e, a ld [hli], a ; Y - ld a, [W_BASECOORDX] + ld a, [wBaseCoordX] ld [hli], a ; X ld a, d ld [hli], a ; tile @@ -194,9 +194,9 @@ InitIntroNidorinoOAM: ; 417c7 (10:57c7) inc d dec c jr nz, .innerLoop - ld a, [W_BASECOORDX] + ld a, [wBaseCoordX] add 8 - ld [W_BASECOORDX], a + ld [wBaseCoordX], a pop bc dec b jr nz, .loop @@ -245,9 +245,9 @@ IntroMoveMon: ; 4180e (10:580e) .moveNidorinoRight push de ld a, 2 - ld [W_BASECOORDX], a + ld [wBaseCoordX], a xor a - ld [W_BASECOORDY], a + ld [wBaseCoordY], a ld c, 6 * 6 call UpdateIntroNidorinoOAM pop de diff --git a/engine/slot_machine.asm b/engine/slot_machine.asm index f6b7c029..35f3a133 100755 --- a/engine/slot_machine.asm +++ b/engine/slot_machine.asm @@ -1,4 +1,4 @@ -PromptUserToPlaySlots: ; 3730e (d:730e) +PromptUserToPlaySlots: ; 37530 (d:7530) call SaveScreenTilesToBuffer2 ld a, BANK(DisplayTextIDInit) ld [wAutoTextBoxDrawingControl], a @@ -23,9 +23,11 @@ PromptUserToPlaySlots: ; 3730e (d:730e) call LoadFontTilePatterns ld b, SET_PAL_SLOTS call RunPaletteCommand + call Delay3 call GBPalNormal ld a, $e4 ld [rOBP0], a + call UpdateGBCPal_OBP0 ld hl, wd730 set 6, [hl] xor a @@ -52,11 +54,11 @@ PromptUserToPlaySlots: ; 3730e (d:730e) push af jp CloseTextDisplay -PlaySlotMachineText: ; 37390 (d:7390) +PlaySlotMachineText: ; 375b8 (d:75b8) TX_FAR _PlaySlotMachineText db "@" -MainSlotMachineLoop: ; 37395 (d:7395) +MainSlotMachineLoop: ; 375bd (d:75bd) call SlotMachine_PrintCreditCoins xor a ld hl, wPayoutCoins @@ -80,8 +82,7 @@ MainSlotMachineLoop: ; 37395 (d:7395) ld [wLastMenuItem], a ld [wMenuWatchMovingOutOfBounds], a coord hl, 14, 11 - ld b, 5 - ld c, 4 + lb bc, 5, 4 call TextBoxBorder coord hl, 16, 12 ld de, CoinMultiplierSlotMachineText @@ -146,32 +147,32 @@ MainSlotMachineLoop: ; 37395 (d:7395) call SlotMachine_PutOutLitBalls jp MainSlotMachineLoop -CoinMultiplierSlotMachineText: ; 3745e (d:745e) +CoinMultiplierSlotMachineText: ; 37685 (d:7685) db "×3" next "×2" next "×1@" -OutOfCoinsSlotMachineText: ; 37467 (d:7467) +OutOfCoinsSlotMachineText: ; 3768e (d:768e) TX_FAR _OutOfCoinsSlotMachineText db "@" -BetHowManySlotMachineText: ; 3746c (d:746c) +BetHowManySlotMachineText: ; 37693 (d:7693) TX_FAR _BetHowManySlotMachineText db "@" -StartSlotMachineText: ; 37471 (d:7471) +StartSlotMachineText: ; 37698 (d:7698) TX_FAR _StartSlotMachineText db "@" -NotEnoughCoinsSlotMachineText: ; 37476 (d:7476) +NotEnoughCoinsSlotMachineText: ; 3769d (d:769d) TX_FAR _NotEnoughCoinsSlotMachineText db "@" -OneMoreGoSlotMachineText: ; 3747b (d:747b) +OneMoreGoSlotMachineText: ; 376a2 (d:76a2) TX_FAR _OneMoreGoSlotMachineText db "@" -SlotMachine_SetFlags: ; 37480 (d:7480) +SlotMachine_SetFlags: ; 376a7 (d:76a7) ld hl, wSlotMachineFlags bit 7, [hl] ret nz @@ -201,7 +202,7 @@ SlotMachine_SetFlags: ; 37480 (d:7480) set 7, [hl] ret -SlotMachine_SpinWheels: ; 374ad (d:74ad) +SlotMachine_SpinWheels: ; 376d4 (d:76d4) ld c, 20 .loop1 push bc @@ -233,7 +234,7 @@ SlotMachine_SpinWheels: ; 374ad (d:74ad) ; visible. The 3 functions below ensure this by checking if the wheel offset ; is even before stopping the wheel. -SlotMachine_StopOrAnimWheel1: ; 374df (d:74df) +SlotMachine_StopOrAnimWheel1: ; 37706 (d:7706) ld a, [wStoppingWhichSlotMachineWheel] cp 1 jr c, .animWheel @@ -251,7 +252,7 @@ SlotMachine_StopOrAnimWheel1: ; 374df (d:74df) .animWheel jp SlotMachine_AnimWheel1 -SlotMachine_StopOrAnimWheel2: ; 374fb (d:74fb) +SlotMachine_StopOrAnimWheel2: ; 37722 (d:7722) ld a, [wStoppingWhichSlotMachineWheel] cp 2 jr c, .animWheel @@ -269,7 +270,7 @@ SlotMachine_StopOrAnimWheel2: ; 374fb (d:74fb) .animWheel jp SlotMachine_AnimWheel2 -SlotMachine_StopOrAnimWheel3: ; 37517 (d:7517) +SlotMachine_StopOrAnimWheel3: ; 3773e (d:773e) ld a, [wStoppingWhichSlotMachineWheel] cp 3 jr c, .animWheel @@ -285,7 +286,7 @@ SlotMachine_StopOrAnimWheel3: ; 37517 (d:7517) and a ret -SlotMachine_StopWheel1Early: ; 3752c (d:752c) +SlotMachine_StopWheel1Early: ; 37753 (d:7753) call SlotMachine_GetWheel1Tiles ld hl, wSlotMachineWheel1BottomTile ld a, [wSlotMachineFlags] @@ -314,7 +315,7 @@ SlotMachine_StopWheel1Early: ; 3752c (d:752c) ld [hl], 0 ret -SlotMachine_StopWheel2Early: ; 37552 (d:7552) +SlotMachine_StopWheel2Early: ; 37779 (d:7779) call SlotMachine_GetWheel2Tiles ld a, [wSlotMachineFlags] and $80 @@ -337,7 +338,7 @@ SlotMachine_StopWheel2Early: ; 37552 (d:7552) ld [wSlotMachineWheel2SlipCounter], a ret -SlotMachine_FindWheel1Wheel2Matches: ; 3756e (d:756e) +SlotMachine_FindWheel1Wheel2Matches: ; 37795 (d:7795) ; return whether wheel 1 and wheel 2's current positions allow a match (given ; that wheel 3 stops in a good position) in Z ld hl, wSlotMachineWheel1BottomTile @@ -363,7 +364,7 @@ SlotMachine_FindWheel1Wheel2Matches: ; 3756e (d:756e) dec de ret -SlotMachine_CheckForMatches: ; 37588 (d:7588) +SlotMachine_CheckForMatches: ; 377af (d:77af) call SlotMachine_GetWheel3Tiles ld a, [wSlotMachineBet] cp 2 @@ -457,6 +458,7 @@ SlotMachine_CheckForMatches: ; 37588 (d:7588) ld a, [rBGP] xor $40 ld [rBGP], a + call UpdateGBCPal_BGP ld c, 5 call DelayFrames dec b @@ -473,9 +475,10 @@ SlotMachine_CheckForMatches: ; 37588 (d:7588) call SlotMachine_PrintPayoutCoins ld a, $e4 ld [rOBP0], a + call UpdateGBCPal_OBP0 jp .done -SymbolLinedUpSlotMachineText: ; 37665 (d:7665) +SymbolLinedUpSlotMachineText: ; 37892 (d:7892) TX_ASM push bc call SlotMachine_PrintWinningSymbol @@ -487,11 +490,11 @@ SymbolLinedUpSlotMachineText: ; 37665 (d:7665) inc bc ret -LinedUpText: ; 37673 (d:7673) +LinedUpText: ; 378a0 (d:78a0) TX_FAR _LinedUpText db "@" -SlotRewardPointers: ; 37678 (d:7678) +SlotRewardPointers: ; 378a5 (d:78a5) dw SlotReward300Func dw SlotReward300Text dw SlotReward100Func @@ -505,24 +508,24 @@ SlotRewardPointers: ; 37678 (d:7678) dw SlotReward15Func dw SlotReward15Text -SlotReward300Text: ; 37690 (d:7690) +SlotReward300Text: ; 378bd (d:78bd) db "300@" -SlotReward100Text: ; 37694 (d:7694) +SlotReward100Text: ; 378c1 (d:78c1) db "100@" -SlotReward8Text: ; 37698 (d:7698) +SlotReward8Text: ; 378c5 (d:78c5) db "8@" -SlotReward15Text: ; 3769a (d:769a) +SlotReward15Text: ; 378c7 (d:78c7) db "15@" -NotThisTimeText: ; 3769d (d:769d) +NotThisTimeText: ; 378ca (d:78ca) TX_FAR _NotThisTimeText db "@" ; compares the slot machine tiles at bc, de, and hl -SlotMachine_CheckForMatch: ; 376a2 (d:76a2) +SlotMachine_CheckForMatch: ; 378cf (d:78cf) ld a, [de] cp [hl] ret nz @@ -530,24 +533,24 @@ SlotMachine_CheckForMatch: ; 376a2 (d:76a2) cp [hl] ret -SlotMachine_GetWheel3Tiles: ; 376a8 (d:76a8) +SlotMachine_GetWheel3Tiles: ; 378d5 (d:78d5) ld de, wSlotMachineWheel3BottomTile ld hl, SlotMachineWheel3 ld a, [wSlotMachineWheel3Offset] call SlotMachine_GetWheelTiles -SlotMachine_GetWheel2Tiles: ; 376b4 (d:76b4) +SlotMachine_GetWheel2Tiles: ; 378e1 (d:78e1) ld de, wSlotMachineWheel2BottomTile ld hl, SlotMachineWheel2 ld a, [wSlotMachineWheel2Offset] call SlotMachine_GetWheelTiles -SlotMachine_GetWheel1Tiles: ; 376c0 (d:76c0) +SlotMachine_GetWheel1Tiles: ; 378ed (d:78ed) ld de, wSlotMachineWheel1BottomTile ld hl, SlotMachineWheel1 ld a, [wSlotMachineWheel1Offset] -SlotMachine_GetWheelTiles: ; 376c9 (d:76c9) +SlotMachine_GetWheelTiles: ; 378f6 (d:78f6) ld c, a ld b, 0 add hl, bc @@ -561,7 +564,7 @@ SlotMachine_GetWheelTiles: ; 376c9 (d:76c9) jr nz, .loop ret -SlotReward8Func: ; 376d7 (d:76d7) +SlotReward8Func: ; 37904 (d:7904) ld hl, wSlotMachineAllowMatchesCounter ld a, [hl] and a @@ -572,7 +575,7 @@ SlotReward8Func: ; 376d7 (d:76d7) ld de, 8 ret -SlotReward15Func: ; 376e5 (d:76e5) +SlotReward15Func: ; 37912 (d:7912) ld hl, wSlotMachineAllowMatchesCounter ld a, [hl] and a @@ -583,7 +586,7 @@ SlotReward15Func: ; 376e5 (d:76e5) ld de, 15 ret -SlotReward100Func: ; 376f3 (d:76f3) +SlotReward100Func: ; 37920 (d:7920) ld a, SFX_GET_KEY_ITEM call PlaySound xor a @@ -592,7 +595,7 @@ SlotReward100Func: ; 376f3 (d:76f3) ld de, 100 ret -SlotReward300Func: ; 37702 (d:7702) +SlotReward300Func: ; 3792f (d:792f) ld hl, YeahText call PrintText ld a, SFX_GET_ITEM_2 @@ -608,11 +611,11 @@ SlotReward300Func: ; 37702 (d:7702) ld de, 300 ret -YeahText: ; 37722 (d:7722) +YeahText: ; 3794f (d:794f) TX_FAR _YeahText db $0a, "@" -SlotMachine_PrintWinningSymbol: ; 37728 (d:7728) +SlotMachine_PrintWinningSymbol: ; 37955 (d:7955) ; prints winning symbol and down arrow in text box coord hl, 2, 14 ld a, [wSlotMachineWinningSymbol] @@ -630,7 +633,7 @@ SlotMachine_PrintWinningSymbol: ; 37728 (d:7728) ld [hl], $ee ; down arrow ret -SlotMachine_SubtractBetFromPlayerCoins: ; 37741 (d:7741) +SlotMachine_SubtractBetFromPlayerCoins: ; 3796e (d:796e) ld hl, wTempCoins2 + 1 ld a, [wSlotMachineBet] ld [hld], a @@ -640,19 +643,19 @@ SlotMachine_SubtractBetFromPlayerCoins: ; 37741 (d:7741) ld c, $2 predef SubBCDPredef -SlotMachine_PrintCreditCoins: ; 37754 (d:7754) +SlotMachine_PrintCreditCoins: ; 37981 (d:7981) coord hl, 5, 1 ld de, wPlayerCoins ld c, $2 jp PrintBCDNumber -SlotMachine_PrintPayoutCoins: ; 3775f (d:775f) +SlotMachine_PrintPayoutCoins: ; 3798c (d:798c) coord hl, 11, 1 ld de, wPayoutCoins lb bc, LEADING_ZEROES | 2, 4 ; 2 bytes, 4 digits jp PrintNumber -SlotMachine_PayCoinsToPlayer: ; 3776b (d:776b) +SlotMachine_PayCoinsToPlayer: ; 37998 (d:7998) ld a, $1 ld [wMuteAudioAndPauseMusic], a call WaitForSoundToFinish @@ -697,6 +700,7 @@ SlotMachine_PayCoinsToPlayer: ; 3776b (d:776b) ld a, [rOBP0] xor $40 ; make the slot wheel symbols flash ld [rOBP0], a + call UpdateGBCPal_OBP0 ld a, 5 .skip1 ld [wAnimCounter], a @@ -709,12 +713,12 @@ SlotMachine_PayCoinsToPlayer: ; 3776b (d:776b) call DelayFrames jr .loop -SlotMachine_PutOutLitBalls: ; 377ce (d:77ce) +SlotMachine_PutOutLitBalls: ; 379fe (d:79fe) ld a, $23 ld [wNewSlotMachineBallTile], a jr SlotMachine_UpdateThreeCoinBallTiles -SlotMachine_LightBalls: ; 377d5 (d:77d5) +SlotMachine_LightBalls: ; 37a05 (d:7a05) ld a, $14 ld [wNewSlotMachineBallTile], a ld a, [wSlotMachineBet] @@ -723,22 +727,22 @@ SlotMachine_LightBalls: ; 377d5 (d:77d5) dec a jr z, SlotMachine_UpdateTwoCoinBallTiles -SlotMachine_UpdateThreeCoinBallTiles: ; 377e3 (d:77e3) +SlotMachine_UpdateThreeCoinBallTiles: ; 37a13 (d:7a13) coord hl, 3, 2 call SlotMachine_UpdateBallTiles coord hl, 3, 10 call SlotMachine_UpdateBallTiles -SlotMachine_UpdateTwoCoinBallTiles: ; 377ef (d:77ef) +SlotMachine_UpdateTwoCoinBallTiles: ; 37a1f (d:7a1f) coord hl, 3, 4 call SlotMachine_UpdateBallTiles coord hl, 3, 8 call SlotMachine_UpdateBallTiles -SlotMachine_UpdateOneCoinBallTiles: ; 377fb (d:77fb) +SlotMachine_UpdateOneCoinBallTiles: ; 37a2b (d:7a2b) coord hl, 3, 6 -SlotMachine_UpdateBallTiles: ; 377fe (d:77fe) +SlotMachine_UpdateBallTiles: ; 37a2e (d:7a2e) ld a, [wNewSlotMachineBallTile] ld [hl], a ld bc, 13 @@ -753,32 +757,32 @@ SlotMachine_UpdateBallTiles: ; 377fe (d:77fe) ld [hl], a ret -SlotMachine_AnimWheel1: ; 37813 (d:7813) +SlotMachine_AnimWheel1: ; 37a43 (d:7a43) ld bc, SlotMachineWheel1 ld de, wSlotMachineWheel1Offset ld hl, wOAMBuffer ld a, $30 - ld [W_BASECOORDX], a + ld [wBaseCoordX], a jr SlotMachine_AnimWheel -SlotMachine_AnimWheel2: ; 37823 (d:7823) +SlotMachine_AnimWheel2: ; 37a53 (d:7a53) ld bc, SlotMachineWheel2 ld de, wSlotMachineWheel2Offset ld hl, wOAMBuffer + $30 ld a, $50 - ld [W_BASECOORDX], a + ld [wBaseCoordX], a jr SlotMachine_AnimWheel -SlotMachine_AnimWheel3: ; 37833 (d:7833) +SlotMachine_AnimWheel3: ; 37a63 (d:7a63) ld bc, SlotMachineWheel3 ld de, wSlotMachineWheel3Offset ld hl, wOAMBuffer + $60 ld a, $70 - ld [W_BASECOORDX], a + ld [wBaseCoordX], a -SlotMachine_AnimWheel: ; 37841 (d:7841) +SlotMachine_AnimWheel: ; 37a71 (d:7a71) ld a, $58 - ld [W_BASECOORDY], a + ld [wBaseCoordY], a push de ld a, [de] ld d, b @@ -787,17 +791,17 @@ SlotMachine_AnimWheel: ; 37841 (d:7841) jr nc, .loop inc d .loop - ld a, [W_BASECOORDY] + ld a, [wBaseCoordY] ld [hli], a - ld a, [W_BASECOORDX] + ld a, [wBaseCoordX] ld [hli], a ld a, [de] ld [hli], a ld a, $80 ld [hli], a - ld a, [W_BASECOORDY] + ld a, [wBaseCoordY] ld [hli], a - ld a, [W_BASECOORDX] + ld a, [wBaseCoordX] add $8 ld [hli], a ld a, [de] @@ -806,9 +810,9 @@ SlotMachine_AnimWheel: ; 37841 (d:7841) ld a, $80 ld [hli], a inc de - ld a, [W_BASECOORDY] + ld a, [wBaseCoordY] sub $8 - ld [W_BASECOORDY], a + ld [wBaseCoordY], a cp $28 jr nz, .loop pop de @@ -821,7 +825,7 @@ SlotMachine_AnimWheel: ; 37841 (d:7841) ld [de], a ret -SlotMachine_HandleInputWhileWheelsSpin: ; 37882 (d:7882) +SlotMachine_HandleInputWhileWheelsSpin: ; 37ab2 (d:7ab2) call DelayFrame call JoypadLowSensitivity ld a, [hJoy5] @@ -845,7 +849,7 @@ SlotMachine_HandleInputWhileWheelsSpin: ; 37882 (d:7882) ret nz jr .loop -LoadSlotMachineTiles: ; 378a8 (d:78a8) +LoadSlotMachineTiles: ; 37ad8 (d:7ad8) call DisableLCD ld hl, SlotMachineTiles2 ld de, vChars0 @@ -864,7 +868,7 @@ LoadSlotMachineTiles: ; 378a8 (d:78a8) call FarCopyData ld hl, SlotMachineMap coord de, 0, 0 - ld bc, $00f0 + ld bc, SlotMachineMapEnd - SlotMachineMap call CopyData call EnableLCD ld hl, wSlotMachineWheel1Offset @@ -876,10 +880,11 @@ LoadSlotMachineTiles: ; 378a8 (d:78a8) call SlotMachine_AnimWheel2 jp SlotMachine_AnimWheel3 -SlotMachineMap: ; 378f5 (d:78f5) +SlotMachineMap: ; 37b25 (d:7b25) INCBIN "gfx/tilemaps/slotmachine.map" +SlotMachineMapEnd: INCLUDE "data/slot_machine_wheels.asm" -SlotMachineTiles1: ; 37a51 (d:7a51) +SlotMachineTiles1: ; 37c81 (d:7c81) INCBIN "gfx/slotmachine1.2bpp" diff --git a/engine/titlescreen2.asm b/engine/titlescreen2.asm index c0853a0d..dec37da2 100755 --- a/engine/titlescreen2.asm +++ b/engine/titlescreen2.asm @@ -1,22 +1,24 @@ -TitleScroll_WaitBall: ; 37244 (d:7244) +; Leftover of Red/Blue. Seemingly unused + +TitleScroll_WaitBall: ; 3749e (d:749e) ; Wait around for the TitleBall animation to play out. ; hi: speed ; lo: duration db $05, $05, 0 -TitleScroll_In: ; 37247 (d:7247) +TitleScroll_In: ; 374a1 (d:74a1) ; Scroll a TitleMon in from the right. ; hi: speed ; lo: duration db $a2, $94, $84, $63, $52, $31, $11, 0 -TitleScroll_Out: ; 3724f (d:724f) +TitleScroll_Out: ; 374a9 (d:74a9) ; Scroll a TitleMon out to the left. ; hi: speed ; lo: duration db $12, $22, $32, $42, $52, $62, $83, $93, 0 -TitleScroll: ; 37258 (d:7258) +TitleScroll: ; 374b2 (d:74b2) ld a, d ld bc, TitleScroll_In @@ -31,7 +33,7 @@ TitleScroll: ; 37258 (d:7258) ld e, 0 ; don't animate titleball .ok -_TitleScroll: ; 3726a (d:726a) +_TitleScroll: ; 374c4 (d:74c4) ld a, [bc] and a ret z @@ -67,7 +69,7 @@ _TitleScroll: ; 3726a (d:726a) pop bc jr _TitleScroll -.ScrollBetween ; 37292 (d:7292) +.ScrollBetween ; 374ec (d:74ec) .wait ld a, [rLY] ; rLY cp l @@ -82,12 +84,12 @@ _TitleScroll: ; 3726a (d:726a) jr z, .wait2 ret -TitleBallYTable: ; 372a0 (d:72a0) +TitleBallYTable: ; 374fa (d:74fa) ; OBJ y-positions for the Poke Ball held by Red in the title screen. ; This is really two 0-terminated lists. Initiated with an index of 1. db 0, $71, $6f, $6e, $6d, $6c, $6d, $6e, $6f, $71, $74, 0 -TitleScreenAnimateBallIfStarterOut: ; 372ac (d:72ac) +TitleScreenAnimateBallIfStarterOut: ; 37506 (d:7506) ; Animate the TitleBall if a starter just got scrolled out. ld a, [wTitleMonSpecies] cp STARTER1 @@ -102,7 +104,7 @@ TitleScreenAnimateBallIfStarterOut: ; 372ac (d:72ac) ld d, 0 jp _TitleScroll -GetTitleBallY: ; 372c4 (d:72c4) +GetTitleBallY: ; 3751e (d:751e) ; Get position e from TitleBallYTable push de push hl diff --git a/engine/trade.asm b/engine/trade.asm index 8887877b..2638835b 100755 --- a/engine/trade.asm +++ b/engine/trade.asm @@ -383,9 +383,9 @@ Trade_AnimLeftToRight: ; 41376 (10:5376) ld a, $e4 ld [rOBP0], a ld a, $54 - ld [W_BASECOORDX], a + ld [wBaseCoordX], a ld a, $1c - ld [W_BASECOORDY], a + ld [wBaseCoordY], a ld a, [wLeftGBMonSpecies] ld [wMonPartySpriteSpecies], a call Trade_WriteCircledMonOAM @@ -415,9 +415,9 @@ Trade_AnimRightToLeft: ; 413c6 (10:53c6) xor a ld [wTradedMonMovingRight], a ld a, $64 - ld [W_BASECOORDX], a + ld [wBaseCoordX], a ld a, $44 - ld [W_BASECOORDY], a + ld [wBaseCoordY], a ld a, [wRightGBMonSpecies] ld [wMonPartySpriteSpecies], a call Trade_WriteCircledMonOAM @@ -622,10 +622,10 @@ Trade_AddOffsetsToOAMCoords: ; 41510 (10:5510) ld hl, wOAMBuffer ld c, $14 .loop - ld a, [W_BASECOORDY] + ld a, [wBaseCoordY] add [hl] ld [hli], a - ld a, [W_BASECOORDX] + ld a, [wBaseCoordX] add [hl] ld [hli], a inc hl @@ -657,9 +657,9 @@ Trade_AnimMonMoveVertical: ; 41525 (10:5525) lb bc, -4, 0 ; move left .doAnim ld a, b - ld [W_BASECOORDX], a + ld [wBaseCoordX], a ld a, c - ld [W_BASECOORDY], a + ld [wBaseCoordY], a ld d, $4 .loop call Trade_AddOffsetsToOAMCoords @@ -1767,9 +1767,9 @@ wSavedListScrollOffset:: ; d07e ds 2 ; base coordinates of frame block -W_BASECOORDX:: ; d081 +wBaseCoordX:: ; d081 ds 1 -W_BASECOORDY:: ; d082 +wBaseCoordY:: ; d082 ds 1 ; low health alarm counter/enable diff --git a/yellow/main.asm b/yellow/main.asm index 24b6250f..a8279d91 100755 --- a/yellow/main.asm +++ b/yellow/main.asm @@ -3997,7 +3997,9 @@ WeepinbellPicBack: INCBIN "pic/monback/weepinbellb.pic" VictreebelPicFront: INCBIN "pic/ymon/victreebel.pic" VictreebelPicBack: INCBIN "pic/monback/victreebelb.pic" - dr $3749e,$38000 +INCLUDE "engine/titlescreen2.asm" +INCLUDE "engine/slot_machine.asm" +INCLUDE "engine/game_corner_slots.asm" SECTION "bank0E",ROMX,BANK[$0E] @@ -4306,7 +4308,9 @@ SECTION "bank1E",ROMX,BANK[$1E] dr $78000,$78757 AnimationTileset2: ; 78757 (1e:4757) - dr $78757,$797af + dr $78757,$78c17 +SlotMachineTiles2: ; 78c17 (1e:4c17) + dr $78c17,$797af AnimationSubstitute: ; 797af (1e:57af) dr $797af,$79816 HideSubstituteShowMonAnim: ; 79816 (1e:5816) |