CODING ★ BENUTZEROBERFLAECHE CEUS V1.0 - TEIL 6: UTILITIES (CPC AMSTRAD INTERNATIONAL) ★

Menu - RSXBenutzeroberflaeche CEUS v1.0 - Teil 6: Utilities (CPC Amstrad International)
★ Ce texte vous est présenté dans sa version originale ★ 
 ★ This text is presented to you in its original version ★ 
 ★ Este texto se presenta en su versión original ★ 
 ★ Dieser Text wird in seiner Originalfassung präsentiert ★ 

Nachdem die CEUS-Toolbox in der letzten Folge fertig-gestellt wurde, kümmern wir uns in dieser Folge um die BASIC-Programinierer, die bisher immer etwas zu kurz gekommen sind. Die Funktionstüchtigkeit des Systems wird mit einigen nützlichen Utilities unterstrichen.

Nachdem die CEUS-Toolbox in der letzten Folge fertig-gestellt wurde, kümmern wir uns in dieser Folge um die BASIC-Programinierer, die bisher immer etwas zu kurz gekommen sind. Die Funktionstüchtigkeit des Systems wird mit einigen nützlichen Utilities unterstrichen.

So, den Assemblerteil hätten wir hinter uns, wenden wir uns nun dem BASIC zu. Die Toolbox ist vor allem dazu gedacht, um auch vom BASIC aus relativ einfach schöne Oberflächen gestalten zu können. Ein weiteres Hilfsmittel dazu sind diese Utilities.

Adam Riese läßt grüßen

Beginnen wir doch gleich mit dem umfangreichsten Tool, dem Taschenrechner. Jeder kennt die Situation: Man sitzt vor der Textverarbeitung, um eine Rechnung zu schreiben, und möchte plötzlich wissen, wieviel denn nun eigentlich 28 Disketten zu 6,47 DM kosten. Meistens hat man in dieser Situation gerade keinen Taschenrechner zur Hand, die Batterien sind leer, das Universum expandiert oder...

Damit Ihnen das in Zukunft nicht mehr passiert, können Sie in Ihre selbstgeschriebenen Programme unseren komfortablen Taschenrechner einbauen, der Ihnen dieses Problem elegant abnimmt.

Der Taschenrechner arbeitet nur im Mode 1 (bei mehr als 1800 Byte Grafikdaten wäre es wohl ein bißchen viel verlangt, ihn noch in allen Modi zu präsentieren). Das Programm 'RECHNER .LDR' erstellt eine BIN-Datei 'RECHNER.BIN', die die Grafikdaten des Taschenrechners und eine kurze Routine zum Einblenden enthält. RECHNER .BIN wird ab Adresse &8500 in den Speicher geladen und stellt nach Aufruf den Befehl ICALCULATOR zur Verfügung, der in der Mitte des Bildschirms einen Taschenrechner darstellt.

Alles übrige wird von dem Basic-Programm' RECHNER.BAS' erledigt.

Es fragt den Cursor ab (über |CURSOR), erledigt die Berechnungen und gibt das Ergebnis aus. An Funktionen beherrscht das Programm die Grundrechenarten ( + /-/*//), Vorzeichenwechsel und Speicheroperationen (M/RM), wobei selbstverständlich Prioritäten gesetzt werden (Punkt vor Strich).

Bedient wird der Taschenrechner mit dem CEUS-Cursor, mit dem einfach die einzelnen Tasten angeklickt werden - wie bei einem 'richtigen' Taschenrechner. Hat man genug von ihm, beendet man ihn einfach durch Anklicken des oberen Randes (oberhalb der Anzeige).

Ein Notizblock für Vergeßliche

Sind Sie vergeßlich? Wenn ja, dann ist unser zweites Utility genau das Richtige für Sie. Es handelt sich um einen Notizblock für alle Lebenslagen. Erbesteht im Prinzip aus einem Fenster, in dem Sie beliebige Kommentare hinterlassen können. Koordinaten und Größe des Fensters sind durch Variablen festgelegt und können je nach vorhandenem Speicherplatz geändert werden.

Um den Notizblock zu verlassen, gibt es zwei Möglichkeiten:

⇒ durch 'ESC'; dann wird das Window ausgeblendet, der Inhalt des Notizblocks bleibt aber erhalten.

Odurch 'FEUER/COPY'; dabei bleibt das Fenster erhalten und kann durch andere Windows überlagert werden. Beim erneuten Aufruf des Notizblocks wird dieser dann einfach ' hochgepoppt'.

Alle hier vorgestellten Utilities verstehen sich übrigens als Unterprogramme, das heißt, sie müssen eventuell aus anderen Programmteilen heraus aufgerufen werden. Die meisten können einfach mit 'MERGE' zusammengelinkt werden. Der Taschenrechner und der Katalog vertragen sich aber nicht unbedingt, da der eine nur im Mode 1, der andere nur im Mode 2 arbeitet. Allerdings muß man dann die Zeilen 40-100 anpassen, so daß die dort liegenden Variablendefinitionen für alle Utilities vorhanden sind und es zu keinen Kollisionen über Definitionsbereiche kommt. Zum Beispiel muß, wenn das eine Programm 'DEFINT a-x' vorsieht. das andere aber 'DEFINT a-z:DEFREAL t' die kombinierte Zeile 'DEFINT a-x:DEFREAL t' heißen.

Kalendarisches

Beim dritten Hilfsmittel handelt es sich um einen Kalender für die Jahre von 1900 bis 2099 (nach Ablauf dieser Frist erfolgt ein kostenloses Update auf eine neue Version von 2100 bis 2199; Freiumschlag und Rückporto bitte beilegen). Nach Eingabe des Datums (erfolgt bei Programmstart) erstellt er beim Aufruf ein Kalenderblatt des aktuellen Monats. Dabei erscheint das aktuelle Datum in grau, Sonn- und Feiertage in rot. Funktionen für sämtliche Feiertage sind enthalten, (die meisten beweglichen Feiertage lassen sich aus dem Osterdatum + ein Offset berechnen, die übrigen ergeben sich aus einem variablen Offset auf einen festen Feiertag (zum Beispiel der 2. Mittwoch nach dem 1. November). Die entsprechenden Routinen sind über 'DEF FN... '-Funktionen realisiert, so daß sie sich auch eventuell in andere Programme übernehmen lassen. Die Anfangskoordinaten sind - wie beim Notizblock - in Variablen gespeichert, allerdings ist seine Größe fest.

Jetzt wird's professionell

Das letzte Utility stellt schließlich eine der Hauptanwendungen für Icons zur Verfügung: Die Directory-Anzeige. Zuerst wird mit 'CATALOG.LDR' die Datei 'CATALOG.BIN' erzeugt, die die Befehle |READ,drv,tr,sec,adr und |ICON.STR ,@a$,@b$ realisiert.

|READ liest einfach einen Sektor von Laufwerk drv (0 oder 1) und Spur tr (0 bis 41) mit der Nummer sec (format-abhängig) und legt ihn ab adr im Speicher ab.

|ICON.STR generiert aus einem 12 Zeichen langen Dateinamen (XXXXXXXX.YYY) a$ und einem 144 Zeichen langen Leerstring b$ einen String mit Daten für ein Icon (in b$), das - je nach Extension des Dateinamens - aus einem Blatt mit Eselsohr oder einem Block besteht (bei Extension .BAS), unter dem der Name der Datei dargestellt wird. Das entsprechende Icon kann dann über |DEFICON,nummer,@b$ definiert und mit |ICON dargestellt werden, die Darstellung stimmt aber nur im Mode 2 (im Mode 1 müßte man 12 Zeichen auf 24 Pixel verteilen, im Mode Obliebe noch gerade 1 Pixel pro Zeichen).

Das Utility CATALOG. BAS liest das Directory und legt die Einträge im User “user“ ab der Iconnumer “ficon“ ab. Das letzte Icon wird in der Variablen “licon“ zurückgegeben. Damit dürfte es kein Problem mehr sein, auch auf dem CPC ein absolut professionelles Datei-Handling zu realisieren.

Bye, Bye...

So, das war es dann mit dieser Serie. Ich hoffe, es hat allen Spaß gemacht und auch ausreichend Anregungen zum Sclberprogrammieren gegeben. Vielleicht hat der eine oder andere auch einmal gesehen, daß diese ganzen modernen Benutzeroberflächen zwar wahnsinnig professionell aussehen und sicherlich auch nicht ganz einfach zu realisieren sind, aber so ein Wunder der modernen Technik sind sie nun auch wieder nicht.

Ansonsten würde ich mich freuen, wenn ich irgendwann in Zukunft an dieser Stelle einmal CEUS-Anwendun-gen - von Lesern geschrieben - sehen würde. Ich verabschiede mich damit jetzt endgültig (oder vielleicht doch nicht ganz?) vom CPC und wandere zu den 'großen mit den 3 Buchstaben' ab. Macht's gut - und danke für den Fisch.

CPCAI , Jörg Schwieder/jf

★ PUBLISHER: CPC Amstrad International
★ YEAR: 1990
★ CONFIG: 64K + AMSDOS + ROM BASIC 1.1
★ LANGUAGE:
★ LiCENCE: ???
★ COLLECTION: CPC AMSTRAD INTERNATIONAL 1990
★ AUTHOR: Joerg Schwieder

 

Page précédente : Benutzeroberflaeche CEUS v1.0 - Teil 5. Folge: Menüs, Alertboxen und Software-Uhr
★ AMSTRAD CPC ★ DOWNLOAD ★

Type-in/Listings:
» CEUS-Catalog-Kalandar-Notizblock-Taschenrechner    (CPC  Amstrad  International)    GERMANDATE: 2020-04-19
DL: 221
TYPE: ZIP
SiZE: 10Ko
NOTE: Basic 1.1/40 Cyls
.HFE: Χ

» RSX-CEUS  v1-SOURCEPACK    GERMANDATE: 2020-04-18
DL: 678
TYPE: ZIP
SiZE: 20Ko
NOTE:
.HFE: Χ

★ AMSTRAD CPC ★ A voir aussi sur CPCrulez , les sujets suivants pourront vous intéresser...

Lien(s):
» Applications » Rsx - Soft Scroll Screen (Popular Computing Weekly)
» Applications » Utopia (Arnor)
» Applications » RSX REC,SAVE,LOAD (Schneider Aktiv)
» Applications » RSX GPrint (Deuuligne #05)
» Applications » RSX Circle (CPC Magazin)
» Applications » Rsx - Disc Copier v1
Je participe au site:
» Vous avez des infos personnel, des fichiers que nous ne possédons pas concernent ce programme ?
» Vous avez remarqué une erreur dans ce texte ?
» Aidez-nous à améliorer cette page : en nous contactant via le forum ou par email.

CPCrulez[Content Management System] v8.7-desktop/c
Page créée en 293 millisecondes et consultée 1022 fois

L'Amstrad CPC est une machine 8 bits à base d'un Z80 à 4MHz. Le premier de la gamme fut le CPC 464 en 1984, équipé d'un lecteur de cassettes intégré il se plaçait en concurrent  du Commodore C64 beaucoup plus compliqué à utiliser et plus cher. Ce fut un réel succès et sorti cette même années le CPC 664 équipé d'un lecteur de disquettes trois pouces intégré. Sa vie fut de courte durée puisqu'en 1985 il fut remplacé par le CPC 6128 qui était plus compact, plus soigné et surtout qui avait 128Ko de RAM au lieu de 64Ko.