So schlimm ist das nicht. Auf dem PC gibt es jede Menge Python / Java libraries, die MID-Dateien parsen können. Das ist die Hauptarbeit.
Das EMR-Programm ist zwar ganz witzig, aber zum Abspielen von Standard-MID-Dateien natürlich nicht geeignet... insofern ist man auf die paar mitgelieferten Demo-Songs angewiesen. Schöner wäre, wenn man jede MID-Datei aus dem Internet damit abspielen könnte.
Wohlgemerkt - ein MIDI-Echtzeit-Sequenzer auf dem CPC macht Sinn (MIDI In mit dem CPC!), aber zum Abspielen von Standard-MID-Dateien, die es wie Sand am Meer gibt, will man etwas anderes haben als das EMR-Abspielprogramm.
Hier eine einfach MIDI OUT Demo, Random Pitch Note:
10 MODE 2
20 PRINT "LambdaSpeak 3 MIDI DEMO"
30 PRINT "(C) 2019 by LambdaMikel"
40 OUT &FBEE,&F1
50 WAIT &FBEE,16
60 OUT &FBEE,255
70 WAIT &FBEE,16
80 OUT &FBEE,30
90 WAIT &FBEE,16
100 OUT &FBEE,6
110 WAIT &FBEE,16
120 OUT &FBEE,255
130 OUT &FBEE,16
140 WAIT &FBEE,16
150 OUT &FBEE,255
160 OUT &FBEE,15
170 REM
180 a$=INKEY$:IF a$="" THEN 180
190 i=1:pitch=ROUND(RND(1)*128):vol=127
200 OUT &FBEE,&90+i
210 OUT &FBEE,pitch
220 OUT &FBEE,vol
230 REM
240 OUT &FBEE,&80+i
250 OUT &FBEE,pitch
260 OUT &FBEE,vol
270 GOTO 180
Wie Du siehst, ist MIDI Output wirklich super einfach, sogar von BASIC aus möglich.
https://www.cs.cmu.edu/~music/cmsip/readings/davids-midi-spec.htm Hier werden in der Hauptschleife vom BASIC-Programm also einfach Note On (&90+channel) und Note Off (&80+channel) für eine Zufalls-Note gesendet:
200 OUT &FBEE,&90+i
210 OUT &FBEE,pitch
220 OUT &FBEE,vol
230 REM
240 OUT &FBEE,&80+i
250 OUT &FBEE,pitch
260 OUT &FBEE,vol
MIDI Eingabe / MIDI IN mit dem CPC ist dagegen NICHT so einfach... und benötigt natürlich Machine Code.
Das hatte ich allerdings ebenfalls schon implementiert in MAXAM, sogar mit AY CPC Soundausgabe für die empfangenden NOTE ON / NOTE OFF messages, und "Midi Soft Through", d.h., was empfangen wurde, wurde auch wieder ausgegeben, in Echtzeit.
Hier, Eingabe / MIDI IN in den CPC von der Microkorg (stummgeschaltet, nur für MIDI!), dann CPC-MIDI-Soundausgabe, und MIDI Out "Echo" ("Soft Through") and den Yamaha-Expander:
&t=24s
Das MAXAM-Programm ist auf der LS3 DSK.
Die SF3-Leute sollen erstmal MIDI IN, CPC MIDI Sound, und gleichzeitig MIDI Soft Through in Echtzeit wie hier gezeigt mit dem SF3 hinkriegen, erst dann bin ich beeindruckt

Nur MIDI Abspielen ist nicht spannend.