Google
 

Trailing-Edge - PDP-10 Archives - BB-H348C-RM_1982 - swskit-v21/demos/vt100.mac
There are no other files named vt100.mac in the archive.
TITLE VT100 Send fancy graphics to a VT100

COMMENT #

	This subroutine requires no arguments. If it is run on
a VT100 with terminal type set to VT100, then it draws a box
at the top of the screen with the demo titles and sets scrolling
for the remainder of the screen. 15 lines are available beneath
the frozen area.

#
	SALL
	SEARCH MONSYM,MACSYM

	T1=1
	T2=2
	T3=3
	T4=4

	P=17	;PUSH DOWN STACK
;
;
VTINIT::	

	MOVE T1,[0,,-1]			;THE CONTROLLING TERMINAL
	GTTYP				;GET THE TYPE
	CAIE T2,.TT100			;IF NOT VT100 RETURN
	RET
					;
	RFCOC				;READ THE CONTROL CHARACTER WORDS
	AND T3,[777777,,177777]		;TURN OFF ESCAPE STUFF
	OR T3,[0,,400000]		;SEND ACTUAL CODE FOR ESCAPE
	SFCOC				;SET IT
	MOVEI T2,.MOSLW			;TERMINAL WIDTH
	SETZ T3,			;OF ZERO
	MTOPR				;SET IT
	MOVEI T2,.MOSLL			;PAGE LENGTH
	MTOPR
					;
	HRROI T1,HOMCLR			;
	PSOUT				;HOME THE CURSOR AND CLEAR THE SCREEN
	TMSG <  >
	HRROI T1,SPG			;ENABLE SPECIAL GRAPHICS
	PSOUT
	HRROI T1,DHT			;DOUBLE HEIGHT TOP
	PSOUT
	TMSG <lqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqk> ;TOP OF THE BOX
	MOVE T2,[-^D7,,0]
	HRROI T1,SP1			;RIGHT HAND SIDE OF BOX
	PSOUT
	AOBJN T2,.-2
	HRROI T1,SP5			;LOWER RIGHT CORNER
	PSOUT
	MOVE T2,[-^D35,,0]
	HRROI T1,SP2			;BOTTOM OF BOX
	PSOUT
	AOBJN T2,.-2
	HRROI T1,SP3			;LEFT BOTTOM CORNER
	PSOUT
	MOVE T2,[-^D6,,0]
	HRROI T1,SP4			;LEFT SIDE OF BOX
	PSOUT
	AOBJN T2,.-2
	HRROI T1,NGR			;TURN OFF SPECIAL GRAPHICS
	PSOUT
	HRROI T1,SP6			;POSITION CURSOR
	PSOUT
	TMSG < Digital Equipment Corporation
>
	HRROI T1,SP7			;POSITION THE CURSOR
	PSOUT
	HRROI T1,DHB			;NOW DO THE BOTTOM
	PSOUT
	TMSG <  Digital Equipment Corporation
>
	TMSG <
>
	HRROI T1,SP7			;POSITION THE CURSOR
	PSOUT
	TMSG <   Distributed Data Processing
>
	HRROI T1,DHB
	PSOUT
	HRROI T1,SP7
	PSOUT
	TMSG <   Distributed Data Processing


>
	HRROI T1,SP8			;SET THE SCROLLING WINDOW
	PSOUT
	MOVE T2,[-^D10,,0]
	HRROI T1,SP9			;POSITION THE CURSOR
	PSOUT
	AOBJN T2,.-2
	RET
;
;
HOMCLR:	BYTE(7) 33,133,"H",33,133,"2","J",0
HOM:	BYTE(7) 33,133,"H",0
DHT:	BYTE(7) 33,"#","3",0
DHB:	BYTE(7)	33,"#","4",0
SPG:	BYTE(7) 33,"(","0",0
NGR:	BYTE(7) 33,"(","B",0
SP1:	BYTE(7) 33,"#","3",33,"[","D",33,"[","B","x",0
SP2:	BYTE(7) 33,"[","D",33,"[","D","q",0
SP3:	BYTE(7)	33,"[","D",33,"[","D","m",0
SP4:	BYTE(7) 33,"[","D",33,"[","A","x",0
SP5:	BYTE(7) 33,"#","3",33,"[","D","j",0
SP6:	BYTE(7) 33,"[","B",33,"[","C",0
SP7:	BYTE(7) 33,"[","C",33,"[","C",33,"[","C",0
SP8:	BYTE(7) 33,"[","?","6","l",33,"[","1","0",";","2","4","r",0
SP9:	BYTE(7) 33,"[","B",0

	END