PofoWiki

Die ultimative Informationsquelle zum ATARI Portfolio

Benutzer-Werkzeuge

Webseiten-Werkzeuge


software:diy:basic:diy:basic:pbgk:src_cmdlin

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
software:diy:basic:diy:basic:pbgk:src_cmdlin [24/08/2008 20:08] – ergänzt. uxtsoftware:diy:basic:diy:basic:pbgk:src_cmdlin [Unbekanntes Datum] (aktuell) – Externe Bearbeitung (Unbekanntes Datum) 127.0.0.1
Zeile 4: Zeile 4:
 Es gibt keine Befehlszeile in der man mal eben schnell einen Term ausrechnen kann ohne ein Programm schreiben zu müssen.\\ Glücklicherweise bietet PBASIC den Befehl EVAL, mit dem eine beliebige Zeichenkette interpretiert werden kann. Also schrieb ich mir ein "kleines" BASIC-Programm, dass einen Zeileneditor mit Hot-key Funktionen bietet. Die hier entstandene Zeichenkette wird dann mit dem Befehl EVAL ausgeführt und das Programm kehrt zum Zeileneditor zurück.\\ Als ich das Programm schrieb, wusste ich noch nicht wie man Portfolios eingebauten (AES) Zeileneditor programmiert, sonst hätte ich BIOS-CALLS verwendet. In diesem Beispiel wurde alles mit normalen BASIC-Befehlen für Zeichenkettenmanipulation realisiert, dadurch ist es natürlich ein wenig langsam und entspricht nicht zu 100% dem AES Zeileneditor, ich habe aber versucht alles identisch zu machen und bin mit dem Ergebnis recht zufrieden. Es gibt keine Befehlszeile in der man mal eben schnell einen Term ausrechnen kann ohne ein Programm schreiben zu müssen.\\ Glücklicherweise bietet PBASIC den Befehl EVAL, mit dem eine beliebige Zeichenkette interpretiert werden kann. Also schrieb ich mir ein "kleines" BASIC-Programm, dass einen Zeileneditor mit Hot-key Funktionen bietet. Die hier entstandene Zeichenkette wird dann mit dem Befehl EVAL ausgeführt und das Programm kehrt zum Zeileneditor zurück.\\ Als ich das Programm schrieb, wusste ich noch nicht wie man Portfolios eingebauten (AES) Zeileneditor programmiert, sonst hätte ich BIOS-CALLS verwendet. In diesem Beispiel wurde alles mit normalen BASIC-Befehlen für Zeichenkettenmanipulation realisiert, dadurch ist es natürlich ein wenig langsam und entspricht nicht zu 100% dem AES Zeileneditor, ich habe aber versucht alles identisch zu machen und bin mit dem Ergebnis recht zufrieden.
  
-Wozu das ganze? Nun, ich will häufig nur mal eben kurz einen Term lösen und in Abhängigkeit des Ergebnisses die eine oder andere Variable ändern. Natürlich könnte man ein Programm mit dem Editor schreiben und mit ALT_R ausführen. Wenn ich dann aber einen Wert öndern will, muss ich PBASIC wieder verlassen, das Programm ändern und PBASIC erneut aufrufen. Das wird auf dauer lästig und kostet Zeit. Wenn ich mit PBASIC "reden" kann wärend es läuft, geht das schneller.+Wozu das ganze? Nun, ich will häufig nur mal eben kurz einen Term lösen und in Abhängigkeit des Ergebnisses die eine oder andere Variable ändern. Natürlich könnte man ein Programm mit dem Editor schreiben und mit ALT_R ausführen. Wenn ich dann aber einen Wert öndern will, muss ich PBASIC wieder verlassen, das Programm ändern und PBASIC erneut aufrufen. Das wird auf dauer lästig und kostet Zeit. Wenn ich mit PBASIC "reden" kann wärend es läuft, geht das schneller.\\ 
 +Ich starte PBASIC CMDLIN, wenn CMDLIN geladen ist erschient die Titelleiste und eine Zeile darunter das "ok.". CMDLIN ist bereit.\\ 
 + 
 +z.B.: 20 durch 3 Teilen.\\ 
 +   ? 20/3 
 +   6,66666 
 +   ok. 
 +CMDLIN (bzw. PBASIC) liefert das Ergebnis und bestätigt die bereitschaft mit einem "ok."\\ 
 +Na gut, das kann jeder Taschenrechner. Aber was ist, wenn die Aufgabe etwas komplexer ist?\\ 
 +   ? (20/3+5/4)*(20-2/3) 
 +   153,0555560704444 
 +   ok. 
 +wenn ich das mit einem Taschenrechner lösen will, brauche ich wahrscheinlich noch einen Zettel und einen Stift Und sollte ich einen Fehler machen, muss ich von vorn beginnen.\\ 
 +Mit PBasic kann ich mir die Aufgabe nochmal genau ansehen und evtl. ändern, bevor ich die Eingabe-Taste drücke.\\ 
 +Wenn ich einen Wert ändern, oder die Aufgabe erweitern möchte, drücke ich Fn_1, und die Zeile wird wieder dargestellt, mit der Möglichkeit sie zu bearbeiten.\\ 
 +Fn1 
 +   ? (19/3+5/4)*(19-2/3)/
 +   27,80555644444444 
 +   ok. 
 +Es lassen sich natürlich auch Variablen und Funktionen definieren und lange Aufgaben über mehrere Zeilen lösen. Mit dem Befehl EVAL lassen sich Zeichenketten "interpretieren"\\ 
  
 z.B: Ich möchte meine Benzin-Kosten für diesen Monat ermitteln. Die können aber je nach Benzinpreis stark variieren. Ich mache dann ein "Was ist Wenn" -Spiel. z.B: Ich möchte meine Benzin-Kosten für diesen Monat ermitteln. Die können aber je nach Benzinpreis stark variieren. Ich mache dann ein "Was ist Wenn" -Spiel.
  
-Ich fahre jeden Werktagtag 32 Kilometer, mein Wagen verbraucht 7 Liter auf 100 km:\\ Ich starte PBASIC CMDLIN, wenn CMDLIN geladen ist erschient die Titelleiste und eine Zeile darunter das "ok.". CMDLIN ist bereit.\\ Nun tippe ich folgende Zeilen ein:+Ich fahre jeden Werktagtag 32 Kilometer, mein Wagen verbraucht 7 Liter auf 100 km:\\ Ich tippe folgende Zeilen ein:
  
   TERM$="Kosten=(20*32/100)*7*Preis:?Kosten"   TERM$="Kosten=(20*32/100)*7*Preis:?Kosten"
   Preis=1,49   Preis=1,49
   EVAL TERM$   EVAL TERM$
- 
-CMDLIN (bzw. PBASIC) liefert das Ergebnis und bestätigt die bereitschaft mit einem "ok." 
  
 Um die Kosten bei einem höheren Preis zu ermitteln gebe ich z.B Preis=1,52 ein und dann EVAL TERM$. Um die Kosten bei einem höheren Preis zu ermitteln gebe ich z.B Preis=1,52 ein und dann EVAL TERM$.
 Dieses Spielchen kann man so oft wiederholen wie man will, ohne PBASIC zu verlassen. Dieses Spielchen kann man so oft wiederholen wie man will, ohne PBASIC zu verlassen.
  
-Das ist alles.+Es lassen sich nicht nur Rechenaufgaben lösen, fast alle PBASIC Befehle , außer Grafik, lassen sich anwenden, die Befehlszeile hat allerdings eine maximale Länge von 40 Zeichen
  
 Da ich Portfolios Zeileneditor möglichst treu nachahmen wollte, brauchte ich natürlich Hot-Keys um in der Zeile herumspringen zu können. Da ich schon mal dabei war habe ich gleich noch ein paar weitere Hot-Keys als Makros definiert um die Tipparbeit zu reduzieren: Da ich Portfolios Zeileneditor möglichst treu nachahmen wollte, brauchte ich natürlich Hot-Keys um in der Zeile herumspringen zu können. Da ich schon mal dabei war habe ich gleich noch ein paar weitere Hot-Keys als Makros definiert um die Tipparbeit zu reduzieren:
software/diy/basic/diy/basic/pbgk/src_cmdlin.1219603261.txt.gz · Zuletzt geändert: (Externe Bearbeitung)