From 6b5be9129cabe72b9f775b02db1bf7e7169153da Mon Sep 17 00:00:00 2001 From: vulcandth Date: Mon, 6 Jun 2022 16:25:31 -0500 Subject: RGBDS syntax updates (#358) New MACRO and DEF syntax --- engine/items/town_map.asm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'engine/items') diff --git a/engine/items/town_map.asm b/engine/items/town_map.asm index a12c0c8a..93047216 100644 --- a/engine/items/town_map.asm +++ b/engine/items/town_map.asm @@ -1,4 +1,4 @@ -NOT_VISITED EQU $fe +DEF NOT_VISITED EQU $fe DisplayTownMap: call LoadTownMap -- cgit v1.3.1-sl0p From edb55e00f84024dd3634a25df8715e8b9cb3454b Mon Sep 17 00:00:00 2001 From: vulcandth Date: Fri, 17 Jun 2022 21:25:52 -0500 Subject: Rename `SLP` to `SLP_MASK` (#361) Co-authored-by: Rangi <35663410+Rangi42@users.noreply.github.com> --- constants/battle_constants.asm | 2 +- engine/battle/core.asm | 14 +++++++------- engine/battle/move_effects/haze.asm | 2 +- engine/items/item_effects.asm | 10 +++++----- engine/pokemon/status_ailments.asm | 2 +- 5 files changed, 15 insertions(+), 15 deletions(-) (limited to 'engine/items') diff --git a/constants/battle_constants.asm b/constants/battle_constants.asm index b394b7a2..2ae1cdef 100644 --- a/constants/battle_constants.asm +++ b/constants/battle_constants.asm @@ -57,7 +57,7 @@ DEF NOT_VERY_EFFECTIVE EQU 05 DEF NO_EFFECT EQU 00 ; non-volatile statuses -DEF SLP EQU %111 ; sleep counter +DEF SLP_MASK EQU %111 ; 0-7 turns const_def 3 const PSN ; 3 const BRN ; 4 diff --git a/engine/battle/core.asm b/engine/battle/core.asm index 66ca1aa9..1a252c02 100644 --- a/engine/battle/core.asm +++ b/engine/battle/core.asm @@ -308,7 +308,7 @@ MainInBattleLoop: and a ret nz ; return if pokedoll was used to escape from battle ld a, [wBattleMonStatus] - and (1 << FRZ) | SLP ; is mon frozen or asleep? + and (1 << FRZ) | SLP_MASK jr nz, .selectEnemyMove ; if so, jump ld a, [wPlayerBattleStatus1] and (1 << STORING_ENERGY) | (1 << USING_TRAPPING_MOVE) ; check player is using Bide or using a multi-turn attack like wrap @@ -2934,7 +2934,7 @@ SelectEnemyMove: and (1 << CHARGING_UP) | (1 << THRASHING_ABOUT) ; using a charging move or thrash/petal dance ret nz ld a, [wEnemyMonStatus] - and SLP | 1 << FRZ ; sleeping or frozen + and (1 << FRZ) | SLP_MASK ret nz ld a, [wEnemyBattleStatus1] and (1 << USING_TRAPPING_MOVE) | (1 << STORING_ENERGY) ; using a trapping move like wrap or bide @@ -3275,7 +3275,7 @@ PrintGhostText: and a jr nz, .Ghost ld a, [wBattleMonStatus] ; player's turn - and SLP | (1 << FRZ) + and (1 << FRZ) | SLP_MASK ret nz ld hl, ScaredText call PrintText @@ -3317,7 +3317,7 @@ IsGhostBattle: CheckPlayerStatusConditions: ld hl, wBattleMonStatus ld a, [hl] - and SLP ; sleep mask + and SLP_MASK jr z, .FrozenCheck ; sleeping dec a @@ -4029,7 +4029,7 @@ CheckForDisobedience: call BattleRandom add a swap a - and SLP ; sleep mask + and SLP_MASK jr z, .monNaps ; keep trying until we get at least 1 turn of sleep ld [wBattleMonStatus], a ld hl, BeganToNapText @@ -5362,7 +5362,7 @@ MoveHitTest: cp DREAM_EATER_EFFECT jr nz, .swiftCheck ld a, [bc] - and SLP ; is the target pokemon sleeping? + and SLP_MASK jp z, .moveMissed .swiftCheck ld a, [de] @@ -5796,7 +5796,7 @@ ExecuteEnemyMoveDone: CheckEnemyStatusConditions: ld hl, wEnemyMonStatus ld a, [hl] - and SLP ; sleep mask + and SLP_MASK jr z, .checkIfFrozen dec a ; decrement number of turns left ld [wEnemyMonStatus], a diff --git a/engine/battle/move_effects/haze.asm b/engine/battle/move_effects/haze.asm index c15c848b..76722d0e 100644 --- a/engine/battle/move_effects/haze.asm +++ b/engine/battle/move_effects/haze.asm @@ -24,7 +24,7 @@ HazeEffect_: .cureStatuses ld a, [hl] ld [hl], $0 - and SLP | (1 << FRZ) + and (1 << FRZ) | SLP_MASK jr z, .cureVolatileStatuses ; prevent the Pokemon from executing a move if it was asleep or frozen ld a, $ff diff --git a/engine/items/item_effects.asm b/engine/items/item_effects.asm index f58b737e..16b4140a 100644 --- a/engine/items/item_effects.asm +++ b/engine/items/item_effects.asm @@ -225,7 +225,7 @@ ItemUseBall: ld a, [wEnemyMonStatus] and a jr z, .skipAilmentValueSubtraction ; no ailments - and 1 << FRZ | SLP + and (1 << FRZ) | SLP_MASK ld c, 12 jr z, .notFrozenOrAsleep ld c, 25 @@ -380,7 +380,7 @@ ItemUseBall: ld a, [wEnemyMonStatus] and a jr z, .skip5 - and 1 << FRZ | SLP + and (1 << FRZ) | SLP_MASK ld b, 5 jr z, .addAilmentValue ld b, 10 @@ -878,7 +878,7 @@ ItemUseMedicine: lb bc, ICE_HEAL_MSG, 1 << FRZ cp ICE_HEAL jr z, .checkMonStatus - lb bc, AWAKENING_MSG, SLP + lb bc, AWAKENING_MSG, SLP_MASK cp AWAKENING jr z, .checkMonStatus lb bc, PARALYZ_HEAL_MSG, 1 << PAR @@ -1700,7 +1700,7 @@ ItemUsePokeflute: .inBattle xor a ld [wWereAnyMonsAsleep], a - ld b, ~SLP & $ff + ld b, ~SLP_MASK ld hl, wPartyMon1Status call WakeUpEntireParty ld a, [wIsInBattle] @@ -1752,7 +1752,7 @@ WakeUpEntireParty: .loop ld a, [hl] push af - and SLP ; is pokemon asleep? + and SLP_MASK jr z, .notAsleep ld a, 1 ld [wWereAnyMonsAsleep], a ; indicate that a pokemon had to be woken up diff --git a/engine/pokemon/status_ailments.asm b/engine/pokemon/status_ailments.asm index 3da1fc43..05205a34 100644 --- a/engine/pokemon/status_ailments.asm +++ b/engine/pokemon/status_ailments.asm @@ -8,7 +8,7 @@ PrintStatusAilment:: jr nz, .frz bit PAR, a jr nz, .par - and SLP + and SLP_MASK ret z ld a, "S" ld [hli], a -- cgit v1.3.1-sl0p From cc46b0e510e07f2e7a0d14732c02a2f416eac9e1 Mon Sep 17 00:00:00 2001 From: "Colton G. Rushton" Date: Sat, 9 Jul 2022 18:18:18 -0300 Subject: wOAMBuffer -> wShadowOAM (#370) --- constants/gfx_constants.asm | 2 +- engine/battle/animations.asm | 32 ++++++++++++++++---------------- engine/battle/battle_transitions.asm | 2 +- engine/battle/core.asm | 4 ++-- engine/battle/draw_hud_pokeball_gfx.asm | 8 ++++---- engine/battle/ghost_marowak_anim.asm | 2 +- engine/events/diploma.asm | 2 +- engine/gfx/mon_icons.asm | 8 ++++---- engine/gfx/oam_dma.asm | 2 +- engine/gfx/sprite_oam.asm | 6 +++--- engine/items/item_effects.asm | 2 +- engine/items/town_map.asm | 20 ++++++++++---------- engine/menus/start_sub_menus.asm | 2 +- engine/movie/intro.asm | 4 ++-- engine/movie/splash.asm | 18 +++++++++--------- engine/movie/title.asm | 4 ++-- engine/movie/title2.asm | 2 +- engine/movie/trade.asm | 6 +++--- engine/overworld/cut.asm | 2 +- engine/overworld/cut2.asm | 22 +++++++++++----------- engine/overworld/dust_smoke.asm | 2 +- engine/overworld/emotion_bubbles.asm | 8 ++++---- engine/overworld/healing_machine.asm | 2 +- engine/overworld/player_animations.asm | 24 ++++++++++++------------ engine/slots/slot_machine.asm | 6 +++--- home/clear_sprites.asm | 6 +++--- home/oam.asm | 2 +- ram/wram.asm | 8 ++++---- scripts/VermilionDock.asm | 2 +- 29 files changed, 105 insertions(+), 105 deletions(-) (limited to 'engine/items') diff --git a/constants/gfx_constants.asm b/constants/gfx_constants.asm index 522b6a67..c6268208 100644 --- a/constants/gfx_constants.asm +++ b/constants/gfx_constants.asm @@ -17,7 +17,7 @@ DEF HP_BAR_GREEN EQU 0 DEF HP_BAR_YELLOW EQU 1 DEF HP_BAR_RED EQU 2 -; wOAMBuffer +; wShadowOAM DEF NUM_SPRITE_OAM_STRUCTS EQU 40 ; hAutoBGTransferEnabled diff --git a/engine/battle/animations.asm b/engine/battle/animations.asm index 7ad1bb3e..789dcb8a 100644 --- a/engine/battle/animations.asm +++ b/engine/battle/animations.asm @@ -147,7 +147,7 @@ DrawFrameBlock: jr z, .resetFrameBlockDestAddr call AnimationCleanOAM .resetFrameBlockDestAddr - ld hl, wOAMBuffer ; OAM buffer + ld hl, wShadowOAM ld a, l ld [wFBDestAddr + 1], a ld a, h @@ -583,7 +583,7 @@ PlaySubanimation: call GetMoveSound call PlaySound .skipPlayingSound - ld hl, wOAMBuffer ; base address of OAM buffer + ld hl, wShadowOAM ld a, l ld [wFBDestAddr + 1], a ld a, h @@ -855,7 +855,7 @@ TradeShakePokeball: ; if it's the end of the animation, make the ball jump up ld de, BallMoveDistances1 .loop - ld hl, wOAMBuffer ; OAM buffer + ld hl, wShadowOAM ld bc, 4 .innerLoop ld a, [de] @@ -885,7 +885,7 @@ BallMoveDistances1: TradeJumpPokeball: ld de, BallMoveDistances2 .loop - ld hl, wOAMBuffer ; OAM buffer + ld hl, wShadowOAM ld bc, 4 .innerLoop ld a, [de] @@ -925,8 +925,8 @@ BallMoveDistances2: ; this function copies the current musical note graphic ; so that there are two musical notes flying towards the defending pokemon DoGrowlSpecialEffects: - ld hl, wOAMBuffer ; OAM buffer - ld de, wOAMBuffer + $10 + ld hl, wShadowOAM + ld de, wShadowOAMSprite04 ld bc, $10 call CopyData ; copy the musical note graphic ld a, [wSubAnimCounter] @@ -1136,7 +1136,7 @@ AnimationWaterDropletsEverywhere: ret _AnimationWaterDroplets: - ld hl, wOAMBuffer + ld hl, wShadowOAM .loop ld a, [wBaseCoordY] ld [hli], a ; Y @@ -1264,7 +1264,7 @@ ShakeEnemyHUD_WritePlayerMonPicOAM: ld [wBaseCoordX], a ld a, $30 ld [wBaseCoordY], a - ld hl, wOAMBuffer + ld hl, wShadowOAM ld d, 0 ld c, 7 .loop @@ -1498,7 +1498,7 @@ AnimationSpiralBallsInward: .loop push hl ld c, 3 - ld de, wOAMBuffer + ld de, wShadowOAM .innerLoop ld a, [hl] cp $ff @@ -1637,7 +1637,7 @@ _AnimationShootBallsUpward: call LoadAnimationTileset pop bc ld d, $7a ; ball tile - ld hl, wOAMBuffer + ld hl, wShadowOAM push bc ld a, [wBaseCoordY] ld e, a @@ -1651,7 +1651,7 @@ _AnimationShootBallsUpward: ld [wNumShootingBalls], a .loop push bc - ld hl, wOAMBuffer + ld hl, wShadowOAM .innerLoop ld a, [wBaseCoordY] add 8 @@ -2080,7 +2080,7 @@ InitMultipleObjectsOAM: xor a ld e, a ld [wBaseCoordX], a - ld hl, wOAMBuffer + ld hl, wShadowOAM .loop call BattleAnimWriteOAMEntry dec c @@ -2336,7 +2336,7 @@ AnimationFallingObjects: call InitMultipleObjectsOAM call FallingObjects_InitXCoords call FallingObjects_InitMovementData - ld hl, wOAMBuffer + ld hl, wShadowOAM ld [hl], 0 .loop ld hl, wFallingObjectsMovementData @@ -2363,7 +2363,7 @@ AnimationFallingObjects: dec c jr nz, .innerLoop call Delay3 - ld hl, wOAMBuffer + ld hl, wShadowOAM ld a, [hl] ; Y cp 104 ; has the top falling object reached 104 yet? jr nz, .loop ; keep moving the falling objects down until it does @@ -2372,7 +2372,7 @@ AnimationFallingObjects: FallingObjects_UpdateOAMEntry: ; Increases Y by 2 pixels and adjusts X and X flip based on the falling object's ; movement byte. - ld hl, wOAMBuffer + ld hl, wShadowOAM add hl, de ld a, [hl] inc a @@ -2433,7 +2433,7 @@ FallingObjects_UpdateMovementByte: ret FallingObjects_InitXCoords: - ld hl, wOAMBuffer + $01 + ld hl, wShadowOAMSprite00XCoord ld de, FallingObjects_InitialXCoords ld a, [wNumFallingObjects] ld c, a diff --git a/engine/battle/battle_transitions.asm b/engine/battle/battle_transitions.asm index bc4665e4..a16fd250 100644 --- a/engine/battle/battle_transitions.asm +++ b/engine/battle/battle_transitions.asm @@ -26,7 +26,7 @@ BattleTransition: jr nz, .loop1 ; Clear OAM except for the blocks used by the player and enemy trainer sprites. - ld hl, wOAMBuffer + $10 + ld hl, wShadowOAMSprite04 ld c, 9 .loop2 ld a, b diff --git a/engine/battle/core.asm b/engine/battle/core.asm index c746e52b..580a9899 100644 --- a/engine/battle/core.asm +++ b/engine/battle/core.asm @@ -105,7 +105,7 @@ SlidePlayerAndEnemySilhouettesOnScreen: ; instead, the enemy pic is part of the background and uses the scroll register, while the player's head is a sprite and is slid by changing its X coordinates in a loop SlidePlayerHeadLeft: push bc - ld hl, wOAMBuffer + $01 + ld hl, wShadowOAMSprite00XCoord ld c, $15 ; number of OAM entries ld de, $4 ; size of OAM entry .loop @@ -6327,7 +6327,7 @@ LoadPlayerBackPic: ASSERT BANK(RedPicBack) == BANK(OldManPicBack) call UncompressSpriteFromDE predef ScaleSpriteByTwo - ld hl, wOAMBuffer + ld hl, wShadowOAM xor a ldh [hOAMTile], a ; initial tile number ld b, $7 ; 7 columns diff --git a/engine/battle/draw_hud_pokeball_gfx.asm b/engine/battle/draw_hud_pokeball_gfx.asm index 097a0fcc..34bff58d 100644 --- a/engine/battle/draw_hud_pokeball_gfx.asm +++ b/engine/battle/draw_hud_pokeball_gfx.asm @@ -27,7 +27,7 @@ SetupOwnPartyPokeballs: ld [hl], a ld a, 8 ld [wHUDPokeballGfxOffsetX], a - ld hl, wOAMBuffer + ld hl, wShadowOAM jp WritePokeballOAMData SetupEnemyPartyPokeballs: @@ -41,7 +41,7 @@ SetupEnemyPartyPokeballs: ld [hl], $20 ld a, -8 ld [wHUDPokeballGfxOffsetX], a - ld hl, wOAMBuffer + PARTY_LENGTH * 4 + ld hl, wShadowOAMSprite06 jp WritePokeballOAMData SetupPokeballs: @@ -174,7 +174,7 @@ SetupPlayerAndEnemyPokeballs: ld [hl], $40 ld a, 8 ld [wHUDPokeballGfxOffsetX], a - ld hl, wOAMBuffer + ld hl, wShadowOAM call WritePokeballOAMData ld hl, wEnemyMons ld de, wEnemyPartyCount @@ -183,7 +183,7 @@ SetupPlayerAndEnemyPokeballs: ld a, $50 ld [hli], a ld [hl], $68 - ld hl, wOAMBuffer + $18 + ld hl, wShadowOAMSprite06 jp WritePokeballOAMData ; four tiles: pokeball, black pokeball (status ailment), crossed out pokeball (fainted) and pokeball slot (no mon) diff --git a/engine/battle/ghost_marowak_anim.asm b/engine/battle/ghost_marowak_anim.asm index 9c1ad96f..a7f4d025 100644 --- a/engine/battle/ghost_marowak_anim.asm +++ b/engine/battle/ghost_marowak_anim.asm @@ -58,7 +58,7 @@ CopyMonPicFromBGToSpriteVRAM: ld [wBaseCoordY], a ld a, $70 ld [wBaseCoordX], a - ld hl, wOAMBuffer + ld hl, wShadowOAM lb bc, 6, 6 ld d, $8 .oamLoop diff --git a/engine/events/diploma.asm b/engine/events/diploma.asm index 7c48c086..41e0d7c6 100644 --- a/engine/events/diploma.asm +++ b/engine/events/diploma.asm @@ -42,7 +42,7 @@ DisplayDiploma:: ; Move the player 33 pixels right and set the priority bit so he appears ; behind the background layer. - ld hl, wOAMBuffer + $01 + ld hl, wShadowOAMSprite00XCoord lb bc, $80, $28 .adjustPlayerGfxLoop ld a, [hl] ; X diff --git a/engine/gfx/mon_icons.asm b/engine/gfx/mon_icons.asm index 6f6b88c7..73b1632f 100644 --- a/engine/gfx/mon_icons.asm +++ b/engine/gfx/mon_icons.asm @@ -43,7 +43,7 @@ GetAnimationSpeed: .resetSprites push bc ld hl, wMonPartySpritesSavedOAM - ld de, wOAMBuffer + ld de, wShadowOAM ld bc, $60 call CopyData pop bc @@ -51,7 +51,7 @@ GetAnimationSpeed: jr .incTimer .animateSprite push bc - ld hl, wOAMBuffer + $02 ; OAM tile id + ld hl, wShadowOAMSprite00TileID ld bc, $10 ld a, [wCurrentMenuItem] call AddNTimes @@ -236,7 +236,7 @@ WriteMonPartySpriteOAM: ; make a copy at wMonPartySpritesSavedOAM. push af ld c, $10 - ld h, HIGH(wOAMBuffer) + ld h, HIGH(wShadowOAM) ldh a, [hPartyMonIndex] swap a ld l, a @@ -252,7 +252,7 @@ WriteMonPartySpriteOAM: ; Make a copy of the OAM buffer with the first animation frame written so that ; we can flip back to it from the second frame by copying it back. .makeCopy - ld hl, wOAMBuffer + ld hl, wShadowOAM ld de, wMonPartySpritesSavedOAM ld bc, $60 jp CopyData diff --git a/engine/gfx/oam_dma.asm b/engine/gfx/oam_dma.asm index fe93e90d..11e52694 100644 --- a/engine/gfx/oam_dma.asm +++ b/engine/gfx/oam_dma.asm @@ -16,7 +16,7 @@ DMARoutine: LOAD "OAM DMA", HRAM hDMARoutine:: ; initiate DMA - ld a, HIGH(wOAMBuffer) + ld a, HIGH(wShadowOAM) ldh [rDMA], a ; wait for DMA to finish ld a, $28 diff --git a/engine/gfx/sprite_oam.asm b/engine/gfx/sprite_oam.asm index b3c07ecd..69956a31 100644 --- a/engine/gfx/sprite_oam.asm +++ b/engine/gfx/sprite_oam.asm @@ -1,6 +1,6 @@ PrepareOAMData:: ; Determine OAM data for currently visible -; sprites and write it to wOAMBuffer. +; sprites and write it to wShadowOAM. ld a, [wUpdateSpritesEnabled] dec a @@ -79,7 +79,7 @@ PrepareOAMData:: ldh a, [hOAMBufferOffset] ld e, a - ld d, HIGH(wOAMBuffer) + ld d, HIGH(wShadowOAM) .tileLoop ldh a, [hSpriteScreenY] ; temp for sprite Y position @@ -147,7 +147,7 @@ PrepareOAMData:: ; Clear unused OAM. ldh a, [hOAMBufferOffset] ld l, a - ld h, HIGH(wOAMBuffer) + ld h, HIGH(wShadowOAM) ld de, $4 ld b, $a0 ld a, [wd736] diff --git a/engine/items/item_effects.asm b/engine/items/item_effects.asm index 16b4140a..faba8837 100644 --- a/engine/items/item_effects.asm +++ b/engine/items/item_effects.asm @@ -1175,7 +1175,7 @@ ItemUseMedicine: xor a ld [wBattleMonStatus], a ; remove the status ailment in the in-battle pokemon data .calculateHPBarCoords - ld hl, wOAMBuffer + $90 + ld hl, wShadowOAMSprite36 ld bc, 2 * SCREEN_WIDTH inc d .calculateHPBarCoordsLoop diff --git a/engine/items/town_map.asm b/engine/items/town_map.asm index 93047216..d278d034 100644 --- a/engine/items/town_map.asm +++ b/engine/items/town_map.asm @@ -16,7 +16,7 @@ DisplayTownMap: hlcoord 1, 0 ld de, wcd6d call PlaceString - ld hl, wOAMBuffer + ld hl, wShadowOAM ld de, wTileMapBackup ld bc, $10 call CopyData @@ -47,7 +47,7 @@ DisplayTownMap: call TownMapCoordsToOAMCoords ld a, $4 ld [wOAMBaseTile], a - ld hl, wOAMBuffer + $10 + ld hl, wShadowOAMSprite04 call WriteTownMapSpriteOAM ; town map cursor sprite pop hl ld de, wcd6d @@ -60,7 +60,7 @@ DisplayTownMap: hlcoord 1, 0 ld de, wcd6d call PlaceString - ld hl, wOAMBuffer + $10 + ld hl, wShadowOAMSprite04 ld de, wTileMapBackup + 16 ld bc, $10 call CopyData @@ -362,7 +362,7 @@ DrawPlayerOrBirdSprite: inc de cp "@" jr nz, .loop - ld hl, wOAMBuffer + ld hl, wShadowOAM ld de, wTileMapBackup ld bc, $a0 jp CopyData @@ -370,7 +370,7 @@ DrawPlayerOrBirdSprite: DisplayWildLocations: farcall FindWildLocationsOfMon call ZeroOutDuplicatesInList - ld hl, wOAMBuffer + ld hl, wShadowOAM ld de, wTownMapCoords .loop ld a, [de] @@ -410,7 +410,7 @@ DisplayWildLocations: ld b, $0 call DrawPlayerOrBirdSprite .done - ld hl, wOAMBuffer + ld hl, wShadowOAM ld de, wTileMapBackup ld bc, $a0 jp CopyData @@ -439,9 +439,9 @@ TownMapCoordsToOAMCoords: WritePlayerOrBirdSpriteOAM: ld a, [wOAMBaseTile] and a - ld hl, wOAMBuffer + $90 ; for player sprite + ld hl, wShadowOAMSprite36 ; for player sprite jr z, WriteTownMapSpriteOAM - ld hl, wOAMBuffer + $80 ; for bird sprite + ld hl, wShadowOAMSprite32 ; for bird sprite WriteTownMapSpriteOAM: push hl @@ -600,13 +600,13 @@ TownMapSpriteBlinkingAnimation:: jr nz, .done ; show sprites when the counter reaches 50 ld hl, wTileMapBackup - ld de, wOAMBuffer + ld de, wShadowOAM ld bc, $90 call CopyData xor a jr .done .hideSprites - ld hl, wOAMBuffer + ld hl, wShadowOAM ld b, $24 ld de, $4 .hideSpritesLoop diff --git a/engine/menus/start_sub_menus.asm b/engine/menus/start_sub_menus.asm index dbc6ab89..7dfb7dc3 100644 --- a/engine/menus/start_sub_menus.asm +++ b/engine/menus/start_sub_menus.asm @@ -677,7 +677,7 @@ SwitchPartyMon_ClearGfx: dec c jr nz, .clearMonBGLoop pop af - ld hl, wOAMBuffer + ld hl, wShadowOAM ld bc, $10 call AddNTimes ld de, $4 diff --git a/engine/movie/intro.asm b/engine/movie/intro.asm index bca095a8..f489c60b 100644 --- a/engine/movie/intro.asm +++ b/engine/movie/intro.asm @@ -158,7 +158,7 @@ AnimateIntroNidorino: jr AnimateIntroNidorino UpdateIntroNidorinoOAM: - ld hl, wOAMBuffer + ld hl, wShadowOAM ld a, [wIntroNidorinoBaseTile] ld d, a .loop @@ -177,7 +177,7 @@ UpdateIntroNidorinoOAM: ret InitIntroNidorinoOAM: - ld hl, wOAMBuffer + ld hl, wShadowOAM ld d, 0 .loop push bc diff --git a/engine/movie/splash.asm b/engine/movie/splash.asm index eede8ccb..2373a0f9 100644 --- a/engine/movie/splash.asm +++ b/engine/movie/splash.asm @@ -16,11 +16,11 @@ LoadShootingStarGraphics: lb bc, BANK(FallingStar), (FallingStarEnd - FallingStar) / $10 call CopyVideoData ld hl, GameFreakLogoOAMData - ld de, wOAMBuffer + $60 + ld de, wShadowOAMSprite24 ld bc, GameFreakLogoOAMDataEnd - GameFreakLogoOAMData call CopyData ld hl, GameFreakShootingStarOAMData - ld de, wOAMBuffer + ld de, wShadowOAM ld bc, GameFreakShootingStarOAMDataEnd - GameFreakShootingStarOAMData jp CopyData @@ -30,7 +30,7 @@ AnimateShootingStar: call PlaySound ; Move the big star down and left across the screen. - ld hl, wOAMBuffer + ld hl, wShadowOAM lb bc, $a0, $4 .bigStarLoop push hl @@ -60,7 +60,7 @@ AnimateShootingStar: jr nz, .bigStarLoop ; Clear big star OAM. - ld hl, wOAMBuffer + ld hl, wShadowOAM ld c, 4 ld de, 4 .clearOAMLoop @@ -83,7 +83,7 @@ AnimateShootingStar: ; Copy 24 instances of the small stars OAM data. ; Note that their coordinates put them off-screen. - ld de, wOAMBuffer + ld de, wShadowOAM ld a, 24 .initSmallStarsOAMLoop push af @@ -106,7 +106,7 @@ AnimateShootingStar: ld d, a push bc push hl - ld hl, wOAMBuffer + $50 + ld hl, wShadowOAMSprite20 ld c, 4 .smallStarsInnerLoop ; introduce new wave of 4 small stars OAM entries ld a, [de] @@ -131,8 +131,8 @@ AnimateShootingStar: push af ; shift the existing OAM entries down to make room for the next wave - ld hl, wOAMBuffer + $10 - ld de, wOAMBuffer + ld hl, wShadowOAMSprite04 + ld de, wShadowOAM ld bc, $50 call CopyData @@ -186,7 +186,7 @@ SmallStarsEmptyWave: MoveDownSmallStars: ld b, 8 .loop - ld hl, wOAMBuffer + $5c + ld hl, wShadowOAMSprite23 ld a, [wMoveDownSmallStarsOAMCount] ld de, -4 ld c, a diff --git a/engine/movie/title.asm b/engine/movie/title.asm index 8f97f8fa..1ee0cc25 100644 --- a/engine/movie/title.asm +++ b/engine/movie/title.asm @@ -93,7 +93,7 @@ DisplayTitleScreen: call DrawPlayerCharacter ; put a pokeball in the player's hand - ld hl, wOAMBuffer + $28 + ld hl, wShadowOAMSprite10 ld a, $74 ld [hl], a @@ -322,7 +322,7 @@ DrawPlayerCharacter: call ClearSprites xor a ld [wPlayerCharacterOAMTile], a - ld hl, wOAMBuffer + ld hl, wShadowOAM lb de, $60, $5a ld b, 7 .loop diff --git a/engine/movie/title2.asm b/engine/movie/title2.asm index 315cf6b5..bc75015f 100644 --- a/engine/movie/title2.asm +++ b/engine/movie/title2.asm @@ -115,6 +115,6 @@ GetTitleBallY: pop de and a ret z - ld [wOAMBuffer + $28], a + ld [wShadowOAMSprite10YCoord], a inc e ret diff --git a/engine/movie/trade.asm b/engine/movie/trade.asm index 35423820..def901ba 100644 --- a/engine/movie/trade.asm +++ b/engine/movie/trade.asm @@ -315,7 +315,7 @@ Trade_AnimateBallEnteringLinkCable: xor $1 ld [wLinkCableAnimBulgeToggle], a add $7e - ld hl, wOAMBuffer + $02 + ld hl, wShadowOAMSprite00TileID ld de, 4 ld c, e .cycleLinkCableBulgeTile @@ -599,7 +599,7 @@ Trade_AnimCircledMon: ldh a, [rBGP] xor $3c ; make link cable flash ldh [rBGP], a - ld hl, wOAMBuffer + $02 + ld hl, wShadowOAMSprite00TileID ld de, $4 ld c, $14 .loop @@ -619,7 +619,7 @@ Trade_WriteCircledMonOAM: call Trade_WriteCircleOAM Trade_AddOffsetsToOAMCoords: - ld hl, wOAMBuffer + ld hl, wShadowOAM ld c, $14 .loop ld a, [wBaseCoordY] diff --git a/engine/overworld/cut.asm b/engine/overworld/cut.asm index 6a92ccc0..4a337e8d 100644 --- a/engine/overworld/cut.asm +++ b/engine/overworld/cut.asm @@ -99,7 +99,7 @@ InitCutAnimOAM: ld hl, vChars1 tile $7f call LoadCutGrassAnimationTilePattern call WriteCutOrBoulderDustAnimationOAMBlock - ld hl, wOAMBuffer + $93 + ld hl, wShadowOAMSprite36Attributes ld de, 4 ld a, $30 ld c, e diff --git a/engine/overworld/cut2.asm b/engine/overworld/cut2.asm index 3d4a5905..69c8cb13 100644 --- a/engine/overworld/cut2.asm +++ b/engine/overworld/cut2.asm @@ -5,12 +5,12 @@ AnimCut: ld c, $8 .cutTreeLoop push bc - ld hl, wOAMBuffer + $91 + ld hl, wShadowOAMSprite36XCoord ld a, 1 ld [wCoordAdjustmentAmount], a ld c, 2 call AdjustOAMBlockXPos2 - ld hl, wOAMBuffer + $99 + ld hl, wShadowOAMSprite38XCoord ld a, -1 ld [wCoordAdjustmentAmount], a ld c, 2 @@ -33,7 +33,7 @@ AnimCut: ld c, $8 call AnimCutGrass_UpdateOAMEntries call AnimCutGrass_SwapOAMEntries - ld hl, wOAMBuffer + $90 + ld hl, wShadowOAMSprite36YCoord ld a, 2 ld [wCoordAdjustmentAmount], a ld c, 4 @@ -45,22 +45,22 @@ AnimCut: AnimCutGrass_UpdateOAMEntries: push bc - ld hl, wOAMBuffer + $91 + ld hl, wShadowOAMSprite36XCoord ld a, 1 ld [wCoordAdjustmentAmount], a ld c, 1 call AdjustOAMBlockXPos2 - ld hl, wOAMBuffer + $95 + ld hl, wShadowOAMSprite37XCoord ld a, 2 ld [wCoordAdjustmentAmount], a ld c, 1 call AdjustOAMBlockXPos2 - ld hl, wOAMBuffer + $99 + ld hl, wShadowOAMSprite38XCoord ld a, -2 ld [wCoordAdjustmentAmount], a ld c, 1 call AdjustOAMBlockXPos2 - ld hl, wOAMBuffer + $9d + ld hl, wShadowOAMSprite39XCoord ld a, -1 ld [wCoordAdjustmentAmount], a ld c, 1 @@ -75,15 +75,15 @@ AnimCutGrass_UpdateOAMEntries: ret AnimCutGrass_SwapOAMEntries: - ld hl, wOAMBuffer + $90 + ld hl, wShadowOAMSprite36 ld de, wBuffer ld bc, $8 call CopyData - ld hl, wOAMBuffer + $98 - ld de, wOAMBuffer + $90 + ld hl, wShadowOAMSprite38 + ld de, wShadowOAMSprite36 ld bc, $8 call CopyData ld hl, wBuffer - ld de, wOAMBuffer + $98 + ld de, wShadowOAMSprite38 ld bc, $8 jp CopyData diff --git a/engine/overworld/dust_smoke.asm b/engine/overworld/dust_smoke.asm index c97b3e56..96dd364a 100644 --- a/engine/overworld/dust_smoke.asm +++ b/engine/overworld/dust_smoke.asm @@ -43,7 +43,7 @@ GetMoveBoulderDustFunctionPointer: ld h, [hl] ld l, a push hl - ld hl, wOAMBuffer + $90 + ld hl, wShadowOAMSprite36 ld d, $0 add hl, de ld e, l diff --git a/engine/overworld/emotion_bubbles.asm b/engine/overworld/emotion_bubbles.asm index 5a41c226..84b13f17 100644 --- a/engine/overworld/emotion_bubbles.asm +++ b/engine/overworld/emotion_bubbles.asm @@ -17,11 +17,11 @@ EmotionBubble: ld [wUpdateSpritesEnabled], a ld a, [wd736] bit 6, a ; are the last 4 OAM entries reserved for a shadow or fishing rod? - ld hl, wOAMBuffer + 4 * 35 + $3 ; $8f - ld de, wOAMBuffer + 4 * 39 + $3 ; $9f + ld hl, wShadowOAMSprite35Attributes + ld de, wShadowOAMSprite39Attributes jr z, .next - ld hl, wOAMBuffer + 4 * 31 + $3 ; $7f - ld de, wOAMBuffer + 4 * 35 + $3 ; $8f + ld hl, wShadowOAMSprite31Attributes + ld de, wShadowOAMSprite35Attributes ; Copy OAM data 16 bytes forward to make room for emotion bubble OAM data at the ; start of the OAM buffer. diff --git a/engine/overworld/healing_machine.asm b/engine/overworld/healing_machine.asm index 63c8f9ea..e297762c 100644 --- a/engine/overworld/healing_machine.asm +++ b/engine/overworld/healing_machine.asm @@ -12,7 +12,7 @@ AnimateHealingMachine: push af ld a, $e0 ldh [rOBP1], a - ld hl, wOAMBuffer + $84 + ld hl, wShadowOAMSprite33 ld de, PokeCenterOAMData call CopyHealingMachineOAM ld a, 4 diff --git a/engine/overworld/player_animations.asm b/engine/overworld/player_animations.asm index 6a890cfd..bec59369 100644 --- a/engine/overworld/player_animations.asm +++ b/engine/overworld/player_animations.asm @@ -205,19 +205,19 @@ LeaveMapThroughHoleAnim: ld a, $ff ld [wUpdateSpritesEnabled], a ; disable UpdateSprites ; shift upper half of player's sprite down 8 pixels and hide lower half - ld a, [wOAMBuffer + 0 * 4 + 2] - ld [wOAMBuffer + 2 * 4 + 2], a - ld a, [wOAMBuffer + 1 * 4 + 2] - ld [wOAMBuffer + 3 * 4 + 2], a + ld a, [wShadowOAMSprite00TileID] + ld [wShadowOAMSprite02TileID], a + ld a, [wShadowOAMSprite01TileID] + ld [wShadowOAMSprite03TileID], a ld a, $a0 - ld [wOAMBuffer + 0 * 4], a - ld [wOAMBuffer + 1 * 4], a + ld [wShadowOAMSprite00YCoord], a + ld [wShadowOAMSprite01YCoord], a ld c, 2 call DelayFrames ; hide upper half of player's sprite ld a, $a0 - ld [wOAMBuffer + 2 * 4], a - ld [wOAMBuffer + 3 * 4], a + ld [wShadowOAMSprite02YCoord], a + ld [wShadowOAMSprite03YCoord], a call GBFadeOutToWhite ld a, $1 ld [wUpdateSpritesEnabled], a ; enable UpdateSprites @@ -392,7 +392,7 @@ FishingAnim: ld b, $0 ld hl, FishingRodOAM add hl, bc - ld de, wOAMBuffer + $9c + ld de, wShadowOAMSprite39 ld bc, $4 call CopyData ld c, 100 @@ -412,7 +412,7 @@ FishingAnim: .loop ld hl, wSpritePlayerStateData1YPixels call .ShakePlayerSprite - ld hl, wOAMBuffer + $9c + ld hl, wShadowOAMSprite39 call .ShakePlayerSprite call Delay3 dec b @@ -424,7 +424,7 @@ FishingAnim: cp SPRITE_FACING_UP jr nz, .skipHidingFishingRod ld a, $a0 - ld [wOAMBuffer + $9c], a + ld [wShadowOAMSprite39YCoord], a .skipHidingFishingRod ld hl, wEmotionBubbleSpriteIndex @@ -438,7 +438,7 @@ FishingAnim: cp SPRITE_FACING_UP jr nz, .skipUnhidingFishingRod ld a, $44 - ld [wOAMBuffer + $9c], a + ld [wShadowOAMSprite39YCoord], a .skipUnhidingFishingRod ld hl, ItsABiteText diff --git a/engine/slots/slot_machine.asm b/engine/slots/slot_machine.asm index 1c2bb4c9..6dd3b42d 100644 --- a/engine/slots/slot_machine.asm +++ b/engine/slots/slot_machine.asm @@ -757,7 +757,7 @@ SlotMachine_UpdateBallTiles: SlotMachine_AnimWheel1: ld bc, SlotMachineWheel1 ld de, wSlotMachineWheel1Offset - ld hl, wOAMBuffer + ld hl, wShadowOAMSprite00 ld a, $30 ld [wBaseCoordX], a jr SlotMachine_AnimWheel @@ -765,7 +765,7 @@ SlotMachine_AnimWheel1: SlotMachine_AnimWheel2: ld bc, SlotMachineWheel2 ld de, wSlotMachineWheel2Offset - ld hl, wOAMBuffer + $30 + ld hl, wShadowOAMSprite12 ld a, $50 ld [wBaseCoordX], a jr SlotMachine_AnimWheel @@ -773,7 +773,7 @@ SlotMachine_AnimWheel2: SlotMachine_AnimWheel3: ld bc, SlotMachineWheel3 ld de, wSlotMachineWheel3Offset - ld hl, wOAMBuffer + $60 + ld hl, wShadowOAMSprite24 ld a, $70 ld [wBaseCoordX], a diff --git a/home/clear_sprites.asm b/home/clear_sprites.asm index 79cc99d6..6d1066fa 100644 --- a/home/clear_sprites.asm +++ b/home/clear_sprites.asm @@ -1,7 +1,7 @@ ClearSprites:: xor a - ld hl, wOAMBuffer - ld b, wOAMBufferEnd - wOAMBuffer + ld hl, wShadowOAM + ld b, wShadowOAMEnd - wShadowOAM .loop ld [hli], a dec b @@ -10,7 +10,7 @@ ClearSprites:: HideSprites:: ld a, 160 - ld hl, wOAMBuffer + ld hl, wShadowOAM ld de, 4 ld b, 40 .loop diff --git a/home/oam.asm b/home/oam.asm index 8a940d97..8be59f6e 100644 --- a/home/oam.asm +++ b/home/oam.asm @@ -4,7 +4,7 @@ ; c = X coordinate of upper left corner of sprite ; de = base address of 4 tile number and attribute pairs WriteOAMBlock:: - ld h, HIGH(wOAMBuffer) + ld h, HIGH(wShadowOAM) swap a ; multiply by 16 ld l, a call .writeOneEntry ; upper left diff --git a/ram/wram.asm b/ram/wram.asm index 0804e6ee..3becc82a 100644 --- a/ram/wram.asm +++ b/ram/wram.asm @@ -143,12 +143,12 @@ wSpriteDataEnd:: SECTION "OAM Buffer", WRAM0 ; buffer for OAM data. Copied to OAM by DMA -wOAMBuffer:: -; wOAMBufferSprite00 - wOAMBufferSprite39 +wShadowOAM:: +; wShadowOAMSprite00 - wShadowOAMSprite39 FOR n, NUM_SPRITE_OAM_STRUCTS -wOAMBufferSprite{02d:n}:: sprite_oam_struct wOAMBufferSprite{02d:n} +wShadowOAMSprite{02d:n}:: sprite_oam_struct wShadowOAMSprite{02d:n} ENDR -wOAMBufferEnd:: +wShadowOAMEnd:: SECTION "Tilemap", WRAM0 diff --git a/scripts/VermilionDock.asm b/scripts/VermilionDock.asm index f98e1250..94779798 100644 --- a/scripts/VermilionDock.asm +++ b/scripts/VermilionDock.asm @@ -124,7 +124,7 @@ VermilionDock_1db9b: VermilionDock_AnimSmokePuffDriftRight: push bc push de - ld hl, wOAMBuffer + 4 * $4 + 1 ; x coord + ld hl, wShadowOAMSprite04XCoord ld a, [wSSAnneSmokeDriftAmount] swap a ld c, a -- cgit v1.3.1-sl0p From 8f81e71f192bce4b6f56b042638da376737e5abc Mon Sep 17 00:00:00 2001 From: Rangi Date: Sun, 10 Jul 2022 21:11:03 -0400 Subject: Identify some `.asm_*` labels --- audio/low_health_alarm.asm | 14 ++++----- data/sgb/sgb_packets.asm | 16 +++++----- engine/battle/core.asm | 4 +-- engine/events/diploma.asm | 5 +-- engine/events/hidden_objects/bench_guys.asm | 4 +-- engine/events/hidden_objects/cinnabar_gym_quiz.asm | 4 +-- engine/events/pewter_guys.asm | 4 +-- engine/gfx/hp_bar.asm | 4 +-- engine/gfx/palettes.asm | 16 +++++----- engine/items/item_effects.asm | 36 +++++++++++----------- engine/math/multiply_divide.asm | 22 ++++++------- engine/menus/main_menu.asm | 4 +-- engine/overworld/field_move_messages.asm | 4 +-- engine/overworld/missable_objects.asm | 4 +-- engine/overworld/pathfinding.asm | 8 ++--- engine/overworld/player_state.asm | 8 ++--- engine/overworld/spinners.asm | 14 ++++----- engine/overworld/tilesets.asm | 4 +-- engine/play_time.asm | 8 ++--- home/yes_no.asm | 2 +- 20 files changed, 93 insertions(+), 92 deletions(-) (limited to 'engine/items') diff --git a/audio/low_health_alarm.asm b/audio/low_health_alarm.asm index 08060aab..65e19aa7 100644 --- a/audio/low_health_alarm.asm +++ b/audio/low_health_alarm.asm @@ -7,25 +7,25 @@ Music_DoLowHealthAlarm:: ret z ;nope and $7f ;low 7 bits are the timer. - jr nz, .asm_21383 ;if timer > 0, play low tone. + jr nz, .notToneHi ;if timer > 0, play low tone. call .playToneHi ld a, 30 ;keep this tone for 30 frames. - jr .asm_21395 ;reset the timer. + jr .resetTimer -.asm_21383 +.notToneHi cp 20 - jr nz, .asm_2138a ;if timer == 20, - call .playToneLo ;actually set the sound registers. + jr nz, .noTone ;if timer == 20, + call .playToneLo ;actually set the sound registers. -.asm_2138a +.noTone ld a, $86 ld [wChannelSoundIDs + Ch5], a ;disable sound channel? ld a, [wLowHealthAlarm] and $7f ;decrement alarm timer. dec a -.asm_21395 +.resetTimer ; reset the timer and enable flag. set 7, a ld [wLowHealthAlarm], a diff --git a/data/sgb/sgb_packets.asm b/data/sgb/sgb_packets.asm index 11fc8900..2a38f6c5 100644 --- a/data/sgb/sgb_packets.asm +++ b/data/sgb/sgb_packets.asm @@ -241,14 +241,14 @@ MaskEnCancelPacket: MASK_EN 0 ; This set of packets is found in several Japanese SGB-compatible titles. ; It appears to be part of NCL's SGB devkit. -DataSnd_72548: +DataSndPacket1: DATA_SND $85d, $0, 11 db $8C ; cpx #$8c (2) db $D0, $F4 ; bne -$0c db $60 ; rts ds 7, 0 -DataSnd_72558: +DataSndPacket2: DATA_SND $852, $0, 11 db $A9, $E7 ; lda #$e7 db $9F, $01, $C0, $7E ; sta $7ec001, x @@ -258,7 +258,7 @@ DataSnd_72558: db $E8 ; inx db $E0 ; cpx #$8c (1) -DataSnd_72568: +DataSndPacket3: DATA_SND $847, $0, 11 db $C4 ; cmp #$c4 (2) db $D0, $16 ; bne +$16 @@ -268,7 +268,7 @@ DataSnd_72568: db $D0, $10 ; bne +$10 db $A2, $28 ; ldx #$28 -DataSnd_72578: +DataSndPacket4: DATA_SND $83c, $0, 11 db $F0, $12 ; beq +$12 db $A5 ; lda dp @@ -279,7 +279,7 @@ DataSnd_72578: db $CA ; dex db $C9 ; cmp #$c4 (1) -DataSnd_72588: +DataSndPacket5: DATA_SND $831, $0, 11 dbw $0C, $CAA5 ; tsb $caa5 db $C9, $7E ; cmp #$7e @@ -288,7 +288,7 @@ DataSnd_72588: db $CB ; wai db $C9, $7E ; cmp #$7e -DataSnd_72598: +DataSndPacket6: DATA_SND $826, $0, 11 db $39 ; bne +$39 (2) dbw $CD, $C48 ; cmp $c48 @@ -297,7 +297,7 @@ DataSnd_72598: db $C9, $C9 ; cmp #$c9 db $80, $D0 ; bra -$30 -DataSnd_725a8: +DataSndPacket7: DATA_SND $81b, $0, 11 db $EA ; nop db $EA ; nop @@ -309,7 +309,7 @@ DataSnd_725a8: dbw $CD,$C4F ; cmp $c4f db $D0 ; bne +$39 (1) -DataSnd_725b8: +DataSndPacket8: DATA_SND $810, $0, 11 dbw $4C, $820 ; jmp $820 db $EA ; nop diff --git a/engine/battle/core.asm b/engine/battle/core.asm index 580a9899..62813eb4 100644 --- a/engine/battle/core.asm +++ b/engine/battle/core.asm @@ -6768,11 +6768,11 @@ InitOpponent: DetermineWildOpponent: ld a, [wd732] bit 1, a - jr z, .asm_3ef2f + jr z, .notDebug ldh a, [hJoyHeld] bit BIT_B_BUTTON, a ret nz -.asm_3ef2f +.notDebug ld a, [wNumberOfNoRandomBattleStepsLeft] and a ret nz diff --git a/engine/events/diploma.asm b/engine/events/diploma.asm index 41e0d7c6..e08b1f24 100644 --- a/engine/events/diploma.asm +++ b/engine/events/diploma.asm @@ -17,9 +17,10 @@ DisplayDiploma:: hlcoord 0, 0 lb bc, 16, 18 predef Diploma_TextBoxBorder + ld hl, DiplomaTextPointersAndCoords ld c, $5 -.asm_56715 +.placeTextLoop push bc ld a, [hli] ld e, a @@ -34,7 +35,7 @@ DisplayDiploma:: inc hl pop bc dec c - jr nz, .asm_56715 + jr nz, .placeTextLoop hlcoord 10, 4 ld de, wPlayerName call PlaceString diff --git a/engine/events/hidden_objects/bench_guys.asm b/engine/events/hidden_objects/bench_guys.asm index b41434ad..55090c01 100644 --- a/engine/events/hidden_objects/bench_guys.asm +++ b/engine/events/hidden_objects/bench_guys.asm @@ -79,9 +79,9 @@ SaffronCityPokecenterBenchGuyText:: text_asm CheckEvent EVENT_BEAT_SILPH_CO_GIOVANNI ld hl, SaffronCityPokecenterBenchGuyText2 - jr nz, .asm_624f2 + jr nz, .printText ld hl, SaffronCityPokecenterBenchGuyText1 -.asm_624f2 +.printText call PrintText jp TextScriptEnd diff --git a/engine/events/hidden_objects/cinnabar_gym_quiz.asm b/engine/events/hidden_objects/cinnabar_gym_quiz.asm index f4c46115..69f03f2c 100644 --- a/engine/events/hidden_objects/cinnabar_gym_quiz.asm +++ b/engine/events/hidden_objects/cinnabar_gym_quiz.asm @@ -32,7 +32,7 @@ CinnabarGymQuiz:: call PrintText ld a, 1 ld [wDoNotWaitForButtonPressAfterDisplayingText], a - call CinnabarGymQuiz_1ea92 + call CinnabarGymQuiz_AskQuestion jp TextScriptEnd CinnabarGymQuizIntroText: @@ -75,7 +75,7 @@ CinnabarGymGateFlagAction: EventFlagAddress hl, EVENT_CINNABAR_GYM_GATE0_UNLOCKED predef_jump FlagActionPredef -CinnabarGymQuiz_1ea92: +CinnabarGymQuiz_AskQuestion: call YesNoChoice ldh a, [hGymGateAnswer] ld c, a diff --git a/engine/events/pewter_guys.asm b/engine/events/pewter_guys.asm index 532fa4bf..06bb60fb 100644 --- a/engine/events/pewter_guys.asm +++ b/engine/events/pewter_guys.asm @@ -8,7 +8,7 @@ PewterGuys: add hl, de ld d, h ld e, l - ld hl, PointerTable_37ce6 + ld hl, PewterGuysCoordsTable ld a, [wWhichPewterGuy] add a ld b, 0 @@ -48,7 +48,7 @@ PewterGuys: inc hl jr .findMatchingCoordsLoop -PointerTable_37ce6: +PewterGuysCoordsTable: dw PewterMuseumGuyCoords dw PewterGymGuyCoords diff --git a/engine/gfx/hp_bar.asm b/engine/gfx/hp_bar.asm index e4de0b95..d848a337 100644 --- a/engine/gfx/hp_bar.asm +++ b/engine/gfx/hp_bar.asm @@ -215,10 +215,10 @@ UpdateHPBar_PrintHPNumber: push hl ldh a, [hUILayoutFlags] bit 0, a - jr z, .asm_fb15 + jr z, .hpBelowBar ld de, $9 jr .next -.asm_fb15 +.hpBelowBar ld de, $15 .next add hl, de diff --git a/engine/gfx/palettes.asm b/engine/gfx/palettes.asm index caa22c10..d97fbc55 100644 --- a/engine/gfx/palettes.asm +++ b/engine/gfx/palettes.asm @@ -443,14 +443,14 @@ PrepareSuperNintendoVRAMTransfer: .packetPointers ; Only the first packet is needed. dw MaskEnFreezePacket - dw DataSnd_72548 - dw DataSnd_72558 - dw DataSnd_72568 - dw DataSnd_72578 - dw DataSnd_72588 - dw DataSnd_72598 - dw DataSnd_725a8 - dw DataSnd_725b8 + dw DataSndPacket1 + dw DataSndPacket2 + dw DataSndPacket3 + dw DataSndPacket4 + dw DataSndPacket5 + dw DataSndPacket6 + dw DataSndPacket7 + dw DataSndPacket8 CheckSGB: ; Returns whether the game is running on an SGB in carry. diff --git a/engine/items/item_effects.asm b/engine/items/item_effects.asm index faba8837..02408484 100644 --- a/engine/items/item_effects.asm +++ b/engine/items/item_effects.asm @@ -2646,7 +2646,7 @@ SendNewMonToBox: ld a, [wcf91] ld [wd0b5], a ld c, a -.asm_e7b1 +.loop inc de ld a, [de] ld b, a @@ -2654,13 +2654,13 @@ SendNewMonToBox: ld c, b ld [de], a cp $ff - jr nz, .asm_e7b1 + jr nz, .loop call GetMonHeader ld hl, wBoxMonOT ld bc, NAME_LENGTH ld a, [wBoxCount] dec a - jr z, .asm_e7ee + jr z, .skip dec a call AddNTimes push hl @@ -2672,7 +2672,7 @@ SendNewMonToBox: ld a, [wBoxCount] dec a ld b, a -.asm_e7db +.loop2 push bc push hl ld bc, NAME_LENGTH @@ -2684,15 +2684,15 @@ SendNewMonToBox: add hl, bc pop bc dec b - jr nz, .asm_e7db -.asm_e7ee + jr nz, .loop2 +.skip ld hl, wPlayerName ld de, wBoxMonOT ld bc, NAME_LENGTH call CopyData ld a, [wBoxCount] dec a - jr z, .asm_e82a + jr z, .skip2 ld hl, wBoxMonNicks ld bc, NAME_LENGTH dec a @@ -2706,7 +2706,7 @@ SendNewMonToBox: ld a, [wBoxCount] dec a ld b, a -.asm_e817 +.loop3 push bc push hl ld bc, NAME_LENGTH @@ -2718,15 +2718,15 @@ SendNewMonToBox: add hl, bc pop bc dec b - jr nz, .asm_e817 -.asm_e82a + jr nz, .loop3 +.skip2 ld hl, wBoxMonNicks ld a, NAME_MON_SCREEN ld [wNamingScreenType], a predef AskName ld a, [wBoxCount] dec a - jr z, .asm_e867 + jr z, .skip3 ld hl, wBoxMons ld bc, wBoxMon2 - wBoxMon1 dec a @@ -2740,7 +2740,7 @@ SendNewMonToBox: ld a, [wBoxCount] dec a ld b, a -.asm_e854 +.loop4 push bc push hl ld bc, wBoxMon2 - wBoxMon1 @@ -2752,8 +2752,8 @@ SendNewMonToBox: add hl, bc pop bc dec b - jr nz, .asm_e854 -.asm_e867 + jr nz, .loop4 +.skip3 ld a, [wEnemyMonLevel] ld [wEnemyMonBoxLevel], a ld hl, wEnemyMon @@ -2783,11 +2783,11 @@ SendNewMonToBox: inc de xor a ld b, NUM_STATS * 2 -.asm_e89f +.loop5 ld [de], a inc de dec b - jr nz, .asm_e89f + jr nz, .loop5 ld hl, wEnemyMonDVs ld a, [hli] ld [de], a @@ -2796,12 +2796,12 @@ SendNewMonToBox: ld [de], a ld hl, wEnemyMonPP ld b, NUM_MOVES -.asm_e8b1 +.loop6 ld a, [hli] inc de ld [de], a dec b - jr nz, .asm_e8b1 + jr nz, .loop6 ret ; checks if the tile in front of the player is a shore or water tile diff --git a/engine/math/multiply_divide.asm b/engine/math/multiply_divide.asm index 2fcda158..ab065052 100644 --- a/engine/math/multiply_divide.asm +++ b/engine/math/multiply_divide.asm @@ -68,7 +68,7 @@ _Divide:: ldh [hDivideBuffer+4], a ld a, $9 ld e, a -.asm_37db3 +.loop ldh a, [hDivideBuffer] ld c, a ldh a, [hDividend+1] ; (aliases: hMultiplicand) @@ -78,18 +78,18 @@ _Divide:: ld c, a ldh a, [hDividend] ; (aliases: hProduct, hPastLeadingZeros, hQuotient) sbc c - jr c, .asm_37dce + jr c, .next ldh [hDividend], a ; (aliases: hProduct, hPastLeadingZeros, hQuotient) ld a, d ldh [hDividend+1], a ; (aliases: hMultiplicand) ldh a, [hDivideBuffer+4] inc a ldh [hDivideBuffer+4], a - jr .asm_37db3 -.asm_37dce + jr .loop +.next ld a, b cp $1 - jr z, .asm_37e18 + jr z, .done ldh a, [hDivideBuffer+4] sla a ldh [hDivideBuffer+4], a @@ -103,7 +103,7 @@ _Divide:: rl a ldh [hDivideBuffer+1], a dec e - jr nz, .asm_37e04 + jr nz, .next2 ld a, $8 ld e, a ldh a, [hDivideBuffer] @@ -116,20 +116,20 @@ _Divide:: ldh [hDividend+1], a ; (aliases: hMultiplicand) ldh a, [hDividend+3] ldh [hDividend+2], a -.asm_37e04 +.next2 ld a, e cp $1 - jr nz, .asm_37e0a + jr nz, .okay dec b -.asm_37e0a +.okay ldh a, [hDivisor] ; (aliases: hDivisor, hMultiplier, hPowerOf10) srl a ldh [hDivisor], a ; (aliases: hDivisor, hMultiplier, hPowerOf10) ldh a, [hDivideBuffer] rr a ldh [hDivideBuffer], a - jr .asm_37db3 -.asm_37e18 + jr .loop +.done ldh a, [hDividend+1] ; (aliases: hMultiplicand) ldh [hRemainder], a ; (aliases: hDivisor, hMultiplier, hPowerOf10) ldh a, [hDivideBuffer+4] diff --git a/engine/menus/main_menu.asm b/engine/menus/main_menu.asm index 7db60d3d..d94c65eb 100644 --- a/engine/menus/main_menu.asm +++ b/engine/menus/main_menu.asm @@ -184,13 +184,13 @@ LinkMenu: ld b, a and $f0 cp $d0 - jr z, .asm_5c7d + jr z, .checkEnemyMenuSelection ld a, [wLinkMenuSelectionReceiveBuffer + 1] ld b, a and $f0 cp $d0 jr nz, .exchangeMenuSelectionLoop -.asm_5c7d +.checkEnemyMenuSelection ld a, b and $c ; did the enemy press A or B? jr nz, .enemyPressedAOrB diff --git a/engine/overworld/field_move_messages.asm b/engine/overworld/field_move_messages.asm index 520ef8ad..d75ffc21 100644 --- a/engine/overworld/field_move_messages.asm +++ b/engine/overworld/field_move_messages.asm @@ -32,7 +32,7 @@ IsSurfingAllowed: ret nz CheckBothEventsSet EVENT_SEAFOAM4_BOULDER1_DOWN_HOLE, EVENT_SEAFOAM4_BOULDER2_DOWN_HOLE ret z - ld hl, CoordsData_cdf7 + ld hl, SeafoamIslandsB4FStairsCoords call ArePlayerCoordsInArray ret nc ld hl, wd728 @@ -45,7 +45,7 @@ IsSurfingAllowed: ld hl, CyclingIsFunText jp PrintText -CoordsData_cdf7: +SeafoamIslandsB4FStairsCoords: dbmapcoord 7, 11 db -1 ; end diff --git a/engine/overworld/missable_objects.asm b/engine/overworld/missable_objects.asm index 31fdc257..8f88b138 100644 --- a/engine/overworld/missable_objects.asm +++ b/engine/overworld/missable_objects.asm @@ -23,9 +23,9 @@ LoadMissableObjects: ld de, MissableObjects ; calculate difference between out pointer and the base pointer ld a, l sub e - jr nc, .asm_f13c + jr nc, .noCarry dec h -.asm_f13c +.noCarry ld l, a ld a, h sub d diff --git a/engine/overworld/pathfinding.asm b/engine/overworld/pathfinding.asm index 1925dbbc..d067345e 100644 --- a/engine/overworld/pathfinding.asm +++ b/engine/overworld/pathfinding.asm @@ -14,22 +14,22 @@ FindPathToPlayer: call CalcDifference ld d, a and a - jr nz, .asm_f8da + jr nz, .stillHasYProgress ldh a, [hFindPathFlags] set 0, a ; current end of path matches the player's Y coordinate ldh [hFindPathFlags], a -.asm_f8da +.stillHasYProgress ldh a, [hFindPathXProgress] ld b, a ldh a, [hNPCPlayerXDistance] ; X distance in steps call CalcDifference ld e, a and a - jr nz, .asm_f8ec + jr nz, .stillHasXProgress ldh a, [hFindPathFlags] set 1, a ; current end of path matches the player's X coordinate ldh [hFindPathFlags], a -.asm_f8ec +.stillHasXProgress ldh a, [hFindPathFlags] cp $3 ; has the end of the path reached the player's position? jr z, .done diff --git a/engine/overworld/player_state.asm b/engine/overworld/player_state.asm index 70326754..8d652cdf 100644 --- a/engine/overworld/player_state.asm +++ b/engine/overworld/player_state.asm @@ -101,10 +101,10 @@ IsPlayerFacingEdgeOfMap:: ld b, a ld a, [wXCoord] ld c, a - ld de, .asm_c41e + ld de, .return push de jp hl -.asm_c41e +.return pop bc pop de pop hl @@ -239,11 +239,11 @@ PrintSafariZoneSteps:: call PlaceString ld a, [wNumSafariBalls] cp 10 - jr nc, .asm_c56d + jr nc, .tenOrMore hlcoord 5, 3 ld a, " " ld [hl], a -.asm_c56d +.tenOrMore hlcoord 6, 3 ld de, wNumSafariBalls lb bc, 1, 2 diff --git a/engine/overworld/spinners.asm b/engine/overworld/spinners.asm index 0ac6380d..98b478c4 100644 --- a/engine/overworld/spinners.asm +++ b/engine/overworld/spinners.asm @@ -11,18 +11,18 @@ LoadSpinnerArrowTiles:: ld a, [wCurMapTileset] cp FACILITY ld hl, FacilitySpinnerArrows - jr z, .asm_44ff6 + jr z, .gotSpinnerArrows ld hl, GymSpinnerArrows -.asm_44ff6 +.gotSpinnerArrows ld a, [wSimulatedJoypadStatesIndex] bit 0, a - jr nz, .asm_45001 - ld de, $18 + jr nz, .alternateGraphics + ld de, 6 * 4 add hl, de -.asm_45001 +.alternateGraphics ld a, $4 ld bc, $0 -.asm_45006 +.loop push af push hl push bc @@ -46,7 +46,7 @@ LoadSpinnerArrowTiles:: pop hl pop af dec a - jr nz, .asm_45006 + jr nz, .loop ret INCLUDE "data/tilesets/spinner_tiles.asm" diff --git a/engine/overworld/tilesets.asm b/engine/overworld/tilesets.asm index fa5cf626..d36e1169 100644 --- a/engine/overworld/tilesets.asm +++ b/engine/overworld/tilesets.asm @@ -35,13 +35,13 @@ LoadTilesetHeader: call IsInArray pop de pop hl - jr c, .asm_c797 + jr c, .dungeon ld a, [wCurMapTileset] ld b, a ldh a, [hPreviousTileset] cp b jr z, .done -.asm_c797 +.dungeon ld a, [wDestinationWarpID] cp $ff jr z, .done diff --git a/engine/play_time.asm b/engine/play_time.asm index 29897242..dcba88c2 100644 --- a/engine/play_time.asm +++ b/engine/play_time.asm @@ -39,12 +39,12 @@ TrackPlayTime:: CountDownIgnoreInputBitReset: ld a, [wIgnoreInputCounter] and a - jr nz, .asm_18e40 + jr nz, .decrement ld a, $ff - jr .asm_18e41 -.asm_18e40 + jr .continue +.decrement dec a -.asm_18e41 +.continue ld [wIgnoreInputCounter], a and a ret nz diff --git a/home/yes_no.asm b/home/yes_no.asm index 5b0e09ed..3f5a5a45 100644 --- a/home/yes_no.asm +++ b/home/yes_no.asm @@ -5,7 +5,7 @@ YesNoChoice:: call InitYesNoTextBoxParameters jr DisplayYesNoChoice -Func_35f4:: +TwoOptionMenu:: ; unreferenced ld a, TWO_OPTION_MENU ld [wTextBoxID], a call InitYesNoTextBoxParameters -- cgit v1.3.1-sl0p From 8b194055907d1f69f9e0c7edd232f4e669e3fe48 Mon Sep 17 00:00:00 2001 From: Chatot4444 <94812895+Chatot4444@users.noreply.github.com> Date: Thu, 11 Aug 2022 08:51:18 -0400 Subject: Replace Hard-Coded Number With Constant (#381) Replace a hard coded $a in CheckMapForMon with NUM_WILDMONS --- engine/items/item_effects.asm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'engine/items') diff --git a/engine/items/item_effects.asm b/engine/items/item_effects.asm index 02408484..913b8636 100644 --- a/engine/items/item_effects.asm +++ b/engine/items/item_effects.asm @@ -2919,7 +2919,7 @@ FindWildLocationsOfMon: CheckMapForMon: inc hl - ld b, $a + ld b, NUM_WILDMONS .loop ld a, [wd11e] cp [hl] -- cgit v1.3.1-sl0p From bbb0e7e82deb6741f75a12b48f81076d92f5d9dc Mon Sep 17 00:00:00 2001 From: Rangi <35663410+Rangi42@users.noreply.github.com> Date: Thu, 11 Aug 2022 21:23:08 -0400 Subject: Use the same music headers as pokecrystal (#382) --- audio.asm | 6 +- audio/engine_1.asm | 84 ++--- audio/engine_2.asm | 94 +++--- audio/engine_3.asm | 84 ++--- audio/headers/musicheaders1.asm | 109 +++++-- audio/headers/musicheaders2.asm | 35 +- audio/headers/musicheaders3.asm | 96 +++++- audio/headers/sfxheaders1.asm | 375 +++++++++++++++------ audio/headers/sfxheaders2.asm | 471 ++++++++++++++++++++------- audio/headers/sfxheaders3.asm | 400 +++++++++++++++++------ audio/low_health_alarm.asm | 4 +- audio/poke_flute.asm | 2 +- audio/wave_instruments.asm | 33 -- audio/wave_samples.asm | 33 ++ constants/audio_constants.asm | 16 +- engine/battle/core.asm | 6 +- engine/battle/end_of_battle.asm | 2 +- engine/events/hidden_objects/safari_game.asm | 2 +- engine/items/item_effects.asm | 6 +- engine/movie/evolution.asm | 2 +- engine/overworld/elevator.asm | 2 +- home/audio.asm | 8 +- home/delay.asm | 2 +- home/overworld.asm | 4 +- macros/scripts/audio.asm | 55 ++-- scripts/PewterPokecenter.asm | 2 +- 26 files changed, 1346 insertions(+), 587 deletions(-) delete mode 100644 audio/wave_instruments.asm create mode 100644 audio/wave_samples.asm (limited to 'engine/items') diff --git a/audio.asm b/audio.asm index 35b0d872..e934c440 100644 --- a/audio.asm +++ b/audio.asm @@ -44,7 +44,7 @@ INCLUDE "audio/sfx/noise_instrument18_1.asm" INCLUDE "audio/sfx/noise_instrument19_1.asm" Audio1_WavePointers: -INCLUDE "audio/wave_instruments.asm" +INCLUDE "audio/wave_samples.asm" INCLUDE "audio/sfx/start_menu_1.asm" INCLUDE "audio/sfx/pokeflute.asm" @@ -144,7 +144,7 @@ INCLUDE "audio/sfx/noise_instrument18_2.asm" INCLUDE "audio/sfx/noise_instrument19_2.asm" Audio2_WavePointers: -INCLUDE "audio/wave_instruments.asm" +INCLUDE "audio/wave_samples.asm" INCLUDE "audio/sfx/press_ab_2.asm" INCLUDE "audio/sfx/start_menu_2.asm" @@ -270,7 +270,7 @@ INCLUDE "audio/sfx/noise_instrument18_3.asm" INCLUDE "audio/sfx/noise_instrument19_3.asm" Audio3_WavePointers: -INCLUDE "audio/wave_instruments.asm" +INCLUDE "audio/wave_samples.asm" INCLUDE "audio/sfx/start_menu_3.asm" INCLUDE "audio/sfx/cut_3.asm" diff --git a/audio/engine_1.asm b/audio/engine_1.asm index f9b4166a..8b30fb1a 100644 --- a/audio/engine_1.asm +++ b/audio/engine_1.asm @@ -1,7 +1,7 @@ ; The first of three duplicated sound engines. Audio1_UpdateMusic:: - ld c, Ch1 + ld c, CHAN1 .loop ld b, 0 ld hl, wChannelSoundIDs @@ -10,7 +10,7 @@ Audio1_UpdateMusic:: and a jr z, .nextChannel ld a, c - cp Ch5 + cp CHAN5 jr nc, .applyAffects ; if sfx channel ld a, [wMuteAudioAndPauseMusic] and a @@ -30,7 +30,7 @@ Audio1_UpdateMusic:: .nextChannel ld a, c inc c ; inc channel number - cp Ch8 + cp CHAN8 jr nz, .loop ret @@ -46,9 +46,9 @@ Audio1_ApplyMusicAffects: dec a ; otherwise, decrease the delay timer ld [hl], a ld a, c - cp Ch5 + cp CHAN5 jr nc, .startChecks ; if a sfx channel - ld hl, wChannelSoundIDs + Ch5 + ld hl, wChannelSoundIDs + CHAN5 add hl, bc ld a, [hl] and a @@ -171,7 +171,7 @@ Audio1_sound_ret: bit BIT_SOUND_CALL, [hl] jr nz, .returnFromCall ld a, c - cp Ch4 + cp CHAN4 jr nc, .noiseOrSfxChannel jr .disableChannelOutput .noiseOrSfxChannel @@ -179,7 +179,7 @@ Audio1_sound_ret: ld hl, wChannelFlags2 add hl, bc res BIT_EXECUTE_MUSIC, [hl] - cp Ch7 + cp CHAN7 jr nz, .skipSfxChannel3 ; restart hardware channel 3 (wave channel) output ld a, $0 @@ -223,19 +223,19 @@ Audio1_sound_ret: and [hl] ldh [rNR51], a .afterDisable - ld a, [wChannelSoundIDs + Ch5] + ld a, [wChannelSoundIDs + CHAN5] cp CRY_SFX_START jr nc, .maybeCry jr .skipCry .maybeCry - ld a, [wChannelSoundIDs + Ch5] + ld a, [wChannelSoundIDs + CHAN5] cp CRY_SFX_END jr z, .skipCry jr c, .cry jr .skipCry .cry ld a, c - cp Ch5 + cp CHAN5 jr z, .skipRewind call Audio1_GoBackOneCommandIfCry ret c @@ -336,14 +336,14 @@ Audio1_note_type: add hl, bc ld [hl], a ; store low nibble as speed ld a, c - cp Ch4 + cp CHAN4 jr z, .noiseChannel ; noise channel has 0 params call Audio1_GetNextMusicByte ld d, a ld a, c - cp Ch3 + cp CHAN3 jr z, .musicChannel3 - cp Ch7 + cp CHAN7 jr nz, .skipChannel3 ld hl, wSfxWaveInstrument jr .channel3 @@ -477,7 +477,7 @@ Audio1_tempo: cp tempo_cmd jr nz, Audio1_stereo_panning ld a, c - cp Ch5 + cp CHAN5 jr nc, .sfxChannel call Audio1_GetNextMusicByte ld [wMusicTempo], a ; store first param @@ -520,10 +520,10 @@ Audio1_unknownmusic0xef: ld a, [wDisableChannelOutputWhenSfxEnds] and a jr nz, .skip - ld a, [wChannelSoundIDs + Ch8] + ld a, [wChannelSoundIDs + CHAN8] ld [wDisableChannelOutputWhenSfxEnds], a xor a - ld [wChannelSoundIDs + Ch8], a + ld [wChannelSoundIDs + CHAN8], a .skip jp Audio1_sound_ret @@ -577,7 +577,7 @@ Audio1_sfx_note: cp sfx_note_cmd jr nz, Audio1_pitch_sweep ld a, c - cp Ch4 ; is this a noise or sfx channel? + cp CHAN4 ; is this a noise or sfx channel? jr c, Audio1_pitch_sweep ; no ld b, 0 ld hl, wChannelFlags2 @@ -607,7 +607,7 @@ Audio1_sfx_note: call Audio1_GetNextMusicByte ld e, a ld a, c - cp Ch8 + cp CHAN8 ld a, 0 jr z, .skip ; Channels 1 through 3 have 2 registers that control frequency, but the noise @@ -627,7 +627,7 @@ Audio1_sfx_note: Audio1_pitch_sweep: ld a, c - cp Ch5 + cp CHAN5 jr c, Audio1_note ; if not a sfx ld a, d cp pitch_sweep_cmd @@ -643,7 +643,7 @@ Audio1_pitch_sweep: Audio1_note: ld a, c - cp Ch4 + cp CHAN4 jr nz, Audio1_note_length ; if not noise channel ld a, d and $f0 @@ -701,7 +701,7 @@ Audio1_note_length: ld l, b call Audio1_MultiplyAdd ld a, c - cp Ch5 + cp CHAN5 jr nc, .sfxChannel ld a, [wMusicTempo] ld d, a @@ -711,7 +711,7 @@ Audio1_note_length: .sfxChannel ld d, $1 ld e, $0 - cp Ch8 + cp CHAN8 jr z, .skip ; if noise channel call Audio1_SetSfxTempo ld a, [wSfxTempo] @@ -751,10 +751,10 @@ Audio1_note_pitch: cp rest_cmd jr nz, .notRest ld a, c - cp Ch5 + cp CHAN5 jr nc, .next ; If this isn't an SFX channel, try the corresponding SFX channel. - ld hl, wChannelSoundIDs + Ch5 + ld hl, wChannelSoundIDs + CHAN5 add hl, bc ld a, [hl] and a @@ -762,9 +762,9 @@ Audio1_note_pitch: ; fall through .next ld a, c - cp Ch3 + cp CHAN3 jr z, .channel3 - cp Ch7 + cp CHAN7 jr nz, .notChannel3 .channel3 ld b, 0 @@ -800,10 +800,10 @@ Audio1_note_pitch: .skipPitchSlide push de ld a, c - cp Ch5 + cp CHAN5 jr nc, .sfxChannel ; if sfx channel ; If this isn't an SFX channel, try the corresponding SFX channel. - ld hl, wChannelSoundIDs + Ch5 + ld hl, wChannelSoundIDs + CHAN5 ld d, 0 ld e, a add hl, de @@ -848,12 +848,12 @@ Audio1_EnableChannelOutput: or [hl] ; set this channel's bits ld d, a ld a, c - cp Ch8 + cp CHAN8 jr z, .noiseChannelOrNoSfx - cp Ch5 + cp CHAN5 jr nc, .skip ; if sfx channel ; If this isn't an SFX channel, try the corresponding SFX channel. - ld hl, wChannelSoundIDs + Ch5 + ld hl, wChannelSoundIDs + CHAN5 add hl, bc ld a, [hl] and a @@ -883,9 +883,9 @@ Audio1_ApplyDutyCycleAndSoundLength: add hl, bc ld d, [hl] ld a, c - cp Ch3 + cp CHAN3 jr z, .skipDuty ; if music channel 3 - cp Ch7 + cp CHAN7 jr z, .skipDuty ; if sfx channel 3 ; include duty cycle (except on channel 3 which doesn't have it) ld a, d @@ -904,15 +904,15 @@ Audio1_ApplyDutyCycleAndSoundLength: Audio1_ApplyWavePatternAndFrequency: ld a, c - cp Ch3 + cp CHAN3 jr z, .channel3 - cp Ch7 + cp CHAN7 jr nz, .notChannel3 ; fall through .channel3 push de ld de, wMusicWaveInstrument - cp Ch3 + cp CHAN3 jr z, .next ld de, wSfxWaveInstrument .next @@ -1016,7 +1016,7 @@ Audio1_GoBackOneCommandIfCry: Audio1_IsCry: ; Returns whether the currently playing audio is a cry in carry. - ld a, [wChannelSoundIDs + Ch5] + ld a, [wChannelSoundIDs + CHAN5] cp CRY_SFX_START jr nc, .next jr .no @@ -1453,7 +1453,7 @@ Audio1_PlaySound:: and a jr z, .playChannel ld a, e - cp Ch8 + cp CHAN8 jr nz, .notNoiseChannel ld a, [wSoundID] cp NOISE_INSTRUMENTS_END @@ -1552,7 +1552,7 @@ Audio1_PlaySound:: add hl, de ld [hl], a ld a, e - cp Ch5 + cp CHAN5 jr nz, .skipSweepDisable ld a, $8 ldh [rNR10], a ; sweep off @@ -1654,7 +1654,7 @@ Audio1_PlaySound:: ld a, [wSoundID] ld [hl], a pop af - cp Ch4 + cp CHAN4 jr c, .skipSettingFlag ld hl, wChannelFlags1 add hl, bc @@ -1686,12 +1686,12 @@ Audio1_PlaySound:: jr c, .cry jr .done .cry - ld hl, wChannelSoundIDs + Ch5 + ld hl, wChannelSoundIDs + CHAN5 ld [hli], a ld [hli], a ld [hli], a ld [hl], a - ld hl, wChannelCommandPointers + Ch7 * 2 ; sfx wave channel pointer + ld hl, wChannelCommandPointers + CHAN7 * 2 ; sfx wave channel pointer ld de, Audio1_CryRet ld [hl], e inc hl diff --git a/audio/engine_2.asm b/audio/engine_2.asm index 30845fc8..8783c4c6 100644 --- a/audio/engine_2.asm +++ b/audio/engine_2.asm @@ -3,7 +3,7 @@ ; and the low health alarm that plays in battle Audio2_UpdateMusic:: - ld c, Ch1 + ld c, CHAN1 .loop ld b, 0 ld hl, wChannelSoundIDs @@ -12,7 +12,7 @@ Audio2_UpdateMusic:: and a jr z, .nextChannel ld a, c - cp Ch5 + cp CHAN5 jr nc, .applyAffects ; if sfx channel ld a, [wMuteAudioAndPauseMusic] and a @@ -32,7 +32,7 @@ Audio2_UpdateMusic:: .nextChannel ld a, c inc c ; inc channel number - cp Ch8 + cp CHAN8 jr nz, .loop ret @@ -48,9 +48,9 @@ Audio2_ApplyMusicAffects: dec a ; otherwise, decrease the delay timer ld [hl], a ld a, c - cp Ch5 + cp CHAN5 jr nc, .startChecks ; if a sfx channel - ld hl, wChannelSoundIDs + Ch5 + ld hl, wChannelSoundIDs + CHAN5 add hl, bc ld a, [hl] and a @@ -161,7 +161,7 @@ Audio2_PlayNextNote: res BIT_PITCH_SLIDE_DECREASING, [hl] ; --- this section is only present in this copy of the sound engine ld a, c - cp Ch5 + cp CHAN5 jr nz, .beginChecks ld a, [wLowHealthAlarm] ; low health alarm enabled? bit 7, a @@ -182,7 +182,7 @@ Audio2_sound_ret: bit BIT_SOUND_CALL, [hl] jr nz, .returnFromCall ld a, c - cp Ch4 + cp CHAN4 jr nc, .noiseOrSfxChannel jr .disableChannelOutput .noiseOrSfxChannel @@ -190,7 +190,7 @@ Audio2_sound_ret: ld hl, wChannelFlags2 add hl, bc res BIT_EXECUTE_MUSIC, [hl] - cp Ch7 + cp CHAN7 jr nz, .skipSfxChannel3 ; restart hardware channel 3 (wave channel) output ld a, $0 @@ -234,19 +234,19 @@ Audio2_sound_ret: and [hl] ldh [rNR51], a .afterDisable - ld a, [wChannelSoundIDs + Ch5] + ld a, [wChannelSoundIDs + CHAN5] cp CRY_SFX_START jr nc, .maybeCry jr .skipCry .maybeCry - ld a, [wChannelSoundIDs + Ch5] + ld a, [wChannelSoundIDs + CHAN5] cp CRY_SFX_END jr z, .skipCry jr c, .cry jr .skipCry .cry ld a, c - cp Ch5 + cp CHAN5 jr z, .skipRewind call Audio2_GoBackOneCommandIfCry ret c @@ -347,14 +347,14 @@ Audio2_note_type: add hl, bc ld [hl], a ; store low nibble as speed ld a, c - cp Ch4 + cp CHAN4 jr z, .noiseChannel ; noise channel has 0 params call Audio2_GetNextMusicByte ld d, a ld a, c - cp Ch3 + cp CHAN3 jr z, .musicChannel3 - cp Ch7 + cp CHAN7 jr nz, .skipChannel3 ld hl, wSfxWaveInstrument jr .channel3 @@ -488,7 +488,7 @@ Audio2_tempo: cp tempo_cmd jr nz, Audio2_stereo_panning ld a, c - cp Ch5 + cp CHAN5 jr nc, .sfxChannel call Audio2_GetNextMusicByte ld [wMusicTempo], a ; store first param @@ -531,10 +531,10 @@ Audio2_unknownmusic0xef: ld a, [wDisableChannelOutputWhenSfxEnds] and a jr nz, .skip - ld a, [wChannelSoundIDs + Ch8] + ld a, [wChannelSoundIDs + CHAN8] ld [wDisableChannelOutputWhenSfxEnds], a xor a - ld [wChannelSoundIDs + Ch8], a + ld [wChannelSoundIDs + CHAN8], a .skip jp Audio2_sound_ret @@ -588,7 +588,7 @@ Audio2_sfx_note: cp sfx_note_cmd jr nz, Audio2_pitch_sweep ld a, c - cp Ch4 ; is this a noise or sfx channel? + cp CHAN4 ; is this a noise or sfx channel? jr c, Audio2_pitch_sweep ; no ld b, 0 ld hl, wChannelFlags2 @@ -618,7 +618,7 @@ Audio2_sfx_note: call Audio2_GetNextMusicByte ld e, a ld a, c - cp Ch8 + cp CHAN8 ld a, 0 jr z, .skip ; Channels 1 through 3 have 2 registers that control frequency, but the noise @@ -638,7 +638,7 @@ Audio2_sfx_note: Audio2_pitch_sweep: ld a, c - cp Ch5 + cp CHAN5 jr c, Audio2_note ; if not a sfx ld a, d cp pitch_sweep_cmd @@ -654,7 +654,7 @@ Audio2_pitch_sweep: Audio2_note: ld a, c - cp Ch4 + cp CHAN4 jr nz, Audio2_note_length ; if not noise channel ld a, d and $f0 @@ -712,7 +712,7 @@ Audio2_note_length: ld l, b call Audio2_MultiplyAdd ld a, c - cp Ch5 + cp CHAN5 jr nc, .sfxChannel ld a, [wMusicTempo] ld d, a @@ -722,7 +722,7 @@ Audio2_note_length: .sfxChannel ld d, $1 ld e, $0 - cp Ch8 + cp CHAN8 jr z, .skip ; if noise channel call Audio2_SetSfxTempo ld a, [wSfxTempo] @@ -762,10 +762,10 @@ Audio2_note_pitch: cp rest_cmd jr nz, .notRest ld a, c - cp Ch5 + cp CHAN5 jr nc, .next ; If this isn't an SFX channel, try the corresponding SFX channel. - ld hl, wChannelSoundIDs + Ch5 + ld hl, wChannelSoundIDs + CHAN5 add hl, bc ld a, [hl] and a @@ -773,9 +773,9 @@ Audio2_note_pitch: ; fall through .next ld a, c - cp Ch3 + cp CHAN3 jr z, .channel3 - cp Ch7 + cp CHAN7 jr nz, .notChannel3 .channel3 ld b, 0 @@ -811,10 +811,10 @@ Audio2_note_pitch: .skipPitchSlide push de ld a, c - cp Ch5 + cp CHAN5 jr nc, .sfxChannel ; if sfx channel ; If this isn't an SFX channel, try the corresponding SFX channel. - ld hl, wChannelSoundIDs + Ch5 + ld hl, wChannelSoundIDs + CHAN5 ld d, 0 ld e, a add hl, de @@ -859,12 +859,12 @@ Audio2_EnableChannelOutput: or [hl] ; set this channel's bits ld d, a ld a, c - cp Ch8 + cp CHAN8 jr z, .noiseChannelOrNoSfx - cp Ch5 + cp CHAN5 jr nc, .skip ; if sfx channel ; If this isn't an SFX channel, try the corresponding SFX channel. - ld hl, wChannelSoundIDs + Ch5 + ld hl, wChannelSoundIDs + CHAN5 add hl, bc ld a, [hl] and a @@ -894,9 +894,9 @@ Audio2_ApplyDutyCycleAndSoundLength: add hl, bc ld d, [hl] ld a, c - cp Ch3 + cp CHAN3 jr z, .skipDuty ; if music channel 3 - cp Ch7 + cp CHAN7 jr z, .skipDuty ; if sfx channel 3 ; include duty cycle (except on channel 3 which doesn't have it) ld a, d @@ -915,15 +915,15 @@ Audio2_ApplyDutyCycleAndSoundLength: Audio2_ApplyWavePatternAndFrequency: ld a, c - cp Ch3 + cp CHAN3 jr z, .channel3 - cp Ch7 + cp CHAN7 jr nz, .notChannel3 ; fall through .channel3 push de ld de, wMusicWaveInstrument - cp Ch3 + cp CHAN3 jr z, .next ld de, wSfxWaveInstrument .next @@ -963,7 +963,7 @@ Audio2_ApplyWavePatternAndFrequency: ld [hl], d ; store frequency high byte ; --- this section is only present in this copy of the sound engine ld a, c - cp Ch5 + cp CHAN5 jr c, .musicChannel call Audio2_ApplyFrequencyModifier .musicChannel @@ -974,7 +974,7 @@ Audio2_ApplyWavePatternAndFrequency: ; unused Audio2_ResetCryModifiers: ld a, c - cp Ch5 + cp CHAN5 jr nz, .skip ld a, [wLowHealthAlarm] bit 7, a @@ -1056,7 +1056,7 @@ Audio2_GoBackOneCommandIfCry: Audio2_IsCry: ; Returns whether the currently playing audio is a cry in carry. - ld a, [wChannelSoundIDs + Ch5] + ld a, [wChannelSoundIDs + CHAN5] cp CRY_SFX_START jr nc, .next jr .no @@ -1075,9 +1075,9 @@ Audio2_IsCry: ; --- this section is only present in this copy of the sound engine Audio2_IsBattleSFX: ; Returns whether the currently playing audio is a battle sfx in carry. - ld a, [wChannelSoundIDs + Ch8] + ld a, [wChannelSoundIDs + CHAN8] ld b, a - ld a, [wChannelSoundIDs + Ch5] + ld a, [wChannelSoundIDs + CHAN5] or b cp BATTLE_SFX_START jr nc, .next @@ -1516,7 +1516,7 @@ Audio2_PlaySound:: and a jr z, .playChannel ld a, e - cp Ch8 + cp CHAN8 jr nz, .notNoiseChannel ld a, [wSoundID] cp NOISE_INSTRUMENTS_END @@ -1615,7 +1615,7 @@ Audio2_PlaySound:: add hl, de ld [hl], a ld a, e - cp Ch5 + cp CHAN5 jr nz, .skipSweepDisable ld a, $8 ldh [rNR10], a ; sweep off @@ -1717,7 +1717,7 @@ Audio2_PlaySound:: ld a, [wSoundID] ld [hl], a pop af - cp Ch4 + cp CHAN4 jr c, .skipSettingFlag ld hl, wChannelFlags1 add hl, bc @@ -1749,12 +1749,12 @@ Audio2_PlaySound:: jr c, .cry jr .done .cry - ld hl, wChannelSoundIDs + Ch5 + ld hl, wChannelSoundIDs + CHAN5 ld [hli], a ld [hli], a ld [hli], a ld [hl], a - ld hl, wChannelCommandPointers + Ch7 * 2 ; sfx wave channel pointer + ld hl, wChannelCommandPointers + CHAN7 * 2 ; sfx wave channel pointer ld de, Audio2_CryRet ld [hl], e inc hl diff --git a/audio/engine_3.asm b/audio/engine_3.asm index 57618486..404e6e7c 100644 --- a/audio/engine_3.asm +++ b/audio/engine_3.asm @@ -1,7 +1,7 @@ ; The third of three duplicated sound engines. Audio3_UpdateMusic:: - ld c, Ch1 + ld c, CHAN1 .loop ld b, 0 ld hl, wChannelSoundIDs @@ -10,7 +10,7 @@ Audio3_UpdateMusic:: and a jr z, .nextChannel ld a, c - cp Ch5 + cp CHAN5 jr nc, .applyAffects ; if sfx channel ld a, [wMuteAudioAndPauseMusic] and a @@ -30,7 +30,7 @@ Audio3_UpdateMusic:: .nextChannel ld a, c inc c ; inc channel number - cp Ch8 + cp CHAN8 jr nz, .loop ret @@ -46,9 +46,9 @@ Audio3_ApplyMusicAffects: dec a ; otherwise, decrease the delay timer ld [hl], a ld a, c - cp Ch5 + cp CHAN5 jr nc, .startChecks ; if a sfx channel - ld hl, wChannelSoundIDs + Ch5 + ld hl, wChannelSoundIDs + CHAN5 add hl, bc ld a, [hl] and a @@ -171,7 +171,7 @@ Audio3_sound_ret: bit BIT_SOUND_CALL, [hl] jr nz, .returnFromCall ld a, c - cp Ch4 + cp CHAN4 jr nc, .noiseOrSfxChannel jr .disableChannelOutput .noiseOrSfxChannel @@ -179,7 +179,7 @@ Audio3_sound_ret: ld hl, wChannelFlags2 add hl, bc res BIT_EXECUTE_MUSIC, [hl] - cp Ch7 + cp CHAN7 jr nz, .skipSfxChannel3 ; restart hardware channel 3 (wave channel) output ld a, $0 @@ -223,19 +223,19 @@ Audio3_sound_ret: and [hl] ldh [rNR51], a .afterDisable - ld a, [wChannelSoundIDs + Ch5] + ld a, [wChannelSoundIDs + CHAN5] cp CRY_SFX_START jr nc, .maybeCry jr .skipCry .maybeCry - ld a, [wChannelSoundIDs + Ch5] + ld a, [wChannelSoundIDs + CHAN5] cp CRY_SFX_END jr z, .skipCry jr c, .cry jr .skipCry .cry ld a, c - cp Ch5 + cp CHAN5 jr z, .skipRewind call Audio3_GoBackOneCommandIfCry ret c @@ -336,14 +336,14 @@ Audio3_note_type: add hl, bc ld [hl], a ; store low nibble as speed ld a, c - cp Ch4 + cp CHAN4 jr z, .noiseChannel ; noise channel has 0 params call Audio3_GetNextMusicByte ld d, a ld a, c - cp Ch3 + cp CHAN3 jr z, .musicChannel3 - cp Ch7 + cp CHAN7 jr nz, .skipChannel3 ld hl, wSfxWaveInstrument jr .channel3 @@ -477,7 +477,7 @@ Audio3_tempo: cp tempo_cmd jr nz, Audio3_stereo_panning ld a, c - cp Ch5 + cp CHAN5 jr nc, .sfxChannel call Audio3_GetNextMusicByte ld [wMusicTempo], a ; store first param @@ -520,10 +520,10 @@ Audio3_unknownmusic0xef: ld a, [wDisableChannelOutputWhenSfxEnds] and a jr nz, .skip - ld a, [wChannelSoundIDs + Ch8] + ld a, [wChannelSoundIDs + CHAN8] ld [wDisableChannelOutputWhenSfxEnds], a xor a - ld [wChannelSoundIDs + Ch8], a + ld [wChannelSoundIDs + CHAN8], a .skip jp Audio3_sound_ret @@ -577,7 +577,7 @@ Audio3_sfx_note: cp sfx_note_cmd jr nz, Audio3_pitch_sweep ld a, c - cp Ch4 ; is this a noise or sfx channel? + cp CHAN4 ; is this a noise or sfx channel? jr c, Audio3_pitch_sweep ; no ld b, 0 ld hl, wChannelFlags2 @@ -607,7 +607,7 @@ Audio3_sfx_note: call Audio3_GetNextMusicByte ld e, a ld a, c - cp Ch8 + cp CHAN8 ld a, 0 jr z, .skip ; Channels 1 through 3 have 2 registers that control frequency, but the noise @@ -627,7 +627,7 @@ Audio3_sfx_note: Audio3_pitch_sweep: ld a, c - cp Ch5 + cp CHAN5 jr c, Audio3_note ; if not a sfx ld a, d cp pitch_sweep_cmd @@ -643,7 +643,7 @@ Audio3_pitch_sweep: Audio3_note: ld a, c - cp Ch4 + cp CHAN4 jr nz, Audio3_note_length ; if not noise channel ld a, d and $f0 @@ -701,7 +701,7 @@ Audio3_note_length: ld l, b call Audio3_MultiplyAdd ld a, c - cp Ch5 + cp CHAN5 jr nc, .sfxChannel ld a, [wMusicTempo] ld d, a @@ -711,7 +711,7 @@ Audio3_note_length: .sfxChannel ld d, $1 ld e, $0 - cp Ch8 + cp CHAN8 jr z, .skip ; if noise channel call Audio3_SetSfxTempo ld a, [wSfxTempo] @@ -751,10 +751,10 @@ Audio3_note_pitch: cp rest_cmd jr nz, .notRest ld a, c - cp Ch5 + cp CHAN5 jr nc, .next ; If this isn't an SFX channel, try the corresponding SFX channel. - ld hl, wChannelSoundIDs + Ch5 + ld hl, wChannelSoundIDs + CHAN5 add hl, bc ld a, [hl] and a @@ -762,9 +762,9 @@ Audio3_note_pitch: ; fall through .next ld a, c - cp Ch3 + cp CHAN3 jr z, .channel3 - cp Ch7 + cp CHAN7 jr nz, .notChannel3 .channel3 ld b, 0 @@ -800,10 +800,10 @@ Audio3_note_pitch: .skipPitchSlide push de ld a, c - cp Ch5 + cp CHAN5 jr nc, .sfxChannel ; if sfx channel ; If this isn't an SFX channel, try the corresponding SFX channel. - ld hl, wChannelSoundIDs + Ch5 + ld hl, wChannelSoundIDs + CHAN5 ld d, 0 ld e, a add hl, de @@ -848,12 +848,12 @@ Audio3_EnableChannelOutput: or [hl] ; set this channel's bits ld d, a ld a, c - cp Ch8 + cp CHAN8 jr z, .noiseChannelOrNoSfx - cp Ch5 + cp CHAN5 jr nc, .skip ; if sfx channel ; If this isn't an SFX channel, try the corresponding SFX channel. - ld hl, wChannelSoundIDs + Ch5 + ld hl, wChannelSoundIDs + CHAN5 add hl, bc ld a, [hl] and a @@ -883,9 +883,9 @@ Audio3_ApplyDutyCycleAndSoundLength: add hl, bc ld d, [hl] ld a, c - cp Ch3 + cp CHAN3 jr z, .skipDuty ; if music channel 3 - cp Ch7 + cp CHAN7 jr z, .skipDuty ; if sfx channel 3 ; include duty cycle (except on channel 3 which doesn't have it) ld a, d @@ -904,15 +904,15 @@ Audio3_ApplyDutyCycleAndSoundLength: Audio3_ApplyWavePatternAndFrequency: ld a, c - cp Ch3 + cp CHAN3 jr z, .channel3 - cp Ch7 + cp CHAN7 jr nz, .notChannel3 ; fall through .channel3 push de ld de, wMusicWaveInstrument - cp Ch3 + cp CHAN3 jr z, .next ld de, wSfxWaveInstrument .next @@ -1016,7 +1016,7 @@ Audio3_GoBackOneCommandIfCry: Audio3_IsCry: ; Returns whether the currently playing audio is a cry in carry. - ld a, [wChannelSoundIDs + Ch5] + ld a, [wChannelSoundIDs + CHAN5] cp CRY_SFX_START jr nc, .next jr .no @@ -1453,7 +1453,7 @@ Audio3_PlaySound:: and a jr z, .playChannel ld a, e - cp Ch8 + cp CHAN8 jr nz, .notNoiseChannel ld a, [wSoundID] cp NOISE_INSTRUMENTS_END @@ -1552,7 +1552,7 @@ Audio3_PlaySound:: add hl, de ld [hl], a ld a, e - cp Ch5 + cp CHAN5 jr nz, .skipSweepDisable ld a, $8 ldh [rNR10], a ; sweep off @@ -1654,7 +1654,7 @@ Audio3_PlaySound:: ld a, [wSoundID] ld [hl], a pop af - cp Ch4 + cp CHAN4 jr c, .skipSettingFlag ld hl, wChannelFlags1 add hl, bc @@ -1686,12 +1686,12 @@ Audio3_PlaySound:: jr c, .cry jr .done .cry - ld hl, wChannelSoundIDs + Ch5 + ld hl, wChannelSoundIDs + CHAN5 ld [hli], a ld [hli], a ld [hli], a ld [hl], a - ld hl, wChannelCommandPointers + Ch7 * 2 ; sfx wave channel pointer + ld hl, wChannelCommandPointers + CHAN7 * 2 ; sfx wave channel pointer ld de, Audio3_CryRet ld [hl], e inc hl diff --git a/audio/headers/musicheaders1.asm b/audio/headers/musicheaders1.asm index ef85eae6..fb387671 100644 --- a/audio/headers/musicheaders1.asm +++ b/audio/headers/musicheaders1.asm @@ -1,66 +1,135 @@ Music_PalletTown:: - audio_header Music_PalletTown, Ch1, Ch2, Ch3 + channel_count 3 + channel 1, Music_PalletTown_Ch1 + channel 2, Music_PalletTown_Ch2 + channel 3, Music_PalletTown_Ch3 Music_Pokecenter:: - audio_header Music_Pokecenter, Ch1, Ch2, Ch3 + channel_count 3 + channel 1, Music_Pokecenter_Ch1 + channel 2, Music_Pokecenter_Ch2 + channel 3, Music_Pokecenter_Ch3 Music_Gym:: - audio_header Music_Gym, Ch1, Ch2, Ch3 + channel_count 3 + channel 1, Music_Gym_Ch1 + channel 2, Music_Gym_Ch2 + channel 3, Music_Gym_Ch3 ; Viridian City, Pewter City, Saffron City Music_Cities1:: - audio_header Music_Cities1, Ch1, Ch2, Ch3, Ch4 + channel_count 4 + channel 1, Music_Cities1_Ch1 + channel 2, Music_Cities1_Ch2 + channel 3, Music_Cities1_Ch3 + channel 4, Music_Cities1_Ch4 ; Cerulean City, Fuchsia City Music_Cities2:: - audio_header Music_Cities2, Ch1, Ch2, Ch3 + channel_count 3 + channel 1, Music_Cities2_Ch1 + channel 2, Music_Cities2_Ch2 + channel 3, Music_Cities2_Ch3 Music_Celadon:: - audio_header Music_Celadon, Ch1, Ch2, Ch3 + channel_count 3 + channel 1, Music_Celadon_Ch1 + channel 2, Music_Celadon_Ch2 + channel 3, Music_Celadon_Ch3 Music_Cinnabar:: - audio_header Music_Cinnabar, Ch1, Ch2, Ch3 + channel_count 3 + channel 1, Music_Cinnabar_Ch1 + channel 2, Music_Cinnabar_Ch2 + channel 3, Music_Cinnabar_Ch3 Music_Vermilion:: - audio_header Music_Vermilion, Ch1, Ch2, Ch3, Ch4 + channel_count 4 + channel 1, Music_Vermilion_Ch1 + channel 2, Music_Vermilion_Ch2 + channel 3, Music_Vermilion_Ch3 + channel 4, Music_Vermilion_Ch4 Music_Lavender:: - audio_header Music_Lavender, Ch1, Ch2, Ch3, Ch4 + channel_count 4 + channel 1, Music_Lavender_Ch1 + channel 2, Music_Lavender_Ch2 + channel 3, Music_Lavender_Ch3 + channel 4, Music_Lavender_Ch4 Music_SSAnne:: - audio_header Music_SSAnne, Ch1, Ch2, Ch3 + channel_count 3 + channel 1, Music_SSAnne_Ch1 + channel 2, Music_SSAnne_Ch2 + channel 3, Music_SSAnne_Ch3 Music_MeetProfOak:: - audio_header Music_MeetProfOak, Ch1, Ch2, Ch3 + channel_count 3 + channel 1, Music_MeetProfOak_Ch1 + channel 2, Music_MeetProfOak_Ch2 + channel 3, Music_MeetProfOak_Ch3 Music_MeetRival:: - audio_header Music_MeetRival, Ch1, Ch2, Ch3 + channel_count 3 + channel 1, Music_MeetRival_Ch1 + channel 2, Music_MeetRival_Ch2 + channel 3, Music_MeetRival_Ch3 Music_MuseumGuy:: - audio_header Music_MuseumGuy, Ch1, Ch2, Ch3, Ch4 + channel_count 4 + channel 1, Music_MuseumGuy_Ch1 + channel 2, Music_MuseumGuy_Ch2 + channel 3, Music_MuseumGuy_Ch3 + channel 4, Music_MuseumGuy_Ch4 Music_SafariZone:: - audio_header Music_SafariZone, Ch1, Ch2, Ch3 + channel_count 3 + channel 1, Music_SafariZone_Ch1 + channel 2, Music_SafariZone_Ch2 + channel 3, Music_SafariZone_Ch3 Music_PkmnHealed:: - audio_header Music_PkmnHealed, Ch1, Ch2, Ch3 + channel_count 3 + channel 1, Music_PkmnHealed_Ch1 + channel 2, Music_PkmnHealed_Ch2 + channel 3, Music_PkmnHealed_Ch3 ; Routes 1 and 2 Music_Routes1:: - audio_header Music_Routes1, Ch1, Ch2, Ch3, Ch4 + channel_count 4 + channel 1, Music_Routes1_Ch1 + channel 2, Music_Routes1_Ch2 + channel 3, Music_Routes1_Ch3 + channel 4, Music_Routes1_Ch4 ; Routes 24 and 25 Music_Routes2:: - audio_header Music_Routes2, Ch1, Ch2, Ch3, Ch4 + channel_count 4 + channel 1, Music_Routes2_Ch1 + channel 2, Music_Routes2_Ch2 + channel 3, Music_Routes2_Ch3 + channel 4, Music_Routes2_Ch4 ; Routes 3, 4, 5, 6, 7, 8, 9, 10, 16, 17, 18, 19, 20, 21, 22 Music_Routes3:: - audio_header Music_Routes3, Ch1, Ch2, Ch3, Ch4 + channel_count 4 + channel 1, Music_Routes3_Ch1 + channel 2, Music_Routes3_Ch2 + channel 3, Music_Routes3_Ch3 + channel 4, Music_Routes3_Ch4 ; Routes 11, 12, 13, 14, 15 Music_Routes4:: - audio_header Music_Routes4, Ch1, Ch2, Ch3, Ch4 + channel_count 4 + channel 1, Music_Routes4_Ch1 + channel 2, Music_Routes4_Ch2 + channel 3, Music_Routes4_Ch3 + channel 4, Music_Routes4_Ch4 ; Route 23, Indigo Plateau Music_IndigoPlateau:: - audio_header Music_IndigoPlateau, Ch1, Ch2, Ch3, Ch4 + channel_count 4 + channel 1, Music_IndigoPlateau_Ch1 + channel 2, Music_IndigoPlateau_Ch2 + channel 3, Music_IndigoPlateau_Ch3 + channel 4, Music_IndigoPlateau_Ch4 diff --git a/audio/headers/musicheaders2.asm b/audio/headers/musicheaders2.asm index d6cca9a9..c24c08d6 100644 --- a/audio/headers/musicheaders2.asm +++ b/audio/headers/musicheaders2.asm @@ -1,20 +1,41 @@ Music_GymLeaderBattle:: - audio_header Music_GymLeaderBattle, Ch1, Ch2, Ch3 + channel_count 3 + channel 1, Music_GymLeaderBattle_Ch1 + channel 2, Music_GymLeaderBattle_Ch2 + channel 3, Music_GymLeaderBattle_Ch3 Music_TrainerBattle:: - audio_header Music_TrainerBattle, Ch1, Ch2, Ch3 + channel_count 3 + channel 1, Music_TrainerBattle_Ch1 + channel 2, Music_TrainerBattle_Ch2 + channel 3, Music_TrainerBattle_Ch3 Music_WildBattle:: - audio_header Music_WildBattle, Ch1, Ch2, Ch3 + channel_count 3 + channel 1, Music_WildBattle_Ch1 + channel 2, Music_WildBattle_Ch2 + channel 3, Music_WildBattle_Ch3 Music_FinalBattle:: - audio_header Music_FinalBattle, Ch1, Ch2, Ch3 + channel_count 3 + channel 1, Music_FinalBattle_Ch1 + channel 2, Music_FinalBattle_Ch2 + channel 3, Music_FinalBattle_Ch3 Music_DefeatedTrainer:: - audio_header Music_DefeatedTrainer, Ch1, Ch2, Ch3 + channel_count 3 + channel 1, Music_DefeatedTrainer_Ch1 + channel 2, Music_DefeatedTrainer_Ch2 + channel 3, Music_DefeatedTrainer_Ch3 Music_DefeatedWildMon:: - audio_header Music_DefeatedWildMon, Ch1, Ch2, Ch3 + channel_count 3 + channel 1, Music_DefeatedWildMon_Ch1 + channel 2, Music_DefeatedWildMon_Ch2 + channel 3, Music_DefeatedWildMon_Ch3 Music_DefeatedGymLeader:: - audio_header Music_DefeatedGymLeader, Ch1, Ch2, Ch3 + channel_count 3 + channel 1, Music_DefeatedGymLeader_Ch1 + channel 2, Music_DefeatedGymLeader_Ch2 + channel 3, Music_DefeatedGymLeader_Ch3 diff --git a/audio/headers/musicheaders3.asm b/audio/headers/musicheaders3.asm index ca21b419..82699f8e 100644 --- a/audio/headers/musicheaders3.asm +++ b/audio/headers/musicheaders3.asm @@ -1,56 +1,116 @@ Music_TitleScreen:: - audio_header Music_TitleScreen, Ch1, Ch2, Ch3, Ch4 + channel_count 4 + channel 1, Music_TitleScreen_Ch1 + channel 2, Music_TitleScreen_Ch2 + channel 3, Music_TitleScreen_Ch3 + channel 4, Music_TitleScreen_Ch4 Music_Credits:: - audio_header Music_Credits, Ch1, Ch2, Ch3 + channel_count 3 + channel 1, Music_Credits_Ch1 + channel 2, Music_Credits_Ch2 + channel 3, Music_Credits_Ch3 Music_HallOfFame:: - audio_header Music_HallOfFame, Ch1, Ch2, Ch3 + channel_count 3 + channel 1, Music_HallOfFame_Ch1 + channel 2, Music_HallOfFame_Ch2 + channel 3, Music_HallOfFame_Ch3 Music_OaksLab:: - audio_header Music_OaksLab, Ch1, Ch2, Ch3 + channel_count 3 + channel 1, Music_OaksLab_Ch1 + channel 2, Music_OaksLab_Ch2 + channel 3, Music_OaksLab_Ch3 Music_JigglypuffSong:: - audio_header Music_JigglypuffSong, Ch1, Ch2 + channel_count 2 + channel 1, Music_JigglypuffSong_Ch1 + channel 2, Music_JigglypuffSong_Ch2 Music_BikeRiding:: - audio_header Music_BikeRiding, Ch1, Ch2, Ch3, Ch4 + channel_count 4 + channel 1, Music_BikeRiding_Ch1 + channel 2, Music_BikeRiding_Ch2 + channel 3, Music_BikeRiding_Ch3 + channel 4, Music_BikeRiding_Ch4 Music_Surfing:: - audio_header Music_Surfing, Ch1, Ch2, Ch3 + channel_count 3 + channel 1, Music_Surfing_Ch1 + channel 2, Music_Surfing_Ch2 + channel 3, Music_Surfing_Ch3 Music_GameCorner:: - audio_header Music_GameCorner, Ch1, Ch2, Ch3 + channel_count 3 + channel 1, Music_GameCorner_Ch1 + channel 2, Music_GameCorner_Ch2 + channel 3, Music_GameCorner_Ch3 Music_IntroBattle:: - audio_header Music_IntroBattle, Ch1, Ch2, Ch3, Ch4 + channel_count 4 + channel 1, Music_IntroBattle_Ch1 + channel 2, Music_IntroBattle_Ch2 + channel 3, Music_IntroBattle_Ch3 + channel 4, Music_IntroBattle_Ch4 ; Power Plant, Cerulean Cave, Rocket HQ Music_Dungeon1:: - audio_header Music_Dungeon1, Ch1, Ch2, Ch3, Ch4 + channel_count 4 + channel 1, Music_Dungeon1_Ch1 + channel 2, Music_Dungeon1_Ch2 + channel 3, Music_Dungeon1_Ch3 + channel 4, Music_Dungeon1_Ch4 ; Viridian Forest, Seafoam Islands Music_Dungeon2:: - audio_header Music_Dungeon2, Ch1, Ch2, Ch3, Ch4 + channel_count 4 + channel 1, Music_Dungeon2_Ch1 + channel 2, Music_Dungeon2_Ch2 + channel 3, Music_Dungeon2_Ch3 + channel 4, Music_Dungeon2_Ch4 ; Mt. Moon, Rock Tunnel, Victory Road Music_Dungeon3:: - audio_header Music_Dungeon3, Ch1, Ch2, Ch3, Ch4 + channel_count 4 + channel 1, Music_Dungeon3_Ch1 + channel 2, Music_Dungeon3_Ch2 + channel 3, Music_Dungeon3_Ch3 + channel 4, Music_Dungeon3_Ch4 Music_CinnabarMansion:: - audio_header Music_CinnabarMansion, Ch1, Ch2, Ch3, Ch4 + channel_count 4 + channel 1, Music_CinnabarMansion_Ch1 + channel 2, Music_CinnabarMansion_Ch2 + channel 3, Music_CinnabarMansion_Ch3 + channel 4, Music_CinnabarMansion_Ch4 Music_PokemonTower:: - audio_header Music_PokemonTower, Ch1, Ch2, Ch3 + channel_count 3 + channel 1, Music_PokemonTower_Ch1 + channel 2, Music_PokemonTower_Ch2 + channel 3, Music_PokemonTower_Ch3 Music_SilphCo:: - audio_header Music_SilphCo, Ch1, Ch2, Ch3 + channel_count 3 + channel 1, Music_SilphCo_Ch1 + channel 2, Music_SilphCo_Ch2 + channel 3, Music_SilphCo_Ch3 Music_MeetEvilTrainer:: - audio_header Music_MeetEvilTrainer, Ch1, Ch2, Ch3 + channel_count 3 + channel 1, Music_MeetEvilTrainer_Ch1 + channel 2, Music_MeetEvilTrainer_Ch2 + channel 3, Music_MeetEvilTrainer_Ch3 Music_MeetFemaleTrainer:: - audio_header Music_MeetFemaleTrainer, Ch1, Ch2, Ch3 + channel_count 3 + channel 1, Music_MeetFemaleTrainer_Ch1 + channel 2, Music_MeetFemaleTrainer_Ch2 + channel 3, Music_MeetFemaleTrainer_Ch3 Music_MeetMaleTrainer:: - audio_header Music_MeetMaleTrainer, Ch1, Ch2, Ch3 + channel_count 3 + channel 1, Music_MeetMaleTrainer_Ch1 + channel 2, Music_MeetMaleTrainer_Ch2 + channel 3, Music_MeetMaleTrainer_Ch3 diff --git a/audio/headers/sfxheaders1.asm b/audio/headers/sfxheaders1.asm index 2d5eca4a..297b7582 100644 --- a/audio/headers/sfxheaders1.asm +++ b/audio/headers/sfxheaders1.asm @@ -2,287 +2,472 @@ SFX_Headers_1:: db $ff, $ff, $ff ; padding SFX_Noise_Instrument01_1:: - audio_header SFX_Noise_Instrument01_1, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument01_1_Ch8 SFX_Noise_Instrument02_1:: - audio_header SFX_Noise_Instrument02_1, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument02_1_Ch8 SFX_Noise_Instrument03_1:: - audio_header SFX_Noise_Instrument03_1, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument03_1_Ch8 SFX_Noise_Instrument04_1:: - audio_header SFX_Noise_Instrument04_1, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument04_1_Ch8 SFX_Noise_Instrument05_1:: - audio_header SFX_Noise_Instrument05_1, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument05_1_Ch8 SFX_Noise_Instrument06_1:: - audio_header SFX_Noise_Instrument06_1, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument06_1_Ch8 SFX_Noise_Instrument07_1:: - audio_header SFX_Noise_Instrument07_1, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument07_1_Ch8 SFX_Noise_Instrument08_1:: - audio_header SFX_Noise_Instrument08_1, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument08_1_Ch8 SFX_Noise_Instrument09_1:: - audio_header SFX_Noise_Instrument09_1, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument09_1_Ch8 SFX_Noise_Instrument10_1:: - audio_header SFX_Noise_Instrument10_1, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument10_1_Ch8 SFX_Noise_Instrument11_1:: - audio_header SFX_Noise_Instrument11_1, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument11_1_Ch8 SFX_Noise_Instrument12_1:: - audio_header SFX_Noise_Instrument12_1, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument12_1_Ch8 SFX_Noise_Instrument13_1:: - audio_header SFX_Noise_Instrument13_1, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument13_1_Ch8 SFX_Noise_Instrument14_1:: - audio_header SFX_Noise_Instrument14_1, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument14_1_Ch8 SFX_Noise_Instrument15_1:: - audio_header SFX_Noise_Instrument15_1, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument15_1_Ch8 SFX_Noise_Instrument16_1:: - audio_header SFX_Noise_Instrument16_1, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument16_1_Ch8 SFX_Noise_Instrument17_1:: - audio_header SFX_Noise_Instrument17_1, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument17_1_Ch8 SFX_Noise_Instrument18_1:: - audio_header SFX_Noise_Instrument18_1, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument18_1_Ch8 SFX_Noise_Instrument19_1:: - audio_header SFX_Noise_Instrument19_1, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument19_1_Ch8 SFX_Cry00_1:: - audio_header SFX_Cry00_1, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry00_1_Ch5 + channel 6, SFX_Cry00_1_Ch6 + channel 8, SFX_Cry00_1_Ch8 SFX_Cry01_1:: - audio_header SFX_Cry01_1, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry01_1_Ch5 + channel 6, SFX_Cry01_1_Ch6 + channel 8, SFX_Cry01_1_Ch8 SFX_Cry02_1:: - audio_header SFX_Cry02_1, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry02_1_Ch5 + channel 6, SFX_Cry02_1_Ch6 + channel 8, SFX_Cry02_1_Ch8 SFX_Cry03_1:: - audio_header SFX_Cry03_1, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry03_1_Ch5 + channel 6, SFX_Cry03_1_Ch6 + channel 8, SFX_Cry03_1_Ch8 SFX_Cry04_1:: - audio_header SFX_Cry04_1, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry04_1_Ch5 + channel 6, SFX_Cry04_1_Ch6 + channel 8, SFX_Cry04_1_Ch8 SFX_Cry05_1:: - audio_header SFX_Cry05_1, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry05_1_Ch5 + channel 6, SFX_Cry05_1_Ch6 + channel 8, SFX_Cry05_1_Ch8 SFX_Cry06_1:: - audio_header SFX_Cry06_1, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry06_1_Ch5 + channel 6, SFX_Cry06_1_Ch6 + channel 8, SFX_Cry06_1_Ch8 SFX_Cry07_1:: - audio_header SFX_Cry07_1, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry07_1_Ch5 + channel 6, SFX_Cry07_1_Ch6 + channel 8, SFX_Cry07_1_Ch8 SFX_Cry08_1:: - audio_header SFX_Cry08_1, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry08_1_Ch5 + channel 6, SFX_Cry08_1_Ch6 + channel 8, SFX_Cry08_1_Ch8 SFX_Cry09_1:: - audio_header SFX_Cry09_1, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry09_1_Ch5 + channel 6, SFX_Cry09_1_Ch6 + channel 8, SFX_Cry09_1_Ch8 SFX_Cry0A_1:: - audio_header SFX_Cry0A_1, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry0A_1_Ch5 + channel 6, SFX_Cry0A_1_Ch6 + channel 8, SFX_Cry0A_1_Ch8 SFX_Cry0B_1:: - audio_header SFX_Cry0B_1, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry0B_1_Ch5 + channel 6, SFX_Cry0B_1_Ch6 + channel 8, SFX_Cry0B_1_Ch8 SFX_Cry0C_1:: - audio_header SFX_Cry0C_1, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry0C_1_Ch5 + channel 6, SFX_Cry0C_1_Ch6 + channel 8, SFX_Cry0C_1_Ch8 SFX_Cry0D_1:: - audio_header SFX_Cry0D_1, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry0D_1_Ch5 + channel 6, SFX_Cry0D_1_Ch6 + channel 8, SFX_Cry0D_1_Ch8 SFX_Cry0E_1:: - audio_header SFX_Cry0E_1, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry0E_1_Ch5 + channel 6, SFX_Cry0E_1_Ch6 + channel 8, SFX_Cry0E_1_Ch8 SFX_Cry0F_1:: - audio_header SFX_Cry0F_1, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry0F_1_Ch5 + channel 6, SFX_Cry0F_1_Ch6 + channel 8, SFX_Cry0F_1_Ch8 SFX_Cry10_1:: - audio_header SFX_Cry10_1, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry10_1_Ch5 + channel 6, SFX_Cry10_1_Ch6 + channel 8, SFX_Cry10_1_Ch8 SFX_Cry11_1:: - audio_header SFX_Cry11_1, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry11_1_Ch5 + channel 6, SFX_Cry11_1_Ch6 + channel 8, SFX_Cry11_1_Ch8 SFX_Cry12_1:: - audio_header SFX_Cry12_1, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry12_1_Ch5 + channel 6, SFX_Cry12_1_Ch6 + channel 8, SFX_Cry12_1_Ch8 SFX_Cry13_1:: - audio_header SFX_Cry13_1, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry13_1_Ch5 + channel 6, SFX_Cry13_1_Ch6 + channel 8, SFX_Cry13_1_Ch8 SFX_Cry14_1:: - audio_header SFX_Cry14_1, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry14_1_Ch5 + channel 6, SFX_Cry14_1_Ch6 + channel 8, SFX_Cry14_1_Ch8 SFX_Cry15_1:: - audio_header SFX_Cry15_1, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry15_1_Ch5 + channel 6, SFX_Cry15_1_Ch6 + channel 8, SFX_Cry15_1_Ch8 SFX_Cry16_1:: - audio_header SFX_Cry16_1, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry16_1_Ch5 + channel 6, SFX_Cry16_1_Ch6 + channel 8, SFX_Cry16_1_Ch8 SFX_Cry17_1:: - audio_header SFX_Cry17_1, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry17_1_Ch5 + channel 6, SFX_Cry17_1_Ch6 + channel 8, SFX_Cry17_1_Ch8 SFX_Cry18_1:: - audio_header SFX_Cry18_1, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry18_1_Ch5 + channel 6, SFX_Cry18_1_Ch6 + channel 8, SFX_Cry18_1_Ch8 SFX_Cry19_1:: - audio_header SFX_Cry19_1, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry19_1_Ch5 + channel 6, SFX_Cry19_1_Ch6 + channel 8, SFX_Cry19_1_Ch8 SFX_Cry1A_1:: - audio_header SFX_Cry1A_1, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry1A_1_Ch5 + channel 6, SFX_Cry1A_1_Ch6 + channel 8, SFX_Cry1A_1_Ch8 SFX_Cry1B_1:: - audio_header SFX_Cry1B_1, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry1B_1_Ch5 + channel 6, SFX_Cry1B_1_Ch6 + channel 8, SFX_Cry1B_1_Ch8 SFX_Cry1C_1:: - audio_header SFX_Cry1C_1, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry1C_1_Ch5 + channel 6, SFX_Cry1C_1_Ch6 + channel 8, SFX_Cry1C_1_Ch8 SFX_Cry1D_1:: - audio_header SFX_Cry1D_1, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry1D_1_Ch5 + channel 6, SFX_Cry1D_1_Ch6 + channel 8, SFX_Cry1D_1_Ch8 SFX_Cry1E_1:: - audio_header SFX_Cry1E_1, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry1E_1_Ch5 + channel 6, SFX_Cry1E_1_Ch6 + channel 8, SFX_Cry1E_1_Ch8 SFX_Cry1F_1:: - audio_header SFX_Cry1F_1, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry1F_1_Ch5 + channel 6, SFX_Cry1F_1_Ch6 + channel 8, SFX_Cry1F_1_Ch8 SFX_Cry20_1:: - audio_header SFX_Cry20_1, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry20_1_Ch5 + channel 6, SFX_Cry20_1_Ch6 + channel 8, SFX_Cry20_1_Ch8 SFX_Cry21_1:: - audio_header SFX_Cry21_1, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry21_1_Ch5 + channel 6, SFX_Cry21_1_Ch6 + channel 8, SFX_Cry21_1_Ch8 SFX_Cry22_1:: - audio_header SFX_Cry22_1, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry22_1_Ch5 + channel 6, SFX_Cry22_1_Ch6 + channel 8, SFX_Cry22_1_Ch8 SFX_Cry23_1:: - audio_header SFX_Cry23_1, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry23_1_Ch5 + channel 6, SFX_Cry23_1_Ch6 + channel 8, SFX_Cry23_1_Ch8 SFX_Cry24_1:: - audio_header SFX_Cry24_1, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry24_1_Ch5 + channel 6, SFX_Cry24_1_Ch6 + channel 8, SFX_Cry24_1_Ch8 SFX_Cry25_1:: - audio_header SFX_Cry25_1, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry25_1_Ch5 + channel 6, SFX_Cry25_1_Ch6 + channel 8, SFX_Cry25_1_Ch8 SFX_Get_Item1_1:: - audio_header SFX_Get_Item1_1, Ch5, Ch6, Ch7 + channel_count 3 + channel 5, SFX_Get_Item1_1_Ch5 + channel 6, SFX_Get_Item1_1_Ch6 + channel 7, SFX_Get_Item1_1_Ch7 SFX_Get_Item2_1:: - audio_header SFX_Get_Item2_1, Ch5, Ch6, Ch7 + channel_count 3 + channel 5, SFX_Get_Item2_1_Ch5 + channel 6, SFX_Get_Item2_1_Ch6 + channel 7, SFX_Get_Item2_1_Ch7 SFX_Tink_1:: - audio_header SFX_Tink_1, Ch5 + channel_count 1 + channel 5, SFX_Tink_1_Ch5 SFX_Heal_HP_1:: - audio_header SFX_Heal_HP_1, Ch5 + channel_count 1 + channel 5, SFX_Heal_HP_1_Ch5 SFX_Heal_Ailment_1:: - audio_header SFX_Heal_Ailment_1, Ch5 + channel_count 1 + channel 5, SFX_Heal_Ailment_1_Ch5 SFX_Start_Menu_1:: - audio_header SFX_Start_Menu_1, Ch8 + channel_count 1 + channel 8, SFX_Start_Menu_1_Ch8 SFX_Press_AB_1:: - audio_header SFX_Press_AB_1, Ch5 + channel_count 1 + channel 5, SFX_Press_AB_1_Ch5 SFX_Pokedex_Rating_1:: - audio_header SFX_Pokedex_Rating_1, Ch5, Ch6, Ch7 + channel_count 3 + channel 5, SFX_Pokedex_Rating_1_Ch5 + channel 6, SFX_Pokedex_Rating_1_Ch6 + channel 7, SFX_Pokedex_Rating_1_Ch7 SFX_Get_Key_Item_1:: - audio_header SFX_Get_Key_Item_1, Ch5, Ch6, Ch7 + channel_count 3 + channel 5, SFX_Get_Key_Item_1_Ch5 + channel 6, SFX_Get_Key_Item_1_Ch6 + channel 7, SFX_Get_Key_Item_1_Ch7 SFX_Poisoned_1:: - audio_header SFX_Poisoned_1, Ch5 + channel_count 1 + channel 5, SFX_Poisoned_1_Ch5 SFX_Trade_Machine_1:: - audio_header SFX_Trade_Machine_1, Ch5 + channel_count 1 + channel 5, SFX_Trade_Machine_1_Ch5 SFX_Turn_On_PC_1:: - audio_header SFX_Turn_On_PC_1, Ch5 + channel_count 1 + channel 5, SFX_Turn_On_PC_1_Ch5 SFX_Turn_Off_PC_1:: - audio_header SFX_Turn_Off_PC_1, Ch5 + channel_count 1 + channel 5, SFX_Turn_Off_PC_1_Ch5 SFX_Enter_PC_1:: - audio_header SFX_Enter_PC_1, Ch5 + channel_count 1 + channel 5, SFX_Enter_PC_1_Ch5 SFX_Shrink_1:: - audio_header SFX_Shrink_1, Ch5 + channel_count 1 + channel 5, SFX_Shrink_1_Ch5 SFX_Switch_1:: - audio_header SFX_Switch_1, Ch5 + channel_count 1 + channel 5, SFX_Switch_1_Ch5 SFX_Healing_Machine_1:: - audio_header SFX_Healing_Machine_1, Ch5 + channel_count 1 + channel 5, SFX_Healing_Machine_1_Ch5 SFX_Teleport_Exit1_1:: - audio_header SFX_Teleport_Exit1_1, Ch5 + channel_count 1 + channel 5, SFX_Teleport_Exit1_1_Ch5 SFX_Teleport_Enter1_1:: - audio_header SFX_Teleport_Enter1_1, Ch5 + channel_count 1 + channel 5, SFX_Teleport_Enter1_1_Ch5 SFX_Teleport_Exit2_1:: - audio_header SFX_Teleport_Exit2_1, Ch5 + channel_count 1 + channel 5, SFX_Teleport_Exit2_1_Ch5 SFX_Ledge_1:: - audio_header SFX_Ledge_1, Ch5 + channel_count 1 + channel 5, SFX_Ledge_1_Ch5 SFX_Teleport_Enter2_1:: - audio_header SFX_Teleport_Enter2_1, Ch8 + channel_count 1 + channel 8, SFX_Teleport_Enter2_1_Ch8 SFX_Fly_1:: - audio_header SFX_Fly_1, Ch8 + channel_count 1 + channel 8, SFX_Fly_1_Ch8 SFX_Denied_1:: - audio_header SFX_Denied_1, Ch5, Ch6 + channel_count 2 + channel 5, SFX_Denied_1_Ch5 + channel 6, SFX_Denied_1_Ch6 SFX_Arrow_Tiles_1:: - audio_header SFX_Arrow_Tiles_1, Ch5 + channel_count 1 + channel 5, SFX_Arrow_Tiles_1_Ch5 SFX_Push_Boulder_1:: - audio_header SFX_Push_Boulder_1, Ch8 + channel_count 1 + channel 8, SFX_Push_Boulder_1_Ch8 SFX_SS_Anne_Horn_1:: - audio_header SFX_SS_Anne_Horn_1, Ch5, Ch6 + channel_count 2 + channel 5, SFX_SS_Anne_Horn_1_Ch5 + channel 6, SFX_SS_Anne_Horn_1_Ch6 SFX_Withdraw_Deposit_1:: - audio_header SFX_Withdraw_Deposit_1, Ch5 + channel_count 1 + channel 5, SFX_Withdraw_Deposit_1_Ch5 SFX_Cut_1:: - audio_header SFX_Cut_1, Ch8 + channel_count 1 + channel 8, SFX_Cut_1_Ch8 SFX_Go_Inside_1:: - audio_header SFX_Go_Inside_1, Ch8 + channel_count 1 + channel 8, SFX_Go_Inside_1_Ch8 SFX_Swap_1:: - audio_header SFX_Swap_1, Ch5, Ch6 + channel_count 2 + channel 5, SFX_Swap_1_Ch5 + channel 6, SFX_Swap_1_Ch6 SFX_59_1:: - audio_header SFX_59_1, Ch5, Ch6 + channel_count 2 + channel 5, SFX_59_1_Ch5 + channel 6, SFX_59_1_Ch6 SFX_Purchase_1:: - audio_header SFX_Purchase_1, Ch5, Ch6 + channel_count 2 + channel 5, SFX_Purchase_1_Ch5 + channel 6, SFX_Purchase_1_Ch6 SFX_Collision_1:: - audio_header SFX_Collision_1, Ch5 + channel_count 1 + channel 5, SFX_Collision_1_Ch5 SFX_Go_Outside_1:: - audio_header SFX_Go_Outside_1, Ch8 + channel_count 1 + channel 8, SFX_Go_Outside_1_Ch8 SFX_Save_1:: - audio_header SFX_Save_1, Ch5, Ch6 + channel_count 2 + channel 5, SFX_Save_1_Ch5 + channel 6, SFX_Save_1_Ch6 ; the Pokeflute sound effect directly hijacks channel 3 SFX_Pokeflute:: - audio_header SFX_Pokeflute, Ch3 + channel_count 1 + channel 3, SFX_Pokeflute_Ch3 SFX_Safari_Zone_PA:: - audio_header SFX_Safari_Zone_PA, Ch5 + channel_count 1 + channel 5, SFX_Safari_Zone_PA_Ch5 diff --git a/audio/headers/sfxheaders2.asm b/audio/headers/sfxheaders2.asm index 912d137e..1ccbf265 100644 --- a/audio/headers/sfxheaders2.asm +++ b/audio/headers/sfxheaders2.asm @@ -2,358 +2,591 @@ SFX_Headers_2:: db $ff, $ff, $ff ; padding SFX_Noise_Instrument01_2:: - audio_header SFX_Noise_Instrument01_2, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument01_2_Ch8 SFX_Noise_Instrument02_2:: - audio_header SFX_Noise_Instrument02_2, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument02_2_Ch8 SFX_Noise_Instrument03_2:: - audio_header SFX_Noise_Instrument03_2, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument03_2_Ch8 SFX_Noise_Instrument04_2:: - audio_header SFX_Noise_Instrument04_2, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument04_2_Ch8 SFX_Noise_Instrument05_2:: - audio_header SFX_Noise_Instrument05_2, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument05_2_Ch8 SFX_Noise_Instrument06_2:: - audio_header SFX_Noise_Instrument06_2, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument06_2_Ch8 SFX_Noise_Instrument07_2:: - audio_header SFX_Noise_Instrument07_2, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument07_2_Ch8 SFX_Noise_Instrument08_2:: - audio_header SFX_Noise_Instrument08_2, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument08_2_Ch8 SFX_Noise_Instrument09_2:: - audio_header SFX_Noise_Instrument09_2, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument09_2_Ch8 SFX_Noise_Instrument10_2:: - audio_header SFX_Noise_Instrument10_2, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument10_2_Ch8 SFX_Noise_Instrument11_2:: - audio_header SFX_Noise_Instrument11_2, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument11_2_Ch8 SFX_Noise_Instrument12_2:: - audio_header SFX_Noise_Instrument12_2, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument12_2_Ch8 SFX_Noise_Instrument13_2:: - audio_header SFX_Noise_Instrument13_2, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument13_2_Ch8 SFX_Noise_Instrument14_2:: - audio_header SFX_Noise_Instrument14_2, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument14_2_Ch8 SFX_Noise_Instrument15_2:: - audio_header SFX_Noise_Instrument15_2, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument15_2_Ch8 SFX_Noise_Instrument16_2:: - audio_header SFX_Noise_Instrument16_2, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument16_2_Ch8 SFX_Noise_Instrument17_2:: - audio_header SFX_Noise_Instrument17_2, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument17_2_Ch8 SFX_Noise_Instrument18_2:: - audio_header SFX_Noise_Instrument18_2, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument18_2_Ch8 SFX_Noise_Instrument19_2:: - audio_header SFX_Noise_Instrument19_2, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument19_2_Ch8 SFX_Cry00_2:: - audio_header SFX_Cry00_2, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry00_2_Ch5 + channel 6, SFX_Cry00_2_Ch6 + channel 8, SFX_Cry00_2_Ch8 SFX_Cry01_2:: - audio_header SFX_Cry01_2, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry01_2_Ch5 + channel 6, SFX_Cry01_2_Ch6 + channel 8, SFX_Cry01_2_Ch8 SFX_Cry02_2:: - audio_header SFX_Cry02_2, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry02_2_Ch5 + channel 6, SFX_Cry02_2_Ch6 + channel 8, SFX_Cry02_2_Ch8 SFX_Cry03_2:: - audio_header SFX_Cry03_2, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry03_2_Ch5 + channel 6, SFX_Cry03_2_Ch6 + channel 8, SFX_Cry03_2_Ch8 SFX_Cry04_2:: - audio_header SFX_Cry04_2, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry04_2_Ch5 + channel 6, SFX_Cry04_2_Ch6 + channel 8, SFX_Cry04_2_Ch8 SFX_Cry05_2:: - audio_header SFX_Cry05_2, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry05_2_Ch5 + channel 6, SFX_Cry05_2_Ch6 + channel 8, SFX_Cry05_2_Ch8 SFX_Cry06_2:: - audio_header SFX_Cry06_2, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry06_2_Ch5 + channel 6, SFX_Cry06_2_Ch6 + channel 8, SFX_Cry06_2_Ch8 SFX_Cry07_2:: - audio_header SFX_Cry07_2, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry07_2_Ch5 + channel 6, SFX_Cry07_2_Ch6 + channel 8, SFX_Cry07_2_Ch8 SFX_Cry08_2:: - audio_header SFX_Cry08_2, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry08_2_Ch5 + channel 6, SFX_Cry08_2_Ch6 + channel 8, SFX_Cry08_2_Ch8 SFX_Cry09_2:: - audio_header SFX_Cry09_2, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry09_2_Ch5 + channel 6, SFX_Cry09_2_Ch6 + channel 8, SFX_Cry09_2_Ch8 SFX_Cry0A_2:: - audio_header SFX_Cry0A_2, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry0A_2_Ch5 + channel 6, SFX_Cry0A_2_Ch6 + channel 8, SFX_Cry0A_2_Ch8 SFX_Cry0B_2:: - audio_header SFX_Cry0B_2, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry0B_2_Ch5 + channel 6, SFX_Cry0B_2_Ch6 + channel 8, SFX_Cry0B_2_Ch8 SFX_Cry0C_2:: - audio_header SFX_Cry0C_2, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry0C_2_Ch5 + channel 6, SFX_Cry0C_2_Ch6 + channel 8, SFX_Cry0C_2_Ch8 SFX_Cry0D_2:: - audio_header SFX_Cry0D_2, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry0D_2_Ch5 + channel 6, SFX_Cry0D_2_Ch6 + channel 8, SFX_Cry0D_2_Ch8 SFX_Cry0E_2:: - audio_header SFX_Cry0E_2, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry0E_2_Ch5 + channel 6, SFX_Cry0E_2_Ch6 + channel 8, SFX_Cry0E_2_Ch8 SFX_Cry0F_2:: - audio_header SFX_Cry0F_2, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry0F_2_Ch5 + channel 6, SFX_Cry0F_2_Ch6 + channel 8, SFX_Cry0F_2_Ch8 SFX_Cry10_2:: - audio_header SFX_Cry10_2, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry10_2_Ch5 + channel 6, SFX_Cry10_2_Ch6 + channel 8, SFX_Cry10_2_Ch8 SFX_Cry11_2:: - audio_header SFX_Cry11_2, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry11_2_Ch5 + channel 6, SFX_Cry11_2_Ch6 + channel 8, SFX_Cry11_2_Ch8 SFX_Cry12_2:: - audio_header SFX_Cry12_2, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry12_2_Ch5 + channel 6, SFX_Cry12_2_Ch6 + channel 8, SFX_Cry12_2_Ch8 SFX_Cry13_2:: - audio_header SFX_Cry13_2, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry13_2_Ch5 + channel 6, SFX_Cry13_2_Ch6 + channel 8, SFX_Cry13_2_Ch8 SFX_Cry14_2:: - audio_header SFX_Cry14_2, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry14_2_Ch5 + channel 6, SFX_Cry14_2_Ch6 + channel 8, SFX_Cry14_2_Ch8 SFX_Cry15_2:: - audio_header SFX_Cry15_2, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry15_2_Ch5 + channel 6, SFX_Cry15_2_Ch6 + channel 8, SFX_Cry15_2_Ch8 SFX_Cry16_2:: - audio_header SFX_Cry16_2, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry16_2_Ch5 + channel 6, SFX_Cry16_2_Ch6 + channel 8, SFX_Cry16_2_Ch8 SFX_Cry17_2:: - audio_header SFX_Cry17_2, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry17_2_Ch5 + channel 6, SFX_Cry17_2_Ch6 + channel 8, SFX_Cry17_2_Ch8 SFX_Cry18_2:: - audio_header SFX_Cry18_2, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry18_2_Ch5 + channel 6, SFX_Cry18_2_Ch6 + channel 8, SFX_Cry18_2_Ch8 SFX_Cry19_2:: - audio_header SFX_Cry19_2, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry19_2_Ch5 + channel 6, SFX_Cry19_2_Ch6 + channel 8, SFX_Cry19_2_Ch8 SFX_Cry1A_2:: - audio_header SFX_Cry1A_2, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry1A_2_Ch5 + channel 6, SFX_Cry1A_2_Ch6 + channel 8, SFX_Cry1A_2_Ch8 SFX_Cry1B_2:: - audio_header SFX_Cry1B_2, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry1B_2_Ch5 + channel 6, SFX_Cry1B_2_Ch6 + channel 8, SFX_Cry1B_2_Ch8 SFX_Cry1C_2:: - audio_header SFX_Cry1C_2, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry1C_2_Ch5 + channel 6, SFX_Cry1C_2_Ch6 + channel 8, SFX_Cry1C_2_Ch8 SFX_Cry1D_2:: - audio_header SFX_Cry1D_2, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry1D_2_Ch5 + channel 6, SFX_Cry1D_2_Ch6 + channel 8, SFX_Cry1D_2_Ch8 SFX_Cry1E_2:: - audio_header SFX_Cry1E_2, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry1E_2_Ch5 + channel 6, SFX_Cry1E_2_Ch6 + channel 8, SFX_Cry1E_2_Ch8 SFX_Cry1F_2:: - audio_header SFX_Cry1F_2, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry1F_2_Ch5 + channel 6, SFX_Cry1F_2_Ch6 + channel 8, SFX_Cry1F_2_Ch8 SFX_Cry20_2:: - audio_header SFX_Cry20_2, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry20_2_Ch5 + channel 6, SFX_Cry20_2_Ch6 + channel 8, SFX_Cry20_2_Ch8 SFX_Cry21_2:: - audio_header SFX_Cry21_2, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry21_2_Ch5 + channel 6, SFX_Cry21_2_Ch6 + channel 8, SFX_Cry21_2_Ch8 SFX_Cry22_2:: - audio_header SFX_Cry22_2, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry22_2_Ch5 + channel 6, SFX_Cry22_2_Ch6 + channel 8, SFX_Cry22_2_Ch8 SFX_Cry23_2:: - audio_header SFX_Cry23_2, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry23_2_Ch5 + channel 6, SFX_Cry23_2_Ch6 + channel 8, SFX_Cry23_2_Ch8 SFX_Cry24_2:: - audio_header SFX_Cry24_2, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry24_2_Ch5 + channel 6, SFX_Cry24_2_Ch6 + channel 8, SFX_Cry24_2_Ch8 SFX_Cry25_2:: - audio_header SFX_Cry25_2, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry25_2_Ch5 + channel 6, SFX_Cry25_2_Ch6 + channel 8, SFX_Cry25_2_Ch8 SFX_Level_Up:: - audio_header SFX_Level_Up, Ch5, Ch6, Ch7 + channel_count 3 + channel 5, SFX_Level_Up_Ch5 + channel 6, SFX_Level_Up_Ch6 + channel 7, SFX_Level_Up_Ch7 SFX_Get_Item2_2:: - audio_header SFX_Get_Item2_2, Ch5, Ch6, Ch7 + channel_count 3 + channel 5, SFX_Get_Item2_2_Ch5 + channel 6, SFX_Get_Item2_2_Ch6 + channel 7, SFX_Get_Item2_2_Ch7 SFX_Tink_2:: - audio_header SFX_Tink_2, Ch5 + channel_count 1 + channel 5, SFX_Tink_2_Ch5 SFX_Heal_HP_2:: - audio_header SFX_Heal_HP_2, Ch5 + channel_count 1 + channel 5, SFX_Heal_HP_2_Ch5 SFX_Heal_Ailment_2:: - audio_header SFX_Heal_Ailment_2, Ch5 + channel_count 1 + channel 5, SFX_Heal_Ailment_2_Ch5 SFX_Start_Menu_2:: - audio_header SFX_Start_Menu_2, Ch8 + channel_count 1 + channel 8, SFX_Start_Menu_2_Ch8 SFX_Press_AB_2:: - audio_header SFX_Press_AB_2, Ch5 + channel_count 1 + channel 5, SFX_Press_AB_2_Ch5 SFX_Ball_Toss:: - audio_header SFX_Ball_Toss, Ch5, Ch6 + channel_count 2 + channel 5, SFX_Ball_Toss_Ch5 + channel 6, SFX_Ball_Toss_Ch6 SFX_Ball_Poof:: - audio_header SFX_Ball_Poof, Ch5, Ch8 + channel_count 2 + channel 5, SFX_Ball_Poof_Ch5 + channel 8, SFX_Ball_Poof_Ch8 SFX_Faint_Thud:: - audio_header SFX_Faint_Thud, Ch5, Ch8 + channel_count 2 + channel 5, SFX_Faint_Thud_Ch5 + channel 8, SFX_Faint_Thud_Ch8 SFX_Run:: - audio_header SFX_Run, Ch8 + channel_count 1 + channel 8, SFX_Run_Ch8 SFX_Dex_Page_Added:: - audio_header SFX_Dex_Page_Added, Ch5, Ch6 + channel_count 2 + channel 5, SFX_Dex_Page_Added_Ch5 + channel 6, SFX_Dex_Page_Added_Ch6 SFX_Caught_Mon:: - audio_header SFX_Caught_Mon, Ch5, Ch6, Ch7 + channel_count 3 + channel 5, SFX_Caught_Mon_Ch5 + channel 6, SFX_Caught_Mon_Ch6 + channel 7, SFX_Caught_Mon_Ch7 SFX_Peck:: - audio_header SFX_Peck, Ch8 + channel_count 1 + channel 8, SFX_Peck_Ch8 SFX_Faint_Fall:: - audio_header SFX_Faint_Fall, Ch5 + channel_count 1 + channel 5, SFX_Faint_Fall_Ch5 SFX_Battle_09:: - audio_header SFX_Battle_09, Ch5 + channel_count 1 + channel 5, SFX_Battle_09_Ch5 SFX_Pound:: - audio_header SFX_Pound, Ch8 + channel_count 1 + channel 8, SFX_Pound_Ch8 SFX_Battle_0B:: - audio_header SFX_Battle_0B, Ch8 + channel_count 1 + channel 8, SFX_Battle_0B_Ch8 SFX_Battle_0C:: - audio_header SFX_Battle_0C, Ch8 + channel_count 1 + channel 8, SFX_Battle_0C_Ch8 SFX_Battle_0D:: - audio_header SFX_Battle_0D, Ch8 + channel_count 1 + channel 8, SFX_Battle_0D_Ch8 SFX_Battle_0E:: - audio_header SFX_Battle_0E, Ch8 + channel_count 1 + channel 8, SFX_Battle_0E_Ch8 SFX_Battle_0F:: - audio_header SFX_Battle_0F, Ch8 + channel_count 1 + channel 8, SFX_Battle_0F_Ch8 SFX_Damage:: - audio_header SFX_Damage, Ch8 + channel_count 1 + channel 8, SFX_Damage_Ch8 SFX_Not_Very_Effective:: - audio_header SFX_Not_Very_Effective, Ch8 + channel_count 1 + channel 8, SFX_Not_Very_Effective_Ch8 SFX_Battle_12:: - audio_header SFX_Battle_12, Ch8 + channel_count 1 + channel 8, SFX_Battle_12_Ch8 SFX_Battle_13:: - audio_header SFX_Battle_13, Ch8 + channel_count 1 + channel 8, SFX_Battle_13_Ch8 SFX_Battle_14:: - audio_header SFX_Battle_14, Ch8 + channel_count 1 + channel 8, SFX_Battle_14_Ch8 SFX_Vine_Whip:: - audio_header SFX_Vine_Whip, Ch8 + channel_count 1 + channel 8, SFX_Vine_Whip_Ch8 SFX_Battle_16:: - audio_header SFX_Battle_16, Ch8 + channel_count 1 + channel 8, SFX_Battle_16_Ch8 SFX_Battle_17:: - audio_header SFX_Battle_17, Ch8 + channel_count 1 + channel 8, SFX_Battle_17_Ch8 SFX_Battle_18:: - audio_header SFX_Battle_18, Ch8 + channel_count 1 + channel 8, SFX_Battle_18_Ch8 SFX_Battle_19:: - audio_header SFX_Battle_19, Ch8 + channel_count 1 + channel 8, SFX_Battle_19_Ch8 SFX_Super_Effective:: - audio_header SFX_Super_Effective, Ch8 + channel_count 1 + channel 8, SFX_Super_Effective_Ch8 SFX_Battle_1B:: - audio_header SFX_Battle_1B, Ch8 + channel_count 1 + channel 8, SFX_Battle_1B_Ch8 SFX_Battle_1C:: - audio_header SFX_Battle_1C, Ch8 + channel_count 1 + channel 8, SFX_Battle_1C_Ch8 SFX_Doubleslap:: - audio_header SFX_Doubleslap, Ch8 + channel_count 1 + channel 8, SFX_Doubleslap_Ch8 SFX_Battle_1E:: - audio_header SFX_Battle_1E, Ch5, Ch8 + channel_count 2 + channel 5, SFX_Battle_1E_Ch5 + channel 8, SFX_Battle_1E_Ch8 SFX_Horn_Drill:: - audio_header SFX_Horn_Drill, Ch8 + channel_count 1 + channel 8, SFX_Horn_Drill_Ch8 SFX_Battle_20:: - audio_header SFX_Battle_20, Ch8 + channel_count 1 + channel 8, SFX_Battle_20_Ch8 SFX_Battle_21:: - audio_header SFX_Battle_21, Ch8 + channel_count 1 + channel 8, SFX_Battle_21_Ch8 SFX_Battle_22:: - audio_header SFX_Battle_22, Ch8 + channel_count 1 + channel 8, SFX_Battle_22_Ch8 SFX_Battle_23:: - audio_header SFX_Battle_23, Ch8 + channel_count 1 + channel 8, SFX_Battle_23_Ch8 SFX_Battle_24:: - audio_header SFX_Battle_24, Ch5, Ch8 + channel_count 2 + channel 5, SFX_Battle_24_Ch5 + channel 8, SFX_Battle_24_Ch8 SFX_Battle_25:: - audio_header SFX_Battle_25, Ch8 + channel_count 1 + channel 8, SFX_Battle_25_Ch8 SFX_Battle_26:: - audio_header SFX_Battle_26, Ch8 + channel_count 1 + channel 8, SFX_Battle_26_Ch8 SFX_Battle_27:: - audio_header SFX_Battle_27, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Battle_27_Ch5 + channel 6, SFX_Battle_27_Ch6 + channel 8, SFX_Battle_27_Ch8 SFX_Battle_28:: - audio_header SFX_Battle_28, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Battle_28_Ch5 + channel 6, SFX_Battle_28_Ch6 + channel 8, SFX_Battle_28_Ch8 SFX_Battle_29:: - audio_header SFX_Battle_29, Ch5, Ch8 + channel_count 2 + channel 5, SFX_Battle_29_Ch5 + channel 8, SFX_Battle_29_Ch8 SFX_Battle_2A:: - audio_header SFX_Battle_2A, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Battle_2A_Ch5 + channel 6, SFX_Battle_2A_Ch6 + channel 8, SFX_Battle_2A_Ch8 SFX_Battle_2B:: - audio_header SFX_Battle_2B, Ch5, Ch8 + channel_count 2 + channel 5, SFX_Battle_2B_Ch5 + channel 8, SFX_Battle_2B_Ch8 SFX_Battle_2C:: - audio_header SFX_Battle_2C, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Battle_2C_Ch5 + channel 6, SFX_Battle_2C_Ch6 + channel 8, SFX_Battle_2C_Ch8 SFX_Psybeam:: - audio_header SFX_Psybeam, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Psybeam_Ch5 + channel 6, SFX_Psybeam_Ch6 + channel 8, SFX_Psybeam_Ch8 SFX_Battle_2E:: - audio_header SFX_Battle_2E, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Battle_2E_Ch5 + channel 6, SFX_Battle_2E_Ch6 + channel 8, SFX_Battle_2E_Ch8 SFX_Battle_2F:: - audio_header SFX_Battle_2F, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Battle_2F_Ch5 + channel 6, SFX_Battle_2F_Ch6 + channel 8, SFX_Battle_2F_Ch8 SFX_Psychic_M:: - audio_header SFX_Psychic_M, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Psychic_M_Ch5 + channel 6, SFX_Psychic_M_Ch6 + channel 8, SFX_Psychic_M_Ch8 SFX_Battle_31:: - audio_header SFX_Battle_31, Ch5, Ch6 + channel_count 2 + channel 5, SFX_Battle_31_Ch5 + channel 6, SFX_Battle_31_Ch6 SFX_Battle_32:: - audio_header SFX_Battle_32, Ch5, Ch6 + channel_count 2 + channel 5, SFX_Battle_32_Ch5 + channel 6, SFX_Battle_32_Ch6 SFX_Battle_33:: - audio_header SFX_Battle_33, Ch5, Ch6 + channel_count 2 + channel 5, SFX_Battle_33_Ch5 + channel 6, SFX_Battle_33_Ch6 SFX_Battle_34:: - audio_header SFX_Battle_34, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Battle_34_Ch5 + channel 6, SFX_Battle_34_Ch6 + channel 8, SFX_Battle_34_Ch8 SFX_Battle_35:: - audio_header SFX_Battle_35, Ch5, Ch6 + channel_count 2 + channel 5, SFX_Battle_35_Ch5 + channel 6, SFX_Battle_35_Ch6 SFX_Battle_36:: - audio_header SFX_Battle_36, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Battle_36_Ch5 + channel 6, SFX_Battle_36_Ch6 + channel 8, SFX_Battle_36_Ch8 SFX_Silph_Scope:: - audio_header SFX_Silph_Scope, Ch5 + channel_count 1 + channel 5, SFX_Silph_Scope_Ch5 diff --git a/audio/headers/sfxheaders3.asm b/audio/headers/sfxheaders3.asm index 2732767f..bc6451a7 100644 --- a/audio/headers/sfxheaders3.asm +++ b/audio/headers/sfxheaders3.asm @@ -2,310 +2,504 @@ SFX_Headers_3:: db $ff, $ff, $ff ; padding SFX_Noise_Instrument01_3:: - audio_header SFX_Noise_Instrument01_3, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument01_3_Ch8 SFX_Noise_Instrument02_3:: - audio_header SFX_Noise_Instrument02_3, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument02_3_Ch8 SFX_Noise_Instrument03_3:: - audio_header SFX_Noise_Instrument03_3, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument03_3_Ch8 SFX_Noise_Instrument04_3:: - audio_header SFX_Noise_Instrument04_3, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument04_3_Ch8 SFX_Noise_Instrument05_3:: - audio_header SFX_Noise_Instrument05_3, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument05_3_Ch8 SFX_Noise_Instrument06_3:: - audio_header SFX_Noise_Instrument06_3, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument06_3_Ch8 SFX_Noise_Instrument07_3:: - audio_header SFX_Noise_Instrument07_3, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument07_3_Ch8 SFX_Noise_Instrument08_3:: - audio_header SFX_Noise_Instrument08_3, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument08_3_Ch8 SFX_Noise_Instrument09_3:: - audio_header SFX_Noise_Instrument09_3, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument09_3_Ch8 SFX_Noise_Instrument10_3:: - audio_header SFX_Noise_Instrument10_3, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument10_3_Ch8 SFX_Noise_Instrument11_3:: - audio_header SFX_Noise_Instrument11_3, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument11_3_Ch8 SFX_Noise_Instrument12_3:: - audio_header SFX_Noise_Instrument12_3, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument12_3_Ch8 SFX_Noise_Instrument13_3:: - audio_header SFX_Noise_Instrument13_3, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument13_3_Ch8 SFX_Noise_Instrument14_3:: - audio_header SFX_Noise_Instrument14_3, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument14_3_Ch8 SFX_Noise_Instrument15_3:: - audio_header SFX_Noise_Instrument15_3, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument15_3_Ch8 SFX_Noise_Instrument16_3:: - audio_header SFX_Noise_Instrument16_3, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument16_3_Ch8 SFX_Noise_Instrument17_3:: - audio_header SFX_Noise_Instrument17_3, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument17_3_Ch8 SFX_Noise_Instrument18_3:: - audio_header SFX_Noise_Instrument18_3, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument18_3_Ch8 SFX_Noise_Instrument19_3:: - audio_header SFX_Noise_Instrument19_3, Ch8 + channel_count 1 + channel 8, SFX_Noise_Instrument19_3_Ch8 SFX_Cry00_3:: - audio_header SFX_Cry00_3, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry00_3_Ch5 + channel 6, SFX_Cry00_3_Ch6 + channel 8, SFX_Cry00_3_Ch8 SFX_Cry01_3:: - audio_header SFX_Cry01_3, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry01_3_Ch5 + channel 6, SFX_Cry01_3_Ch6 + channel 8, SFX_Cry01_3_Ch8 SFX_Cry02_3:: - audio_header SFX_Cry02_3, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry02_3_Ch5 + channel 6, SFX_Cry02_3_Ch6 + channel 8, SFX_Cry02_3_Ch8 SFX_Cry03_3:: - audio_header SFX_Cry03_3, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry03_3_Ch5 + channel 6, SFX_Cry03_3_Ch6 + channel 8, SFX_Cry03_3_Ch8 SFX_Cry04_3:: - audio_header SFX_Cry04_3, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry04_3_Ch5 + channel 6, SFX_Cry04_3_Ch6 + channel 8, SFX_Cry04_3_Ch8 SFX_Cry05_3:: - audio_header SFX_Cry05_3, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry05_3_Ch5 + channel 6, SFX_Cry05_3_Ch6 + channel 8, SFX_Cry05_3_Ch8 SFX_Cry06_3:: - audio_header SFX_Cry06_3, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry06_3_Ch5 + channel 6, SFX_Cry06_3_Ch6 + channel 8, SFX_Cry06_3_Ch8 SFX_Cry07_3:: - audio_header SFX_Cry07_3, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry07_3_Ch5 + channel 6, SFX_Cry07_3_Ch6 + channel 8, SFX_Cry07_3_Ch8 SFX_Cry08_3:: - audio_header SFX_Cry08_3, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry08_3_Ch5 + channel 6, SFX_Cry08_3_Ch6 + channel 8, SFX_Cry08_3_Ch8 SFX_Cry09_3:: - audio_header SFX_Cry09_3, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry09_3_Ch5 + channel 6, SFX_Cry09_3_Ch6 + channel 8, SFX_Cry09_3_Ch8 SFX_Cry0A_3:: - audio_header SFX_Cry0A_3, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry0A_3_Ch5 + channel 6, SFX_Cry0A_3_Ch6 + channel 8, SFX_Cry0A_3_Ch8 SFX_Cry0B_3:: - audio_header SFX_Cry0B_3, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry0B_3_Ch5 + channel 6, SFX_Cry0B_3_Ch6 + channel 8, SFX_Cry0B_3_Ch8 SFX_Cry0C_3:: - audio_header SFX_Cry0C_3, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry0C_3_Ch5 + channel 6, SFX_Cry0C_3_Ch6 + channel 8, SFX_Cry0C_3_Ch8 SFX_Cry0D_3:: - audio_header SFX_Cry0D_3, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry0D_3_Ch5 + channel 6, SFX_Cry0D_3_Ch6 + channel 8, SFX_Cry0D_3_Ch8 SFX_Cry0E_3:: - audio_header SFX_Cry0E_3, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry0E_3_Ch5 + channel 6, SFX_Cry0E_3_Ch6 + channel 8, SFX_Cry0E_3_Ch8 SFX_Cry0F_3:: - audio_header SFX_Cry0F_3, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry0F_3_Ch5 + channel 6, SFX_Cry0F_3_Ch6 + channel 8, SFX_Cry0F_3_Ch8 SFX_Cry10_3:: - audio_header SFX_Cry10_3, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry10_3_Ch5 + channel 6, SFX_Cry10_3_Ch6 + channel 8, SFX_Cry10_3_Ch8 SFX_Cry11_3:: - audio_header SFX_Cry11_3, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry11_3_Ch5 + channel 6, SFX_Cry11_3_Ch6 + channel 8, SFX_Cry11_3_Ch8 SFX_Cry12_3:: - audio_header SFX_Cry12_3, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry12_3_Ch5 + channel 6, SFX_Cry12_3_Ch6 + channel 8, SFX_Cry12_3_Ch8 SFX_Cry13_3:: - audio_header SFX_Cry13_3, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry13_3_Ch5 + channel 6, SFX_Cry13_3_Ch6 + channel 8, SFX_Cry13_3_Ch8 SFX_Cry14_3:: - audio_header SFX_Cry14_3, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry14_3_Ch5 + channel 6, SFX_Cry14_3_Ch6 + channel 8, SFX_Cry14_3_Ch8 SFX_Cry15_3:: - audio_header SFX_Cry15_3, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry15_3_Ch5 + channel 6, SFX_Cry15_3_Ch6 + channel 8, SFX_Cry15_3_Ch8 SFX_Cry16_3:: - audio_header SFX_Cry16_3, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry16_3_Ch5 + channel 6, SFX_Cry16_3_Ch6 + channel 8, SFX_Cry16_3_Ch8 SFX_Cry17_3:: - audio_header SFX_Cry17_3, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry17_3_Ch5 + channel 6, SFX_Cry17_3_Ch6 + channel 8, SFX_Cry17_3_Ch8 SFX_Cry18_3:: - audio_header SFX_Cry18_3, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry18_3_Ch5 + channel 6, SFX_Cry18_3_Ch6 + channel 8, SFX_Cry18_3_Ch8 SFX_Cry19_3:: - audio_header SFX_Cry19_3, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry19_3_Ch5 + channel 6, SFX_Cry19_3_Ch6 + channel 8, SFX_Cry19_3_Ch8 SFX_Cry1A_3:: - audio_header SFX_Cry1A_3, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry1A_3_Ch5 + channel 6, SFX_Cry1A_3_Ch6 + channel 8, SFX_Cry1A_3_Ch8 SFX_Cry1B_3:: - audio_header SFX_Cry1B_3, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry1B_3_Ch5 + channel 6, SFX_Cry1B_3_Ch6 + channel 8, SFX_Cry1B_3_Ch8 SFX_Cry1C_3:: - audio_header SFX_Cry1C_3, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry1C_3_Ch5 + channel 6, SFX_Cry1C_3_Ch6 + channel 8, SFX_Cry1C_3_Ch8 SFX_Cry1D_3:: - audio_header SFX_Cry1D_3, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry1D_3_Ch5 + channel 6, SFX_Cry1D_3_Ch6 + channel 8, SFX_Cry1D_3_Ch8 SFX_Cry1E_3:: - audio_header SFX_Cry1E_3, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry1E_3_Ch5 + channel 6, SFX_Cry1E_3_Ch6 + channel 8, SFX_Cry1E_3_Ch8 SFX_Cry1F_3:: - audio_header SFX_Cry1F_3, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry1F_3_Ch5 + channel 6, SFX_Cry1F_3_Ch6 + channel 8, SFX_Cry1F_3_Ch8 SFX_Cry20_3:: - audio_header SFX_Cry20_3, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry20_3_Ch5 + channel 6, SFX_Cry20_3_Ch6 + channel 8, SFX_Cry20_3_Ch8 SFX_Cry21_3:: - audio_header SFX_Cry21_3, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry21_3_Ch5 + channel 6, SFX_Cry21_3_Ch6 + channel 8, SFX_Cry21_3_Ch8 SFX_Cry22_3:: - audio_header SFX_Cry22_3, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry22_3_Ch5 + channel 6, SFX_Cry22_3_Ch6 + channel 8, SFX_Cry22_3_Ch8 SFX_Cry23_3:: - audio_header SFX_Cry23_3, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry23_3_Ch5 + channel 6, SFX_Cry23_3_Ch6 + channel 8, SFX_Cry23_3_Ch8 SFX_Cry24_3:: - audio_header SFX_Cry24_3, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry24_3_Ch5 + channel 6, SFX_Cry24_3_Ch6 + channel 8, SFX_Cry24_3_Ch8 SFX_Cry25_3:: - audio_header SFX_Cry25_3, Ch5, Ch6, Ch8 + channel_count 3 + channel 5, SFX_Cry25_3_Ch5 + channel 6, SFX_Cry25_3_Ch6 + channel 8, SFX_Cry25_3_Ch8 SFX_Get_Item1_3:: - audio_header SFX_Get_Item1_3, Ch5, Ch6, Ch7 + channel_count 3 + channel 5, SFX_Get_Item1_3_Ch5 + channel 6, SFX_Get_Item1_3_Ch6 + channel 7, SFX_Get_Item1_3_Ch7 SFX_Get_Item2_3:: - audio_header SFX_Get_Item2_3, Ch5, Ch6, Ch7 + channel_count 3 + channel 5, SFX_Get_Item2_3_Ch5 + channel 6, SFX_Get_Item2_3_Ch6 + channel 7, SFX_Get_Item2_3_Ch7 SFX_Tink_3:: - audio_header SFX_Tink_3, Ch5 + channel_count 1 + channel 5, SFX_Tink_3_Ch5 SFX_Heal_HP_3:: - audio_header SFX_Heal_HP_3, Ch5 + channel_count 1 + channel 5, SFX_Heal_HP_3_Ch5 SFX_Heal_Ailment_3:: - audio_header SFX_Heal_Ailment_3, Ch5 + channel_count 1 + channel 5, SFX_Heal_Ailment_3_Ch5 SFX_Start_Menu_3:: - audio_header SFX_Start_Menu_3, Ch8 + channel_count 1 + channel 8, SFX_Start_Menu_3_Ch8 SFX_Press_AB_3:: - audio_header SFX_Press_AB_3, Ch5 + channel_count 1 + channel 5, SFX_Press_AB_3_Ch5 SFX_Pokedex_Rating_3:: - audio_header SFX_Pokedex_Rating_3, Ch5, Ch6, Ch7 + channel_count 3 + channel 5, SFX_Pokedex_Rating_3_Ch5 + channel 6, SFX_Pokedex_Rating_3_Ch6 + channel 7, SFX_Pokedex_Rating_3_Ch7 SFX_Get_Key_Item_3:: - audio_header SFX_Get_Key_Item_3, Ch5, Ch6, Ch7 + channel_count 3 + channel 5, SFX_Get_Key_Item_3_Ch5 + channel 6, SFX_Get_Key_Item_3_Ch6 + channel 7, SFX_Get_Key_Item_3_Ch7 SFX_Poisoned_3:: - audio_header SFX_Poisoned_3, Ch5 + channel_count 1 + channel 5, SFX_Poisoned_3_Ch5 SFX_Trade_Machine_3:: - audio_header SFX_Trade_Machine_3, Ch5 + channel_count 1 + channel 5, SFX_Trade_Machine_3_Ch5 SFX_Turn_On_PC_3:: - audio_header SFX_Turn_On_PC_3, Ch5 + channel_count 1 + channel 5, SFX_Turn_On_PC_3_Ch5 SFX_Turn_Off_PC_3:: - audio_header SFX_Turn_Off_PC_3, Ch5 + channel_count 1 + channel 5, SFX_Turn_Off_PC_3_Ch5 SFX_Enter_PC_3:: - audio_header SFX_Enter_PC_3, Ch5 + channel_count 1 + channel 5, SFX_Enter_PC_3_Ch5 SFX_Shrink_3:: - audio_header SFX_Shrink_3, Ch5 + channel_count 1 + channel 5, SFX_Shrink_3_Ch5 SFX_Switch_3:: - audio_header SFX_Switch_3, Ch5 + channel_count 1 + channel 5, SFX_Switch_3_Ch5 SFX_Healing_Machine_3:: - audio_header SFX_Healing_Machine_3, Ch5 + channel_count 1 + channel 5, SFX_Healing_Machine_3_Ch5 SFX_Teleport_Exit1_3:: - audio_header SFX_Teleport_Exit1_3, Ch5 + channel_count 1 + channel 5, SFX_Teleport_Exit1_3_Ch5 SFX_Teleport_Enter1_3:: - audio_header SFX_Teleport_Enter1_3, Ch5 + channel_count 1 + channel 5, SFX_Teleport_Enter1_3_Ch5 SFX_Teleport_Exit2_3:: - audio_header SFX_Teleport_Exit2_3, Ch5 + channel_count 1 + channel 5, SFX_Teleport_Exit2_3_Ch5 SFX_Ledge_3:: - audio_header SFX_Ledge_3, Ch5 + channel_count 1 + channel 5, SFX_Ledge_3_Ch5 SFX_Teleport_Enter2_3:: - audio_header SFX_Teleport_Enter2_3, Ch8 + channel_count 1 + channel 8, SFX_Teleport_Enter2_3_Ch8 SFX_Fly_3:: - audio_header SFX_Fly_3, Ch8 + channel_count 1 + channel 8, SFX_Fly_3_Ch8 SFX_Denied_3:: - audio_header SFX_Denied_3, Ch5, Ch6 + channel_count 2 + channel 5, SFX_Denied_3_Ch5 + channel 6, SFX_Denied_3_Ch6 SFX_Arrow_Tiles_3:: - audio_header SFX_Arrow_Tiles_3, Ch5 + channel_count 1 + channel 5, SFX_Arrow_Tiles_3_Ch5 SFX_Push_Boulder_3:: - audio_header SFX_Push_Boulder_3, Ch8 + channel_count 1 + channel 8, SFX_Push_Boulder_3_Ch8 SFX_SS_Anne_Horn_3:: - audio_header SFX_SS_Anne_Horn_3, Ch5, Ch6 + channel_count 2 + channel 5, SFX_SS_Anne_Horn_3_Ch5 + channel 6, SFX_SS_Anne_Horn_3_Ch6 SFX_Withdraw_Deposit_3:: - audio_header SFX_Withdraw_Deposit_3, Ch5 + channel_count 1 + channel 5, SFX_Withdraw_Deposit_3_Ch5 SFX_Cut_3:: - audio_header SFX_Cut_3, Ch8 + channel_count 1 + channel 8, SFX_Cut_3_Ch8 SFX_Go_Inside_3:: - audio_header SFX_Go_Inside_3, Ch8 + channel_count 1 + channel 8, SFX_Go_Inside_3_Ch8 SFX_Swap_3:: - audio_header SFX_Swap_3, Ch5, Ch6 + channel_count 2 + channel 5, SFX_Swap_3_Ch5 + channel 6, SFX_Swap_3_Ch6 SFX_59_3:: - audio_header SFX_59_3, Ch5, Ch6 + channel_count 2 + channel 5, SFX_59_3_Ch5 + channel 6, SFX_59_3_Ch6 SFX_Purchase_3:: - audio_header SFX_Purchase_3, Ch5, Ch6 + channel_count 2 + channel 5, SFX_Purchase_3_Ch5 + channel 6, SFX_Purchase_3_Ch6 SFX_Collision_3:: - audio_header SFX_Collision_3, Ch5 + channel_count 1 + channel 5, SFX_Collision_3_Ch5 SFX_Go_Outside_3:: - audio_header SFX_Go_Outside_3, Ch8 + channel_count 1 + channel 8, SFX_Go_Outside_3_Ch8 SFX_Save_3:: - audio_header SFX_Save_3, Ch5, Ch6 + channel_count 2 + channel 5, SFX_Save_3_Ch5 + channel 6, SFX_Save_3_Ch6 SFX_Intro_Lunge:: - audio_header SFX_Intro_Lunge, Ch8 + channel_count 1 + channel 8, SFX_Intro_Lunge_Ch8 SFX_Intro_Hip:: - audio_header SFX_Intro_Hip, Ch5 + channel_count 1 + channel 5, SFX_Intro_Hip_Ch5 SFX_Intro_Hop:: - audio_header SFX_Intro_Hop, Ch5 + channel_count 1 + channel 5, SFX_Intro_Hop_Ch5 SFX_Intro_Raise:: - audio_header SFX_Intro_Raise, Ch8 + channel_count 1 + channel 8, SFX_Intro_Raise_Ch8 SFX_Intro_Crash:: - audio_header SFX_Intro_Crash, Ch8 + channel_count 1 + channel 8, SFX_Intro_Crash_Ch8 SFX_Intro_Whoosh:: - audio_header SFX_Intro_Whoosh, Ch8 + channel_count 1 + channel 8, SFX_Intro_Whoosh_Ch8 SFX_Slots_Stop_Wheel:: - audio_header SFX_Slots_Stop_Wheel, Ch5 + channel_count 1 + channel 5, SFX_Slots_Stop_Wheel_Ch5 SFX_Slots_Reward:: - audio_header SFX_Slots_Reward, Ch5 + channel_count 1 + channel 5, SFX_Slots_Reward_Ch5 SFX_Slots_New_Spin:: - audio_header SFX_Slots_New_Spin, Ch5, Ch6 + channel_count 2 + channel 5, SFX_Slots_New_Spin_Ch5 + channel 6, SFX_Slots_New_Spin_Ch6 SFX_Shooting_Star:: - audio_header SFX_Shooting_Star, Ch5 + channel_count 1 + channel 5, SFX_Shooting_Star_Ch5 diff --git a/audio/low_health_alarm.asm b/audio/low_health_alarm.asm index 65e19aa7..35fe1815 100644 --- a/audio/low_health_alarm.asm +++ b/audio/low_health_alarm.asm @@ -20,7 +20,7 @@ Music_DoLowHealthAlarm:: .noTone ld a, $86 - ld [wChannelSoundIDs + Ch5], a ;disable sound channel? + ld [wChannelSoundIDs + CHAN5], a ;disable sound channel? ld a, [wLowHealthAlarm] and $7f ;decrement alarm timer. dec a @@ -34,7 +34,7 @@ Music_DoLowHealthAlarm:: .disableAlarm xor a ld [wLowHealthAlarm], a ;disable alarm - ld [wChannelSoundIDs + Ch5], a ;re-enable sound channel? + ld [wChannelSoundIDs + CHAN5], a ;re-enable sound channel? ld de, .toneDataSilence jr .playTone diff --git a/audio/poke_flute.asm b/audio/poke_flute.asm index f55a2a1f..1c0caab1 100644 --- a/audio/poke_flute.asm +++ b/audio/poke_flute.asm @@ -3,7 +3,7 @@ Music_PokeFluteInBattle:: ld a, SFX_CAUGHT_MON call PlaySoundWaitForCurrent ; then immediately overwrite the channel pointers - ld hl, wChannelCommandPointers + Ch5 * 2 + ld hl, wChannelCommandPointers + CHAN5 * 2 ld de, SFX_Pokeflute_Ch5 call Audio2_OverwriteChannelPointer ld de, SFX_Pokeflute_Ch6 diff --git a/audio/wave_instruments.asm b/audio/wave_instruments.asm deleted file mode 100644 index 15376004..00000000 --- a/audio/wave_instruments.asm +++ /dev/null @@ -1,33 +0,0 @@ -; This file is INCLUDEd three times, once for each audio engine. - - dw .wave0 - dw .wave1 - dw .wave2 - dw .wave3 - dw .wave4 - dw .wave5 ; used in the Lavender Town and Pokemon Tower themes - dw .wave5 ; unused - dw .wave5 ; unused - dw .wave5 ; unused - -; these are the definitions for the channel 3 instruments -; each instrument definition is made up of 32 points (nibbles) that form -; the graph of the wave -; the current instrument is copied to rWave_0--rWave_f -.wave0 - dn 0, 2, 4, 6, 8, 10, 12, 14, 15, 15, 15, 14, 14, 13, 13, 12, 12, 11, 10, 9, 8, 7, 6, 5, 4, 4, 3, 3, 2, 2, 1, 1 - -.wave1 - dn 0, 2, 4, 6, 8, 10, 12, 14, 14, 15, 15, 15, 15, 14, 14, 14, 13, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 2, 1, 1 - -.wave2 - dn 1, 3, 6, 9, 11, 13, 14, 14, 14, 14, 15, 15, 15, 15, 14, 13, 13, 14, 15, 15, 15, 15, 14, 14, 14, 14, 13, 11, 9, 6, 3, 1 - -.wave3 - dn 0, 2, 4, 6, 8, 10, 12, 13, 14, 15, 15, 14, 13, 14, 15, 15, 14, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0 - -.wave4 - dn 0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 14, 15, 7, 7, 15, 14, 14, 13, 12, 10, 8, 7, 6, 5, 4, 3, 2, 1, 0 - -; duty 5 reads from sfx data -.wave5 diff --git a/audio/wave_samples.asm b/audio/wave_samples.asm new file mode 100644 index 00000000..15376004 --- /dev/null +++ b/audio/wave_samples.asm @@ -0,0 +1,33 @@ +; This file is INCLUDEd three times, once for each audio engine. + + dw .wave0 + dw .wave1 + dw .wave2 + dw .wave3 + dw .wave4 + dw .wave5 ; used in the Lavender Town and Pokemon Tower themes + dw .wave5 ; unused + dw .wave5 ; unused + dw .wave5 ; unused + +; these are the definitions for the channel 3 instruments +; each instrument definition is made up of 32 points (nibbles) that form +; the graph of the wave +; the current instrument is copied to rWave_0--rWave_f +.wave0 + dn 0, 2, 4, 6, 8, 10, 12, 14, 15, 15, 15, 14, 14, 13, 13, 12, 12, 11, 10, 9, 8, 7, 6, 5, 4, 4, 3, 3, 2, 2, 1, 1 + +.wave1 + dn 0, 2, 4, 6, 8, 10, 12, 14, 14, 15, 15, 15, 15, 14, 14, 14, 13, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 2, 1, 1 + +.wave2 + dn 1, 3, 6, 9, 11, 13, 14, 14, 14, 14, 15, 15, 15, 15, 14, 13, 13, 14, 15, 15, 15, 15, 14, 14, 14, 14, 13, 11, 9, 6, 3, 1 + +.wave3 + dn 0, 2, 4, 6, 8, 10, 12, 13, 14, 15, 15, 14, 13, 14, 15, 15, 14, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0 + +.wave4 + dn 0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 12, 13, 14, 14, 15, 7, 7, 15, 14, 14, 13, 12, 10, 8, 7, 6, 5, 4, 3, 2, 1, 0 + +; duty 5 reads from sfx data +.wave5 diff --git a/constants/audio_constants.asm b/constants/audio_constants.asm index 59900fec..a8903052 100644 --- a/constants/audio_constants.asm +++ b/constants/audio_constants.asm @@ -19,15 +19,15 @@ DEF NUM_NOTES EQU const_value ; Audio[1|2|3]_HWChannelBaseAddresses, Audio[1|2|3]_HWChannelDisableMasks, ; and Audio[1|2|3]_HWChannelEnableMasks indexes (see audio/engine_[1|2|3].asm) const_def - const Ch1 ; 0 - const Ch2 ; 1 - const Ch3 ; 2 - const Ch4 ; 3 + const CHAN1 ; 0 + const CHAN2 ; 1 + const CHAN3 ; 2 + const CHAN4 ; 3 DEF NUM_MUSIC_CHANS EQU const_value - const Ch5 ; 4 - const Ch6 ; 5 - const Ch7 ; 6 - const Ch8 ; 7 + const CHAN5 ; 4 + const CHAN6 ; 5 + const CHAN7 ; 6 + const CHAN8 ; 7 DEF NUM_NOISE_CHANS EQU const_value - NUM_MUSIC_CHANS DEF NUM_CHANNELS EQU const_value diff --git a/engine/battle/core.asm b/engine/battle/core.asm index 6aa697c9..f84b759c 100644 --- a/engine/battle/core.asm +++ b/engine/battle/core.asm @@ -782,7 +782,7 @@ FaintEnemyPokemon: ld a, SFX_FAINT_FALL call PlaySoundWaitForCurrent .sfxwait - ld a, [wChannelSoundIDs + Ch5] + ld a, [wChannelSoundIDs + CHAN5] cp SFX_FAINT_FALL jr z, .sfxwait ld a, SFX_FAINT_THUD @@ -866,7 +866,7 @@ EndLowHealthAlarm: ; the low health alarm and prevents it from reactivating until the next battle. xor a ld [wLowHealthAlarm], a ; turn off low health alarm - ld [wChannelSoundIDs + Ch5], a + ld [wChannelSoundIDs + CHAN5], a inc a ld [wLowHealthAlarmDisabled], a ; prevent it from reactivating ret @@ -1864,7 +1864,7 @@ DrawPlayerHUDAndHPBar: ld [hl], $0 ret z xor a - ld [wChannelSoundIDs + Ch5], a + ld [wChannelSoundIDs + CHAN5], a ret .setLowHealthAlarm ld hl, wLowHealthAlarm diff --git a/engine/battle/end_of_battle.asm b/engine/battle/end_of_battle.asm index bd4a1901..b9f9d537 100644 --- a/engine/battle/end_of_battle.asm +++ b/engine/battle/end_of_battle.asm @@ -46,7 +46,7 @@ EndOfBattle: .resetVariables xor a ld [wLowHealthAlarm], a ;disable low health alarm - ld [wChannelSoundIDs + Ch5], a + ld [wChannelSoundIDs + CHAN5], a ld [wIsInBattle], a ld [wBattleType], a ld [wMoveMissed], a diff --git a/engine/events/hidden_objects/safari_game.asm b/engine/events/hidden_objects/safari_game.asm index ac07e2f3..ea00be5a 100644 --- a/engine/events/hidden_objects/safari_game.asm +++ b/engine/events/hidden_objects/safari_game.asm @@ -37,7 +37,7 @@ SafariZoneGameOver: ld a, SFX_SAFARI_ZONE_PA call PlayMusic .waitForMusicToPlay - ld a, [wChannelSoundIDs + Ch5] + ld a, [wChannelSoundIDs + CHAN5] cp SFX_SAFARI_ZONE_PA jr nz, .waitForMusicToPlay ld a, TEXT_SAFARI_GAME_OVER diff --git a/engine/items/item_effects.asm b/engine/items/item_effects.asm index 913b8636..a89031b4 100644 --- a/engine/items/item_effects.asm +++ b/engine/items/item_effects.asm @@ -991,7 +991,7 @@ ItemUseMedicine: .notFullHP ; if the pokemon's current HP doesn't equal its max HP xor a ld [wLowHealthAlarm], a ;disable low health alarm - ld [wChannelSoundIDs + Ch5], a + ld [wChannelSoundIDs + CHAN5], a push hl push de ld bc, wPartyMon1MaxHP - (wPartyMon1HP + 1) @@ -1732,7 +1732,7 @@ ItemUsePokeflute: call WaitForSoundToFinish ; wait for sound to end farcall Music_PokeFluteInBattle ; play in-battle pokeflute music .musicWaitLoop ; wait for music to finish playing - ld a, [wChannelSoundIDs + Ch7] + ld a, [wChannelSoundIDs + CHAN7] and a ; music off? jr nz, .musicWaitLoop .skipMusic @@ -1799,7 +1799,7 @@ PlayedFluteHadEffectText: ld c, BANK(SFX_Pokeflute) call PlayMusic .musicWaitLoop ; wait for music to finish playing - ld a, [wChannelSoundIDs + Ch3] + ld a, [wChannelSoundIDs + CHAN3] cp SFX_POKEFLUTE jr z, .musicWaitLoop call PlayDefaultMusic ; start playing normal music again diff --git a/engine/movie/evolution.asm b/engine/movie/evolution.asm index 77840556..4464fd87 100644 --- a/engine/movie/evolution.asm +++ b/engine/movie/evolution.asm @@ -8,7 +8,7 @@ EvolveMon: push af xor a ld [wLowHealthAlarm], a - ld [wChannelSoundIDs + Ch5], a + ld [wChannelSoundIDs + CHAN5], a dec a ; SFX_STOP_ALL_MUSIC ld [wNewSoundID], a call PlaySound diff --git a/engine/overworld/elevator.asm b/engine/overworld/elevator.asm index fa404602..0d19c127 100644 --- a/engine/overworld/elevator.asm +++ b/engine/overworld/elevator.asm @@ -33,7 +33,7 @@ ShakeElevator:: ld a, SFX_SAFARI_ZONE_PA call PlayMusic .musicLoop - ld a, [wChannelSoundIDs + Ch5] + ld a, [wChannelSoundIDs + CHAN5] cp SFX_SAFARI_ZONE_PA jr z, .musicLoop call UpdateSprites diff --git a/home/audio.asm b/home/audio.asm index eded85e9..1da6453c 100644 --- a/home/audio.asm +++ b/home/audio.asm @@ -146,10 +146,10 @@ PlaySound:: and a jr z, .next xor a - ld [wChannelSoundIDs + Ch5], a - ld [wChannelSoundIDs + Ch6], a - ld [wChannelSoundIDs + Ch7], a - ld [wChannelSoundIDs + Ch8], a + ld [wChannelSoundIDs + CHAN5], a + ld [wChannelSoundIDs + CHAN6], a + ld [wChannelSoundIDs + CHAN7], a + ld [wChannelSoundIDs + CHAN8], a .next ld a, [wAudioFadeOutControl] and a ; has a fade-out length been specified? diff --git a/home/delay.asm b/home/delay.asm index 850b23e9..3d1ea44d 100644 --- a/home/delay.asm +++ b/home/delay.asm @@ -18,7 +18,7 @@ WaitForSoundToFinish:: ret nz push hl .waitLoop - ld hl, wChannelSoundIDs + Ch5 + ld hl, wChannelSoundIDs + CHAN5 xor a or [hl] inc hl diff --git a/home/overworld.asm b/home/overworld.asm index 74c97cb7..a4e547bf 100644 --- a/home/overworld.asm +++ b/home/overworld.asm @@ -1244,7 +1244,7 @@ CollisionCheckOnLand:: call CheckTilePassable jr nc, .noCollision .collision - ld a, [wChannelSoundIDs + Ch5] + ld a, [wChannelSoundIDs + CHAN5] cp SFX_COLLISION ; check if collision sound is already playing jr z, .setCarry ld a, SFX_COLLISION @@ -1925,7 +1925,7 @@ CollisionCheckOnWater:: jr z, .stopSurfing ; stop surfing if the tile is passable jr .loop .collision - ld a, [wChannelSoundIDs + Ch5] + ld a, [wChannelSoundIDs + CHAN5] cp SFX_COLLISION ; check if collision sound is already playing jr z, .setCarry ld a, SFX_COLLISION diff --git a/macros/scripts/audio.asm b/macros/scripts/audio.asm index 114bf576..6b8a650a 100644 --- a/macros/scripts/audio.asm +++ b/macros/scripts/audio.asm @@ -1,18 +1,15 @@ -MACRO audio_header - db (_NARG - 2) << 6 | \2 - dw \1_\2 - IF _NARG > 2 - db \3 - dw \1_\3 - ENDC - IF _NARG > 3 - db \4 - dw \1_\4 - ENDC - IF _NARG > 4 - db \5 - dw \1_\5 - ENDC +MACRO channel_count + ASSERT 0 < (\1) && (\1) <= NUM_MUSIC_CHANS, \ + "channel_count must be 1-{d:NUM_MUSIC_CHANS}" + DEF _num_channels = \1 - 1 +ENDM + +MACRO channel + ASSERT 0 < (\1) && (\1) <= NUM_CHANNELS, \ + "channel id must be 1-{d:NUM_CHANNELS}" + dn (_num_channels << 2), \1 - 1 ; channel id + dw \2 ; address + DEF _num_channels = 0 ENDM const_def $10 @@ -27,9 +24,9 @@ ENDM MACRO pitch_sweep db pitch_sweep_cmd IF \2 < 0 - db (\1 << 4) | (%1000 | (\2 * -1)) + dn \1, %1000 | (\2 * -1) ELSE - db (\1 << 4) | \2 + dn \1, \2 ENDC ENDM @@ -45,9 +42,9 @@ DEF square_note_cmd EQU sfx_note_cmd ; $20 MACRO square_note db square_note_cmd | \1 IF \3 < 0 - db (\2 << 4) | (%1000 | (\3 * -1)) + dn \2, %1000 | (\3 * -1) ELSE - db (\2 << 4) | \3 + dn \2, \3 ENDC dw \4 ENDM @@ -60,16 +57,16 @@ DEF noise_note_cmd EQU sfx_note_cmd ; $20 MACRO noise_note db noise_note_cmd | \1 IF \3 < 0 - db (\2 << 4) | (%1000 | (\3 * -1)) + dn \2, %1000 | (\3 * -1) ELSE - db (\2 << 4) | \3 + dn \2, \3 ENDC db \4 ENDM ; arguments: pitch, length [1, 16] MACRO note - db (\1 << 4) | (\2 - 1) + dn \1, \2 - 1 ENDM const_next $b0 @@ -86,7 +83,7 @@ ENDM ; can only be used with instruments 1-10, excluding 2 ; unused MACRO drum_note_short - db (\1 << 4) | (\2 - 1) + note \1, \2 ENDM const_next $c0 @@ -107,9 +104,9 @@ ENDM MACRO note_type db note_type_cmd | \1 IF \3 < 0 - db (\2 << 4) | (%1000 | (\3 * -1)) + dn \2, %1000 | (\3 * -1) ELSE - db (\2 << 4) | \3 + dn \2, \3 ENDC ENDM @@ -145,7 +142,7 @@ ENDM MACRO vibrato db vibrato_cmd db \1 - db (\2 << 4) | \3 + dn \2, \3 ENDM ; arguments: length [1, 256], octave [1, 8], pitch @@ -153,7 +150,7 @@ ENDM MACRO pitch_slide db pitch_slide_cmd db \1 - 1 - db ((8 - \2) << 4) | \3 + dn 8 - \2, \3 ENDM ; arguments: duty cycle [0, 3] (12.5%, 25%, 50%, 75%) @@ -179,7 +176,7 @@ ENDM const stereo_panning_cmd ; $ee MACRO stereo_panning db stereo_panning_cmd - db (\1 << 4) | \2 + dn \1, \2 ENDM const unknownmusic0xef_cmd ; $ef @@ -192,7 +189,7 @@ ENDM const volume_cmd ; $f0 MACRO volume db volume_cmd - db (\1 << 4) | \2 + dn \1, \2 ENDM const_next $f8 diff --git a/scripts/PewterPokecenter.asm b/scripts/PewterPokecenter.asm index 5030244c..3267dcee 100644 --- a/scripts/PewterPokecenter.asm +++ b/scripts/PewterPokecenter.asm @@ -62,7 +62,7 @@ PewterJigglypuffText: call DelayFrames ld a, [wChannelSoundIDs] ld b, a - ld a, [wChannelSoundIDs + Ch2] + ld a, [wChannelSoundIDs + CHAN2] or b jr nz, .spinMovementLoop -- cgit v1.3.1-sl0p