1 bit revisited......
I hooked up with the LEGENDARY SOCKMASTER to work out this 1 bit routine....
I provided him with some z80 sourcecode which he quickly converted to
6809.... we tried it and it sounded shite, so we set about some
debugging.... (over 2 days)....
now we have a decent 1 bit music player for the coco - you can use the zx
spectrum program (beepola) to make music... (choose the engine called THE
MUSIC STUDIO).......
then export the data as an.asm file ( junk the z80 code and grab the song
data)....
sound of this engine here ( any funky sounds are lag on my old laptop):
http://www.roust-it.dk/coco/coco1bit.wav
https://www.youtube.com/watch?v=WDIdBKCgSKg
https://www.youtube.com/watch?v=1_0TOZxOzn4
REMEMBER THIS IS 1 BIT PWM.......
/Simon
There's absolutely no samples going on here.....
The coco is mixing the sound in realtime and outputting it to either the 1
bit output at $ff22 or the highest bit on the dac at $ff20 (in this case the
dac because i need $ff22 for other stuff)
The player is given a set of data which consists of pattern pointers and a
set of patterns....
The patterns consist of 16 rows of 2 bytes (1 for each channel) the second
also doubles as "interrupting drum" (as in no note on channel 2 just
percussion)
The data is produced by using the pc program "Beepola" and specifically
chosing "the music studio" engine.... You can tehn make a tune of your own
choice, when you have done that, beepola can save the data as normal text
(eg. .byte 100,20 etc)....
This data is then tagged onto the end of an assembly file which contains the
player...
Now fire up your favourite assembler and assemble it.... Bobs your uncle....
/Simon
i'm pretty sure that the routine would play without any problem on the Dragon.....
(the 1bitv4 plays at 2xpoke)
the others play at normal speed.....
here you have 3 assembly listings with full 1 bit player and tunes included....
have fun...
/Simon