| --------------------------------------------------------------------
D I E B E N U T Z E R O B E R F L [ C H E C E U S - D E S K T O P V E R S I O N 2 . 0 -------------------------------------------------------------------- -------------------------------------------------------------------- Grafische Benutzeroberfl{che f}r den Amstrad/Schneider CPC-6128 RSX-Befehlserweiterung mit allen Elementen eines modernen Desktop- Systems: WINDOWS, MAUSPFEIL, BOXEN, ICONS, ALERT-WINDOWS, PULL- DOWN-MEN]S und vieles mehr. -------------------------------------------------------------------- -------------------------------------------------------------------- Version 1.0 geschrieben von J|rg Schwieder Version 2.0 geschrieben von J|rn Mika Pointermanager und PEC geschrieben von G}nter Radestock Nach CEUS }bersetzt von J|rn Mika M B - V E R S A N D , 1 9 9 2 -------------------------------------------------------------------- -------------------------------------------------------------------- B E D I E N U N G S A N L E I T U N G -------------------------------------------------------------------- ==================================================================== 1. Unterschiede von CEUS Desktop V2.0 zu V1.0 - Nutzung der zweiten 64KB-RAM f}r die Abspeicherung von Bildschirm- und sonstigen Massen-Daten - Abk}rzung f}r fast jeden Befehl - Massenweise neue oder verbesserte Befehle: - Freie Farbengebung f}r fast alle Objekte - Bessere Gestaltung der Fenster, auch mit Infoleiste - Fensterverschiebung - Besserer Pointer, leistungsstarke Pointerbefehle - Anklickboxen mit Text - Anklick-Icons, beliebige Gr|~e und Aussehen, auch mit Text - Bildschirmausschnitt als Anklickbereich definierbar - Boxen, Icons und Bereiche auch innerhalb der Fenster - Leistungsstarker Bildschirmsteuerungsbefehl 'CEUS', }bernimmt fast alle Aufgaben - Alertfenster mit beliebig viel Text und Anklickboxen - Pull-Down-Men}s, auch mit Men}leiste, mehrfach verschachtelt, mit Parameter-Men}punkte uvm. - Speicherkopierbefehle, auch f}r die zweite RAM-Bank 2. ]bersicht der Befehle a) Fenster-Befehle WINDOW.OPEN,<Nr>,<Xp1>,<Yp1>,<Xp2>,<Yp2> (,<Titeltxt> (,<Infotxt>)) WINDOW.CLOSE WINDOW.HIDE,<Nr> WINDOW.SHOW,<Nr> WINDOW.POP,<Nr> WINDOW.SET,<Nr>,<Neu XP>,<Neu YP> MEMORY,<Blockanz.> SHADOW.ON SHADOW.OFF WINDOW.PEN,<Rahmen>,<Titel>,<Info> b) Bildschirmsteuer-Befehle POINTER.ON POINTER.OFF POINTER.POS,<@xp>,<@yp> POINTER.FORM,<Adr.> POINTER.NEW CURSOR BOX,<Nr>,<Window>,<Xp>,<Yp>,<Text> (,<Pen-Linie>,<Pen-Hintergrund>, <Pen-Text>) ICON,<Nr>,<Window>,<Xp>,<Yp>,<Xl>,<Yl>,<Text>,<Grafik-Code> (,<Pen- Hintergrund>,<Pen-Text>) AREA,<Nr>,<Window>,<Xp>,<Yp>,<Xl>,<Yl> CLEAR (,<Pen>) ,<Nr> CLEAR.ALL CEUS,<@P1>,<@P2>,<@P3>,<@P4> ALERT,<Box 1>,...,<Box n>,<Text>,<@Boxnr.> ALERT.PEN,<Textpen>,<Textpaper> c) Pull-Down-Men}-Befehle MENUE.INIT,<Textl{nge>,<Hauptmen.anz.>,<Men.anz.>,<Untermen.anz.> MENUE.SET(,<Hauptmen.>, (<Men.pkt.>,)) <Menpkt-Text> MENUE.PARA,<Hauptmen.>,(<Menpkt.>,(<Untermenpkt.>)) <Status> MENUE.PEN,<HMP-Pen(1)>,<HMP-Pap(1)>,<HMP-Pen(0)>,<HMP-Pap(0)>, <MNP-Pen(1)>,<MNP-Pap(1)>,<MNP-Pen(0)>,<MNP-Pap(0)> MENUE.CLEAR MENU,<Xp>,<Yp>,<@Menpkt>,<Anz.Menpkt>,<Textl{n>,<Menpkt-Text> MENUE.ON MENUE.OFF MENUE.LINE (,<Leistenl{nge>) MENUE.OPEN,<Hauptmen.>,<@Menuepkt.>,<@Untermen.pkt.> d) Sonstige Befehle TIME.PUT,<Stunde>,<Minute>,<Sekunde> TIME.GET,<@Stunde>,<@Minute>,<@Sekunde> LOAD,<Block>,<Ziel>,<Quelle>,<L{nge> SAVE,<Block>,<Ziel>,<Quelle>,<L{nge> COPY,<Block>,<Ziel>,<Quelle>,<L{nge> FILL (,<Byte>) 3. Allgemeines zu den Befehlen - Besitzer des X-DDOS m}ssen vor dem Start von CEUS den SLOW-Befehl aufrufen. Nur dann wird das Programm unter diesem System problem¢ los laufen.¤ - CEUS Desktop 2.0 wird mit RUN"CEUS.BAS"+<RETURN> initialisiert. Dem Anwender stehen dann alle Befehle zur Verf}gung. CEUS ben|tigt den Speicherplatz von #7C00 bis #A200, au~erdem wird je nach Ein¢ stellung die 2.RAM Bank (die zus{tzlichen 64 KB) teilweise oder ganz beansprucht. F}r Programme bleiben noch 31 KB }brig.¤ - Jedem Befehl mu~, wie es bei RSX-Erweiterungen }blich ist, noch ein Balken vorangestellt werden (Klammeraffe+Shift).¤ - Befehle, welche Werte an den Benutzer zur}ckliefern, ben|tigen als R}ckgabevariablen solche vom Typ Integer, zus{tzlich mu~ diesen ein Klammeraffe vorangestellt werden. Au~erdem m}ssen sie bereits schon einmal definiert worden sein.¤ (z.B. h%=0:m%=0:s%=0:TGET,@h%,@m%,@s%:PRINT h%,m%,s%)¤ - Werte, welche in runden Klammern stehen, m}ssen nicht unbedingt angegeben werden¤ - Die RSX-Befehle laufen nur auf einem Schneider/Amstrad CPC-6128¤ - Werden zuviele oder zuwenige Parameter }bergeben, so erscheint entweder die Meldung "OPERAND MISSING" (zuwenig Parameter) oder "IMPROPER ARGUMENT" (zuviel Parameter)¤ - Alle Fehlermeldungen lassen sich unter Basic normal verwalten (z. B. mit ON ERROR GOTO)¤ - F}r fast jeden Befehl gibt es auch eine sinnvolle Abk}rzung¤ 4. Grafisches Aussehen der verschiedenen Objekte a) Fenster Fenster mit Schatten und Fenster ohne Schatten und Titelleiste,ohne Infozeile: Titel-/Infozeile: Ÿ __________________________ ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ Ãî ÃTitel+KlickSymbole ù à  S ·ÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀà à  c ·Ãx/y1  à  h ·Ã  R à Fenster-Inhalt  a ·Ã Fenster-Inhalt  a à  t ·Ã  h à (Arbeitsbereich)  t ·Ã (Arbeitsbereich)  m à  e ·Ã x/y2 e à  n ·Ã________________________ n ÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀ ·························· Ÿ b) Boxen und Icons Box mit Text: Icon ohne Text: Icon mit Text: Ÿ ÁÁÁÁÁÁÁ x/yÁÁÁÁÁÁÁÁÁÁÁÁ xyp³ª¶ à Š à  ³ªªªªª¶ y à î  ÃAnklickbox ¾·····½ l à  à  ¾·½ ÀÀÀÀÀÀÀ ÀÀÀÀÀÀÀÀÀÀÀÀ Text zum Icon x l Ÿ c) Alert-Fenster Alertfenster mit Text und zwei Anwahlboxen: Ÿ ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ à  à Dies ist der belie-  à big lange Meldungs-  à Text in einem Alert- à Fenster Â Ã ÇÆÆÆÆÆÆÆÆÆÆÆÆÆÆÆÆÆÉ Â Ã Å Anwahlbox 1 Å Â Ã ÍÆÆÆÆÆÆÆÆÆÆÆÆÆÆÆÆÆÏ Â Ã ÇÆÆÆÆÆÆÆÆÆÆÆÆÆÆÆÆÆÉ Â Ã Å Anwahlbox 2 Å Â Ã ÍÆÆÆÆÆÆÆÆÆÆÆÆÆÆÆÆÆÏ Â ÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀ Ÿ d) Pull-Down-Men}s Men}leiste mit aufgeklappten Men}fenstern: Ÿ ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ Desktop ÃDateien Diskette Infos System ÀÀÀÀÀÀÀÀÀÀÀÅÀÀÀÀÀÀÀÀÀÀÀÅÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀÀ Å Auflisten Å ô Men}leiste mit Hauptmen}s Å Zeigen Å Men}punkte ÷ Å VersteckenÅ Å Drive A Å Å Drive B Å Å L|schen Å Å RÅÀÀÀÀÀÀÀÀÀÀÀÅ Å UÅ Einzelne Å ÅÁÁÅ Alle Å ö Untermen}punkte Å Formatier.Å ÅÁÁÁÁÁÁÁÁÁÁÁÅ Ÿ 5. Befehlsbeschreibung 5.1 Fenster-Befehle a) Grundbefehle WINDOW.OPEN (Abk}rzung: WOPEN): \ffnet ein Fenster WINDOW.OPEN,<Nr>,<Xp1>,<Yp1>,<Xp2>,<Yp2> (,<Titeltxt> (,<Infotxt>)) Ein Fenster mit der Nummer <Nr> erscheint auf dem Bildschirm. Die linke obere Ecke wird mit <Xp1> und <Yp1> angegeben, die rechte un¢ tere mit <Xp2> und <Yp2>. Soll es zus{tzlich mit einer Titelleiste erscheinen, so mu~ noch ein weiterer Parameter <@Titeltext$> ange¢ h{ngt werden. Hierbei handelt es sich um einen String, welcher den entsprechenden Text enth{lt. Darunter kann noch eine Informations¢ zeile gesetzt werden, welche ebenfalls mit Text ausgestattet werden mu~. In diesem Falle sollte als siebter Parameter der jeweilige Textstring angeh{ngt werden.¤ Vor dem Aufbau des Fensters wird der verdeckte Hintergrund gerettet. Die Daten werden dabei in die zweite Ram-Bank kopiert. Ist dort je¢ doch kein Platz mehr frei, so wird der Aufbau des Fensters unterlas¢ sen, es erscheint die Fehlermeldung "MEMORY FULL". Ansonsten er¢ scheint das Fenster mit Rahmen, eventuell mit Schatten, Titel- und Infozeile. Da das Basic-Fenster mit der gleichen Nummer an die selb¢ Gr|~e angepa~t wird, kann darin nun ganz gew|hnlich mit PRINT #<Nr> Text ausgegeben werden.¤ WINDOW.CLOSE (Abk}rzung WCLOSE): Schlie~t das oberste Fenster WINDOW.CLOSE ohne Parameter Das oberste Fenster (zuletzt ge|ffnete oder hochgeholte Fenster) wird geschlossen. Dabei erscheint der verdeckte Hintergrund wieder auf dem Bildschirm, wobei der daf}r ben|tigte Platz in der zweiten Ram-Bank wieder frei gegeben wird.¤ b) Spezialbefehle WINDOW.HIDE (Abk}rzung WHIDE): Versteckt ein bestimmtes Fenster WINDOW.HIDE,<Nr> Das Fenster mit der Nummer <Nr> verschwindet vom Bildschirm, bleibt aber im Speicher erhalten und kann sp{ter mit WSHOW wieder darge¢ stellt werden. Beim Verschwinden kommt der alte Hintergund wieder zum Vorschein. Das zu versteckende Fenster sollte nicht von einem anderen halb oder ganz }berdeckt sein. War es bereits versteckt, so kann diese Funktion nicht ausgef}hrt werden.¤ WINDOW.SHOW (Abk}rzung WSHOW): Holt ein verstecktes Fenster zur}ck auf den Bildschirm WINDOW.SHOW,<Nr> Ein mit WHIDE verstecktes Fenster mit der Nummer <Nr> wird zur}ck auf den Bildschirm geholt. Dabei erscheint auch dessen Inhalt, der Hintergrund wird gerettet. War das entsprechende Fenster gar nicht versteckt, so kann diese Funktion nicht ausgef}hrt werden.¤ WINDOW.POP (Abk}rzung WPOP): Holt ein Fenster an die oberste Stelle WINDOW.POP,<Nr> Ein Fenster mit der Nummer <Nr>, welches nicht als letztes ge|ffnet wurde, sondern von anderen }berlagert wird, kann mit diesem Befehl an die oberste Stelle geholt werden. Es w}rde dann beim n{chsten WCLOSE-Befehl als erstes geschlossen.¤ WINDOW.SET (Abk}rzung WSET): Versetzt ein Fenster an eine andere Position WINDOW.SET,<Nr>,<Neu XP>,<Neu YP> Das Fenster mit der Nummer <Nr> wird an die Position <Neu Xp> und <Neu Yp> versetzt. Die beiden Koordinaten geben dabei die linke ober Ecke des Arbeitsbereiches an, nicht die des gesamten Fensters, wenn es z.B. noch mit einer Titelleiste versehen ist.¤ c) Parameterbefehle MEMORY (keine Abk}rzung vorhanden): Legt die Speichergr|~e fest MEMORY,<Blockanz.> Mit diesem Befehl l{~t sich bestimmen, wieviel Bl|cke aus der zwei¢ ten Ram-Bank f}r das Abspeichern von Fenster- und Men}daten verwen¢ det werden sollen. Die zweite Ram-Bank enth{lt vier Bl|cke, mit je¢ weils 16 KB. Es werden immer die Bl|cke 1 bis <Blockanz.> verwendet. Somit l{~t sich ein Speicherbereich auch noch f}r andere Zwecke ver¢ wenden. Werden alle vier Bl|cke benutzt, so lassen sich bis zu vier bildschirmgro~e Fenster verwalten.¤ SHADOW.ON / SHADOW.OFF (Abk}rzung SON/SOFF): Schatten ein-/ausschalten SHADOW.ON / SHADOW.OFF ohne Parameter Fenster k|nnen bei ihrer Darstellung noch mit einem Schatten ausge¢ stattet werden. SON bewirkt, da~ jedes neue ge|ffnete Fenster solch einen erh{lt, SOFF l|st das Gegenteil aus.¤ Im Bildschirm-Mode 2 bewirkt ein Schatten die inverse Darstellung des bedeckten Bereiches. Im Mode 1 werden die Farben folgenderma~en behandelt: PEN 0 => PEN 2, PEN 1 => PEN 1, PEN 2 => PEN 1, PEN 3 => PEN 1.¤ WINDOW.PEN (Abk}rzung WPEN): Legt die Fensterfarben fest WINDOW.PEN,<Rahmen>,<Titel>,<Info> Die Farbstifte der einzelnen Fensterbestandteile werden gesetzt. <Rahmen> gibt den Farbstift des gesamten Fensterrahmens fest, ein¢ schlie~lich den Anklicksymbolen. <Titel> und <Info> legt die Farbe des Titel- bzw. des Infozeilentextes fest.¤ 5.2 Bildschirmsteuer-Befehle a) Anwahlzeigerbefehle POINTER.ON / POINTER.OFF (Abk}rzung PON/POFF): Zeiger ein-/ausschalten POINTER.ON / POINTER.OFF ohne Parameter Schaltet den mit dem Joystick oder der Maus steuerbaren Anwahlzeiger ein bzw. aus. Dieser kann auch weiterhin bei ausgeschaltetem Zustand bewegt werden, allerdings wird er hier nicht am Bildschirm darge¢ stellt, was eine Erh|hung der allgemeinen Arbeitsgeschwindigkeit be¢ deutet. Er wird interruptgesteuert, kann also auch bewegt werden, wenn daneben andere Operationen ablaufen.¤ Wenn Bildschirmaufbau-Operationen ablaufen, sollte der Zeiger immer ausgeschaltet sein, sonst kann es zu sogenannten 'Cursor-Leichen' kommen.¤ POINTER.POS (Abk}rzung PPOS): Position des Cursors abfragen POINTER.POS,<@xp>,<@yp> Das Abfragen der aktuellen Anwahlzeiger-Position wird mit diesem Be¢ fehl m|glich. Die Variablen <xp> und <yp> m}ssen vom Typ Integer sein. Zus{tzlich mu~ ihnen der Klammeraffe vorangestellt werden. Au¢ ~erdem m}ssen sie schon einmal definiert worden sein. In ihnen er¢ h{lt der Anwender in Werten von 0-319 und 0-199 die derzeitige Posi¢ tion des Pfeils zur}ck.¤ CURSOR (keine Abk}rzung vorhanden): Position mit Zeiger anklicken CURSOR ohne Parameter Der Anwahlzeiger wird eingeschaltet, falls dies nicht schon der Fall gewesen ist. Nun hat der Benutzer die M|glichkeit, mit Joystick oder Maus eine Stelle anzufahren. Wird nun der Feuerknopf gedr}ckt, so wird die gew{hlte Bildschirmposition den Grafikkoordinaten }berge¢ ben. War der Zeiger vor Aufruf des Befehls ausgeschaltet, so wird er jetzt wieder in diesen Zustand versetzt.¤ POINTER.FORM (Abk}rzung: PFORM): Zeigergestalt festlegen POINTER.FORM,<Adr.> Das Aussehen des Anwahlzeigers wird neu bestimmt. <Adr.> gibt den Beginn der Grafikdaten f}r den neuen Zeiger an. Mehr }ber diesen Be¢ fehl ist in der Beschreibung zum Pfeileditor 'PEC' zu lesen.¤ POINTER.NEW (Abk}rzung: PNEW): Alte Zeigergestalt setzen POINTER.NEW ohne Parameter Der CEUS-Standardzeiger wird benutzt. Ein eventuell aufgerufener PFORM-Befehl wird also r}ckg{ngig gemacht.¤ b) Boxbefehle Die Boxbefehle dienen zur Erzeugung und Verwaltung von Bildschirmbe¢ reichen, die sp{ter in Verbindung mit dem Befehl 'CEUS' mit dem Pfeil angew{hlt werden k|nnen. Bei der Darstellung einer Box oder eines Icons wird nicht der Hintergrund gerettet. Befindet sich ein solches Objekt innerhalb eines Fensters, so wird es automatisch mit¢ bewegt, wenn das Fenster versetzt wird.¤ BOX (keine Abk}rzung vorhanden): Anlegen und darstellen einer Klickbox BOX,<Nr>,<Window>,<Xp>,<Yp>,<Text> (,<Pen-Linie>,<Pen-Hintergrund>, <Pen-Text>) Eine Box mit der Nummer <Nr> wird im Fenster <Window> aufgebaut. Die Nummer darf im Bereich 0-255 liegen. Es k|nnen insgesamt 64 Boxen, Icons (ICON) und definierte Bereiche (AREA) verwaltet, diese Anzahl darf nicht }berschritten werden. Wird bei <Window> 8 angegeben, so wird die Box in keinem Fenster aufgebaut, sondern erscheint auf dem gesamten Bildschirm. <Xp> und <Yp> geben die Position der Box inner¢ halb des Fensters oder des gesamten Bildschirms an. Innerhalb der Box mu~ ein mindestens ein Zeichen langer Text <Text$> erscheinen, welcher gleichzeit auch die L{nge der Box bestimmt (Textln.+2 Zei¢ chen). Die Box ist immer drei Zeichen hoch. Mit drei weiteren Para¢ metern, welche auch weggelassen werden k|nnen, werden die Box-Far¢ ben bestimmt. <P-Linie> bestimmt die Rahmenfarbe,<P-Hintergrund> die Farbe, mit der die Box ausgef}llt wird und <P-Text> die Textfarbe.¤ ICON (keine Abk}rzung vorhanden): Anlegen und darstellen eines Icons ICON,<Nr>,<Window>,<Xp>,<Yp>,<Xl>,<Yl>,<Text>,<Grafik-Code> (,<Pen- Hintergrund>,<Pen-Text>) Ein Icon wird aufgebaut. Die Parameter <Nr>,<Window>,<Xp> und <Yp> sind v|llig identisch mit denen bei BOX, au~erdem gilt hier auch weitgehend das gleiche. <Xl> und <Yl> legen die Gr|~e des Icons in Zeichen fest. Jedes Icon kann auch mit einem Text versehen werden, welcher dann unterhalb diesem zentriert erscheint. Er wird in <Text$> }bergeben. Ist kein Text erw}nscht, so sollte bei <Text$> ein Leerstring }bergeben werden. <Code$> enth{lt den Grafikcode f}r das Icon. Die Farben des Icon-Textes werden mit zwei zus{tzlichen Parametern, welche aber auch weggelassen werden k|nnen, bestimmt.¤ AREA (keine Abk}rzung vorhanden): Anlegen eines Klickbereiches AREA,<Nr>,<Window>,<Xp>,<Yp>,<Xl>,<Yl> Ein Bereich f}r die Anwahl mit dem Pfeil wird definiert, auf dem Bildschirm erscheint aber nichts. Die Parameter sind identisch mit den entsprechenden bei ICON.¤ CLEAR (keine Abk}rzung vorhanden): L|schen eines definierten Anklickbereiches CLEAR (,<Pen>) ,<Nr> Ein definierter Anklickbereich mit der Nummer <Nr> wird entfernt, er kann durch den Zeiger also nicht mehr angew{hlt werden. Das be¢ trifft alle drei Anklicktypen, Icons (ICON, Boxen (BOX) und Bereiche (AREA). Wird zus{tzlich ein Farbstift in <Pen> }bergeben, so wird das jeweilige Objekt dabei noch vom Bildschirm gel|scht, d.h. der freiwerdene Bereich wird mit <Pen> ausgef}llt.¤ CLEAR.ALL (keine Abk}rzung vorhanden): L|schen aller definierter Anklickbereiche CLEAR.ALL ohne Parameter Alle definierten Anklickbereiche werden entfernt und k|nnen nicht mehr angew{hlt werden. Die einzelnen Objekte bleiben dabei aller¢ dings auf dem Bildschirm erhalten und sollten durch andere Methoden gel|scht werden.¤ c) Sonstige Befehle CEUS (keine Abk}rzung vorhanden): Ausf}hrungen mit dem Anwahlzeiger CEUS,<@Art>,<@P1>,<@P2>,<@P3> Der 'CEUS'-Befehl dient zur Steuerung des Bildschirmes mit dem An¢ wahlzeiger. Nur in Verbindung mit ihm k|nnen die Fenster, Icons, Bo¢ xen und Pull-Down-Men}s sinnvoll mit Joystick oder Maus genutzt wer¢ den. Nach seinem Aufruf kann der Anwender mit dem Zeiger }ber den Bildschirm fahren. Hat er durch Bet{tigung des Feuerknopfes eine be¢ stimmte Position angew{hlt, so pr}ft CEUS, was sich an dieser Stelle auf dem Bildschirm befindet. In <Art> wird dem Programm dann mitge¢ teilt, was der Benutzer machen wollte, die Parameter <P1> bis <P3> }bergeben genauere Informationen. 'CEUS' gibt nun folgendes aus:¤ Art=0: Oberstes Fenster schlie~en:¤ Der Benutzer hat beim obersten Fenster das Schlie~symbol (Quadrat links oben in der Titelleiste) angew{hlt, dieses soll also nach Wunsch des Benutzers geschlossen werden (mit WCLOSE).¤ P1=Fensternr., P2/P3 ohne Bedeutung¤ ¤ Art=1: Oberstes Fenster verstecken:¤ Der Benutzer hat beim obersten Fenster das Verstecksymbol (Pfeil rechts oben in der Titelleiste) angew{hlt, dieses soll also nach Wunsch des Benutzers versteckt werden (mit WHIDE).¤ P1=Fensternr., P2/P3 ohne Bedeutung¤ ¤ Art=2: Unteres Fenster nach oben holen:¤ Ein Fenster, welches nicht an der obersten Stelle liegt, wur¢ de angew{hl. Das bedeutet, da~ es erst einmal an die oberste Stelle geholt werden sollte, bevor man mit diesem Operationen durchf}hren kann (mit WPOP).¤ P1=Fensternr., P2/P3 ohne Bedeutung¤ ¤ Art=3: Oberstes Fenster angeklickt:¤ Der Inhalt des obersten Fensters (Arbeitsbereich) wurde ange¢ klickt, ohne da~ ein darin definierter Klickbereich ber}hrt wurde. Wird bei P1 als Fensternr. der Wert 8 zur}ckgegeben, so wurde im sonstigen Bildschirm eine Position angew{hlt.¤ P1=Fensternr. (8=sonst.Bildsch.), P2/P3 = X/Y-Pixelkoordina¢ ten¤ ¤ Art=4: Definierten Klickbereich angew{hlt:¤ Ein mit BOX, ICON oder AREA definierter Anwahlbereich wurde ber}hrt. Wird bei P2 der Wert 8 }bergeben, so befindet sich das Objekt im }brigen Bildschirm.¤ P1=Objektnr., P2=Fensternr. (8=sonst.Bildsch.), P3 ohne Bed.¤ ¤ Art=5: Men}punkt angew{hlt:¤ Klickt der Anwender einen in der Men}leiste vorhandenen Hauptmen}punkt an, so bewirkt der CEUS-Befehl das \ffnen des jeweiligen Men}s. Der Anwender kann jetzt auch noch daraus einen Punkt oder Unterpunkt ausw{hlen. Erst dann wird der CEUS-Befehl beendet, welcher nun den angew{hlten Men}punkt }bergibt.¤ P1=Hauptmen}punkt, P2=Men}punkt, P3=Untermen}punkt¤ ¤ Art=6: Fenster versetzen:¤ Der Anwender hat die Titelzeile angew{hlt. Nun mu~ er den Feuerknopf festhalten und auf eine andere Position fahren. Er teilt damit dem Sytem mit, da~ er das Fenster auf die neue Position versetzen will (mit WSET). Allerdings pr}ft CEUS nicht, ob die neue Position auch f}r das Fenster zugelassen werden kann.¤ P1=Fensternr., P2 / P3 = neue Position¤ ALERT (keine Abk}rzung vorhanden): Auswahl in einem Alert-Fenster ALERT,<Box 1>,...,<Box n>,<Text>,<@Boxnr.> Ein 18 Zeichen breites Alert-Fenster wird aufgebaut. Hierzu wird }b¢ rigens das Basic-Fenster 7 benutzt. In diesem wird der Text in <Text$> ausgegeben. Darunter erscheinen Boxen mit den Texten <Box1$> bis <BoxN$>. Eine von diesen mu~ nun vom Anwender angew{hlt werden, worauf das Fenster wieder verschwindet. <Boxnr> enth{lt die Nummer (1 bis n) der angew{hlten Box.¤ ALERT.PEN (Abk}rzung APEN): Farbenfestlegung f}r Alert-Fenster ALERT.PEN,<Textpen>,<Textpaper> Die Textfarben der Alert-Fenster lassen sich mit diesem Befehl be¢ stimmen.¤ 5.3 Men}-Befehle Im folgenden werden verschiedene Abk}rzungen benutzt:¤ - MP => Men}punkt - HMP => Hauptmen}punkt; Men}punkt, welcher sich in der Men}leiste befindet - MNP => Men}punkt; Men}punkt, welcher sich in einem, von der Men}¢ leiste aus aufgeklappten Pull-Down-Men} befindet - UMP => Untermen}punkt; Men}punkt, welcher sich in einem, von ei¢ nem Pull-Down-Men} aus aufgeklappten Unter-Pull-Down-Men} befindet Die Men}-Befehle benutzen die Basic-Fenster 7 und 6.¤ a) Vorbereitungs- und Parameterbefehle MENUE.INIT (Abk}rzung MINIT): Reservierung von Speicher f}r die Men}daten und Festlegung der Gr|~en MENUE.INIT,<Textl{nge>,<Hauptmen.anz.>,<Men.anz.>,<Untermen.anz.> Vor Aufruf dieses Befehls sollte noch ein, f}r CEUS reservierter Block v|llig frei sein. Ansonsten wird die Meldung "MEMORY FULL" ausgegeben. Kann noch freier Speicherplatz gefunden werden, so wird dieser nun f}r die Men}daten reserviert. <Textl{nge> gibt die maxi¢ male L{nge eines MPs (HMP, MNP oder UMP) in Zeichen an, <Hauptmen¢ anz> die Anzahl der HMPs in der Men}leiste, <Menanz> die maximale Anzahl der MNPs in einem Pull-Down-Men} und <Untermenanz> die maxi¢ male Anzahl der UMPs in einem Unter-Pull-Down-Men}.¤ MENUE.SET (Abk}rzung MSET): Setzen von Men}punktdaten MENUE.SET(,<Hauptmen.>, (<Men.pkt.>,)) <Menpkt-Text> Die in <Menpkt-Text$> enthaltenden Men}punktdaten werden dem System }bergeben. Wird nur ein Parameter }bergeben, so werden die Men}daten in der Men}leiste verwendet, bei zus{tzlicher Angabe des HMPs werden die Daten dem entsprechenden Pull-Down-Men}s zugeteilt. Wird dazu noch der MNP angegeben, so werden die Daten dem gew{hlten Unter- Pull-Down-Men} zugewiesen.¤ Der String sollte einen Men}datenblock enthalten, welcher die ein¢ zelnen Men}punkte beschreibt. Der String mu~ folgenderma~en aufge¢ baut sein:¤ ¤ "Men}punkt 1"+CHR$(Status)+CHR$(Anzahl Untermen}punkte)+¤ "Men}punkt 2"+CHR$(Status)+CHR$(Anzahl Untermen}punkte)+¤ "Men}punkt 3"+.....¤ "Men}punkt n"+CHR$(Status)+CHR$(Anzahl Untermen}punkte)¤ ¤ <"Men}punkt x"> darf dabei nur so lang sein, wie bei MINIT unter Textl{nge angegeben wurde. Ist <Status> = 1, so folgt dem Men}punkt kein H{ckchen, ansonsten wird bei <Status> = 2 dem MP ein H{ckchen angeh{ngt. <Anzahl der Untermen}punkte> hat nur bei HMPs oder MNPs einen Sinn. Dieser Parameter gibt die Anzahl der Men}punkte an, wel¢ che erscheinen sollen, wenn der MP angew{hlt wurde. Bei den HMPs mu~ hier mindestens 1 stehen, beim MNPs kann auch 0 angegeben werden.¤ MENUE.PARA (Abk}rzung MPARA): Men}punktstatus einstellen MENUE.PARA,<Hauptmen.>,(<Menpkt.>,(<Untermenpkt.>)) <Status> Der Status einen MPs wird mit <Status> festgelegt. 1 bedeutet, da~ dem MP kein H{ckchen folgt, bei Angabe von 2 geschieht das Gegen¢ teil.¤ Mit <HMP> (,MNP (,UMP)) wird der MP gew{hlt, bei dem der Status ge¢ {ndert werden soll.¤ MENUE.PEN (Abk}rzung MPEN): Men}farben bestimmen MENUE.PEN,<HMP-Pen(1)>,<HMP-Pap(1)>,<HMP-Pen(0)>,<HMP-Pap(0)>, <MNP-Pen(1)>,<MNP-Pap(1)>,<MNP-Pen(0)>,<MNP-Pap(0)> Die Men}farben lassen sich vielf{ltig bestimmen. HMP-Pen und -Paper legen die Farben der, in der Titelleiste dargestellten Punkte fest, MNP-Pen und -Paper bestimmen die Farben der MNPs und UMPs. Eine (1) bedeutet, da~ dieser Parameter die Farbe f}r den aktivierten Zustand eines MPs enth{lt, Parameter mit einer (0) setzen die Farben f}r den nichtaktiven Zustand.¤ MENUE.CLEAR (Abk}rzung MCLEAR): L|schen der Men}s MENUE.CLEAR ohne Parameter Die Men}daten werden gel|scht, die Men}s k|nnen daher nicht mehr angew{hlt werden. Der Speicher, welcher von den Men}daten besetzt wurde, wird wieder freigegeben.¤ b) Ausf}hrungsbefehle MENU (keine Abk}rzung vorhanden): PD-Men} erzeugen, Benutzer ausw{hlen lassen MENU,<Xp>,<Yp>,<@Menpkt>,<Anz.Menpkt>,<Textl{n>,<Menpkt-Text> Ein Pull-Down-Men} wird an der Position <Xp>/<Yp> ge|ffnet. <Anz. MPs> und <Textl{nge> geben die MP-Anzahl und die Textl{nge {hnlich wie bei MINIT an. <Menpkt-Text> enth{lt den Men}datenblock f}r die¢ ses Men}, welcher so aufgebaut werden mu~, wie es bei MSET beschrie¢ ben ist. Hat der Benutzer einen Punkt angew{hlt, so wird dessen Num¢ mer in <Menpkt> zur}ckgegeben, hat der Anwender jedoch eine Position au~erhalb des Men}fensters angew{hlt, so wird eine 0 zur}ckgegeben.¤ MENUE.ON/MENUE.OFF (Abk}rzung MON/MOFF): PD-Men}s f}r den CEUS-Be¢ fehl freigeben/sperren MENUE.ON / MENUE.OFF ohne Parameter Schalten die PD-Men}s f}r den 'CEUS'-Befehl frei oder sperren sie. Wenn sie gesperrt sind (MOFF), kann unter dem 'CEUS'-Befehl kein Me¢ n} aus der Men}leiste ausgew{hlt werden.¤ MENUE.LINE (Abk}rzung MLINE): Men}leiste darstellen MENUE.LINE (,<Leistenl{nge>) Gibt eine Men}leiste mit den HMPs in der ersten Zeile des Bild¢ schirms mit der L{nge <Leistenln> aus. Wird der Parameter allerdings weggelassen, so erstreckt sich die Leiste }ber den ganzen Bild¢ schirm.¤ MENUE.OPEN (Abk}rzung MOPEN): Men} |ffnen MENUE.OPEN,<Hauptmen.>,<@Menuepkt.>,<@Untermen.pkt.> Das Pull-Down-Men} des <HMP>s wird ge|ffnet. Darin kann der Anwender nun einen MNP ausw{hlen. Besitzt dieser noch weitere UMPs, so wird dazu noch ein Unter-PDM ge|ffnet. Wird au~erhalb der PDM-Fenster angeklickt, so bedeutet dies Abbruch, <MNP> und <UMP> enthalten den Wert 0. Wurde aber ein MP angew{hlt, enthalten die beiden Variablen die entsprechenden Werte. Die PDM-Fenster werden nach Ausf}hrung des MOPEN-Befehls wieder geschlossen.¤ 5.4 Sonstige Befehle a) Zeitbefehle TIME.PUT (Abk}rzung TPUT): Zeit einstellen TIME.PUT,<Stunde>,<Minute>,<Sekunde> Die Zeit der CEUS-Uhr wird mit diesem Befehl gestellt.¤ TIME.GET (Abk}rzung TGET): Zeit abfragen TIME.GET,<@Stunde>,<@Minute>,<@Sekunde> Die aktuelle Zeit der CEUS-Uhr kann man mit TGET erfahren.¤ b) Speicherkopierbefehle LOAD/SAVE/COPY (keine Abk}rzung vorhanden): Speicherteile kopieren LOAD / SAVE / COPY,<Block>,<Ziel>,<Quelle>,<L{nge> LOAD: Kopiert einen bis zu 255 Byte langen (<L{nge>) Speicherbereich ab Adresse <Quelle> aus der zweiten Ram-Bank in Block <Block> heraus und legt ihn ab Adresse <Ziel> ab.¤ SAVE: Veranla~t genau das umgekehrte, wie bei LOAD: Ein Speicherbe¢ reich ab <Quelle> wird in die zweite Ram Bank ab <Ziel> in den Block <Block> kopiert.¤ COPY: Dies ist ein erweiterter LDIR-Befehl, welcher neben dem Ko¢ piervorgang auch einen Bankswitching durchf}hrt, wenn <Block> <>0 ist.¤ c) Sonstiges FILL (keine Abk}rzung vorhanden): Bildschirm mit Farbe ausf}llen FILL (,<Byte>) Der gesamte Bildschirm wird mit dem Byte <Byte> ausgef}llt. Wird dieses weggelassen, so wird der Bildschirm mit einem speziellen Streifenmuster }berzogen.¤ 6. Zusatzprogramme 6.1 Das CEUS-Demonstrationsprogramm Das Demonstrationsprogramm wird mit RUN"CEUS-DEM.BAS"+<RETURN> ge¢ startet. Vorher mu~ schon eine Initialisierung des Dektop-Systems erfolgt sein. Ansonsten startet CEUS-DEM automatisch den CEUS-La¢ der.¤ Innerhalb des Demonstrationsprogramms werden alle Befehle mit Hilfe von Beispielen aufgez{hlt und erleutert. Um von einem Teil in den n{chsten zu gelangen, mu~ normalerweise immer eine beliebige Taste gedr}ckt werden. Nachdem das Programm durchgelaufen ist, wird es er¢ neut gestartet.¤ 6.2 Der Pfeileditor PEC Wie schon beschrieben, l{~t sich der Anwahlzeiger mit Hilfe des Be¢ fehls POINTER.FORM ver{ndern. Durch das Programm PEC (<P>ointer- <E>ditor/<C>eus) k|nnen nun beliebige Pointer komfortabel erzeugt und abgespeichert werden.¤ Gestartet wird das Programm mit RUN"CEUS-PEC.BAS"+<RETURN>. Nun wird der Bildschirm neu ausgebaut. Zu sehen sind zwei gro~e Fenster, in denen der Pfeil und der Hintergrundmodus der einzelnen Punkte ver¢ gr|~ert dargestellt werden. Daneben sind diese in Normalform vorzu¢ finden. Darunter liegen vier verschiedene Anklickboxen. In der letz¢ ten Zeile steht der aktuelle Filename des Pointers.¤ Der Pfeil kann nun durch das Setzen von Punkten in das "Shape"-Fen¢ ster editiert werden. Die Farbe der Punkte wird durch Anklicken der "Farbe"-Box bestimmt. Im "Hintergrund"-Fenster wird der Modus be¢ stimmt, in dem dem Pfeil auf den Bildschirm erscheint. Wird hier ein Punkt (ROT) gesetzt, so erscheint der entsprechende Punkt des Poin¢ ters in Normalform auf dem Bildschirm. Ist hier ein Punkt nicht ge¢ setzt, so wird die jeweilige Pointerstelle mit den Bildschirmdaten im XOR-Modus verkn}pft.¤ Wird die "Zeigen"-Box einmal angeklickt, so wird der vergr|~erte Pfeil in der Anzeige mit der Normalgr|~e }bernommen. Bei der nochma¢ ligen Anwahl der Box erh{lt auch der benutzte Anwahlzeiger die ent¢ sprechende Form.¤ Ein Zeiger kann gespeichert werden, wenn die "Speichern"-Box akti¢ viert wird. Vorher mu~ allerdings schon ein Filename in der unter¢ sten Zeile eingegeben worden sein. Mit der "Laden"-Box verh{lt es sich genau umgekehrt. Ein auf Diskette vorhandener Zeiger wird wie¢ der geladen.¤ ¤ Ein abgespeicherter Pfeil kann nun unter CEUS benutzt werden. Dazu mu~ der Zeiger an eine Stelle im Speicher geladen, und mit dem PFORM-Befehl aktiviert werden. Das k|nnte z.B. so aussehen:¤ ¤ H=HIMEM-72 : MEMORY H : LOAD "PFEIL",H+1 : !PFORM,H+1¤ ¤ Die L{nge einer Pfeildatei betr{gt immer 72 Bytes. Es k|nnen nat}r¢ lich auch mehrere Pfeile in verschiedene Stellen im Speicher geladen werden und in diversen Situationen aktiviert werden (z.B. k|nnte w{hrend eines Ladevorgangs als Pfeil eine 'Sanduhr' benutzt wer¢ den...).¤ |