im Programm Zeitabläufe kontrollieren zu müssen. Gerade in BASIC ist das recht schwierig. Aus solch einer Notwendigkeit entstand meine Software-Uhr. Erstmals veröffentlicht in der 19. Club-Info Seite 15. Sie belegt die Map Area von 7952H bis 7993H und gerät deswegen kaum in Konflikt mit anderen Programmen. Die Uhr startet bei 0 in der rechten oberen Ecke und wird in MODE(1) automatisch ausgeblendet. Sie kann selbstverständlich auch gestellt, gestoppt und dauerhaft ausgeblendet werden.
Sie nutzt den 50 ms Austast-Impuls der Interrupt Service Routine und läuft im Timesharing Verfahren. Solange der Interrupt z.B. bei Disketten- oder Kassettenzugriffen ausgeschaltet wird, bleibt sie stehen.
|
Abgefragt werden kann mit : STUNDE = PEEK (30792)MINUTE = PEEK (30793) SEKUNDE = PEEK (30794) In Verbindung mit dem USER-PORT kann der VZ 200 / LASER damit z.B. zeitgesteuert Relais schalten. |
|
15 REM**SOFTWARE-UHR G.TILLMANNS/DORFSTR.44/34632 JESBERG'93**
20 DATA33,75,120,17,49,120,6,4,26,52,190,32,7,54,0,27,43,16,245
25 DATA201,58,59,120,203,95,192,6,3,33,72,120,17,23,112,62,45
30 DATA205,144,121,126,14,47,12,214,10,48,251,198,58,205,138
35 DATA121,35,16,235,201,245,121,205,144,121,241,18,19,201,1
39 FORI= 31058TO 31123 :READ A:POKE I,A: NEXT
40 REM *** ZAEHLER SETZEN ***
45 POKE 30766,24:REM STUNDEN
50 POKE 30767,60:REM MINUTEN
55 POKE 30768,60:REM SEKUNDEN
60 POKE 30769,50:REM TAKTE
65 REM *** UHR AUF NULL ***
70 POKE 30792,00:REM STUNDEN
75 POKE 30793,00:REM MINUTEN
80 POKE 30794,00:REM SEKUNDEN
85 POKE 30795,00:REM TAKTE
90 REM *** INTERRUPT EIN ***
95 POKE 30847,121
100 POKE 30846,82
105 POKE 30845,195
106 DELETE15-106
110 REM *** UHR STELLEN ***
115 POKE30769,50:POKE29779,45
120 CLS:PRINT
125 PRINT"WIEVIEL UHR IST ES ?":PRINT
130 INPUT"STUNDE";STD
135 INPUT"MINUTE";MIN
140 INPUT"SEKUNDE";SEK
145 PRINT:PRINT:PRINT"BEI TASTENDRUCK WIRD DIE"
150 PRINT"UHR AUF"STD"-"MIN"-"SEK"GESTELLT"
155 FORI=0TO1000:NEXT
160 POKE30873,0:IFPEEK(30873)=0THEN160
164 POKE30792,STD:POKE30793,MIN:POKE30794,SEK:POKE30795,0
165 REM *******************************************************
170 :REM POKE 30845,210 :' UHR AUSSCHALTEN
175 :REM POKE 30845,195 :' UHR EINSCHALTEN
180 :REM POKE 31083,201 :PRINT@23," "; :'ANZEIGE
AUSSCHALTEN
185 :REM POKE 31083,192 :'ANZEIGE EINSCHALTEN
190 REM ******************************************************