perm filename TVHELP[GEM,BGB] blob
sn#057504 filedate 1973-08-14 generic text, type C, neo UTF8
COMMENT ⊗ VALID 00002 PAGES
C REC PAGE DESCRIPTION
C00001 00001
C00002 00002 $UBR(TVHELP,FILLOC)
C00005 ENDMK
C⊗;
$UBR(TVHELP,FILLOC)
EXTERNAL REALIN
EXTERNAL DPYSET,DPYOUT,DPYBIG,DPYBRT,AIVECT,RIVECT,DTYO,DPYBUF
SETZM INHDR
INIT 17,↔SIXBIT/DSK/↔INHDR
GO [FATAL(CAN'T INIT DSK)]
LACI 1,2↔HRL 1,FILLOC
BLT 1,5
LOOKUP 17,2↔GO[OUTSTR[ASCIZ/HELP FILE NOT FOUND.
/]↔ POP1J ]
PUSH P,JOBFF
PUSH P,JOBREL
MOVE 1,JOBREL
MOVEM 1,JOBFF
LOOP: USETI 17,1↔SETSTS 17,0
OUTSTR[ASCIZ/PAGE = /]
CALL(REALIN)↔FIXX
JUMPE 0,RET
DAC 0,PAGNUM#
SOJLE 0,FOUND
PGLOOP: CALL(GETCHR)
GO[OUTSTR[ASCIZ/PAGE NOT FOUND.
/]↔ GO RET]
CAIE 1,14↔JRST PGLOOP
JRST PGLOOP-1
FOUND: CALL(DPYSET,DPYBUF)
CALL(AIVECT,[0],[=440])
CALL(DPYBIG,[1])
CALL(DPYBRT,[1])
SETZM LPOS#
CHLOOP: CALL(GETCHR)↔GO FIN
CAIN 1,14↔GO FIN
CAIN 1,11↔GO[CALL(DTYO,[40])
AOS 1,LPOS
TRNE 1,7↔GO $.-4
GO CHLOOP ]
CALL(DTYO,1)
AOS LPOS
LAC 1,1(P)
CAIE 1,15↔GO CHLOOP
SETZM LPOS
CALL(RIVECT,[1000],[0])
GO CHLOOP
FIN: CALL(DPYOUT,[16])↔GO LOOP
RET: RELEASE 17,↔POP P,JOBFF↔LAC 1,JOBFF
CORE 1,↔GO[FATAL(CAN'T SHRINK CORE)]
POP P,JOBFF↔POP1J
GETCHR: SOSG INHDR+2↔IN 17,
GO[ILDB 1,INHDR+1↔AOS(P)↔POP0J ] ;SKIP ON CHARACTER.
POP0J
INHDR: BLOCK 3
ENDR TVHELP
END