★ APPLICATIONS ★ DIVERS ★ MOUSE BASIC (CPC AMSTRAD INTERNATIONAL) ★![]() |
Mouse BASIC (CPC Amstrad International) | Applications Divers |
Hatten Sie nicht schon immer mal das Bedürfnis, Ihre alte Adressverwaltung ein wenig »aufzumotzen« und ein modernes, anwenderfreundliches Pull-Down-Menue einzubauen? Das sollte jetzt kein Problem mehr sein, denn in dieser Ausgabe finden Sie das komfortable Mouse BASIC, welches Ihnen eine Reihe von RSX Befehlen zur Verfügung stellt, ohne die Sie in Zukunft Ihren Rechner gar nicht mehr einschalten wollen. Mouse BASIC basiert auf einem Zeiger, der mit dem Joystick gesteuert wird. Ein MC Interrupt fragt den Joystick ständig ab, kontrolliert und bewegt diesen auch. Der Benutzer braucht sich letztendlich nicht um die Bewegung des Zeigers zu kümmern. Er muß nur den Interrupt mittels eines Befehls einhängen. Natürlich läßt sich dieser Interrupt auch jederzeit per Befehl wieder ausschalten. Die Text- und Grafikkoordinaten des Mauszeigers können jederzeit abgefragt werden. Sie stehen in festgelegten Speicherstellen. Pull-Down-Menues Zur Definition der Pull-Down-Menues muß sich der Benutzer zunächst eine Statuszeile entwerfen, in der die Titel bzw. Überschriften der Menues stehen. Diese Titel befinden sich an festgelegten Positionen innerhalb der Statuszeile. Diese Zeile ist zugleich auch die oberste Zeile des Bildschirms. Die Titel dürfen maximal 10 Buchstaben lang sein. Insgesamt können 6 Menues angelegt werden, die jedoch nicht alle benutzt werden müssen. Erster Schritt ist also das Printen von bis zu 6 Titeln in der ersten Bildschirmzeile. Danach werden die Menueeinträge festgelegt. Diese werden vom Benutzer durch spezielle Befehle mitgeteilt. 5 Einträge pro Menue sind möglich. Maximal können also 30 Menuepunkte angesprochen werden, was für die meisten Anwendungen ausreichen sollte. Die Umrandung des Windows paßt sich automatisch der Anzahl der Menueeinträge an. Hat man dies alles erledigt, kann man auch schon die fertigen Menues per Befehl darstellen. Uber RSX-Befehl wird ein MC-Programm aufgerufen, welches das Menue einblendet, den Mauszeiger abfragt, die Auswahl steuert und das Menue danach wieder verschwinden läßt. Der Hintergrund wird selbstverständlich gespeichert und geht nicht verloren. Der Benutzer kann nun mit dem Menuepfeil die verschiedenen Einträge anwählen. Das Ganze läuft wie unter GEM ab. Je nach Position des vom Anwender gesteuerten Pfeils wird ein Eintrag invers dargestellt. Entscheidet man sich für einen Menuepunkt, so muß man lediglich noch den Feuerknopf drücken. Das Fenster verschwindet und der Hintergrund wird wieder aufgebaut. Der Pfeil bleibt erhalten und kann selbstverständlich weitergesteuert werden, da er zeitsparend über den Frame Fly Interrupt kontrolliert wird. Nach der Menueabfrage fahrt das BASIC-Programm fort. Hier kann man nun feststellen, was angewählt wurde und mit ON...GOTO weiterverzweigen. 1. |PUTB1, (bis zu 5 String variablen) Dieser Befehl definiert die Einträge für Pull-Down-Menue: 1. Jeder String muß 10 Zeichen lang sein, eventuell mit Leerzeichen auffüllen. 2. PUTB2, PUTB3, PUTB4, PUTB5, PUTB6 (siehe PUTB1) 3. |ONMOUSE Darstellen des Mauszeigers und Einhängen des Interrupts. &9000 : An dieser Speicherstelle schreibt der Interrupt ständig, in welchem Menuesegment sich der Mauszeiger befindet. Bei 0 liegt der Zeiger außerhalb der Statuszeile, bei 1—6 befindet sich der Zeiger in der entsprechenden Menueüber-schrift. &9004 : An dieser Stelle steht ob der Feuerknopf gedrückt wird. &9004 = 0 : Feuerknopf aus 4. |OFFMOUSE Löschen des Mauszeigers und Aushängen des Interrupts. 5. |GETKO Es werden die Textkoordinaten des Mauszeigers ermittelt und im Speicher abgelegt. Adresse &9002 = X-Koordinate Adresse &9003 = Y-Koordinate 6. |GETGKO Es werden die Grafikkoordinaten ermittelt und im Speicher abgelegt. Adresse &9005 = LOBYTE X-Koordinate 7. |WINDOW,WERT (WERT = 1-6) Stellt das Menue mit der entsprechenden Nummer dar, steuert die Auswahlfunktion und legt die Nummer des gewählten Eintrags bei &9001 ab. Textkoordinaten für den Menuetitel LOCATE 6,1 = 1.Titel
|