diff options
author | dannye <corrnondacqb@yahoo.com> | 2016-04-10 23:02:50 -0500 |
---|---|---|
committer | dannye <corrnondacqb@yahoo.com> | 2016-04-10 23:02:50 -0500 |
commit | 68e03891f623d4c621befb95604664cf1c9bc388 (patch) | |
tree | 0734f1e4658c5395fb4b16abff3898f9516c8721 /src | |
parent | 726756ab18609ec81c8292aeeb7203e75cfd1bf7 (diff) |
More music engine labeling
Diffstat (limited to 'src')
-rwxr-xr-x | src/audio/music1.asm | 320 | ||||
-rwxr-xr-x | src/audio/music2.asm | 348 | ||||
-rwxr-xr-x | src/audio/sfx.asm | 56 | ||||
-rwxr-xr-x | src/wram.asm | 139 |
4 files changed, 484 insertions, 379 deletions
diff --git a/src/audio/music1.asm b/src/audio/music1.asm index 5b0436c..7d9a930 100755 --- a/src/audio/music1.asm +++ b/src/audio/music1.asm @@ -1,11 +1,11 @@ SetupSound_Ext:: ; f4000 (3d:4000) - jp Func_f407d + jp Music1_Init SoundTimerHandler_Ext:: ; f4003 (3d:4003) - jp Func_f40e9 + jp Music1_Update Func_f4006:: ; f4006 (3d:4006) - jp Func_f4021 + jp Music1_PlaySong Func_f4009:: ; f4009 (3d:4009) jp Func_f402d @@ -26,18 +26,18 @@ Func_f4018:: ; f4018 (3d:4018) jp Func_f406f Func_f401b:: ; f401b (3d:401b) - jp Func_f49c4 + jp Music1_PauseSong Func_f401e:: ; f401e (3d:401e) - jp Func_f49d0 + jp Music1_ResumeSong -Func_f4021: ; f4021 (3d:4021) +Music1_PlaySong: ; f4021 (3d:4021) push hl ld hl, NumberOfSongs1 cp [hl] - jr nc, .asm_f402b - ld [wdd80], a -.asm_f402b + jr nc, .invalidID + ld [wCurSongID], a +.invalidID pop hl ret @@ -60,7 +60,7 @@ Func_f402d: ; f402d (3d:402d) ld a, b ld [wdd83], a ld a, c - ld [wdd82], a + ld [wCurSfxID], a .asm_f404b pop hl pop bc @@ -71,7 +71,7 @@ Func_f404e: ; f404e (3d:404e) ret Func_f4052: ; f4052 (3d:4052) - ld a, [wdd80] + ld a, [wCurSongID] cp $80 ld a, $1 ret nz @@ -79,7 +79,7 @@ Func_f4052: ; f4052 (3d:4052) ret Func_f405c: ; f405c (3d:405c) - ld a, [wdd82] + ld a, [wCurSfxID] cp $80 ld a, $1 ret nz @@ -104,7 +104,7 @@ Func_f406f: ; f406f (3d:406f) pop bc ret -Func_f407d: ; f407d (3d:407d) +Music1_Init: ; f407d (3d:407d) xor a ld [rNR52], a ld a, $80 @@ -114,10 +114,10 @@ Func_f407d: ; f407d (3d:407d) ld a, $ff ld [rNR51], a ld a, $3d - ld [wdd81], a + ld [wCurSongBank], a ld a, $80 - ld [wdd80], a - ld [wdd82], a + ld [wCurSongID], a + ld [wCurSfxID], a ld a, $77 ; set both speakers to max volume ld [wMusicPanning], a xor a @@ -131,14 +131,14 @@ Func_f407d: ; f407d (3d:407d) ld [wMusicDC], a ld de, $0001 ld bc, $0000 -.asm_f40bb +.zeroLoop1 ld hl, wMusicIsPlaying add hl, bc ld [hl], d ld hl, wMusicTie add hl, bc ld [hl], d - ld hl, $ddb3 + ld hl, wddb3 add hl, bc ld [hl], d ld hl, wMusicEC @@ -150,62 +150,62 @@ Func_f407d: ; f407d (3d:407d) inc c ld a, c cp $4 - jr nz, .asm_f40bb + jr nz, .zeroLoop1 ld hl, Music1_ChannelLoopStacks ld bc, wMusicChannelStackPointers ld d, $8 -.asm_f40e2 +.zeroLoop2 ld a, [hli] ld [bc], a inc bc dec d - jr nz, .asm_f40e2 + jr nz, .zeroLoop2 ret -Func_f40e9: ; f40e9 (3d:40e9) - call Func_f42a4 - call Func_f411c +Music1_Update: ; f40e9 (3d:40e9) + call Music1_EmptyFunc + call Music1_CheckForNewSound ld hl, Func_fc003 call Bankswitch3dTo3f - ld a, [wdd81] + ld a, [wCurSongBank] ldh [hBankROM], a ld [MBC3RomBank], a ld a, [wddf2] cp $0 - jr z, .asm_f4109 + jr z, .updateChannels call Func_f4980 - jr .asm_f4115 -.asm_f4109 - call Func_f42a5 - call Func_f430a - call Func_f436f - call Func_f43ce -.asm_f4115 + jr .skipChannelUpdates +.updateChannels + call Music1_UpdateChannel1 + call Music1_UpdateChannel2 + call Music1_UpdateChannel3 + call Music1_UpdateChannel4 +.skipChannelUpdates call Func_f4866 - call Func_f49b1 + call Music1_CheckForEndOfSong ret -Func_f411c: ; f411c (3d:411c) - ld a, [wdd80] +Music1_CheckForNewSound: ; f411c (3d:411c) + ld a, [wCurSongID] rla - jr c, .asm_f4133 + jr c, .checkForNewSfx call Music1_StopAllChannels - ld a, [wdd80] - call Music1_PlaySong - ld a, [wdd80] + ld a, [wCurSongID] + call Music1_BeginSong + ld a, [wCurSongID] or $80 - ld [wdd80], a -.asm_f4133 - ld a, [wdd82] + ld [wCurSongID], a +.checkForNewSfx + ld a, [wCurSfxID] rla - jr c, .asm_f414a - ld a, [wdd82] + jr c, .noNewSound + ld a, [wCurSfxID] ld hl, Func_fc000 call Bankswitch3dTo3f - ld a, [wdd82] + ld a, [wCurSfxID] or $80 - ld [wdd82], a -.asm_f414a + ld [wCurSfxID], a +.noNewSound ret Music1_StopAllChannels: ; f414b (3d:414b) @@ -248,14 +248,14 @@ Music1_StopAllChannels: ; f414b (3d:414b) ret ; plays the song given by the id in a -Music1_PlaySong: ; f418c (3d:418c) +Music1_BeginSong: ; f418c (3d:418c) push af ld c, a ld b, $0 ld hl, SongBanks1 add hl, bc ld a, [hl] - ld [wdd81], a + ld [wCurSongBank], a ldh [hBankROM], a ld [MBC3RomBank], a pop af @@ -379,10 +379,10 @@ Music1_PlaySong: ; f418c (3d:418c) ld [wddf2], a ret -Func_f42a4: ; f42a4 (3d:42a4) +Music1_EmptyFunc: ; f42a4 (3d:42a4) ret -Func_f42a5: ; f42a5 (3d:42a5) +Music1_UpdateChannel1: ; f42a5 (3d:42a5) ld a, [wMusicIsPlaying] or a jr z, .asm_f42fa @@ -435,7 +435,7 @@ Func_f42a5: ; f42a5 (3d:42a5) .asm_f4309 ret -Func_f430a: ; f430a (3d:430a) +Music1_UpdateChannel2: ; f430a (3d:430a) ld a, [wMusicIsPlaying + 1] or a jr z, .asm_f435f @@ -488,7 +488,7 @@ Func_f430a: ; f430a (3d:430a) .asm_f436e ret -Func_f436f: ; f436f (3d:436f) +Music1_UpdateChannel3: ; f436f (3d:436f) ld a, [wMusicIsPlaying + 2] or a jr z, .asm_f43be @@ -537,7 +537,7 @@ Func_f436f: ; f436f (3d:436f) .asm_f43cd ret -Func_f43ce: ; f43ce (3d:43ce) +Music1_UpdateChannel4: ; f43ce (3d:43ce) ld a, [wMusicIsPlaying + 3] or a jr z, .asm_f4400 @@ -656,10 +656,10 @@ Music1_note: ; f448c (3d:448c) jr z, .asm_f44b0 ld [hl], $1 xor a - ld hl, $dddb + ld hl, wdddb add hl, bc ld [hl], a - ld hl, $dde3 + ld hl, wdde3 add hl, bc ld [hl], a inc [hl] @@ -726,12 +726,12 @@ Music1_note: ; f448c (3d:448c) pop bc pop hl .asm_f44fb - ld hl, $ddc3 + ld hl, wddc3 add hl, bc ld [hl], a pop af and $f0 - ld hl, $ddb7 + ld hl, wddb7 add hl, bc ld [hl], a or a @@ -776,7 +776,7 @@ Music1_note: ; f448c (3d:448c) and $77 or d ld [wMusicDC], a - ld de, $ddab + ld de, wddab ld a, [hli] ld [de], a inc de @@ -793,14 +793,14 @@ Music1_note: ; f448c (3d:448c) ld b, $0 ld a, l ld d, h - ld hl, $dded + ld hl, wdded ld [hli], a ld [hl], d ld a, $1 ld [wddef], a jr .asm_f458e .asm_f4564 - ld hl, $dda5 + ld hl, wMusicCh1CurPitch add hl, bc add hl, bc push hl @@ -831,7 +831,7 @@ Music1_note: ; f448c (3d:448c) ld [hl], d .asm_f458e pop de - ld hl, $dd95 + ld hl, wMusicChannelPointers add hl, bc add hl, bc ld [hl], e @@ -1201,7 +1201,7 @@ Func_f475a: ; f475a (3d:475a) cp $0 jr z, .asm_f478c ld d, $0 - ld hl, $dd92 + ld hl, wMusicTie + 1 ld a, [hl] cp $80 jr z, .asm_f4779 @@ -1220,7 +1220,7 @@ Func_f475a: ; f475a (3d:475a) .asm_f478b ret .asm_f478c - ld hl, $dd92 + ld hl, wMusicTie + 1 ld [hl], $0 ld hl, rNR22 ld a, $8 @@ -1237,16 +1237,16 @@ Func_f479c: ; f479c (3d:479c) ld d, $0 ld a, [wMusicWaveChange] or a - jr z, .asm_f47b3 + jr z, .noWaveChange xor a ld [rNR30], a - call Func_f47ea + call Music1_LoadWaveInstrument ld d, $80 -.asm_f47b3 +.noWaveChange ld a, [wddb9] cp $0 jr z, .asm_f47e1 - ld hl, $dd93 + ld hl, wMusicTie + 2 ld a, [hl] cp $80 jr z, .asm_f47cc @@ -1275,7 +1275,7 @@ Func_f479c: ; f479c (3d:479c) ld [rNR30], a ret -Func_f47ea: ; f479c (3d:47ea) +Music1_LoadWaveInstrument: ; f479c (3d:47ea) ld a, [wMusicWave] add a ld d, $0 @@ -1287,14 +1287,14 @@ Func_f47ea: ; f479c (3d:47ea) ld l, a ld b, d ld de, $ff30 -.asm_f47fc +.copyWaveLoop ld a, [hli] ld [de], a inc de inc b ld a, b cp $10 - jr nz, .asm_f47fc + jr nz, .copyWaveLoop xor a ld [wMusicWaveChange], a ret @@ -1307,7 +1307,7 @@ Func_f480a: ; f480a (3d:480a) cp $0 jr z, asm_f482a ld de, rNR41 - ld hl, $ddab + ld hl, wddab ld a, [hli] ld [de], a inc e @@ -1340,7 +1340,7 @@ Func_f4839: ; f4839 (3d:4839) ld [wddef], a jr .asm_f4859 .asm_f4846 - ld hl, $dded + ld hl, wdded ld a, [hli] ld d, [hl] ld e, a @@ -1361,7 +1361,7 @@ Func_f485a: ; f485a (3d:485a) push af ld b, $0 ld c, a - call Func_f4898 + call Music1_UpdateVibrato pop af call Func_f490b ret @@ -1400,13 +1400,13 @@ Func_f4866: ; f4866 (3d:4866) ld [rNR51], a ret -Func_f4898: ; f4898 (3d:4898) +Music1_UpdateVibrato: ; f4898 (3d:4898) ld hl, wMusicVibratoDelay add hl, bc ld a, [hl] cp $0 jr z, .asm_f4902 - ld hl, $dde3 + ld hl, wdde3 add hl, bc cp [hl] jr z, .asm_f48ab @@ -1424,7 +1424,7 @@ Func_f4898: ; f4898 (3d:4898) ld h, [hl] ld l, a push hl - ld hl, $dddb + ld hl, wdddb add hl, bc ld d, $0 ld e, [hl] @@ -1434,7 +1434,7 @@ Func_f4898: ; f4898 (3d:4898) ld a, [hli] cp $80 jr z, .asm_f48ee - ld hl, $dda5 + ld hl, wMusicCh1CurPitch add hl, bc add hl, bc ld e, [hl] @@ -1465,7 +1465,7 @@ Func_f4898: ; f4898 (3d:4898) ret .asm_f48ee push hl - ld hl, $dddb + ld hl, wdddb add hl, bc ld [hl], $0 pop hl @@ -1477,7 +1477,7 @@ Func_f4898: ; f4898 (3d:4898) ld [hl], a jr .asm_f48ab .asm_f4902 - ld hl, $dda5 + ld hl, wMusicCh1CurPitch add hl, bc add hl, bc ld e, [hl] @@ -1592,7 +1592,7 @@ Func_f4980: ; f4980 (3d:4980) .asm_f49b0 ret -Func_f49b1: ; f49b1 (3d:49b1) +Music1_CheckForEndOfSong: ; f49b1 (3d:49b1) ld hl, wMusicIsPlaying xor a add [hl] @@ -1605,54 +1605,54 @@ Func_f49b1: ; f49b1 (3d:49b1) or a ret nz ld a, $80 - ld [wdd80], a + ld [wCurSongID], a ret -Func_f49c4: ; f49c4 (3d:49c4) +Music1_PauseSong: ; f49c4 (3d:49c4) di call Func_f4980 - call Func_f49dc + call Music1_BackupSong call Music1_StopAllChannels ei ret -Func_f49d0: ; f49d0 (3d:49d0) +Music1_ResumeSong: ; f49d0 (3d:49d0) di call Func_f4980 call Music1_StopAllChannels - call Func_f4b01 + call Music1_LoadBackup ei ret -Func_f49dc: ; f49dc (3d:49dc) - ld a, [wdd80] - ld [wde55], a - ld a, [wdd81] - ld [wde56], a +Music1_BackupSong: ; f49dc (3d:49dc) + ld a, [wCurSongID] + ld [wCurSongIDBackup], a + ld a, [wCurSongBank] + ld [wCurSongBankBackup], a ld a, [wMusicDC] - ld [wde57], a + ld [wMusicDCBackup], a ld hl, wMusicDuty1 - ld de, $de58 + ld de, wMusicDuty1Backup ld a, $4 call Music1_CopyData ld a, [wMusicWave] - ld [wde5c], a + ld [wMusicWaveBackup], a ld a, [wMusicWaveChange] - ld [wde5d], a + ld [wMusicWaveChangeBackup], a ld hl, wMusicIsPlaying - ld de, $de5e + ld de, wMusicIsPlayingBackup ld a, $4 call Music1_CopyData ld hl, wMusicTie - ld de, $de62 + ld de, wMusicTieBackup ld a, $4 call Music1_CopyData - ld hl, $dd95 - ld de, $de66 + ld hl, wMusicChannelPointers + ld de, wMusicChannelPointersBackup ld a, $8 call Music1_CopyData ld hl, wMusicMainLoopStart - ld de, $de6e + ld de, wMusicMainLoopStartBackup ld a, $8 call Music1_CopyData ld a, [wddab] @@ -1660,47 +1660,47 @@ Func_f49dc: ; f49dc (3d:49dc) ld a, [wddac] ld [wde77], a ld hl, wMusicOctave - ld de, $de78 + ld de, wMusicOctaveBackup ld a, $4 call Music1_CopyData - ld hl, $ddb3 - ld de, $de7c + ld hl, wddb3 + ld de, wde7c ld a, $4 call Music1_CopyData - ld hl, $ddb7 - ld de, $de80 + ld hl, wddb7 + ld de, wde80 ld a, $4 call Music1_CopyData - ld hl, $ddbb - ld de, $de84 + ld hl, wddbb + ld de, wde84 ld a, $4 call Music1_CopyData ld hl, wMusicE8 - ld de, $de88 + ld de, wMusicE8Backup ld a, $4 call Music1_CopyData - ld hl, $ddc3 - ld de, $de8c + ld hl, wddc3 + ld de, wde8c ld a, $4 call Music1_CopyData ld hl, wMusicE9 - ld de, $de90 + ld de, wMusicE9Backup ld a, $4 call Music1_CopyData ld hl, wMusicEC - ld de, $de94 + ld de, wMusicECBackup ld a, $4 call Music1_CopyData ld hl, wMusicSpeed - ld de, $de98 + ld de, wMusicSpeedBackup ld a, $4 call Music1_CopyData ld hl, wMusicVibratoType2 - ld de, $de9c + ld de, wMusicVibratoType2Backup ld a, $4 call Music1_CopyData ld hl, wMusicVibratoDelay - ld de, $dea0 + ld de, wMusicVibratoDelayBackup ld a, $4 call Music1_CopyData ld a, $0 @@ -1709,57 +1709,57 @@ Func_f49dc: ; f49dc (3d:49dc) ld [wdddb + 2], a ld [wdddb + 3], a ld hl, wMusicVolume - ld de, $dea4 + ld de, wMusicVolumeBackup ld a, $3 call Music1_CopyData ld hl, wMusicE4 - ld de, $dea7 + ld de, wMusicE4Backup ld a, $3 call Music1_CopyData - ld hl, $dded - ld de, $deaa + ld hl, wdded + ld de, wdeaa ld a, $2 call Music1_CopyData ld a, $0 ld [wdeac], a ld hl, wMusicChannelStackPointers - ld de, $dead + ld de, wMusicChannelStackPointersBackup ld a, $8 call Music1_CopyData - ld hl, $ddfb - ld de, $deb5 - ld a, $30 + ld hl, wMusicCh1Stack + ld de, wMusicCh1StackBackup + ld a, $c * 4 call Music1_CopyData ret -Func_f4b01: ; f4b01 (3d:4b01) - ld a, [wde55] - ld [wdd80], a - ld a, [wde56] - ld [wdd81], a - ld a, [wde57] +Music1_LoadBackup: ; f4b01 (3d:4b01) + ld a, [wCurSongIDBackup] + ld [wCurSongID], a + ld a, [wCurSongBankBackup] + ld [wCurSongBank], a + ld a, [wMusicDCBackup] ld [wMusicDC], a - ld hl, $de58 + ld hl, wMusicDuty1Backup ld de, wMusicDuty1 ld a, $4 call Music1_CopyData - ld a, [wde5c] + ld a, [wMusicWaveBackup] ld [wMusicWave], a ld a, $1 ld [wMusicWaveChange], a - ld hl, $de5e + ld hl, wMusicIsPlayingBackup ld de, wMusicIsPlaying ld a, $4 call Music1_CopyData - ld hl, $de62 + ld hl, wMusicTieBackup ld de, wMusicTie ld a, $4 call Music1_CopyData - ld hl, $de66 - ld de, $dd95 + ld hl, wMusicChannelPointersBackup + ld de, wMusicChannelPointers ld a, $8 call Music1_CopyData - ld hl, $de6e + ld hl, wMusicMainLoopStartBackup ld de, wMusicMainLoopStart ld a, $8 call Music1_CopyData @@ -1767,69 +1767,69 @@ Func_f4b01: ; f4b01 (3d:4b01) ld [wddab], a ld a, [wde77] ld [wddac], a - ld hl, $de78 + ld hl, wMusicOctaveBackup ld de, wMusicOctave ld a, $4 call Music1_CopyData - ld hl, $de7c - ld de, $ddb3 + ld hl, wde7c + ld de, wddb3 ld a, $4 call Music1_CopyData - ld hl, $de80 - ld de, $ddb7 + ld hl, wde80 + ld de, wddb7 ld a, $4 call Music1_CopyData - ld hl, $de84 - ld de, $ddbb + ld hl, wde84 + ld de, wddbb ld a, $4 call Music1_CopyData - ld hl, $de88 + ld hl, wMusicE8Backup ld de, wMusicE8 ld a, $4 call Music1_CopyData - ld hl, $de8c - ld de, $ddc3 + ld hl, wde8c + ld de, wddc3 ld a, $4 call Music1_CopyData - ld hl, $de90 + ld hl, wMusicE9Backup ld de, wMusicE9 ld a, $4 call Music1_CopyData - ld hl, $de94 + ld hl, wMusicECBackup ld de, wMusicEC ld a, $4 call Music1_CopyData - ld hl, $de98 + ld hl, wMusicSpeedBackup ld de, wMusicSpeed ld a, $4 call Music1_CopyData - ld hl, $de9c + ld hl, wMusicVibratoType2Backup ld de, wMusicVibratoType2 ld a, $4 call Music1_CopyData - ld hl, $dea0 + ld hl, wMusicVibratoDelayBackup ld de, wMusicVibratoDelay ld a, $4 call Music1_CopyData - ld hl, $dea4 + ld hl, wMusicVolumeBackup ld de, wMusicVolume ld a, $3 call Music1_CopyData - ld hl, $dea7 + ld hl, wMusicE4Backup ld de, wMusicE4 ld a, $3 call Music1_CopyData - ld hl, $deaa - ld de, $dded + ld hl, wdeaa + ld de, wdded ld a, $2 call Music1_CopyData ld a, [wdeac] ld [wddef], a - ld hl, $dead + ld hl, wMusicChannelStackPointersBackup ld de, wMusicChannelStackPointers ld a, $8 call Music1_CopyData - ld hl, $deb5 + ld hl, wMusicCh1StackBackup ld de, wMusicCh1Stack ld a, $c * 4 call Music1_CopyData @@ -1838,12 +1838,12 @@ Func_f4b01: ; f4b01 (3d:4b01) ; copies a bytes from hl to de Music1_CopyData: ; f4c18 (3d:4c18) ld c, a -.asm_f4c19 +.loop ld a, [hli] ld [de], a inc de dec c - jr nz, .asm_f4c19 + jr nz, .loop ret Music1_ChannelLoopStacks: ; f4c20 (3d:4c20) diff --git a/src/audio/music2.asm b/src/audio/music2.asm index ca934de..ad6a905 100755 --- a/src/audio/music2.asm +++ b/src/audio/music2.asm @@ -1,11 +1,11 @@ Func_f8000: ; f8000 (3e:4000) - jp Func_f807d + jp Music2_Init Func_f8003: ; f8003 (3e:4003) - jp Func_f80e9 + jp Music2_Update Func_f8006: ; f8006 (3e:4006) - jp Func_f8021 + jp Music2_PlaySong Func_f8009: ; f8009 (3e:4009) jp Func_f802d @@ -26,18 +26,18 @@ Func_f8018: ; f8018 (3e:4018) jp Func_f806f Func_f801b: ; f801b (3e:401b) - jp Func_f89c4 + jp Music2_PauseSong Func_f801e: ; f801e (3e:401e) - jp Func_f89d0 + jp Music2_ResumeSong -Func_f8021: ; f8021 (3e:4021) +Music2_PlaySong: ; f8021 (3e:4021) push hl ld hl, NumberOfSongs2 cp [hl] - jr nc, .asm_f802b - ld [wdd80], a -.asm_f802b + jr nc, .invalidID + ld [wCurSongID], a +.invalidID pop hl ret @@ -60,7 +60,7 @@ Func_f802d: ; f802d (3e:402d) ld a, b ld [wdd83], a ld a, c - ld [wdd82], a + ld [wCurSfxID], a .asm_f804b pop hl pop bc @@ -71,7 +71,7 @@ Func_f804e: ; f804e (3e:404e) ret Func_f8052: ; f8052 (3e:4052) - ld a, [wdd80] + ld a, [wCurSongID] cp $80 ld a, $1 ret nz @@ -79,7 +79,7 @@ Func_f8052: ; f8052 (3e:4052) ret Func_f805c: ; f805c (3e:405c) - ld a, [wdd82] + ld a, [wCurSfxID] cp $80 ld a, $1 ret nz @@ -104,7 +104,7 @@ Func_f806f: ; f806f (3e:406f) pop bc ret -Func_f807d: ; f807d (3e:407d) +Music2_Init: ; f807d (3e:407d) xor a ld [rNR52], a ld a, $80 @@ -114,10 +114,10 @@ Func_f807d: ; f807d (3e:407d) ld a, $ff ld [rNR51], a ld a, $3d - ld [wdd81], a + ld [wCurSongBank], a ld a, $80 - ld [wdd80], a - ld [wdd82], a + ld [wCurSongID], a + ld [wCurSfxID], a ld a, $77 ; set both speakers to max volume ld [wMusicPanning], a xor a @@ -131,14 +131,14 @@ Func_f807d: ; f807d (3e:407d) ld [wMusicDC], a ld de, $0001 ld bc, $0000 -.asm_f80bb +.zeroLoop1 ld hl, wMusicIsPlaying add hl, bc ld [hl], d ld hl, wMusicTie add hl, bc ld [hl], d - ld hl, $ddb3 + ld hl, wddb3 add hl, bc ld [hl], d ld hl, wMusicEC @@ -150,65 +150,65 @@ Func_f807d: ; f807d (3e:407d) inc c ld a, c cp $4 - jr nz, .asm_f80bb + jr nz, .zeroLoop1 ld hl, Music2_ChannelLoopStacks ld bc, wMusicChannelStackPointers ld d, $8 -.asm_f80e2 +.zeroLoop2 ld a, [hli] ld [bc], a inc bc dec d - jr nz, .asm_f80e2 + jr nz, .zeroLoop2 ret -Func_f80e9: ; f80e9 (3e:40e9) - call Func_f82a4 - call Func_f811c +Music2_Update: ; f80e9 (3e:40e9) + call Music2_EmptyFunc + call Music2_CheckForNewSound ld hl, Func_fc003 call Bankswitch3dTo3f - ld a, [wdd81] + ld a, [wCurSongBank] ldh [hBankROM], a ld [MBC3RomBank], a ld a, [wddf2] cp $0 - jr z, .asm_f8109 + jr z, .updateChannels call Func_f8980 - jr .asm_f8115 -.asm_f8109 - call Func_f82a5 - call Func_f830a - call Func_f836f - call Func_f83ce -.asm_f8115 + jr .skipChannelUpdates +.updateChannels + call Music2_UpdateChannel1 + call Music2_UpdateChannel2 + call Music2_UpdateChannel3 + call Music2_UpdateChannel4 +.skipChannelUpdates call Func_f8866 - call Func_f89b1 + call Music2_CheckForEndOfSong ret -Func_f811c: ; f811c (3e:411c) - ld a, [wdd80] +Music2_CheckForNewSound: ; f811c (3e:411c) + ld a, [wCurSongID] rla - jr c, .asm_f8133 - call Func_f814b - ld a, [wdd80] - call Music2_PlaySong - ld a, [wdd80] + jr c, .checkForNewSfx + call Music2_StopAllChannels + ld a, [wCurSongID] + call Music2_BeginSong + ld a, [wCurSongID] or $80 - ld [wdd80], a -.asm_f8133 - ld a, [wdd82] + ld [wCurSongID], a +.checkForNewSfx + ld a, [wCurSfxID] rla - jr c, .asm_f814a - ld a, [wdd82] + jr c, .noNewSound + ld a, [wCurSfxID] ld hl, Func_fc000 call Bankswitch3dTo3f - ld a, [wdd82] + ld a, [wCurSfxID] or $80 - ld [wdd82], a -.asm_f814a + ld [wCurSfxID], a +.noNewSound ret -Func_f814b: ; f814b (3e:414b) +Music2_StopAllChannels: ; f814b (3e:414b) ld a, [wdd8c] ld d, a xor a @@ -248,14 +248,14 @@ Func_f814b: ; f814b (3e:414b) ret ; plays the song given by the id in a -Music2_PlaySong: ; f818c (3e:418c) +Music2_BeginSong: ; f818c (3e:418c) push af ld c, a ld b, $0 ld hl, SongBanks2 add hl, bc ld a, [hl] - ld [wdd81], a + ld [wCurSongBank], a ldh [hBankROM], a ld [MBC3RomBank], a pop af @@ -379,10 +379,10 @@ Music2_PlaySong: ; f818c (3e:418c) ld [wddf2], a ret -Func_f82a4: ; f82a4 (3e:42a4) +Music2_EmptyFunc: ; f82a4 (3e:42a4) ret -Func_f82a5: ; f82a5 (3e:42a5) +Music2_UpdateChannel1: ; f82a5 (3e:42a5) ld a, [wMusicIsPlaying] or a jr z, .asm_f82fa @@ -435,7 +435,7 @@ Func_f82a5: ; f82a5 (3e:42a5) .asm_f8309 ret -Func_f830a: ; f830a (3e:430a) +Music2_UpdateChannel2: ; f830a (3e:430a) ld a, [wMusicIsPlaying + 1] or a jr z, .asm_f835f @@ -488,7 +488,7 @@ Func_f830a: ; f830a (3e:430a) .asm_f836e ret -Func_f836f: ; f836f (3e:436f) +Music2_UpdateChannel3: ; f836f (3e:436f) ld a, [wMusicIsPlaying + 2] or a jr z, .asm_f83be @@ -537,7 +537,7 @@ Func_f836f: ; f836f (3e:436f) .asm_f83cd ret -Func_f83ce: ; f83ce (3e:43ce) +Music2_UpdateChannel4: ; f83ce (3e:43ce) ld a, [wMusicIsPlaying + 3] or a jr z, .asm_f8400 @@ -656,10 +656,10 @@ Music2_note: ; f448c (3d:448c) jr z, .asm_f84b0 ld [hl], $1 xor a - ld hl, $dddb + ld hl, wdddb add hl, bc ld [hl], a - ld hl, $dde3 + ld hl, wdde3 add hl, bc ld [hl], a inc [hl] @@ -726,12 +726,12 @@ Music2_note: ; f448c (3d:448c) pop bc pop hl .asm_f84fb - ld hl, $ddc3 + ld hl, wddc3 add hl, bc ld [hl], a pop af and $f0 - ld hl, $ddb7 + ld hl, wddb7 add hl, bc ld [hl], a or a @@ -776,7 +776,7 @@ Music2_note: ; f448c (3d:448c) and $77 or d ld [wMusicDC], a - ld de, $ddab + ld de, wddab ld a, [hli] ld [de], a inc de @@ -793,14 +793,14 @@ Music2_note: ; f448c (3d:448c) ld b, $0 ld a, l ld d, h - ld hl, $dded + ld hl, wdded ld [hli], a ld [hl], d ld a, $1 ld [wddef], a jr .asm_f858e .asm_f8564 - ld hl, $dda5 + ld hl, wMusicCh1CurPitch add hl, bc add hl, bc push hl @@ -831,7 +831,7 @@ Music2_note: ; f448c (3d:448c) ld [hl], d .asm_f858e pop de - ld hl, $dd95 + ld hl, wMusicChannelPointers add hl, bc add hl, bc ld [hl], e @@ -1201,7 +1201,7 @@ Func_f875a: ; f875a (3e:475a) cp $0 jr z, .asm_f878c ld d, $0 - ld hl, $dd92 + ld hl, wMusicTie + 1 ld a, [hl] cp $80 jr z, .asm_f8779 @@ -1220,7 +1220,7 @@ Func_f875a: ; f875a (3e:475a) .asm_f878b ret .asm_f878c - ld hl, $dd92 + ld hl, wMusicTie + 1 ld [hl], $0 ld hl, rNR22 ld a, $8 @@ -1237,16 +1237,16 @@ Func_f879c: ; f879c (3e:479c) ld d, $0 ld a, [wMusicWaveChange] or a - jr z, .asm_f87b3 + jr z, .noWaveChange xor a ld [rNR30], a - call Func_f87ea + call Music2_LoadWaveInstrument ld d, $80 -.asm_f87b3 +.noWaveChange ld a, [wddb9] cp $0 jr z, .asm_f87e1 - ld hl, $dd93 + ld hl, wMusicTie + 2 ld a, [hl] cp $80 jr z, .asm_f87cc @@ -1275,7 +1275,7 @@ Func_f879c: ; f879c (3e:479c) ld [rNR30], a ret -Func_f87ea: ; f879c (3e:47ea) +Music2_LoadWaveInstrument: ; f879c (3e:47ea) ld a, [wMusicWave] add a ld d, $0 @@ -1287,14 +1287,14 @@ Func_f87ea: ; f879c (3e:47ea) ld l, a ld b, d ld de, $ff30 -.asm_f87fc +.copyWaveLoop ld a, [hli] ld [de], a inc de inc b ld a, b cp $10 - jr nz, .asm_f87fc + jr nz, .copyWaveLoop xor a ld [wMusicWaveChange], a ret @@ -1307,7 +1307,7 @@ Func_f880a: ; f880a (3e:480a) cp $0 jr z, asm_f882a ld de, rNR41 - ld hl, $ddab + ld hl, wddab ld a, [hli] ld [de], a inc e @@ -1340,7 +1340,7 @@ Func_f8839: ; f8839 (3e:4839) ld [wddef], a jr .asm_f8859 .asm_f8846 - ld hl, $dded + ld hl, wdded ld a, [hli] ld d, [hl] ld e, a @@ -1406,7 +1406,7 @@ Func_f8898: ; f8898 (3e:4898) ld a, [hl] cp $0 jr z, .asm_f8902 - ld hl, $dde3 + ld hl, wdde3 add hl, bc cp [hl] jr z, .asm_f88ab @@ -1424,7 +1424,7 @@ Func_f8898: ; f8898 (3e:4898) ld h, [hl] ld l, a push hl - ld hl, $dddb + ld hl, wdddb add hl, bc ld d, $0 ld e, [hl] @@ -1434,7 +1434,7 @@ Func_f8898: ; f8898 (3e:4898) ld a, [hli] cp $80 jr z, .asm_f88ee - ld hl, $dda5 + ld hl, wMusicCh1CurPitch add hl, bc add hl, bc ld e, [hl] @@ -1465,7 +1465,7 @@ Func_f8898: ; f8898 (3e:4898) ret .asm_f88ee push hl - ld hl, $dddb + ld hl, wdddb add hl, bc ld [hl], $0 pop hl @@ -1477,7 +1477,7 @@ Func_f8898: ; f8898 (3e:4898) ld [hl], a jr .asm_f88ab .asm_f8902 - ld hl, $dda5 + ld hl, wMusicCh1CurPitch add hl, bc add hl, bc ld e, [hl] @@ -1487,13 +1487,13 @@ Func_f8898: ; f8898 (3e:4898) Func_f890b: ; f890b (3e:490b) cp $0 - jr nz, .asm_f892c + jr nz, .notChannel1 ld a, [wMusicVibratoDelay] cp $0 - jr z, .asm_f8966 + jr z, .done ld a, [wdd8c] bit 0, a - jr nz, .asm_f8966 + jr nz, .done ld a, e ld [rNR13], a ld a, [rNR11] @@ -1503,15 +1503,15 @@ Func_f890b: ; f890b (3e:490b) and $3f ld [rNR14], a ret -.asm_f892c +.notChannel1 cp $1 - jr nz, .asm_f894b + jr nz, .notChannel2 ld a, [wMusicVibratoDelay + 1] cp $0 - jr z, .asm_f8966 + jr z, .done ld a, [wdd8c] bit 1, a - jr nz, .asm_f8966 + jr nz, .done ld a, e ld [rNR23], a ld a, [rNR21] @@ -1520,22 +1520,22 @@ Func_f890b: ; f890b (3e:490b) ld a, d ld [rNR24], a ret -.asm_f894b +.notChannel2 cp $2 - jr nz, .asm_f8966 + jr nz, .done ld a, [wMusicVibratoDelay + 2] cp $0 - jr z, .asm_f8966 + jr z, .done ld a, [wdd8c] bit 2, a - jr nz, .asm_f8966 + jr nz, .done ld a, e ld [rNR33], a xor a ld [rNR31], a ld a, d ld [rNR34], a -.asm_f8966 +.done ret Func_f8967: ; f8967 (3e:4967) @@ -1592,7 +1592,7 @@ Func_f8980: ; f8980 (3e:4980) .asm_f89b0 ret -Func_f89b1: ; f89b1 (3e:49b1) +Music2_CheckForEndOfSong: ; f89b1 (3e:49b1) ld hl, wMusicIsPlaying xor a add [hl] @@ -1605,54 +1605,54 @@ Func_f89b1: ; f89b1 (3e:49b1) or a ret nz ld a, $80 - ld [wdd80], a + ld [wCurSongID], a ret -Func_f89c4: ; f89c4 (3e:49c4) +Music2_PauseSong: ; f89c4 (3e:49c4) di call Func_f8980 - call Func_f89dc - call Func_f814b + call Music2_BackupSong + call Music2_StopAllChannels ei ret -Func_f89d0: ; f89d0 (3e:49d0) +Music2_ResumeSong: ; f89d0 (3e:49d0) di call Func_f8980 - call Func_f814b - call Func_f8b01 + call Music2_StopAllChannels + call Music2_LoadBackup ei ret -Func_f89dc: ; f89dc (3e:49dc) - ld a, [wdd80] - ld [wde55], a - ld a, [wdd81] - ld [wde56], a +Music2_BackupSong: ; f89dc (3e:49dc) + ld a, [wCurSongID] + ld [wCurSongIDBackup], a + ld a, [wCurSongBank] + ld [wCurSongBankBackup], a ld a, [wMusicDC] - ld [wde57], a + ld [wMusicDCBackup], a ld hl, wMusicDuty1 - ld de, $de58 + ld de, wMusicDuty1Backup ld a, $4 call Music2_CopyData ld a, [wMusicWave] - ld [wde5c], a + ld [wMusicWaveBackup], a ld a, [wMusicWaveChange] - ld [wde5d], a + ld [wMusicWaveChangeBackup], a ld hl, wMusicIsPlaying - ld de, $de5e + ld de, wMusicIsPlayingBackup ld a, $4 call Music2_CopyData ld hl, wMusicTie - ld de, $de62 + ld de, wMusicTieBackup ld a, $4 call Music2_CopyData - ld hl, $dd95 - ld de, $de66 + ld hl, wMusicChannelPointers + ld de, wMusicChannelPointersBackup ld a, $8 call Music2_CopyData ld hl, wMusicMainLoopStart - ld de, $de6e + ld de, wMusicMainLoopStartBackup ld a, $8 call Music2_CopyData ld a, [wddab] @@ -1660,47 +1660,47 @@ Func_f89dc: ; f89dc (3e:49dc) ld a, [wddac] ld [wde77], a ld hl, wMusicOctave - ld de, $de78 + ld de, wMusicOctaveBackup ld a, $4 call Music2_CopyData - ld hl, $ddb3 - ld de, $de7c + ld hl, wddb3 + ld de, wde7c ld a, $4 call Music2_CopyData - ld hl, $ddb7 - ld de, $de80 + ld hl, wddb7 + ld de, wde80 ld a, $4 call Music2_CopyData - ld hl, $ddbb - ld de, $de84 + ld hl, wddbb + ld de, wde84 ld a, $4 call Music2_CopyData ld hl, wMusicE8 - ld de, $de88 + ld de, wMusicE8Backup ld a, $4 call Music2_CopyData - ld hl, $ddc3 - ld de, $de8c + ld hl, wddc3 + ld de, wde8c ld a, $4 call Music2_CopyData ld hl, wMusicE9 - ld de, $de90 + ld de, wMusicE9Backup ld a, $4 call Music2_CopyData ld hl, wMusicEC - ld de, $de94 + ld de, wMusicECBackup ld a, $4 call Music2_CopyData ld hl, wMusicSpeed - ld de, $de98 + ld de, wMusicSpeedBackup ld a, $4 call Music2_CopyData ld hl, wMusicVibratoType2 - ld de, $de9c + ld de, wMusicVibratoType2Backup ld a, $4 call Music2_CopyData ld hl, wMusicVibratoDelay - ld de, $dea0 + ld de, wMusicVibratoDelayBackup ld a, $4 call Music2_CopyData ld a, $0 @@ -1709,57 +1709,57 @@ Func_f89dc: ; f89dc (3e:49dc) ld [wdddb + 2], a ld [wdddb + 3], a ld hl, wMusicVolume - ld de, $dea4 + ld de, wMusicVolumeBackup ld a, $3 call Music2_CopyData ld hl, wMusicE4 - ld de, $dea7 + ld de, wMusicE4Backup ld a, $3 call Music2_CopyData - ld hl, $dded - ld de, $deaa + ld hl, wdded + ld de, wdeaa ld a, $2 call Music2_CopyData ld a, $0 ld [wdeac], a ld hl, wMusicChannelStackPointers - ld de, $dead + ld de, wMusicChannelStackPointersBackup ld a, $8 call Music2_CopyData - ld hl, $ddfb - ld de, $deb5 - ld a, $30 + ld hl, wMusicCh1Stack + ld de, wMusicCh1StackBackup + ld a, $c * 4 call Music2_CopyData ret -Func_f8b01: ; f8b01 (3e:4b01) - ld a, [wde55] - ld [wdd80], a - ld a, [wde56] - ld [wdd81], a - ld a, [wde57] +Music2_LoadBackup: ; f8b01 (3e:4b01) + ld a, [wCurSongIDBackup] + ld [wCurSongID], a + ld a, [wCurSongBankBackup] + ld [wCurSongBank], a + ld a, [wMusicDCBackup] ld [wMusicDC], a - ld hl, $de58 + ld hl, wMusicDuty1Backup ld de, wMusicDuty1 ld a, $4 call Music2_CopyData - ld a, [wde5c] + ld a, [wMusicWaveBackup] ld [wMusicWave], a ld a, $1 ld [wMusicWaveChange], a - ld hl, $de5e + ld hl, wMusicIsPlayingBackup ld de, wMusicIsPlaying ld a, $4 call Music2_CopyData - ld hl, $de62 + ld hl, wMusicTieBackup ld de, wMusicTie ld a, $4 call Music2_CopyData - ld hl, $de66 - ld de, $dd95 + ld hl, wMusicChannelPointersBackup + ld de, wMusicChannelPointers ld a, $8 call Music2_CopyData - ld hl, $de6e + ld hl, wMusicMainLoopStartBackup ld de, wMusicMainLoopStart ld a, $8 call Music2_CopyData @@ -1767,69 +1767,69 @@ Func_f8b01: ; f8b01 (3e:4b01) ld [wddab], a ld a, [wde77] ld [wddac], a - ld hl, $de78 + ld hl, wMusicOctaveBackup ld de, wMusicOctave ld a, $4 call Music2_CopyData - ld hl, $de7c - ld de, $ddb3 + ld hl, wde7c + ld de, wddb3 ld a, $4 call Music2_CopyData - ld hl, $de80 - ld de, $ddb7 + ld hl, wde80 + ld de, wddb7 ld a, $4 call Music2_CopyData - ld hl, $de84 - ld de, $ddbb + ld hl, wde84 + ld de, wddbb ld a, $4 call Music2_CopyData - ld hl, $de88 + ld hl, wMusicE8Backup ld de, wMusicE8 ld a, $4 call Music2_CopyData - ld hl, $de8c - ld de, $ddc3 + ld hl, wde8c + ld de, wddc3 ld a, $4 call Music2_CopyData - ld hl, $de90 + ld hl, wMusicE9Backup ld de, wMusicE9 ld a, $4 call Music2_CopyData - ld hl, $de94 + ld hl, wMusicECBackup ld de, wMusicEC ld a, $4 call Music2_CopyData - ld hl, $de98 + ld hl, wMusicSpeedBackup ld de, wMusicSpeed ld a, $4 call Music2_CopyData - ld hl, $de9c + ld hl, wMusicVibratoType2Backup ld de, wMusicVibratoType2 ld a, $4 call Music2_CopyData - ld hl, $dea0 + ld hl, wMusicVibratoDelayBackup ld de, wMusicVibratoDelay ld a, $4 call Music2_CopyData - ld hl, $dea4 + ld hl, wMusicVolumeBackup ld de, wMusicVolume ld a, $3 call Music2_CopyData - ld hl, $dea7 + ld hl, wMusicE4Backup ld de, wMusicE4 ld a, $3 call Music2_CopyData - ld hl, $deaa - ld de, $dded + ld hl, wdeaa + ld de, wdded ld a, $2 call Music2_CopyData ld a, [wdeac] ld [wddef], a - ld hl, $dead + ld hl, wMusicChannelStackPointersBackup ld de, wMusicChannelStackPointers ld a, $8 call Music2_CopyData - ld hl, $deb5 + ld hl, wMusicCh1StackBackup ld de, wMusicCh1Stack ld a, $c * 4 call Music2_CopyData @@ -1838,12 +1838,12 @@ Func_f8b01: ; f8b01 (3e:4b01) ; copies a bytes from hl to de Music2_CopyData: ; f8c18 (3e:4c18) ld c, a -.asm_f8c19 +.loop ld a, [hli] ld [de], a inc de dec c - jr nz, .asm_f8c19 + jr nz, .loop ret Music2_ChannelLoopStacks: ; f8c20 (3e:4c20) diff --git a/src/audio/sfx.asm b/src/audio/sfx.asm index 8bd9fd3..2b2732c 100755 --- a/src/audio/sfx.asm +++ b/src/audio/sfx.asm @@ -1,13 +1,13 @@ Func_fc000: ; fc000 (3f:4000) - jp Func_fc006 + jp SFX_PlaySfx Func_fc003: ; fc003 (3f:4003) jp Func_fc059 -Func_fc006: ; fc006 (3f:4006) +SFX_PlaySfx: ; fc006 (3f:4006) ld hl, NumberOfSFX cp [hl] - jr nc, .asm_fc058 + jr nc, .invalidID add a ld c, a ld b, $0 @@ -26,7 +26,7 @@ Func_fc006: ; fc006 (3f:4006) ld a, [hli] ld [wdd8c], a ld [wde54], a - ld de, $de4b + ld de, wde4b ld c, $0 .asm_fc031 ld a, [wde54] @@ -40,10 +40,10 @@ Func_fc006: ; fc006 (3f:4006) ld [de], a inc de push hl - ld hl, $de2f + ld hl, wde2f add hl, bc ld [hl], $0 - ld hl, $de33 + ld hl, wde33 add hl, bc ld [hl], $1 pop hl @@ -56,7 +56,7 @@ Func_fc006: ; fc006 (3f:4006) ld a, $4 cp c jr nz, .asm_fc031 -.asm_fc058 +.invalidID ret Func_fc059: ; fc059 (3f:4059) @@ -72,12 +72,12 @@ Func_fc059: ; fc059 (3f:4059) ld a, [wdd8c] ld [wde54], a .asm_fc06c - ld hl, $de54 + ld hl, wde54 ld a, [hl] rrca ld [hl], a jr nc, .asm_fc08d - ld hl, $de33 + ld hl, wde33 add hl, bc ld a, [hl] dec a @@ -86,7 +86,7 @@ Func_fc059: ; fc059 (3f:4059) call Func_fc18d jr .asm_fc08d .asm_fc082 - ld hl, $de4b + ld hl, wde4b add hl, bc add hl, bc ld a, [hli] @@ -146,7 +146,7 @@ SFX_0: ; fc0ce (3f:40ce) ld a, [hli] ld e, a push hl - ld hl, $de37 + ld hl, wde37 add hl, bc add hl, bc push bc @@ -164,7 +164,7 @@ SFX_0: ; fc0ce (3f:40ce) ld d, a .asm_fc0e9 pop bc - ld hl, $de2b + ld hl, wde2b add hl, bc ld a, [hl] ld [hl], $0 @@ -186,7 +186,7 @@ SFX_0: ; fc0ce (3f:40ce) ld [hl], d pop de Func_fc105: ; fc105 (3f:4105) - ld hl, $de4b + ld hl, wde4b add hl, bc add hl, bc ld [hl], e @@ -195,7 +195,7 @@ Func_fc105: ; fc105 (3f:4105) ret SFX_1: ; fc10e (3f:410e) - ld hl, $de2b + ld hl, wde2b add hl, bc ld a, $80 ld [hl], a @@ -229,7 +229,7 @@ SFX_2: ; fc127 (3f:4127) jp Func_fc094 SFX_loop: ; fc138 (3f:4138) - ld hl, $de43 + ld hl, wde43 add hl, bc add hl, bc pop de @@ -238,7 +238,7 @@ SFX_loop: ; fc138 (3f:4138) ld [hl], e inc hl ld [hl], d - ld hl, $de3f + ld hl, wde3f add hl, bc ld [hl], a ld l, e @@ -246,13 +246,13 @@ SFX_loop: ; fc138 (3f:4138) jp Func_fc094 SFX_endloop: ; fc14d (3f:414d) - ld hl, $de3f + ld hl, wde3f add hl, bc ld a, [hl] dec a jr z, .asm_fc162 ld [hl], a - ld hl, $de43 + ld hl, wde43 add hl, bc add hl, bc ld a, [hli] @@ -265,7 +265,7 @@ SFX_endloop: ; fc14d (3f:414d) jp Func_fc094 SFX_5: ; fc166 (3f:4166) - ld hl, $de2f + ld hl, wde2f add hl, bc ld e, l ld d, h @@ -283,7 +283,7 @@ SFX_6: ; fc172 (3f:4172) .asm_fc17c call Func_fc18d .asm_fc17f - ld hl, $de33 + ld hl, wde33 add hl, bc ld e, l ld d, h @@ -295,12 +295,12 @@ SFX_6: ; fc172 (3f:4172) jp Func_fc105 Func_fc18d: ; fc18d (3f:418d) - ld hl, $de2f + ld hl, wde2f add hl, bc ld a, [hl] or a jr z, .asm_fc1cc - ld hl, $de37 + ld hl, wde37 add hl, bc add hl, bc bit 7, a @@ -325,7 +325,7 @@ Func_fc18d: ; fc18d (3f:418d) adc b .asm_fc1b1 ld [hl], a - ld hl, $de2b + ld hl, wde2b add hl, bc ld d, [hl] ld [hl], $0 @@ -349,11 +349,11 @@ Func_fc18d: ; fc18d (3f:418d) ret Func_fc1cd: ; fc1cd (3f:41cd) - ld hl, $de32 + ld hl, wde32 ld a, [hl] or a jr z, .asm_fc201 - ld hl, $de3d + ld hl, wde3d bit 7, a jr z, .asm_fc1e5 xor $ff @@ -375,7 +375,7 @@ Func_fc1cd: ; fc1cd (3f:41cd) xor e and $8 swap a - ld hl, $de2e + ld hl, wde2e ld e, [hl] ld [hl], $0 or e @@ -434,7 +434,7 @@ SFX_8: ; fc22d (3f:422d) jr .asm_fc234 .asm_fc23c ld d, a - ld hl, $dd85 + ld hl, wdd85 ld a, [hl] and e or d @@ -476,7 +476,7 @@ Func_fc26c: ; fc26c (3f:426c) ld [wde53], a ld [wdd83], a ld a, $80 - ld [wdd82], a + ld [wCurSfxID], a ret Func_fc279: ; fc279 (3f:4279) diff --git a/src/wram.asm b/src/wram.asm index fd102f6..3dde46c 100755 --- a/src/wram.asm +++ b/src/wram.asm @@ -874,8 +874,6 @@ wd111:: ; d111 wd112:: ; d112 ds $1 -;--- Music ------------------------------------------------ - wMatchStartTheme:: ; d113 ds $1 @@ -1201,20 +1199,27 @@ wBoosterDataTypeChanceData:: ; d689 ds $9 ds $6ee -wdd80:: ; dd80 +;--- Music ------------------------------------------------ + +; bit 7 is set once the song has been started +wCurSongID:: ; dd80 ds $1 -wdd81:: ; dd81 +wCurSongBank:: ; dd81 ds $1 -wdd82:: ; dd82 +; bit 7 is set once the sfx has been started +wCurSfxID:: ; dd82 ds $1 wdd83:: ; dd83 ds $1 wMusicDC:: ; dd84 - ds $2 + ds $1 + +wdd85:: ; dd85 + ds $1 wMusicDuty1:: ; dd86 ds $1 @@ -1270,7 +1275,10 @@ wddac:: ; ddac ds $3 wMusicOctave:: ; ddaf - ds $8 + ds $4 + +wddb3:: ; ddb3 + ds $4 wddb7:: ; ddb7 ds $1 @@ -1321,7 +1329,10 @@ wMusicVolume:: ; dde7 ds $3 wMusicE4:: ; ddea - ds $5 + ds $3 + +wdded:: ; dded + ds $2 wddef:: ; ddef ds $1 @@ -1354,7 +1365,37 @@ wMusicCh3Stack:: ; de13 wMusicCh4Stack:: ; de1f ds $c - ds $28 +;--- SFX -------------------------------------------------- + +wde2b:: ; de2b + ds $3 + +wde2e:: ; de2e + ds $1 + +wde2f:: ; de2f + ds $3 + +wde32:: ; de32 + ds $1 + +wde33:: ; de33 + ds $4 + +wde37:: ; de37 + ds $6 + +wde3d:: ; de3d + ds $2 + +wde3f:: ; de3f + ds $4 + +wde43:: ; de43 + ds $8 + +wde4b:: ; de4b + ds $8 wde53:: ; de53 ds $1 @@ -1362,27 +1403,91 @@ wde53:: ; de53 wde54:: ; de54 ds $1 -wde55:: ; de55 +wCurSongIDBackup:: ; de55 ds $1 -wde56:: ; de56 +wCurSongBankBackup:: ; de56 ds $1 -wde57:: ; de57 - ds $5 +wMusicDCBackup:: ; de57 + ds $1 + +wMusicDuty1Backup:: ; de58 + ds $4 -wde5c:: ; de5c +wMusicWaveBackup:: ; de5c ds $1 -wde5d:: ; de5d - ds $19 +wMusicWaveChangeBackup:: ; de5d + ds $1 + +wMusicIsPlayingBackup:: ; de5e + ds $4 + +wMusicTieBackup:: ; de62 + ds $4 + +wMusicChannelPointersBackup:: ; de66 + ds $8 + +wMusicMainLoopStartBackup:: ; de6e + ds $8 wde76:: ; de76 ds $1 wde77:: ; de77 - ds $35 + ds $1 + +wMusicOctaveBackup:: ; de78 + ds $4 + +wde7c:: ; de7c + ds $4 + +wde80:: ; de80 + ds $4 + +wde84:: ; de84 + ds $4 + +wMusicE8Backup:: ; de88 + ds $4 + +wde8c:: ; de8c + ds $4 + +wMusicE9Backup:: ; de90 + ds $4 + +wMusicECBackup:: ; de94 + ds $4 + +wMusicSpeedBackup:: ; de98 + ds $4 + +wMusicVibratoType2Backup:: ; de9c + ds $4 + +wMusicVibratoDelayBackup:: ; dea0 + ds $4 + +wMusicVolumeBackup:: ; dea4 + ds $3 + +wMusicE4Backup:: ; dea7 + ds $3 + +wdeaa:: ; deaa + ds $2 wdeac:: ; deac + ds $1 + +wMusicChannelStackPointersBackup:: ; dead + ds $8 + +wMusicCh1StackBackup:: ; deb5 + ds $c * 4 INCLUDE "sram.asm" |