cdc:nos2.source:opl871:ds1
Table of Contents
DS1
Table Of Contents
- [00007] DS1 - 6612/DD60 DISPLAY ALIGNMENT TEST.
- [00009] 6612/DD60 DISPLAY ALIGNMENT TEST.
- [00054] DSM - MAIN PROGRAM.
- [00072] KBI - KEYBOARD INPUT AND INTERPRETATION.
- [00149] EEB - ERASE ENTRY BUFFER.
- [00164] CTL - CONTROL ROUTINE.
- [00318] TRA - TEST ROUTINE *A*.
- [00371] TRC - TEST ROUTINE *C*.
- [00417] TRD - TEST ROUTINE *D*.
- [00453] TRI - TEST ROUTINE *I*.
- [00485] TRS - TEST ROUTINE *S*.
- [00511] TRX - TEST ROUTINE *X*.
- [00553] TRZ - TEST ROUTINE *Z*.
- [00646] DSS - DISPLAY SYSTEM STATUS.
- [00658] FCN - FUNCTION CONSOLE FOR TUBE AND SIZE.
- [00674] TCR - SELECT TUBE, CHARACTER, SIZE.
- [00728] MDC - MODIFY CHANNEL INSTRUCTIONS.
- [00765] TCHS - TABLE OF CHANNEL INSTRUCTIONS.
- [00782] ATR - ADVANCE TEST ROUTINE.
- [00809] DRP - DROP DISPLAY.
- [00820] STR - SELECT TEST ROUTINE.
- [00889] TTC - TOGGLE TEST AND CONTROL.
- [00909] PRS - PRESET PROGRAM.
Source Code
- DS1.txt
- IDENT DS1,DSM
- PERIPH
- BASE MIXED
- SST RDS
- *COMMENT DS1 - 6612/DD60 DISPLAY ALIGNMENT TEST.
- COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
- TITLE DS1 - 6612/DD60 DISPLAY ALIGNMENT TEST.
- SPACE 4
- *** DS1 - 6612/DD60 DISPLAY ALIGNMENT TEST.
- * E. W. HOBBS. 69/01/23.
- SPACE 4
- ** COMMON DECKS.
- *CALL COMDMAC
- *CALL COMPMAC
- *CALL COMSCPS
- SPACE 4
- **** DIRECT LOCATION ASSIGNMENTS.
- NC EQU 15 NUMBER OF CP-S (FOR *COMDSYS*)
- XC EQU 16 X - COORDINATE
- YC EQU 17 Y - COORDINATE
- * *** NOTE *** KX, KY, KB MUST BE KEPT IN SEQUENCE
- KX EQU 26 KEYBOARD BUFFER X-COORDINATE
- KY EQU 27 KEYBOARD BUFFER Y-COORDINATE
- KB EQU 30 - 34 KEYBOARD BUFFER (5 LOC)
- KI EQU 35 KEYBOARD INDEX
- PA EQU 36 PROGRAM ADDRESS
- PI EQU 37 PROGRAM INDEX
- TS EQU 40 TUBE SWITCH
- TB1 EQU 41 TUBE 1 SELECTION
- TB2 EQU 42 TUBE 2 SELECTION
- PM EQU 43 TEST SELECTION MNEMONIC
- SZ EQU 44 SIZE CODE
- TB EQU 45 TUBE SELECTION
- CR EQU 46 CHARACTER SELECTION
- SIZ EQU 47 SIZE SELECTION
- EQ EQU 60 EST ORDINAL
- AF EQU 61 *ALL TESTS* FLAG
- ** ASSEMBLY CONSTANTS.
- NAME MICRO 1,, DS1
- CH EQU CHDS DISPLAY CHANNEL
- DSCT EQU 0 DISPLAY CYCLE (MS.)
- ****
- DSM TITLE DS1 - MAIN ROUTINE
- ORG PPFW
- ** DSM - MAIN PROGRAM.
- DSM RJM PRS PRESET
- DSM1 RJM KBI INPUT FROM KEYBOARD
- RJM 0,PA DISPLAY
- LDD TS TOGGLE TUBE SWITCH
- LMN 1
- STD TS
- RJM 0,PA
- RJM PSS PAUSE FOR SYSTEM
- UJN DSM1 LOOP
- KBI TITLE KEYBOARD INPUT ROUTINES.
- ** COMMON DECKS.
- *CALL COMPCHI
- KBI SPACE 4,10
- ** KBI - KEYBOARD INPUT AND INTERPRETATION.
- *
- * USES KB, KI, T1.
- *
- * CALLS ATR, DRP, EEB, HDC, HOL, TTC.
- KBI SUBR ENTRY/EXIT
- LDD CP
- ADN STSW
- CRD CM
- LDD CM+2
- LPN 1
- ZJN KBI0.0 IF NO ROLLOUT FLAG
- LJM DRP DROP DISPLAY
- KBI0.0 BSS 0
- FNC 7020,CH SELECT KEYBOARD INPUT
- ACN CH
- IAN CH
- DCN CH
- ZJN KBI0.1 IF NO INPUT
- LMC 0
- KBIA EQU *-1
- ZJN KBIX IF SAME INPUT
- LMM KBIA STORE NEW INPUT
- KBI0.1 STM KBIA
- ZJN KBIX RETURN IF NO INPUT
- STD T1 SAVE INPUT
- LMN 1R*
- NJN KBI1 IF NOT +*+
- RJM HDC HOLD DISPLAY CHANNEL
- UJN KBIX RETURN
- KBI1 LMN 1R$&1R*
- NJN KBI2 IF NOT *LEFT BLANK*
- RJM EEB ERASE ENTRY BUFFER
- LJM KBIX RETURN
- KBI2 LMN 1R &1R$
- NJN KBI3 IF NOT *RIGHT BLANK*
- LJM DRP DROP DISPLAY
- KBI3 LMN 1R.&1R
- NJN KBI4 IF NOT *.*
- RJM DDS DROP DISPLAY
- RJM RDS REQUEST DISPLAY
- RJM MDC MODIFY CHANNEL INSTRUCTIONS
- UJN KBI6 RETURN
- KBI4 LMN 60&1R.
- NJN KBI5 IF NOT *CR*
- RJM TTC TOGGLE BETWEEN TEST AND CONTROL
- UJN KBI6 RETURN
- KBI5 LMN 61&60
- NJN KBI7 IF NOT *BACKSPACE*
- LDD KI
- ZJN KBI6 RETURN IF FIRST ENTRY
- SOD KI DECREMENT KEYBOARD INDEX
- LDN 0 CLEAR PREVIOUS ENTRY
- STM KB,KI
- KBI6 LJM KBIX RETURN
- KBI7 LMN 62&61
- NJN KBI8 IF NOT *SPACE*
- RJM ATR ADVANCE TEST ROUTINE
- UJN KBI6 RETURN
- KBI8 LDD KI CHECK BUFFER INDEX
- LMN 4
- ZJN KBI6 RETURN IF BUFFER FULL
- LDD T1 STORE CHARACTER
- STM KB,KI
- AOD KI ADVANCE INDEX
- UJN KBI6 RETURN
- EEB SPACE 4
- ** EEB - ERASE ENTRY BUFFER.
- *
- * USES KB, KI.
- EEB SUBR ENTRY/EXIT
- EEB1 LDN 0 CLEAR ENTRY
- STM KB,KI
- SOD KI DECREMENT INDEX
- PJN EEB1 LOOP
- LDN 0
- STD KB
- STD KI RESET INDEX TO 0
- UJN EEBX RETURN
- CTL TITLE CONTROL ROUTINES
- ** CTL - CONTROL ROUTINE.
- *
- * USES T3, T4, T5.
- *
- * CALLS C6D, EEB.
- CTL SUBR ENTRY/EXIT
- RJM DSS DISPLAY SYSTEM STATUS
- FNC 7000,CH SELECT LEFT SCREEN, 64 CHARACTERS/LINE
- ACN CH
- LDC CTLAL DISPLAY LEFT SCREEN INSTRUCTIONS
- OAM CTLA,CH
- DCN CH
- LDN 10 DELAY
- SBN 1
- NJN *-1
- FNC 7001,CH SELECT LEFT SCREEN, 32 CHARACTERS/LINE
- ACN CH
- LDN CTLBL DISPLAY LEFT SCREEN HEADERS
- OAM CTLB,CH
- DCN CH
- LDN 10 DELAY
- SBN 1
- NJN *-1
- FNC 7100,CH SELECT RIGHT SCREEN, 64 CHARACTERS/LINE
- ACN CH
- LDN CTLCL DISPLAY RIGHT SCREEN HEADER
- OAM CTLC,CH
- DCN CH
- LDN 10 DELAY
- SBN 1
- NJN *-1
- FNC 7101,CH SELECT RIGHT SCREEN, 32 CHARACTERS/LINE
- ACN CH
- LDN CTLDL DISPLAY RIGHT SCREEN INSTRUCTIONS
- OAM CTLD,CH
- DCN CH
- LDN 10 DELAY
- SBN 1
- NJN *-1
- FNC 7102,CH SELECT RIGHT SCREEN, 16 CHARACTERS/LINE
- ACN CH
- LDN 6 DISPLAY KEYBOARD BUFFER
- OAM KX,CH
- DCN CH
- LJM CTLX RETURN
- CTLA BSS 0
- DATA 6000
- DATA 7660
- DATA H*TEST - SELECT FROM LIBRARY LIST.*
- DATA 6000
- DATA 7640
- DATA H*TUBE - L = LEFT*
- DATA 6070
- DATA 7630
- DATA H*R = RIGHT*
- DATA 6070
- DATA 7620
- DATA H*B = BOTH*
- DATA 6000
- DATA 7600
- DATA H*CHAR - CHARACTER DESIRED FOR DISPLAY*
- DATA 6000
- DATA 7560
- DATA H*SIZE - S = 64 CHARACTERS/LINE*
- DATA 6070
- DATA 7544
- DATA H*M = 32 CHARACTERS/LINE*
- DATA 6070
- DATA 7530
- DATA H*L = 16 CHARACTERS/LINE*
- DATA 6000
- DATA 7410
- DATA H*A = FULL ALPHABET. SELECT TUBE, SIZE.*
- DATA 6000
- DATA 7374
- DATA H*C = FULL SCREEN, ONE CHARACTER. SELECT TUBE, SIZE.*
- DATA 6000
- DATA 7360
- DATA H*D = 32 X 32 DOT RASTER. SELECT TUBE.*
- DATA 6000
- DATA 7344
- DATA H*I = 15 CHARACTERS EACH SIZE. SELECT TUBE.*
- DATA 6000
- DATA 7330
- DATA H*L = DISPLAY ALL TESTS. SELECT TUBE, CHAR, SIZE.*
- DATA 6000
- DATA 7314
- DATA H*S = SINGLE CHARACTER, CENTERED. SELECT TUBE, CHAR, *
- DATA H*SIZE.*
- DATA 6000
- DATA 7300
- DATA H*X = CROSSED DIAGONAL LINES. SELECT TUBE.*
- DATA 6000
- DATA 7264
- DATA H*Z = DOT/CHAR CENTERING COMPARISON. SELECT TUBE, SIZE*
- DATA 6000
- DATA 7154
- DATA H*CR - TOGGLE BETWEEN CONTROL AND TEST.*
- DATA 6000
- DATA 7140
- DATA H*BKSP - CORRECT TYPING ERROR.*
- DATA 6000
- DATA 7124
- DATA H*LEFT BLANK - ERASE ALL TYPED ENTRIES.*
- DATA 6000
- DATA 7110
- DATA H*RIGHT BLANK - DROP PROGRAM.*
- DATA 6000
- DATA 7060
- DATA H+* - HOLD DISPLAY CHANNEL.+
- DATA 6000
- DATA 7044
- DATA H*. - DROP DISPLAY AND WAIT FOR REASSIGNMENT.*
- DATA 6000
- DATA 7030
- DATA H*SPACE BAR - L TEST, STEP TO NEXT TEST.*
- DATA 6140
- DATA 7014
- DATA H*ALL OTHERS, TOGGLE BETWEEN CONTROL AND TEST.*
- CTLAL EQU *-CTLA
- CTLB BSS 0
- DATA 6100
- DATA 7720
- DATA H*TEST CODE DEFINITIONS*
- DATA 6200
- DATA 7450
- DATA H*LIBRARY DEFINITIONS*
- DATA 6240
- DATA 7204
- DATA H*CONTROL*
- CTLBL EQU *-CTLB
- CTLC BSS 0
- DATA 6220
- DATA 7400
- DATA H*TEST TUBE CHAR SIZE*
- CTLCL EQU *-CTLC
- CTLD BSS 0
- DATA 6100
- DATA 7600
- DATA H*DISPLAY ALIGNMENT ROUTINES*
- DATA 6100
- DATA 7200
- DATA H*SELECT FROM LIBRARY LIST*
- DATA 6120
- DATA 7100
- DATA H*(A,C,D,I,L,S,X, OR Z)*
- CTLDL EQU *-CTLD
- TRA TITLE TEST ROUTINES
- ** TRA - TEST ROUTINE *A*.
- * FULL ALPHABET.
- *
- * CALLS FCN, TCR.
- TRA SUBR ENTRY/EXIT
- RJM TCR SELECT TUBE, CHARACTER, SIZE
- RJM FCN FUNCTION CONSOLE
- ACN CH
- LDD SZ
- NJN TRA1 IF NOT *SMALL*
- LDN TRAAL
- OAM TRAA,CH
- UJN TRA3
- TRA1 SBN 1
- NJN TRA2 IF NOT *MEDIUM*
- LDN TRABL
- OAM TRAB,CH
- UJN TRA3
- TRA2 LDN TRACL
- OAM TRAC,CH
- TRA3 BSS 0
- DCN CH
- UJN TRAX RETURN
- TRAA BSS 0
- DATA 6000
- DATA 7400
- DATA H$ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+-*/()=,.$
- TRAAL EQU *-TRAA
- TRAB BSS 0
- DATA 6000
- DATA 7420
- DATA H$ABCDEFGHIJKLMNOPQRSTUVWXYZ$
- DATA 6000
- DATA 7360
- DATA H$A0123456789+-*/()=,.A$
- TRABL EQU *-TRAB
- TRAC BSS 0
- DATA 6000
- DATA 7500
- DATA H$ABCDEFGHIJKLMNO$
- DATA 6000
- DATA 7400
- DATA H$PQRSTUVWXYZ01234$
- DATA 6000
- DATA 7300
- DATA H$A56789+-*/()=,.A$
- TRACL EQU *-TRAC
- TRC SPACE 4
- ** TRC - TEST ROUTINE *C*.
- * FULL SCREEN, ONE CHARACTER.
- *
- * USES SZ, T4 - T7.
- *
- * CALLS FCN, TCR.
- TRC SUBR ENTRY/EXIT
- RJM TCR SELECT TUBE, CHARACTER, SIZE.
- LDD CR
- LPN 77
- STD CR
- SHN 6
- RAD CR
- RJM FCN FUNCTION CONSOLE
- ACN CH
- LDM TRCA,SZ SET LINE ADVANCE
- STD T6
- LDC 6000 SET X-COORDINATE
- STD T5
- LDC 7000 SET INITIAL Y-COORDINATE
- STD T4
- TRC1 LDM TRCB,SZ SET BYTES/LINE
- STD T7
- LDN 2 OUTPUT COORDINATES
- OAM T4,CH
- TRC2 LDD CR DISPLAY 2 CHARACTERS
- OAN CH
- SOD T7 DECREMENT BYTE COUNT
- NJN TRC2 LOOP TO END OF LINE
- LDD T6 ADVANCE Y-COORDINATE
- RAD T4
- LDD T4
- NJN TRC1 LOOP TO TOP OF SCREEN
- DCN CH
- LJM TRCX RETURN
- TRCA BSS 0
- DATA 10
- DATA 20
- TRCB BSS 0
- DATA 40
- DATA 20
- DATA 10
- TRD SPACE 4
- ** TRD - TEST ROUTINE *D*.
- * 32 X 32 DOT RASTER.
- *
- * USES T4, T5.
- *
- * CALLS FCN, TCR.
- TRD SUBR ENTRY/EXIT
- RJM TCR SELECT TUBE
- RJM FCN FUNCTION CONSOLE
- LDD TS CHECK TUBE SWITCH
- ZJN TRD1 IF NOT TUBE 1
- LDD TB1 SET TUBE 1
- UJN TRD2
- TRD1 LDD TB2 SET TUBE 2
- TRD2 ADC 7010 FUNCTION DOT MODE
- FAN CH
- LDC 7000 SET Y - COORDINATE
- STD T4
- ACN CH
- TRD3 LDC 6000 SET X-COORDINATE
- STD T5
- TRD4 LDN 2 OUTPUT COORDINATES
- OAM T4,CH
- LDN 20 ADVANCE X-COORDINATE
- RAD T5
- LMC 7000
- NJN TRD4 LOOP TO END OF LINE
- LDN 20 ADVANCE Y-COORDINATE
- RAD T4
- LDD T4
- NJN TRD3 IF NOT BOTTOM OF SCREEN
- DCN CH
- LJM TRDX RETURN
- TRI SPACE 4
- ** TRI - TEST ROUTINE *I*.
- * 15 CHARACTERS EACH SIZE.
- *
- * USES SZ.
- *
- * CALLS FCN, TCR.
- TRI SUBR ENTRY/EXIT
- RJM TCR SELECT TUBE
- LDC 7200 INITIALIZE Y-COORDINATE
- STM TRIA+1
- LDN 0 SET *SMALL* SIZE
- STD SZ
- TRI1 RJM FCN FUNCTION CONSOLE
- ACN CH
- LDN TRIAL DISPLAY LINE
- OAM TRIA,CH
- DCN CH
- LDC 200 ADVANCE Y-COORDINATE
- RAM TRIA+1
- AOD SZ ADVANCE SIZE
- LMN 3
- NJN TRI1 IF NOT FINISHED
- UJN TRIX RETURN
- TRIA BSS 0
- DATA 6000
- DATA 7200
- DATA H*INTENSITY ADJUST*
- TRIAL EQU *-TRIA
- TRS SPACE 4
- ** TRS - TEST ROUTINE *S*.
- * SINGLE CHARACTER, CENTERED.
- *
- * CALLS FCN, TCR.
- TRS SUBR ENTRY/EXIT
- RJM TCR SELECT TUBE, CHARACTER, SIZE
- RJM FCN FUNCTION CONSOLE
- LDD CR
- NJN TRS1
- LDN 1R*
- TRS1 SHN 6
- STM TRSA+2
- LDN TRSAL DISPLAY CHARACTER
- ACN CH
- OAM TRSA,CH
- DCN CH
- UJN TRSX RETURN
- TRSA BSS 0
- DATA 6400
- DATA 7400
- DATA 1L*
- TRSAL EQU *-TRSA
- TRX SPACE 4
- ** TRX - TEST ROUTINE *X*.
- * CROSSED DIAGONAL LINES.
- *
- * USES T4, T5.
- *
- * CALLS FCN, TCR.
- TRX SUBR ENTRY/EXIT
- RJM TCR SELECT TUBE
- RJM FCN FUNCTION CONSOLE
- LDD TS CHECK TUBE SWITCH
- ZJN TRX1 IF NOT TUBE 1
- LDD TB1 SET TUBE 1
- UJN TRX2
- TRX1 LDD TB2 SET TUBE 2
- TRX2 ADC 7010 FUNCTION DOT MODE
- FAN CH
- LDC 7000 BOTTOM LEFT TO TOP RIGHT
- STD T5
- LDC 6000
- STD T4
- ACN CH
- TRX3 LDN 2 OUTPUT COORDINATES
- OAM T4,CH
- AOD T4
- AOD T5
- LDD T5
- NJN TRX3 LOOP
- LCN 0 TOP LEFT TO BOTTOM RIGHT
- STD T5
- LDC 6000
- STD T4
- TRX4 LDN 2 OUTPUT COORDINATES
- OAM T4,CH
- AOD T4
- SOD T5
- LMC 6777
- NJN TRX4 LOOP
- DCN CH
- LJM TRXX RETURN
- TRZ SPACE 4
- ** TRZ - TEST ROUTINE *Z*.
- * DOT/CHARACTER MODE POSITIONING COMPARISON.
- *
- * USES T4 - T7.
- *
- * CALLS FCN, TCR.
- TRZ SUBR ENTRY/EXIT
- RJM TCR SELECT TUBE
- RJM FCN FUNCTION CONSOLE
- LDD TS CHECK TUBE SWITCH
- ZJN TRZ1 IF NOT TUBE 1
- LDD TB1 SET TUBE 1
- UJN TRZ2
- TRZ1 LDD TB2 SET TUBE 2
- TRZ2 ADC 7000 SET CHARACTER MODE FUNCTION
- STM TRZA
- ADN 7010-7000 SELECT DOT MODE
- FAN CH
- ACN CH
- * DISPLAY CROSS.
- LDC 6540 SET HORIZONTAL LINE X-COORDINATES
- STD T4
- LDC 6240
- STD T6
- LDC 7400 SET Y-COORDINATE
- STD T5
- TRZ3 LDN 2 DISPLAY DOT
- OAM T4,CH
- SOD T4 DECREMENT X-COORDINATE
- LMD T6
- NJN TRZ3 LOOP TO END OF LINE
- LDC 7240 SET VERTICAL LINE Y-COORDINATES
- STD T6
- LDC 7540
- STD T5
- LDC 6400 SET X-COORDINATE
- STD T4
- TRZ4 LDN 2 DISPLAY DOT
- OAM T4,CH
- SOD T5 DECREMENT Y-COORDINATE
- LMD T6
- NJN TRZ4 LOOP TO END OF LINE
- DCN CH
- * DISPLAY *X* AND *O*.
- LDC 7000 SELECT CHARACTER MODE
- TRZA EQU *-1
- ADN 2 16 CHARACTERS/LINE
- FAN CH
- ACN CH
- LDN TRZBL
- OAM TRZB,CH
- DCN CH
- * DISPLAY EXPLANATION.
- LDM TRZA SELECT CHARACTER MODE, 64 CHAR./LINE
- FAN CH
- LDC TRZCL
- ACN CH
- OAM TRZC,CH
- DCN CH
- LJM TRZX RETURN
- TRZB BSS 0
- DATA 7400
- DATA 6400
- DATA 2RO
- DATA 7360
- DATA 6360
- DATA 2RX
- TRZBL EQU *-TRZB
- TRZC BSS 0
- DATA 7700
- DATA 6000
- DATA H*IF O IS CENTERED ON CROSS, CHARACTERS ARE CENTERED*
- DATA 7640
- DATA 6000
- DATA H*ON COORDINATES.*
- DATA 7140
- DATA 6000
- DATA H*IF X IS CENTERED ON CROSS, CHARACTERS HAVE LOWER*
- DATA 7100
- DATA 6000
- DATA H*LEFT CORNERS ON COORDINATES.*
- TRZCL EQU *-TRZC
- DSS TITLE DISPLAY SUBROUTINES
- ** DSS - DISPLAY SYSTEM STATUS.
- *
- * CALLS SYS.
- DSS SUBR ENTRY/EXIT
- LDC 6000 SET X - COORDINATE
- STD XC
- RJM SYS
- DCN CH+40
- UJN DSSX RETURN
- FCN SPACE 4
- ** FCN - FUNCTION CONSOLE FOR TUBE AND SIZE.
- *
- * USES TS.
- FCN SUBR ENTRY/EXIT
- LDD TS CHECK TUBE SWITCH
- ZJN FCN1 IF NOT TUBE 1
- LDD TB1 SET TUBE 1
- UJN FCN2
- FCN1 LDD TB2 SET TUBE 2
- FCN2 ADD SZ FORM FUNCTION CODE
- ADC 7000
- FAN CH SELECT TUBE AND SIZE
- UJN FCNX RETURN
- TCR SPACE 4
- ** TCR - SELECT TUBE, CHARACTER, SIZE.
- *
- * USES CR, SIZ, SZ, TB, TB1, TB2, TS.
- TCR SUBR ENTRY/EXIT
- * SELECT TUBE.
- LDN 0 PRESET TUBE 1 = TUBE 2 = *LEFT*
- STD TB1
- STD TB2
- LDD TB CHECK TUBE SELECTION
- SBN 1RB
- NJN TCR1 IF NOT *B*
- LDD HN SET *BOTH*
- UJN TCR2
- TCR1 SBN 1RR-1RB
- NJN TCR3 IF NOT *R* (ASSUME *L*)
- LDD HN SET *RIGHT*
- STD TB2
- TCR2 STD TB1
- * SELECT SIZE.
- TCR3 LDN 2 PRESET *LARGE*
- STD SZ
- LDD SIZ CHECK SELECTION
- ZJN TCR6 IF NO SELECTION
- SBN 1RM
- NJN TCR4 IF NOT *M*
- LDN 1 SET *MEDIUM*
- UJN TCR5
- TCR4 SBN 1RS-1RM
- NJN TCR6 IF NOT *S*
- LDN 0 SET *SMALL*
- TCR5 STD SZ
- * SELECT CHARACTER.
- TCR6 LDD CR
- LPN 77
- STD CR
- ZJN TCR7 IF NO SELECTION
- SBN 1R$
- ZJN TCR7 IF *$*
- SBN 1R -1R$
- ZJN TCR7 IF *BLANK*
- SBN 1R.-1R +1
- MJN TCR8 IF LEGAL DISPLAY CODE
- TCR7 LDN 1RA SET *A*
- STD CR
- TCR8 LJM TCRX RETURN
- MDC SPACE 4
- ** MDC - MODIFY CHANNEL INSTRUCTIONS.
- *
- * USES T1, T2, T3.
- MDC SUBR ENTRY/EXIT
- LDM /COMDDSP/DDSB CHECK ASSIGNED CHANNEL
- STD T3
- CHTE *
- LMN CH
- ZJN MDCX IF CHANNELS MODIFIED
- LDC TCHS MODIFY CHANNELS
- STD T1
- MDC1 LDI T1
- ZJN MDC2 IF CHANNEL TABLE MODIFICATION COMPLETE
- STD T2
- LDI T2
- SCN 77
- ADD T3
- STI T2
- AOD T1 ADVANCE ADDRESS
- UJN MDC1 LOOP TO END OF TABLE
- MDC2 LDC MDCA SET 1ST ADDRESS FOR BLIND MODIFICATION
- STD T1
- MDC3 AOD T1 ADVANCE ADDRESS
- LMC MDCB
- ZJN MDCX RETURN IF COMPLETE
- LDI T1 CHECK WORD
- LPC 7077
- LMC 7000+CH
- NJN MDC3 IF NOT 7XCH
- LDI T1 MODIFY INSTRUCTION
- SCN 77
- ADD T3
- STI T1
- UJN MDC3 LOOP
- TCHS SPACE 4
- ** TCHS - TABLE OF CHANNEL INSTRUCTIONS.
- TCHS CHTB
- RSTC RESTORE CHANNEL INSTRUCTIONS
- COMMON SPACE 4,10
- ** COMMON DECKS.
- MDCA BSS 0 FIRST ADDRESS FOR BLIND CHANNEL MOD
- *CALL COMDSYS
- *CALL COMDDSP
- MDCB BSS 0 LIMIT ADDRESS FOR BLIND CHANNEL MOD
- ATR TITLE UTILITY SUBROUTINES
- ** ATR - ADVANCE TEST ROUTINE.
- *
- * USES PI, PA.
- *
- * CALLS TTC.
- ATR SUBR ENTRY/EXIT
- LDD KB CHECK KEYBOARD
- ZJN ATR1 IF NO ENTRY
- RJM STR SELECT TEST ROUTINE
- UJN ATRX RETURN
- ATR1 LDD AF
- NJN ATR2 IF *ALL TESTS*
- LDD PA TOGGLE ADDRESS
- LMC CTL
- LMM TTRA,PI
- STD PA
- UJN ATRX RETURN
- ATR2 AOD PI ADVANCE TEST
- ATR3 LDM TTRA,PI
- NJN ATR4 IF NOT END OF TABLE
- STD PI RESET PROGRAM INDEX
- UJN ATR3
- ATR4 STD PA
- UJN ATRX RETURN
- DRP SPACE 4
- ** DRP - DROP DISPLAY.
- *
- * ENTRY VIA *LJM*.
- *
- * CALLS DDS, FTN, PPR.
- DRP RJM DDS DROP DISPLAY
- DPP MONITOR DPPM DROP PP
- LJM PPR EXIT TO PP RESIDENT
- STR SPACE 4
- ** STR - SELECT TEST ROUTINE.
- *
- * USES CR, SZ, TB, T1.
- *
- * CALLS EEB.
- STR SUBR ENTRY/EXIT
- LDN 0
- STD T1 PRESET INDEX
- STD AF CLEAR *ALL TESTS* FLAG
- LDD KB CHECK TEST SELECTION
- LMN 1RL
- NJN STR1 IF NOT *L*
- LDN 1 SET *ALL TESTS* FLAG
- STD AF
- UJN STR3
- STR1 LDM TTRM,T1
- NJN STR2 IF NOT END OF TABLE
- STD PI
- LDC CTL SELECT CONTROL PROGRAM
- STD PA
- RJM EEB ERASE ENTRY BUFFER
- LDM TTRM,PI SET FIRST TEST MNEMONIC IN *PM*
- STD PM
- UJN STRX RETURN
- STR2 LMD KB
- ZJN STR3 IF TEST FOUND
- AOD T1 ADVANCE INDEX
- UJN STR1 LOOP
- STR3 LDM TTRA,T1 SET PROGRAM ADDRESS
- STD PA
- LDD T1 SET PROGRAM INDEX
- STD PI
- LDD KB SET PROGRAM MNEMONIC
- STD PM
- LDD KB+1 SET TUBE
- STD TB
- LDD KB+2 SET CHARACTER
- STD CR
- LDD KB+3 SET SIZE
- STD SIZ
- RJM EEB ERASE ENTRY BUFFER
- LJM STRX RETURN
- * TTRM - TABLE OF TEST MNEMONICS.
- TTRM BSS 0
- DATA 1RA
- DATA 1RC
- DATA 1RD
- DATA 1RI
- DATA 1RS
- DATA 1RX
- DATA 1RZ
- DATA 0
- * TTRA - TABLE OF TEST ADDRESSES.
- TTRA BSS 0
- CON TRA
- CON TRC
- CON TRD
- CON TRI
- CON TRS
- CON TRX
- CON TRZ
- DATA 0
- TTC SPACE 4
- ** TTC - TOGGLE TEST AND CONTROL.
- *
- * USES PA, PI.
- *
- * CALLS STR.
- TTC SUBR ENTRY/EXIT
- LDD KB CHECK KEYBOARD
- ZJN TTC1 IF NO ENTRY
- RJM STR SELECT TEST ROUTINE
- UJN TTCX RETURN
- TTC1 LDD PA TOGGLE ADDRESS
- LMC CTL
- LMM TTRA,PI
- STD PA
- UJN TTCX RETURN
- SPACE 4,10
- DIS HERE *COMDSYS* *DISPLA* EXPANSION
- PRS TITLE PRESET PROGRAM
- ** PRS - PRESET PROGRAM.
- *
- * EXIT (NC) = NUMBER OF CP-S.
- PRS SUBR ENTRY/EXIT
- CATD CHECK ACCESS TO DISPLAY CONSOLE
- LDD CM
- NJN CAT1 IF ENGINEERING MODE NOT ENABLED
- PRS1 PAUSE
- LDD FL
- ZJN PRS3 IF FL = 0
- LDD CM+1
- ZJN PRS2 IF ERROR FLAG NOT SET
- LJM DPP DROP PP
- PRS2 STD CM+2 SET CM REQUEST
- MONITOR RSTM REQUEST 0 FL
- UJN PRS1
- PRS3 RJM RDS REQUEST DISPLAY
- RJM MDC MODIFY CHANNEL INSTRUCTIONS
- STD TS PRESET TUBE SWITCH
- STD KI SET KEYBOARD INDEX
- STD AF CLEAR *ALL TESTS* FLAG
- STD PI SET PROGRAM INDEX
- CRD KB CLEAR KEYBOARD BUFFER
- LDN 1RA SET PROGRAM MNEMONIC *A*
- STD PM
- LDC CTL PRESET PROGRAM ADDRESS = *CONTROL*
- STD PA
- LDD HN PRESET *RIGHT* TUBE
- STD TB1
- STD TB2
- LDN 1RB
- STD TB
- LDN 2 PRESET *LARGE* SIZE
- STD SZ
- LDN 1RL
- STD SIZ
- LDN 1RA PRESET CHARACTER = *A*
- STD CR
- LDC 6200 SET KEYBOARD BUFFER DISPLAY COORDINATES
- STD KX
- LDC 7340
- STD KY
- LDN NCPL SAVE NUMBER OF CP-S
- CRD CM
- AOD CM+1
- STD NC
- LJM PRSX RETURN
- SPACE 4
- ** COMMON DECKS.
- *CALL COMPCUA
- SPACE 4
- END
cdc/nos2.source/opl871/ds1.txt ยท Last modified: 2023/08/05 17:24 by Site Administrator