Trailing-Edge
-
PDP-10 Archives
-
BB-M836B-BM
-
tools/sed/seda2.mac
There are 2 other files named seda2.mac in the archive. Click here to see a list.
TITLE SEDA2 - ADM2 TERMINAL DEFINITIONS FOR THE EDITOR
SUBTTL A CHRISTOPHER HALL FECIT
;THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY ONLY BE USED
; OR COPIED IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE.
;
;COPYRIGHT (C) 1981 BY DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASS.
;LOAD THE EDITOR BY: .LOAD SEDA2,SED
SEARCH SEDSYM
IFE TOPS10,<SEARCH MONSYM>
EXTERN CPOPJ,PUTTYP,PUTSTG,PUTNUM,PUTSQ1,TRMNAM
INTERN TERMNL
TERMNL: OADM2 ;ADDRESS OF THE TERMINAL TABLE TO USE
OADM2: BYTE (7) 13 ;CURSOR UP
BYTE (7) 12 ; DOWN
BYTE (7) 14 ; RIGHT
BYTE (7) 10 ; LEFT
BYTE (7) 36 ; HOME
BYTE (7) 33,"Y" ;CLEAR PAGE
BYTE (7) 33,"T" ;CLEAR LINE
BYTE (7) 12 ;ROLL UP AND CLEAR LINE
BYTE (7) 33,"E" ;ROLL DOWN AND CLEAR LINE
BYTE (7) 33,")" ;PROTECT ON
BYTE (7) 33,"(" ;PROTECT OFF
BYTE (7) 33,"E" ;INSERT A BLANK LINE
BYTE (7) 33,"Q" ;INSERT A SPACE
BYTE (7) 33,"R" ;DELETE LINE
BYTE (7) 33,"W" ;DELETE SPACE
BYTE (7) 36,13 ;MOVE TO BOTTOM
BYTE (7) 36,33,"Y" ;HOME AND CLEAR PAGE
ADMPSC ;ROUTINE TO POSITION TO CHARACTER
ADMPSL ;ROUTINE TO POSITION TO START OF LINE
^D24 ;LINES PER PAGE
^D80 ;CHARACTERS PER LINE
WRP!LSD!NRD ;FLAGS (WRAPAROUND, LF=DOWN, NO ROLL DOWN)
CPOPJ ;ROUTINE TO CALL ON ENTRY
CPOPJ ;ROUTINE TO CALL ON EXIT
0 ;NO NULLS NEEDED
IADM2 ;ADDRESS OF TERMINAL INPUT TABLE
0 ;COMMAND FOR RUBOUT (RESET)
IADM2: 40
-14,,IAADM2 ;^A NEEDS A SUBTABLE
EXP 2, 3, 4, 5, 6, 7
EXP 10,11,50,36,35,15,16,17 ;^K AND ^L ALTERED
EXP 20,21,22,23,24,25,26,27
EXP 30,31,32,33,34,35,37,43 ;36==HOME; 37==REAL-TAB
IAADM2: IADF16,,"O" ;^A O CR == 16 == ENTER
IADF01,,"@" ;^A @ CR == 1 == INSERT-SPACES
IADF02,,"A" ;^A A CR == 2 == DELETE-SPACES
IADF03,,"B" ;^A B CR == 3 == SLIDE-LEFT
IADF04,,"C" ;^A C CR == 4 == SLIDE-RIGHT
IADF13,,"L" ;^A L CR == 13 == ERASE-CHARACTER
IADF14,,"M" ;^A M CR == 14 == INSERT MODE
IADF15,,"N" ;^A N CR == 15 == RECALL
IADF08,,"G" ;^A G CR == 8 == REAL TAB
IADF12,,"K" ;^A K CR == 12 == MARK
IADF11,,"J" ;^A J CR == 11 == ERASE-LINE
IADF10,,"I" ;^A I CR == 10 == WINDOW
IADF01: "A"-100,,0
IADF02: "S"-100,,0
IADF03: "K"-100,,0
IADF04: "L"-100,,0
IADF08: 43,,0
IADF12: 44,,0
IADF13: 42,,0
IADF14: 41,,0
IADF15: 40,,0
IADF16: 33,,0
IADF11: 50,,0
IADF10: 47,,0
;POSITIONING ALGORITHMS
ADMPSC: MOVE T1,[BYTE (7) 33,"="]
PUSHJ P,PUTSQ1 ;START IT OFF
MOVEI T1,40(RW) ;GET ROW POSITION
IDPB T1,TY
MOVEI T1,40(CM) ;GET COLUMN POSITION
IDPB T1,TY
POPJ P, ;DONE
ADMPSL: MOVE T1,[BYTE (7) 33,"="]
PUSHJ P,PUTSQ1 ;START IT OFF
MOVEI T1,40(T4) ;GET ROW POSITION
IDPB T1,TY
MOVEI T1,40 ;MOVE TO COLUMN ZERO
IDPB T1,TY
POPJ P,
END