Move more sounds to the new modify and verify method of writing to the DOC.

This commit is contained in:
Jeremy Rand 2021-01-22 00:52:41 -05:00
parent a4a4b9ae4d
commit 0d681e3571
2 changed files with 89 additions and 115 deletions

View File

@ -660,6 +660,8 @@ updateSounds_done anop
playBonusSound entry
short m
_docWait
lda >SOUND_SYSTEM_VOLUME
and #$0f
sta >SOUND_CONTROL_REG
@ -712,31 +714,25 @@ playDeathSound entry
tax
short m
_docWait
lda >SOUND_SYSTEM_VOLUME
and #$0f
ora #$20
sta >SOUND_CONTROL_REG
lda #SOUND_REG_CONTROL+DEATH_OSC_NUM
sta >SOUND_ADDR_LOW
lda #DEATH_CONTROL+SOUND_HALTED+SOUND_RIGHT_SPEAKER
sta >SOUND_DATA_REG
lda #DEATH_CONTROL+SOUND_HALTED+SOUND_LEFT_SPEAKER
sta >SOUND_DATA_REG
_writeReg #SOUND_REG_CONTROL+DEATH_OSC_NUM,#DEATH_CONTROL+SOUND_HALTED+SOUND_RIGHT_SPEAKER
_writeReg #SOUND_REG_CONTROL+DEATH_OSC_NUM+1,#DEATH_CONTROL+SOUND_HALTED+SOUND_LEFT_SPEAKER
lda #SOUND_REG_VOLUME+DEATH_OSC_NUM
sta >SOUND_ADDR_LOW
ldy #SOUND_REG_VOLUME+DEATH_OSC_NUM
lda tileRightVolume,x
jsr writeReg
iny
lda tileRightVolume,x
sta >SOUND_DATA_REG
eor #$ff
sta >SOUND_DATA_REG
jsr writeReg
lda #SOUND_REG_CONTROL+DEATH_OSC_NUM
sta >SOUND_ADDR_LOW
lda #DEATH_CONTROL+SOUND_RIGHT_SPEAKER
sta >SOUND_DATA_REG
lda #DEATH_CONTROL+SOUND_LEFT_SPEAKER
sta >SOUND_DATA_REG
_writeReg #SOUND_REG_CONTROL+DEATH_OSC_NUM,#DEATH_CONTROL+SOUND_RIGHT_SPEAKER
_writeReg #SOUND_REG_CONTROL+DEATH_OSC_NUM+1,#DEATH_CONTROL+SOUND_LEFT_SPEAKER
long m
rtl
@ -744,31 +740,25 @@ playDeathSound entry
playKillSound entry
short m
_docWait
lda >SOUND_SYSTEM_VOLUME
and #$0f
ora #$20
sta >SOUND_CONTROL_REG
lda #SOUND_REG_CONTROL+KILL_OSC_NUM
sta >SOUND_ADDR_LOW
lda #KILL_CONTROL+SOUND_HALTED+SOUND_RIGHT_SPEAKER
sta >SOUND_DATA_REG
lda #KILL_CONTROL+SOUND_HALTED+SOUND_LEFT_SPEAKER
sta >SOUND_DATA_REG
_writeReg #SOUND_REG_CONTROL+KILL_OSC_NUM,#KILL_CONTROL+SOUND_HALTED+SOUND_RIGHT_SPEAKER
_writeReg #SOUND_REG_CONTROL+KILL_OSC_NUM+1,#KILL_CONTROL+SOUND_HALTED+SOUND_LEFT_SPEAKER
lda #SOUND_REG_VOLUME+KILL_OSC_NUM
sta >SOUND_ADDR_LOW
ldy #SOUND_REG_VOLUME+KILL_OSC_NUM
lda tileRightVolume,x
jsr writeReg
iny
lda tileRightVolume,x
sta >SOUND_DATA_REG
eor #$ff
sta >SOUND_DATA_REG
jsr writeReg
lda #SOUND_REG_CONTROL+KILL_OSC_NUM
sta >SOUND_ADDR_LOW
lda #KILL_CONTROL+SOUND_RIGHT_SPEAKER
sta >SOUND_DATA_REG
lda #KILL_CONTROL+SOUND_LEFT_SPEAKER
sta >SOUND_DATA_REG
_writeReg #SOUND_REG_CONTROL+KILL_OSC_NUM,#KILL_CONTROL+SOUND_RIGHT_SPEAKER
_writeReg #SOUND_REG_CONTROL+KILL_OSC_NUM+1,#KILL_CONTROL+SOUND_LEFT_SPEAKER
long m
rtl
@ -788,7 +778,7 @@ playFireSound entry
ldy #SOUND_REG_VOLUME+FIRE_OSC_NUM
lda tileRightVolume,x
jsr writeReg
ldy #SOUND_REG_VOLUME+FIRE_OSC_NUM+1
iny
lda tileRightVolume,x
eor #$ff
jsr writeReg
@ -802,24 +792,17 @@ playFireSound entry
playExtraLifeSound entry
short m
_docWait
lda >SOUND_SYSTEM_VOLUME
and #$0f
ora #$20
sta >SOUND_CONTROL_REG
lda #SOUND_REG_CONTROL+EXTRA_LIFE_OSC_NUM
sta >SOUND_ADDR_LOW
lda #EXTRA_LIFE_CONTROL+SOUND_HALTED+SOUND_RIGHT_SPEAKER
sta >SOUND_DATA_REG
lda #EXTRA_LIFE_CONTROL+SOUND_HALTED+SOUND_LEFT_SPEAKER
sta >SOUND_DATA_REG
_writeReg #SOUND_REG_CONTROL+EXTRA_LIFE_OSC_NUM,#EXTRA_LIFE_CONTROL+SOUND_HALTED+SOUND_RIGHT_SPEAKER
_writeReg #SOUND_REG_CONTROL+EXTRA_LIFE_OSC_NUM+1,#EXTRA_LIFE_CONTROL+SOUND_HALTED+SOUND_LEFT_SPEAKER
lda #SOUND_REG_CONTROL+EXTRA_LIFE_OSC_NUM
sta >SOUND_ADDR_LOW
lda #EXTRA_LIFE_CONTROL+SOUND_RIGHT_SPEAKER
sta >SOUND_DATA_REG
lda #EXTRA_LIFE_CONTROL+SOUND_LEFT_SPEAKER
sta >SOUND_DATA_REG
_writeReg #SOUND_REG_CONTROL+EXTRA_LIFE_OSC_NUM,#EXTRA_LIFE_CONTROL+SOUND_RIGHT_SPEAKER
_writeReg #SOUND_REG_CONTROL+EXTRA_LIFE_OSC_NUM+1,#EXTRA_LIFE_CONTROL+SOUND_LEFT_SPEAKER
long m
rtl
@ -834,29 +817,21 @@ startSegmentSound_doIt anop
stz segmentSoundIsPlaying
short m
_docWait
lda >SOUND_SYSTEM_VOLUME
and #$0f
ora #$20
sta >SOUND_CONTROL_REG
lda #SOUND_REG_CONTROL+SEGMENTS_OSC_NUM
sta >SOUND_ADDR_LOW
lda #SEGMENTS_CONTROL+SOUND_HALTED+SOUND_RIGHT_SPEAKER
sta >SOUND_DATA_REG
lda #SEGMENTS_CONTROL+SOUND_RIGHT_SPEAKER
sta >SOUND_DATA_REG
lda #SEGMENTS_CONTROL+SOUND_HALTED+SOUND_LEFT_SPEAKER
sta >SOUND_DATA_REG
lda #SEGMENTS_CONTROL+SOUND_LEFT_SPEAKER
sta >SOUND_DATA_REG
_writeReg #SOUND_REG_CONTROL+SEGMENTS_OSC_NUM,#SEGMENTS_CONTROL+SOUND_HALTED+SOUND_RIGHT_SPEAKER
_writeReg #SOUND_REG_CONTROL+SEGMENTS_OSC_NUM+1,#SEGMENTS_CONTROL+SOUND_RIGHT_SPEAKER
_writeReg #SOUND_REG_CONTROL+SEGMENTS_OSC_NUM+2,#SEGMENTS_CONTROL+SOUND_HALTED+SOUND_LEFT_SPEAKER
_writeReg #SOUND_REG_CONTROL+SEGMENTS_OSC_NUM+3,#SEGMENTS_CONTROL+SOUND_LEFT_SPEAKER
lda #SOUND_REG_VOLUME+SEGMENTS_OSC_NUM
sta >SOUND_ADDR_LOW
lda #SEGMENTS_VOLUME
sta >SOUND_DATA_REG
sta >SOUND_DATA_REG
sta >SOUND_DATA_REG
sta >SOUND_DATA_REG
_writeReg #SOUND_REG_VOLUME+SEGMENTS_OSC_NUM,#SEGMENTS_VOLUME
_writeReg #SOUND_REG_VOLUME+SEGMENTS_OSC_NUM+1,#SEGMENTS_VOLUME
_writeReg #SOUND_REG_VOLUME+SEGMENTS_OSC_NUM+2,#SEGMENTS_VOLUME
_writeReg #SOUND_REG_VOLUME+SEGMENTS_OSC_NUM+3,#SEGMENTS_VOLUME
long m
rtl
@ -872,36 +847,26 @@ stopSegmentSound_doIt anop
sta segmentSoundIsPlaying
short m
_docWait
lda >SOUND_SYSTEM_VOLUME
and #$0f
ora #$20
sta >SOUND_CONTROL_REG
lda #SOUND_REG_VOLUME+SEGMENTS_OSC_NUM
sta >SOUND_ADDR_LOW
lda #0
sta >SOUND_DATA_REG
sta >SOUND_DATA_REG
sta >SOUND_DATA_REG
sta >SOUND_DATA_REG
_writeReg #SOUND_REG_VOLUME+SEGMENTS_OSC_NUM,#0
_writeReg #SOUND_REG_VOLUME+SEGMENTS_OSC_NUM+1,#0
_writeReg #SOUND_REG_VOLUME+SEGMENTS_OSC_NUM+2,#0
_writeReg #SOUND_REG_VOLUME+SEGMENTS_OSC_NUM+3,#0
lda #SOUND_REG_CONTROL+SEGMENTS_OSC_NUM
sta >SOUND_ADDR_LOW
lda #SOUND_ONE_SHOT_MODE+SOUND_RIGHT_SPEAKER
sta >SOUND_DATA_REG
sta >SOUND_DATA_REG
lda #SOUND_ONE_SHOT_MODE+SOUND_LEFT_SPEAKER
sta >SOUND_DATA_REG
sta >SOUND_DATA_REG
_writeReg #SOUND_REG_CONTROL+SEGMENTS_OSC_NUM,#SOUND_ONE_SHOT_MODE+SOUND_RIGHT_SPEAKER
_writeReg #SOUND_REG_CONTROL+SEGMENTS_OSC_NUM+1,#SOUND_ONE_SHOT_MODE+SOUND_RIGHT_SPEAKER
_writeReg #SOUND_REG_CONTROL+SEGMENTS_OSC_NUM+2,#SOUND_ONE_SHOT_MODE+SOUND_LEFT_SPEAKER
_writeReg #SOUND_REG_CONTROL+SEGMENTS_OSC_NUM+3,#SOUND_ONE_SHOT_MODE+SOUND_LEFT_SPEAKER
lda #SOUND_REG_CONTROL+SEGMENTS_OSC_NUM
sta >SOUND_ADDR_LOW
lda #SOUND_ONE_SHOT_MODE+SOUND_HALTED+SOUND_RIGHT_SPEAKER
sta >SOUND_DATA_REG
sta >SOUND_DATA_REG
lda #SOUND_ONE_SHOT_MODE+SOUND_HALTED+SOUND_LEFT_SPEAKER
sta >SOUND_DATA_REG
sta >SOUND_DATA_REG
_writeReg #SOUND_REG_CONTROL+SEGMENTS_OSC_NUM,#SOUND_ONE_SHOT_MODE+SOUND_HALTED+SOUND_RIGHT_SPEAKER
_writeReg #SOUND_REG_CONTROL+SEGMENTS_OSC_NUM+1,#SOUND_ONE_SHOT_MODE+SOUND_HALTED+SOUND_RIGHT_SPEAKER
_writeReg #SOUND_REG_CONTROL+SEGMENTS_OSC_NUM+2,#SOUND_ONE_SHOT_MODE+SOUND_HALTED+SOUND_LEFT_SPEAKER
_writeReg #SOUND_REG_CONTROL+SEGMENTS_OSC_NUM+3,#SOUND_ONE_SHOT_MODE+SOUND_HALTED+SOUND_LEFT_SPEAKER
long m
rtl
@ -916,30 +881,31 @@ startSpiderSound_doIt anop
stz spiderSoundIsPlaying
short m
_docWait
lda >SOUND_SYSTEM_VOLUME
and #$0f
ora #$20
sta >SOUND_CONTROL_REG
lda #SOUND_REG_CONTROL+SPIDER_OSC_NUM
sta >SOUND_ADDR_LOW
lda #SPIDER_CONTROL+SOUND_HALTED+SOUND_RIGHT_SPEAKER
sta >SOUND_DATA_REG
lda #SPIDER_CONTROL+SOUND_RIGHT_SPEAKER
sta >SOUND_DATA_REG
lda #SPIDER_CONTROL+SOUND_HALTED+SOUND_LEFT_SPEAKER
sta >SOUND_DATA_REG
lda #SPIDER_CONTROL+SOUND_LEFT_SPEAKER
sta >SOUND_DATA_REG
_writeReg #SOUND_REG_CONTROL+SPIDER_OSC_NUM,#SPIDER_CONTROL+SOUND_HALTED+SOUND_RIGHT_SPEAKER
_writeReg #SOUND_REG_CONTROL+SPIDER_OSC_NUM+1,#SPIDER_CONTROL+SOUND_RIGHT_SPEAKER
_writeReg #SOUND_REG_CONTROL+SPIDER_OSC_NUM+2,#SPIDER_CONTROL+SOUND_HALTED+SOUND_LEFT_SPEAKER
_writeReg #SOUND_REG_CONTROL+SPIDER_OSC_NUM+3,#SPIDER_CONTROL+SOUND_LEFT_SPEAKER
lda #SOUND_REG_VOLUME+SPIDER_OSC_NUM
sta >SOUND_ADDR_LOW
ldy #SOUND_REG_VOLUME+SPIDER_OSC_NUM
lda tileRightVolume,x
jsr writeReg
iny
lda tileRightVolume,x
jsr writeReg
iny
lda tileRightVolume,x
sta >SOUND_DATA_REG
sta >SOUND_DATA_REG
eor #$ff
sta >SOUND_DATA_REG
sta >SOUND_DATA_REG
jsr writeReg
iny
lda tileRightVolume,x
eor #$ff
jsr writeReg
long m
rtl
@ -952,19 +918,27 @@ updateSpiderSound entry
updateSpiderSound_doIt anop
short m
_docWait
lda >SOUND_SYSTEM_VOLUME
and #$0f
ora #$20
sta >SOUND_CONTROL_REG
lda #SOUND_REG_VOLUME+SPIDER_OSC_NUM
sta >SOUND_ADDR_LOW
ldy #SOUND_REG_VOLUME+SPIDER_OSC_NUM
lda tileRightVolume,x
jsr writeReg
iny
lda tileRightVolume,x
jsr writeReg
iny
lda tileRightVolume,x
sta >SOUND_DATA_REG
sta >SOUND_DATA_REG
eor #$ff
sta >SOUND_DATA_REG
sta >SOUND_DATA_REG
jsr writeReg
iny
lda tileRightVolume,x
eor #$ff
jsr writeReg
long m
rtl

View File

@ -29,7 +29,7 @@ then
fi
# This magic ensures that clicking stop in Xcode results in the emulator terminating.
if false
if true
then
cd make
sed -i "" "s:^s7d1 *=.*$:s7d1 = $BOOTIMAGE: