1
0
mirror of https://github.com/PDP-10/its.git synced 2026-03-02 09:56:20 +00:00
Files
PDP-10.its/src/syseng/netrfc.3
Lars Brinkhoff 28e056e8fa Update NETRFC demon.
The newer version has support for selecting between signaling Dynamic
Modeling SYS;ATSIGN demons to handle ARPANET services, or for all
others, start a DEVICE;LBSIGN server.
2025-01-28 10:23:52 +01:00

100 lines
2.0 KiB
Groff
Executable File
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
TITLE NETRFC BOOTSTRAPPER
.MLLIT==1
A=1
B=2
Q=16
DEFINE SETF TEXT,FLG
IFDEF FLG,.STOP
.TAG FOOBAR
PRINTC "TEXT
FLG="
.TTYMAC FLAG
IFSE FLAG,YES,FLG==1
IFSE FLAG,NO,FLG==0
IFSE FLAG,Y,FLG==1
IFSE FLAG,N,FLG==0
IFNDEF FLG,FLG==FLAG
TERMIN
IFNDEF FLG,.GO FOOBAR
TERMIN
IF1 SETF Use Dynamod Daemons? ,DEMONP
BEG: MOVE A,[SQUOZE 0,IMPBPQ]
.EVAL A,
JRST ENDQ
IFE DEMONP, .SUSET [.SSNAME,,['DEVICE]] ;SYS ON DM, DEVICE ON ML/AI
MOVE Q,A
NEXTQ: MOVSS Q
HRRI Q,Q
.GETLOC Q,
JUMPL Q,ENDQ ;-1 IS END OF LIST
MOVSI A,1(Q)
HRRI A,A
.GETLOC A, ;GET SLOT 1, LCL SOCK
CAIL A,1000 ;SKIP IF SHOULD SIGNAL
JRST NEXTQ ;JUMP TO TRY ANOTHER ONE
DPB A,[000300,,LOGNAM] ;STASH IN 'RFC000
LSH A,-3
DPB A,[060300,,LOGNAM]
LSH A,-3
DPB A,[140300,,LOGNAM]
IFN DEMONP,{
.CALL [SETZ ? 'DEMSIG ? LOGNAM ? SETZ [0]] ;start server as daemon
JRST NORFC ;FAIL-LEAVE TRAIL
JRST ENDQ ;NEVER KNOW - MIGHT BE MORE
}
IFE DEMONP,{
.OPEN 1, FILE ;SEE IF SERVER EXISTS
JRST NEXTQ ;NO, COMPLETELY IGNORE
MOVSI 17, BOOT ;YES LOAD IT OVER OURSELVES
BLT 17, 17
.SUSET [.SSNAME,,LOGNAM];SET SNAME FOR PEEK
SETZM 20 ;PREPARE TO CLEAR CORE
JRST 0
BOOT: OFFSET -.
.CORE 1 ;FLUSH ALL BUT FIRST PAGE
.VALUE
BLT BLP,1777 ;CLEAR FIRST PAGE
.CALL LOAD ;LOAD THE SERVER
.VALUE ;WELL IT WAS THERE BEFORE!
;.VALUE SINCE NETRFC WILL KEEP SEEING IT
.IOT 1,0 ;GET START ADDRESS
.CLOSE 1, ;CLOSE LOAD CHANNEL
STRT:: JRST @0 ;START UP
BLP:: 20,,21 ;CORE-CLEARING BLT POINTER
LOAD:: SETZ
SIXBIT/LOAD/
MOVEI -1
SETZI 1
IFG .-20, .ERR BOOT SEQUENCE TOO BIG
OFFSET 0
}
IFN DEMONP,{ ;ON DM HANDLE RANDOM ONES
NORFC: MOVSI A,3(Q) ;SLOT 3, HOST CALLING
HRRI A,A
.GETLOC A,
LSH A,-8 ;GET HOST #
DPB A,[000300,,TRMNAM]
LSH A,-3
DPB A,[060300,,TRMNAM]
LSH A,-3
DPB A,[140300,,TRMNAM]
.CALL [SETZ ? 'LOGIN_6 ? LOGNAM ? SETZ TRMNAM]
JFCL ;DONT SVEAT IT
}
ENDQ: .LOGOUT
.VALUE
FILE: .UII,,'DSK
'LBSIGN
LOGNAM: 'RFC000
TRMNAM: 'HST000
END BEG