more voice tests
An empty buffer is filled with an 8 for the waveform data as using 0 causes a noticeable click between words. The Display Data after the sample buffer is filled with 0, so if the program went past the end of the buffer the waveform on the screen wouldn't show anything. On the chance that just the ARM code stopped working and the 6507 was using data from after the sample buffer, I added a bit to the 6507 code to toggle the background color based on the right difficulty switch. However, the problem on the Harmony went away after this change, so I don't know what caused it.
With the colored background I noticed the screen would jitter when the words were being changed. To fix that, I modified FillAudioBuffer() in the ARM code to EITHER blank out the buffer (prep for new sample) OR to copy the next word, but not both during the same call.
FillAudioBuffer() can be called twice per frame - once at the very end of Vertical Blank (which was causing the jitter) and again at the start of OverScan. I do this to increase the chance of detecting the "end-of-sample" signal , though for performance reasons I may change this to just once per frame - key to making that work is the longest word sample must be short enough that there's enough $F8's at the end of the sample buffer for the 6507 to detect "need to refill the buffer".
Agnes2000 = 7441 bytes
Agnes3000 = 11162 bytes
Agnes4000 = 14882 bytes
Alex2000 = 7575 bytes
Alex3000 = 11365 bytes
Alex4000 = 15153 bytes
Victoria2000 = 7537 bytes
Victoria3000 = 11304 bytes
Victoria4000 = 15072 byts
Berzerk2000 = 8743 bytes
Berzerk3000 = 13117 bytes
Trinoids2000 = 8745 bytes
Trinoids3000 = 13121 bytes
Zarvox2000 = 8745 bytes
Zarvox3000 = 13121 bytes
Edit: added simple phrase Alex4000
Alex4000_simple = 7973 bytes
Edit2: added revised simple phrase Alex4000 and robotic Alex
Alex4000_robotic = 7574 bytes
Edit3: added additional robotic alex tests
Alex4000_robot_3_4 = 5982 bytes (throws out every 4th sample)
Alex4000_robot_7_8 = 6980 bytes (throws out every 8th sample)
Edit4: added simple3 - expanded the range for the pitch variations (hold down fire-button to enable)
Edit5: simple4 - single sample for "get the" instead of 2 samples. Saves 494 bytes over the original simple.
Alex4000_simple4 = 7479 bytes
ROMs
Source
14 Comments
Recommended Comments