Habe jetzt eine Routine entworfen. Diese funktioniert auch. Nur, wenn der der Tokenwert 0 ist, schmiert der CPC ab. Warum, weiss ich noch nicht
Procedure Proc0
Begin
...
End;
Procedure Proc2
Begin
...
End;
Procedure Proc3
Begin
...
End;
Procedure CallToken(Token : Byte);
Begin
Inline($21/Token/ {LD HL,Token}
$6E/ {LD L,(HL)}
$26/$00/ {LD H,0}
$44/ {LD B,H}
$4D/ {LD C,L}
$29/ {ADD HL,HL}
$09/ {ADD HL,BC}
$01/*+3/ {LD BC,$+3}
$09/ {ADD HL,BC}
$E9); {JP (HL)}
Inline($C3/Proc0);
Inline($C3/Proc1);
Inline($C3/Proc2);
Inline($C3/Proc3);
...
End;
Alles anzeigen