KL 10.01.91 TicTac ====== TicTac ist ein Programm zum Betrieb einer akkugepufferten Uhr am Joystickport #2 der Amiga. Die Schaltung und das Programm sind an einen Artikel in der c't Ausgabe 8,1987 angelehnt. Die Schaltung wurde problemlos übernommen, das Pro- gramm in diesem Artikel weist aber einige syntaktische und logische Fehler auf und wurde deswegen von mir überarbeitet. Die wichtigsten Änderungen: - Berichtigung der Funktion CalcDate(), die von c't veröffentlichte Funktion errechnet in einem Schaltjahr in den Monaten Januar und Februar einen falschen Tag. - Die Überprüfung ob ein Jahr ein Schaltjahr ist, ist gekürzt worden, da das Jahr 2000 ein Schaltjahr ist und somit die Bedingung (Jahr durch 4 teilbar) für die nächsten hundert Jahre erfüllt ist. - Ich habe einige nicht benutzte Variablen entfernt. - Auf die Funktion printf() wurde ganz verzichtet, was ca. 4 KB Programm- code einspart. - Funktionen zur Timerverwaltung habe ich zusammengefaßt. Der Quelltext wurde dadurch zwar einiges länger, das Resultat ist aber ein 5 KB kürzerer Quelltext von nun ca. 6500 Bytes. TicTac kann auf drei Arten aufgerufen werden: 1> TicTac Die Uhrzeit des Uhrenchips wird gelesen und am Bildschirm ausgegeben. 1> TicTac load Uhrzeit des Chips wird gelesen und vom System übernommen. 1> TicTac save Die Systemzeit wird auf den Uhrenchip geschrieben. Anstatt TicTac load kann auch TicTac l oder TicTac lx usw. verwendet werden. Ebenso bei der Optoin save. Eine falsche Eingabe liefert die Hilfsfunktion, die den Aufruf anzeigt. TicTac liefert folgene Returncodes, die für die Startup-sequence wichtig sein können: Returncode Fehler *************************************************************************** 0 TicTac wurde ordungsgemäß ausgeführt und beendet. 10 Die Systemzeit der Amiga konnte nicht ermittelt werden, 11 Lesefehler bei der Datenübertragung, Uhr nicht angeschlossen ? 12 dto. jedoch bei Aufruf mit der Option 'load' 13 Die Systemzeit der Amiga konnte nicht geändert werden 21 AllocPotBits() lieferte einen Fehler,d.h irgenwas mit der Hardware ist nicht so, wie es sein sollte! 26 Die 'potgo.resource' konnte nicht geöffnet werden. 30 'dos.library' konnte nicht geöffnet werden. Der Aufbau der Schaltung ist relativ simpel. Eine Platine dafür zu ätzen ist nicht rentabel. Dafür werden einfach zu wenig Bauteile benötigt. Bauteile: 1 E050(C)-16 Uhren-IC 1 IC-Fassung 16polig 1 Trimmkondensator 3..12pF 1 Batterie (Akku lohnt sich nicht da I << 2µA) Mignonzelle 1.5V 1 Batteriehalter 1 Quarz 32.768 kHz 1 9pol. SubD Buchse 1 9pol. SubD Stecker Statt der SubD Stecker ist es besser eine allpolige Joystickverlängerung zu benuzten, da man hier den besseren Steckkontakt hat. Der Schaltplan befindet sich als IFF-File hier in dieser Schublade. Ebenso TicTac und TicTac.c (beides von mir verbesserte Versionen). Die genaue Beschreibung kann man in c't Heft 8,1987 nachlesen. Das UhrenIC dürfte nicht leicht zu bekommen sein. Ich hatte bei der Firma EDICTA in Stuttgart Erfolg (Tel. 0711/763381). Somit hat man für weniger als 30.- DM eine Akkugepufferte Uhr am Joystick- port#2. Alexander Peter/KL