home *** CD-ROM | disk | FTP | other *** search
/ PC-Online 1998 February / PCOnline_02_1998.iso / filesbbs / dos / page_123.exe / PAGE_123.EXE / DOC / FS_PL.DOK < prev    next >
Encoding:
Text File  |  1997-10-22  |  32.0 KB  |  819 lines

  1. ──────────────────────────────────────────────────────────────────────────────
  2.                              ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
  3.                        ▄▄▄▄▄▀                 ▀▄▄▄▄
  4.    ▄██████       ▄▀▀▀▀▀          ▄█████▄           ▀▀▀▀▀▀▄
  5.    ██▄▄▄▄  ▄█▀▀▀█▄ ▄█████▄ █████ ██▄▄▄▄  ▄█████▄ ██▀▀▀█ ▐██▌▀██▀▀▀█ █████
  6.    ██▀▀▀█▀▀██▄▄▄██ ██▄▄▄▄▄  ▐█▌   ▀▀▀▀██ ██      ██▀█▀▀  ██  ██▀▀▀▀▄ ▐█▌
  7.    ██  █   ██▀▀▀██ ▄▄▄▄▄▄█  ▐█▌  ▀█████▀ ▀█████▀ ██  ▀█ ▐██▌ ██     █▐█▌
  8.         ▀▄▄                                                      ▄▄▀
  9.            ▀▀▄▄▄▄                                         ▄▄▄▄▀▀▀
  10.                  ▀▄▄▄▄▄     ▄█▀ ██▀▀▀█ ██    ▀█▄   ▄▄▄▄▄▄▀
  11.                        ▀▀▀▀▀██  ██▀▀▀▀ ██     ██▀▀▀
  12.                             ▀█▄ ██     █████ ▄█▀
  13.  
  14.                         (c)1996/97 Stefan Dietzel
  15. ───────────────────────────────────────────────────────────[Version: 1.23]────
  16.  
  17.  
  18. FastScript Programing Language (PL)
  19. ====================================
  20.  
  21. Bei FastScript (PL) handelt es sich um eine sehr leitungsfaehige
  22. Programmiersprachen-Erweiterung fuer FastScript. Mit Hilfe von
  23. FastScript (PL) sind Sie in der Lage kleinere Online-Programme
  24. direkt in die Script-Sprache FastScript zu implementieren.
  25. Ihnen stehen dabei die gebraeuchlisten Befehle moderner Programmiersprachen
  26. zur Verfuegung. FastScript (PL) ist eine Mischung aus Pascal und Assembler.
  27. Die Befehle sind verstaendlich formuliert und unterliegen keinen
  28. nichtssagenden Abkuerzugen (meist Pascal-aehnlich). Der Programmaufbau dabei
  29. ist eher an Assembler orientiert. Hierdurch sind Sie in der Lage, einige
  30. Programmteile abstrakt zu beschreiben wobei Sie andere bis ins kleinste
  31. Detail ausfeilen koennen.
  32. Falls Sie Befehle fuer den Festplattenzugriff usw. vermissen, bedenken
  33. Sie das bei FastScript und FastScript (PL) die Sicherheit des entsprechenden
  34. Mailboxsystems als eines der wichtigsten Kriterien in der Entwickung
  35. bewertet wird und aus diesen Gruenden keine Befehle eingebaut wurden,
  36. welche eine Sicherheitsluecke bilden koennten. Allerdings werden
  37. sicherlich noch entsprechende "Speicherungsbefehle" implementiert
  38. werden, welche eine relativ hohe Sicherheitswahrscheinlichkeit beinhalten.
  39.  
  40.  
  41. Befehle:
  42. ========
  43.  
  44. Variablendeklarationen:
  45. -----------------------
  46. VAR
  47. CLOSEVAR
  48.  
  49. Grundrechenarten:
  50. -----------------
  51. INCREMENT
  52. DECREMENT
  53. MULTIPLY
  54. DIVIDE
  55.  
  56. Zuweisungen:
  57. ------------
  58. EQUATE
  59.  
  60. Eingaben:
  61. ---------
  62. READ
  63. READLN
  64.  
  65. Ausgaben:
  66. ---------
  67. WRITE
  68. WRITELN
  69.  
  70. Abfragen und Schleifen:
  71. -----------------------
  72. IF
  73. WHILE
  74.  
  75. Programmunterteilungen/Bloecke:
  76. -------------------------------
  77. PROCEDURE
  78. GOTO
  79. STOP
  80.  
  81. Stringbearbeitung:
  82. ------------------
  83. UP
  84. DELSPACE
  85. DELSTRING
  86. INSSTRING
  87. POSSTRING
  88. LENGTHSTRING
  89.  
  90. Rechenfunktionen:
  91. -----------------
  92. SIN
  93. COS
  94. TAN
  95. ARCTAN
  96. LN
  97. EXP
  98. SQR
  99. SQRT
  100.  
  101. Boolsche Funktionen
  102. -------------------
  103. OR
  104. XOR
  105. AND
  106. NOT
  107.  
  108. Bildschirmfunktionen
  109. --------------------
  110. WHEREX
  111. WHEREY
  112.  
  113.  
  114. Erlaeuterung der Befehle:
  115. -------------------------
  116.  
  117. Variablendeklarationen:
  118. -----------------------
  119. VAR
  120. ---
  121. Dieser Befehl wird benoetigt um eine Variable zu erstellen und zu deklarieren.
  122. Syntax: VAR VARNAME:VARTYP
  123.         VARNAME = Der Name unter dem man die Variable ansprechen will.
  124.         VARTYP = Es existieren folgende Variablentypen:
  125.                  STRING       (Zeichenketten)
  126.                  CHAR         (ein einzelnes Zeichen der ASCII-Tabelle)
  127.                  INTEGER      (eine ganze Zahl -2147483648..2147483647)
  128.                  REAL         (eine Gleitkommazahl 2.9e-39..1.7e38)
  129. Information: Sie koennen pro VAR-Befehl maximal eine Variable definieren.
  130.              Wollen Sie mehrere Variablen deklarieren muessen Sie den VAR-
  131.              Befehl mehrmals aufrufen (siehe Beispiel unten).
  132. Wichtig: Sie koennen insgesamt nur maximal 40 Variablen pro Variablentyp
  133.          (String, Integer, Char oder Real) erzeugen. Sollten Sie einmal
  134.          eine weitere Variable brauchen koennen Sie eine vorherige durch den
  135.          Befehl CLOSEVAR schliessen.
  136.          Desweiteren besteht die Moeglichkeit eine vorhandene System-Variable
  137.          zu schliessen. Beachten Sie allerdings das deren Inhalt fuer die Dauer
  138.          des Aufenthalts in Ihrer Homepage verloren geht.
  139.          Es existieren folgende Systemvariablen:
  140.          Variablenname   Variablentyp   Inhalt
  141.          $userlevel      Integer        Level des aktuellen Homepagebesuchers
  142.          $username       String         Name des aktuellen Homepagebesuchers
  143.          $systemdate     String         Aktuelles Datum
  144.          $systemtime     String         Aktuelle Zeit
  145.          $baudrate       String         Connectrate des Homepagebesuchers
  146.          $bbsname        String         Name der Mailbox, in welcher STD-PAGE
  147.                                         (und Ihre Homepage) installiert ist.
  148.          $sysopname      String         Name des Mailbox-Sysops, in welcher
  149.                                         STD-PAGE (und Ihre Homepage) ablaufen.
  150.          $pi             Real           Die Zahl Pi (3.141...)
  151. Beispiel:
  152.         VAR TestVariable:STRING
  153.         VAR ZweiteVariable:INTEGER
  154.  
  155. Hier werden zwei Variablen mit den Namen TestVariable und ZweiteVariable
  156. erstellt. Die Variablen haben folgende Typen: TestVariable = STRING
  157.                                               ZweiteVariable = INTEGER
  158. Wenn Sie spaeter auf die Variablen zugreifen ist die Gross- und Klein-
  159. schreibung unwichtig.
  160. Siehe auch: CLOSEVAR
  161.  
  162.  
  163. CLOSEVAR
  164. --------
  165. Mit diesem Befehl schliessen Sie eine erstellte Variable wieder.
  166. Syntax: CLOSEVAR VARNAME
  167. Bemerkung: Sie koennen auch Systemvariablen schliessen.
  168.            Beachten Sie allerdings das deren Inhalt fuer die Dauer
  169.            des Aufenthalts in Ihrer Homepage verloren geht.
  170. Beispiel: CLOSEVAR TestVariable
  171.           CLOSEVAR ZweiteVariable
  172. Siehe auch: VAR
  173.  
  174.  
  175. Grundrechenarten:
  176. -----------------
  177. INCREMENT
  178. ---------
  179. Mit diesem Befehl koennen Sie entweder eine REAL bzw. INTEGER-Variable
  180. um einen bestimmten Wert erhoehen (Addition) bzw. an eine STRING-Variable
  181. einen weiteren String anhaengen.
  182. Syntax: INCREMENT VARNAME,WERT
  183.         VARNAME = Der Name der Variable, dessen Wert erhoeht werden soll.
  184.         WERT = Der Wert kann entweder direkt der entsprechende Wert sein
  185.                oder eine Variable, dessen Inhalt als Wert interpretiert werden
  186.                soll.
  187. Informationen: Diese Funktion ist verleichbar mit dem PASCAL-Ausdruck INC.
  188. Beispiel: VAR TestVariable:STRING
  189.           VAR ZweiteVariable:INTEGER  
  190.  
  191.           INCREMENT TestVariable,Hallo
  192.           INCREMENT TestVariable,!       {TestVariable enthaelt nun: Hallo!}
  193.           INCREMENT ZweiteVariable,10
  194.           INCREMENT ZweiteVariable,101   {ZweiteVariable enthaelt nun: 111)
  195. Siehe auch: DECREMENT
  196.  
  197.  
  198. DECREMENT
  199. ---------
  200. Mit diesem Befehl koennen Sie eine REAL bzw. INTEGER-Variable
  201. um einen bestimmten Wert verkleinern (Subtraktion)..
  202. Syntax: DECREMENT VARNAME,WERT
  203.         VARNAME = Der Name der Variable, dessen Wert verkleinert werden soll.
  204.         WERT = Der Wert kann entweder direkt der entsprechende Wert sein
  205.                oder eine Variable, dessen Inhalt als Wert interpretiert werden
  206.                soll.
  207. Informationen: Diese Funktion ist verleichbar mit dem PASCAL-Ausdruck DEC.
  208. Beispiel: VAR ZweiteVariable:INTEGER
  209.  
  210.           DECREMENT ZweiteVariable,10  {Der Inhalt von ZweiteVariable wird
  211.                                         um 10 verkleinert.}
  212. Siehe auch: INCREMENT
  213.  
  214.  
  215. MULTIPLY
  216. --------
  217. Mit diesem Befehl koennen Sie eine REAL bzw. INTEGER-Variable
  218. um einen bestimmten Wert multiplizieren.
  219. Syntax: MULTIPLY VARNAME,WERT
  220.         VARNAME = Der Name der Variablen, dessen Inhalt mit etwas
  221.                   multipliziert werden soll.
  222.         WERT = Der Wert kann entweder direkt der entsprechende Wert sein
  223.                oder eine Variable, dessen Inhalt als Wert interpretiert
  224.                werden soll.
  225. Informationen: Diese Funktion ist verleichbar mit dem PASCAL-Ausdruck
  226.                VARNAME:=VARNAME*WERT;
  227. Beispiel: VAR ZweiteVariable:INTEGER
  228.  
  229.           MULTIPLY ZweiteVariable,10  {Der Inhalt von ZweiteVariable wird
  230.                                        mit 10 multipliziert.}
  231. Siehe auch: DIVIDE
  232.  
  233.  
  234. DIVIDE
  235. --------
  236. Mit diesem Befehl koennen Sie eine REAL bzw. INTEGER-Variable
  237. um einen bestimmten Wert dividieren.
  238. Syntax: MULTIPLY VARNAME,WERT
  239.         VARNAME = Der Name der Variablen, dessen Inhalt durch etwas dividiert
  240.                   werden soll.
  241.         WERT = Der Wert kann entweder direkt der entsprechende Wert sein
  242.                oder eine Variable, dessen Inhalt als Wert interpretiert
  243.                werden soll.
  244. Informationen: Diese Funktion ist verleichbar mit dem PASCAL-Ausdruck
  245.                VARNAME:=VARNAME / WERT;  bzw.  VARNAME:=VARNAME div WERT;
  246. Beispiel: VAR ZweiteVariable:INTEGER
  247.  
  248.           DIVIDE ZweiteVariable,10  {Der Inhalt von ZweiteVariable wird
  249.                                      durch 10 dividiert.}
  250. Siehe auch: MULTIPLY
  251.  
  252.  
  253. Zuweisungen:
  254. ------------
  255. EQUATE
  256. ------
  257. Mit Hilfe dieses Befehles koennen Sie einer Variable einen Wert zuweisen.
  258. Syntax: EQUATE VARNAME,WERT
  259.         VARNAME = Der Name der Variablen, welcher man einen wert zuordnen
  260.                   will.
  261.         WERT = Der Wert kann entweder direkt der entsprechende Wert sein
  262.                oder eine Variable, dessen Inhalt als Wert interpretiert
  263.                werden soll.
  264. Informationen: Diese Funktion ist vergleichbar mit dem PASCAL-Ausdruck
  265.                VARNAME:=WERT;
  266.                Mit Hilfe dieses Befehlen koennen Sie auch Typenkonvertierungen
  267.                durchfuehren. D.h. wenn Sie z.B. eine Variable A des Types
  268.                Integer und eine weitere Variable B des Types REAL haben
  269.                koennen Sie mit EQUATE A,B den Wert von B der String-Variable A
  270.                zuweisen.
  271. Beispiel:  VAR TestVariable:STRING
  272.            VAR ZweiteVariable:INTEGER
  273.  
  274.            EQUATE TestVariable,Dies ist ein Test
  275.            {Die String-Variable TestVariable enthaelt nun die Zeichenkette
  276.             "Dies ist ein Test".}
  277.  
  278.            EQUATE ZweiteVariable,111
  279.            {Die Integer-Variable ZweiteVariable wird auf den Wert 111 gesetzt.}
  280.  
  281.  
  282. Eingaben:
  283. ---------
  284. READ / READLN
  285. -------------
  286. Mit diesen Befehlen koennen Sie den User nach dem Wert/Inhalt einer
  287. bestimmten Variable fragen.
  288. Syntax: READ VARNAME
  289.         READLN VARNAME
  290. Informationen: Diese Funktion ist mit den PASCAL-Ausdruecken READ und READLN
  291.                zu vergleichen.
  292.                Der Unterschied zwischen READ und READLN ist der, dass READLN
  293.                nach der (durch Druecken der Return-Taste) Abfrage einen
  294.                Wagenruecklauf plus Zeilenvorschub durchfuehrt (entsprechend
  295.                wie bei WRITE und WRITELN).
  296. Beispiel:  VAR TestVariable:STRING
  297.            VAR ZweiteVariable:INTEGER
  298.  
  299.            READ TestVariable
  300.            READLN TestVariable
  301.            READ ZweiteVariable
  302.            READLN ZweiteVariable
  303. Siehe auch: WRITE / WRITELN
  304.  
  305.  
  306. Ausgaben:
  307. ---------
  308. WRITE / WRITELN
  309. ---------------
  310. Mit diesem Befehl koennen Sie Ausgaben auf den Bildschirm taetigen.
  311. Syntax: WRITE Ausgabetext bzw. &VARNAME&
  312.         WRITELN Ausgabetext bzw. &VARNAME&
  313. Informationen: Dieser Befehl ist mit dem PASCAL-Ausdruck WRITE und
  314.                WRITELN vergleichbar.
  315.                Der Unterschied zwischen WRITE und WRITELN besteht darin, dass
  316.                WRITELN nach der Ausgabe an den Anfang der naechsten Bild-
  317.                schirmzeile springt.
  318.                Sie koennen mit den o.g. Befehlen auch Variablen ausgeben.
  319.                Dies geschieht indem Sie die Variable umgeben von dem &
  320.                Zeichen in Ihren Ausgabetext schreiben (z.B. &Varname&).
  321. Beispiel: VAR TestVariable:STRING
  322.           VAR ZweiteVariable:INTEGER
  323.  
  324.           EQUATE TestVariable,Stefan Dietzel
  325.           WRITELN Hallo, &TestVariable&. Schoen Dich hier anzutreffen.
  326.           {Ausgabe: Hallo, Stefan Dietzel. Schoen Dich hier anzutreffen.}
  327.  
  328.           EQUATE ZweiteVariable,10
  329.           SIN ZweiteVariable,ZweiteVariable
  330.           WRITELN Das Ergebnis der Berrechnung lautet &ZweiteVariable&.
  331.           {Ausgabe: Das Ergebnis der Berrechnung lautet 0.1736481777.}
  332. Siehe auch: REAL / READLN
  333.  
  334.  
  335. Abfragen und Schleifen:
  336. -----------------------
  337. IF
  338. --
  339. Mit diesem Befehl koennen Sie Fallabfragen durchfuehren.
  340. Syntax: IF VARNAME,OPERATOR,WERT,AKTION
  341.         VARNAME = Der Name der Variablen welche auf etwas ueberprueft werden
  342.                   soll.
  343.         OPERATOR = Es existieren folgende Pruefungsoperatoren:
  344.                    <     kleiner
  345.                    >     groesser
  346.                    =     gleich
  347.                    !     ungleich
  348.         WERT = Der Wert kann entweder direkt der entsprechende Wert sein
  349.                oder eine Variable, dessen Inhalt als Wert interpretiert werden
  350.                soll.
  351.         AKTION = Ein FastScript bzw. FastScript (PL) Befehl, welcher
  352.                  bei Zutreffen der Pruefung aufgerufen werden soll.
  353. Informationen: Wenn Sie an der Stelle von WERT keine Variable uebergeben
  354.                wollen, sondern direkt eine Zeichenkette setzen Sie diese
  355.                in Hochkommas "" (siehe Beispiel).
  356. Beispiele:  IF $userlevel,<,2,ende
  357.             {Falls der Userlevel des aktuellen kleiner als 2 ist,
  358.             wird die Homepage automatisch verlassen.}
  359.  
  360.             IF $userlevel,>,2,procedure test
  361.             {Falls der Userlevel groesser als 2 ist, wird die
  362.             Unter-Script-Procedure TEST.SCR aufgerufen.}
  363.  
  364.             If $username,=,"STEFAN DIETZEL",schreibe Hallo, Stefan.
  365.             {Wenn der Username STEFAN DIETZEL lautet soll der Text
  366.             Hallo, Stefan. ausgegeben werden}
  367. Siehe auch: PROCEDURE / WHILE
  368.  
  369. WHILE
  370. -----
  371. Mit diesem Befehl koennen Schleifen (auch Zaehlschleifen) realisiert werden.
  372. Syntax: WHILE VARNAME,OPERATOR,WERT,AKTION
  373.         VARNAME = Der Name der Variablen, welche auf etwas ueberprueft werden
  374.                   soll.
  375.         OPERATOR = Es existieren folgende Pruefungsoperatoren:
  376.                    <     kleiner
  377.                    >     groesser
  378.                    =     gleich
  379.                    !     ungleich
  380.         WERT = Der Wert kann entweder direkt der entsprechende Wert sein
  381.                oder eine Variable, dessen Inhalt als Wert interpretiert werden
  382.                soll.
  383.         AKTION = Ein FastScript bzw. FastScript (PL) Befehl, welcher
  384.                  bei Zutreffen der Pruefung aufgerufen werden soll.
  385. Informationen: Wenn Sie an der Stelle von WERT keine Variable uebergeben
  386.                wollen, sondern direkt eine Zeichenkette setzen Sie diese
  387.                in Hochkommas "" (siehe Beispiel).
  388.                Bem.: Vom Programm her ist es nicht notwendig die Hochkommas
  389.                      zu schreiben, jedoch werden Sie sehr zur Ueber-
  390.                      sichlichkeit der entsprechenden Script-Passagen
  391.                      empfohlen. Man ist dadurch schneller in der Lage zu
  392.                      erkennen ob eine Variable oder der direkte Wert
  393.                      uebergeben wird.
  394. Beispiel:  VAR TestVariable:STRING
  395.            VAR Passwort:STRING
  396.            WHILE TestVariable,!,Passwort,Procedure PW_FRAGN
  397.            {Solange der Inhalt von TestVariable ungleich dem Inhalt
  398.            der Variable Passwort ist, wird die Procedure PW_FRAGN
  399.            (Datei: PW_FRAGN.SCR) aufgerufen.
  400.  
  401.            WHILE TestVariable,!,"Hallo",readln TestVariable
  402.            {Solange TestVariable ungleich Hallo ist, wird der User nach
  403.            einem neuen Wert gefragt.}
  404.  
  405. Siehe auch: IF / PROCEDURE
  406.  
  407.  
  408. Programmunterteilungen/Bloecke:
  409. -------------------------------
  410. PROCEDURE
  411. ---------
  412. Dieser Befehl ruft eine weitere Script-Datei auf, wobei die vorher
  413. erstellten Variablen waehrend und nach dem Ausfuehren der Script-Datei
  414. aktiv sind. 
  415. Syntax: PROCEDURE SCRIPTNAME
  416.         SCRIPTNAME = Name der aufzurufenden Script-Datei
  417. Informationen: Nach Beenden der mit PROCEDURE aufgerufenen Script-Datei wird
  418.                in die aufrufende Script-Datei zurueckgewechselt. Wird in der
  419.                mit PROCEDURE aufgerufenen Script-Datei der Befehl STOP
  420.                benutzt wird nur die aktuelle Script-Datei beendet und es
  421.                wird zur aufrufenden Script-Datei zurueckgesprungen.
  422.                Benutzen Sie in der PROCEDURE-Script allerdings den Befehl
  423.                ENDE bzw. END, wird die komplette Homepage beendet.
  424. Beispiele: PROCEDURE TEST
  425.            {Die Script-Datei TEST.SCR wird aufgerufen.}
  426.  
  427. GOTO
  428. ----
  429. Dieser Befehl ist zur Unterteilung einer Script-Datei in mehrere
  430. Bloecke zu verwenden. Hierdurch lassen sich mit Hilfe von Schleifen
  431. (While/If) sehr gut entsprechende Script-Bloecke anspringen.
  432. Syntax:    :Sprungmarke
  433.             ....
  434.             ....
  435.             ....
  436.            GOTO Sprungmarke
  437. Information: Dieser Befehl ist u.a. wichtig, wenn eine bestimmte Script-Datei
  438.              solange abgearbeitet werden soll, bis ein bestimmtes Ereignis
  439.              eingetreten ist.
  440. Beispiel:    VAR Test:CHAR
  441.              :Startmarke
  442.                schreibeln Hallo, &$username&.
  443.                schreibe Moechtest Du nochmal begruesst werden? (J/N)
  444.                readln Test
  445.                up Test
  446.              if Test,=,"J",GOTO Startmarke
  447.              {Natuerlich kann der GOTO-Befehl auf ohne IF bzw.
  448.              WHILE verwendet werden.}
  449. Siehe auch: STOP
  450.  
  451. STOP
  452. ----
  453. Dieser Befehl ist zur Anwendung in mit PROCEDURE aufgerufenen
  454. Script-Dateien gedacht.
  455. Syntax: STOP
  456. Informationen: Falls Sie in die aufrufende Script zurueckkehren wollen,
  457.                ist STOP der richtige Befehl. Der Befehl STOP kann sowohl
  458.                alleine als auch in Verbindung mit IF / WHILE verwendet
  459.                werden.
  460.                Vorsicht: Verwenden Sie fuer den o.g. Fall nicht die Befehle
  461.                          ENDE / END, da sie die komplette Homepage beenden.
  462. Beispiel: SCHREIBE Hallo, ich kehre jetzt zurueck
  463.           STOP
  464.  
  465. Stringbearbeitung:
  466. ------------------
  467. UP
  468. --
  469. Dieser Befehl wandelt einen STRING so um, das er nur noch Grossbuchstaben
  470. enthaelt (d.h. aus Test wuerde TEST werden).
  471. Syntax: UP VARNAME
  472.         VARNAME = Die Variable, dessen Inhalt in Grossbuchstaben ver-
  473.                   wandelt werden soll. Der neue Grossbuchstaben-String
  474.                   wird in die Ausgangsvariable zurueckgeschrieben.
  475. Beispiele:  EQUATE TestVariable,Dies ist ein Test.
  476.             {Inhalt TestVariable: Dies ist ein Test.}
  477.             UP TestVariable
  478.             {Inhalt TestVariable: DIES IST EIN TEST.}
  479.  
  480. DELSPACE
  481. --------
  482. Dieser Befehl loescht alle Leerzeichen aus einem STRING.
  483. Syntax: DELSPACE VARNAME
  484.         VARNAME = Die Variable, dessen Inhalt alle Leerzeichen entfernt
  485.                   werden soll. Der neue Leerzeichenlose-String wird in
  486.                   die Ausgangsvariable zurueckgeschrieben.
  487. Beispiel:  VAR TestVariable:STRING
  488.            EQUATE TestVariable,Dies ist ein Test.
  489.            {Inhalt TestVariable: Dies ist ein Test.}
  490.            DELSPACE TestVariable
  491.            {Inhalt TestVariable: DiesisteinTest.}
  492.  
  493.  
  494. DELSTRING
  495. ---------
  496. Mit diesem Befehl kann man Teile eines Strings loeschen.
  497. Syntax: DELSTRING VARNAME,STARTPOSITION,ENDPOSITION
  498.         VARNAME = Die Variable, aus dessen Inhalt etwas geloescht
  499.                   werden soll. Die uebrig gebliebene Zeichenkette wird
  500.                   automatisch in VARNAME selber zurueckgeschrieben.
  501.         STARTPOSITION = Die Position des Zeichens innerhalb der Zeichenkette
  502.                         bei dem das Loeschen begonnen werden soll.
  503.         ENDPOSITION = Das Zeichen innerhalb der Zeichenkette bei dem
  504.                       das Loeschen beendet werden soll.
  505. Information: Dieser Befehl ist aehnlich dem PASCAL-Befehl DELETE.
  506. Beispiel:  VAR TestVariable:STRING
  507.            EQUATE TestVariable,Dies ist ein kleiner Test.
  508.            {Inhalt TestVariable:Dies ist ein kleiner Test.}
  509.            DELSTRING TestVariable,14,21
  510.            {Inhalt TestVariable:Dies ist ein Test.}
  511. Siehe auch: INSSTRING
  512.  
  513. INSSTRING
  514. ---------
  515. Mit Hilfe dieses Befehles ist es moeglich einen Teil-String in eine
  516. vorhandene String-Variable an einer bestimmten Position einzufuegen.
  517. Syntax: INSSTRING VARNAME,POSITION,TEILSTRING
  518.         VARNAME = Die Variable in welche etwas eingefuegt werden soll.
  519.         POSITION = Die Position ab welcher etwas einfeguegt werden soll.
  520.         TEILSTRING = Die Teil-Zeichenkette welche eingefuegt werden soll.
  521. Information: Als Teilstring koennen Sie auch eine andere Variable beliebigen
  522.              Types einfuegen, dessen Inhalt dann als String eingefuegt wird.
  523.              Allerdings muessen Sie diese Variable wie bei WRITE / WRITELN
  524.              mit dem &-Zeichen umgeben.
  525.              Sie koennen innerhalb des Teilstrings ebenfalls die Makro-
  526.              Kuerzel (wie z.B. %MS% als Leertaste usw.) benutzen.
  527.              Dieser Befehl ist aehnlich dem PASCAL-Befehl INSERT.
  528. Beispiel:  VAR TestVariable:STRING
  529.            EQUATE TestVariable,Hallo !
  530.            {Inhalt TestVariable:Hallo !}
  531.            INSSTRING TestVariable,6,$username
  532.            {$username enthaelt z.B. den Namen STEFAN DIETZEL
  533.             Inhalt TestVariable:Hallo STEFAN DIETZEL!}
  534. Siehe auch: DELSTRING
  535.  
  536. POSSTRING
  537. ---------
  538. Dieser Befehl ermoeglicht das Auffinden einer bestimmten Zeichenkette
  539. in einer STRING-Variable.
  540. Syntax: POSSTRING VARNAME,TEILSTRING,POSITIONSVARIABLE
  541.         VARNAME = STRING-Variable in welcher nach einem Teilstring
  542.                   gesucht wird.
  543.         TEILSTRING = Die Zeichenkette nach der in VARNAME gesucht werden
  544.                      soll.
  545.         POSITIONSVARIABLE = Die INTEGER-Variable in welche die Position
  546.                             des TEILSTRINGs in VARNAME uebergeben werden
  547.                             soll.
  548. Information: Wenn der Teilstring nicht im hauptstring gefunden wurde, wird
  549.              an die Positionvariable der Wert 0 uebergeben. Desweiteren
  550.              ist die Ueberpruefung Gross- und Kleinschreibungsabhaengig.
  551.              D.h. wenn Sie z.B. nach "Dies" suchen und im eigentlichen String
  552.              das Wort "DIES" steht wird keine Uebereinstimmung gefunden
  553.              werden.
  554.              Dieser Befehl ist mit der PASCAL-Funktion POS zu vergleichen.
  555. Beispiel:  VAR TestVariable:STRING
  556.            VAR ZweiteVariable:INTEGER
  557.            EQUATE TestVariable,Dies ist ein kleiner Test!
  558.            {Inhalt TestVariable:Dies ist ein kleiner Test !}
  559.            POSSTRING TestVariable,ein,ZweiteVariable,
  560.            {Inhalt ZweiteVariable: 10}
  561.  
  562. LENGTHSTRING
  563. ------------
  564. Mit diesem Befehl kann man die Laenge einer Zeichenkette feststellen.
  565. Syntax: LENGTHSTRING VARNAME,LAENGENVARIABLE
  566.         VARNAME = String-Variable deren Laenge festgestellt werden soll.
  567.         LAENGENVARIABLE = INTEGER-Variable in welche die Laenge der
  568.                           String-Variable geschrieben werden soll.
  569. Information: Dieser Befehl ist mit der PASCAL-Funktion LENGTH zu vergleichen.
  570. Beispiel:  VAR TestVariable:STRING
  571.            VAR ZweiteVariable:INTEGER
  572.            EQUATE TestVariable,Dies ist ein kleiner Test!
  573.            LENGTHSTRING TestVariable,ZweiteVariable
  574.            {Inhalt ZweiteVariable: 26}
  575.  
  576.  
  577. Rechenfunktionen:
  578. -----------------
  579. SIN
  580. ---
  581. Dieser Befehl wird ist zur Berrechnung des Sinus verwendet.
  582. Syntax:  SIN WERT,VARNAME
  583.          WERT = Wert oder Variable dessen Sinus berrechnet werden soll.
  584.                 ! Wichtig: Die Einheit des Wertes muss RAD sein !
  585.          VARNAME = Die Variable in welche das Ergebnis der Berrechnung
  586.                    geschrieben werden soll.
  587. Information: Dieser Befehl ist mit der PASCAL-Funktion SIN vergleichbar.
  588. Beispiel: VAR Ergebnis:REAL
  589.           VAR ZweiteVariable:INTEGER
  590.           EQUATE ZweiteVariable,10
  591.           {Inhalt ZweiteVariable: 10}
  592.           SIN ZweiteVariable,Ergebnis
  593.           {Inhalt Ergebnis: 0.1736481777}
  594. Siehe auch: COS / TAN / ARCTAN
  595.  
  596. COS
  597. ---
  598. Dieser Befehl wird ist zur Berrechnung des Cosinus verwendet.
  599. Syntax:  SIN WERT,VARNAME
  600.          WERT = Wert oder Variable dessen Cosinus berrechnet werden soll.
  601.                 ! Wichtig: Die Einheit des Wertes muss RAD sein !
  602.          VARNAME = Die Variable in welche das Ergebnis der Berrechnung
  603.                    geschrieben werden soll.
  604. Information: Dieser Befehl ist mit der PASCAL-Funktion COS vergleichbar.
  605. Beispiel: VAR Ergebnis:REAL
  606.           VAR ZweiteVariable:INTEGER
  607.           EQUATE ZweiteVariable,10
  608.           {Inhalt ZweiteVariable: 10}
  609.           COS ZweiteVariable,Ergebnis
  610.           {Inhalt Ergebnis: 0.984807753}
  611. Siehe auch: SIN / TAN / ARCTAN
  612.  
  613. TAN
  614. ---
  615. Dieser Befehl wird ist zur Berrechnung des Tangens verwendet.
  616. Syntax:  TAN WERT,VARNAME
  617.          WERT = Wert oder Variable dessen Tangens berrechnet werden soll.
  618.                 ! Wichtig: Die Einheit des Wertes muss RAD sein !
  619.          VARNAME = Die Variable in welche das Ergebnis der Berrechnung
  620.                    geschrieben werden soll.
  621. Information: Dieser Befehl ist mit der PASCAL-Funktion TAN vergleichbar.
  622. Beispiel: VAR Ergebnis:REAL
  623.           VAR ZweiteVariable:INTEGER
  624.           EQUATE ZweiteVariable,10
  625.           {Inhalt ZweiteVariable: 10}
  626.           TAN ZweiteVariable,Ergebnis
  627.           {Inhalt Ergebnis: 0.1763269807}
  628. Siehe auch: SIN / COS / ARCTAN
  629.  
  630. ARCTAN
  631. ------
  632. Dieser Befehl wird ist zur Berrechnung des Arcustangens verwendet.
  633. Syntax:  TAN WERT,VARNAME
  634.          WERT = Wert oder Variable dessen Arcustangens berrechnet werden soll.
  635.                 ! Wichtig: Die Einheit des Wertes muss RAD sein !
  636.          VARNAME = Die Variable in welche das Ergebnis der Berrechnung
  637.                    geschrieben werden soll.
  638. Information: Dieser Befehl ist mit der PASCAL-Funktion ARCTAN vergleichbar.
  639. Beispiel: VAR Ergebnis:REAL
  640.           VAR ZweiteVariable:INTEGER
  641.           EQUATE ZweiteVariable,10
  642.           {Inhalt ZweiteVariable: 10}
  643.           TAN ZweiteVariable,Ergebnis
  644.           {Inhalt Ergebnis: 0.1745329252}
  645. Siehe auch: SIN / COS / TAN
  646.  
  647. LN
  648. --
  649. Mit Hilfe dieses Befehles koennen Sie den natuerlichen Logarithmus eines
  650. Wertes berrechnen.
  651. Syntax:  TAN WERT,VARNAME
  652.          WERT = Wert oder Variable dessen LN berrechnet werden soll.
  653.          VARNAME = Die Variable in welche das Ergebnis der Berrechnung
  654.                    geschrieben werden soll.
  655. Information: Dieser Befehl ist mit der PASCAL-Funktion LN vergleichbar.
  656. Beispiel: VAR Ergebnis:REAL
  657.           VAR ZweiteVariable:INTEGER
  658.           EQUATE ZweiteVariable,10
  659.           {Inhalt ZweiteVariable: 10}
  660.           LN ZweiteVariable,Ergebnis
  661.           {Inhalt Ergebnis: 2.302585093}
  662. Siehe auch: EXP
  663.  
  664. EXP
  665. ---
  666. Mit diesem Befehl berrechnet den e^x (e hoch x) eines Wertes.
  667. Syntax:  EXP WERT,VARNAME
  668.          WERT = Wert oder Variable dessen e^x berrechnet werden soll.
  669.          VARNAME = Die Variable in welche das Ergebnis der Berrechnung
  670.                    geschrieben werden soll.
  671. Information: Dieser Befehl ist mit der PASCAL-Funktion EXP vergleichbar.
  672. Beispiel: VAR Ergebnis:REAL
  673.           VAR ZweiteVariable:INTEGER
  674.           EQUATE ZweiteVariable,10
  675.           {Inhalt ZweiteVariable: 10}
  676.           EXP ZweiteVariable,Ergebnis
  677.           {Inhalt Ergebnis: 22026.4657948017}
  678. Siehe auch: LN
  679.  
  680. SQR
  681. ---
  682. Dieser Befehl dient zur Quadrierung eines Wertes.
  683. Syntax:  SQR WERT,VARNAME
  684.          WERT = Wert oder Variable welche(r) quadriert werden soll.
  685.          VARNAME = Die Variable in welche das Ergebnis der Berrechnung
  686.                    geschrieben werden soll.
  687. Information: Dieser Befehl ist mit der PASCAL-Funktion SQR vergleichbar.
  688. Beispiel: VAR Ergebnis:REAL
  689.           VAR ZweiteVariable:INTEGER
  690.           EQUATE ZweiteVariable,10
  691.           {Inhalt ZweiteVariable: 10}
  692.           SQR ZweiteVariable,Ergebnis
  693.           {Inhalt Ergebnis: 100.0}
  694. Siehe auch: SQRT
  695.  
  696. SQRT
  697. ----
  698. Dieser Befehl zieht die quadratische Wurzel aus einem Wert.
  699. Syntax:  SQRT WERT,VARNAME
  700.          WERT = Wert oder Variable, dessen quadratische Wurzel berrechnet
  701.                 werden soll.
  702.          VARNAME = Die Variable in welche das Ergebnis der Berrechnung
  703.                    geschrieben werden soll.
  704. Information: Dieser Befehl ist mit der PASCAL-Funktion SQR vergleichbar.
  705. Beispiel: VAR Ergebnis:REAL
  706.           VAR ZweiteVariable:INTEGER
  707.           EQUATE ZweiteVariable,10
  708.           {Inhalt ZweiteVariable: 10}
  709.           SQRT ZweiteVariable,Ergebnis
  710.           {Inhalt Ergebnis: 3.1622776602}
  711. Siehe auch: SQR
  712.  
  713.  
  714. Boolsche Funktionen
  715. -------------------
  716.  
  717. OR
  718. --
  719. Mit diesem Befehl koennen Sie mit einer INTEGER-Variable eine
  720. OR-Ueberpruefung durchfuehren.
  721. Syntax: OR VARNAME,WERT
  722.         VARNAME = Der Name der Variablen, dessen Inhalt mit OR
  723.                   ueberprueft werden soll. Das Ergebnis der Ueberpruefung
  724.                   wird in diese Variable zurueckgeschrieben.
  725.         WERT = Der Wert kann entweder direkt der entsprechende Wert sein
  726.                oder eine Variable, dessen Inhalt als Wert interpretiert
  727.                werden soll.
  728. Informationen: Diese Funktion ist verleichbar mit dem PASCAL-Ausdruck
  729.                VARNAME:=VARNAME or WERT;
  730. Beispiel: VAR ZweiteVariable:INTEGER
  731.           EQUATE ZweiteVariable,1
  732.           OR ZweiteVariable,0
  733. Siehe auch: XOR, AND, NOT
  734.  
  735. XOR
  736. ---
  737. Mit diesem Befehl koennen Sie mit einer INTEGER-Variable eine
  738. XOR-Ueberpruefung durchfuehren.
  739. Syntax: XOR VARNAME,WERT
  740.         VARNAME = Der Name der Variablen, dessen Inhalt mit XOR
  741.                   ueberprueft werden soll. Das Ergebnis der Ueberpruefung
  742.                   wird in diese Variable zurueckgeschrieben.
  743.         WERT = Der Wert kann entweder direkt der entsprechende Wert sein
  744.                oder eine Variable, dessen Inhalt als Wert interpretiert
  745.                werden soll.
  746. Informationen: Diese Funktion ist verleichbar mit dem PASCAL-Ausdruck
  747.                VARNAME:=VARNAME xor WERT;
  748. Beispiel: VAR ZweiteVariable:INTEGER
  749.           EQUATE ZweiteVariable,1
  750.           XOR ZweiteVariable,0
  751. Siehe auch: OR, AND, NOT
  752.  
  753. AND
  754. ---
  755. Mit diesem Befehl koennen Sie mit einer INTEGER-Variable eine
  756. AND-Ueberpruefung durchfuehren.
  757. Syntax: AND VARNAME,WERT
  758.         VARNAME = Der Name der Variablen, dessen Inhalt mit AND
  759.                   ueberprueft werden soll. Das Ergebnis der Ueberpruefung
  760.                   wird in diese Variable zurueckgeschrieben.
  761.         WERT = Der Wert kann entweder direkt der entsprechende Wert sein
  762.                oder eine Variable, dessen Inhalt als Wert interpretiert
  763.                werden soll.
  764. Informationen: Diese Funktion ist verleichbar mit dem PASCAL-Ausdruck
  765.                VARNAME:=VARNAME and WERT;
  766. Beispiel: VAR ZweiteVariable:INTEGER
  767.           EQUATE ZweiteVariable,1
  768.           AND ZweiteVariable,0
  769. Siehe auch: OR, XOR, NOT
  770.  
  771. NOT
  772. ---
  773. Mit diesem Befehl koennen Sie mit einer INTEGER-Variable eine
  774. NOT-Ueberpruefung durchfuehren.
  775. Syntax: NOT VARNAME
  776.         VARNAME = Der Name der Variablen, dessen Inhalt mit NOT
  777.                   ueberprueft werden soll. Das Ergebnis der Ueberpruefung
  778.                   wird in diese Variable zurueckgeschrieben.
  779.                oder eine Variable, dessen Inhalt als Wert interpretiert
  780.                werden soll.
  781. Informationen: Diese Funktion ist verleichbar mit dem PASCAL-Ausdruck
  782.                VARNAME:=not VARNAME;
  783. Beispiel: VAR ZweiteVariable:INTEGER
  784.           EQUATE ZweiteVariable,1
  785.           NOT ZweiteVariable   {ZweiteVariable wird hier 0}
  786. Siehe auch: OR, XOR, AND
  787.  
  788.  
  789. Bildschirmfunktionen
  790. --------------------
  791. WHEREX
  792. ------
  793. Mit Hilfe dieses Befehles koennen Sie die X-Koordinate der aktuellen
  794. Cursor-Position in eine Variable speichern.
  795. Syntax: WHEREX VARNAME
  796.         VARNAME = Die Variable, in welche die X-Koordinate gespeichert
  797.                   werden soll.
  798. Informationen: Diese Funktion ist verleichbar mit dem PASCAL-Ausdruck
  799.                VARNAME:=wherex;
  800. Beispiel: VAR ZweiteVariable:INTEGER
  801.           WHEREX ZweiteVariable
  802. Siehe auch: WHEREY
  803.  
  804. WHEREY
  805. ------
  806. Mit Hilfe dieses Befehles koennen Sie die Y-Koordinate der aktuellen
  807. Cursor-Position in eine Variable speichern.
  808. Syntax: WHEREY VARNAME
  809.         VARNAME = Die Variable, in welche die X-Koordinate gespeichert
  810.                   werden soll.
  811. Informationen: Diese Funktion ist verleichbar mit dem PASCAL-Ausdruck
  812.                VARNAME:=wherey;
  813. Beispiel: VAR ZweiteVariable:INTEGER
  814.           WHEREY ZweiteVariable
  815. Siehe auch: WHEREX
  816.  
  817.  
  818. ─────────────────────────────────────────────────────────────────────[EOF]────
  819.