|
|
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: 2880 (0xb40)
Types: TextFile
Notes: Mikados_K
Names: »UR.K«
└─⟦5630b2e42⟧ Bits:30009005 START APRIL 1985 aft april 1985 (PASCAL kildetekster)
└─⟦this⟧ »UR.K«
└─⟦6c21327e0⟧ Bits:30008986 LINIMATIC K-FILER (IKKE HELT UPTODTATE)
└─⟦this⟧ »UR.K«
PROCEDURE UR;
VAR C,CH:CHAR;
BEGIN
SETUP(DBUF,LNGTH);
C:=' ';
IF TÆNDT THEN
BEGIN
GOTOXY(62,1);WRITE('Alarm');
IF ALARM THEN BEGIN GOTOXY(72,1);WRITE(ALARMTIME) END;
GOTOXY(62,2);WRITE('Time');
END;
SV:=-1;
REPEAT
IF C<>CLOCK^.TIME(8) THEN
BEGIN
IF TÆNDT THEN
BEGIN
GOTOXY(67,2);
WRITE(CLOCK^.TIME);
END;
C:=CLOCK^.TIME(8);
OFFSET:=TIME;
IF STIMER>0 THEN STIMER:=STIMER-1
END;
IF TÆNDT THEN
BEGIN
GOTOXY(76,2);
WRITE((TIME-OFFSET) MOD 100:4);
END;
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;
IF TÆNDT THEN
BEGIN
GOTOXY(60,3);
WRITE(MIN:4,SEC:3,SEC100:3);
END;
END;
IF ALARM THEN IF ALARMTIME<=CLOCK^.TIME THEN HOWL:=TRUE;
IF TÆNDT THEN
IF HOWL THEN WRITE(CHR(7));
IF AVAIL THEN
BEGIN
CH:=NEXT;
IF CH IN (.'a'..'å'.) THEN CH:=CHR(ORD(CH)-32);
IF TÆNDT OR (CH='T') OR (CH IN (.'0'..'9'.)) THEN
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;
'T':TÆNDT:=NOT TÆNDT;
'0','1','2','3','4','5','6','7','8','9':BEGIN SV:=ORD(CH)-48;
IF SV=1 THEN DELAY(20);
IF AVAIL THEN
BEGIN
CH:=NEXT;
IF CH IN (.'0'..'9'.) THEN
SV:=10*SV+ORD(CH)-48
END;
WRITELN(SV) 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;
FINIS
END;