10  REM
20  W1=0
30  S1=0
40  DIM P0$[80]
50  PRINT CHR$(27);"H"
60  PRINT CHR$(27);"J"
70  SYSTEM P0$,"TIM"
80  DIM V$[10]
90  DIM Z$[72]
100  PRINT CHR$(27);"H"
110  V$="#"
120  DIM A[14],D$[40],N$[26],Q$[3]
130  DATA 0,31,60,91,121,152,182,213,244,274,305,335,366,999
140  DATA 0,31,59,90,120,151,181,212,243,273,304,334,365,999
150  LET S=TIM(0)
160  LET H=TIM(1)
170  LET D=TIM(2)
180  LET Y=TIM(3)
190  LET Z=TIM(4)
200  LET N$="0123456789000000000000000"
210  LET D$="  -  -     :  :   AM  PORT #"
220  ENTER #P
230  LET Q=P
240  CONVERT Z TO D$[16,17]
250  GOSUB 680
260  LET D$[29,30]=Q$
270  LET Q=H
280  IF (H*100+S)<1201 THEN 320
290  LET D$[19,20]="PM"
300  IF H<13 THEN 320
310  LET Q=H-12
320  GOSUB 680
330  LET D$[10,11]=Q$
340  LET Q=S
350  GOSUB 680
360  LET D$[13,14]=Q$
370  IF Y/4=INT(Y/4) THEN 660
380  RESTORE 140
390  MAT  READ A
400  FOR I=1 TO 14
410  IF D>A[I] THEN 650
420  IF I<14 THEN 460
430  LET D=D-A[13]
440  LET Y=Y+1
450  GOTO 220
460  LET Q=I-1
470  GOSUB 680
480  LET D$[1,2]=Q$
490  LET Q=D-A[I-1]
500  GOSUB 680
510  LET D$[4,5]=Q$
520  LET Q=Y
530  GOSUB 680
540  LET D$[7,8]=Q$
550  IF W1>0 THEN 570
560  GOTO 580
570  S1=60
580  ENTER S1,X,V$
590  IF V$="" THEN 740
600  PRINT TAB(25);D$
610  W1=W1+1
620  CONVERT P0$[23,27] TO P0
630  IF P0>300 THEN 760
640  IF X=-256 THEN 70
650  NEXT I
660  RESTORE 130
670  GOTO 390
680  REM NUMBER-TO-STRING
690  LET N=INT(Q/10)
700  LET Q$[1,1]=N$[N+1,N+1]
710  LET N=Q-N*10
720  LET Q$[2,2]=N$[N+1,N+1]
730  RETURN 
740  STOP 
750  S1=25
760  PRINT '7"YOU HAVE BEEN LOGGED OF BY THE SYSTEM .... INACTIVITY FOR 5 HRS."
770  SYSTEM X,"BYE"
780  REM
790  END 
