@@ -14,27 +14,28 @@ _InitSound::
1414 push bc
1515 push af
1616 call MusicOff
17+
1718 ld hl , rAUDVOL ; channel control registers
1819 xor a
19- ld [ hli ], a ; rAUDVOL ; volume/vin
20+ ld [ hli ], a ; rAUDVOL ; volume/vin
2021 ld [ hli ], a ; rAUDTERM ; sfx channels
2122 ld a , $ 80 ; all channels on
22- ld [ hli ], a ; rAUDENA ; music channels
23+ ld [ hli ], a ; rAUDENA ; music channels
2324
24- ld hl , rAUD1SWEEP ; sound channel registers
25+ ld hl , AUD1RAM ; sound channel registers
2526 ld e , NUM_MUSIC_CHANS
2627.clearsound
27- ; sound channel 1 2 3 4
28+ ; channel AUD1RAM, AUD2RAM, AUD3RAM, AUD4RAM
2829 xor a
29- ld [ hli ], a ; rAUD1SWEEP, rNR20, rAUD3ENA, rNR40 ; sweep = 0
30+ ld [ hli ], a ; rAUD1SWEEP, unused, rAUD3ENA, unused ; sweep = 0
3031
31- ld [ hli ], a ; rAUD1LEN, rAUD2LEN, rAUD3LEN, rAUD4LEN ; length/wavepattern = 0
32+ ld [ hli ], a ; rAUD1LEN, rAUD2LEN, rAUD3LEN, rAUD4LEN ; length/wavepattern = 0
3233 ld a , $ 8
33- ld [ hli ], a ; rAUD1ENV, rAUD2ENV, rAUD3LEVEL, rAUD4ENV ; envelope = 0
34+ ld [ hli ], a ; rAUD1ENV, rAUD2ENV, rAUD3LEVEL, rAUD4ENV ; envelope = 0
3435 xor a
35- ld [ hli ], a ; rAUD1LOW, rAUD2LOW, rAUD3LOW, rAUD4POLY ; frequency lo = 0
36+ ld [ hli ], a ; rAUD1LOW, rAUD2LOW, rAUD3LOW, rAUD4POLY ; frequency lo = 0
3637 ld a , $ 80
37- ld [ hli ], a ; rAUD1HIGH, rAUD2HIGH, rAUD3HIGH, rAUD4GO ; restart sound (freq hi = 0)
38+ ld [ hli ], a ; rAUD1HIGH, rAUD2HIGH, rAUD3HIGH, rAUD4GO ; restart sound (freq hi = 0)
3839 dec e
3940 jr nz , .clearsound
4041
@@ -293,7 +294,7 @@ UpdateChannels:
293294 ldh a , [ rAUDENA ]
294295 and % 10001110 ; ch1 off
295296 ldh [ rAUDENA ], a
296- ld hl , rAUD1SWEEP
297+ ld hl , AUD1RAM
297298 call ClearChannel
298299 ret
299300
@@ -353,7 +354,7 @@ UpdateChannels:
353354 ldh a , [ rAUDENA ]
354355 and % 10001101 ; ch2 off
355356 ldh [ rAUDENA ], a
356- ld hl , rAUD2LEN - 1 ; there is no rNR20
357+ ld hl , AUD2RAM
357358 call ClearChannel
358359 ret
359360
@@ -399,7 +400,7 @@ UpdateChannels:
399400 ldh a , [ rAUDENA ]
400401 and % 10001011 ; ch3 off
401402 ldh [ rAUDENA ], a
402- ld hl , rAUD3ENA
403+ ld hl , AUD3RAM
403404 call ClearChannel
404405 ret
405406
491492 ldh a , [ rAUDENA ]
492493 and % 10000111 ; ch4 off
493494 ldh [ rAUDENA ], a
494- ld hl , rAUD4LEN - 1 ; there is no rNR40
495+ ld hl , AUD4RAM
495496 call ClearChannel
496497 ret
497498
@@ -2798,13 +2799,14 @@ ChannelPointers:
27982799
27992800ClearChannels::
28002801; runs ClearChannel for all 4 channels
2801- ld hl , rAUDVOL
2802+ ld hl , rAUDVOL ; channel control registers
28022803 xor a
2803- ld [ hli ], a
2804- ld [ hli ], a
2805- ld a , $ 80
2806- ld [ hli ], a
2807- ld hl , rAUD1SWEEP
2804+ ld [ hli ], a ; rAUDVOL ; volume/vin
2805+ ld [ hli ], a ; rAUDTERM ; sfx channels
2806+ ld a , $ 80 ; all channels on
2807+ ld [ hli ], a ; rAUDENA ; music channels
2808+ ld hl , AUD1RAM
2809+
28082810 ld e , NUM_MUSIC_CHANS
28092811. loop
28102812 call ClearChannel
@@ -2813,20 +2815,20 @@ ClearChannels::
28132815 ret
28142816
28152817ClearChannel:
2816- ; input: hl = beginning hw sound register (rAUD1SWEEP, rNR20, rAUD3ENA, rNR40 )
2818+ ; input: hl = beginning hw sound register (AUD1RAM, AUD2RAM, AUD3RAM, AUD4RAM )
28172819; output: 00 00 80 00 80
28182820
2819- ; sound channel 1 2 3 4
2821+ ; channel AUD1RAM, AUD2RAM, AUD3RAM, AUD4RAM
28202822 xor a
2821- ld [ hli ], a ; rAUD1SWEEP, rNR20, rAUD3ENA, rNR40 ; sweep = 0
2823+ ld [ hli ], a ; rAUD1SWEEP, unused, rAUD3ENA, unused ; sweep = 0
28222824
2823- ld [ hli ], a ; rAUD1LEN, rAUD2LEN, rAUD3LEN, rAUD4LEN ; length/wavepattern = 0
2825+ ld [ hli ], a ; rAUD1LEN, rAUD2LEN, rAUD3LEN, rAUD4LEN ; length/wavepattern = 0
28242826 ld a , $ 8
2825- ld [ hli ], a ; rAUD1ENV, rAUD2ENV, rAUD3LEVEL, rAUD4ENV ; envelope = 0
2827+ ld [ hli ], a ; rAUD1ENV, rAUD2ENV, rAUD3LEVEL, rAUD4ENV ; envelope = 0
28262828 xor a
2827- ld [ hli ], a ; rAUD1LOW, rAUD2LOW, rAUD3LOW, rAUD4POLY ; frequency lo = 0
2829+ ld [ hli ], a ; rAUD1LOW, rAUD2LOW, rAUD3LOW, rAUD4POLY ; frequency lo = 0
28282830 ld a , $ 80
2829- ld [ hli ], a ; rAUD1HIGH, rAUD2HIGH, rAUD3HIGH, rAUD4GO ; restart sound (freq hi = 0)
2831+ ld [ hli ], a ; rAUD1HIGH, rAUD2HIGH, rAUD3HIGH, rAUD4GO ; restart sound (freq hi = 0)
28302832 ret
28312833
28322834PlayTrainerEncounterMusic::
0 commit comments