Trailing-Edge
-
PDP-10 Archives
-
steco_19840320_1er_E35
-
10,5676/teco/source/tecads.mac
There are 3 other files named tecads.mac in the archive. Click here to see a list.
SUBTTL Introduction
; Copyright (c) 1980 Stevens Institute of Technology, Hoboken, New Jersey
; 07030.
; This software may be used and copied provided that this copyright notice
;is included, and provided that copies of all modifications are sent to:
;
; TECO Project
; Computer Center
; Stevens Institute of Technology
; Castle Point Station
; Hoboken, New Jersey 07030
;
;
; The information in this software is subject to change without notice
; and should not be construed as a commitment by Stevens Institute of
; Technology.
; Search needed universals
SEARCH TECUNV ; TECO universal file
; Generate the prologue
TECVER==200 ; Major version number
TECMIN==1 ; Minor version number
TECEDT==1126 ; Edit level
TECWHO==0 ; Last editor
PROLOGUE(ADS,<TECO ADDS terminal support>) ; Generate the TITLE and other stuff
$CODE ; Put into code PSECT
SUBTTL Table of Contents
;+
;.pag.lit
; Table of Contents for TECADS - ADDS terminal support
;
;
; Section Page
; 1. Introduction . . . . . . . . . . . . . . . . . . . . . 1
; 2. Table of Contents. . . . . . . . . . . . . . . . . . . 2
; 3. Revision History . . . . . . . . . . . . . . . . . . . 3
; 4. Tables
; 4.1. ADDS-580. . . . . . . . . . . . . . . . . . . 5
; 4.2. Regent-25 . . . . . . . . . . . . . . . . . . 6
; 5. Support routines
; 5.1. ADDS Consul 580
; 5.1.1. Delete a line feed . . . . . . . . . 7
; 5.1.2. Delete a vertical tab. . . . . . . . 8
; 5.2. ADDS Consul-580
; 5.2.1. Delete a form feed . . . . . . . . . 9
; 5.3. ADDS Consul 580
; 5.3.1. Delete to End of line. . . . . . . . 10
; 5.4. Regent 25
; 5.4.1. XY positioning . . . . . . . . . . . 11
; 5.5. Regent-25
; 5.5.1. Control U. . . . . . . . . . . . . . 12
; 6. Low segment. . . . . . . . . . . . . . . . . . . . . . 14
; 7. End of TECADS. . . . . . . . . . . . . . . . . . . . . 15
;.end lit.pag
;-
SUBTTL Revision History
COMMENT |
1000 Start of this version
Start of Version 200A(1126)
|
; Macro to define a word of five characters
DEFINE TB(A<.CHNUL>,B<.CHNUL>,C<.CHNUL>,D<.CHNUL>,E<.CHNUL>)
< BYTE (7)A,B,C,D,E>
SUBTTL Tables -- ADDS-580
CRTINI VADD5
CRTENT BCK,<TB(.CHCNU,.CHCNH)>
CRTENT SPC,<TB(" ")>
CRTENT DBS,<TB(" ",.CHCNU,.CHCNH)>
CRTENT DLF,<PUSHJ P,AD5DLF>
CRTENT DVT,<PUSHJ P,AD5DVT>
CRTENT DFF,<PUSHJ P,AD5DFF>
CRTENT CRB,<TB(.CHCNU,.CHCNH)>
CRTENT CBS,<TB(.CHCNU,.CHCNH)>
CRTEND
SUBTTL Tables -- Regent-25
CRTINI VRG25
CRTENT BCK,<TB(.CHCNH)>
CRTENT SPC,<TB(.CHCNF)>
CRTENT DBS,<TB(" ",.CHCNH)>
CRTENT DLF,<PUSHJ P,AD5DLF>
CRTENT DVT,<PUSHJ P,AD5DVT>
CRTENT DFF,<PUSHJ P,AD5DFF>
CRTENT CRB,<TB(.CHCNH)>
CRTENT CTU,<PUSHJ P,RG2CTU>
CRTENT ERS,<TB(.CHFFD)>
CRTENT DEL,<PUSHJ P,AD5DEL>
CRTENT DSP,.CHSPC
CRTENT XYP,<PUSHJ P,RG2XY> ; XY positioning routine
CRTENT LIN,^D20
CRTENT WID,^D79
CRTENT CDE,<MOVEI T1,2> ; Cost to delete to end of line
CRTEND
SUBTTL Support routines -- ADDS Consul 580 -- Delete a line feed
;+
;.HL1 AD5DLF
;This routine will send the character string to delete a line feed.
;.literal
;
; Usage:
; MOVE CRT,CRT.block.address
; PUSHJ P,@$CRDLF(CRT)
; (Return)
;.end literal
;-
AD5DLF: MOVX CH,.CHCNZ ; Get the character
PJRST SC$IMG ; And output it
SUBTTL Support routines -- ADDS Consul 580 -- Delete a vertical tab
;+
;.HL1 AD5DVT
;This routine will send the character string to delete a vertical tab.
;.literal
;
; Usage:
; MOVE CRT,CRT.block.address
; PUSHJ P,@$CRDVT(CRT)
; (Return)
;
;.end literal
;-
AD5DVT: MOVX T1,4 ; And the number to delete
AD5D.0: MOVX CH,.CHCNZ ; Get the character
PUSHJ P,SC$IMG ; Output the character
SOJG T1,.-1 ; Loop for all of them
POPJ P, ; And return
SUBTTL Support routines -- ADDS Consul-580 -- Delete a form feed
;+
;.HL1 AD5DFF
;This routine will send the character string to delete a form feed.
;.literal
;
; Usage:
; MOVE CRT,CRT.block.address
; PUSHJ P,$CRDFF(CRT)
; (Return)
;
;.end literal
;-
AD5DFF: MOVX T1,^D8 ; Delete 8 line feeds
PJRST AD5D.0 ; Go finish up
SUBTTL Support routines -- ADDS Consul 580 -- Delete to End of line
;+
;.Hl1 AD5DEL
;This routine will send a character string to delete to the end of the line.
;.literal
;
; Usage:
; MOVEI T1,# of characters to delete
; XCT $CRDEL(CRT)
;
;.end literal
;-
AD5DEL: MOVX T1,<BYTE (7) .CHESC,"K">
PJRST SC$STR ; Output to the screen
SUBTTL Support routines -- Regent 25 -- XY positioning
;+
;.HL RG2XY
;This routine will do the positioning for the Regent 25 terminal.
;.literal
;
; Usage:
; MOVE X,X.postion
; MOVE Y,Y.postion
; MOVE CRT,CRT.block.index
; PUSHJ P,@$CRXYP(CRT)
; (Return)
;
;.end literal
;-
RG2XY: ADDX X," " ; Convert to the positioning code
ADDX Y," " ; . . .
MOVEI T1,[$STRING(<_Y^8/Y/^8/X/>)] ; Get the string
PJRST ; Output the string
SUBTTL Support routines -- Regent-25 -- Control U
;+
;.HL1 RG2CTU
;This routine will process the control U in the command parser. It
;may be called without CRT being set up.
;.literal
;
; Usage:
; MOVE CRT,CRT.block.address
; PUSHJ P,@$CRCTU(CRT)
; (Return)
;
;.end literal
;-
RG2CTU: MOVX T1,<BYTE(7).CHCRT,.CHESC,"K"> ; Get the string
PUSHJ P,SC$STR ; output it
MOVX CH,.CHCRT ; Get the carriage return
PJRST T$OCHR ; And inform the monitor where we are
SUBTTL Support routines -- Consul 580 -- XY positioning
SUBTTL Low segment
$IMPURE ; Put in correct place
ADSBEG:!
LOWVER(ADS,<.-ADSBEG>) ; Define the version number
SUBTTL End of TECADS
END ; End of TECADS