[sdiy] Analysis of the TB-303 CPU timing

Dave Brown davebr at modularsynthesis.com
Tue Mar 21 01:45:45 CET 2017

This thread reminds me of my early work in the 70's.  The Tektronix
4112/4114 intelligent graphic terminals were all written in PL/M.  I did the
disk system and wrote all the drivers in assembly which was most likely
cross assembled on a DEC 11/45.  Later we used some of the Intel development
systems.  One of my tasks was to rewrite some of the PL/M modules in
assembler to either compress size or speed them up.  I did a lot of that for
about a year.

Previously I designed the 8080 processor system for the Tektronix 4024/4025
business graphic computer.  That was all written in assembler.  I later
repurposed the CPU and made a Sol-20 compatible home computer from it.
There is a photo of that on my website.  When I outgrew dual cassette tapes
I moved to CP/M.  Since CP/M wasn't available on the Sol-20 I had to
disassemble CP/M and then modify it appropriately.  I did a lot of
disassembly in those days.

I did have a challenge on a program called Music that ran on the Sol-20.  It
was a music compiler that generated three voice harmonies by creating
self-modifying code that executed in RAM.  It was really bizarre but worked
quite well.  I ended up disassembling and modifying that code into an
8080-based doorbell that I built probably in 1976 or 1977.  I still have it
as a doorbell and it has been running in a tight loop waiting for someone to
push my doorbell for 40 years.  At probably about a 16 uS loop, that loop
has executed nearly 7.8x10^13 times.  That's a bunch.  The 2708 eprom has
also lasted 40 years.


David J. Brown
Modular Synthesis, LLC

More information about the Synth-diy mailing list