Sofern der Treiber im Systemverzeichnis liegt, kannst du auch die Marker nutzen. Also quasi gleich zum smarker wechseln, damit landest du ja im Systemverzeichnis. Ansonsten finde ich jetzt nicht, wo "b" definiert ist.
Interessant vielleicht auch die Routine in Regime um Bellatrix-Code zu laden:
Code: Alles auswählen
PUB os_testbel(stradr): flag | status,i,len 'sys: test ob kommando als bel-datei vorliegt
flag := FALSE
len := strsize(stradr)
repeat i from 0 to 3 '.bel anhängen
byte[stradr][len + i] := byte[@ext3][i]
byte[stradr][len + i] := 0
' im aktuellen dir suchen
status := ios.sdopen("r",stradr) 'datei vorhanden?
if status == 0 'datei gefunden
flag := TRUE
ios.belload(stradr) 'bellatrix-code laden
ios.screeninit(0,1) 'systemmeldung
else 'datei nicht gefunden
ios.sdclose
'im system-dir suchen
ios.sddmset(ios#DM_USER) 'u-marker setzen
ios.sddmact(ios#DM_SYSTEM) 's-marker aktivieren
status := ios.sdopen("r",stradr) 'datei vorhanden?
if status == 0 'datei gefunden
flag := TRUE
ios.belload(stradr) 'bellatrix-code laden
ios.screeninit(0,1) 'systemmeldung
else 'datei nicht gefunden
ios.sdclose
ios.sddmact(ios#DM_USER) 'u-marker aktivieren
byte[stradr][len] := 0 'extender wieder abschneiden
Dabei ist der Code aber Teil der Kommandozeile, wo erstmal getestet wird:
1. Ist es ein internes Kommando? --> Routine aufrufen
2. Ist es eine BIN-Datei im aktuellen oder System Verzeichnis? --> Regnatix-Code starten
3. Ist es eine ADM-Datei im aktuellen oder System Verzeichnis? --> Administra-Code starten
4. Ist es eine BEL-Datei im aktuellen oder System Verzeichnis? --> Bellatrix-Code starten
5. Alternativ Fehlermeldung
"Ob Sie denken, dass Sie es können, oder ob Sie denken, dass Sie es nicht können - in beiden Fällen haben Sie recht." Henry Ford