Die Uhr Eine Digitaluhr als Accessory Die Dokumentation vom 30.03.93 *Pentagramm Software Braunschweig Thomas Birke Hinnerk Rmenapf birke@bii.bessy.de Ottweilerstr. 18 38116 Braunschweig Ein Programm von Thomas Birke & Hinnerk Rmenapf (C) 1987 - 1993 T.B. & HWR Die Uhr darf von jedem angewendet werden, der sie an jeden weitergibt, der sie vielleicht anwenden m”chte. Die Uhr darf NUR KOMPLETT weitergegeben werden, also mit den UNVERŽNDERTEN Dateien: - DIE_UHR.ACC Das Accessory - D_UHR112.TXT Diese Datei - UHRCONF.PRG Konfigurationsprogramm fr Die Uhr - UHRCONF.RSC Resource-Datei dazu Alle Rechte liegen bei den Autoren. Wir bernehmen keine Garantie. Wir haften -nicht- fr Sch„den, die durch Fehlfunktion, korrekte Funktion, das Kopieren oder durch die blože Existenz der Programme entstehen. Geschichte(n) Die Uhr begann ihr Dasein als erster Test 'Wir stricken uns ein Accessory'. In den folgenden Jahren wurde sie st„ndig den ge„nderten Anforderungen angepasst. šbrigens ... wir benutzen sie selber (immer noch!). Die Uhr ist noch so eine Uhr als Accessory, aber mit einigen Vorteilen : EXTRA Version 1.12 M„rz '93 ===== - Bildschirmschoner (z.B. Before Dawn) werden erkannt und nicht beim Schonen gest”rt (wenn sie einen entsprechenden 'cookie' intsallieren). Jetzt Neu! Version 1.1 Nov/Dez 1992 (hier nur die wichtigsten Žnderungen) ========== (englischsprachige Version 1.1E ist vorhanden) - Ziffern und X-Position der Zeitanzeige k”nnen konfiguriert werden - Ein 12-Stunden Modus (am/pm) nach englischer Art wurde eingefhrt - Das laufende Accessory kann OHNE RESET neu konfiguriert werden, ver- „nderungen der Anzeigeart werden sofort bernommen. - Ein paar kleine Fehlerkorrekturen, ber die wir nicht weiter reden. Version 1.0 Juni/Juli 1992 - Ein reines GEM-Programm, es werden keine Vektoren verbogen oder Interrupt-Routinen installiert. - Eine kleine, uns wohlbekannte, Melodie zu jeder vollen Stunde (abschaltbar). - Untersttzt jede Bildschirmaufl”sung (Ausgabe ber das VDI). - Auch ein Wechsel der Aufl”sung ohne Reset (z.B. von AS-Overscan) wird erkannt und behandelt. - Die Weckfunktion hat ein 'Zeit-Fenster'. Wenn unsaubere Programme die Accessories nicht immer zum Zuge kommen lassen wird auch noch innerhalb einer halben Stunde nach der eigentlichen Weckzeit der Wecker gestartet, wenn Die Uhr bis dahin noch keine Gelegenheit dazu hatte (danach ist der Zug eh' abgefahren). - Speichersparend durch externes Konfigurationsprogramm. - Die Uhr ist konfigurierbar, es l„žt sich z.B. voreinstellen : -- Woraus soll Die Uhr die Uhrzeit bestimmen ? -- Soll die Uhrzeit angezeigt werden ? -- Soll zur vollen Stunde die (kurze!) Melodie gespielt werden ? -- Wie oft soll die Uhrzeit neu bestimmt werden ? . . . - Das Konfigurationsprogramm und Die Uhr arbeiten mit "Let 'em fly" von Oliver Scheel zusammen. Soviel zum Eigenlob, nun zur Beschreibung : 0. GEM-Accessories ------------------ Die Accessories sind Hilfsprogramme, die bei jedem Systemstart (z.B. Einschalten, Reset) vom Bootlaufwerk geladen werden. Sie laufen 'fast' parallel zu GEM - Programmen (wenn diese anst„ndig programmiert sind). Sollte Die Uhr einmal mitten bei Ihrer Arbeit stehenbleiben, kann das verschiedene Grnde haben : In GEM - Programmen (Endung .PRG oder .APP) : Der Programmierer hat die Accessories vergessen, oder er g”nnt ihnen keine Rechenzeit. Nach Beenden des Programmes sollte Die Uhr mit der richtigen Uhrzeit weiterlaufen. In TOS - Programmen (Endung .TOS oder .TTP) : Hier kann Die Uhr nicht weiterlaufen, w„hrend dieser Programme ist sie gestoppt. Nach Beenden des Programmes sollte Die Uhr mit der richtigen Uhrzeit weiterlaufen. Die Uhr ist ber den gleichnamigen Menpukt zum Mentitel ganz links zu erreichen. Wenn Sie diesen Menpunkt anw„hlen wird eine Dialogox dargestellt, in der Sie verschiedene Einstellungen vornehmen k”nnen (siehe unten). Wenn Ihr Rechner nicht mit einer Hardware-Uhr ausgestattet ist, mssen Sie die Uhrzeit wohl von Hand stellen, z.B. mit dem Kontrollfeld, oder einem extra-Programm (z.B. D_T.PRG ). 1. Zeitanzeige -------------- Die Uhrzeit wird rechts oben in der Menleiste angezeigt. Auch wenn die Bild- schirmaufl”sung sich „ndert (z.B. AS-Overscan) bleibt der eingestellte Abstand zum rechten Bildrand konstant. Wahlweise wird eine 24- oder eine 12- Stunden Anzeige dargestellt. Die 12-Stunden Anzeige erg„nzt die Ziffern durch einen Buchstaben: "a" fr Vormittag, und "p" fr Nachmittag, wie in englischsprachigen L„ndern blich. Ist zus„tzlich zur Zeitanzeige auch der Wecker eingeschaltet, wird rechts neben der Uhrzeit ein kleines Glockensymbol ausgegeben. Extrabreite Menzeilen Manche Programme nutzen die gesamte Bildbreite fr ihre Menzeile aus. In diesem Fall wird der letzte Menpunkt von der Zeitanzeige bermalt, was aber lediglich ein Sch”nheitsfehler ist, das Men funktioniert trotzdem einwandfrei. TEMPUS Sie k”nnen in den blichen ST-Bildschirmaufl”sungen die Zeitanzeige an der selben Stelle wie die TEMPUS-Uhr ausgeben lassen, auch in nicht allzustark erweiterten Bildschirmaufl”sungen geht das problemlos. Die Einstellung ist aber nicht fr alle Bildschirmaufl”sungen korrekt, denn die Anzeige der TEMPUS-Uhr beh„lt ihre X-Position, w„hrend Die Uhr ihre Zeitanzeige entsprechend der Žnderung der Bildbreite verschiebt. Die TEMPUS-Uhr wird mit ALTENATE ' abgeschaltet, fr Die Uhr siehe unten. In der Dialogbox wird die Zeitanzeige mit den Kn”pfen neben dem Uhrsymbol an- oder ausgeschaltet. Die Voreinstellung Zeitanzeige Ein/Aus ist konfigurierbar. 2. Melodie zur vollen Stunde ---------------------------- Zuh”ren und sich freuen, oder diese Option abschalten. Immer wenn sich die Stunde „ndert, kann Die Uhr eine kurze Melodie (naja, nur 8 T”ne) spielen. In der Dialogbox wird die Melodie zur vollen Stunde mit den Kn”pfen neben der kleinen Note an- oder ausgeschaltet. Die Voreinstellung Melodie zur vollen Stunde Ein/Aus ist konfigurierbar. 3. Wecker --------- Um geweckt zu werden ... - In der Menleiste den Eintrag 'Die Uhr' anklicken, die Dialogbox wird dargestellt. - Mit den Kn”pfen neben dem Glockensymbol wird der Wecker an- und ausge- schaltet. Klicken Sie den Knopf 'An' (rechts neben dem Glockensymbol) an. - unten in der Dialogbox ist das Eingabefeld fr die Weckzeit. Tragen Sie hier also die gewnschte Weckzeit ein (Backspace, Delete l”schen). Auch bei der Weckzeit wird zwischen 12- und 24 Stunden Modus unterschieden: 24-Stunden Modus ================ Es mssen IMMER 4 ZIFFERN eingegeben werden, zum Beispiel : Zeit Anzeige im Eingabefeld -------------------------------------------- Ein Uhr zw”lf 01:12 Neun Uhr drei 09:03 Vierzehn Uhr fnf 14:05 10 Minuten nach Mitternacht 00:10 12-Stunden Modus ================ In diesem Modus werden zus„tzlich unter dem Eingabefeld zwei Kn”pfe angezeigt, der eine ist mit AM bezeichnet, der andere mit PM . Es mssen auch hier immer 4 Ziffern eigegeben werden, zus„tzlich dazu mssen Sie einen der der beiden Kn”pfe AM/PM anklicken, zum Beispiel: Zeit Anzeige im Eingabefeld angeclickt ----------------------------------------------------------- Ein Uhr zw”lf 01:12 AM Neun Uhr drei 09:03 AM Vierzehn Uhr fnf 02:05 PM 10 Minuten nach Mitternacht 12:10 PM Klicken Sie danach den Knopf 'OK' an, die Dialogbox wird geschlossen. Wenn Die Uhr mit Ihrer Eingabe nichts anfangen kann macht sie Sie darauf aufmerksam, und die Dialogbox wird erneut ge”ffnet. Gehen Sie dann zurck, zur Eingabe der Weckzeit. Sind Wecker UND Zeitanzeige eingeschaltet, wird rechts neben der Uhrzeit ein kleines Glockensymbol ausgegeben. Wenn Sie es sich anders berlegen, und doch lieber ausschlafen wollen, ”ffnen Sie wieder die Dialogbox (ber den Menpunkt 'Die Uhr'), und klicken Sie den Knopf 'Aus' -rechts neben dem Glockensymbol!- an. Wie schon in den Allgemeinen Bemerkungen ber Accessories erw„hnt, ist nicht sichergestellt, daž Die Uhr immer Rechtzeitig zum Wecken vom AES etwas Rechenzeit zur Verfgung gestellt bekommt. Damit die Weckfunktion trotzdem zu etwas ntze ist weckt Sie Die Uhr auch noch innerhalb einer halben Stunde nach der eingestellten Weckzeit -- wenn sie vorher noch keine Gelegenheit dazu hatte. 4. Woher Die Uhr die Uhrzeit hat ---------------------------------- Das Betriebssystem dieses Rechners hat eine vielschichtige Art die Zeit zu messen. Die Uhr kann sich mehrerer M”glichkeiten bedienen, um zu er- fahren wie sp„t es ist. Die Einstellung, welche dieser Arten nun verwendet werden soll, wird unter 5. beschrieben. Alle diese Methoden haben so ihre Vor- und Nachteile : TIMER Beim Starten des Accessorys wird EINMAL die GEMDOS-Uhr abgefragt, danach wird die vergangene Zeit aus dem 200 Hertz Systemtimer berechnet. Daraus folgt, daž Die Uhr nichts davon merkt, wenn die System- Uhrzeit ver„ndert wird. Darum wird beim ™ffnen der Dialogbox die GEMDOS-Uhr abgefragt, und Die Uhr erneut nach der GEMDOS-Uhr gestellt. Sollte also Die Uhr etwas anderes als die GEMDOS-Uhrzeit anzeigen einfach die Dialogbox ber die Menzeile ”ffnen, und wieder schliežen. ( Es soll Programme geben, die den 200 Hertz Timer setzen. Sollte das passieren, zeigt Die Uhr natrlich Bl”dsinn an. [ Welche Programme sollten das tun ? Warum ?? WIE ??? ] Sollte Ihnen so etwas begegnen verfahren Sie wie oben beschrieben. ) XBIOS in Rechnern ohne extra Hardware-Uhr (1040 STF[M], 1040 STE, ... ) wird ber das XBIOS die Uhr im Tastaturprozessor abgefragt. Das verhindert das der Bildschirmschoner von MACCEL3 anspricht. In Rechnern MIT HARDWAREUHR ab Werk (MEGA ST[E], ...) empfehlenswert. GEMDOS Die Uhrzeit beim GEMDOS zu erfragen hat auch einen Nachteil : DAS PROBLEM : Wenn eine dieser netten Meldungen "Laufwerk X antwortet nicht ..." auf dem Bildschirm erscheint, hat irgendein Programm das GEMDOS aufgerufen, das GEMDOS wiederum das BIOS (oder XBIOS ?), dieses wiederum das AES, welches uns mit diesen wundervollen Meldungen erfreut. Wenn nun das AES aktiv ist l„žt es Die Uhr auch mal an die Reihe, allerdings ist der ursprngliche GEMDOS-Aufruf noch nicht beendet. Wenn nun Die Uhr die GEMDOS-Uhr abfragt, bevor der ur- sprngliche GEMDOS-Aufruf beendet ist, strzt das ganze ab. Um diese Gefahrenquelle auszuschalten, wird vor jeder GEMDOS-Zeitab- frage die AES-Funktion WindowUpdate ( 1 ) aufgerufen, danach WindowUpdate ( 0 ). Dadurch muž die Uhr warten, bis das AES Dialogboxen oder Mens fertig behandelt hat. NACHTEIL : Solange ein Programm mit WindowUpdate das AES zurckh„lt, steht Die Uhr (z.B. solange Dialogboxen ge”ffnet sind, oder Fenster neu gezeichnet werden). 5. Konfiguration ---------------- Falls Sie mit der Standardeinstellung nicht zufrieden sind, k”nnen Sie sie mit UHRCONF.PRG ver„ndern. UHRCONF.PRG wurde als extra-Programm geschrieben, damit das Accessory nicht unn”tig lang wird. Nachdem Sie UHRCONF.PRG gestartet haben, bernimmt das Programm alle Einstellungen aus dem Accessory (falls es beim Systemstart geladen wurde). Sie k”nnen nun in der angezeigten Dialogbox alle Einstellungen nach Ihren Vorstellungen „ndern. Wenn eine Žnderung das Aussehen der Zeitanzeige betrifft, wird Die Uhr , falls aktiv, sofort darauf reagieren. LADEN Die Einstellungen aus der Datei DIE_UHR.ACC werden gelesen und anzeigt. Ist Die Uhr aktiv, werden die geladenen Einstellungen vom laufenden Accessory bernommen. SPEICHERN Die momentan angezeigten Einstellungen werden in die Datei DIE_UHR.ACC geschrieben. Nur die so geschriebenen Einstellungen bleiben auch nach einem Neustart des Rechners (z.B. Reset) erhalten. OK Beendet das Programm. Sollte UHRCONF.PRG mit einer „lteren oder jngeren Accessory-Version konfrontiert werden, wir es Ihnen das mitteilen. Es k”nnen dann nicht alle Einstellungsm”glichkeiten genutzt werden. ANHANG A: Der Patchbereich (fr die ewig Neugierigen) -------------------------- Beispiel fr einen gltigen Patchbereich: &Die_Uhr_Vars:TZM2k1pS& |||||||| |||||||+- S : Siebensegment Ziffern ||||||| s : normale Ziffern ||||||| ||||||+- P : 12-Stunden Anzeige in englischer Notation |||||| p : 24-Stunden Anzeige |||||| |||||+- "1" bis "9" : Abstand zum rechten Bildschirmrand ||||| (in Zeichenbreiten) ||||| ||||+-- K : Anzeige kursiv (schr„ggestellt) |||| k : Anzeige normal (gerade) |||| |||+--- "1" bis "9" : Soviele Sekunden wird gewartet, bis ||| Die Uhr erneut die Uhrzeit bestimmt. ||| ||+---- M : Melodie zur vollen Stunde AN || m : ---------- " ---------- AUS || |+----- Z : Zeitanzeige AN | z : --- " --- AUS | +------ T : 200 Hz - Timer zur Zeitbestimmung benutzen. X : XBIOS - Uhr abfragen G : GEMDOS - Uhr abfragen [ siehe dazu 4. ] Dokumentation von Hinnerk Rmenapf. (Schreib- und andere Fehler vorbehalten.) +++