so this is fun!
watching this clip and learning about polyphonic 1 bit audio, I replicated
the code written for ZXspectrum into M100.

Result attached.
sndply.co runs in ALTLCD.  just load and run!

Very cool, plays "chords" on the M100 buzzer!

Very simple code.would be easy to build into software. no use of
interrupts, but interrupts are disabled when playing audio.

This uses only 1 bit of control on the piezo.  We have 3.  I am thinking
that a third voice could be added by mixing in the actual sound tones
generator.

methinks another version of this is coming...

..Steve

On Wed, Apr 6, 2022 at 5:43 PM Daryn Hanright <[email protected]> wrote:

> That's pretty cool.
>
> The USA guys might not be familiar with the original Sinclair ZX Spectrum,
> but that had a 1 voice beeper, but musicians/coders did some amazing things
> with it. This guy does a detailed analysis on what they did
>
>
> https://hackaday.com/2022/01/20/when-a-single-bit-was-enough-into-the-sound-of-the-zx-spectrum/?fbclid=IwAR2-g9QsikuuFz2eGhmPVT-p1KhYFZuXLaivcnafhtW__O9Sie1qU9a5YbM
>
>
>
> On Thu, Apr 7, 2022, 9:27 AM Stephen Adolph <[email protected]> wrote:
>
>> When I have looked at the buzzer circuit circuit in the past, I was
>> always wondering - could you drive 2 audio signals into the buzzer?
>>
>>
>> There are 3 signals that drive the buzzer.
>>
>> Port BA  pin 5 - direct drive
>> Port BA  pin 2 - on/off control for the "sound" tone
>> Timer signal - tone generator
>>
>> So, you can make sound 3 ways
>> 1) by enabling a single tone, enabling pin 2 and disabling pin 5
>> 2) by enabling a single tone, and modulating pin 2, and disabling pin 5
>> 3) by disabling single tone, disabling pin 2, and modulating pin 5.
>>
>> I ran a simple program to prove that you can generate extra sounds.
>>
>> 5 sound1000,1
>> 10 out186,233
>> 15 fori=1to1000:next
>> 20 call30326:goto20
>>
>> (hit reset to get back to normal!!)
>> line 5 sets a tone
>> line 10 turns on pin 2; you hear the tone
>> line 15... some delay
>> line 20 rapidly toggles the direct drive at pin 5.  new sounds!
>>
>> you can distinctly hear the two separate sounds.
>> In fact you can hear the timer interrupt as well, every second.
>> you can also hear keyboard inputs
>>
>> so, this little test shows that you could separately set up a single
>> tone, as well as driving modulated signal directly.  that's 2 sounds
>>
>> A third sound could be mixed in by modulating pin 2 (turning the tone on
>> and off).
>>
>> I don't know of any M100 software that has taken advantage of these extra
>> ways to make sounds.  Anyone else?
>>
>> Seems like an interesting area to explore.  Some supporting machine code
>> routines would be interesting to think about.
>>
>> need to think of a clever way to demonstrate 3 sounds mixed.
>>
>> Steve
>>
>>

<<attachment: sndply.zip>>

Reply via email to