Amiga music-making
Jay Vaughan
ibisum at gmail.com
Mon Apr 18 11:06:01 CEST 2022
>
> Hey Jay,
>
>> Nice reply, James!
>
> ?
>
Sorry Peter, I misread the thread in my COVID fog.
>>
>
> Sure, but those machines didn't have APIs. They just had hardware.
Well, to be fair, this is a matter of semantics. Sure some machines of the day didn’t have anything but raw registers to play with - not much of an API. But some have ROM routines that could be considered to be a programming interface. The distinction is minimal if you have to look it up every time and don’t have a higher level abstraction to refer to, and I agree with your contention that the Amiga was one of the first to have a more comprehensive set of higher level API’s that allowed full control.
I’m learning all about this anew and getting into the Amiga for fun, because it is still an amazingly vibrant and prosperous platform - incidentally, the same is true for a lot of the other machines of the era, such as the ZX Spectrum, Amstrad CPC and Oric Atmos .. which I also have set up on the workbench in prep for the summers exhibit. It is really rewarding to return to these machines and discover the wild and amazing things that can be achieved.
> These "cowboy programmers" caused a lot of problems.
They still do. But they also do incredibly amazing things, too. But yeah, I appreciate the cowboy coders in my life. I’m just glad they’re relegated to the world of microphone and headphone DSP at the moment, hehe ..
>
> Cowboy programmers would save those all-important 8 clock cycles when creating a new task, and jump to the code to create a new task directly. So, when AmigaOS 1.3 came around, which introduced support for hard discs, all that crappy cowboy code no longer worked, because the code for the Exec library was located somewhere else.
Same problem occurred with the Oric-1 > Atmos transition, we all had to re-learn ROM routine addresses and one of the most popular bits of code that floats around even today is a translation routine that seeks for uses of one set of addresses and converts them to the other. Freakin’ great times, I tell you.
>
> The same went for accessing the hardware. 1985 wasn't really the time for APIs
By this point in my life I’d started on my Unix/C hacking adventures, so the vagaries of the ‘primitive' 8-bit world weren’t so relevant to me then, but it sure is fun to return to that era now and navigate the 'hell of other platforms’. Kind of good for this old programmers soul.
Incidentally I’m planning on having the exhibit of my machines (I have over 20 different working systems) opening up in June, in case anyone feels like coming to Vienna for summer… it’ll be a public event and we will be encouraging people to engage and interact with the machines. I have a new space, modest and humble but very functional, in a great little comfy neighbourhood of the city. There’ll definitely be a focus on kids and typing in 10-liner BASIC programs, but there’ll also be some fun stuff too - which is why I’m digging into the music-making tools .. to prepare for the jam.
j.
—
Jay Vaughan
ibisum at gmail.com
More information about the music-bar
mailing list