|
|
DataMuseum.dkPresents historical artifacts from the history of: MIKADOS |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about MIKADOS Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - download
Length: 2496 (0x9c0)
Types: TextFile
Notes: Mikados_K
Names: »NCLOCK.K«
└─⟦eb89399bc⟧ Bits:30008990 SOM ISFORIG, MEN KUN K-FILER
└─⟦this⟧ »NCLOCK.K«
PROCEDURE SETUP(VAR BUFFER:DIRECTBUF;LENGTH:INTEGER);
EXTERNAL;
FUNCTION AVAIL:BOOLEAN;
EXTERNAL;
FUNCTION NEXT:CHAR;
EXTERNAL;
PROCEDURE FINIS;
EXTERNAL;
PROCEDURE UR;
BEGIN
SETUP(DBUF,LNGTH);
C:=' ';
GOTOXY(62,1);WRITE('Alarm');
IF ALARM THEN BEGIN GOTOXY(72,1);WRITE(ALARMTIME) END;
GOTOXY(62,2);WRITE('Time');
SV:=-1
REPEAT
IF C<>CLOCK^.TIME(8) THEN
BEGIN
GOTOXY(67,2);
WRITE(CLOCK^.TIME);
C:=CLOCK^.TIME(8);
OFFSET:=TIME;
END;
GOTOXY(76,2);
WRITE((TIME-OFFSET) MOD 100:4);
IF STOPWATCH THEN
BEGIN
IF (TIME<0) AND (TT>0) THEN
SEC100:=SEC100+(32767-TT)+(32767+TIME+2)
ELSE
SEC100:=SEC100+TIME-TT;
TT:=TIME;
SEC:=SEC+SEC100 DIV 100;SEC100:=SEC100 MOD 100;
MIN:=MIN+SEC DIV 60; SEC:=SEC MOD 60;
GOTOXY(60,3);
WRITE(MIN:4,SEC:3,SEC100:3);
END;
IF ALARM THEN IF ALARMTIME<=CLOCK^.TIME THEN HOWL:=TRUE;
IF HOWL THEN WRITE(CHR(7));
IF AVAIL THEN
BEGIN
CH:=NEXT;
CASE CH OF
'S':BEGIN
STOPWATCH:=NOT(STOPWATCH);
IF STOPWATCH THEN BEGIN MIN:=0;SEC:=0;SEC100:=0;TT:=TIME END;
END;
'U':BEGIN GOTOXY(67,2);FOR I:=1 TO 8 DO CLOCK^.TIME(I):=NEXT END;
'C':BEGIN STOPWATCH:=TRUE;TT:=TIME END;
'0','1','2','3','4','5','6','7','8','9':BEGIN FINIS;SV:=ORD(CH-48) END;
'M':BEGIN
GOTOXY(70,3);
IF STOPWATCH THEN
WRITE(MIN:4,SEC:3,SEC100:3);
END;
'A':BEGIN
HOWL:=FALSE;
ALARM:=NOT(ALARM);
CLOCK^.DATE(9):='0';
IF ALARM THEN
BEGIN
CLOCK^.DATE(9):='1';
GOTOXY(72,1);
FOR I:=1 TO 8 DO BEGIN CLOCK^.DATE(I):=NEXT;
ALARMTIME(I):=CLOCK^.DATE(I)
END;
GOTOXY(72,1);WRITE(ALARMTIME)
END;
END;
END;
END;
UNTIL SV>-1
END;