home *** CD-ROM | disk | FTP | other *** search
/ Inside Multimedia 1995 July / IMM0795.ISO / demo / optix / optxfpac.set / CHANGE26 < prev    next >
Text File  |  1995-04-30  |  32KB  |  1,106 lines

  1. ***********************************************************
  2. Inhalt:
  3.  
  4. 1.   Installationshinweise
  5. 2.   OPTCOMP1.EXE (nur 'PRO')
  6. 3.   MAKEFONT.EXE (nur 'LITE' und 'PRO')
  7. 4.   SETUP.EXE    (nur 'LITE' und 'PRO')
  8. 5.   Änderungen 2.6 - 2.8
  9. 6.   Neue Befehle und Funktionen in OPTIX 2.8
  10.  
  11.  
  12. ============================================================
  13.  
  14.  
  15. 1.  Hinweise für 2.6-User zur OPTIX-2.8-'FREE'-Installation:
  16. ============================================================
  17.  
  18.  
  19. Falls Sie die Version OPTIX 2.6 besitzen, achten Sie bitte darauf,
  20. daß die Treiber der alten und neuen Version nicht verwechselt werden (!)
  21. Es gibt eine neue Generation OPTIX-Treiber, Versions-Nummer 3.0x.
  22. OPTIX 'FREE' muß (!) die neuen Treiber benutzen. Vorsicht, OPTIX 2.6
  23. nicht mit den neuen Treibern aufrufen -> Absturz!
  24.  
  25. Arbeiten Sie möglichst mit dem neuen OPTIX-Grafiktreiber für VESA-Betrieb
  26. 'OPTDRVVS.COM'.  'OPTDRV12.COM' ist für ET4000-VGAs (bis W32i) vorgesehen,
  27. weitere Treiber sind noch in der Vorbereitung.
  28.  
  29. Der neue OPTIX-Treibertyp läßt sich mit dem Parameter /U deinstallieren, er
  30. wird dann aus dem Speicher entfernt und der Speicher vollständig wieder
  31. freigegeben.
  32.  
  33. Der VESA-Treiber OPTDRVVS.COM kann mit dem Parameter /V aufgerufen werden
  34. und listet bei der Installation die verfügbaren Grafikmodi auf.
  35.  
  36. OPTIX-'FREE' kann mit dem Parameter /320 auch auf Standard-VGA's betrieben
  37. werden und schaltet dann in den 320x200x256-Grafikmodus. Dies funktioniert
  38. jedoch nur mit dem dazugehörigen Treiber OPTDRV02.COM. Ist ein SVGA-Grafik-
  39. adapter vorhanden (640x480x256) und OPTDRVVS.COM installiert, funktioniert
  40. 'OPTIX_F.EXE /320' auch  o h n e  Verwendung von OPTDRV02.COM.
  41.  
  42. Falls OPTIX_F.EXE ganz ohne Parameter aufgerufen wird, ist die Default-Auflösung
  43. 640x480x256. Im Infofeld wird die aktuell eingestellte Auflösung angezeigt.
  44.  
  45. ----------------------------------------------------------------------
  46.  
  47. 2.  OPTCOMP.EXE (nur für 'PRO')
  48. ====================================
  49.  
  50.     OPTCOMP1.EXE ist ein externes OPTIX-Compiler-Modul für OPTIX-'PRO', mit
  51.     dem OPTIX-'.OPT'-Dateien direkt kompiliert werden können. Dadurch ist es
  52.     möglich, auch aus anderen Programmiersprachen, Autorensystemen, Texteditoren
  53.     oder sonstigen Shell's heraus OPTIX-'.ANI'-Compilate zu erzeugen, um diese
  54.     dann durch den RunOnly-Interpreter direkt aufrufen zu können, ohne sich in
  55.     der OPTIX-Entwicklungsumgebung zu befinden.
  56.  
  57. ---------------------------------------------------------------------
  58.  
  59.  
  60. 3.  MAKEFONT.EXE  (für 'LITE' und 'PRO')
  61. ========================================
  62.  
  63.     Das Programm MAKEFONT.EXE erzeugt aus einer Fontmatrix (8Bit-BMP) einen
  64.     OPTIX-Proportional-Font. Dazu ist dem Programm als erster Parameter der
  65.     Name  einer '.BMP'- Grafik und als zweiter Parameter die gewünschte
  66.     Breite des Leerzeichens ('Space' in Pixeln) zu übergeben:
  67.  
  68.     z.B.:       MAKEFONT.EXE OPTXFONT.BMP 10
  69.  
  70. Für das Zeichenraster der Font-Bitmap gilt dabei folgende Festlegung:
  71.  
  72.         <------------------         16 Zeichen            -------------->
  73.  
  74.        +---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+---+
  75.    ^    |     !   "   #   $   %   &   /   (   )   *   +   ,   -   .   ' |
  76.    |    +---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
  77.    |    | 0   1   2   3   4   5   6   7   8   9   :   ;   <   =   >   ? |
  78.    |    +---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
  79.         | @   A   B   C   D   E   F   G   H   I   J   K   L   M   N   O |
  80.    8    +---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
  81.  Zeilen | P   Q   R   S   T   U   V   W   X   Y   Z   [   \   ]   ^   _ |
  82.         +---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
  83.    |    | `   a   b   c   d   e   f   g   h   i   j   k   l   m   n   o |
  84.    |    +---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
  85.    |    | p   q   r   s   t   u   v   w   x   y   z   {   |   }   ~   ^ |
  86.    |    +---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
  87.    |    | Ä   Ö   Ü   ä   ö   ü   ß                                     |
  88.    |    +---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
  89.    v    | reserviert                | . |                               |
  90.         +---+---+---+---+---+---+---+-|-+---+---+---+---+---+---+---+---+
  91.                 eine Zeichenbox =-----'
  92.                 (Pixelbreite durch 16 teilbar - Höhe beliebig)               
  93.  
  94. Der Char-Set ist in der hier gezeigten Anordnung in dieses Raster einzufügen. 
  95.  
  96. Es ist darauf zu achten, daß die Pixelbreite der einzelnen Zeichenbox durch
  97. den Wert 16 teilbar sein muß. Die Höhe der Zeichenbox in Pixel kann beliebig 
  98. sein.
  99.  
  100. Aus dem gesagten ergeben sich die exakten Ausmaße der jeweils zu übergebenden 
  101. Bitmap. Ist z.B. eine Zeichenbox 32 Pixel breit und 48 Pixel hoch, so ergibt
  102. sich ein Bitmapgröße von 512*384 Pixeln (32*16=512 und 48*8=384). MAKEFONT.EXE
  103. scannt nun diese Fontgrafik und erzeugt einen OPTIX-Schriftsatz mit dem
  104. übergebenen Bitmapnamen, jedoch mit der Extension '.FNT' (aus 'OPTFONT1.BMP'
  105. wird also 'OPTFONT1.FNT').
  106.  
  107. --------------------------------------------------------------------
  108.  
  109. 4. SETUP.EXE (für 'LITE' und 'PRO')
  110. ====================================
  111.  
  112. Das Programm 'SETUP.EXE' ist zur Unterstützung der Anwendungsinstallation
  113. unter 'unkontrollierbaren Bedingungen' gedacht. Es kann also z.B.
  114. verwendet werden, um OPTIX-Software ggfls. bei einem CD- oder Disk-
  115. Kunden installieren zu helfen. Es prüft die wichtigsten Umgebungsbedingungen
  116. für OPTIX 2.8 ab und liefert entsprechende EXITXODEs, mit denen man dann
  117. in einer Batch, bzw. im VGA-Mode 320x200 ggfls. weiterarbeiten kann:
  118.  
  119.   Das SETUP wurde durch <ESC> abgebrochen                                255
  120.   Fataler Fehler (Falsche DOS-Version, falscher Grafikadapter etc)     250
  121.   [MENU]-Eintrag in CONFIG.SYS gefunden (keine EMM-Anpassung möglich)     230
  122.   Datei - Lese/Schreibfehler                                             220
  123.   Falscher, bereits installierter OPTIX-2.6-Grafiktreiber (OPTDRVxx.COM) 200
  124.   **************************************************************************
  125.   Kein VESA-Bios (VESA-Grafikstandard) und kein Soundblaster gefunden     30
  126.   Alles problemlos installiert, aber keinen Soundblaster gefunden         20
  127.   Kein VESA-Bios (VESA-Grafikstandard) gefunden                              10
  128.   Neustart des Systems nach CONFIG.SYS-Änderung wird verlangt              1
  129.   Alles problemlos installiert                                               0
  130.  
  131.  
  132. --------------------------------------------------------------------
  133.  
  134. 5.   Änderungen 2.6 - 2.8
  135. ===============================
  136.  
  137. Das Entwicklungssystem benutzt ca. 80 KByte des EMS zum Auslagern von
  138. Programmteilen. Wenn EMS knapp ist, kann dieses mit dem Parameter /NOEMS
  139. verhindert werden. Daraus kann eine kurze Zeitverzögerung beim Starten des
  140. Editors oder Compilers resultieren.
  141.  
  142. --------------------------------------------
  143.  
  144.      In den Vollversionen gibt es jetzt nur
  145.      noch einen RunOnly-Interpreter und einen
  146.      EXE-Maker für alle Auflösungen.
  147.  
  148. ---------
  149.  
  150. Die Benutzeroberfläche wurde SAA-typisch überarbeitet, aus dem Editor kommt
  151. man per F10 in die Kopfzeile, bzw. per <ALT>-<HotKey> in das entsprechende
  152. Menü.
  153.  
  154. --------
  155.  
  156. Die Funktion "Datei" im Menupunkt "Info" liefert Informationen über eine
  157. Reihe verschiedenster Dateiformate (die jedoch nicht alle von OPTIX
  158. unterstützt werden); einige dieser Informationen sind bisher nur in
  159. Kurzform verfügbar.
  160.  
  161. --------
  162.  
  163. Das Fileattribut "Readonly" (Standard-Attribut bei CD-Quelle) hat keinen
  164. Einfluß mehr beim Lesen eines Bildes oder einer Datei.
  165.  
  166. --------
  167.  
  168. XMS/EMS: OPTIX wurde auch unter dem Speichermanager QEMM386 (Version 6.02)
  169. getestet und läuft darunter zuverlässig (sowohl XMS als auch EMS).
  170.  
  171. ---------
  172.  
  173. Tastaturfunktionen des Editors während einer Animation sind geändert:
  174. Scroll-Lock (Rollen) schaltet den Trace-Modus an oder aus.
  175. F3 und F4 entfallen damit.
  176. F5 Anzeigen der Palette entfällt.
  177. Abspeichern des aktuellen Screens als CANVAS.TGA mit der Taste PRINTSCREEN.
  178.  
  179. -----------
  180.  
  181. Völlig neu sind die Algorithmen für:
  182.  
  183.    LINE      LINETO      RESTORELINE   RESTORELINETO
  184.    VLINE     BRUSHLINE   CIRCLE        DISK
  185.  
  186. Diese Prozeduren erlauben jetzt auch die Angabe negativer Koordinaten.
  187. Z.B. kann der Mittelpunkt einer Disk nun auch außerhalb des Bildschirms
  188. definiert werden. Die Geschwindigkeit ist (insbesondere bei CIRCLE)
  189. um mehr als den Faktor 4 gesteigert worden.
  190.  
  191. -----------
  192.  
  193. Als neues Bildformat wird jetzt auch GIF in 4 Bit und 8 Bit Farbauflösung
  194. gelesen (interleaved/noninterleaved Modus). GIF wurde aus Kompatibilitätsgründen
  195. eingeführt, da dieses Format sehr weit verbreitet ist. Während der Ausführung
  196. einer Animation ist GIF jedoch nicht empfehlenswert, da durch das komplizierte
  197. Dekompressionsverfahren das Lesen wesentlich länger dauert als z.B. bei einem
  198. komprimierten TGA-Bild.
  199.  
  200. Windows-BMP in 256 Farben werden auch in der RLE-komprimierten Form gelesen.
  201. (Dateiendung RLE, oft aber auch DIB oder BMP).
  202.  
  203. ---------------------------------
  204.  
  205. EDITLINE funktioniert jetzt zuverlässig mit proportionalen Fonts.
  206. Die Transparenz des Fonts sollte vorher eingeschaltet werden (dadurch wird
  207. schneller geschrieben), da der Hintergrund (ähnlich CBOX) automatisch mit der
  208. Texthintergrundfarbe restauriert wird, wobei die proportionale Länge des
  209. Textes berücksichtigt wird. Neu ist der Modus 2, der nur die Ziffern 0..9
  210. sowie einen Dezimalpunkt zur Eingabe zulässt.
  211.  
  212.  
  213. PRINT(STR(12*4,3))  /  A$:=A$+CHR(65)
  214. STR und CHR sind jetzt auch als Funktion einsetzbar.
  215.  
  216.  
  217. READFILM('Name.MVI')
  218. Readfilm liest keine AVI's mehr (s. neu: INITAVI/STARTAVI)
  219.  
  220.  
  221.  
  222. LOADWIN(30..39)
  223. Laden aus dem Winpuffer mit Skalierung.
  224. 30 ist Originalgröße (0% verkleinert), 31 ist um 10% verkleinert bis
  225. 39, das um 90% verkleinert ist (das Bild hat dann 10% des Originales).
  226.  
  227. LOADWIN(16..19)   (neu)
  228. Laden aus dem Winpuffer, wobei die vorab mit KEYCOL() definierte Keycolor
  229. berücksichtigt wird. Dabei ist es unerheblich, ob KEY an- oder ausgeschaltet
  230. wurde. Die Zeitangabe hat keinen Einfluss. Folgende Modi stehen
  231. zur Verfügung:
  232.  
  233. LOADWIN(16) schreibt alle Flächen, die nicht der Keycolor entsprechen,
  234.             mit der Vordergrundfarbe.
  235. LOADWIN(17) schreibt alle Flächen, die nicht der Keycolor entsprechen,
  236.             mit der Vordergrundfarbe, wobei jedoch nur jeder zweite
  237.             Pixel gezeichnet wird.
  238. LOADWIN(18) schreibt alle Flächen, die nicht der Keycolor entsprechen,
  239.             mit dem Bildinhalt des Winpuffers; jeder zweite Pixel
  240.             wird mit der Vordergrundfarbe gezeichnet.
  241. LOADWIN(19) schreibt alle Flächen, die der Keycolor  e n t s p r e c h e n ,
  242.             mit der SETCOLOR-Vordergrundfarbe -> Inversmaskierung
  243.  
  244.  
  245. SHOWPALETTE(X0, Y0, Size)
  246. X0,Y0 gibt die linke obere Ecke an.
  247. Werden Koordinaten angegeben, die außerhalb des Screens liegen, wird die
  248. Palette automatisch zentriert.
  249. Size = 1 stellt in Originalgröße, Size = 2 in halber Größe dar. Die
  250. automatische Pause ist weggefallen; eine Pause muß nach dem Aufruf von
  251. SHOWPALETTE selbst eingefügt werden. Somit ist es möglich, die Palette
  252. als Werkzeug (z.B. in einem Zeichenprogramm) zu benutzen. Die Palette
  253. ist deshalb jetzt immer verfügbar, auch im Run-only-Interpreter.
  254.  
  255.  
  256. PLATEAU(COL1, COL2)
  257. Die Farben für links oben und rechts unten müssen explizit angegeben werden.
  258. Die Predefinition von SETCOLOR und SETBCOLOR wird dadurch überflüssig.
  259.  
  260.  
  261. EXECUTE('Name .COM/.EXE','Paramstr')
  262. funktioniert jetzt zuverlässig soweit das DOS-RAM reicht (OPTIX
  263. bleibt als Aufrufer resident). Es kann jetzt dem aufgerufenen Prozess
  264. ein Parameterstring übergeben werden.
  265.  
  266.  
  267. COPYPROG  entfällt, statt dessen gibt es nun:
  268. COPYFILE(SRC, DST, MODUS, ERROR)
  269. Kopiert die Datei SRC nach DST. Bei Modus 0 wird überprüft, ob eine Datei
  270. des Namens DST schon vorhanden ist und liefert dann den Fehlercode 5 zurück.
  271. Bei Modus 1 wird ohne diese Abfrage kopiert, d.h. eine schon vorhandene Datei
  272. wird überschrieben. ERROR liefert den DOS-Fehlercode zurück. Bei Auftreten
  273. eines Fehlers wird die Animation nicht abgebrochen. SRC muß immer einen
  274. vollständigen Dateinamen bzw. Pfad enthalten. DST enthält den Namen des
  275. Zielverzeichnisses und/oder einen neuen Namen für die Datei. Eine Angabe
  276. von PICPATH hat keinen Einfluss.
  277. Beispiele:
  278.  
  279. C:\DOS\AA.TXT  AA.WRI            Ziel:   C:\DOS\AA.WRI
  280. C:\DOS\AA.TXT  D:\TEXTE\                 D:\TEXTE\AA.TXT
  281. C:\DOS\AA.TXT  D:\TEXTE\BB.TXT           D:\TEXTE\BB.TXT
  282. C:\DOS\AA.TXT  D:\TEXTE\.WRI             D:\TEXTE\AA.WRI
  283. C:\DOS\AA.TXT  D:\TEXTE\BB               D:\TEXTE\BB.TXT
  284.  
  285.  
  286. GOTOENV ist gestrichen.
  287. Neu ist die Funktion ENVCOUNT, die die Anzahl aller Environment-
  288. Einträge zurückliefert. GETENV() ist auch Funktion einsetzbar.
  289.  
  290.  
  291. Negative Vorzeichen von Konstanten werden jetzt richtig erkannt und
  292. behandelt, z.T. müssen dann Klammern gesetzt werden.
  293. Beispiele:
  294. A := -3
  295. B := C*(-5)
  296.  
  297. A := -B  ist nicht erlaubt.  (wenn notwendig, schreibe A := 0-B)
  298.  
  299.  
  300.  
  301. Bei LOADPIC(9) wird der Papierblatteffekt mit der Hintergrundfarbe 
  302. 'SETBCOLOR' ausgeführt.
  303.  
  304.  
  305.  
  306. =====================================================
  307. =====================================================
  308.  
  309. 6.   Neue Befehle und Funktionen in OPTIX 2.8
  310.      (spezielle OPTIX-'PRO'-Befehle sind als
  311.      solche gekennzeichnet.)
  312.  
  313. =====================================================
  314. =====================================================
  315.  
  316.  
  317.   GETENV('STR', VAR$)       Befehl
  318.   VAR$:=GETENV('EnvString') Funktion
  319.  
  320.   Liest  den Inhalt der DOS-Environ-
  321.   mentvariablen 'STR' in die String-
  322.   Variable VAR$.
  323.  
  324.  
  325.  
  326.   CLOSEWIN(WIN)
  327.  
  328.   Schließt  den WIN-Puffer 'WIN'
  329.   ('LITE' = 1, 'PRO'= 1 oder 2)
  330.   und gibt den von ihm belegten
  331.   Speicher wieder frei.
  332.  
  333.  
  334.  
  335.   COPYFILE(SRC,DST,MODUS,ERROR)
  336.  
  337.   Kopiert die Datei  SRC nach DST.  Bei Modus 0 wird
  338.   überprüft, ob eine Datei des Namens DST schon vor-
  339.   handen ist und  liefert dann den  Fehlercode 5 zu-
  340.   rück. Bei Modus 1 wird ohne diese Abfrage kopiert,
  341.   d.h.  eine schon vorhandene Datei wird überschrie-
  342.   ben.  ERROR liefert den DOS-Fehlercode zurück. Bei
  343.   Auftreten eines  Fehlers wird die  Animation nicht
  344.   abgebrochen. SRC muß immer einen vollständigen Da-
  345.   teinamen bzw. Pfad enthalten.  DST enthält den Na-
  346.   men des  Zielverzeichnisses  und/oder  einen neuen
  347.   Namen für die Datei.  Eine Angabe von  PICPATH hat
  348.   keinen Einfluss(!).
  349.  
  350.  
  351.  
  352.   PSOUND('Name.WAV/VOC/SND/BYT')
  353.  
  354.   Ermöglicht  ein beliebig langes, kontinuierliches
  355.   Abspielen  einer Sounddatei von der CD oder Fest-
  356.   platte auch während  der  Animation - ohne  dabei
  357.   das XMS zu belasten.  Dabei wird  im Multitasking
  358.   spätestens ca.  alle 1,45  Sekunden (=eine Block-
  359.   'Füllung' bei 22KHz) der nächste Soundblock auto-
  360.   matisch nachgeladen (PSOUND = 'Poll'SOUND). Dabei
  361.   ist darauf zu achten, daß  kein einzelner  Befehl
  362.   (z.B. LOADPIC m.Verzögerung) länger  als ca. eine
  363.   Sekunde  beschäftigt  ist, da sonst  das  Polling
  364.   'abreißt'.
  365.  
  366.   Der SYNC-Befehl z.B.unterbricht das Polling (wenn
  367.   BREAK(on)), wenn  die SYNC-Zeit  über die besagte
  368.   Sekundendauer  hinausgeht. Um  trotzdem SYNC ein-
  369.   setzen zu können, empfiehlt  es sich,  die SYNC's
  370.   zu stückeln, um zwischen den SYNC's das Nachladen
  371.   zu ermöglichen:
  372.  
  373.   Beispiel:  PSOUND('Sounddat.Wav')
  374.              SYNC(2000)
  375.              SYNC(3000)
  376.              SYNC(4000)
  377.              ... Fortsetzung nach vier Sekunden
  378.                  nach PSOUND-Start
  379.  
  380.  
  381.  
  382.   SOUNDLOOP(ON|OFF)
  383.  
  384.   SOUNDLOOP(ON) wiederholt einen mit
  385.   STARTSOUND  gestarteten  Parallel-
  386.   sound  in  endloser  Schleife, bis
  387.   entweder  mit  SOUNDLOOP(OFF)  die
  388.   Schleife abgebrochen oder die Wie-
  389.   dergabe mit STOPSOUND beendet wird.
  390.  
  391.  
  392.  
  393.  
  394.   CDCLOSE
  395.  
  396.   Schließt bei CD-Laufwerken mit
  397.   Motor die Laufwerksschublade.
  398.  
  399.  
  400.  
  401.  
  402.   CDEJECT
  403.  
  404.   Öffnet bei CD-Laufwerken mit
  405.   Motor die Laufwerksschublade.
  406.  
  407.  
  408.  
  409.  
  410.   CDLOCK(ON|OFF)
  411.  
  412.   Verriegelt  bzw.  entriegelt bei CD-Lauf-
  413.   werken  mit Motor die Schublade. Eine mit
  414.   CDLOCK(1) verriegelte Schublade  kann mit
  415.   dem Knopf an der Vorderseite des CD-Lauf-
  416.   werks nicht mehr geöffnet werden.
  417.  
  418.  
  419.  
  420.  
  421.   CDSEEK(TRACK,OFFSET)
  422.  
  423.   Sucht auf der CD den 'TRACK' plus  dem 'OFFSET'
  424.   (in Millisekunden vom Start des Track, negative
  425.   Werte sind erlaubt) und fährt den Laserkopf des
  426.   Laufwerkes an die entsprechende Stelle. Ein an-
  427.   schließender CDSTART-Befehl kann die Wiedergabe
  428.   des Tracks ohne weitere Suchvorgänge beginnen.
  429.  
  430.  
  431.  
  432.  
  433.   CDSTART(TRACK,OFFSET,ZEIT)
  434.  
  435.   Spielt den angegebenen 'TRACK' ab dem 'OFFSET'
  436.   (in Millisekunden vom Start des Tracks,  nega-
  437.   tive Werte sind erlaubt). Es werden 'Zeit'
  438.   Millisekunden gespielt.
  439.  
  440.  
  441.  
  442.  
  443.   CDSTOP
  444.  
  445.   Unterbricht die Wiedergabe
  446.   des laufenden Audiotracks.
  447.   Eine  Fortsetzung  ist mit
  448.   CDCONT möglich.
  449.  
  450.  
  451.  
  452.  
  453.   CDCONT
  454.  
  455.   Setzt die  Wiedergabe  eines per
  456.   CDSTOP angehaltenen Tracks fort.
  457.  
  458.  
  459.  
  460.  
  461.   CDVOL(VOL)
  462.  
  463.   Steuert  die Lautstärke des
  464.   CD-Ausganges. VOL hat einen
  465.   Wertebereich von 0..255.
  466.  
  467.  
  468.  
  469.  
  470.   CDINIT
  471.  
  472.   Initialisiert das CD-Laufwerk, wobei die
  473.   Track-Informationen  der  eingelegten CD
  474.   gelesen werden. Nach jedem Wechsel einer
  475.   CD muß CDINIT aufgerufen werden.
  476.  
  477.  
  478.  
  479.  
  480.   CDSYNC(ZEIT)
  481.  
  482.   Hält die Animation an, bis 'ZEIT' Milli-
  483.   sekunden nach Start des Tracks vergangen
  484.   sind.
  485.  
  486.  
  487.  
  488.  
  489.   CDDEVICE(DRIVE)                  (nur 'PRO')
  490.  
  491.   Mit CDDEVICE wird bei mehreren installierten
  492.   CD-Laufwerken das  aktive  (d.h. mit den für
  493.   die CD-Steuerung vorgesehenen Befehlen ange-
  494.   sprochene)  Laufwerk festgelegt.  OPTIX ver-
  495.   waltet bis  zu 4 verschiedene  CD-Laufwerke.
  496.  
  497.  
  498.  
  499.  
  500.   CDINFO(TRACK,MINUTE,SEKUNDE)
  501.  
  502.   Liefert in den Variablen 'TRACK', 'MINUTE'
  503.   und  'SEKUNDE' den  aktuellen Status einer
  504.   laufenden CD-Wiedergabe zurück.
  505.  
  506.  
  507.  
  508.  
  509.   CDTRACKLEN(TRACK,ZEIT)
  510.  
  511.   Liefert in der Variablen 'ZEIT' die
  512.   Länge des Tracks 'TRACK' (in Milli-
  513.   sekunden) zurück.
  514.  
  515.  
  516.  
  517.  
  518.   CLOSEFONT(FONT)
  519.  
  520.   Gibt den vom Font der Nummer 'FONT'
  521.   belegten Speicherplatz wieder frei.
  522.   Weitere Zugriffe  auf  diesen  Font
  523.   sind dann bis zum nächsten READFONT
  524.   nicht mehr erlaubt.
  525.  
  526.  
  527.  
  528.  
  529.   EXITCODE(EXCDE)                (nur 'PRO')
  530.  
  531.   Übergibt den EXITCODE 'EXCDE' beim Beenden
  532.   der Animation an DOS. Der nach dem Beenden
  533.   einer Animation aktuelle Exitcode  wird im
  534.   OPTIX-Infofenster angezeigt.
  535.  
  536.  
  537.  
  538.  
  539.   VRECT(X0,Y0,X1,Y1)
  540.  
  541.   Zeichnet ein virtuelles (mit dem Hinter-
  542.   grund per XOR'255' verknüpftes) Rechteck 
  543.   auf den Eckkoordinaten X0,Y0 und X1,Y1.
  544.  
  545.  
  546.  
  547.  
  548.   READWIN('Name.BMP/PCX/TGA/GIF')
  549.  
  550.   Hat prinzipiell die gleiche Funktion wie
  551.   READPIC (siehe dieses),  jedoch wird das
  552.   Bild grundsätzlich in den aktuellen WIN-
  553.   Puffer geladen (auch bei Bildern mit der
  554.   exakten Größe des Bildschirmes).
  555.  
  556.  
  557.  
  558.  
  559.   INITAVI('Name.AVI')
  560.  
  561.   Öffnet die  Videodatei 'Name.AVI'.  Es
  562.   werden von OPTIX-'LITE' unkomprimierte
  563.   und RLE-komprimierte 256-Farben- AVI's
  564.   (in 'PRO' auch MSVC=Microsoft Video 1)
  565.   gelesen. Das AVI darf insgesamt (Summe
  566.   aller  Bild- und  Sound-Blöcke)  nicht
  567.   mehr  als  6400 Interleave-Datenblöcke
  568.   enthalten. (Bei MSVC  möglichst 3  bis
  569.   4 KeyFrames und auch ca.3 bis 4 Sound-
  570.   blöcke pro Sekunde einhalten).
  571.  
  572.  
  573.  
  574.  
  575.   STARTAVI(X0,Y0,VID,AUD,SIZE,SKIP,STOP,REST)
  576.  
  577.   Startet die Wiedergabe eines mit INITAVI geöffneten
  578.   Videos auf den Koordinaten X0, Y0.  Mit VID und AUD
  579.   kann die Video  und Audiowiedergabe getrennt einge-
  580.   schaltet werden. Size = 1 verdoppelt die Bildgröße.
  581.   Mit  SKIP = 1 werden  Frames übersprungen,  um eine
  582.   Synchronizität zum Sound zu gewährleisten. STOP = 1
  583.   elaubt einen  Abbruch des Videos durch Tastendruck.
  584.   REST =1 restauriert den Bildschirm nach dem letzten
  585.   Bild aus dem Hintergrundpuffer.
  586.  
  587.  
  588.  
  589.  
  590.   CLOSEAVI
  591.  
  592.   Schließt die zuletzt geöffnete AVI-Datei
  593.   und gibt den dafür reservierten Speicher
  594.   wieder frei.
  595.  
  596.  
  597.  
  598.  
  599.   WINBUF(BUF)                  (nur 'PRO')
  600.  
  601.   Definiert die Nummer des  Window-Puffers
  602.   (BUF = 1 oder 2),  auf den  anschließend
  603.   zugegriffen werden kann.  Vorsicht,  ein
  604.   Lesezugriff auf einen leeren WIN-Puffer,
  605.   z.B. mit LOADWIN, hat immer einen Fehler
  606.   zur Folge !
  607.  
  608.  
  609.  
  610.  
  611.   DEFMOUSE(CURS)
  612.  
  613.   Definiert ein neues Maucursor-Outfit,
  614.   wobei zwischen folgenden  Zeigern ge-
  615.   wählt werden kann:
  616.  
  617.           0 : Standard
  618.           1 : Pfeil
  619.           2 : Kreuz
  620.           3 : Doppelkreuz
  621.  
  622.           Doppelpfeile:
  623.           4 : Horizontal
  624.           5 : Vertikal
  625.           6 : LO/RU
  626.           7 : RO/LU
  627.  
  628.           8 : Hummel
  629.  
  630.           9 : Block 1
  631.           10: Block 2
  632.           11: Block 3
  633.           12: Block 4
  634.  
  635.  
  636.  
  637.  
  638.   INITFLI('Name.FLI/FLC')
  639.  
  640.   Öffnet das FLI/FLC-Movie 'Name'.
  641.   Es werden FLI-Movies  sowie FLC-
  642.   Movies bis  zu  einer  Größe von
  643.   320x200 Pixeln verarbeitet.
  644.  
  645.  
  646.  
  647.  
  648.   STARTFLI(X0,Y0,Size,Stop,Rest)
  649.  
  650.   Beginnt die Wiedergabe  eines  mit INITFLI
  651.   geöffneten FLI/FLC-Movies. Die Koordinaten
  652.   der linken oberen Ecke  werden  mit X0, Y0
  653.   festgelegt. Size = 1 verdoppelt die Größe,
  654.   Stop = 1 erlaubt ein Abbrechen per Tasten-
  655.   druck, Rest = 1 restauriert nach dem letz-
  656.   ten  Bild  den Bildschirm  aus dem Hinter-
  657.   grundspeicher.
  658.  
  659.  
  660.  
  661.  
  662.   CLOSEFLI
  663.  
  664.   Schließt das zuletzt geöffnete FLI/FLC-
  665.   Movie und  gibt den  dafür reservierten
  666.   Speicher wieder frei.
  667.  
  668.  
  669.  
  670.  
  671.   READFILES(Path,Suffix)
  672.  
  673.   Liest die Namen  der im  angegebenen 'Path' (vollständige Be-
  674.   zeichnung) befindlichen  Dateien (max. 650) alphabetisch sor-
  675.   tiert ab Feldindex 1 in das  zur Zeit geöffnete  Textfeld (s. 
  676.   DEFAS/NEW) ein.  Dabei werden nur die Dateitypen mit  dem an-
  677.   gegebenen 'Suffix' berücksichtigt. Die Namen  aller in diesem 
  678.   Verzeichnis befindlichen Unterverzeichnisse  sowie  der z.Zt. 
  679.   verfügbaren  Laufwerke  werden  an das Listenende  angehängt. 
  680.   Im Gegensatz  zu  den  Dateinamen  werden diese  mit  eckigen  
  681.   Klammern versehen (z.B. [SUBDIR]  bzw. [C:]).  Existiert eine 
  682.   höhere  Hierarchie-Ebene  (z.B. C:\DOS\..),  so wird die ent-
  683.   sprechende  Sprungmarkierung  der Liste  in eckigen  Klammern 
  684.   ([..]) vorangestellt.
  685.  
  686.   Als 'Suffix' muß ein  DOS-Dateisuchbegriff  angegeben  werden 
  687.   (z.B. *.*, *.PCX, *.P?? etc.).  Mehrfachangaben  dürfen keine 
  688.   Blanks enthalten und müssen durch Semikolons  getrennt werden 
  689.   (z.B.: '*.PCX;T*.TGA;*.BMP')
  690.   
  691.   Dateinamen, -Datum, -Uhrzeit und -Länge werden (jeweils durch 
  692.   Blank  getrennt)  formatiert  in die  Zeile  eingetragen. Das  
  693.   Textfeld sollte deshalb eine Mindesbreite von mind.36 Zeichen 
  694.   haben, sofern alle Informationen ausgewertet werden sollen.
  695.   
  696.   Die Anzahl der tatsächlich durch READFILES im Feld  eingetra-
  697.   genen Zeilen ist danach i.d.Systemvariablen LINCTR verfügbar.
  698.  
  699.   Beispiel:    DEFAS(Files,36,200)  hier: 36 Zeichen/200 Zeilen
  700.                ..
  701.                NEW(Files)
  702.                READFILES('C:\SUBDIR','*.TXT;*.EXE;*.COM')
  703.                FOR I:= 1 TO LINCTR DO
  704.                ..
  705.  
  706.  
  707.  
  708.  
  709.   SETFMVOL(VOL)
  710.  
  711.   Steuert  die  Lautstärke des
  712.   FM-Kanals des Soundadapters.
  713.   Wertebereich ist 0 bis 15.
  714.  
  715.  
  716.  
  717.  
  718.   SETCDVOL(VOL)
  719.  
  720.   Steuert  die  Lautstärke des
  721.   CD-Kanals des Soundadapters.
  722.   Wertebereich ist 0 bis 15.
  723.  
  724.  
  725.  
  726.  
  727.   SETMSTVOL(VOL)
  728.  
  729.   Steuert die Summenlautstärke
  730.   des Soundadapters.  Wertebe-
  731.   reich ist 0 bis 15.
  732.  
  733.  
  734.  
  735.  
  736.   EXIST('Pfad\Datei', VAR)
  737.  
  738.   Liefert TRUE in der Variablen 'VAR'
  739.   zurück,  wenn  der  angebenene Pfad
  740.   oder  die Datei auf dem Datenträger
  741.   gefunden wurde.
  742.  
  743.  
  744.  
  745.  
  746.   COMINIT(COMX, INI)
  747.  
  748.   Initialisiert die serielle Schnittstelle
  749.   COMX (1..4)  mit dem Wert INI.  Die Bits
  750.   von INI haben folgende Bedeutung:
  751.  
  752.   Bit 0   0: 7 Bits         1: 8 Bits
  753.   Bit 1   muß immer 1 sein
  754.   Bit 2   0: 1 Stop-Bit     1: 2 Stop-Bits
  755.   Bit 3   0: keine Parität  1: Parität an
  756.   Bit 4   0: ungerade       1: gerade Par.
  757.  
  758.   Bit 5 bis 7     000   =  110  Baud
  759.    Baudrate:      001   =  150  Baud
  760.                   010   =  300  Baud
  761.                   011   =  600  Baud
  762.                   100   = 1200  Baud
  763.                   101   = 2400  Baud
  764.                   110   = 4800  Baud
  765.                   111   = 9600  Baud
  766.  
  767.  
  768.  
  769.  
  770.   SENDBYTE(COMX, VAR)
  771.  
  772.   Sendet das  Byte  VAR über die serielle
  773.   Schnittstelle COMX.  Diese muß  vor Be-
  774.   ginn  der Übertragung  mit COMINIT ini-
  775.   tialisiert werden. Vor dem Senden eines
  776.   Bytes muß mit  GETLSTATUS  festgestellt
  777.   werden, ob der Sendepuffer der Schnitt-
  778.   stelle leer ist.
  779.  
  780.  
  781.  
  782.  
  783.   RECEIVEBYTE(COMX, VAR)
  784.  
  785.   Liest ein  von der seriellen Schnittstelle
  786.   COMX empfangenes Byte in die Variable VAR.
  787.   Zuvor muß mit GETLSTATUS festgestellt wer-
  788.   den, ob ein Byte empfangen wurde.
  789.  
  790.  
  791.  
  792.  
  793.   LPRINT(StringVar$)
  794.   LPRINT('Text')
  795.   LPRINT('Text'+StringVar$)
  796.   LPRINT(CHR(NumVar)+STR(NumVar,x)) etc.
  797.  
  798.   Gibt auf der  parallelen Schnittstelle LPT1 (PRN)
  799.   den String STR$ aus. Ist kein Drucker angeschlos-
  800.   sen oder betriebsbereit, wird eine  Fehlermeldung
  801.   erzeugt.  Der Status  des Druckers  läßt sich mit
  802.   PRNSTATUS feststellen.
  803.  
  804.  
  805.  
  806.   LPRINTLN('Text')
  807.   LPRINTLN(Var$)
  808.  
  809.   Gibt den angegeben  Text als Zeile auf
  810.   LPT1  aus. Im Gegensatz zu LPRINT wird
  811.   als Abschluß  automatisch ein CHR(10)+
  812.   CHR(10)  - 'Carriage Return' und 'Line
  813.   Feed' - ausgegeben. (Sonst wie LPRINT)
  814.  
  815.  
  816.  
  817.  
  818.   SETDBLINE(FELD, STR$)              (nur 'PRO')
  819.  
  820.   Überschreibt das Feld 'FELD' des aktuell gele-
  821.   senen Datensatzes  einer geöffneten  Datenbank
  822.   mit  dem  String STR$.  Mit STR$ können sowohl
  823.   numerische als auch  String-Felder überschrie-
  824.   ben werden.Es ist streng darauf zu achten, daß
  825.   bei numerischen Feldern der  übergebene String
  826.   mit der Felddeklaration (Vorkommastellen,Nach-
  827.   kommastellen)  übereinstimmt,  da sonst dieses
  828.   Feld nicht mehr fehlerfrei gelesen werden kann.
  829.  
  830.  
  831.  
  832.  
  833.   WRITEDBENTRY(Entry)            (nur 'PRO')
  834.  
  835.   Schreibt den  gelesenen  Datensatz (ggfls.
  836.   nach  Änderung  durch  SETDBLINE)  in  die
  837.   geöffnete Datenbank zurück. Dabei wird der 
  838.   Datensatz 'Entry' in  der  Datenbank über-
  839.   schrieben. Ist 'Entry' größer als d.Anzahl 
  840.   vorhandener Datensätze, wird der Datensatz 
  841.   automatisch am Ende d.Datenbank angehängt.
  842.   Das  Datensatzattribut  des  geschriebenen 
  843.   Datensatzes wird auf 'ungelöscht' geändert
  844.  
  845.  
  846.  
  847.  
  848.   FULLSCREEN(on | off)
  849.  
  850.   Schaltet aus  dem aktuellen SVGA-Modus in
  851.   den  Standard-VGA-Modus  320x200x256 (on)
  852.   und wieder zurück (off). Ist speziell für
  853.   die  automatische  Pixelverdoppelung  bei
  854.   FLI- und AVI-Wiedergabe  gedacht, deshalb
  855.   Achtung: die OPTIX-interne  Grafikverwal-
  856.   tung bleibt im SVGA-Modus(z.B. XMAX,YMAX)
  857.  
  858.   Beispiel:
  859.               INITFLI('xxx.FLI')
  860.               FULLSCREEN(on)
  861.                 SETALLPAL
  862.                 STARTFLI(...
  863.               FULLSCREEN(off)
  864.  
  865.  
  866.  
  867.  
  868.   SETMSTATUS(COMX, STATUS)
  869.  
  870.   Setzt die Ausgänge der  seriellen Schnittstelle
  871.   COMX auf den Wert 'STATUS', wobei die Bits fol-
  872.   gende Bedeutung haben:
  873.  
  874.   Bit 0   DTR
  875.   Bit 1   RTS
  876.   Bit 2   N.F.     (OUT 1)
  877.   Bit 3   N.F.     (OUT 2)
  878.   Bit 4   Schleife
  879.   Bit 5   N.F.
  880.   Bit 6   N.F.
  881.   Bit 7   N.F.     N.F. = Bit hat keine Funktion
  882.  
  883.  
  884.  
  885.  
  886.   GETLSTATUS(COMX, STATUS)
  887.  
  888.   Liest den Linestatus der seriellen Schnittstelle
  889.   COMX und liefert ihn in der Variablen STATUS zu-
  890.   rück. Die Bits von STATUS haben folgende  Bedeu-
  891.   tung:
  892.  
  893.   Bit 0   Daten bereit
  894.   Bit 1   Überlauffehler
  895.   Bit 2   Paritätsfehler
  896.   Bit 3   Rahmenfehler
  897.   Bit 4   Datenwortunterbrechung
  898.   Bit 5   Senderegister leer
  899.   Bit 6   Sendeschieberegister leer
  900.   Bit 7   immer 0
  901.  
  902.  
  903.  
  904.  
  905.   GETMSTATUS(COMX, VAR)
  906.  
  907.   Liest den Modemstatus der seriellen
  908.   Schnittstelle  COMX und liefert ihn
  909.   in der Variablen STATUS zurück. Die
  910.   Bits  von  STATUS   haben  folgende
  911.   Bedeutung:
  912.  
  913.   Bit 0   Delta  CTS
  914.   Bit 1   Delta  DSR
  915.   Bit 2   Flanke RI
  916.   Bit 3   Delta  RLSD
  917.   Bit 4   CTS
  918.   Bit 5   DSR
  919.   Bit 6   RI
  920.   Bit 7   RLSD
  921.  
  922.  
  923.  
  924.  
  925.  
  926.  
  927.   PARAMSTR(NUM)   (String-Funktion nur in 'PRO')
  928.  
  929.   Liefert  den an  OPTIX-'PRO' übergebenen  DOS-
  930.   Parameterstring   mit  der  Nummer  'NUM'  als
  931.   String  zurück.  Leerzeichen  und  Tabs werden
  932.   als Trennung zwischen zwei Parametern betrach-
  933.   tet.
  934.  
  935.  
  936.  
  937.   AVIX, AVIY
  938.  
  939.   Enthalten die Breite und Höhe des zuletzt durch
  940.   INITAVI geöffneten AVI-Videos.
  941.  
  942.  
  943.  
  944.   EMSSIZE                    (Funktion)
  945.  
  946.   Liefert die  aktuelle  Größe des noch
  947.   freien EMS-Speichers in KByte zurück.
  948.  
  949.  
  950.  
  951.  
  952.   XMSSIZE                                (Funktion)
  953.  
  954.   Liefert  die Größe des größten, zusammenhängenden
  955.   XMS-Speicherblocks in KByte zurück.Der erweiterte
  956.   Speicher (XMS als auch EMS) kann durch wechselnde
  957.   Belegung fragmentiert sein,  so daß trotz ausrei-
  958.   chender  Gesamtspeichermenge kein  XMS-Block groß
  959.   genug ist,  um einen Sound bestimmter Länge voll-
  960.   ständig laden zu können.
  961.  
  962.  
  963.  
  964.  
  965.   MEMSIZE                     (Funktion)
  966.  
  967.   Liefert die  Größe des  OPTIX noch zur
  968.   Verfügung stehenden  DOS-Speichers zu-
  969.   rück. In diesem Speicherbereich werden
  970.   z.B. die Feldvariablen angelegt.
  971.  
  972.  
  973.  
  974.  
  975.   ERRORLEVEL
  976.  
  977.   Liefert nach EXECUTE-Aufruf ggfls.
  978.   den Exitcode des aufgerufenen Pro-
  979.   zesses zurück.
  980.  
  981.  
  982.  
  983.  
  984.   CDDRIVES  
  985.  
  986.   Liefert die Anzahl der verfügbaren
  987.   CD-Laufwerke zurück.
  988.  
  989.  
  990.  
  991.  
  992.   CDAUDIO                     (Funktion)
  993.  
  994.   Diese  Funktion  liefert  True zurück,
  995.   wenn eine CD einen oder mehrere spiel-
  996.   bare (Audio-) Tracks enthält. Der Test
  997.   muß zuvor durch  den Befehl CDINIT er-
  998.   folgen.
  999.  
  1000.  
  1001.  
  1002.  
  1003.   STARTTRACK        (Funktion)
  1004.  
  1005.   Diese Funktion  liefert  die
  1006.   Nummer des ersten spielbaren
  1007.   (Audio-) Tracks einer CD.
  1008.  
  1009.  
  1010.  
  1011.  
  1012.   ENDTRACK           (Funktion)
  1013.  
  1014.   Diese  Funktion  liefert  die
  1015.   Nummer des letzten spielbaren
  1016.   (Audio-) Tracks einer CD.
  1017.  
  1018.  
  1019.  
  1020.  
  1021.   AMINUTE                    (Funktion)
  1022.  
  1023.   Diese  Funktion liefert den aktuellen
  1024.   Zeitpunkt  der laufenden CD,  bezogen
  1025.   auf den Anfang der CD, in Minuten zu-
  1026.   rück.  Zuvor  muß  CDINFO  aufgerufen
  1027.   werden.
  1028.  
  1029.  
  1030.  
  1031.  
  1032.   ASECOND                   (Funktion)
  1033.  
  1034.   Diese Funktion liefert den Sekunden-
  1035.   anteil des aktuellen Zeitpunktes der
  1036.   laufenden CD, bezogen auf den Anfang
  1037.   der CD,  zurück.  Zuvor  muß  CDINFO
  1038.   aufgerufen werden.
  1039.  
  1040.  
  1041.  
  1042.  
  1043.   VCOLOR          (Systemvariable)
  1044.  
  1045.   Liefert die aktuell eingestellte
  1046.   SETCOLOR-Vordergrundfarbe.
  1047.  
  1048.  
  1049.  
  1050.  
  1051.  
  1052.   BCOLOR          (Systemvariable)
  1053.  
  1054.   Liefert die aktuell eingestellte
  1055.   SETBCOLOR-Hintergrundfarbe.
  1056.  
  1057.  
  1058.  
  1059.  
  1060.  
  1061.   PARAMCOUNT        (Funktion nur in 'PRO')
  1062.  
  1063.   Liefert  die  Anzahl  der Kommandozeilen-
  1064.   Parameter zurück,  die dem Programm über-
  1065.   geben wurden. Leerzeichen und Tabs werden
  1066.   als Trennung zwischen zwei Parametern be-
  1067.   trachtet.
  1068.  
  1069.  
  1070.  
  1071.  
  1072.   ENVCOUNT         (Funktion)
  1073.  
  1074.   Liefert die Anzahl der DOS-
  1075.   Environmentvariablen.
  1076.  
  1077.  
  1078.  
  1079.  
  1080.   COMPORTS               (Funktion)
  1081.  
  1082.   Diese Funktion liefert die Anzahl
  1083.   der von  DOS gefundenen seriellen
  1084.   Schnittstellen zurück.
  1085.  
  1086.  
  1087.  
  1088.  
  1089.   PRNSTATUS                  (Funktion)
  1090.  
  1091.   Liefert den Status des Druckers LPT1.
  1092.   Die Bits beschreiben den Zustand fol-
  1093.   gender Steuerleitungen:
  1094.  
  1095.   Bit 0   N.F. (Bit hat keine Funktion)
  1096.   Bit 1   N.F.
  1097.   Bit 2   N.F.
  1098.   Bit 3   -Fehler
  1099.   Bit 4   Select
  1100.   Bit 5   kein Papier
  1101.   Bit 6   Acknowledge
  1102.   Bit 7   -Busy
  1103.  
  1104.   Ein betriebsbereiter Drucker liefert
  1105.   normalerweise eine 223 zurück.
  1106.