mirror of
https://github.com/PDP-10/its.git
synced 2026-01-30 21:41:56 +00:00
Make XGP/GLP work when you're not at MIT.
This is mostly replacing references to AI:/MC: with DSK:, so this can be used with a local spool directory.
This commit is contained in:
committed by
Adam Sampson
parent
124b021123
commit
ae355003f2
@@ -41,6 +41,7 @@ nd. datlen==300. ; length of one queue request
|
||||
nd. notbfl==10. ; length in words of maximum /notify argument.
|
||||
nd. txtbfl==100 ; length of TXTBUF (used for reading from file to be printed).
|
||||
nd. maxfnt==16. ; number of fonts allowed (for squishing).
|
||||
nd. mit==0 ; assume AI/MC exist (if 0, use local spooler)
|
||||
nd. glp==0 ; assembling for the GLP spooler.
|
||||
nd. spldir=='.XGPR. ; spooling directory
|
||||
nd. deffn1==%zeros ; default FN1
|
||||
@@ -545,10 +546,12 @@ prsfn4: caie a,^J
|
||||
movsi a,'kst ;This also processes any switches inside them.
|
||||
movem a,fntfn2
|
||||
pushj p,rfname
|
||||
ifn mit,[
|
||||
ife glp,[
|
||||
move b,machin ;Only AI gets new features - RMS.
|
||||
came b,[sixbit /ai/]
|
||||
jrst prsfn4
|
||||
]
|
||||
]
|
||||
syscal open,[[.bii,,chdsk] ? fntdev ? fntfn1 ? fntfn2 ? fntsnm]
|
||||
jrst fntfnf
|
||||
@@ -949,8 +952,11 @@ aitype: skipe debug ; if debugging...
|
||||
push p,x ; save selected file name
|
||||
syscal OPEN,[clctl. .uao ; open in single ASCII output
|
||||
clarg. chque ; QUEue channel
|
||||
ifn mit,[
|
||||
ife glp, clarg. sixbit/AI/ ; on the AI machine
|
||||
ifn glp, clarg. sixbit/MC/ ; on the MC machine
|
||||
]
|
||||
ife mit, clarg. sixbit/DSK/ ; on this machine
|
||||
clarg. '_QUEUE ; FN1 of _QUEUE
|
||||
clarg. 'OUTPUT ; FN2 of OUTPUT
|
||||
quedir] ; on to the queueing directory
|
||||
@@ -986,8 +992,11 @@ ifn glp, clarg. sixbit/MC/ ; on the MC machine
|
||||
jrst [ movx x,'Q1 ; yes, force priority to be
|
||||
movx b,sixbit/0/ ; next file to be printed...
|
||||
syscal OPEN,[clarg. chdsk ; OPEN up DSK hack channel
|
||||
ifn mit,[
|
||||
ife glp, clarg. sixbit/AI/; on the AI machine
|
||||
ifn glp, clarg. sixbit/MC/ ;or MC
|
||||
]
|
||||
ife mit, clarg. sixbit/DSK/ ;on this machine
|
||||
x ? b ? quedir]; for the priority queue
|
||||
jrst .+1 ; can queue, no previous
|
||||
jrst cantq] ; can't queue, give stange message
|
||||
@@ -996,9 +1005,11 @@ ifn glp, clarg. sixbit/MC/ ;or MC
|
||||
jrst aidown ; AI/IMP crashed???
|
||||
pushj p,pqnum ; Type out the "queue number" the file got.
|
||||
.close chque, ; and queue it
|
||||
ifn mit,[
|
||||
ife glp,[
|
||||
move a,machin ; On AI, print sizes of queues.
|
||||
camn a,[sixbit /ai/] ; Other machines don't get new features.
|
||||
]
|
||||
]
|
||||
pushj p,pqsize ; Besides, this implementation would be too slow.
|
||||
jrst fetch ; Now maybe get another TTY command
|
||||
@@ -1062,11 +1073,14 @@ repeat 2,[push p,y ; save rest of date
|
||||
jrst quecr ; and stick in a cr/lf
|
||||
|
||||
;Output the filenames into the queue file.
|
||||
quefil: move b,device
|
||||
quefil:
|
||||
move b,device
|
||||
ifn mit,[
|
||||
move a,machin
|
||||
camn b,['DSK,,]
|
||||
movem a,device
|
||||
movei b,device
|
||||
]
|
||||
move d,[440700,,fnmbuf]
|
||||
pushj p,rfn"pfn ; Convert text file name to a string.
|
||||
move d,[440700,,fnmbuf]
|
||||
@@ -1285,8 +1299,11 @@ canwin: addx c,<sixbit/ Q/-" > ; convert to SIXBIT queue name(ie, Qn)
|
||||
caie c,^M ; insist on an EOL
|
||||
jrst canluz ; lost
|
||||
syscal DELETE,[
|
||||
ifn mit,[
|
||||
ife glp, clarg. sixbit/AI/; flush request on AI machine
|
||||
ifn glp, clarg. sixbit/MC/ ;or MC
|
||||
]
|
||||
ife mit, clarg. sixbit/DSK/ ;on this machine
|
||||
fn1 ? w ; queue class/priority
|
||||
clarg. spldir] ; spooling directory
|
||||
caia ; lost
|
||||
@@ -1303,16 +1320,20 @@ canluz: type [Error; Improper syntax for ;CANCEL
|
||||
; Do a ;CANCEL nnn first if you want it to be cancelled.
|
||||
quit:
|
||||
ife glp,[
|
||||
ifn mit,[
|
||||
move a,[sixbit/AICLI/] ; Use device name AICLI if not on AI.
|
||||
movsi b,(sixbit/AI/)
|
||||
camn b,machine ; Use just CLI if on AI.
|
||||
]
|
||||
movsi a,'CLI
|
||||
syscal open,[[.uao,,chdsk] ? a ? [sixbit/XGP/] ? [sixbit/XGPSPL/]]
|
||||
]
|
||||
ifn glp,[
|
||||
ifn mit,[
|
||||
move a,[sixbit/MCCLI/] ; Use device name MCCLI if not on MC.
|
||||
movsi b,(sixbit/MC/)
|
||||
camn b,machine ; Use just CLI if on MC.
|
||||
]
|
||||
movsi a,'CLI
|
||||
syscal open,[[.uao,,chdsk] ? a ? [sixbit/GLP/] ? [sixbit/GLPSPL/]]
|
||||
]
|
||||
@@ -1335,14 +1356,18 @@ cantq: tlnn f,f%tty
|
||||
ife glp,[
|
||||
type [Error; Sorry, XGP queueing temporarily forbidden
|
||||
]
|
||||
syscal OPEN,[ [.uai,,chdsk] ? [SIXBIT /AI/]
|
||||
syscal OPEN,[ [.uai,,chdsk]
|
||||
ifn mit, [SIXBIT /AI/]
|
||||
ife mit, [SIXBIT /DSK/]
|
||||
[SIXBIT /XGP/] ? [SIXBIT /NOTICE/]
|
||||
[SIXBIT /.XGPR./]]
|
||||
]
|
||||
|
||||
.else [ type [Error; Sorry, GLP queueing temporarily forbidden
|
||||
]
|
||||
syscal OPEN,[ [.uai,,chdsk] ? [SIXBIT /MC/]
|
||||
syscal OPEN,[ [.uai,,chdsk]
|
||||
ifn mit, [SIXBIT /MC/]
|
||||
ife mit, [SIXBIT /DSK/]
|
||||
[SIXBIT /GLP/] ? [SIXBIT /NOTICE/]
|
||||
[SIXBIT /.GLPR./]]
|
||||
]
|
||||
@@ -1474,7 +1499,9 @@ prsc3e: sojl d,prsc1
|
||||
|
||||
;Look through the semicolon commands in the first page of the input file for a ;SQUISH.
|
||||
|
||||
sqchk: move a,device ;But first, if we are not on AI and the file is,
|
||||
sqchk:
|
||||
ifn mit,[
|
||||
move a,device ;But first, if we are not on AI and the file is,
|
||||
and a,[777700,,] ;it would be more efficient to let the spooler squish.
|
||||
ife glp, came a,[sixbit /ai/]
|
||||
.else came a,[sixbit /mc/]
|
||||
@@ -1483,6 +1510,7 @@ ife glp, came a,[sixbit /ai/]
|
||||
ife glp, camn a,[sixbit /ai/]
|
||||
.else camn a,[sixbit /mc/]
|
||||
jrst sqchk0
|
||||
]
|
||||
tlz f,f%sqsh ;So if that's the case, don't look in file for ;SQUISH
|
||||
popj p, ;and if the user gave it as a switch, just pass to spooler.
|
||||
|
||||
Reference in New Issue
Block a user