(* Hinweis: Die folgenden procedures sind nur sinnvoll, wenn vor der Benutzung das Programm FAST.COM gestartet wurde. Zweck ist, FAST von eigenen Programmen aus aus- und wieder einzuschalten *) procedure fast_on; (* Procedure schaltet FAST ein *) begin write (^D,^B); mem [$f407]:=$b0; mem [$f408]:=$ff; mem [$f40a]:=$c3; mem [$f40b]:=$ff; mem [$f40d]:=$a4; mem [$f40e]:=$ff; end; {=======================================================================} procedure fast_off; (* Procedure schaltet FAST aus Nach dem Start von CP/M DDT.COM starten (ohne FAST) A>DDT *L F406 Hier findet man nun folgendes: F406 JMP xxyy F409 JMP vvww F40C JMP sstt Hierbei stehen xx,yy, usw. fuer Platzhalter. Beim 62K CP/M von 9/85 sind dies z.B. folgende Adressen: xxyy = F60D vvww = F611 sstt = F615 Die Werte wurden von mir nicht eingetragen, weil sie von der Datei $OSC abhaengen, von der verschiedene Versionen existieren. Die gefundenen Werte sind nun unten einzutragen. *) begin write (^D,^B); mem [$f407]:=$yy; mem [$f408]:=$xx; mem [$f40a]:=$ww; mem [$f40b]:=$vv; mem [$f40d]:=$tt; mem [$f40e]:=$ss; end; {======================================================================} function fast_switch : boolean ; (* Funktion liefert TRUE, wenn FAST eingeschaltet ist, ansonsten FALSE *) begin fast_switch:=mem [$f408]=$ff; end; (*==========================================================================*)