51 (edited by krzysztof.kielak 2023-10-02 09:02:43)

Re: Tutorial: How to Write a 1-Bit Music Routine

Hi, I have converted this fantastic tutorial by UTZ to PDF format. Have fun!

Post's attachments

1bit-synth.pdf 218.45 kb, 5 downloads since 2023-10-02 

You don't have the permssions to download the attachments of this post.

52

Re: Tutorial: How to Write a 1-Bit Music Routine

Thanks, looks great! Do you happen to have *tex sources for this? I'm updating the tutorial every now and then, and I don't want to burden you with updating the pdf every time that happens.

Re: Tutorial: How to Write a 1-Bit Music Routine

This is great

54 (edited by krzysztof.kielak 2023-10-02 21:28:18)

Re: Tutorial: How to Write a 1-Bit Music Routine

Here you are! I have attached .tgz file with all .tex sources - for building I'm using pdflatex command from TeX Live system (executed twice to build ToC etc.). The file main.tex includes structure.tex and tutorial.tex (that is actually exported from Emacs .org file).

I have also included the .org file that I have originally used to copy paste from the forum and then used Emacs export to LaTeX functionality (only body export using following mouthful chord:  C c C e C b l l). I think at this point you can update only .tex files, and discard tutoria.org file.

Post's attachments

1bit-synth.tgz 38.31 kb, 5 downloads since 2023-10-02 

You don't have the permssions to download the attachments of this post.

55

Re: Tutorial: How to Write a 1-Bit Music Routine

Excellent, thanks a lot. I originally had the tutorial in an .org file, but gave up on it somewhere down the line. This'll be a good opportunity to get things in order on my side, hehe.

Re: Tutorial: How to Write a 1-Bit Music Routine

UTZ,

Before sharing the document here, I have shared in on FB in https://www.facebook.com/groups/z80asm/, where I got suggestions to actually contact you via this forum.

In the meantime, I have received following feedback, that might be interesting for you:

* Chris Walsh
Hiya, just looking at the very first routine, and something isn't right about the A ("state") register and the OUT commands. For example, you're setting A to 0 (XOR A) on the first line before the channel 1 loop but then setting it to 10h after the look and just after the OUT. The same issue occurs in the channel 2 routine. Are you missing two more OUTs after setting the A register? Thanks for the docs BTW.

* from Simon N Goodwin:
Thanks for sharing.
In the context of the Spectrum (the focus of this group) it would be wise to remind readers that RAM as well as I/O is contended so loops like this should be in ROM (the only option for a 16K Spectrum) or the top 32K of 48K Spectrum RAM, or the right 64K half (which varies by model) of RAM on a Spectrum 128. If you haven’t altered the default paging, RAM addresses from 32768 to 49151 are always uncontended.
As regards source readability, the comments need rewrapping - they run off the edge of the PDF pages.

57

Re: Tutorial: How to Write a 1-Bit Music Routine

Hi Krzysztof,

Not sure what Chris Walsh means, I don't see any errors in the first routine.

Good point about RAM contention from Simon N Goodwin though. I'll add a little note on that. IO contention is mentioned in Part 5, I don't think readers need to be overly concerned about it before that point.

Anyway, thanks for passing on the feedback.