Hacker News new | ask | show | jobs
by ihatepython 1148 days ago
> Adding a MIDI port to the Amiga would have been trivial

The Amiga is unsuitable for serious MIDI work because of a hardware design flaw. There are like 4 timers and the timer interrupts were at a higher priority than the serial port interrupt. There was only a 1-byte buffer for the serial port, so it was possible to lose data if one of the higher priority timers fired at the wrong time.[1]

[1] https://dreamertalin.medium.com/music-x-b4abc68d6f78

2 comments

I can't verify that since I sold everything ages ago, but before buying the A4000, first with my A500 and then the A2000 (w/ no acceleration) I could easily sample a complex flam+roll figure I did on my old Roland R8 pads at crazy granularity (software and hardware were capable of recording and playing 1/384 notes), and it didn't miss a single note. That figure was obtainable by pressing both flam and roll buttons while modulating the dynamics on the instrument pad; very handy to simulate natural cymbal rolls during song pauses, endings etc. I used it during a song start with the snare, and the only editing necessary was performed afterwards to cut the inevitable leftover notes because I was playing with my fingers. Software used was Dr T's KCS, which was a lot more optimized and snappy than MusicX, which I remember to be quite buggy too.
And yet, it was successfully used for serious MIDI work. It's simple: Don't use the serial port for MIDI.

Peripherals (via expansion port) can trigger level 2 and level 6 interrupts[0].

Notably, level 6 is the highest priority level in 68000, short of the NMI (level 7).

I have to agree with the parent, adding a MIDI port to the Amiga would have been trivial.

0. https://sites.google.com/one-n.co.uk/amiga-guides/amiga-inte...