Weis jemand zufällig, wie man eine Sprungtabelle in Turbo Pascal erstellen kann? Ich habe also eine Prozedur-Sammlung die ich per Sprungtabelle aufrufen möchte.
Sprungtabelle
- Bastler
- Erledigt
-
-
Habe jetzt eine Routine entworfen. Diese funktioniert auch. Nur, wenn der der Tokenwert 0 ist, schmiert der CPC ab. Warum, weiss ich noch nicht
Code
Alles anzeigenProcedure 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;
-
-
Richtig. Aber es wird dann der Token mit jedem Wert verglichen und das dauert .... Bei meiner Routine dauert jeder Tokenwert gleich lange.
Habe die Routine inzwischen noch etwas verbessert und jetzt geht auch Tokenwert 0. Werde diese in Kürze einstellen.