perm filename TIMSER.MID[S,NET]1 blob
sn#445567 filedate 1979-05-29 generic text, type C, neo UTF8
COMMENT ⊗ VALID 00002 PAGES
C REC PAGE DESCRIPTION
C00001 00001
C00002 00002 TIMSER QUIT TIME LSNBLK LSNSTS
C00004 ENDMK
C⊗;
;TIMSER QUIT TIME LSNBLK LSNSTS
TITLE TIMSER
SUBTTL Mark Crispin, SU-AI, May 1979
TIMSER: JFCL
RESET
MOVE ['TIMSER]
SETNAM
MOVEI [DEBREAK ? JRST QUIT]
MOVEM JOBAPR
CLKINT 30.*60. ; set up death time
INIT 17 ; open in dump mode
'IMP,, ; device IMP:
0 ; no buffers
JRST QUIT
MTAPE [17 ? .BYTE 6 ?1?5?5?1?0?0]; set timeouts
MTAPE LSNBLK
MOVE LSNSTS ; check for MTAPE error
TRNN 77
STATZ 763600
JRST QUIT
TLC 300000 ; for next instruction to win
TLCE 300000 ; legal socket state?
JRST QUIT
STDTIM 1, ; PST date/time
HLRZ 1 ; date (not SETZ since it may still
DAYCNT ; be yesterday
ADDI 55517 ; days from 1/1/00 to 1/1/64
IMULI 60.*60.*24. ; days → seconds
ADDI 60.*60.*8.(1) ; add in seconds and GMT/PST offset
DPB [044000,,TIME]
HRROI TIME-1 ; get ready to send a socket
SETZ 1, ; stop code for dump mode
OUTPUT
QUIT: RESET
EXIT ; and that's it
TIME: BLOCK 1 ; time now
LSNBLK: 1 ; LISTEN
LSNSTS: BLOCK 1 ; returned status bits
45 ; local socket to listen to
-1 ; ≠ 0 → wait for connection
32. ; byte size
BLOCK 1 ; foreign socket
BLOCK 1 ; foreign host
END TIMSER