mirror of
https://github.com/pret/pokepinball.git
synced 2026-04-24 06:48:58 -05:00
2543 lines
33 KiB
NASM
2543 lines
33 KiB
NASM
; OAM Animations use this 3-byte struct.
|
|
animation: MACRO
|
|
\1FrameCounter:: ds 1
|
|
\1Frame:: ds 1
|
|
\1Index:: ds 1
|
|
endm
|
|
|
|
SECTION "WRAM Bank 0", WRAM0
|
|
|
|
wc000:: ; 0xc000
|
|
ds $10
|
|
|
|
wc010:: ; 0xc010
|
|
ds $140
|
|
|
|
wc150:: ; 0xc150
|
|
ds $68
|
|
|
|
wc1b8:: ; 0xc1b8
|
|
ds $c8
|
|
|
|
wc280:: ; 0xc280
|
|
ds $9
|
|
|
|
wc289:: ; 0xc289
|
|
ds $37
|
|
|
|
wc2c0:: ; 0xc2c0
|
|
ds $140
|
|
|
|
wMonAnimatedCollisionMask:: ; 0xc400
|
|
ds $80
|
|
|
|
wc480:: ; 0xc480
|
|
ds $40
|
|
|
|
wc4c0:: ; 0xc4c0
|
|
ds $c
|
|
|
|
wc4cc:: ; 0xc4cc
|
|
ds $34
|
|
|
|
wBottomMessageText:: ; 0xc500 WARNING: text loading code may break if this is moved
|
|
; This must be aligned with $100, since there is some logic that depends on the lower byte of the address. (See LoadMonNameIntoEvolutionSelectionList)
|
|
ds $100
|
|
|
|
wBottomMessageBuffer:: ; 0xc600
|
|
; This acts as a buffer to hold the scrolling text message.
|
|
; Rather than storing the raw text, it stores tile ids for the text.
|
|
; The lower-left most tile is at 0xc640, so everything before isn't visible on screen.
|
|
ds $100
|
|
|
|
wStageCollisionMap:: ; 0xc700
|
|
ds $300
|
|
|
|
wca00::
|
|
ds $100
|
|
|
|
wcb00:: ; 0xcb00
|
|
ds $500
|
|
|
|
SECTION "WRAM Bank 1", WRAMX
|
|
|
|
wOAMBuffer:: ; 0xd000
|
|
ds $a0
|
|
wOAMBufferEnd:: ; 0xd0a0
|
|
|
|
SECTION "WRAM Bank 1.1", WRAMX
|
|
wPaletteData:: ; 0xd200
|
|
ds $80
|
|
|
|
; This buffer holds the intermediate palette data when fading to a new palette.
|
|
; The target palette is held in wPaletteData.
|
|
wFadeBGPaletteData:: ; 0xd280
|
|
ds $40
|
|
wFadeOBJPaletteData:: ; 0xd2c0
|
|
ds $40
|
|
|
|
wPartyMons:: ; 0xd300
|
|
ds $100
|
|
|
|
wAddScoreQueue:: ; 0xd400
|
|
ds $60
|
|
wAddScoreQueueEnd:: ; 0xd460
|
|
|
|
wNumPartyMons:: ; 0xd460
|
|
; Number of pokemon caught in the current pinball game.
|
|
ds $1
|
|
|
|
wCurSelectedPartyMon:: ; 0xd461
|
|
; The index of the selected party pokemon.
|
|
; This is mainly used during evolution mode, when the player selects which of their
|
|
; caught pokemon to evolve.
|
|
ds $1
|
|
|
|
wCurSelectedPartyMonScrollOffset:: ; 0xd462
|
|
; Holds the scrolling offset for the pokemon list when choosing which
|
|
; pokemon to evolve.
|
|
ds $1
|
|
|
|
wPartySelectionCursorCounter:: ; 0xd463
|
|
; Counter to animate the blinking cursor when choosing a pokemon to evolve.
|
|
ds $1
|
|
|
|
wScoreToAdd:: ; 0xd464
|
|
; Holds a 6-byte BCD value to add to the player's score.
|
|
ds $6
|
|
|
|
wScore:: ; 0xd46a
|
|
; 6-byte BCD value that represents the player's score.
|
|
ds $6
|
|
|
|
wPlayerName:: ; 0xd470
|
|
; Player's 3-character name when entering High Scores.
|
|
ds $3
|
|
|
|
wHighScoreId:: ; 0xd473
|
|
; 4 randomly-generated bytes when a high score is achieved.
|
|
; These 4 bytes are appended to the high score data structure.
|
|
; See the high_scores macro.
|
|
; These 4 bytes don't appear to be used by anything. It's possible they're used by the
|
|
; "send high scores" capability, but haven't tested it.
|
|
ds $4
|
|
|
|
wAddScoreQueueOffset:: ; 0xd477
|
|
ds $1
|
|
|
|
wd478:: ; 0xd478
|
|
ds $1
|
|
|
|
wd479:: ; 0xd479
|
|
ds $1
|
|
|
|
wd47a:: ; 0xd47a
|
|
; BCD buffer
|
|
ds $4
|
|
|
|
wBallType:: ; 0xd47e
|
|
; See constants/ball_types.asm
|
|
ds $1
|
|
|
|
wBallTypeCounter:: ; 0xd47f
|
|
ds $2
|
|
|
|
wBallTypeBackup:: ; 0xd481
|
|
ds $1
|
|
|
|
wCurBonusMultiplier:: ; 0xd482
|
|
; Current value of the bonus multplier. Incremented from achieving various events during the game, or hitting the two bonus multiplier
|
|
; railings. (left one first, then right one). See MAX_BONUS_MULTIPLIER
|
|
ds $1
|
|
|
|
wd483:: ; 0xd483
|
|
ds $6
|
|
|
|
wd489:: ; 0xd489
|
|
ds $6
|
|
|
|
wd48f:: ; 0xd48f
|
|
ds $6
|
|
|
|
wd495:: ; 0xd495
|
|
ds $1
|
|
|
|
wd496:: ; 0xd496
|
|
ds $1
|
|
|
|
wd497:: ; 0xd497
|
|
ds $1
|
|
|
|
wd498:: ; 0xd498
|
|
ds $1
|
|
|
|
wd499:: ; 0xd499
|
|
ds $1
|
|
|
|
wCompletedBonusStage:: ; 0xd49a
|
|
; Set to 1 when a bonus stage is successfully cleared.
|
|
ds $1
|
|
|
|
wCurBonusMultiplierFromFieldEvents:: ; 0xd49b
|
|
; Current value of the bonus multiplier received from field events, like catching a pokemon or hitting psyduck 3 times. See MAX_BONUS_MULTIPLIER_FIELD_EVENTS.
|
|
ds $1
|
|
|
|
wd49c:: ; 0xd49c
|
|
ds $1
|
|
|
|
wd49d:: ; 0xd49d
|
|
ds $1
|
|
|
|
wd49e:: ; 0xd49e
|
|
ds $1
|
|
|
|
wd49f:: ; 0xd49f
|
|
ds $2
|
|
|
|
wBallSaverIconOn:: ; 0xd4a1
|
|
ds $1
|
|
|
|
wd4a2:: ; 0xd4a2
|
|
ds $1
|
|
|
|
wBallSaverTimerFrames:: ; 0xd4a3
|
|
ds $1
|
|
|
|
wBallSaverTimerSeconds:: ; 0xd4a4
|
|
ds $1
|
|
|
|
wNumTimesBallSavedTextWillDisplay:: ; 0xd4a5
|
|
ds $1
|
|
|
|
wBallSaverTimerFramesBackup:: ; 0xd4a6
|
|
ds $1
|
|
|
|
wBallSaverTimerSecondsBackup:: ; 0xd4a7
|
|
ds $1
|
|
|
|
wNumTimesBallSavedTextWillDisplayBackup:: ; 0xd4a8
|
|
ds $1
|
|
|
|
wd4a9:: ; 0xd4a9
|
|
ds $1
|
|
|
|
wDrawBottomMessageBox:: ; 0xd4aa
|
|
; Set to non-zero value if enable drawing the 1-tile high bottom message bar during V-Blank in normal pinball gameplay.
|
|
; Set to 0 to disable.
|
|
ds $1
|
|
|
|
wd4ab:: ; 0xd4ab
|
|
ds $1
|
|
|
|
wCurrentStage:: ; 0xd4ac
|
|
ds $1
|
|
|
|
wd4ad:: ; 0xd4ad
|
|
ds $1
|
|
|
|
wd4ae:: ; 0xd4ae
|
|
ds $1
|
|
|
|
wStageCollisionState:: ; 0xd4af
|
|
ds $1
|
|
|
|
wd4b0:: ; 0xd4b0
|
|
ds $3
|
|
|
|
wBallXPos:: ; 0xd4b3
|
|
ds $2
|
|
wBallYPos:: ; 0xd4b5
|
|
ds $2
|
|
|
|
wPreviousBallXPos:: ; 0xd4b7
|
|
ds $2
|
|
wPreviousBallYPos:: ; 0xd4b9
|
|
ds $2
|
|
|
|
wBallXVelocity:: ; 0xd4bb
|
|
ds $2
|
|
|
|
wBallYVelocity:: ; 0xd4bd
|
|
ds $2
|
|
|
|
ds $4
|
|
|
|
wBallSpin:: ; 0xd4c3
|
|
ds $1
|
|
|
|
wBallRotation:: ; 0xd4c4
|
|
ds $1
|
|
|
|
wd4c5:: ; 0xd4c5
|
|
ds $1
|
|
|
|
wd4c6:: ; 0xd4c6
|
|
ds $1
|
|
|
|
wd4c7:: ; 0xd4c7
|
|
ds $1
|
|
|
|
wd4c8:: ; 0xd4c8
|
|
ds $1
|
|
|
|
wd4c9:: ; 0xd4c9
|
|
ds $1
|
|
|
|
wd4ca:: ; 0xd4ca
|
|
ds $1
|
|
|
|
wWhichVoltorb:: ; 0xd4cb
|
|
wWhichShellder::
|
|
ds $1
|
|
wWhichVoltorbId:: ; 0xd4cc
|
|
wWhichShellderId::
|
|
ds $1
|
|
|
|
wVoltorb1Animation:: ; 0xd4cd
|
|
wShellder1Animation_Unused::
|
|
animation wVoltorb1Animation
|
|
|
|
wVoltorb2Animation:: ; 0xd4d0
|
|
wShellder2Animation_Unused::
|
|
animation wVoltorb2Animation
|
|
|
|
wVoltorb3Animation:: ; 0xd4d3
|
|
wShellder3Animation_Unused::
|
|
animation wVoltorb3Animation
|
|
|
|
wVoltorbHitAnimationDuration:: ; 0xd4d6
|
|
wShellderHitAnimationDuration::
|
|
; Number of frames remaining in the light-up animation when a Shellder/Voltorb is hit.
|
|
; This single byte actually controls all three of them, since only one can be animated at a time.
|
|
ds $1
|
|
|
|
wWhichAnimatedVoltorb:: ; 0xd4d7
|
|
wWhichAnimatedShellder::
|
|
; Hold the index (0,1,2) of the Shellder/Voltorb that is currently being animated after it was hit.
|
|
ds $1
|
|
|
|
wWhichBumper:: ; 0xd4d8
|
|
; 0 = neither
|
|
; 1 = left bumper
|
|
; 2 = right bumper
|
|
ds $1
|
|
wWhichBumperId:: ; 0xd4d9
|
|
ds $1
|
|
|
|
wd4da:: ; 0xd4da
|
|
ds $1
|
|
|
|
wd4db:: ; 0xd4db
|
|
ds $1
|
|
|
|
wPinballLaunchCollision:: ; 0xd4dc
|
|
; 0 = pinball isn't resting at the start, waiting to be launched by the player
|
|
; 1 = pinball can be launched to start the round
|
|
; second byte is unused, but it's written by HandleGameObjectCollision
|
|
ds $2
|
|
|
|
wPinballLaunched:: ; 0xd4de
|
|
; 0 = pinball hasn't been launched, yet
|
|
; 1 = pinball was launched
|
|
ds $1
|
|
|
|
wd4df:: ; 0xd4df
|
|
ds $1
|
|
|
|
wChoseInitialMap:: ; 0xd4e0
|
|
; Set to 1 after the player chooses the initial map during first pinball launch.
|
|
ds $1
|
|
|
|
wInitialMapSelectionIndex:: ; 0xd4e1
|
|
ds $1
|
|
|
|
wNumMapMoves:: ; 0xd4e2
|
|
; Number of times the player has successfully completed a map move.
|
|
; Resets to 0 after completing 6.
|
|
ds $1
|
|
|
|
wVisitedMaps:: ; 0xd4e3
|
|
; List of the visited maps in order.
|
|
; It is reset after moving past Indigo Plateau.
|
|
; The last byte is unused, since there are only 6 map moves.
|
|
ds $7
|
|
|
|
wTriggeredGameObject:: ; 0xd4ea
|
|
; Game objects, such as the two bumpers, Pikachu savers, CAVE, etc. have unique ids.
|
|
; This byte saves the object which the pinball is currently colliding with.
|
|
ds $1
|
|
|
|
wTriggeredGameObjectIndex:: ; 0xd4eb
|
|
; Many game objects come in pairs, wuch as the two bumpers, Pikachu savers, etc.
|
|
; This byte stores which of them the pinball is currently colliding with.
|
|
ds $1
|
|
|
|
wPreviousTriggeredGameObject:: ; 0xd4ec
|
|
; Store the previous triggered game object's id, so that the pinball can't trigger
|
|
; an object two frames in a row. It has to "un-collide" before it can collide again.
|
|
ds $1
|
|
|
|
wWhichDiglett:: ; 0xd4ed
|
|
wWhichPsyduckPoliwag::
|
|
ds $1
|
|
wWhichDiglettId:: ; 0xd4ee
|
|
wWhichPsyduckPoliwagId::
|
|
ds $1
|
|
|
|
wd4ef:: ; 0xd4ef
|
|
ds $1
|
|
|
|
wLeftMapMoveCounter:: ; 0xd4f0
|
|
ds $1
|
|
|
|
wd4f1:: ; 0xd4f1
|
|
ds $1
|
|
|
|
wRightMapMoveCounter:: ; 0xd4f2
|
|
ds $1
|
|
|
|
wLeftMapMoveDiglettAnimationCounter:: ; 0xd4f3
|
|
wLeftMapMovePoliwagAnimationCounter::
|
|
ds $1
|
|
|
|
wLeftMapMoveDiglettFrame:: ; 0xd4f4
|
|
wLeftMapMovePoliwagFrame::
|
|
ds $1
|
|
|
|
wRightMapMoveDiglettAnimationCounter:: ; 0xd4f5
|
|
wRightMapMovePsyduckAnimationCounter::
|
|
ds $1
|
|
|
|
wRightMapMoveDiglettFrame:: ; 0xd4f6
|
|
wRightMapMovePsyduckFrame::
|
|
ds $1
|
|
|
|
wLeftMapMoveCounterFramesUntilDecrease:: ; 0xd4f7
|
|
; Holds the number of frames remaining until the wLeftMapMoveCounter
|
|
; counter will decrease by 1.
|
|
ds $2
|
|
|
|
wRightMapMoveCounterFramesUntilDecrease:: ; 0xd4f9
|
|
; Holds the number of frames remaining until the wRightMapMoveCounter
|
|
; counter will decrease by 1.
|
|
ds $2
|
|
|
|
wBellsproutCollision:: ; 0xd4fb
|
|
; Second byte is set by HandleGameObjectCollision, but is unused
|
|
ds $2
|
|
|
|
wBellsproutAnimation:: ; 0xd4fd
|
|
animation wBellsproutAnimation
|
|
|
|
wStaryuCollision:: ; 0xd500
|
|
; Second byte is set by HandleGameObjectCollision, but is unused
|
|
ds $2
|
|
|
|
wd502:: ; 0xd502
|
|
ds $1
|
|
|
|
wd503:: ; 0xd503
|
|
ds $1
|
|
|
|
wd504:: ; 0xd504
|
|
ds $1
|
|
|
|
wd505:: ; 0xd505
|
|
ds $1
|
|
|
|
wd506:: ; 0xd506
|
|
ds $1
|
|
|
|
wSpinnerCollision:: ; 0xd507
|
|
; Second byte is set by HandleGameObjectCollision, but is unused
|
|
ds $2
|
|
|
|
wd509:: ; 0xd509
|
|
ds $1
|
|
|
|
wd50a:: ; 0xd50a
|
|
ds $1
|
|
|
|
wd50b:: ; 0xd50b
|
|
ds $1
|
|
|
|
wd50c:: ; 0xd50c
|
|
ds $1
|
|
|
|
wWhichCAVELight:: ; 0xd50d
|
|
ds $1
|
|
wWhichCAVELightId:: ; 0xd50e
|
|
ds $1
|
|
|
|
wd50f:: ; 0xd50f
|
|
ds $3
|
|
|
|
wd512:: ; 0xd512
|
|
ds $1
|
|
|
|
wd513:: ; 0xd513
|
|
ds $1
|
|
|
|
wd514:: ; 0xd514
|
|
ds $1
|
|
|
|
wWhichPikachu:: ; 0xd515
|
|
ds $1
|
|
wWhichPikachuId:: ; 0xd516
|
|
ds $1
|
|
|
|
wPikachuSaverCharge:: ; 0xd517
|
|
; Holds the amount of Pikachu "charge" that has been generated by spinning the spinner
|
|
; in the right alley. The charge's value ranges from 0 - 15.
|
|
ds $1
|
|
|
|
wd518:: ; 0xd518
|
|
ds $1
|
|
|
|
wPikachuSaverAnimation:: ; 0xd519
|
|
animation wPikachuSaverAnimation
|
|
|
|
wd51c:: ; 0xd51c
|
|
ds $1
|
|
|
|
wPikachuSaverSlotRewardActive:: ; 0xd51d
|
|
; Set to 1 if the Pikachu Saver slot reward is active. 0 otherwise.
|
|
ds $1
|
|
|
|
wd51e:: ; 0xd51e
|
|
ds $1
|
|
|
|
wWhichBoardTrigger:: ; 0xd51f
|
|
ds $1
|
|
wWhichBoardTriggerId:: ; 0xd520
|
|
ds $1
|
|
|
|
wCollidedAlleyTriggers:: ; 0xd521
|
|
; These bytes are pretty unnecessary, but the original code decided it would use a roundabout way to decide which function to call based on wWhichBoardTriggerId was collided with.
|
|
ds $8
|
|
|
|
ds $6 ; free space
|
|
|
|
wIndicatorStates:: ; 0xd52f
|
|
ds $13
|
|
|
|
wLeftAlleyTrigger:: ; 0xd542
|
|
ds $1
|
|
|
|
wLeftAlleyCount:: ; 0xd543
|
|
ds $1
|
|
|
|
wRightAlleyTrigger:: ; 0xd544
|
|
ds $1
|
|
|
|
wRightAlleyCount:: ; 0xd545
|
|
ds $1
|
|
|
|
wSecondaryLeftAlleyTrigger:: ; 0xd546
|
|
ds $2
|
|
|
|
wPinballIsVisible:: ; 0xd548
|
|
; Set to 1 if the pinball is visible in play.
|
|
; Set to 0 when the pinball disappears in things like the Slot, Slowpoke, Cloyster, Bellsprout, etc.
|
|
; When it's set to 0, it disables tilt effects on the pinball.
|
|
ds $1
|
|
|
|
wEnableBallGravityAndTilt:: ; 0xd549
|
|
; Set to 1 to enable the effect of gravity and tilt on the pinball.
|
|
; 0 disables these forces. Used for things likes the initial pinball launch or to hold the ball stationary.
|
|
ds $1
|
|
|
|
wCurrentMap:: ; 0xd54a
|
|
ds $1
|
|
|
|
wInSpecialMode:: ; 0xd54b
|
|
; Set to 1 if currently in special game mode. See wSpecialMode.
|
|
ds $1
|
|
|
|
wd54c:: ; 0xd54c
|
|
ds $1
|
|
|
|
wd54d:: ; 0xd54d
|
|
ds $1
|
|
|
|
wd54e:: ; 0xd54e
|
|
ds $1
|
|
|
|
wd54f:: ; 0xd54f
|
|
ds $1
|
|
|
|
wSpecialMode:: ; 0xd550
|
|
; Represents the current pinball mode. Example special modes would be, Catch'Em, Evolution, Map Move
|
|
; See SPECIAL_MODE constants.
|
|
ds $1
|
|
|
|
wd551:: ; 0xd551
|
|
ds $1
|
|
|
|
wCurrentEvolutionMon:: ; 0xd552
|
|
ds $1
|
|
|
|
wCurrentEvolutionType:: ; 0xd553
|
|
ds $1
|
|
|
|
wd554:: ; 0xd554
|
|
ds $1
|
|
|
|
wd555:: ; 0xd555
|
|
ds $1
|
|
|
|
wd556:: ; 0xd556
|
|
ds $1
|
|
|
|
wd557:: ; 0xd557
|
|
ds $1
|
|
|
|
wd558:: ; 0xd558
|
|
ds $1
|
|
|
|
wd559:: ; 0xd559
|
|
ds $1
|
|
|
|
wd55a:: ; 0xd55a
|
|
ds $1
|
|
|
|
wRareMonsFlag:: ; 0xd55b
|
|
ds $1
|
|
|
|
wd55c:: ; 0xd55c
|
|
ds $1
|
|
|
|
wd55d:: ; 0xd55d
|
|
ds $1
|
|
|
|
wd55e:: ; 0xd55e
|
|
ds $1
|
|
|
|
wd55f:: ; 0xd55f
|
|
ds $1
|
|
|
|
wd560:: ; 0xd560
|
|
ds $1
|
|
|
|
wd561:: ; 0xd561
|
|
ds $1
|
|
|
|
wd562:: ; 0xd562
|
|
ds $1
|
|
|
|
wd563:: ; 0xd563
|
|
ds $1
|
|
|
|
wd564:: ; 0xd564
|
|
ds $1
|
|
|
|
wd565:: ; 0xd565
|
|
ds $1
|
|
|
|
wd566:: ; 0xd566
|
|
ds $c
|
|
|
|
wd572:: ; 0xd572
|
|
ds $6
|
|
|
|
wd578:: ; 0xd578
|
|
ds $1
|
|
|
|
wCurrentCatchEmMon:: ; 0xd579
|
|
ds $1
|
|
|
|
wTimerSeconds:: ; 0xd57a
|
|
ds $1
|
|
|
|
wTimerMinutes:: ; 0xd57b
|
|
ds $1
|
|
|
|
wTimerFrames:: ; 0xd57c
|
|
ds $1
|
|
|
|
wTimerActive:: ; 0xd57d
|
|
; Set to 1 when the Timer is displayed and counting down.
|
|
ds $1
|
|
|
|
wd57e:: ; 0xd57e
|
|
ds $1
|
|
|
|
wd57f:: ; 0xd57f
|
|
ds $1
|
|
|
|
wd580:: ; 0xd580
|
|
ds $1
|
|
|
|
wd581:: ; 0xd581
|
|
ds $1
|
|
|
|
wTimerDigits:: ; 0xd582
|
|
; first byte = minutes
|
|
; second byte = tens place
|
|
; third byte = ones place
|
|
; fourth byte = unused, but still written to
|
|
ds $4
|
|
|
|
wd586:: ; 0xd586
|
|
ds $30
|
|
|
|
wd5b6:: ; 0xd5b6 a 24 wide block starts here and is filled before catch mode
|
|
ds $5
|
|
|
|
wWildMonIsHittable:: ; 0xd5bb
|
|
; Set to 1 when the wild pokemon is animated and hittable with the pinball.
|
|
ds $1
|
|
|
|
wd5bc:: ; 0xd5bc
|
|
ds $1
|
|
|
|
wd5bd:: ; 0xd5bd
|
|
ds $1
|
|
|
|
wd5be:: ; 0xd5be
|
|
ds $1
|
|
|
|
wBallHitWildMon:: ; 0xd5bf
|
|
ds $1
|
|
|
|
wNumMonHits:: ; 0xd5c0
|
|
ds $1
|
|
|
|
wd5c1:: ; 0xd5c1
|
|
ds $1
|
|
|
|
wd5c2:: ; 0xd5c2
|
|
ds $1
|
|
|
|
wd5c3:: ; 0xd5c3
|
|
ds $1
|
|
|
|
wd5c4:: ; 0xd5c4
|
|
ds $1
|
|
|
|
wNumMewHitsLow:: ; 0xd5c5
|
|
ds $1
|
|
|
|
wd5c6:: ; 0xd5c6
|
|
ds $1
|
|
|
|
wWildMonCollision:: ; 0xd5c7
|
|
; Set by HandleGameObjectCollision
|
|
; Second byte gets set, but is unused
|
|
ds $2
|
|
|
|
ds $1
|
|
|
|
wd5ca:: ; 0xd5ca set to 1 by a commonly called text function that is called at the start of catch and raises the score bar
|
|
ds $1
|
|
|
|
wd5cb:: ; 0xd5cb set to 0 if the above is 0 during Func_33e3
|
|
ds $1
|
|
|
|
wScrollingTextStruct1:: ; 0xd5cc Start of a scrolling message struct that contains 8 1-byte vars.
|
|
; Byte 1: Toggles if enabled. 0 is off, non-0 is on
|
|
; Byte 2: is how many frames until the next scroll
|
|
; Byte 3: holds how long, in frames, it should take for the scroll to move 1 tile
|
|
; Byte 4: is the current position to place the start of the text
|
|
; Byte 5: is where in the scroll the message should stop for an extended period
|
|
; Byte 6: is how many frames the extended stop from Byte 5 has left
|
|
; Byte 7: is a pointer to the source text's position in the buffer
|
|
; Byte 8: is decremented each scroll and scroll denied by the stop
|
|
; Scrolling text relies on byte allignment for the text buffer and display area
|
|
ds $8
|
|
|
|
wScrollingTextStruct2:: ; 0xd5d4 Start of a scrolling struct2
|
|
ds $4
|
|
|
|
wd5d8:: ; 0xd5d8
|
|
ds $3
|
|
|
|
wd5db:: ; 0xd5db
|
|
ds $1
|
|
|
|
wScrollingTextStruct3:: ; 0xd5dc Start of a scrolling struct3
|
|
ds $8
|
|
|
|
wd5e4:: ; 0xd5e4
|
|
ds $5
|
|
|
|
wd5e9:: ; 0xd5e9
|
|
ds $5
|
|
|
|
wd5ee:: ; 0xd5ee
|
|
ds $5
|
|
|
|
wCapturingMon:: ; 0xd5f3
|
|
; Set to 1 when the capturing animation starts.
|
|
ds $1
|
|
|
|
wBallCaptureAnimation:: ; 0xd5f4
|
|
animation wBallCaptureAnimation
|
|
|
|
wWhichPinballUpgradeTrigger:: ; 0xd5f7
|
|
ds $1
|
|
wWhichPinballUpgradeTriggerId:: ; 0xd5f8
|
|
ds $1
|
|
|
|
wd5f9:: ; 0xd5f9
|
|
ds $2
|
|
|
|
wd5fb:: ; 0xd5fb
|
|
ds $1
|
|
|
|
wd5fc:: ; 0xd5fc
|
|
ds $1
|
|
|
|
wd5fd:: ; 0xd5fd
|
|
ds $1
|
|
|
|
wDittoSlotCollision:: ; 0xd5fe
|
|
; Second byte is set by HandleGameObjectCollision, but is unused
|
|
ds $2
|
|
|
|
wd600:: ; 0xd600
|
|
ds $1
|
|
|
|
wSlotCollision:: ; 0xd601
|
|
; Second byte is set by HandleGameObjectCollision, but is unused
|
|
ds $2
|
|
|
|
wd603:: ; 0xd603
|
|
ds $1
|
|
|
|
wd604:: ; 0xd604
|
|
ds $2
|
|
|
|
wd606:: ; 0xd606
|
|
ds $1
|
|
|
|
wd607:: ; 0xd607
|
|
ds $1
|
|
|
|
wd608:: ; 0xd608
|
|
ds $1
|
|
|
|
wd609:: ; 0xd609
|
|
ds $1
|
|
|
|
wWhichBonusMultiplierRailing:: ; 0xd60a
|
|
ds $1
|
|
wWhichBonusMultiplierRailingId:: ; 0xd60b
|
|
ds $1
|
|
|
|
wBonusMultiplierTensDigit:: ; 0xd60c
|
|
; Holds the tens digit for the current bonus multiplier value. This number is displayed on the left-side bonus multiplier railing.
|
|
ds $1
|
|
|
|
wBonusMultiplierOnesDigit:: ; 0xd60d
|
|
; Holds the ones digit for the current bonus multiplier value. This number is displayed on the right-side bonus multiplier railing.
|
|
ds $1
|
|
|
|
wd60e:: ; 0xd60e
|
|
ds $1
|
|
|
|
wd60f:: ; 0xd60f
|
|
ds $1
|
|
|
|
wd610:: ; 0xd610
|
|
ds $1
|
|
|
|
wd611:: ; 0xd611
|
|
ds $1
|
|
|
|
wd612:: ; 0xd612
|
|
ds $1
|
|
|
|
wd613:: ; 0xd613
|
|
ds $1
|
|
|
|
wd614:: ; 0xd614
|
|
ds $1
|
|
|
|
wd615:: ; 0xd615
|
|
ds $1
|
|
|
|
wGameOver:: ; 0xd616
|
|
ds $3
|
|
|
|
wd619:: ; 0xd619
|
|
ds $1
|
|
|
|
wd61a:: ; 0xd61a
|
|
ds $1
|
|
|
|
wd61b:: ; 0xd61b
|
|
ds $2
|
|
|
|
wd61d:: ; 0xd61d
|
|
ds $1
|
|
|
|
wd61e:: ; 0xd61e
|
|
ds $1
|
|
|
|
wCurSlotBonus:: ; 0xd61f
|
|
ds $1
|
|
|
|
wSlotAnyPokemonCaught:: ; 0xd620
|
|
; Used by the slot logic to store whether or not any pokemon are caught.
|
|
ds $1
|
|
|
|
wd621:: ; 0xd621
|
|
ds $1
|
|
|
|
wCatchEmOrEvolutionSlotRewardActive:: ; 0xd622
|
|
; Set to 1 if the "Start Catch 'Em Mode" Slot Reward is received.
|
|
; Set to 2 if the "Start Evolution Mode" Slot Reward is received.
|
|
ds $1
|
|
|
|
wBonusStageSlotRewardActive:: ; 0xd623
|
|
; Set to 1 when the "Go To Bonus" Slot Reward is received.
|
|
ds $1
|
|
|
|
wPreviousNumPokeballs:: ; 0xd624
|
|
; See wNumPokeballs. This holds the previous number of them to handle the blinking
|
|
; animation, so that it only blinks the newly-acquired pokeballs.
|
|
ds $1
|
|
|
|
wNumPokeballs:: ; 0xd625
|
|
; The number of Pokeballs that appear directly underneath the billboard area.
|
|
; When you get 3 of these, the bonus stage opens up. This number is increased
|
|
; when doing things like catching of evolving a pokemon.
|
|
ds $1
|
|
|
|
wPokeballBlinkingCounter:: ; 0xd626
|
|
; Counts the number of frames left in the blinking pokeballs animation.
|
|
; These Pokeballs are located underneath the billboard area, and blink after
|
|
; doing things such as catching or evolving a pokemon.
|
|
ds $1
|
|
|
|
ds $1 ; unused byte
|
|
|
|
wNumPokemonCaughtInBallBonus:: ; 0xd628
|
|
; Counts the number of pokemon caught in a single ball bonus.
|
|
ds $1
|
|
|
|
wNumPokemonEvolvedInBallBonus:: ; 0xd629
|
|
; Counts the number of pokemon evolved in a single ball bonus.
|
|
ds $1
|
|
|
|
wNumBellsproutEntries:: ; 0xd62a
|
|
; Counts the number of times Bellsprout was entered without triggering Catch'Em mode.
|
|
ds $1
|
|
|
|
wNumDugtrioTriples:: ; 0xd62b
|
|
; Counts the number of times either of the two Dugtrio was hit 3 times on the red field.
|
|
ds $1
|
|
|
|
wNumCAVECompletions:: ; 0xd62c
|
|
; Counts the number of times all CAVE lights were lit.
|
|
ds $1
|
|
|
|
wNumSpinnerTurns:: ; 0xd62d
|
|
; Counts the number of spinner turns in a single ball bonus.
|
|
ds $1
|
|
|
|
wNumPikachuSaves:: ; 0xd62e
|
|
; Counts the number of times the ball was saved by a charged Pikachu.
|
|
; This is unused, but was probably intended to be used in the Ball Bonus.
|
|
ds $1
|
|
|
|
wNumMewtwoBonusCompletions:: ; 0xd62f
|
|
ds $1
|
|
|
|
wSlowpokeCollision:: ; 0xd630
|
|
; Second byte is set by HandleGameObjectCollision, but is unused
|
|
ds $2
|
|
|
|
wSlowpokeAnimation:: ; 0xd632
|
|
animation wSlowpokeAnimation
|
|
|
|
wCloysterCollision:: ; 0xd635
|
|
; Second byte is set by HandleGameObjectCollision, but is unused
|
|
ds $2
|
|
|
|
wCloysterAnimation:: ; 0xd637
|
|
animation wCloysterAnimation
|
|
|
|
wNumSlowpokeEntries:: ; 0xd63a
|
|
; Counts the number of times Slowpoke was entered without triggering Evolution mode.
|
|
ds $1
|
|
|
|
wNumCloysterEntries:: ; 0xd63b
|
|
; Counts the number of times Cloyster was entered without triggering Catch'Em mode.
|
|
ds $1
|
|
|
|
wNumPsyduckTriples:: ; 0xd63c
|
|
; Counts the number of times Psyduck was hit 3 times.
|
|
ds $1
|
|
|
|
wNumPoliwagTriples:: ; 0xd63d
|
|
; Counts the number of times Poliwag was hit 3 times.
|
|
ds $1
|
|
|
|
wBlueStageForceFieldDirection:: ; 0xd63e
|
|
ds $1
|
|
|
|
wIndicatorState2Backup:: ; 0xd63f
|
|
ds $1
|
|
|
|
wBlueStageForceFieldGfxNeedsLoading:: ; 0xd640
|
|
; A flag to signal that the force field arrow graphics need to be updated because
|
|
; it recently changed direction.
|
|
ds $1
|
|
|
|
wBlueStageForceFieldFlippedDown:: ; 0xd641
|
|
ds $1
|
|
|
|
wd642:: ; 0xd642
|
|
ds $1
|
|
|
|
wd643:: ; 0xd643
|
|
ds $1
|
|
|
|
wd644:: ; 0xd644
|
|
ds $1
|
|
|
|
wd645:: ; 0xd645
|
|
ds $1
|
|
|
|
wd646:: ; 0xd646
|
|
ds $1
|
|
|
|
wd647:: ; 0xd647
|
|
ds $1
|
|
|
|
wd648:: ; 0xd648
|
|
ds $1
|
|
|
|
wd649:: ; 0xd649
|
|
ds $1
|
|
|
|
wd64a:: ; 0xd64a
|
|
ds $1
|
|
|
|
wd64b:: ; 0xd64b
|
|
ds $1
|
|
|
|
wBlueFieldForceFieldFrameCounter:: ; 0xd64c
|
|
; Continuosly counts up to 60--wraps around to 0.
|
|
ds $1
|
|
|
|
wBlueFieldForceFieldSecondsCounter:: ; 0xd64d
|
|
; Increments once every second, based on wBlueFieldForceFieldFrameCounter.
|
|
; When it hits 5 seconds, it wraps back to 0.
|
|
ds $1
|
|
|
|
wd64e:: ; 0xd64e
|
|
ds $1
|
|
|
|
wd64f:: ; 0xd64f
|
|
ds $1
|
|
|
|
wd650:: ; 0xd650
|
|
ds $1
|
|
|
|
wd651:: ; 0xd651
|
|
ds $1
|
|
|
|
wd652:: ; 0xd652
|
|
ds $1
|
|
|
|
wd653:: ; 0xd653
|
|
ds $1
|
|
|
|
wWhichGravestone:: ; 0xd654
|
|
; second byte is unused
|
|
ds $2
|
|
|
|
wd656:: ; 0xd656
|
|
ds $1
|
|
|
|
wd657:: ; 0xd657
|
|
ds $1
|
|
|
|
wd658:: ; 0xd658
|
|
ds $1
|
|
|
|
wd659:: ; 0xd659
|
|
ds $2
|
|
|
|
wGastly1AnimationState:: ; 0xd65b
|
|
ds $2
|
|
|
|
wd65d:: ; 0xd65d
|
|
ds $1
|
|
|
|
wGastly1XPos:: ; 0xd65e
|
|
ds $2
|
|
wGastly1YPos:: ; 0xd660
|
|
ds $2
|
|
|
|
wd662:: ; 0xd662
|
|
ds $2
|
|
|
|
wGastly2AnimationState:: ; 0xd664
|
|
ds $2
|
|
|
|
wd666:: ; 0xd666
|
|
ds $1
|
|
|
|
wGastly2XPos:: ; 0xd668
|
|
ds $2
|
|
wGastly2YPos:: ; 0xd66a
|
|
ds $2
|
|
|
|
wd66b:: ; 0xd66b
|
|
ds $2
|
|
|
|
wGastly3AnimationState:: ; 0xd66d
|
|
ds $2
|
|
|
|
wd66f:: ; 0xd66f
|
|
ds $1
|
|
|
|
wGastly3XPos:: ; 0xd671
|
|
ds $2
|
|
wGastly3YPos:: ; 0xd673
|
|
ds $2
|
|
|
|
wd674:: ; 0xd674
|
|
ds $1
|
|
|
|
wd675:: ; 0xd675
|
|
ds $2
|
|
|
|
wd677:: ; 0xd677
|
|
ds $2
|
|
|
|
wd679:: ; 0xd679
|
|
ds $2
|
|
|
|
wd67b:: ; 0xd67b
|
|
ds $1
|
|
|
|
wd67c:: ; 0xd67c
|
|
ds $1
|
|
|
|
wd67d:: ; 0xd67d
|
|
ds $1
|
|
|
|
wd67e:: ; 0xd67e
|
|
ds $2
|
|
|
|
wHaunter1AnimationState:: ; 0xd680
|
|
ds $2
|
|
|
|
wd682:: ; 0xd682
|
|
ds $1
|
|
|
|
wHaunter1XPos:: ; 0xd683
|
|
ds $2
|
|
wHaunter1YPos:: ; 0xd685
|
|
ds $2
|
|
|
|
wd687:: ; 0xd687
|
|
ds $2
|
|
|
|
wHaunter2AnimationState:: ; 0xd689
|
|
ds $1
|
|
|
|
ds $1
|
|
|
|
wd68b:: ; 0xd68b
|
|
ds $1
|
|
|
|
wHaunter2XPos:: ; 0xd68c
|
|
ds $2
|
|
wHaunter2YPos:: ; 0xd68e
|
|
ds $2
|
|
|
|
wd690:: ; 0xd690
|
|
ds $1
|
|
|
|
wd691:: ; 0xd691
|
|
ds $2
|
|
|
|
wd693:: ; 0xd693
|
|
ds $2
|
|
|
|
wd695:: ; 0xd695
|
|
ds $1
|
|
|
|
wd696:: ; 0xd696
|
|
ds $1
|
|
|
|
wd697:: ; 0xd697
|
|
ds $1
|
|
|
|
wd698:: ; 0xd698
|
|
ds $2
|
|
|
|
wGengarAnimationState:: ; 0xd69a
|
|
ds $1
|
|
|
|
wd69b:: ; 0xd69b
|
|
ds $1
|
|
|
|
wd69c:: ; 0xd69c
|
|
ds $1
|
|
|
|
wGengarXPos:: ; 0xd69d
|
|
ds $2
|
|
wGengarYPos:: ; 0xd69f
|
|
ds 2
|
|
|
|
wd6a1:: ; 0xd6a1
|
|
ds $1
|
|
|
|
wd6a2:: ; 0xd6a2
|
|
ds $1
|
|
|
|
wd6a3:: ; 0xd6a3
|
|
ds $1
|
|
|
|
wd6a4:: ; 0xd6a4
|
|
ds $1
|
|
|
|
wd6a5:: ; 0xd6a5
|
|
ds $1
|
|
|
|
wd6a6:: ; 0xd6a6
|
|
ds $1
|
|
|
|
wd6a7:: ; 0xd6a7
|
|
ds $1
|
|
|
|
wd6a8:: ; 0xd6a8
|
|
ds $1
|
|
|
|
wd6a9:: ; 0xd6a9
|
|
ds $1
|
|
|
|
wd6aa:: ; 0xd6aa
|
|
ds $2
|
|
|
|
wd6ac:: ; 0xd6ac
|
|
ds $1
|
|
|
|
wd6ad:: ; 0xd6ad
|
|
ds $1
|
|
|
|
wd6ae:: ; 0xd6ae
|
|
ds $1
|
|
|
|
wd6af:: ; 0xd6af
|
|
ds $1
|
|
|
|
wd6b0:: ; 0xd6b0
|
|
ds $1
|
|
|
|
wd6b1:: ; 0xd6b1
|
|
ds $1
|
|
|
|
wd6b2:: ; 0xd6b2
|
|
ds $1
|
|
|
|
wd6b3:: ; 0xd6b3
|
|
ds $1
|
|
|
|
wd6b4:: ; 0xd6b4
|
|
ds $1
|
|
|
|
wd6b5:: ; 0xd6b5
|
|
ds $1
|
|
|
|
wd6b6:: ; 0xd6b6
|
|
ds $4
|
|
|
|
wd6ba:: ; 0xd6ba
|
|
ds $1
|
|
|
|
wd6bb:: ; 0xd6bb
|
|
ds $2
|
|
|
|
wd6bd:: ; 0xd6bd
|
|
ds $1
|
|
|
|
wd6be:: ; 0xd6be
|
|
ds $7
|
|
|
|
wd6c5:: ; 0xd6c5
|
|
ds $1
|
|
|
|
wd6c6:: ; 0xd6c6
|
|
ds $7
|
|
|
|
wd6cd:: ; 0xd6cd
|
|
ds $1
|
|
|
|
wd6ce:: ; 0xd6ce
|
|
ds $7
|
|
|
|
wd6d5:: ; 0xd6d5
|
|
ds $1
|
|
|
|
wd6d6:: ; 0xd6d6
|
|
ds $7
|
|
|
|
wd6dd:: ; 0xd6dd
|
|
ds $1
|
|
|
|
wd6de:: ; 0xd6de
|
|
ds $7
|
|
|
|
wd6e5:: ; 0xd6e5
|
|
ds $1
|
|
|
|
wd6e6:: ; 0xd6e6
|
|
ds $1
|
|
|
|
wd6e7:: ; 0xd6e7
|
|
ds $2
|
|
|
|
wMeowthAnimation:: ; 0xd6e9
|
|
animation wMeowthAnimation
|
|
|
|
wd6ec:: ; 0xd6ec
|
|
ds $1
|
|
|
|
wMeowthXPosition:: ; 0xd6ed
|
|
ds $1
|
|
|
|
wMeowthYPosition:: ; 0xd6ee
|
|
ds $2
|
|
|
|
wMeowthXMovement:: ; 0xd6f0
|
|
ds $1
|
|
|
|
wMeowthYMovement:: ; 0xd6f1
|
|
ds $2
|
|
|
|
wd6f3:: ; 0xd6f3
|
|
ds $1
|
|
|
|
wd6f4:: ; 0xd6f4
|
|
ds $1
|
|
|
|
wd6f5:: ; 0xd6f5
|
|
ds $1
|
|
|
|
wd6f6:: ; 0xd6f6
|
|
ds $1
|
|
|
|
wd6f7:: ; 0xd6f7
|
|
ds $1
|
|
|
|
wd6f8:: ; 0xd6f8
|
|
ds $1
|
|
|
|
wd6f9:: ; 0xd6f9
|
|
ds $1
|
|
|
|
wd6fa:: ; 0xd6fa
|
|
ds $1
|
|
|
|
wd6fb:: ; 0xd6fb
|
|
ds $1
|
|
|
|
wd6fc:: ; 0xd6fc
|
|
ds $1
|
|
|
|
wd6fd:: ; 0xd6fd
|
|
ds $2
|
|
|
|
wd6ff:: ; 0xd6ff
|
|
ds $1
|
|
|
|
wd700:: ; 0xd700
|
|
ds $1
|
|
|
|
wd701:: ; 0xd701
|
|
ds $1
|
|
|
|
wd702:: ; 0xd702
|
|
ds $1
|
|
|
|
wd703:: ; 0xd703
|
|
ds $1
|
|
|
|
wd704:: ; 0xd704
|
|
ds $1
|
|
|
|
wd705:: ; 0xd705
|
|
ds $1
|
|
|
|
wd706:: ; 0xd706
|
|
ds $1
|
|
|
|
wd707:: ; 0xd707
|
|
ds $4
|
|
|
|
wd70b:: ; 0xd70b
|
|
ds $1
|
|
|
|
wd70c:: ; 0xd70c
|
|
ds $3
|
|
|
|
wMeowthStageBonusCounter:: ; 0xd70f
|
|
ds $1
|
|
|
|
wd710:: ; 0xd710
|
|
ds $1
|
|
|
|
wMeowthStageScore:: ; 0xd711
|
|
ds $1
|
|
|
|
wd712:: ; 0xd712
|
|
ds $1
|
|
|
|
wd713:: ; 0xd713
|
|
ds $1
|
|
|
|
wd714:: ; 0xd714
|
|
ds $1
|
|
|
|
wd715:: ; 0xd715
|
|
ds $1
|
|
|
|
wd716:: ; 0xd716
|
|
ds $1
|
|
|
|
wd717:: ; 0xd717
|
|
ds $1
|
|
|
|
wd718:: ; 0xd718
|
|
ds $1
|
|
|
|
wd719:: ; 0xd719
|
|
ds $1
|
|
|
|
wd71a:: ; 0xd71a
|
|
ds $1
|
|
|
|
wd71b:: ; 0xd71b
|
|
ds $1
|
|
|
|
wd71c:: ; 0xd71c
|
|
ds $2
|
|
|
|
wd71e:: ; 0xd71e
|
|
ds $1
|
|
|
|
wd71f:: ; 0xd71f
|
|
ds $1
|
|
|
|
wd720:: ; 0xd720
|
|
ds $1
|
|
|
|
wd721:: ; 0xd721
|
|
ds $1
|
|
|
|
wd722:: ; 0xd722
|
|
ds $1
|
|
|
|
wd723:: ; 0xd723
|
|
ds $1
|
|
|
|
wd724:: ; 0xd724
|
|
ds $1
|
|
|
|
wd725:: ; 0xd725
|
|
ds $1
|
|
|
|
wd726:: ; 0xd726
|
|
ds $1
|
|
|
|
wd727:: ; 0xd727
|
|
ds $1
|
|
|
|
wd728:: ; 0xd728
|
|
ds $1
|
|
|
|
wd729:: ; 0xd729
|
|
ds $1
|
|
|
|
wd72a:: ; 0xd72a
|
|
ds $1
|
|
|
|
wd72b:: ; 0xd72b
|
|
ds $1
|
|
|
|
wd72c:: ; 0xd72c
|
|
ds $5
|
|
|
|
wd731:: ; 0xd731
|
|
ds $1
|
|
|
|
wd732:: ; 0xd732
|
|
ds $1
|
|
|
|
wd733:: ; 0xd733
|
|
ds $1
|
|
|
|
wd734:: ; 0xd734
|
|
ds $1
|
|
|
|
wd735:: ; 0xd735
|
|
ds $1
|
|
|
|
wd736:: ; 0xd736
|
|
ds $3
|
|
|
|
wd739:: ; 0xd739
|
|
ds $1
|
|
|
|
wd73a:: ; 0xd73a
|
|
ds $1
|
|
|
|
wd73b:: ; 0xd73b
|
|
ds $1
|
|
|
|
wd73c:: ; 0xd73c
|
|
ds $1
|
|
|
|
wDiglettStates:: ; 0xd73d
|
|
ds $1f
|
|
|
|
wCurrentDiglett:: ; 0xd75c
|
|
ds $1
|
|
|
|
wDiglettsInitializedFlag:: ; 0xd75d
|
|
ds $1
|
|
|
|
wDiglettInitDelayCounter:: ; 0xd75e
|
|
ds $1
|
|
|
|
wd75f:: ; 0xd75f
|
|
ds $2
|
|
|
|
wDugtrioAnimation:: ; 0xd761
|
|
animation wDugtrioAnimation
|
|
|
|
wDugrioState:: ; 0xd764
|
|
ds $1
|
|
|
|
wd765:: ; 0xd765
|
|
ds $1
|
|
|
|
wd766:: ; 0xd766
|
|
ds $1
|
|
|
|
wd767:: ; 0xd767
|
|
ds $1
|
|
|
|
wd768:: ; 0xd768
|
|
ds $3
|
|
|
|
wd76b:: ; 0xd76b
|
|
ds $1
|
|
|
|
wd76c:: ; 0xd76c
|
|
ds $1
|
|
|
|
wd76d:: ; 0xd76d
|
|
ds $1
|
|
|
|
wd76e:: ; 0xd76e
|
|
ds $2
|
|
|
|
wd770:: ; 0xd770
|
|
ds $1
|
|
|
|
wd771:: ; 0xd771
|
|
ds $1
|
|
|
|
wd772:: ; 0xd772
|
|
ds $3
|
|
|
|
wd775:: ; 0xd775
|
|
ds $1
|
|
|
|
wd776:: ; 0xd776
|
|
ds $1
|
|
|
|
wd777:: ; 0xd777
|
|
ds $1
|
|
|
|
wd778:: ; 0xd778
|
|
ds $2
|
|
|
|
wd77a:: ; 0xd77a
|
|
ds $1
|
|
|
|
wd77b:: ; 0xd77b
|
|
ds $1
|
|
|
|
wd77c:: ; 0xd77c
|
|
ds $3
|
|
|
|
wd77f:: ; 0xd77f
|
|
ds $1
|
|
|
|
wd780:: ; 0xd780
|
|
ds $1
|
|
|
|
wd781:: ; 0xd781
|
|
ds $1
|
|
|
|
wd782:: ; 0xd782
|
|
ds $2
|
|
|
|
wd784:: ; 0xd784
|
|
ds $1
|
|
|
|
wd785:: ; 0xd785
|
|
ds $1
|
|
|
|
wd786:: ; 0xd786
|
|
ds $b
|
|
|
|
wd791:: ; 0xd791
|
|
ds $1
|
|
|
|
wd792:: ; 0xd792
|
|
ds $1
|
|
|
|
wd793:: ; 0xd793
|
|
ds $1
|
|
|
|
wd794:: ; 0xd794
|
|
ds $1
|
|
|
|
wd795:: ; 0xd795
|
|
ds $1
|
|
|
|
wd796:: ; 0xd796
|
|
ds $1
|
|
|
|
wd797:: ; 0xd797
|
|
ds $1
|
|
|
|
wd798:: ; 0xd798
|
|
ds $1
|
|
|
|
wd799:: ; 0xd799
|
|
ds $1
|
|
|
|
wd79a:: ; 0xd79a
|
|
ds $2
|
|
|
|
wd79c:: ; 0xd79c
|
|
ds $2
|
|
|
|
wd79e:: ; 0xd79e
|
|
ds $1
|
|
|
|
wd79f:: ; 0xd79f
|
|
ds $1
|
|
|
|
wd7a0:: ; 0xd7a0
|
|
ds $1
|
|
|
|
wLeftTiltCounter:: ; 0xd7a1
|
|
ds $1
|
|
|
|
wLeftTiltReset:: ; 0xd7a2
|
|
ds $1
|
|
|
|
wRightTiltCounter:: ; 0xd7a3
|
|
ds $1
|
|
|
|
wRightTiltReset:: ; 0xd7a4
|
|
ds $1
|
|
|
|
wUpperTiltCounter:: ; 0xd7a5
|
|
ds $1
|
|
|
|
wUpperTiltReset:: ; 0xd7a6
|
|
ds $1
|
|
|
|
wLeftTiltPushing:: ; 0xd7a7
|
|
ds $1
|
|
|
|
wRightTiltPushing:: ; 0xd7a8
|
|
ds $1
|
|
|
|
wUpperTiltPushing:: ; 0xd7a9
|
|
ds $1
|
|
|
|
wd7aa:: ; 0xd7aa
|
|
ds $1
|
|
|
|
wSCX:: ; 0xd7ab
|
|
ds $1
|
|
|
|
wd7ac:: ; 0xd7ac
|
|
ds $1
|
|
|
|
wd7ad:: ; 0xd7ad
|
|
ds $1
|
|
|
|
wd7ae:: ; 0xd7ae
|
|
ds $1
|
|
|
|
wd7af:: ; 0xd7af
|
|
ds $1
|
|
|
|
wd7b0:: ; 0xd7b0
|
|
ds $1
|
|
|
|
wd7b1:: ; 0xd7b1
|
|
ds $1
|
|
|
|
wd7b2:: ; 0xd7b2
|
|
ds $1
|
|
|
|
wd7b3:: ; 0xd7b3
|
|
ds $1
|
|
|
|
wd7b4:: ; 0xd7b4
|
|
ds $1
|
|
|
|
wd7b5:: ; 0xd7b5
|
|
ds $1
|
|
|
|
wLeftFlipperAnimationState:: ; 0xd7b6
|
|
ds $1
|
|
|
|
wRightFlipperAnimationState:: ; 0xd7b7
|
|
ds $1
|
|
|
|
wFlipperXCollisionAttribute:: ; 0xd7b8
|
|
ds $1
|
|
|
|
wFlipperCollision:: ; 0xd7b9
|
|
ds $1
|
|
|
|
wFlipperXForce:: ; 0xd7ba
|
|
dw
|
|
|
|
wFlipperYForce:: ; 0xd7bc
|
|
dw
|
|
|
|
wd7be:: ; 0xd7be
|
|
ds $1
|
|
|
|
wStageSong:: ; 0xd7bf
|
|
ds $1
|
|
|
|
wStageSongBank:: ; 0xd7c0
|
|
ds $1
|
|
|
|
wd7c1:: ; 0xd7c1
|
|
ds $1
|
|
|
|
wd7c2:: ; 0xd7c2
|
|
ds $1
|
|
|
|
wSubTileBallXPos:: ; 0xd7c3
|
|
ds $1
|
|
|
|
wSubTileBallYPos:: ; 0xd7c4
|
|
ds $1
|
|
|
|
wUpperLeftCollisionAttribute:: ; 0xd7c5
|
|
ds $1
|
|
|
|
wLowerLeftCollisionAttribute:: ; 0xd7c6
|
|
ds $1
|
|
|
|
wUpperRightCollisionAttribute:: ; 0xd7c7
|
|
ds $1
|
|
|
|
wLowerRightCollisionAttribute:: ; 0xd7c8
|
|
ds $1
|
|
|
|
wd7c9:: ; 0xd7c9
|
|
ds $10
|
|
|
|
wd7d9:: ; 0xd7d9
|
|
ds $10
|
|
|
|
wd7e9:: ; 0xd7e9
|
|
ds $1
|
|
|
|
wCollisionForceAngle:: ; 0xd7ea
|
|
ds $1
|
|
|
|
wd7eb:: ; 0xd7eb
|
|
ds $1
|
|
|
|
wStageCollisionMapPointer:: ; 0xd7ec
|
|
ds $2
|
|
|
|
wStageCollisionMapBank:: ; 0xd7ee
|
|
ds $1
|
|
|
|
wStageCollisionMasksPointer:: ; 0xd7ef
|
|
ds $2
|
|
|
|
wStageCollisionMasksBank:: ; 0xd7f1
|
|
ds $1
|
|
|
|
wd7f2:: ; 0xd7f2
|
|
ds $1
|
|
|
|
wBallPositionPointerOffsetFromStageTopLeft:: ; 0xd7f3
|
|
dw
|
|
|
|
wCurCollisionAttribute:: ; 0xd7f5
|
|
ds $1
|
|
|
|
wd7f6:: ; 0xd7f6
|
|
ds $1
|
|
|
|
wd7f7:: ; 0xd7f7
|
|
ds $1
|
|
|
|
wd7f8:: ; 0xd7f8
|
|
ds $1
|
|
|
|
wInGameMenuIndex:: ; 0xd7f9
|
|
ds $1
|
|
|
|
wd7fa:: ; 0xd7fa
|
|
ds $1
|
|
|
|
wd7fb:: ; 0xd7fb
|
|
ds $1
|
|
|
|
wd7fc:: ; 0xd7fc
|
|
ds $1
|
|
|
|
wd7fd:: ; 0xd7fd
|
|
ds $1
|
|
|
|
wd7fe:: ; 0xd7fe
|
|
ds $2
|
|
|
|
wSFXTimer:: ; 0xd800
|
|
ds $1
|
|
|
|
wd801:: ; 0xd801
|
|
ds $1
|
|
|
|
wOAMBufferSize:: ; 0xd802
|
|
ds $1
|
|
|
|
wd803:: ; 0xd803
|
|
ds $1
|
|
|
|
wd804:: ; 0xd804
|
|
ds $1
|
|
|
|
wd805:: ; 0xd805 enables unused and odd PlaceString
|
|
ds $1
|
|
|
|
wd806:: ; 0xd806
|
|
ds $1
|
|
|
|
wd807:: ; 0xd807
|
|
ds $1
|
|
|
|
; These three bytes track different joypad states cummulatively, until they are manually cleared.
|
|
; They inherit from their similarly-named counterparts found in hram.asm. (See ReadJoyPad)
|
|
wJoypadStatesPersistent:: ; 0xd808
|
|
wJoypadStatePersistent::
|
|
ds $1
|
|
wNewlyPressedButtonsPersistent:: ; 0xd809
|
|
ds $1
|
|
wPressedButtonsPersistent:: ; 0xd80a
|
|
ds $1
|
|
|
|
ds $1 ; unused byte
|
|
|
|
wBGP:: ; 0xd80c
|
|
ds $1
|
|
|
|
wOBP0:: ; 0xd80d
|
|
ds $1
|
|
|
|
wOBP1:: ; 0xd80e
|
|
ds $1
|
|
|
|
wd80f:: ; 0xd80f
|
|
ds $1
|
|
|
|
wd810:: ; 0xd810
|
|
ds $1
|
|
|
|
wd811:: ; 0xd811
|
|
ds $1
|
|
|
|
wd812:: ; 0xd812
|
|
ds $18
|
|
|
|
wd82a:: ; 0xd82a
|
|
ds $7
|
|
|
|
wd831:: ; 0xd831
|
|
ds $c
|
|
|
|
wd83d:: ; 0xd83d
|
|
ds $9
|
|
|
|
wd846:: ; 0xd846
|
|
ds $2
|
|
|
|
wd848:: ; 0xd848
|
|
ds $1
|
|
|
|
wd849:: ; 0xd849
|
|
ds $1
|
|
|
|
wd84a:: ; 0xd84a
|
|
ds $1
|
|
|
|
wd84b:: ; 0xd84b
|
|
ds $4
|
|
|
|
wd84f:: ; 0xd84f
|
|
ds $c
|
|
|
|
wCurrentSongBank:: ; 0xd85b
|
|
ds $2
|
|
|
|
wd85d:: ; 0xd85d
|
|
ds $1
|
|
|
|
wd85e:: ; 0xd85e
|
|
ds $1
|
|
|
|
wd85f:: ; 0xd85f
|
|
ds $1
|
|
|
|
wd860:: ; 0xd860
|
|
ds $1
|
|
|
|
wd861:: ; 0xd861
|
|
ds $1
|
|
|
|
wd862:: ; 0xd862
|
|
ds $1
|
|
|
|
wd863:: ; 0xd863
|
|
ds $1
|
|
|
|
wd864:: ; 0xd864
|
|
ds $1
|
|
|
|
wd865:: ; 0xd865
|
|
ds $1
|
|
|
|
wd866:: ; 0xd866
|
|
ds $1
|
|
|
|
wd867:: ; 0xd867
|
|
ds $1
|
|
|
|
wd868:: ; 0xd868
|
|
ds $1
|
|
|
|
wd869:: ; 0xd869
|
|
ds $1
|
|
|
|
wd86a:: ; 0xd86a
|
|
ds $1
|
|
|
|
wd86b:: ; 0xd86b
|
|
ds $1
|
|
|
|
wd86c:: ; 0xd86c
|
|
ds $1
|
|
|
|
wd86d:: ; 0xd86d
|
|
ds $1
|
|
|
|
wd86e:: ; 0xd86e
|
|
ds $1d
|
|
|
|
wd88b:: ; 0xd88b
|
|
ds $12
|
|
|
|
wd89d:: ; 0xd89d
|
|
ds $a
|
|
|
|
wd8a7:: ; 0xd8a7
|
|
ds $1
|
|
|
|
wd8a8:: ; 0xd8a8
|
|
ds $1
|
|
|
|
wd8a9:: ; 0xd8a9
|
|
ds $1
|
|
|
|
wd8aa:: ; 0xd8aa
|
|
ds $1
|
|
|
|
wd8ab:: ; 0xd8ab
|
|
ds $1
|
|
|
|
wd8ac:: ; 0xd8ac
|
|
ds $1
|
|
|
|
wd8ad:: ; 0xd8ad
|
|
ds $1
|
|
|
|
wd8ae:: ; 0xd8ae
|
|
ds $1
|
|
|
|
wd8af:: ; 0xd8af
|
|
ds $1
|
|
|
|
wd8b0:: ; 0xd8b0
|
|
ds $1
|
|
|
|
wd8b1:: ; 0xd8b1
|
|
ds $1
|
|
|
|
wd8b2:: ; 0xd8b2
|
|
ds $1
|
|
|
|
wd8b3:: ; 0xd8b3
|
|
ds $1
|
|
|
|
wd8b4:: ; 0xd8b4
|
|
ds $1
|
|
|
|
wd8b5:: ; 0xd8b5
|
|
ds $1
|
|
|
|
wd8b6:: ; 0xd8b6
|
|
ds $1
|
|
|
|
wd8b7:: ; 0xd8b7
|
|
ds $1
|
|
|
|
wd8b8:: ; 0xd8b8
|
|
ds $1
|
|
|
|
wd8b9:: ; 0xd8b9
|
|
ds $1
|
|
|
|
wd8ba:: ; 0xd8ba
|
|
ds $1
|
|
|
|
wd8bb:: ; 0xd8bb
|
|
ds $1
|
|
|
|
wd8bc:: ; 0xd8bc
|
|
ds $1
|
|
|
|
wd8bd:: ; 0xd8bd
|
|
ds $1
|
|
|
|
wd8be:: ; 0xd8be
|
|
ds $1
|
|
|
|
wd8bf:: ; 0xd8bf
|
|
ds $1
|
|
|
|
wd8c0:: ; 0xd8c0
|
|
ds $1
|
|
|
|
wd8c1:: ; 0xd8c1
|
|
ds $1
|
|
|
|
wd8c2:: ; 0xd8c2
|
|
ds $1
|
|
|
|
wd8c3:: ; 0xd8c3
|
|
ds $1
|
|
|
|
wd8c4:: ; 0xd8c4
|
|
ds $1
|
|
|
|
wd8c5:: ; 0xd8c5
|
|
ds $1
|
|
|
|
wd8c6:: ; 0xd8c6
|
|
ds $1
|
|
|
|
wd8c7:: ; 0xd8c7
|
|
ds $1
|
|
|
|
wd8c8:: ; 0xd8c8
|
|
ds $2
|
|
|
|
wd8ca:: ; 0xd8ca
|
|
ds $1
|
|
|
|
wd8cb:: ; 0xd8cb
|
|
ds $1
|
|
|
|
wd8cc:: ; 0xd8cc
|
|
ds $1
|
|
|
|
wd8cd:: ; 0xd8cd
|
|
ds $1
|
|
|
|
wd8ce:: ; 0xd8ce
|
|
ds $1
|
|
|
|
wd8cf:: ; 0xd8cf
|
|
ds $1
|
|
|
|
wd8d0:: ; 0xd8d0
|
|
ds $1
|
|
|
|
wd8d1:: ; 0xd8d1
|
|
ds $1
|
|
|
|
wd8d2:: ; 0xd8d2
|
|
ds $1
|
|
|
|
wd8d3:: ; 0xd8d3
|
|
ds $1
|
|
|
|
wd8d4:: ; 0xd8d4
|
|
ds $1
|
|
|
|
wd8d5:: ; 0xd8d5
|
|
ds $1
|
|
|
|
wd8d6:: ; 0xd8d6
|
|
ds $1
|
|
|
|
wd8d7:: ; 0xd8d7
|
|
ds $1
|
|
|
|
wd8d8:: ; 0xd8d8
|
|
ds $3
|
|
|
|
wd8db:: ; 0xd8db
|
|
ds $1
|
|
|
|
wd8dc:: ; 0xd8dc
|
|
ds $1
|
|
|
|
wd8dd:: ; 0xd8dd
|
|
ds $1
|
|
|
|
wd8de:: ; 0xd8de
|
|
ds $2
|
|
|
|
wd8e0:: ; 0xd8e0
|
|
ds $1
|
|
|
|
wd8e1:: ; 0xd8e1
|
|
ds $1
|
|
|
|
wd8e2:: ; 0xd8e2
|
|
ds $1
|
|
|
|
wd8e3:: ; 0xd8e3
|
|
ds $1
|
|
|
|
wd8e4:: ; 0xd8e4
|
|
ds $1
|
|
|
|
wd8e5:: ; 0xd8e5
|
|
ds $1
|
|
|
|
wd8e6:: ; 0xd8e6
|
|
ds $1
|
|
|
|
wd8e7:: ; 0xd8e7
|
|
ds $1
|
|
|
|
wd8e8:: ; 0xd8e8
|
|
ds $1
|
|
|
|
wd8e9:: ; 0xd8e9
|
|
ds $1
|
|
|
|
wd8ea:: ; 0xd8ea
|
|
ds $1
|
|
|
|
wd8eb:: ; 0xd8eb
|
|
ds $1
|
|
|
|
wd8ec:: ; 0xd8ec
|
|
ds $1
|
|
|
|
wd8ed:: ; 0xd8ed
|
|
ds $1
|
|
|
|
wd8ee:: ; 0xd8ee
|
|
ds $1
|
|
|
|
wd8ef:: ; 0xd8ef
|
|
ds $1
|
|
|
|
wd8f0:: ; 0xd8f0
|
|
ds $1
|
|
|
|
wCurrentScreen:: ; 0xd8f1
|
|
ds $1
|
|
|
|
wScreenState:: ; 0xd8f2
|
|
ds $1
|
|
|
|
ds $3
|
|
|
|
wd8f6:: ; 0xd8f6
|
|
ds $12
|
|
|
|
wd908:: ; 0xd908
|
|
ds $1
|
|
|
|
wTitleScreenCursorSelection:: ; 0xd909
|
|
ds $1
|
|
|
|
wTitleScreenGameStartCursorSelection:: ; 0xd90a
|
|
ds $2
|
|
|
|
wTitleScreenBlinkAnimationFrame:: ; 0xd90c
|
|
ds $1
|
|
|
|
wTitleScreenBlinkAnimationCounter:: ; 0xd90d
|
|
ds $1
|
|
|
|
wTitleScreenBouncingBallAnimationFrame:: ; 0xd90e
|
|
ds $1
|
|
|
|
wTitleScreenPokeballAnimationCounter:: ; 0xd90f
|
|
ds $1
|
|
|
|
wd910:: ; 0xd910
|
|
ds $1
|
|
|
|
wd911:: ; 0xd911
|
|
ds $1
|
|
|
|
wFieldSelectBlinkingBorderTimer:: ; 0xd912
|
|
ds $1
|
|
|
|
wSelectedFieldIndex:: ; 0xd913
|
|
ds $1
|
|
|
|
wFieldSelectBlinkingBorderFrame:: ; 0xd914
|
|
ds $1
|
|
|
|
wd915:: ; 0xd915
|
|
ds $1
|
|
|
|
wd916:: ; 0xd916
|
|
ds $1
|
|
|
|
wd917:: ; 0xd917
|
|
ds $1
|
|
|
|
wd918:: ; 0xd918
|
|
ds $1
|
|
|
|
wd919:: ; 0xd919
|
|
ds $1
|
|
|
|
wSoundTestCurrentBackgroundMusic:: ; 0xd91a
|
|
ds $1
|
|
|
|
wSoundTextCurrentSoundEffect:: ; 0xd91b
|
|
ds $1
|
|
|
|
wd91c:: ; 0xd91c
|
|
ds $1
|
|
|
|
wd91d:: ; 0xd91d
|
|
ds $1
|
|
|
|
wd91e:: ; 0xd91e
|
|
ds $1
|
|
|
|
wd91f:: ; 0xd91f
|
|
ds $1
|
|
|
|
wd920:: ; 0xd920
|
|
ds $1
|
|
|
|
wd921:: ; 0xd921
|
|
ds $1
|
|
|
|
wd922:: ; 0xd922
|
|
ds $14
|
|
|
|
wd936:: ; 0xd936
|
|
ds $8
|
|
|
|
wd93e:: ; 0xd93e
|
|
ds $1
|
|
|
|
wd93f:: ; 0xd93f
|
|
ds $8
|
|
|
|
wd947:: ; 0xd947
|
|
ds $1
|
|
|
|
wKeyConfigs::
|
|
wKeyConfigBallStart:: ; 0xd948
|
|
ds $2
|
|
|
|
wKeyConfigLeftFlipper:: ; 0xd94a
|
|
ds $2
|
|
|
|
wKeyConfigRightFlipper:: ; 0xd94c
|
|
ds $2
|
|
|
|
wKeyConfigLeftTilt:: ; 0xd94e
|
|
ds $2
|
|
|
|
wKeyConfigRightTilt:: ; 0xd950
|
|
ds $2
|
|
|
|
wKeyConfigUpperTilt:: ; 0xd952
|
|
ds $2
|
|
|
|
wKeyConfigMenu:: ; 0xd954
|
|
ds $2
|
|
|
|
wd956:: ; 0xd956
|
|
ds $1
|
|
|
|
wd957:: ; 0xd957
|
|
ds $1
|
|
|
|
wd958:: ; 0xd958
|
|
ds $1
|
|
|
|
wCurPokedexIndex:: ; 0xd959
|
|
ds $1
|
|
|
|
wPokedexOffset:: ; 0xd95a
|
|
ds $1
|
|
|
|
wd95b:: ; 0xd95b
|
|
ds $1
|
|
|
|
wd95c:: ; 0xd95c
|
|
ds $1
|
|
|
|
wd95d:: ; 0xd95d
|
|
ds $1
|
|
|
|
wd95e:: ; 0xd95e
|
|
ds $1
|
|
|
|
wd95f:: ; 0xd95f
|
|
ds $1
|
|
|
|
wd960:: ; 0xd960
|
|
ds $1
|
|
|
|
wd961:: ; 0xd961
|
|
ds $1
|
|
|
|
wPokedexFlags:: ; 0xd962
|
|
ds $96
|
|
|
|
wd9f8:: ; 0xd9f8
|
|
ds $1
|
|
|
|
wNumPokemonSeen:: ; 0xd9f9
|
|
ds $2
|
|
|
|
wNumPokemonOwned:: ; 0xd9fb
|
|
ds $2
|
|
|
|
high_scores: MACRO
|
|
\1Points:: ds 6
|
|
\1Name:: ds 3
|
|
\1Id:: ds 4
|
|
ENDM
|
|
|
|
wRedHighScores:: ; 0xd9fd
|
|
high_scores wRedHighScore1
|
|
high_scores wRedHighScore2
|
|
high_scores wRedHighScore3
|
|
high_scores wRedHighScore4
|
|
high_scores wRedHighScore5
|
|
|
|
wBlueHighScores:: ; 0xd9fd
|
|
high_scores wBlueHighScore1
|
|
high_scores wBlueHighScore2
|
|
high_scores wBlueHighScore3
|
|
high_scores wBlueHighScore4
|
|
high_scores wBlueHighScore5
|
|
|
|
wda7f:: ; 0xda7f
|
|
ds $1
|
|
|
|
wda80:: ; 0xda80
|
|
ds $1
|
|
|
|
wda81:: ; 0xda81
|
|
ds $1
|
|
|
|
wda82:: ; 0xda82
|
|
ds $1
|
|
|
|
wHighScoresStage:: ; 0xda83
|
|
ds $1
|
|
|
|
wHighScoresArrowAnimationCounter:: ; 0xda84
|
|
ds $1
|
|
|
|
wda85:: ; 0xda85
|
|
ds $1
|
|
|
|
wda86:: ; 0xda86
|
|
ds $1
|
|
|
|
wSendHighScoresAnimation:: ; 0xda87
|
|
animation wSendHighScoresAnimation
|
|
|
|
wda8a:: ; 0xda8a
|
|
ds $2
|
|
|
|
wda8c:: ; 0xda8c
|
|
ds $3
|
|
|
|
wda8f:: ; 0xda8f
|
|
ds $3
|
|
|
|
wda92:: ; 0xda92
|
|
ds $3
|
|
|
|
wda95:: ; 0xda95
|
|
ds $3
|
|
|
|
wda98:: ; 0xda98
|
|
ds $3
|
|
|
|
wda9b:: ; 0xda9b
|
|
ds $3
|
|
|
|
wda9e:: ; 0xda9e
|
|
ds $3
|
|
|
|
wdaa1:: ; 0xdaa1
|
|
ds $1
|
|
|
|
wdaa2:: ; 0xdaa2
|
|
ds $1
|
|
|
|
wBootCheck:: ; 0xdaa3
|
|
; Used to do a single check during first VBLANK.
|
|
ds $1
|
|
|
|
; $25c bytes of free space
|
|
|
|
SECTION "Audio RAM", WRAMX
|
|
wdd00:: ; 0xdd00
|
|
ds $1
|
|
|
|
wChannel0:: ; 0xdd01
|
|
ds $32
|
|
|
|
wChannel1:: ; 0xdd33
|
|
ds $32
|
|
|
|
wChannel2:: ; 0xdd65
|
|
ds $32
|
|
|
|
wChannel3:: ; 0xdd97
|
|
ds $32
|
|
|
|
wChannel4:: ; 0xddc9
|
|
ds $32
|
|
|
|
wChannel5:: ; 0xddfb
|
|
ds $32
|
|
|
|
wChannel6:: ; 0xde2d
|
|
ds $32
|
|
|
|
wChannel7:: ; 0xde5f
|
|
ds $32
|
|
|
|
wde91:: ; 0xde91
|
|
ds $1
|
|
|
|
wde92:: ; 0xde92
|
|
ds $1
|
|
|
|
wde93:: ; 0xde93
|
|
ds $1
|
|
|
|
wde94:: ; 0xde94
|
|
ds $1
|
|
|
|
wde95:: ; 0xde95
|
|
ds $1
|
|
|
|
wde96:: ; 0xde96
|
|
ds $1
|
|
|
|
wde97:: ; 0xde97
|
|
ds $1
|
|
|
|
wde98:: ; 0xde98
|
|
ds $1
|
|
|
|
wde99:: ; 0xde99
|
|
ds $1
|
|
|
|
wde9a:: ; 0xde9a
|
|
ds $1
|
|
|
|
wde9b:: ; 0xde9b
|
|
ds $1
|
|
|
|
wde9c:: ; 0xde9c
|
|
ds $1
|
|
|
|
wde9d:: ; 0xde9d
|
|
ds $1
|
|
|
|
wde9e:: ; 0xde9e
|
|
ds $1
|
|
|
|
wde9f:: ; 0xde9f
|
|
ds $2
|
|
|
|
wdea1:: ; 0xdea1
|
|
ds $1
|
|
|
|
wdea2:: ; 0xdea2
|
|
ds $1
|
|
|
|
wdea3:: ; 0xdea3
|
|
ds $1
|
|
|
|
wdea4:: ; 0xdea4
|
|
ds $1
|
|
|
|
wdea5:: ; 0xdea5
|
|
ds $3
|
|
|
|
wdea8:: ; 0xdea8
|
|
ds $1
|
|
|
|
wdea9:: ; 0xdea9
|
|
ds $1
|
|
|
|
wdeaa:: ; 0xdeaa
|
|
ds $1
|
|
|
|
wdeab:: ; 0xdeab
|
|
ds $1
|
|
|
|
wdeac:: ; 0xdeac
|
|
ds $1
|
|
|
|
wdead:: ; 0xdead
|
|
ds $1
|
|
|
|
wdeae:: ; 0xdeae
|
|
ds $2
|
|
|
|
wMusicRAMEnd:: ; deb0
|
|
wdeb0:: ; 0xdeb0
|
|
ds $50
|
|
|
|
SECTION "Stack", WRAMX
|
|
ds $ff ;stack area
|
|
|
|
wStack:: ; 0xdfff
|
|
ds 1
|