mirror of
https://github.com/jeremysrand/BuGS.git
synced 2025-02-06 06:29:50 +00:00
Fix the high pitched sound at the end of the flea sound. It was an off by one leading to an extra frequency being played.
This commit is contained in:
parent
9f74cb46b2
commit
d65a4ca307
2
BUGS.md
2
BUGS.md
@ -11,7 +11,6 @@ This is a list of the software bugs (as opposed to the bugs in the game that you
|
||||
* In order to get the wrong value in Y, I noticed that the segmentSpriteOffset was overwritten with the pattern 70 02 70 02, etc.
|
||||
* Something is trashing memory.
|
||||
* A spider moving left to right went off screen and left garbage on the RHS as it exited. I have only seen this once. I think it coincided with the player dying.
|
||||
* Sometimes at the end of the flea sound, there is a short high pitched tone.
|
||||
|
||||
|
||||
|
||||
@ -19,6 +18,7 @@ This is a list of the software bugs (as opposed to the bugs in the game that you
|
||||
FIXED
|
||||
=======
|
||||
|
||||
* Sometimes at the end of the flea sound, there is a short high pitched tone.
|
||||
* Sometimes when the player dies, the "you can shoot" indicator is left behind as garbage on-screen.
|
||||
* Sometimes when you die, a spider may enter and the spider sound will start playing. Because audio is stopped by player death and it has already happened, the spider sound ends up going on even though the spider is not moving.
|
||||
* Sometimes the spider doesn't seem to freeze when the player dies. This may be related to the sound problem also. If the per-frame spider update code isn't handling player death correctly, that could explain both.
|
||||
|
@ -26,6 +26,9 @@ SOUND_REG_SIZE equ $00c0
|
||||
SOUND_HALTED equ 1
|
||||
SOUND_STARTED equ 0
|
||||
|
||||
SOUND_SWAP_MODE equ 6
|
||||
SOUND_ONE_SHOT_MODE equ 2
|
||||
|
||||
; According to all of the documentation I can find, $00 should be the right speaker and
|
||||
; $10 should be the left. But based on GSPlus and mame, I see the opposite. Still need
|
||||
; to check on my HW. But in the end, it could be that some HW demultiplexed them backwards
|
||||
@ -38,7 +41,7 @@ SPIDER_SOUND_ADDR equ $0000
|
||||
SPIDER_OSC_NUM equ 16
|
||||
SPIDER_FREQ_HIGH equ 0
|
||||
SPIDER_FREQ_LOW equ 214
|
||||
SPIDER_CONTROL equ 6
|
||||
SPIDER_CONTROL equ SOUND_SWAP_MODE
|
||||
SPIDER_SIZE equ $36
|
||||
|
||||
; OSC 10 & 11 for L/R channels
|
||||
@ -46,7 +49,7 @@ DEATH_SOUND_ADDR equ $4000
|
||||
DEATH_OSC_NUM equ 10
|
||||
DEATH_FREQ_HIGH equ 0
|
||||
DEATH_FREQ_LOW equ 214
|
||||
DEATH_CONTROL equ 2
|
||||
DEATH_CONTROL equ SOUND_ONE_SHOT_MODE
|
||||
DEATH_SIZE equ $2d
|
||||
|
||||
; OSC 12 - 15 for L/R channels in swap mode
|
||||
@ -55,7 +58,7 @@ SEGMENTS_OSC_NUM equ 12
|
||||
SEGMENTS_FREQ_HIGH equ 0
|
||||
SEGMENTS_FREQ_LOW equ 214
|
||||
SEGMENTS_VOLUME equ 128
|
||||
SEGMENTS_CONTROL equ 6
|
||||
SEGMENTS_CONTROL equ SOUND_SWAP_MODE
|
||||
SEGMENTS_SIZE equ $24
|
||||
|
||||
; OSC 20 & 21 for L/R channels
|
||||
@ -64,7 +67,7 @@ EXTRA_LIFE_OSC_NUM equ 20
|
||||
EXTRA_LIFE_FREQ_HIGH equ 0
|
||||
EXTRA_LIFE_FREQ_LOW equ 107
|
||||
EXTRA_LIFE_VOLUME equ 128
|
||||
EXTRA_LIFE_CONTROL equ 2
|
||||
EXTRA_LIFE_CONTROL equ SOUND_ONE_SHOT_MODE
|
||||
EXTRA_LIFE_SIZE equ $36
|
||||
|
||||
; OSC 0 - 5 to have 3x L/R channels
|
||||
@ -72,7 +75,7 @@ BONUS_SOUND_ADDR equ $b000
|
||||
BONUS_OSC_NUM equ 0
|
||||
BONUS_FREQ_HIGH equ 0
|
||||
BONUS_FREQ_LOW equ 214
|
||||
BONUS_CONTROL equ 2
|
||||
BONUS_CONTROL equ SOUND_ONE_SHOT_MODE
|
||||
BONUS_SIZE equ $24
|
||||
|
||||
; OSC 8 & 9 for L/R channels
|
||||
@ -80,7 +83,7 @@ KILL_SOUND_ADDR equ $c000
|
||||
KILL_OSC_NUM equ 8
|
||||
KILL_FREQ_HIGH equ 0
|
||||
KILL_FREQ_LOW equ 214
|
||||
KILL_CONTROL equ 2
|
||||
KILL_CONTROL equ SOUND_ONE_SHOT_MODE
|
||||
KILL_SIZE equ $24
|
||||
|
||||
; OSC 6 & 7 for L/R channels
|
||||
@ -88,13 +91,13 @@ FIRE_SOUND_ADDR equ $d000
|
||||
FIRE_OSC_NUM equ 6
|
||||
FIRE_FREQ_HIGH equ 0
|
||||
FIRE_FREQ_LOW equ 214
|
||||
FIRE_CONTROL equ 2
|
||||
FIRE_CONTROL equ SOUND_ONE_SHOT_MODE
|
||||
FIRE_SIZE equ $1b
|
||||
|
||||
; OSC 22 - 25 for L/R channels in swap mode
|
||||
FLEA_SOUND_ADDR equ $3a00
|
||||
FLEA_OSC_NUM equ 22
|
||||
FLEA_CONTROL equ 6
|
||||
FLEA_CONTROL equ SOUND_SWAP_MODE
|
||||
FLEA_SIZE equ $00
|
||||
|
||||
; OSC 26 - 30 for L/R channels in swap mode
|
||||
@ -102,7 +105,7 @@ SCORPION_SOUND_ADDR equ $e000
|
||||
SCORPION_OSC_NUM equ 26
|
||||
SCORPION_FREQ_HIGH equ 0
|
||||
SCORPION_FREQ_LOW equ 214
|
||||
SCORPION_CONTROL equ 6
|
||||
SCORPION_CONTROL equ SOUND_SWAP_MODE
|
||||
SCORPION_SIZE equ $2d
|
||||
|
||||
|
||||
@ -151,10 +154,10 @@ soundInit entry
|
||||
|
||||
lda #SOUND_REG_CONTROL+SPIDER_OSC_NUM
|
||||
sta >SOUND_ADDR_LOW
|
||||
lda #SPIDER_CONTROL+SOUND_HALTED+SOUND_RIGHT_SPEAKER
|
||||
lda #SOUND_ONE_SHOT_MODE+SOUND_HALTED+SOUND_RIGHT_SPEAKER
|
||||
sta >SOUND_DATA_REG
|
||||
sta >SOUND_DATA_REG
|
||||
lda #SPIDER_CONTROL+SOUND_HALTED+SOUND_LEFT_SPEAKER
|
||||
lda #SOUND_ONE_SHOT_MODE+SOUND_HALTED+SOUND_LEFT_SPEAKER
|
||||
sta >SOUND_DATA_REG
|
||||
sta >SOUND_DATA_REG
|
||||
long m
|
||||
@ -254,10 +257,10 @@ soundInit entry
|
||||
|
||||
lda #SOUND_REG_CONTROL+SEGMENTS_OSC_NUM
|
||||
sta >SOUND_ADDR_LOW
|
||||
lda #SEGMENTS_CONTROL+SOUND_HALTED+SOUND_RIGHT_SPEAKER
|
||||
lda #SOUND_ONE_SHOT_MODE+SOUND_HALTED+SOUND_RIGHT_SPEAKER
|
||||
sta >SOUND_DATA_REG
|
||||
sta >SOUND_DATA_REG
|
||||
lda #SEGMENTS_CONTROL+SOUND_HALTED+SOUND_LEFT_SPEAKER
|
||||
lda #SOUND_ONE_SHOT_MODE+SOUND_HALTED+SOUND_LEFT_SPEAKER
|
||||
sta >SOUND_DATA_REG
|
||||
sta >SOUND_DATA_REG
|
||||
long m
|
||||
@ -488,10 +491,10 @@ soundInit entry
|
||||
|
||||
lda #SOUND_REG_CONTROL+FLEA_OSC_NUM
|
||||
sta >SOUND_ADDR_LOW
|
||||
lda #FLEA_CONTROL+SOUND_HALTED+SOUND_RIGHT_SPEAKER
|
||||
lda #SOUND_ONE_SHOT_MODE+SOUND_HALTED+SOUND_RIGHT_SPEAKER
|
||||
sta >SOUND_DATA_REG
|
||||
sta >SOUND_DATA_REG
|
||||
lda #FLEA_CONTROL+SOUND_HALTED+SOUND_LEFT_SPEAKER
|
||||
lda #SOUND_ONE_SHOT_MODE+SOUND_HALTED+SOUND_LEFT_SPEAKER
|
||||
sta >SOUND_DATA_REG
|
||||
sta >SOUND_DATA_REG
|
||||
long m
|
||||
@ -540,10 +543,10 @@ soundInit entry
|
||||
|
||||
lda #SOUND_REG_CONTROL+SCORPION_OSC_NUM
|
||||
sta >SOUND_ADDR_LOW
|
||||
lda #SCORPION_CONTROL+SOUND_HALTED+SOUND_RIGHT_SPEAKER
|
||||
lda #SOUND_ONE_SHOT_MODE+SOUND_HALTED+SOUND_RIGHT_SPEAKER
|
||||
sta >SOUND_DATA_REG
|
||||
sta >SOUND_DATA_REG
|
||||
lda #SCORPION_CONTROL+SOUND_HALTED+SOUND_LEFT_SPEAKER
|
||||
lda #SOUND_ONE_SHOT_MODE+SOUND_HALTED+SOUND_LEFT_SPEAKER
|
||||
sta >SOUND_DATA_REG
|
||||
sta >SOUND_DATA_REG
|
||||
long m
|
||||
@ -559,12 +562,12 @@ updateSounds entry
|
||||
|
||||
updateSounds_changeFreq anop
|
||||
ldy fleaSoundFreqOffset
|
||||
iny
|
||||
iny
|
||||
cpy #NUM_FLEA_FREQS*2
|
||||
blt updateSounds_notDone
|
||||
jmp stopFleaSound
|
||||
updateSounds_notDone anop
|
||||
iny
|
||||
iny
|
||||
sty fleaSoundFreqOffset
|
||||
|
||||
short m
|
||||
@ -783,11 +786,12 @@ startSegmentSound entry
|
||||
sta >SOUND_ADDR_LOW
|
||||
lda #SEGMENTS_CONTROL+SOUND_RIGHT_SPEAKER
|
||||
sta >SOUND_DATA_REG
|
||||
|
||||
lda #SOUND_REG_CONTROL+SEGMENTS_OSC_NUM+2
|
||||
sta >SOUND_ADDR_LOW
|
||||
lda #SEGMENTS_CONTROL+SOUND_HALTED+SOUND_RIGHT_SPEAKER
|
||||
sta >SOUND_DATA_REG
|
||||
lda #SEGMENTS_CONTROL+SOUND_LEFT_SPEAKER
|
||||
sta >SOUND_DATA_REG
|
||||
lda #SEGMENTS_CONTROL+SOUND_HALTED+SOUND_LEFT_SPEAKER
|
||||
sta >SOUND_DATA_REG
|
||||
long m
|
||||
|
||||
rtl
|
||||
@ -802,10 +806,10 @@ stopSegmentSound entry
|
||||
|
||||
lda #SOUND_REG_CONTROL+SEGMENTS_OSC_NUM
|
||||
sta >SOUND_ADDR_LOW
|
||||
lda #SEGMENTS_CONTROL+SOUND_HALTED+SOUND_RIGHT_SPEAKER
|
||||
lda #SOUND_ONE_SHOT_MODE+SOUND_HALTED+SOUND_RIGHT_SPEAKER
|
||||
sta >SOUND_DATA_REG
|
||||
sta >SOUND_DATA_REG
|
||||
lda #SEGMENTS_CONTROL+SOUND_HALTED+SOUND_LEFT_SPEAKER
|
||||
lda #SOUND_ONE_SHOT_MODE+SOUND_HALTED+SOUND_LEFT_SPEAKER
|
||||
sta >SOUND_DATA_REG
|
||||
sta >SOUND_DATA_REG
|
||||
long m
|
||||
@ -835,11 +839,12 @@ startSpiderSound entry
|
||||
sta >SOUND_ADDR_LOW
|
||||
lda #SPIDER_CONTROL+SOUND_RIGHT_SPEAKER
|
||||
sta >SOUND_DATA_REG
|
||||
|
||||
lda #SOUND_REG_CONTROL+SPIDER_OSC_NUM+2
|
||||
sta >SOUND_ADDR_LOW
|
||||
lda #SPIDER_CONTROL+SOUND_HALTED+SOUND_RIGHT_SPEAKER
|
||||
sta >SOUND_DATA_REG
|
||||
lda #SPIDER_CONTROL+SOUND_LEFT_SPEAKER
|
||||
sta >SOUND_DATA_REG
|
||||
lda #SPIDER_CONTROL+SOUND_HALTED+SOUND_LEFT_SPEAKER
|
||||
sta >SOUND_DATA_REG
|
||||
long m
|
||||
|
||||
rtl
|
||||
@ -873,10 +878,10 @@ stopSpiderSound entry
|
||||
|
||||
lda #SOUND_REG_CONTROL+SPIDER_OSC_NUM
|
||||
sta >SOUND_ADDR_LOW
|
||||
lda #SPIDER_CONTROL+SOUND_HALTED+SOUND_RIGHT_SPEAKER
|
||||
lda #SOUND_ONE_SHOT_MODE+SOUND_HALTED+SOUND_RIGHT_SPEAKER
|
||||
sta >SOUND_DATA_REG
|
||||
sta >SOUND_DATA_REG
|
||||
lda #SPIDER_CONTROL+SOUND_HALTED+SOUND_LEFT_SPEAKER
|
||||
lda #SOUND_ONE_SHOT_MODE+SOUND_HALTED+SOUND_LEFT_SPEAKER
|
||||
sta >SOUND_DATA_REG
|
||||
sta >SOUND_DATA_REG
|
||||
long m
|
||||
@ -906,11 +911,12 @@ startScorpionSound entry
|
||||
sta >SOUND_ADDR_LOW
|
||||
lda #SCORPION_CONTROL+SOUND_RIGHT_SPEAKER
|
||||
sta >SOUND_DATA_REG
|
||||
|
||||
lda #SOUND_REG_CONTROL+SCORPION_OSC_NUM+2
|
||||
sta >SOUND_ADDR_LOW
|
||||
lda #SCORPION_CONTROL+SOUND_HALTED+SOUND_RIGHT_SPEAKER
|
||||
sta >SOUND_DATA_REG
|
||||
lda #SCORPION_CONTROL+SOUND_LEFT_SPEAKER
|
||||
sta >SOUND_DATA_REG
|
||||
lda #SCORPION_CONTROL+SOUND_HALTED+SOUND_LEFT_SPEAKER
|
||||
sta >SOUND_DATA_REG
|
||||
long m
|
||||
rtl
|
||||
|
||||
@ -943,10 +949,10 @@ stopScorpionSound entry
|
||||
|
||||
lda #SOUND_REG_CONTROL+SCORPION_OSC_NUM
|
||||
sta >SOUND_ADDR_LOW
|
||||
lda #SCORPION_CONTROL+SOUND_HALTED+SOUND_RIGHT_SPEAKER
|
||||
lda #SOUND_ONE_SHOT_MODE+SOUND_HALTED+SOUND_RIGHT_SPEAKER
|
||||
sta >SOUND_DATA_REG
|
||||
sta >SOUND_DATA_REG
|
||||
lda #SCORPION_CONTROL+SOUND_HALTED+SOUND_LEFT_SPEAKER
|
||||
lda #SOUND_ONE_SHOT_MODE+SOUND_HALTED+SOUND_LEFT_SPEAKER
|
||||
sta >SOUND_DATA_REG
|
||||
sta >SOUND_DATA_REG
|
||||
long m
|
||||
@ -998,11 +1004,12 @@ startFleaSound_doIt anop
|
||||
sta >SOUND_ADDR_LOW
|
||||
lda #FLEA_CONTROL+SOUND_RIGHT_SPEAKER
|
||||
sta >SOUND_DATA_REG
|
||||
|
||||
lda #SOUND_REG_CONTROL+FLEA_OSC_NUM+2
|
||||
sta >SOUND_ADDR_LOW
|
||||
lda #FLEA_CONTROL+SOUND_HALTED+SOUND_RIGHT_SPEAKER
|
||||
sta >SOUND_DATA_REG
|
||||
lda #FLEA_CONTROL+SOUND_LEFT_SPEAKER
|
||||
sta >SOUND_DATA_REG
|
||||
lda #FLEA_CONTROL+SOUND_HALTED+SOUND_LEFT_SPEAKER
|
||||
sta >SOUND_DATA_REG
|
||||
long m
|
||||
rtl
|
||||
|
||||
@ -1016,10 +1023,10 @@ stopFleaSound entry
|
||||
|
||||
lda #SOUND_REG_CONTROL+FLEA_OSC_NUM
|
||||
sta >SOUND_ADDR_LOW
|
||||
lda #FLEA_CONTROL+SOUND_HALTED+SOUND_RIGHT_SPEAKER
|
||||
lda #SOUND_ONE_SHOT_MODE+SOUND_HALTED+SOUND_RIGHT_SPEAKER
|
||||
sta >SOUND_DATA_REG
|
||||
sta >SOUND_DATA_REG
|
||||
lda #FLEA_CONTROL+SOUND_HALTED+SOUND_LEFT_SPEAKER
|
||||
lda #SOUND_ONE_SHOT_MODE+SOUND_HALTED+SOUND_LEFT_SPEAKER
|
||||
sta >SOUND_DATA_REG
|
||||
sta >SOUND_DATA_REG
|
||||
long m
|
||||
|
@ -27,7 +27,7 @@ sed -i "" "s:^s7d1 *=.*$:s7d1 = $DISKIMAGE:" config.txt
|
||||
|
||||
# This magic ensure that clicking stop in Xcode results in the emulator terminating.
|
||||
|
||||
if false
|
||||
if true
|
||||
then
|
||||
$EMULATORPATH -fullscreen -mem 1572864 &
|
||||
PID=$!
|
||||
|
Loading…
x
Reference in New Issue
Block a user