Digital PDFs
Documents
Guest
Register
Log In
AH-E769A-MC
August 1981
256 pages
Original
146MB
view
download
OCR Version
230MB
view
download
Document:
CVVSAA0 VSV11 VSV11 CSS DIAG AUG 1981 bw
Order Number:
AH-E769A-MC
Revision:
000
Pages:
256
Original Filename:
CVVSAA0__VSV11__VSV11_CSS_DIAG__AH-E769A-MC__AUG_1981_gray.pdf
OCR Text
L. t s O SAR ~__CVV = i ie fe C_ -M 9A 76 -E AH FICHE 1 OF 2 waoe v usa 29-JAN-81 17:22 ; PAGE 2 SEQ 0001 .REMZ IDENTIFICATION . v b i B '\.'\ f'\,'\, NPy~ & WY = O OO0 NN N D WY s€30 OB YTM un /571 == RASTER GRAPHIC DI MACRO M1113 B PRODUCT CODE: AC-E768A-MC PRODUCT NAME: (CVVSAAQ VSV11 (SS DIAG MAINTAINER: CSS PRODUCTS AUTHORS : : DON MACOMBER GUS PASQUANTONIO DATE: BILL WEISKE 23 FEB 81 THE INFORMATION IN THIS DOCUMENT IS SUBJECT TO CHANGE WITHOUT NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT CORPORATION. DIGITAL EQUIPMENT CORPORATION ASSUMES NO RESPONSIBILITY FOR ANY ERRORS THAT MAY APPEAR IN THIS DOCUMENT. NO RESPONSIBILITY IS ASSUMED FOR SOF TWARE ON EQUIPMENT THAT IS NOT AFFILIATED COMPANIES. THE USE SUPPLIED OR BY RELIABILITY OF DIGITAL OR ITS COPYRIGHT (C) 1981 BY DIGITAL EQUIPMENT CORPORATION THE FOLLOWING ARE TRADEMARKS OF DIGITAL EQUIPMENT CORPORATION: DIGITAL DEC PDP DECUS UNIBUS DECTAPE MAS SBUS VSV11/7¥S11 == RASTER GRAPHIC DI MACRO M1113 1.0 C 29-JAN-81 17:22 PAGE 3 PROGRAM ABSTRACT THE VSV11 DIAGNOSTIC PROGRAM PROVIDES A SERIES OF TESTS DESIGNED TO VERIFY THE INTEGRITY AND OPERABILITY OF THE VSV11/vS11 @-BUS VIDEO IMAGE PROCESSING SYSTEM. SOME OF THE TEST SEQUENCES ARE VISUAL ONLY. HOWEVER ALL TESTS WILL RUN WITH OR WITHOUT A DISPLAY MONITOR CONNECTED 70 THE SYSTEM. THE TESTS DESIGNATED "DPU-ONLY'' WILL RUN WITHOUT THE ‘DBUS'' CONNECTED TO THE DISPLAY PROCESS0R MODULE (M7064). THE PROGRAM WILL SUPPORT UP TO 16 VSV11 SYSTEMS. HOWEVER, MULTI-UNIT CONFIGURATIONS ARE TESTED ONE AT A TIME BY THE PROGRAM. ANY LOGIC ERRORS ENCOUNTERED ARE REPORTED ON THE SYSTEM CONSOLE DEVICE. o 1 e e e o i e e e e S o S e e e LIST OF HARDWARE TESTS DPU ONLY TESTS: TEST TEST SEST TEST TEST TEST {188 STATIC RESET RESET ONES SOFT INIT ONES REGISTERS UNIQUE ADDRESS INCREMENTING REGISTERS DPU START-STOP DPU OPCODES INCREMENTING HISTOGRAM BASE ADDRESS 1 ¢ 3 4 5 6 4 8 TEST It ¥ TEST 10 INCREMENTING CHARACTER BASE ADDRESS DJMS/DPOP TEST 11 TEST 12 TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST MAIN MEM MGT ACCESS (OVER 28K) AUX MEM MGT ACCESS (OVER 28K) 13 14 15 16 17 18 19 20 21 22 STOP INTERUPT DPU TIME-OUT INTERUPT ERROR CODES ADDRESS RELOCATE CHARACTERS ABSOLUTE POINTS LONG VECTORS RELATIVE POINTS SHORT VECTORS RUN=LENGTH IMAGE MEMORY & SYNC GENERATOR TESTS & DISPLAYS: TEST 23 TEST 24 CURSOR REGISTERS/SWITCH/MATC(CH GRAPH=HISTOGRAM X TEST TEST TEST TEST TEST BIT MAP (1) BIT MAP (0) IMAGE MEMORY CLEAR-SET IMAGE MEMORY INTERLACE IMAGE MEMORY PATTERNS TEST 25 26 27 28 29 30 GRAPH=HISTOGRAM Y : SEQ 0002 1 SEQ 0003 SPARE SYSTEM VERIFICATION DISPLAY 2.0 e e e TEST 33 TEST 34 TEST 35 JOY=STICK VERIFICATION (STAND ALONE) SELECTED DISPLAYS (STAND ALONE) SYSTEM CONF IGURATION (STAND ALONE) STRUCTURE OF PROGRAM THIS PROGRAM IS STRUCTURED TO RUN UNDER THE DIAGNOSTIC SUPERVISOR (REV D) AND THE XXDP+ MONITOR. A BRIEF OVERVIEW OF OPERATING INSTRUCTIONS IS PROVIDED IN SECTION 3.1 OF THIS DOCUMENT. REFER TO CHAPTER 5 OF THE XXDP+ USERS MANUAL FOR FURTHER DETAILS. £e1 HARDWARE REQUIREMENTS PDP-11/LSI-11 PROCESSOR WITH 28K OR MORE OF MEMORY 131 CONSOLE DEVICE (LA30, LA36, VvT50, vr100, ETC.) XXDP+ LOAD DEVICE (RX, RP, RL, TM, DT, ETC.) 1 TO 8 vSV11 SYSTEMS, EACH CONSISTING OF: M7064 DISPLAY PROCESSER M7062 IMAGE MEMORY (1 TO & CHANNELS) M7061 SYNC GENERATOR WITH CURSOR CONTROL DISPLAY MONITOR, COLOR OR MONOCHROME (OPTIONAL). DW11 UNIBUS TO LSI-11 BUS CONVERTER (OPTIONAL, VS1i SYSTEMS ONLY). RELATED DOCUMENTS AND STANDARDS XXDP+ USERS MANUAL ( CHQUSA ) NN -2 OV LOADING AND STARTING PROCEDURES THIS PROGRAM IS LOADED AND STARTED FROM ANY XXDP+ MEDIA USING THE STANDARD XXDP+ OPERATING PROCEDURES. = OO0 ol Dl i D il s ol OO VTN N NN VSV11 OPTION DESCRIPTION (YM-C183(C) VSV11 DIAGNOSTIC LISTING (SEC 7 OF THIS DOCUMENT). 3.0 AT START UP, THE SUPERVISOR WILL IDENTIFY ITSELF AND THE NAME OF THIS PROGRAM ON THE CONSOLE DEVICE, AND THEN DISPLAY A COMMAND MODE PROMPT ( DR> ) WHICH INDICATES READY TO ACCEPT ANY OF THE FOLLOWING COMMANDS. 1 ——————————— et D PAGE 3-1 STAND ALONE TESTS & ROUTINES: S S P N WRONOMN) Ovoo~N NS W 29-JAN-81 17:22 TEST 31 TEST 32 - POPNONUMNININDND = b sNOWV 3 -‘-—‘—"-'-—‘08 =200V S WN—O 0 38 . VSV11/yS11 == RASTER GRAPHIC DI MACRO M1113 vSv11/7vS11 == RASTER GRAPHIC DI MACRO M1113 163 164 165 3.1 166 29-JAN-81 17:22 E PAGE 4 SEQ 0004 SUPERVISOR COMMAND SUMMAR THIS SECTION PRESENTS A BRIEF OVERVIEW OF THE COMMANDS NECESSARY TO CONTROL THE OPERATION OF THIS DIAGNOSTIC 167 168 169 170 171 172 173 174 175 176 177 UNDER THE REV D DIAGNOSTIC SUPERVISOR. STA(RT) RES(TART) CON(TINUE) PRO(CEED) EXI(T) INITIAL START-UP =-- BUILD P-TABLES. RESTART == USE EXISTING P-TABLES. CONTINUE AFTER <*(C> OR ERROR HALT. CONTINUE AFTER ERROR HALT. RETURN TO XXDP+ MONITOR. THE FOLLOWING SWITCHES APPLY TO THE ABOVE: 178 179 /TESTS: <TEST NUMBERS TO RUN> /PASS: <NUMBER OF PASSES TO RUN> /FLAGS: <SEE FLAG LIST BELOW> 180 181 /EOP: <NUMBER OF PASSES ‘'TIL END-OF-PASS> 182 183 ADDITIONAL COMMANDS AVAILABLE ARE: REMOVE UNIT N FROM TEST LIST ADD UNIT N (PREVIOUSLY DROPPED). PRINT UNITS P-TABLE AND STATUS. PRINT STATISTICS (PER-UNIT STATUS). DRO(P) /UNIT:N ADD/UNIT:N DIS(PLAY)/UNIT:N PRI (NT) CLEAR ALL FLAGS. PRINT CURRENT FLAG SETTINGS. ZFL (AGS) FLA(GS) THE GENERALIZED COMMAND STRING FORMAT IS: COM(MAND) /SWITCH:VALUE/SWITCH:VALUE ... <(R> 3.8 RUN TIME OPTION FLAGS THE FOLLOWING FLAGS ARE USED IN LIEU OF THE OLD HARDWARE SWITCH REGISTER TO FURTHER DEF INE PROGRAM BEHAVIOUR: HOE LOE i e e cnd wdh o o o OO~ NS NN — IS LAWIANTAWI AN 1N 1 LN 1N ] 210 IEK IBE IXR PRI HALT ON ERROR LOOP ON ERROR INHIBIT ALL ERROR REPORTS INHIBIT BASIC ERROR REPORTS INHIBIT EXTENDED ERROR REPORTS SEND ALL REPORTS TO LINE PRINTER. PNT BOE UAM ISR IDU ADR PRINT TEST NUMBERS (AND 1.D'S) AS EXECUTED GOOD OLD ‘BELL-ON-ERROR'' RUN IN "UNATTENDED'' MODE (NO MANUAL) INHIBIT STATISTICS (PER-UNIT STATUS EACH PASS) EVL EVALUATE ERRORS (NOT IMPLEMENTED) LoT INHIBIT ""AUTO-DROP'' (EXCEPT FOR NON-EXISTENT REG.) EXECUTE '‘AUTO-DROP'' (USER SUPPLIED CODE) LOOP ON TEST | V /SV117y511 == RASTER GRAPHIC DI MACRO M1113 226 350 231 232 233 234 3.3 ey INITIAL START=UP == BUILD P-TABLES R WHENEVER THE PROGRAM IS STARTED, VIA THE STA(RT) COMMAND, THE SUPERVISOR REQUESTS THE FOLLOWING P-TABLES PARAMETER CHANGES: 235 CHANGE HW (L) ? 237 238 #UNITS (D) UNIT 0 241 242 243 INTERRUPT PRIORITY LUT INSTALLED FREQUENCY = 50HZ 236 239 240 See 249 250 2 DEVICE ADDRESS 1ST INTERUPT VECTOR 244 247 248 253 254 255 256 257 258 RUN DPU TESTS ONLY LONG MEMORY TESTS INHIBIT 1TERATIONS MANUFAC TURING MODE PER TEST ERROR LIMIT PER UNIT ERROR LIMIT 265 266 267 268 269 270 271 272 273 276 (0) & 2 (L) N2 (L) N2 FOLLOWS: CHANGE SW? 260 261 262 263 264 (0) 172010 ? (0) 320 ? IN ADDITION, ON A START, RESTART OR CONTINUE THE SUPERVISOR REQUESTS CHANGES TO THE SOF TWARE OPERATING PARAMETERS, AS 251 252 SEQ 0005 ERROR TYPEOUT, RING BELL ON ERROR. 2 228 PAGE 4-1 SWITCH FLAG SETTINGS ARE ALTERED BY USING THE /FLAGS: <CR> OE G:IER:B IN ANY COMMAND STRING. I.E. STA/FLA WILL START THE PROGRAM, RUN ALL TEST IN ORDER, INHIBIT 220 221 22 22 227 29-JAN-81 17:22 1 F (L) N2 (L) N2 (L) N ? (L) N2 (D) 25 ? (D) 200 ? IF *RUN DPU TESTS ONLY?'' IS ANSWERED '‘YES'', NO COMMUNICATION WITH THE IMAGE MEMORIES OR SYNC CHANNELS IS MADE; THE PROGRAM CAN BE RUN WITH THE 'DBUS'' CABLE DISCONNECTED. IF ‘LONG MEMORY TESTS'' IS SELECTED, 15 DIFFERENT PIXEL DATA VALUES ARE USED DURING TEST 28 (IMAGE MEMORY CLEAR-SET) RATHER THAN THE STANDARD 5 VALUES. INHIBITING ITERATIONS CAUSES THE PROGRAM TO RUN FASTER, EQUIVALENT TO THE FIRST PASS AFTER STARTUP. IF *MANUFACTURING MODETM IS SELECTED, PREDEFINED PARAMETERS ARE USED FOR THE IMAGE MEMORY AND SYNC CHANNEL CONFIGURATION DATA. THE ERROR LIMITS DEFINE THE NUMBER OF ERRORS ALLOWED TO OCCUR BEFORE A UNIT IS DROPPED (UNLESS THE /FLAG:IDU FLAG IS SET TO INHIBIT DROPPING OF UNITS). FOR EXAMPLE, IF 25 ERRORS OCCUR IN TEST 3 WHILE TESTING UNIT 2, UNIT 2 WiLL BE DROPPED. OR, IF UNIT 2 ACCUMULATES 200 ERRORS OVER THE COURSE OF SEVERAL TESTS OR PASSES, IT WILL BE DROPPED. —— SR 277 F L R e s 29-JAN-81 17:22 B 4.0 PAGE 5 1 ety ERROR REPORTING T ARE REPORTED BY THE DIAGNOSTIC SUPERVISOR LOGIC ERRORS 280 AS THEY OCCUR, HOWEVER, IT MUST BE NOTED THAT CAREFUL OBSERVATION OF THE VARIOUS VISUALS FRAMES IS ALSO REQUIRED TO VERIFY TOTAL SYSTEM PERFORMANCE. 281 282 ng 285 290 EACH ERROR SIGNATURE CONSISTS OF ONE OR MORE LINES OF TEXT, DESCRIBING THE ERROR, AND INCLUDES EXPECTED VS RECEIVED DATA WHERE APPLICABLE. THE FIRST LINE IS THE SUPERVISORS HEADER (BASIC), WHICH INCLUDES PROGRAM NAME, ERROR TYPE (HRD, SFT, DEV FATAL, OR SYS FATAL), ERROR NUMBER, TEST AND SUB-TEST NUMBERS, 29 EXAMPLES: 296 297 % "BUS=INIT'* DIDN'T INITIALIZE DPU UNIT O DROPPED DR> 28S 286 287 288 AND PC. THE HEADER WILL NCRMALLY BE FOLLOWED BY ONE OR MORE (EXTENDED) LINES FURTHER IDENTIFYING THE ERROR. 291 sgg CVVSA DEV FTL ERR 00002 ON UNIT 00 TST 000 SuB 001 PC:_____ 295 300 301 CVVSA HRD ERR 00801 ON UNIT 00 TST 008 SuB 001 PC:______ : LONG VECTOR FAILURE DXR.DYR EXP*D: 1776,0000 DXR.DYR REC'D: 0000,0000 ORIGIN: 0000,0000 DX,DY:041776,000000 302 303 ggg NOTE THAT THE ERROR NUMBER IS IN THE FORMAT '‘TTTEE" WHEN ERRORS OCCUR OUTSIDE THE CONFINES OF A GIVEN TEST (INITIALIZE, OR SOME GLOBAL SUBROUTINE), TTT = 0. 306 307 WHERE EE IS THE E'TH ERROR CALL WITHIN TEST TTT. 31 g;% 1.E. 308 ggg $14 N 316 g 319 320 321 322 323 324 325 . et T S &1 S ERR 00002 = 2ND ERROR IN PROGRAM INITIALIZATION. ERR 00801 = 1ST ERROR IN TEST 8. e ERROR HALTS s ERROR HALTS ARE CONDITIONED BY THE HALT=ON-ERROR SWITCH ( /FLAG:HOE ). HALT IN THIS CONTEXT MEANS RETURN TO COMMAND MODE. THERE ARE NO OTHER PROGRAM HALTS. PRO(CEED) TO RESUME FROM THE POINT OF THE ERROR CALL. CON(TINUE) TO RESTART AT THE BEGINING OF THE TEST IN IN WHICH THE ERROR QOCCURED. SEQ 0006 A /SV11/7y511 == RASTER GRAPHIC DI MACRO M1113 G 4.2 H PAGE 6 29-JAN-81 17:22 SEQ 0007 DROPPING OF UNITS UNDER SOME CONDITIONS OF FATAL OR EXCESSIVE ERRORS, A UNIT WILL BE ‘'DROPPED'' FROM THE LIST OF DEVICES BEING TESTED. FOR EXAMPLE, IF A DEVICE REGISTER IS NON-EXISTENT, THE UNIT IS DROPPED BEFORE ACTUAL TESTING COMMENCES. IN ADDITION, A UNIT WILL BE _DROPPED IF 25 OR MORE ERRORS OCCUR WITHIN ANY ONE TEST (UNLESS THE /FLAGS:I1DU SWITCH IS SET). THE DROPPED UNIT IS REPORTED AND APPEARS IN THE PER=UNIT STATISTICS REPORT. IN SOME CASES, THE ERROR COUNT IS NOT TESTED UNTIL THE END OF A TEST LOOP, SO MORE THAN 25 ERRORS CAN OCCUR BEFORE THE UNIT IS DROPPED. 5.0 PERFORMANCE AND PROGRESS REPORTS NORMAL PROGRESS THROUGH A GIVEN TEST SEQUENCE IS INDICATED BY THE PRINTING OF EACH TEST'S NUMBER AND TITLE ON THE SYSTEM CONSOLE DEVICE (IF THE /FLAGS:PNT SWITCH IS USED), FOLLOWED BY AN END-PASS WHEN ALL TESTS HAVE BEEN EXECUTED ON ALL UNITS. IN ADDITION, IF THE /FLAGS:ISR SWITCH IS NOT SET, AND IF MULTIPLE UNITS ARE BEING TESTED, THE PER=UNIT STATUS IS PRINTED AT THE END OF EACH PASS. IF RUNNING WITH ERRORS INHIBITED (/FLA:IER), AN ERROR COUNT IS KEPT FOR EACH TEST, AND DISPLAYED AT THE END OF THAT TEST. THERE ARE NO OTHER PROGRESS REPORTS. 5.1 EXECUTION TIMES EXECUTION TIMES WILL VARY SOMEWHAT, DEPENDING ON CPU TYPE AND OPERATING MODE. THE FOLLOWING ARE TYPICAL EXECUTION TIMES OBSERVED ON A PDP-11/34 SYSTEM: NORMAL MODE DPU ONLY MODE LONG MEMORY TEST MODE 1ST_PASS SUBSEQUENT PASSES 0.4 MIN 5.6 MIN 2.3 MIN 9.7 MIN 4.5 MIN 8.6 MIN v USy11/vS11 == RASTER GRAPHIC DI MACRO M1113 . USV11/¥S11 == RASTER GRAPHIC DI MACRO M1113 29-JAN-81 17:22 l PAGE 7 SEQ 0008 375 6.0 TEST SUMMARIES THERE ARE THREE CATAGORIES OF TESTS, AS FOLLOWS: 1. DPU ONLY TESTS (SEC. 6.1) 2. IMAGE MEMORY & SYNC GENERATOR TESTS & DISPLAYS (SEC. 6.2) 3. STAND-ALONE TESTS (SEC. 6.3) THE FOLLOWING PARAGRAPHS PROVIDE A BRIEF DESCRIPTION OF THE TESTING SEQUENCE. REFER TO THE PROGRAM LISTING FOR DETAILS. DURING PROGRAM INITIALIZATION, CERTAIN MINIMAL TESTING IS DONE IN ORDER TO: A. Y§R6;ZIBHAT THE DEVICE ADDRESS FCR THIS UNIT 8. VERIFY THAT THIS UNIT IS PROPERLY INITIALIZED FOLLOWING A BUS-RESET. THE FOLLOWING ERRORS MAY OCCUR OUTSIDE THE CONFINES OF THE NORMAL TEST SEQUENCE: ERR 00000 ERR 00001 ERR 00002 UNEXPECTED DPU ERROR INTERRUPT. NON-EXISTANT DEVICE REGISTER. BUS-INIT DIDN'T INITIALIZE DPU. ABORT. THE FOLLOWING NOTES APPLY TO ALL TEST SEQUENCES: 1. UNLESS OTHERWISE NOTED, TESTING CONTINUES " AFTER ANY ERROR. 2. ALL UNSOLICITED KBD INPUTS ARE IGNORED EXCEPT FOR: <*0> <*C> SUPPRESS TTY QUTPUT HALT (RETURN TO COMMAND MODE) Vv VSV11/yS11 == RASTER GRAPHIC DI MACRO M1113 29-JAN-B81 17:22 J PAGE 8 SEQ 0009 AL 416 617 418 419 6.1 THE DPU TESTS 420 621 THE TESTS IN THIS SECTION ARE THE 'DPU ONLY'' TESTS. THEY ARE RUN WHENEVER THE PROGRAM IS RUN AND THE TEST 422 423 SWITCH DOE5S NOT EXCLUDE THEM. &24 425 26 427 428 429 430 3 432 433 6.1.1 437 438 439 6.1.2 TEST 2. RESET ONES CORRECT STATIC STATE. 442 443 &47 4L4LB STATIC RESET SET ALL REGISTERS TO ONES, CHECKING THAT ONES GOT SET, THEN EXECUTE A RESET INSTRUCTION AND CHECK EACH REGISTER FOR ITS &4 446 TEST 1. (WILL) BE RUN. FOR ITS CORRECT STATIC STATE. 440 AN 445 THE ONLY TESTS THAT MAY EXECUTE A RESET INSTRUCTION AND CHECK EACH APPLICABLE REGISTER 434 435 436 WHEN IN THE "DPU ONLY'' MODE THESE ARE 5.1.3 TEST 3. SOFT INIT ONES SET ALL REGISTERS TO ONES, CHECKING THAT ONES GOT SET, THEN 449 450 EXECUTE A SOF TWARE INITIALIZE AND CHECK EACH REGISTER FOR ITS CORRECT STATIC STATE. 451 452 453 454 455 456 6.1.4 457 458 4«60 464 465 466 467 REGISTER UNIQUE ADDRESS ALL REGISTERS ARE SET TO THEIR NORMAL STATIC STATE VIA SOFT INIT. EACH APPLICABLE REGISTER, IN TURN, IS SET TO ITS CAPACITY FOR ONES. THEN ALL OF THE OTHER REGISTERS ARE (HECKED THAT THEY REMAINED STATIC. 459 461 462 463 TEST 4. 6.1.5 INCREMENT AND CHECK EACH REGISTER TO THE LIMIT OF ITS CAPABILITY, v Wi VSV11/yS11 == RASTER GRAPHIC DI MACRO M1113 &69 470 7 29-JAN-81 17:22 6.1.6 47 47 K PAGE 9 SEQ 0010 TEST 6. DPU START=STOP TEST 1 VERIFIES THAT THE DISPLAY PROCESSER (DPU) CAN EXECUTE START, STOP, RESUME, NOP, AND JUMP INSTRUCTIONS. L74 475 476 477 478 479 430 4«81 482 483 LB4 485 486 LB7 4«88 489 490 49 492 493 494 495 496 437 498 49y 500 501 502 503 6.1.7 TEST 7. DPU OPCODES ALL OPCODES WHICH TRANSFER PIXEL INTENSITY DATA TO THE DPU (100000 THRU 130000) ARE EXECUTED AND THE DSR IS TESTED TO VERIFY THAT THE PIXEL DATA WAS RECEIVED AND RETURNED BY THE DPU. ALL POSSIBLE VALUES OF PIXEL DATA ARE PASSED WITH EACH OPCODE. THEN ALL REMAINING OPCODES EXCEPT BIT MAPS (134000 AND 136000), JUMP (160000), AND STOP (172000) ARE EXECUTED WITH BITS <9:0> OF THE OPCODE WORD SET TO ZERO AND WITH IN THIS CONFIGURATION, EACH NO FOLLOWING DATA WORD. OPCODE (INCLUDING THOSE UN-DEF INED) SHOULD APPEAR AS A 'NOP'' AS FAR AS FINAL REGISTER CONTENT IS CONCERNED. 6.1.8 TEST 8. INCREMENTING HISTOGRAM- BASE ADDRESS SET BASE HISTOGRAM AND INCREMENT THE BASE ADDRESS REGISTER TO ITS CAPACITY. 6.1.9 TEST 9. ; INCREMENTING CHARACTER BASE ADDRESS SET BASE CHARACTER AND INCREMENT THE BASE ADDRESS REGISTER TO = 6.1.10 ~NO N H W WN =0V vV ii ITS CAPACITY. TEST 10. DJMS/DPOP CHECK THE OPERATION OF THE JUMP TO SUBROUTINE INSTUCTION, INCLUDING THE ENABLE BIT AND THE PCSAVE REGISTER. 6.1.11 TEST 11. MAIN MEMORY MGT ACCESS (OVER 28K) CHECK MAIN MEMORY MANAGEMENT ACCESS FOR ALL AVAILABLE MEMORY OVER 28K. Ve L9 | ySV11/VS11 == RASTER GRAPHIC DI MACRO M1113 29-JAN-81 17:22 PAGE 10 525 38 st 3 Qe PRSI S 526 543 6.1.12 AUX MEMORY MGT ACCESS (OVER 28K) TEST 12. gcggkzggx MEMORY MANAGEMENT ACCESS FOR ALL AVAILABLE MEMORY 6.1.13 TEST 13. STOP INTERRUPT THIS TEST VERIFIES THAT THE STOP INTERRUPT LOGIC IN THE DPU FUNCTIONS CORRECTLY. VARIOUS COMBINATIONS OF i;gPEig§6¥ggTIONS WITH INTERRUPT ENABLED AND DISABLED 6.1.14 TEST 14. DPU TIME-OUT INTERUPT IN THIS TEST, A NON-EXISTANT MEMORY ADDRESS IS PASSED TO THE DPU PC. IT SHOULD RESPOND WITH A TIME-OUT INTERRUPT BACK TO THE CPU. 6.1.15 TEST 15. ERROR CODES GENERATE EACH ERROR CONDITION POSSIBLE (TO SOF TWARE) AND CHECK FOR APPROPRIATE ERROR CODE GENERATION. 6.1.16 TEST 16. ADDRESS RELOCATE THIS TEST VERIFIES THAT THE DPU CAN CALCULATE AN 18 BIT PC FROM AN INITIAL 16 BIT PC, PLUS THE CONTENTS OF THE 12 BIT RELOCATE REGISTER. SINCE THE 2 HIGH ORDER ADDRESS BITS ARE INVISIBLE, THE TEST RELIES ON THE FACT THAT ANY CALCULATED PC WHICH EXCEEDS 18 BITS IN LENGTH WILL BE TRUNCATED TO 18 BITS (I.E. WRAP AROUND TO 000000). THE TEST USES ALL COMBINATIONS OF RELOCATE FACTOR AND INITIAL PC THAT YIELD A FINAL PC WITHIN THE TEST BODY. SEQ 0011 - | VSV11/VS11 == RASTER GRAPHIC DI MACRO M1113 574 575 377 29-JAN-81 17:22 6.1.17 584 585 586 587 588 589 590 gg} SUCH THAT: BASE + 2(CODE) =_SUBROUTINE ADDRESS. THE FULL ASCII SET (000 = 177) IS TESTED IN THIS MANNER. IF THE PROGRAM IS NOT RUNNING IN DPU-ONLY MODE, THE FULL CHARACTER SET IS THEN DISPLAYED ON THE SCREEN TWICE: IN THE TOP DISPLAY, THE CHARACTERS ARE SITUATED ON EVEN-NUMBERED SCAN LINES, WHILE IN THE BOTTOM DISPLAY THEY ARE ON 593 594 595 596 ODD-NUMBERED SCAN LINES. 597 598 601 603 - C(HARACTERS IN THE VSV11, THERE IS NO HARDWARE CHARACTER GENERATOR. INSTEAD, CHARACTER MODE CAUSES A SUBROUTINE CALL TO A SUBPICTURE DISPLAY FILE WHICH CONTAINS THE CODE TO DRAW THE DESIRED CHARACTER OR SYMBOL. THE CHARACTER SUB-PIX ADDRESS IS OBTAINED BY USING THE ASCII CHAR CODPE TO INDEX INTO AN ADDRESS TABLE WHICH CONTAINS THE STARTING ADDRESSES OF THE CHAR SET. THE STARTING ADDRESS OF THE ADDRESS TABLE IS SET WITH THE ''SET CHAR BASE'' INSTRUCTION, AND EACH CHAR SUB-PIX IS TERMINATED WITH A 'DPOP'" INSTRUCTION. THIS TEST USES 1 COMMON SUBROUTINE AS A PSUEDO-CHARACTER AND SETS A UNIQUE BASE ADDRESS FOR EACH CHARACTER CODE 578 579 580 581 582 583 599 600 TEST 17. M1 PAGE 11 6.1.18 TEST 18. ABSOLUTE POINTS 608 609 THIS TEST VERIFIES THAT THE DPU CAN EXECUTE ABSOLUTE POINT MODE INSTRUCTIONS UTILIZING THE FULL RANGE OF X/Y. (1) PLOT ALL X POINTS, HOLDING Y AT 0. (2) PLOT ALL Y POINTS, HOLDING X AT 0. (3) PLOT ALL POINTS WHERE X =Y. THE X AND Y POSITION REGISTERS ARE TESTED AS EACH POINT 611 g}% BY DEFAULT, PIXEL DATA ARE TRANSFERRED TO THE IMAGE MEMORY, AND DISPLAYED ON THE MONITOR (IF THERE IS ONE). 614 BY RESPONDING <YES> TO THE 'RUN DPU TESTS ONLY'' QUERY 604 605 606 607 1S EXECUTED. 610 THE IMAGE MEMORY AND VIDEO DISPLAY MAY BE INHIBITED 615 AT START TIME. 616 617 618 619 620 652 6.1.19 TEST 19. LONG VECTORS 623 624 625 626 627 GENERATES LONG VECTORS WITH POSITIVE DELTA X/Y FROM X,Y = 0,0 TO ALL POINTS WHERE X = Y (FANS DIAGONALLY FROM BOTTOM TO LEFT EDGE). THEN A SIMILAR PATTERN USING NEGATVE DELTA X/Y STARTING AT X,Y = MAX,MAX. THE X AND Y POSITION REGISTERS ARE TESTED AS EACH - 630 VIDEO DISPLAY IS INHIBITED IF ‘DPU ONLY'' WAS SPECIFIED. g;g VECTOR IS DRAWN. -~ | SEQ 0012 r VSV11/VS11 == RASTER GRAPHIC DI MACRO M1113 29-JAN-81 17:22 6.1.20 TEST 20. N1 PAGE 12 RELATIVE POINTS VERIFY THAT THE DPU CAN GENERATE RELATIVE POINTS FROM X,Y = 1000,1000 USING THE FULL RANGE OF DELTA X/Y (=76 TO +76) (1) PLOT ALL X POINTS, HOLDING Y AT =76. (2) PLOT ALL Y POINTS, HOLDING X AT =76. (3) PLOT ALL POINTS WHERE X = Y. THE X AND Y POSITION IS VERIFIED AS EACH POINT IS DRAWN. VIDEO DISPLAY IS INHIBITED IN ‘DPU ONLY'' MCDE AS BEFORE. 6.1.21 TEST 21. SHORT VECTORS SIMILAR TO TEST 10 ABOVE, EXCEPT USING SHORT VECTORS. 6.1.22 TEST 22. RUN LENGTH CHECK ALL ASPECTS OF THE RUN LENGTH MODE. IF RUNNING ‘DPU ONLY'' MODE, YOU WILL SEE '‘'EMD-PASS'’ AT THIS POINT. ALL OF THE REMAINING TESTS REQUIRE THE SERVICES OF THE IMAGE MEMORY. 6.2 IMAGE MEMORY & SYNC GENERATOR TESTS & DISPLAYS THE TESTS & DISPLAYS IN THIS SECTION REQUIRE THE SERVICES OF THE IMAGE MEMORY AND SYNC GENERATOR MODULES. IF THE PROGRAM IS BEING RUN IN THE "DPU ONLY'' MODE, THESE TESTS MAY NOT (WILL NOT) BE RUN. OTHERWISE, THEY WILL BE RUN IN SEQUENCE AS LONG AS THEY ARE NOT INHIBITED BY THE TEST SWITCH. 5.1.23 TEST 23. (URSOR REGISTERS/SWITCH/MAT(H THE (URSOR POSITION REGISTERS, JOYSTICK STATUS ENABLES, THE “'SOFT'' SWITCH, SWITCH INTERRUPT AND MAT(H INTERRUPT ARE TESTED FOR EACH AVAILABLE SYNC GENERATOR CHANNEL. .y i SEQ 0013 6.2.1 TEST 24. GRAPH/HISTOGRAM X GRAPH PLOT ALL X POINTS BETWEEN 200 AND 1600 (IN 30 UNIT INCREMENTS) USING ALL VALUES OF Y INCREMENT. 1.E. X 200, Y INCR 2 X 230, Y INCR & X 1600, Y INCR 76 THEN REPLOT EACH POINT IN HISTOGRAM MODE TO A RELATIVE BASE LINE WHERE BASE = X=20. THE X AND Y POSITION REGISTERS ARE TESTED AS EACH POINT IS PLOTTED (IN BOTH MODES). IF RUNNING ‘DPU ONLY'' MODE, THIS AND ALL FOLLOWING TESTS ARE NOT RUN. 6.2.2 TEST 25. GRAPH/HISTOGRAM Y SAME AS TEST 11, EXCEPT PLOT IN Y. 6.2.3 TEST 26. BIT MAP (1) VERIFIES THAT BIT MAP MODE 1 FUNCTIONS CORRECTLY FOR ALL POSSIBLE RUN LENGTHS (0 TO 511.) AND IN BOTH 4 BIT AND 8 BIT PIXEL MODES. A 256 WORD BUFFER IS FILLED WITH THE VALUE 000377, WHICH WILL YIELD A 2 ON, 2 OFF PATTERN OF 4 BIT PIXELS AND/OR A1 ON, 1 OFF PATTERN OF 8 BIT PIXELS. THE X AND Y POSITION IS VERIFIED AT THE END OF EACH BIT MAP OPERATION. 6.2.4 TEST 27. BIT MAP (0) VERIFIES THAT BIT MAP MODE Q FUNCTIONS CORRECTLY IN ALL IT'S VARIATIONS. - B_2 VSV11/VS11 == RASTER GRAPHIC DI MACRO M1113 29-JAN-81 17:22 PAGE 13 SEQ 0014 - [ ! —— 736 29-JAN-81 17:22 - TEST 28. 6.2.5 737 733 £ PAGE 14 & SEQ 0015 IMAGE MEMORY CLEAR/SET 4 740 %1 NOTE: THIS TEST AND THE ONE FOLLOWING REQUIRE THE SERVICES OF THE PIXEL-READ-BACK FUNCTION. 763 VERIFIES THAT THE IMAGE MEMORY ‘'CLEAR TO ZERO'' AND 764 745 766 “'SET TO DATA'' INSTRUCTIONS FUNCTION CORRECTLY. (1) THE IMAGE MEMORY IS ''CLEARED'' AND SELECTED PIXELS ARE READ-BACK AND VERIFIED. 7a7 748 (2) THE IMAGE MEMORY IS ''SET TO ALL 1°S'* AND SELECTED PIXELS READ-BACK AND VERIFIED. 750 751 752 IN “'SHORT MODE'', TEST ALL X ADDRESSES FOR Y = 0 AND 2 (EVEN VS ODBQ, THEN TEST ALL Y ADDRESSES FOR X = 0. IN "LONG MODE’, TEST ALL PIXEL ADDRESSES. 754 755 756 st NOTE: PART 2 OF TS TEST FILLS THE IMAGE MEMORY WITH ALL 1°S. THE VIEWING AREA SOULD BE ALL WHITE == ANY BLANK SPOTS ARE EITHERNGAD IMAGE MEMORY LOCATIONS OR BURNED SFOTS ON THE CRT WGOSPHOR. 759 760 761 6.2.6 TEST 29. 764 765 CHECK FOR MEMORY INTERLACE BY WRITING A HORIZONTAL, EVEN NUMBERED LINE. AND CHECKING THAT BACK THE '‘LINE'* ABOVE THE ONE 766 WRITTEN READS BACK AS ZERO. 768 S SRR G Ry 770 R G W 772 773 774 175 781 4 784 I R S IMAGE MEMORY PATTERNS IES THAT A GIVEN PIXEL CAN BE SET TO ALL POSSIBLE INATIONS, AND THAT THE READ-BACK FUNCTION CAN CORRECTLY READ THAT DATA. BIT 444 779 A8 SRS INTERLACE 'SHORT'F)NP *LONG'* MODE OPTIONS APPLY AS BEFORE. e e B R B LR e s R R I S 6.2.8 i SNSRI ¥ TEST 31. s NN SPAR i St IS P R— RUNS AS A BLANK TEST R VSV11/vS11 == RASTER GRAPHIC DI MACRO M1113 - 9 VSV11/VS11 == RASTER GRAPHIC DI MACRO M1113 786 | 787 788 789 29-JAN-81 17:22 6.2.9 D PAGE 15 2 SYSTEM VERIFICATION DISPLAY TEST 32. THIS TEST PROVIDES ONE TEST PATTERN IN WHICH ALL GRAPHICS FUNCTIONS ARE EXERCISED: 790 791 792 793 794 795 796 797 798 4. 5. 799 6. 800 801 7. SHORT VECTORS (2 SMALL ONES), AND SOME RELATIVE POINTS INSIDE THE SMALL ONES. GRAPH-HISTOGRAM Y AT UPPER LEFT. GRAPH-HISTOGRAM X AT LOWER RIGHT. BIT MAPS == MODE 1 AT BOTTOM, MODE O AT TOI A CIRCULAR VECTOR SWEEP AT CENTER, SHOWING COLOR/INTENSITY LEVELS. g. A PERIMETER OUTLINE OF THE DISPLAY. . STATIC FOR 2 SECONDS, THEN BLINKING FOR 2 SEONDS. 6.3 STAND-ALONE TESTS & ROUTINES THE TESTS AND ROUTINES IN THIS SECTION ARE STAND-ALONE: THEY ARE NOT INCLUDED IN THE NORMAL TEST SEQUENCE AND MUST BE RUN BY UNIQUE START COMMAND IE. START/TEST:NN<CR> OR RESTART/TEST:NN<CR> 6.3.1 THIS IS A TEST FRAME FOR THE JOY-STICK, AND INCLUDES 3 NESTED BOXES(CO-ORDINATES LABELED), AND AN IN-LINE READ-QOUT OF THE CURRENT JOY-STICK POSITION, eo'ggé£CH” INTERRUPT IS MARKED BY AN “'X'' AT THE CURRENT L - . A 'MATCH'' INTERRUPT (ON THE BOXES ONLY) IS MARKED BY AN X AS ABOVE, AND BY THE WORD 'MATCH'' DISPLAYED AT UPPER RIGHT. SEQ 0016 - | —— | VSY11/VS11 == RASTER GRAPHIC DI MACRO M1113 833 29-JAN-81 17:22 6.3.2 € SEQ 0017 SELECTED DISPLAYS TEST 34. THIS IS A PATTERN GENERATOR FOR COLOR MONITOR CONVERGENCE SET=UP. IT INCLUDES THE FOLLOWING PATTERNS SELECTABLE BY "'TYPE THIS'' (ON CONSOLE) TURN ON BL INKING TURN OFF BLINKING COLOR BARS 7 X 7 DOTS 7X7 CROSSHATCH PERIMETER OUTLINE BASIC COLOR ID GUNS ID ALL WHITE SCREEN ALL BLUE SCREEN ALL GREEN SCREEN W 0O NN = O THE USER AT WILL. W) —=O ! g PAGE 16 —_— e | NOTE: ALTERNATING WHITE SCREEN & PERIMETER OUTLINE ALL RED SCREEN SELECTIONS 4 THROUGH 6 ALSO INCLUDE A PERIMETER OUTLINE OF THE SCREEN, IN WHICH EACH SIDE OF THE OUTLINE INCLUDES 3 'DOTS''. SELECTIONS 3, 7 AND 8 INCLUDE A SOLID WHITE PERIMETER OUTLINE. 6.3.3 TEST 35. PRINT ON THE CONSOLE THE CONF IGURATION OF THE VSV11 SYSTEM. 7.0 PROGRAM LISTING FOLLOWS: .NLIST .DSABL gt BEX GBL ——— — - VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 PROGRAM HEADER .SBTTL 892 893 894 895 896 897 .3 PAGE 17 29-JAN-81 17:22 SEQ 0018 PROGRAM HEADER MCALL Sv( SVC( ; INITIALIZE SUPERVISOR MACROS AL Ee 2R RS 28 4444 3233283832 4443323 4 43444284 334444 IF STRUCTURED MACROS ARE TO BE USED, YOU MUST ADD SPMAC.SML (OR THE CURRENT EQUIVALENT) .REQ .MCALL STRUCT 000001 000001 000001 000001 000001 STRUCT SVCGBL= 1 : LIST GLOBAL TAGS AT RIGHT MARGIN. SVCINS= 1 : DITTO DITTO DITTO : : H SVCTST= 1 SvCsuB= 1 SVCTAG= 1 DITTO TEST TAGS. SUBTEST TAGS. ANY OTHER TAGS. INSTRUCTIONS AND DATA. ; THESE SYMBOLS CONTROL THE LISTING FIELD OF ALL SVC MACRO YOU MAY CHANGE THEM AT ANY TIME OR PLACE. : EXPANSIONS. 1 0 RIGHT-'USTIFY (MAKES IT EASY TO DISTINGUISH SVC'S MACRO CODE FROM YOUR OWN). LEFT-JUSTIFY (ALIGN IN A NORMAL FASHION) . LIST THE EXPANSIONS AT ZZZZZZZZZ!!IZZZXZ112%%%1%%11ZXZZXZXXZXZXZZXZXZX%X%ZZXZZZ%ZZZ%Z% = DON'T 002000 .ENABL .= ABS,AMA 2000 s+ : THE PROGRAM HEADER IS THE INTERFACE BETWEEN ; THE DIAGNOSTIC PROGRAM AND THE SUPERVISOR. 174561 000000 000000 929 002000 930 002000 103 126 126 123 101 000 000 000 101 060 000000 002016 001217 PRGSI1Z= <LSLAST>/16. SVCGBL= 0 SVCINS= 0 : PROGRAM SIZE IN 1/8 K UNITS (OCTAL). : ALIGN THE HEADER STUFF. POINTER BGNSW,BGNSFT ,BGNAU,BGNDU,BGNRPT HEADER C(CVVSA,A,O, 655 ,0 DIAGNOSTIC NAME LENAME : : JASCIT /7C/ LSREV:: L$DEPO: : LSUNIT:: L$TIML:: L$HPCP: : JASCII JASCII JASCII LASCII 7v/ /7v/ 7S/ /A7 .BYTE .BYTE 0 0 LASCID /A7 LASCIT 70/ .WORD 0 .WORD 655. :REVISION LEVEL ;0 :NUMBER OF UNITS ; ;LONGEST TEST TIME :POINTER TO H.W. QUES. VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 PROGRAM HEADER 002016 002240 002522 002224 002502 113404 000000 000000 000000 000000 106760 000000 000000 ©00000 003 003 000000 000000 000060 .WORD L$SPCP: :.UORD ..HORD LSSPTP: :.UORD LSLADP:: ..UORD LSHPTP:: L$STA:: LSCO:: LSDTYP: LSAPT:: LSDTP:: L$PRIO: .WORD .WORD :.HORD :.UORD LSENVI: :.UORD LSEXP1: i.UORD LSMREV: LSEF:: LSSPC:: L$DEVP: LS$SOFT L$HW L$SW LSLAST 0 0 " .BYTE BYTE .WORD .WORD .WORD LBLUN:: L$DESP: .WORD 104035 :.UORD L$LOAD:: .EMT 000000 .WORD 002122 032014 033220 LSETP:: LSICP:s L$CCP:: ;PTR. TO S.W. PTABLE ;DIAG. END ADDRESS ;RESERVED FOR APT STATS TO DISPATCH TABLE ;EXPANSION WORD ;SVC REV AND EDIT # C$SREVISION CSEDIT :DIAG. EVENT FLAGS 0 0 0 L$DU 000000 PTABLE ;FLAGS DESCRIBE HOW IT WAS SETUP 0 .WORD : L$DUT: H.W. ;DIAGNOSTIC RUN PRIORITY 033012 033110 TO DEF. ;PTR. L$AU LSAUT:: ;PTR. LSDISPATCH .WORD 000000 ;PCINTER TO S.W. QUES. ;APT EXPANSION 000000 033272 LSREPP: SEQ 0019 ;DIAGNOSTIC TYPE 0 .WORD .WORD G_2 PAGE 17-1 L $HARD :.WORD :.UORD LSEXP4: :.HORD S: LSEXP :.UORD 002162 002106 002106 29-JAN-81 17:22 L$DVTYP L$RPT ; POINTER TO DEVICE TYPE LIST ;PTR. TO REPORT CODE 0 0 0 L$DESC ESLOAD 0 .WORD LSINIT .WORD L$CLEAN : ;PTR. TO ADD UNIT CODE ;PTR. TO DROP UNIT CODE ;LUN FOR EXERCISERS TO FILL ;POINTER TO DIAG. DESCRIPTION ;GENERATE SPECIAL AUTOLOAD EMT ;POINTER TO ERRTBL ;PTR. TO INIT CODE ;PTR. TO CLEAN-UP (ODE VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 PROGRAM HEADER 002110 002110 002112 002112 002114 002114 002116 002116 002120 002120 002122 002122 002122 002162 002162 002162 923 934 935 936 937 938 339 540 033216 032004 000000 000000 000000 052 126 000001 177777 29-JAN-81 17:22 LSACP:: H_2 PAGE 17-2 ;PTR. TO AUTO CODE .WORD L$AUTO .WORD LSPROT .WORD 0 .WORD ¢ .WORD 0 LASCIZ /*xxx ySV11=VS11 DIAGNOSTIC w*x*/ DEVIYP <VSV11-VS11, AND DISPLAY MONITOR> "'ASC1Z /VSV11-VS11, AND DISPLAY MONITOR/ LSPRT:: LSTEST:: L$DLY:: : LSHIME: LS$DESC:: TO PROTECT TABLE sTEST NUMBER ;DELAY COUNT sPTR. TO HIGH MEM DESCRIPT <x#x% ySV11=VS11 DIAGNOSTIC *wx*»> .EVEN LEDVTYP: ;PTR. .EVEN Sv{GBL= 1 SVCINS= 1 SVCGBL==1 SVCTST==1 Sv(SuB=-1 SVCTAG==1 SVCINS==1 ; SHOVE EVERYTHING BACK TO THE RIGHT. ; KILL ALL SVC STUFF. SEQ 0020 ———————————————————————— ‘ e —— e — e e e . o S VEV11/vS11 == GRAPHIC SYS. DIAG MACRO M1113 DEFAULT HARDWARE P=TABLE 29-JAN=-B1 17:22 [ 2 PAGE 18 SEQ 0021 gz% _SBTTL 964 945 s4e * THE DEFAULT HARDWARE P-TABLE CONTAINS DEFAULT VALUES OF gzg : 1S IDENTICAL TO THE STRUCTURE OF THE RUN=-TIME P-TABLE. " THE TEST-DEVICE PARAMETERS. THE STRUCTURE OF THIS TABLE ggg 002222 ; 946 951 002224 952 953 002226 954 955 002230 956 002232 957 002234 958 959 002236 DEFAULT HARDWARE P-TABLE BGNMW DFPTBL :DEFAULT HARD-P-TABLE 172010 .WORD 172010 000320 .WORD 320 000200 000000 000000 .WORD .WORD .WORD PR]04 0 O . 1ST (OF 4) REGISTER(S). ( 7 IF LUT INSTALLED ). 1ST (OF 4) VECTOR(S). ( S IF LUT INSTALLED ). INTERRUPT PRIORITY. LUT AVAILABLE (IF NONZERO) ENDHW SYNC FREQUENCY: 0 = 60KZ NZ = VSV11/y511 == GRAPHMIC SYS. DIAG MACRO M1113 | WARDWARE PARAME TER (ODING SECTION 29-JAN-81 17:22 _SBTTL % I 398 * WITH THE OPERATOR. 3;1 002236 i BGNHRD GPRMA GPRMD GPRML WPM2,2,0,0,776,YES MPM3.4.0.340,0.7.YES HPM&.6.=1,YES 97§ 002240 GPRMA 977 002300 GPRML 974 002250 975 002260 976 002272 104 105 126 HWPM1: m 114 116 125 124 1264 980 002340 061 983 002450 106 981 002370 982 002420 984 985 002500 SEQ 0022 © THE MARDWARE PARAMETER CODING SECTION CONTAINS MACROS * THAT ARE USED BY THE SUPERVISOR TO BUILD P=TABLES. THE ARE * MACROS ARE NOT EXECUTED AS MACHINE INSTRUCTIONS BUT THE * INTERPRETED BY THE SUPERVISOR AS DATA STRUCTURES. MACROS ALLOW THE SUPERVISOR TO ESTABLISH COMMUNICATIONS 964 %5 966 97 968 979 002310 ¢ HARDWARE PARAMETER CODING SECTION gg‘. 978 002306 Jd PAGE 19 123 122 124 HPM2: HWPM3: HWPM4: 105 HPMS: ;GET 1ST REGISTER ADDRESS. HPM1,0.0.160000,177776,YES SGET 1ST VECTOR ADDRESS. HPMS5.10,-1,YES EXIT HRD :GET INTERRUPT PRIORITY. TASK IF LUT AVAILABLE “ASK [F FREQUENCY = 50 MZ. .ASCIZ /DEVICE ADDRESS / .ASCIZ .ASCIZ /INTERRUPT PRIORITY /LUT INSTALLED / / .ASCIZ /1ST INTERRUPT VECTOR .ASCIZ /FREQUENCY = S0WZ ’ ENDHRD / / . K | YSY11/vS11 == GRAPHIC SYS. DIAG MACRO M1113 29-JAN-81 17:22 PAGE 20 2 SEQ 0023 SOf TWARE P-TABLE SOF TWARE P-TABLE © & .SBTTL : THE SOF TWARE P-TABLE CONTAINS THE VALUES OF THE PROGRAM : PARAME TERS THAT (AN BE CHANGED BY THE OPERATOR. 993 002500 994 002502 000000 DPUMOD:: BGNSW .WORD 957 002504 000000 IMTMOD:: .WORD 1000 002506 000000 TIDFLG:: .WORD SFPTBL ¢ DPU/MEM TEST MODE... ..NZ = RUN DPU ONLY. IMAGE MEMORY TEST MODE... .. 0 = SHORT TEST... ...NZ = LONG TEST. TEST ID'S.. . .WORD 1003 002510 000000 NOITS:: 1006 002512 000000 MFGFLG:: 1009 002514 1010 002516 000031 000310 LERRMAX:: .WORD : : GERRMAX ENDSW .WORD .WORD 2N 2 200. 0= TVPE TEST ID AT EACH TTET START.. NZ = DON'T. XNHIBIT ITERATION OPTION. 0 = ITERATE. ..NZ = INHIBIT ITERATE. MANUF ACTURING TEST MODE... «e. 0 = USER/FIELD SVC... ..NZ = MANUFACTURING. LOCAL (PER TEST) ERROR LIMIT GLOBAL (PER UNIT) ERROR LIMIT VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 SOF TWARE PARAMETER CODING SECTION 29-JAN-81 17:22 }8}2 .SBTTL 1017 D44 1025 002520 GPRML GPRML ;GPRML GPRML GPRML GPRMD GPRMD 1026 002522 1027 002530 1028 1029 002536 1030 002544 1031 002552 1032 002564 1038 002710 1039 002740 1040 002770 1041 003020 SOF TWARE PARAMETER CODING SECTION ; WITH THE OPERATOR. ;8%2 1034 C02600 1035 002630 1036 1037 002660 SEQ 0024 : MACROS ALLOW THE SUPERVISOR TO ESTABLISH COMMUNICATIONS 1022 1033 002576 2 : THE SOF TWARE PARAMETER CODING SECTION CONTAINS MACROS : THAT ARE USED BY THE SUPERVISOR TO BUILD P=TABLES. THE : MACROS ARE NOT EXECUTED AS MACHINE INSTRUCTIONS BUT ARE > INTERPRETED BY THE SUPERVISOR AS DATA STRUCTURES. THE .. 1018 1019 1020 1021 L PAGE 21 122 114 125 117 116 116 111 115 120 116 101 105 110 116 122 120 105 122 SPM1: SPM2: :SPM3: SPMé: SPM5: SPMé: SPM7: BGNSFT ; GET OPTIONAL DPU ONLY FLAG. SPM1,0,-1,YES ; GET MEM TEST MODE. SPM2,2,-1,YES ; GET TEST ID CONTROL. SPM3,4,-1,YES ; GET ITERATION CONTROL. SPM4,6,-1,YES ; GET MANUFACTURING MODE. SPM5,10,-1,YES ; GET LOCAL ERROR LIMIT ,YES SPM6,12.D,7777,0,7777 ; GET GLOBAL ERROR LIMIT ,YES SPM7,14,D,7777,0,7777 EXIT SFT .ASCIZ .ASCIZ _ASCIZ LASCIZ LASCIZ .ASCIZ LASCIZ ENDSFT /RUN DPU TESTS ONLY /LONG MEMORY TESTS /INHIBIT TEST ID'S /INHIBIT ITERATIONS /MANUFACTURING MODE /PER TEST ERROR LIMIT /PER UNIT ERROR LIMIT ; UNUSED. / / / / / / / VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 GLOBAL EQUATES SECTION 29-JAN-81 17:22 .SBTTL 3 M PAGE 22 2 SEQ 0025 GLOBAL EQUATES SECTION ¢ : THE GLOBAL EQUATES SECTION CONTAINS PROGRAM EQUATES THAT ; ARE USED IN MORE THAN ONE TEST. 1 ; GET STANDARD EQUATES. EQUALS 1050 003020 ; BIT DIFINITIONS BIT15== 100000 BIT14== 40000 BIT13== 20000 BIT12== 10000 BIT11== 4000 BIT10== 2000 BIT09== 1000 BIT08== 400 BITO7== 200 BIT06== 100 BIT05== 40 BITO4== 20 BIT03== 10 BIT02== 4 BITO1== 2 BITO0== 1 BIT9== BIT8== BIT7== BITé== BIT5== BIT4== BIT3== BIT2== BIT1== BITO== * 000040 000 000036 000035 000034 BIT09 BITO8 BITO7 BIT06 BITO5 BITO4 BITO3 BIT02 BITO1 BIT00 EVENT FLAG_DEF INITIONS EF32:EF17 RESERVED FOR SUPERVISOR TO PROGRAM COMMUNICATION EF .START== EF .RESTART== EF.CONTINUE== EF .NEW== EF .PWR== 32. 3. 30. 9. 28. * PRIORITY LEVEL DEFINITIONS 000340 000300 000140 000100 PRIO7== PRI06== PRIQS== PRIO4== 340 300 240 200 PRI03== 140 PRI0Z2== 100 START COMMAND WAS ISSUED ; RESTART COMMAND WAS ISSUED CONTINUE COMMAND WAS ISSUED : A NEW PASS HAS BEEN STARTED A POWER-FAIL/POWER-UP OCCURRED VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 GLOBAL EQUATES SECTION 000040 29-JAN-81 17:22 PRIO1== 40 PRI00== 0 :OPERATOR FLAG BITS Evi== LOT== ADR== IDU== [SR== UAM== BOE== PNT== PRI== 1051 100000 IXE== IBE== IER== LOE== HOE== 4 10 20 40 100 200 400 1000 2000 4000 10000 20000 40000 700000 N_2 PAGE 22-1 SEQ 0026 VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 MEMORY MANAGEMENT DEF INITIONS 29-JAN-81 17:22 .SBTTL B.3 PAGE 23 MEMORY MANAGEMENT DEF INITIONS ;*kT11 VECTOR ADDRESS 000250 MMVEC= 250 ;*KT11 STATUS REGISTER ADDRESSES 177572 77574 177576 172516 SRO= SR1= SR2= SR3= 177572 177574 177576 172516 ;*KERNEL '‘I'* PAGE DESCRIPTOR REGISTERS 0 2302 NN NNNNNN el ol anld ol wnilh sl | KIPDRO= KIPDR1= KIPDR2= KIPDR3= KIPDR4= KIPDRS= KIPDR6= KIPDR7= 1 1 1 1 1 1 1 1 ;*KERNEL ''I'' PAGE ADDRESS REGISTERS KIPARO= KIPAR1= KIPAR2= KIPAR3= KIPAR4= KIPARS= KIPAR6KIPAR7= 172340 172342 172344 172346 172350 172352 172354 172356 SEQ 0027 | VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 vSV=11 INSTRUCTION EQUATES. 29-JAN-81 17:22 LSBTTL }839 *PLOTTING INSTRUCTIONS. 1093 1094 1095 1096 1097 1833 100000 104000 110000 114000 120000 124000 130000 1103 1104 1105 }}89 002000 003774 003774 003774 003374 1108 1109 SVEC== LVEC== APNT== GHX== GHY== RPNT== SEQ 0028 100000 104000 110000 114000 120000 124000 130000 : CHARACTER MODE. *SHORT VECTOR MODE. :LONG VECTOR MODE. *ABSOLUTE POINT MODE. *GRAPH/HISTOGRAM X MODE. *GRAPH/HISTOGRAM Y MODE. *RELATIVE POINT MODE. "PIXEL DATA FIELD <10:2> FOR THE ABOVE OPCODES. }}8? 1102 CHAR== ¥ VSV=11 INSTRUCTION EQUATES. ?838 1092 £ PAGE 24 {0== L255== ALL== ALLB== ALLNB== BIT10 L0'<255.+BIT2> L255 3774 3374 : LEVEL 0 (BLACK) IS JUST THE ENABLE. : LEVEL 255 IS THF MAX POSSIBLE. : ALL INTENSITIES (WITH BLINK). * ALL INTENSITIES (WITHOUT BLINK). 2 :COLOR DEFINITIONS: 1110 003774 WHITE == ~03774 ; ALL 1112 1113 1114 1115 1116 1117 1118 1119 ;}gg 003000 003400 002200 002100 003600 003500 003300 003200 002300 GRN2 == “0<1000'2000> : BIT9ILC GRN3 == GRN1!GRN2 . BIT8!BITY REDG == “0<200!'2000> : BIT7!'LO BLUEG == ~0<10012000> : BIT6!LO YELLOW == GRN3'REDG EGGBL == GRN3!'BLUEG VIOLET == GRN2'REDG'BLUEG GOLD == GRNZ2!'REDG MAGEN == REDG'BLUEG 1111 002400 }}%% GRN1 == ~0<400!'2000> ; BIT8'LO : COLOR LOOK=-UP-RAM DEF INITIONS. 1124 010000 LREA == 1+*B]JT12 LDl== 1*BIT10 : CSR == READ DATA FROM ADDR <7:0>. 1127 010000 LSET== 1+BIT12 : DATA REG -- SET ALL ADDRESSES TO... }}gg 1128 002000 }}%8 1131 1132 1133 1134 1135 1136 1137 1138 };zg 1144 INTERRUPT ON READ/WRITE DONE. :...DATA PATTERN IN <11:0>... :...BLUC11:8>, GRN<7:4>, RED<3:0>. 000100 000040 000020 000010 000004 000000 000001 000002 000003 %}2} 1143 - GCOFF== CvC== REDC== GRNC== BLUC== MDVO== MDVi== MDV2== MDV3== 1+BIT6 1*BITS 1+BIT4 1#+B]T3 1+BIT2 0 1 2 3 : MAINT REG -- GAMMA CORRECT OFF. : COMP VIDEO > MDAC (READ-ONLY). : RED DAC > MDAC (READ=-ONLY). : GRN DAC > MDAC (READ-ONLY). : BLU DAC > MDAC (READ=-ONLY). * SET MAINT DAC TO 0.0 V. ; 0.5 V. : 1.0 V. : 1.35 v. * BIT MAP MODE DEF INITIONS. 136000 137000 BM14== BM18== 136000 137000 : MODE 1 WITH & BIT PIXELS. * MODE 1 WITH 8 BIT PIXELS. i ——————— e e e Pt VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 vSv=11 INSTRUCTION EQUATES. 29-JAN-81 17:22 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 :i } 28 134000 135000 000000 000001 000002 000003 000010 000020 000050 000060 000100 000400 000200 BMO4== 134000 BM08== 135000 0 M32== 1 Mb4== M128== 2 M256== 3 10 Ex2== 20 EXx4==" EXSM2== 50 EXSM4== 60 R256== 100 RND8== 400 0DDSKP== 200 1161 1162 1163 1164 144000 000100 000040 000400 RNLN== 144000 DBLPIX== YDOWN== BIT5 RLSKIP== BIT8 1165 1166 1167 3 SEQ 0029 PIXEL COUNT IN <8:0>. 1145 1146 D PAGE 24=1 162000 IMREAD== 162000 MODE O WITH 4 BIT PIXELS. MODE O WITH 8 BIT PIXELS. 32 SQUARE PIXEL ARRAY. 64 SQUARE. 128 SQUARE. 256 SQUARE. EXPAND BY 2, NO SMOOTHIMG. EXPAND BY 4, NO SMOOTHING. EXPAND AND SMOOTH BY 2. EXPAND AND SMOOTH BY 4. 256 X 256 RESOLUTION. ROUND FOR 8-BIT-WIDE IMAGE MEMORY SKIP ODD-NUMBERED LINES ON SCREEN (FOR NON=INTERLACED) ;awal BIT6 ;OP-CODE FOR RUN-LENGTH MODE ; DOUBLE THE PIXEL COUNT ; DISPLAY LINES TOP-TO-BOTTOM :SKIP LINES, WITHOUT THROWING THE DATA AWAY (FOR RUN-LENGTH MODE ONLY) SKIPS EVEN LINES IF START ON EVEN, & VICE-VERSA oo e e s i i £ | i © YSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 vSVv=11 INSTRUCTION EQUATES. }}gg 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 146040 146060 146100 146016 146013 146012 175000 175000 146000 175400 29-JAN=-81 17:22 PAGE 25 ;CONTROL AND STATUS INSTRUCTIONS. CUOFF== 146040 CUON== CURD== CUIM== CUIS== 146060 146100 146016 146013 CUIOFF== 146012 CUWT== 175000 ;CURSOR (JOY=STICK) VIDEO OFF. ;CURSOR VIDEO ON. JREAD JSX,JSY => DXR,DYR, s INTERRUPT ON MATCH (SWITCH DISABLED). s INTERRUPT ON SWITCH (MATCH DISABLED). ; INTERRUPTS (BOTH) OFF. ; CURSOR WRITE. LDCP== 175000 LDJSS== 146000 LDECC== 175400 ; LOAD CURSOR POSITION (=CUWT) ;LOAD JOYSTICK STATUS DISPLAY INSTRUCTION ;LOAD EXTENDED CURSOR CONTROL ; SOFT SWITCH ON. ; BLINK, ; NO BLINK. 1181 1182 }}gz 000002 175401 175400 SWCHON== BIT1 BLINK== 175401 NBLINK==175400 1185 1186 1187 1188 000002 000001 000010 000004 JSWE == BIT1 JSWD == BITO JMWE == BIT3 JMWD == BIT?Z }}g? 000020 JCWD == BIT4 ; ; ; ; ; ; 1189 1192 000040 3 JCWE == BITS5 JOYSTICK SWITCH-ENABLE WRITE ENABLE JOYSTICK SWITCH-ENABLE WRITE DATA CURSOR MATCH-ENABLE WRITE ENABLE CURSOR MATCH-ENABLE WRITE DATA CROSSHAIR-INTENSITY WRITE-ENABLE CROSSHAIR-INTENSITY WRITE DATA 1193 ]432 150000 152000 SETHB== 150000 SET(B== 152000 ;SET GRAPH/HISTO BASE LINE. ;SET CHARACTER BASE ADDRESS. 1196 1197 1198 160000 160001 164000 DJMP== DJMS== DNOP== 160000 160001 164000 ;DISPLAY JUMP. INE ;DISPLAY JUMP-TO-SUBROUT ;DISPLAY NO-OP. 1199 1200 1201 1202 1203 165000 164001 DPOP== SYNC== 165000 DNOP+1 ;DPOP = RTS FROM CHARACTER SUB-PIX. ;PROCEED IN SYNC = DNOP + N <8:0>. ;WAITS FOR N OCCURRENCES OF VERTICAL... :...SYNC START, THEN PROCEEDS... ;...(16.6MS @ 60HZ OR 20MS @ 50HZ). ;SPECIFY AUX. SEGMENT IN DISPATCH ADDRESSES. }ggg 000001 AUXSEG== BITO 1206 1207 }sgg 170200 170140 170100 SWTCH== 170200 CLRMEM== 170140 SETMEM== 170100 ;SWITCH READ/WRITE STATUS. ;CLEAR IMAGE MEMORY TO 0°'S. ;SET IMAGE MEMORY TO CURRENT PIX DATA. 1210 1211 1212 1213 }S}g 172000 171000 STOP== 172000 SIOFF== 171000 ;DISPLAY STOP. ;STOP INTERRUPT DISABLE. ;STOP INTERRUPT ENABLE. ;STOP, DO NOT INTERRUPT. ;STOP AND INTERRUPT. 1216 15}; 174100 174100 GXI== Gyl== 1219 1220 1221 000001 000010 176000 HCPY== BIT0 BIT3 SWwE== PROTEC== 176000 1222 1223 1224 1225 171400 173000 173400 176050 176034 176036 176074 SION== 171400 STOPN== STOP!SIOFF STOPI== STOP!SION 174100 GXI READ== 176040 !SWE ! SWE 176024 WRT== WRT1== 176026!SWE RDWRT== READ'!WRT ;SET X INCREMENT <5:0> FOR GRAPH/HST Y, ;SET Y INCREMENT <5:0> FOR GRAPH/HST X, ;ENABLE HARD-COPY. ;ENABLE SWITCH RD/WRT. sPROTECT MEMORY (OFF). :READ MEM (DISPLAY), SWITCH ENABLED. ;WRITE MEM (1°'S AND 0°'S), SWITCH ENABLED JWRITE MEM (1°'S ONLY), SWITCH ENABLED. ;READ, WRITE ALL DURING RETRACE. SEQ 0030 | USVI1/VS11 == GRAPHIC SYS. DIAG MACRO M1113 vSv=11 INSTRUCTION EQUATES. , | 3 :READ, WRITE 1'S DURING RETRAC(E. :READ MEM => HARD (OFY DEVICE. 1226 }Sgg 176076 176051 RDWRT1== READ!WRT1 HCOPY== READ!H(CPY 1229 1230 000000 000400 001000 001400 (HO== (H1== (H2== (H3== 0 BIT8 BIT9 BIT8!BIT9 ;CHANNEL SELECT BITS... :+s.FOR MEMORY CONTROL... ... INSTRUCTIONS (176XXX). 123% 1235 000000 000400 JSO== JSi== (MO (M) :JOY=STICK UNIT SELECT BITS... :...FOR CURSOR CONTROL... 1237 001400 JS3== (M5 1231 :ggg ' 29-JAN-81 17:22 £ PAGE 25-1 1236 001000 JS¢== (W¢ ... INSTRUCTIONS (146XXX). SEQ 0031 1239 1240 1241 1242 1243 1244 1245 1246 1247 INSTRUCTION EQUATES. G PAGE 26 3 SEQ 0032 ;OTHER USEFUL DEFINITIONS. s INTENSIFY VECTOR OR POINT. ;MINUS SIGNS FOR... J...SHORT FORM VECTOR DATA. sMINUS SIGN FOR LONG FORM DATA. 040000 020000 000100 020000 ;ANOTHER MINUS SIGN 020000 040000 020000 060000 010000 ;USE GHX/GHY DATA AS HISTOGRAM. :USE GHX/GHY DATA AS CONNECTED GRAPH :USE GHX/GHY DATA AS FILLED HISTOGRAM (BAR=-GRAPH) : INHIBIT ERROR DURING PLOT. ;MAXIMUM X ADDRESS (512 X 512 x 2). 001776 001776 000776 000776 HAF X 001776 000776 MAXY50== 511.%2 HAFY50== <MAXYS50/2>=1 sMAX VISIBLE Y ON 50HZ SYSTEM. 001676 000736 MAXY60== <511,.=32.>*2 ;MAX VISIBLE Y ON 60HZ SYSTEM. 000002 000002 000004 000000 000001 000002 000003 000004 000004 000006 000006 000005 000007 000010 000014 <MAXX/2>=1 HAF Y60== <MAXY60/2>=1 DX== 2 DYN]== DX*2 DY ]=z= ;SAME FOR Y. sHALF MAX X (CENTER SCREEN). ;SAME FOR Y. sHALF VISIBLE Y. sHALF VISIBLE Y. ;DELTA X (1 PIXEL UNIT). ;DELTA Y, INTERLACED MODE. sDELTA Y, NON=INTERLACED MODE. DX .DSR REGISTER SELECT CODES: SELDSR== ;SELECT REAL DSR SELP(S== sSELECT PCSAVE OO B WN=O VSv=11 29-JAN-81 17:22 SELFLG= SELCSR== SELMRR== SELMPM== SELXRR== SELXPM== SELHBA== SELCBA== WE== ELMRR ELXRR NV ! VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 BIT3 ! WE SETMRR== SELMRR ;SELECT FLAGS ;SELECT CSR sSELECT MAIN RELOC sSELECT MAIN PROTECT sSELECT AUX. RELOC sSELECT AUX. PROTECT sSELECT H-BASE ;SELECT C-BASE :DSR WRITE-ENABLE ;SET MAIN-SEG RELOCATION REGISTER TO 0... ;...0R SETMR!<ADDR/2> TO RELOCATE. sSET MAIN-SEG PROTECTION MASK ;SET AUX.-SEG RELOCATION REGISTER ;SET AUX.-SEG PROTECTION MASK ;WRITE THE CSR REGISTER ;CLEAR THE FLAGS REGISTER ; SET REAL DSR. ; SET THE CSR REGISTER. ; CLEAR THE FLAGS REGISTER. 000015 000016 000017 SETMPM== 15 SETXRR== SELXRR!WE SETXPM= =17 WRTCSR== SELCSR!WE CLFLGS ==SELFLG!WE SETDSR ==SELDSR!WE SETCSR ==WRT(CSR SETFLG== CLFLGS 000000 042000 P1XRBK == ;PIXEL READBACK == <15:14>=00 RSTPOS== 2+BIT14 WRTCPX= = 3+B]T14 JRESTORE 000013 000012 000010 000013 000012 100000 140000 040000 J'WRITE'' FUNCTIONS FOR DXR (BITS 15-14): *BIT14 WRTJSS== 1'81114'81710 GTJSSW 2 BTl SWRITE JOYSTICK STATUS REGISTER == <15:14>=01 TRUE X=Y POSITION TO DXR,DYR == <15:14>=10 ;aaeal *WRITE CURSOR POSITION X=COORDINATE == <15:14>=11 JGET JOYSTICK SWITCH INTERRUPT COORDINATES Pyt | 29-JAN=-81 17:22 VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 | VSv=11 INSTRUCTION EQUATES. | ! ; f ' ! ] 1296 : 040000 100000 140000 WRTMSR== 1*B]T14 SINIT== 2+BIT14 WRTCPY== 3*B]T14 1304 1305 000040 000100 FORCSI== BITS ENECHK== BIT6 1307 1308 1309 1310 1211 };1% 000200 000001 000002 000004 000010 1321 1322 }ggz 100000 104003 114003 124003 120003 140003 144003 150003 1328 1329 1330 }ggg 010000 010000 004000 042000 160000 1333 1334 000403 000402 000401 000400 PINTRA== BITO PINTRB== BIT1 PVEC2== BIT? JSLCKO== BIT3 :PENDING INTERRUPT, CHANNEL A ;PENDING INTERRUPT, CHANNEL B :VECTOR BIT 2 FOR INTERRUPT :JOYSTICK INTERRUPT LOCKOUT : ERROR (COMPOSITE). 100000 ERR== NXME== ERR'4000'SELCSR ; NONEXISTANT MEMORY ERROR. ERR'14000'SELCSR ; MEMORY PROTECTION ERROR. MPE== RSVDOP== ERR'24000'SELCSR ; RESERVED OPCODE, RESERVED OPERATION. SEQERR== ERR!'20000'SELCSR ; SEQUENCE ERROR. SYNCTO== ERR!40000'SELCSR ; SYNC TIMEOUT FROM IMAGE MEMORY. DAVTO== ERR'44000'SELCSR ; DATA AVAILABLE TIMEOUT (PIXEL READBACK). DRDYTO== ERR!'S50000'SELCSR ; DATA READY TIMEOUT (JOYSTICK STATUS). CHIE JSMIES JSSIES wJSS WECC ==R]T12 ==BIT12 ==B]T11 ==BIT14'BIT10 ==160000 : CROSSHAIR INTENSITY ENABLE STATUS (1=0N) : : : : JOYSTICK MATCH INTERRUPT ENABLE STATE JOYSTICK SWITCH INTERRUPT ENABLE STATE WRITE JOYSTICK STATUS REGISTER WRITE EXTENDED CURSOR CONTROL SKP3= SKP2= SKP1= SKPO= BR+3 BR+?2 BR+1 BR+0 :SKIP NEXT 3 WORDS. :SKIP NEXT 2 WORDS. :SKIP NEXT WORD. :SAME AS A NOP. : 1343 1344 1346 :FLAGS REGISTER BIT POSITIONS: :SOME HANDY =11 OPDEF'S. 1342 1345 ;o] :CHANNEL PROTECT : 1%%2 1337 1338 1339 }gzg CHPROT== BIT7 :FORCE STOP INTERRUPT :ENABLE ERROR CHECKING :DXR, DYR BITS }gsg 1327 :CSR BIT DEFINITIONS: : ERROR CODE DEFINITIONS. }g;g 1316 1317 1318 1319 1320 SEQ 0033 PIXEL READBACK IS THE SAME - 00 :WRITE MEMORY STATUS REGISTER BA == <15:14>=01 :PERFORM ‘'SOFT=INIT'' == <15:14>=10 WRITE CURSOR POSITION Y=COORDINATE == <15:14>=11 1298 1299 1300 }%85 1306 3 *WRITE' FUNCTIONS FOR DYR (BITS 15-14): 1297 1303 H PAGE 26-1 : SOME GENERAL EQUATES. : 000004 ERRVE (==4 : POINTER TO ERROR VECTOR FOR BUS TIME QuT. _SBTTL 1349 1539 1351 }%2% }%22 1356 1328 1335 1320 }%2? }%2% 1%2? 1367 1225 1§99 13%9 1 1378 1376 13;2 1377 1378 1380 1389 1381 }%gé 1386 1387 1388 000000 : ——— g PAGE 28 SEQ 0034 SPECIAL MACROS AND OPDEFS. RROR NUMB ER :. INITIALIZE ERROR EN=0 § c:gfg ;8~§$}0:§nggz.551up FUNCTIONS (STAT C INSTRUCTIONS) PROTEC, READ, WRT, WRT1, RDWRT, RDWRT1, HCOPY. 3 : SETUP FUNC,N1.N2,N3,N& FUNC!CH'NI .IIE NB <Ni>, <N2>. FUNC!CH'N2 _MACRO CIIF NB "1IF NB <N3>. "1IF NB <N&>. "ENDM SETUP FUNC!CH'N3 FUNC!CH'N& MACROS FOR ASSEMBLING VECTOR DATA. : CALLING ARGUMENTS ARE: : :: - B = DELTA X, +/=0 THRU 1776 (76 IF SHORT TYPE). A = INTENSIFY BIT, *'I' OR 'VU'". DITTO C = DELTA Y, -ASSEMBLE SHORT (1 WORD) DATA. LMACRO SXY A,B,C 40000 "1 = DX = B*200 DY = C Nap 9>, .1 =0 : F .}}r E? B, .DX = <=-B*200>!20000 T1IF LT C. .DY = <=C>1100 "WORD "ENDM .1!.DX'.DY SXY LMACRO LXY A.B,C "1 = 40000 1549 :ASSEMBLE LONG (2 WORDS) DATA. "1IF IDN <U> <A>, .I = 0 "11F LT B, .DX = <=B>!20000 “IIF LT C. .DY = <=C>!20000 .I!.DX, .DY .WORD LENDM LXY (- USV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 ' SPECIAL MACROS AND OPDEFS. 29-JAN=-81 17:22 ' SPECIAL MACROS AND OPDEFS. 1390 4 PAGE 29 29-UAN-81 17:22 3 SEQ 0035 1391 : MACROS TO STANDARDIZE THE INITIALIZATION OF EACH TEST. }ggg : SETS AN ITERATION COUNT FOR THE CURRENT TEST. 1392 1393 1394 : PROVIDES AN ASCIZ TITLE STRING, AND POINTER FOR i : SUBSEQUENT PRINTING (IF REQ'D) VIA "PRINTF TNAM, TNUM'' CALL. : ALSO INITS A SEQUENTIAL ERROR NUMBER SEQUENCE, AND 1397 .MACRO 1398 LRADIX 10 1400 1.0 .RAD] X NLIST 1399 1402 140% 1404 1405 1406 1412 1413 :TAGY: TAGT: 1415 TAGZ: 1414 147€ 1417 1418 3 ;2}3 : 1421 1/.27 : i 1436 1437 1438 1439 1440 }22‘1? 1443 1444 1445 1446 .EVEN LENDM TAGZ2 \INXATEST ZD2%A: \%A TEXT\ ;SKIP OVER THE ASCII. TEXT\ BEGIN.TEST THIS MACRO IS USED BY MACRO "BEGIN.TEST'' MACRO, ABOVE. TSTITLE A,ASCI,! ‘A’ ASC] .‘!...t.l'..'.'ltt..'."'.'...'.'.".'.'..'..0'."....""'.'.".".."" 1430 1432 1433 1434 1435 L_ASCIZ LASCIZ MACRO o 11.51 BR LSBTTL ==« TEST NLIST LIST ME L 18T 1428 1429 BGNTST TN=TSTESTNUM JTEST NUMBER EN=TN=100. JINIT ERROR NUMBER SEQUENCE. J1IF B <Lk>, MOV #1,L00PK JDEFAULT = 1. JI1F NB <LK>, MOV #LK,LOOPK MOV #TN, TNUM ;SET TEST NUMBER... MOV #TAGT, TNAM 2...AND NAME POINTER. 1611 1426 >, <LK> TSTITLE \TN#1,<TEXT LIST MC LIST 1407 1408 1409 1410 1422 1423 1424 1425 BEGIN.TEST TEXT,LK,?TAG1,?TAG2 o* BEGIN TEST 'A' = ASCI .'t"...'...".t.'.t.Q"""..".Q'lt'.'t'..t.Qt"t"t't""Q...'Q'.'t.'. : (ITERATION COUNT = I) NLIST NLIST ME LLIST . ENDM TSTITLE : ; MACROS TO STANDARDIZE THE END OF EACH TEST, NLIST LRADIX .MACRO 10 END.TEST (- | VSV11/vS11 == GRAPMIC SYS. DIAG MACRO M1113 K 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 .NLI - SPECIAL MACROS AND OPDEFS. SEQ 0036 -— | YSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 3 29-JAN-81 17:22 PAGE 29-1 LIST \TN ENDTST . ENDM END.TEST * THIS MACRO IS USED BY "END.TEST'' MACRO, ABOVE. .MACRO ENDTN A tt..itt't'fi'.."'tt.""ii".'t..fifit'.tt!.'.'.".."fiQt"tt"t!tt".'.' * - END TEST ‘A’ * ttt"tt"t"ti't"t.t"'t'ittittttt.tQt'tttfilfitttttiifi'.'tt.tttt""tt. . ENDM ENDTN MACROS TO DEFINE SEQUENTIAL ERROR NUMBERS FOR SUBSEQUENT SUPERVISOR ERROR CALLS. REQUIRES PRIOR USE OF "BEGIN.TEST'' MACRO. .MACRO SFERR ADDR,PNTR JSR ERRSF JSR . ENDM PC, INCERK PC,CKDROP SFERR .MACRO DFERR ADDR,PNTR,(CK JSR ERRDF JSR .IF CKLOOP .ENDC .ENDM PC, INCERK EN=EN+1 EN=EN+1 .MACRO EN=EN+1 JSR T ERRSOF JSR .IF CKLOOP .ENDC . ENDM .MACRO ; SYSTEM FATAL. EN,ADDR,PNTR ; DEVICE FATAL. EN,ADDR,PNTR PC,CKDROP N8, (K DFERR (K SFTERR ADDR,PNTR, ; SOFT ERROCR. ; HARD ERROR. PC, INCERK EN,ADDR ,PNTR PC, CKEMAX N8, (K SFTERR (K HRDERR ADDR,PNTR, 1504 1505 1506 1507 1508 1509 NONEWN =0 VONOWVHIWN—=O WN = OV 3 534 535 536 L JSR . IF CKLOOP .ENDC .ENDM PC, CKEMAX N8B, (K HRDERR : MACRO - DO SOME COMMON STUFF AT THE BEGINNING OF A TEST. NLIST LLIST ME LLIST .MACRO COMBEG JSR JSR PC,TSTGO PC.DPRESET .NLIST ME .ENDM * MACRO - DO SOME COMMON STUFF AT THE END OF A TEST. NLIST LIST ME LLIST .MACRO COMEND JSR PC.LOOP BCS BR TAG,?L,?X : REPEAT 'TIL LOOPER EXPIRES. L X JMP TAG 542 X: JSR PC,TSTEND 547 548 ggg 551 552 NLIST NLIST ME LLIST .ENDM : MACRO TO CONTROL ITERATION LOOPS. .MACRO LOOPTO JSR BCS PC,LOOP TAG .ENDM LOOPTO NLIST LLIST ME LLIST 557 558 559 NLIST NLIST ME LLIST 560 ; PRINT ERROR SUMMARY, IF REQ'D. COMEND 2 553 554 555 556 s VITLE. ; DO SOFT INIT. COMBEG L2 546 SEQ 0037 EN=EN+1 PC, INCERK JSR ERRHRD EN,ADDR,PNTR gz? 543 544 545 3 PAGE 29-2 NLIST NLIST ME LLIST 537 538 539 29-JAN-81 17:22 TAG o< SPECIAL MACROS AND OPDEFS. —A—l-—l—l—l-—l—l—l—a—l—l—d—l—l—l—l—l_‘—ld—l—n—l_;—l-d.—h_l—l_‘—l-d—.l—l_...l—l—h—b—l—l_‘—l—l—l.—l_d_l—l—l—l vV i o i i WWWRNINNNDNNIMNDNIMNIN) b = D i o e be 2 c— t————— e VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 | VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 SPECIAL MACROS AND OPDEFS. 29-JAN-81 17:22 m 3 PAGE 29-3 SEQ 0038 1563 1564 REGISTER. : MACRO - WRITE FROM SPEC'D DATA SOURCE INTO SPEC'D DSR ACCESS 'DSRREG''. FOR S ARGUMENT VALID ARE : ONLY DSR, FLG, CSR, MRR, MPM, XRR, XPM 1566 H 1565 1567 1568 1569 1570 1571 ; RO=WORK. .MACRO NLIST .LIST MEB LLIST NTYPE WTDSRA DATSRC,DSRREG .NT,DATSRC 1572 }ggz .IF M?gr EQ, .NTR*077-%027 DATSRCR*C17!SET'DSRREG,aDSR 1575 MOV ,R0O ; WRITE DATSRC INTO DSRREG . #SET'DSRREG' 1576 1577 BIS MOV DATSRC RO RO,aDSR 1578 1579 1580 1581 1582 .ENDC NLIST .NLIST MEB LIST .ENDM 1585 : MACRO - READ FROM SPEC'D DSR ACCESS REGISTER INTO SPEC'D DATA DESTINATION. 1587 1588 : '"DSRREG'' ARGUMENTS. : RO=WORK. 138 1586 1589 1590 1591 1592 1593 1594 1595 1596 1597 1598 1599 }28% 1604 1605 1606 1607 adh aclh e i il i b NOOWNMS W =O il anh e il ld s i ooooooonOrONONON 1608 1609 WTDSRA : ONLY DSR, PCS, FLG, CSR, MRR, MPM, XRR, XPM, HBA, CBA ARE VALID 3 NLIST LLIST ME LIST DSRREG,DATDST .MACRO RDDSRA MOV #SEL 'DSRREG' ,aDSR MOV .NLIST NLIST ME b IS8 .ENDM aDSR,DATDST : READ DSRREG INTO DATDST . RDDSRA : MACRO - IF R1=R2, BRANCH TO OK, ELSE CALL HARDWARE ERROR. NLIST LLIST ME L 15T .MACRO IFERROR ARG1,ARGZ2,?0K$,(CK CMP BEQ R1,R2 HRDERR NLIST LLIST ME A 157 OK$: NLIST ME .ENDM 0K$ , ARG1,ARGZ2(K IFERROR ; 0K? : YES. s NO. S VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 SPECIAL MACROS AND OPDEFS. 1618 29-JAN-81 17:22 N S — 3 PAGE 29-4 SEQ 0039 * MACRO - IF R1=R2 AND R3=R4, BRANCH TO OK, ELSE CALL HARDWARE ERROR. .MACRO IFERRX2 ARG1,ARG2,?0KS$,?ERR,CK CMP BNE CMP BEQ R1,R2 ERR R3,R4 .NLIST LLIST ME HRDERR ERR: NLIST LIST ME L.45% OKS$: .NLIST ME .ENDM 0K$ ARG1,ARGZ, (K 1ST NO. ITEM OK? 2ND ITEM OK? NO. IFERRX2 THIS DIFFERS FROM ‘DPINIT"' MACRO - SOFTWARE INITIALIZE THE DPU. THE DPU IS STOPPED AND THAT ASSUMED IS IT FIRST, . ; IN TWO WAYS : NOT HUNG UP, NLIST LIST ME .MACRO JSR .NLIST .NLIST ME +LIST NLIST LIST ME LLIST NLIST LIST ME INITDP PC.DPINIT DPSTART ADRS MOV JSR ADRS ,aDP( PC,WAITF .ENDM DPSTART .MACRO DPCONT BIS JSR #B1T0,aDPC NLIST NLIST ME ; GO DO SOFT INIT, CHECK THE STATE. INITDP .MACRO .NLIST NLIST ME LLIST SECOND, NO CHECKING IS DONE BY THIS CODE. PC,WAITF START THE DPU. WAIT FOR DISPLAY STOP. CONTINUF THE DPU. WAIT FOr DISPLAY STOF, I VSV11/7vS11 == GRAPHIC SYS. DIAG MACRO M1113 SPECIAL MACROS AND OPDEFS. 29-JAN-81 17:22 .ENDM 1678 6 1677 1678 1679 1680 1681 1682 B 4 PAGE 29-5 SEQ 0040 DPCONT ;MACRO TO DO A 3-OPERAND BIT-SET: §1,52,DST MACRO BISW3 NLIST .LIST MEB LIST -NTYPE .NT,DST 1683 1684 1685 IF MOV BIS EQ, .NT§*070 S2.DST S1,DST 1688 1689 BIS MoV S1,(SP) (SP)+,DST .ENDM BISW3 IFF MOV 1686 1687 $2,=(SP) 1690 1691 1692 1693 .ENDC NLIST -NLIST MEB LIST 1696 :MACRO TO DO A 3-OPERAND BIT=CLEAR: 1698 NLIST 16% 1697 1699 1700 .MACRO “BICW3 .LIST MEB .LIST $1,52,0ST . 1704 -NTYPE JIF MOV BIC .NT,DST EQ,.NTE*070 S$2.DST S1.DST 1706 1707 1708 MOV BIC MOV S2,=(SP) S1.(SP) (SP)+,DST .ENDM BICW3 1701 1702 1703 1705 1709 1710 1711 1712 173 IFF .ENDC NLIST .NLIST MEB LIST < % 4 « oT ® 1715 :MACRO TO SET UP THE INTERRUPT MASK AND PRIME THE INTERRUPT FLAG: 1717 1718 1719 1720 NLIST .LIST MEB NLIST ME LIST | 1716 MACRO INTSET IEX 1722 MOy JIF N8, IEX 1724 MOV #*0177400!IOKCKIN, INTMASK 1721 1725 1726 1727 1728 1729 1730 1731 .ENDC NLIST .NLIST MEB LIST .ENDM ! JEX, INTRASK 400 IOKCKIN! 10K" #°0177 INTSET ; PRIME FLAG, EXPECT IEX ; PRIME FLAG, NO INTR. EXPECTED. Fon Wed - & SEQ 0041 SPECIAL MACROS AND OPDEFS. 734 735 736 737 7 739 740 741 - 1743 1744 1745 * MACRO TO FORCE IN=-LINE RETURN FROM REAL OR IMAGINED INTERUPT. : NLIST LIST ME LLIST NLIST .MACRO FORRTI MOV #.+6,(SP) RTI NLIST ME LLIST .ENDM FORRTI ; FORCE RTI RETURN TO = s = NEXT LOC. — C ySV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 29-JAN-81 17:22 PAGE 29-6 .SBTTL 1747 SN, 1748 1749 1750 4 USER PAT(CHABLE FLAGS THE FOLLOWING LOCATIONS MAY BE PATCHED BY THE USER TO OBTAIN THE RESULTS DESCRIBED FOR EACH. e 1751 D PAGE 30 003020 000000 FORCER: 0 ; FORCE TYPE ALL HARD ERRORS (THE ONES CALLED = : = BY THE MACRO ''IFERROR'"). AN ERROR NEED NOT = ; = EXIST, JUST ASSUME AND TYPE THE MESSAGE. ' 003022 001700 MFGMO: 1700 : MANUFACTURING MEMORY O MASTER SPECIFICATION. IN MANUFACTURING MODE, MEMORY O IS COMPARED WITH THIS VALUE WHEN SYSTEM CONFIGURATION IS EXECUTED. DISCREPANCY IS REPORTED. (CURRENTLY SHOWN FOR 4 BIT MEMORY.) C03024 120000 MFGSO: 120000 ; MANUFACTURING SYNC CHAN O MASTER SPECIFICATION. IN MANUFACTURING MODE, SYNC CHAN O IS COMPARED WITH THIS VALUE WHEN SYSTEM CONFIGURATION IS EXECUTED. DISCREPANCY IS REPORTED. (CURRENTLY SHOWN FOR INTERLACED SYNC CHAN.) SEQ 0042 — —— i i VSV11/vS11 == GRAPHIC SYS. DIAG MACRO M1113 USER PAT(HABLE FLAGS 29-JAN-81 17:22 .SBTTL 1772 1773 1774 ¢4 SEQ 0043 GLOBAL DATA SECTION ++ THE GLOBAL DATA SECTION CONTAINS DATA THAT ARE USED IN MORE THAN ONE TEST. THE FOLLOWING DATA ARE SET FOR EACH UNIT AT INIT TIME. SINGLE UNIT DEFAULTS (LISTED) ARE IN THE DEFAULT P-TABLE. Se v, SN, 177S 1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787 1788 1789 1790 1791 E PAGE 31 003026 003030 000000 000000 UNITN 0 QVP: 0 JUNIT # UNDER TEST. ;QUICK VERIFY FLAG. *DEVICE REGISTER ADDRESSES **% KEEP IN THE ORDER GIVEN *#* 003032 007734 r 5,034 1792 V03036 1793 003040 172010 DPC:: 172010 :DISPLAY PC 172012 172014 172016 DSR:: DXR:: DYR:: 172012 172014 172016 ;DISPLAY STATUS REGISTER (ALSO REL REG). :DISPLAY X POSITION REGISTER. ;DISPLAY Y POSITION REGISTER. 003042 1796 003044 1797 003046 172020 172022 172024 LSR:: LDR:: LMR:: 172020 172022 172024 : LOOK=UP-RAM STATUS. DATA. 3 AND MAINT REGISTERS. > 1799 003050 1800 003052 000200 000320 000324 000330 000334 000340 DPRI:: STPv:: JSMV:: PRIO4 320 324 JSSv:: LUTV:: 330 334 340 : INTERRUPT PRIORITY. :STOP VECTOR :JOY=STICK MATCH VECTOR. :TIME-OUT VECTOR 040000 OPT1:: 1 OPTIONAL *'INTENSIFY'' BIT FOR DPU... 1794 1795 1798 003064 DRR:: TOTv:: JOY-STICK SWITCH (DEMAND) VECTOR. : LUT READ/WRITE DONE VECTOR. = 0O, OPTI = I(NTENSIFY). ..IF DPUMOD D CoONONESWN—=O D D D e d e —d ed e — el ad wd e — D d - 00 00 0o 0o 0o 0o 00 Co 0o 0o :...OTHERWISE, OPTI = 0 (UNINTENSIFY). * AND THESE ARE SET BY THE IMAGE MEMORY SIZER. 003066 003070 003072 003074 000004 000100 001700 176077 PDBITS:: 4 PDI:: PDF:: PDM:: 1+BIT6 17*BIT6 ~(<17+*BITé6> ;NUMBER OF PIXEL BITS (2, 4, OR 8). PIXEL DATA INCREMENT (MIN mrmsxm *PIXEL DATA FIELD (MAX INTENSITY). PIXEL DATA FIELD MASK. : : 3 : : STANDARD CONF I GURST IONS BITS 2 4 6 8 PDI 0400 0100 0020 0004 1400 1700 1760 1774 — YSV11/yS11 == GRAPHIC SYS. DIAG MACRO M1113 GLOBAL DATA SECTION 29-JAN-81 17:22 : F VSV11/v511 == GRAPHIC SYS. DIAG MACRO M1113 29-JAN-81 17:22 PAGE 32 4 SEQ 0044 GLOBAL DATA SECTION 1825 1826 1827 1828 003076 1829 003106 1830 1831 1832 003126 1833 003130 1834 003132 1835 003134 1836 003136 1837 003140 1838 003142 1839 1840 STORAGE FOR DEVICE REGISTERS 000000 000000 000000 000000 000000 000000 000000 000000 000000 1852 003170 1853 003172 1854 1855 003174 1856 003176 1857 003200 1858 003202 1859 003204 1860 003206 1861 003210 1862 003212 1863 1864 1865 1866 003214 1867 003216 1868 003220 1869 003222 1870 1871 1872 1873 1874 1875 1876 003224 1877 1878 003226 1879 1880 003230 1881 003232 000000 000000 duMmy: 0,100000,0,0 0,0,0,0,0,0,0,0 000000 000000 000000 000000 000000 000000 000000 000000 000000 000000 000000 110070 :...FOR MULTI=UNIT CHECKOUT. O :SAVED DPC ON ANY INTERRUPT. ILSR:z ILDR:: ILMR:: © 0 O 3 3 : IDSR:: IDXR:: IDYR:: DITTO DSR DITTO DXR DITTO DYR : : 0 O O DITTO LUT CSR DITTO LUT DATA DITTO LUT MAINT. :SAVED ''INTERNAL'' REGISTERS ON AN INTERRUPT (IN ORDER OF SELECT CODE): IFLAGS:: ICSR:: 0 IMAIN:: O IHBASE : : IAUX:: O ICBASE:: 000000 000000 000000 000000 ;DUMMY DEVICE REGISTERS... IDPC:: ISDSR:: 0 IPCSAV:: 1841 003144 1842 003146 1843 003150 1844 003152 1845 003154 1846 003156 1847 003160 1848 003162 1849 1850 003164 1851 003166 100000 000000 SDPC:: SDSR:: SDXR:: SDYR:: :SAVED ''SELECTED'' DSR SAVED PCSAVE 0 0 :SAVED FLAGS SAVED CSR SAVED MAIN SEG. MMGT. :SAVE HISTOGRAM BASE :SAVED AUX. SEG MMGT. :SAVED CHARACTER BASE 0 0 :SAVED DPC AT ANY OTHER TIME. O 3 ; O O O DITTO DSR DITTO DXR DITTO DYR :SAVED INTERNAL REGISTERS AT OTHER TIMES :SAVED ''SELECTED'' DSR SSDSR:: 0 SPCSAV:: SFLAGS:: SCSR:: 0 SMAIN:: O SHBASE : : SAUX:: O SCBASE :: 'SAVED PCSAVE :SAVED FLAGS SAVED CSR SAVED MAIN SEG. MMGT. :SAVE HISTOGRAM BASE SAVED AUX. SEG MMGT. SAVED CHARACTER BASE 0 0 0 0 : AND FINALLY SOME MISCELLANEOUS REGISTERS. : SYS CONFIG FLAG (0=1ST TIME, NZ=SUBSEQUENT). SCFLG:: © : LUT AVAILABLE FLAG (NZ= USE LUT). O LUTAV:: SHADING DELAY COUNTER (OPTIONAL) : O : SHADLY: : CURRENT COLOR POINTER (OPTIONAL). NTSC8+2 HUE : : ;STIK:: .BYTE BYTE 2 -1, =1 =1, =1 : 8 JOY=-STICK AVAILABLE FLAGS. ;... =1 =1 DUNNO... BYTE =1, =1 ;... #1 = YES. 3 § BYTE 000000 DUFLG:: O 000000 NODEV:: 0 000001 000000 INTLAC:: 1 TEMP1:: O =1, =1 ;... 0 =N0.. 'DROPPED UNIT'* FLAG. .CODE IN "'CLEAN=UP'', FLAG TO SAY NO DEVICE. : : INTERLACED MODE :SOME TEMP LOCATIONS. INHIBITS DPU... VSV11/vS11 == GRAPHIC SYS. DIAG MACRO M1113 HZ:: : YMAX: MEMFLG:: SYCFLG:: (TAR:: MEMTAR:: : CTABM: 000000 177777 000000 000000 000000 000000 177777 1909 1910 1911 1912 1913 1914 1915 1916 ;...AND SIZE (IN WORDS). CONF 1GURATION TABLES. ; MEMORY CONFIG WORK. ; END OF MEM TABLE. : SYNC CHAN CONFIG WORK. ; END OF SYNC CHAN TABLE. ; END OF CONFIG WORK AREA. STATISTICS TABLE (1 WORD PER UNIT), 64 UNITS MAX: 0 100000 T10XXXX 160000 160001 JBLKW 14 XXXX : 000000 ; XXDP+ COMM BLOCK POINTER. 1ST FREE MEMORY ADDRESS... SYNC CHAN FLAGS (1°'S IN BITS 0=3 REFLECT SYNC CHANS AVAIL) CTABE:: :ERROR 1908 1917 003302 1918 003502 SYCTAR:: CTARS:: SEQ 0045 MEM FLAGS (1°'S IN BITS 0-3 REFLECT MEMS AVAIL). nunnnn 1907 C03270 003272 003274 003276 003300 003302 000074 4 ; KT11, MEM AVAIL FLAG = ; = 0 = <24K OR NO KT = : = NZ = >24K AND KT. LINE FREQUENCY. MAX Y ACCORDING TO LINE FREQENCY. (o] 1901 1902 1903 1904 1905 1906 KTFLG:: O QO 1888 1889 003246 1890 003250 1891 003252 1892 003254 1833 003256 1894 003256 1895 003256 1896 003260 1897 003262 1898 003264 1899 003266 1900 003270 FRESIZ:: 1 OOO0O 1887 FREE:: 000000 G_ PAGE 32-1 ; - 1886 003244 000000 000000 TEMP2:: 0 XXCOMM:: | OOOO 1884 003240 1885 003242 000000 000000 — 1882 003234 1883 003236 0 ~ GLOBAL DATA SECTION 29-JAN-81 17:22 UNIT NOT TESTED UNIT ONLINE, NO ERRORS UNIT ONLINE, ENCOUNTERED XXXX ERRORS UNIT DROPPED, NON-EXISTENT DEVICE REGISTER UNIT DROPPED, NOT IDLE AT START UNIT DROPPED, ENCOUNTERED XXXX ERRORS I ? | YSV11/VvS11 == GRAPHIC SYS. DIAG MACRO M1113 | GLOBAL TEXT SECTION ] | = ? | 23%9 .SBTTL 1922 s+ 1925 : 1923 1924 & SEQ 0046 ‘ GLOBAL TEXT SECTION MORE e 040 045 040 101 116 040 1931 003622 1932 003657 1933 003715 1934 003752 1935 003756 1936 004014 1937 004066 1938 004072 1939 004135 045 045 045 045 040 040 045 040 040 101 101 101 116 040 040 116 040 040 040 040 040 045 125 042 045 125 104 1941 004212 1942 004251 1943 004255 1944 004315 040 045 040 045 040 116 040 116 125 045 125 045 UMI: ASCIZ FUSWI: .ASCII USWI: .ASCIZ FNOINTR: 1947 004400 1948 004434 1949 004503 1950 004534 1951 004566 1952 004612 1953 004642 1954 004676 1955 004724 1956 004746 045 040 040 040 040 040 040 040 045 040 101 040 040 INTX: NOINIT: SSF: 040 040 042 123 122 112 105 120 116 045 122 040 101 1930 003564 1940 004206 1945 004321 1946 004356 1957 004773 1958 005047 045 045 040 040 045 040 005073 005121 005175 005221 040 045 040 040 1964 005314 1965 005344 1963 005250 1966 005374 1967 005431 1968 005453 1969 005475 1970 005521 1971 005556 1972 005574 1973 005641 1974 005677 1975 005733 1976 006010 101 116 040 040 040 040 040 040 040 116 116 040 045 116 111 045 NXR: NXRX: THAN ONE 1928 003504 1929 003543 1959 1960 1961 1962 PAGE 33 : THE GLOBAL TEXT SECTION CONTAINS FORMAT STATEMENTS, ; MESSAGES, AND ASCII INFORMATION THAT ARE USED IN 1% | H 29-JAN-81 17:22 PCSX: XYX: FUSI: WUSI: NSI: FUTO: UTO: NTO: FUMI: NOINTR: IFAULT: 122 123 040 040 040 040 107 107 GHXF GHYF 040 040 102 BMF: 040 040 040 040 101 116 111 IMDI: 045 045 040 045 040 040 045 045 045 116 045 116 04C 045 103 045 126 120 116 116 040 045 045 /%A DPC,DSR REC'D: X06%A,%06/ /%A DXR,DYR EXP'D: Z06XA, X06%N/ /%A DXR,DYR REC'D: Z06%A,%06/ /INZA/ / UNEXPECTED ''STOP'' INTERRUPT/ / ''STOP'' INTERRUPT EXPECTED, NOT RECEIVED/ /INXA/ / UNEXPECTED DPU 'ERROR'' INTERRUPT/ / DPU "ERROR'' INTERRUPT EXP'D, NOT REC'D/ LASCII .ASCII .ASCIZ .ASCIZ LASCIZ RELFX: LVF: LONGX: RPF: SVF: 045 .ASCIZ LASCII .ASCIZ .ASCII LASCIZ LASCIZ .ASCII .ASCIZ .ASCIZ APF: 114 045 116 / NON-EXISTANT DEVICE REGISTER/ /XA ADDRESS: 206/ RELF: OPCFX: 040 116 040 040 045 ASCIZ .ASCIZ ,ASCIZ .ASCIZ .ASCIZ LASCIZ LASCIZ LASCIZ LASCIZ .ASCIZ .ASCIZ .ASCIZ RJF: JSF: ESF: PDXI OPCF SHRTX: GHXYX: .ASCIZ .ASCIZ LASCIZ .ASCIZ LASCIZ L.ASCIZ .ASCIZ LASCIZ LASCIZ ASCIZ BMX: CHRF: C(HRFX: PRBHNG: PRBH: .ASCIZ .ASCIZ LASCIZ .ASCII ,ASCIZ IMDIX: .ASCII LASCIZ .ASCIZ IMDIX2: TEST. .ASCIZ /%A DPC,DSR EXP'D: Z06XA,%X06%IN/ /INXA/ / UNEXPECTED 'MATCH'' INTERRUPT/ /XNZA/ / UNEXPECTED '‘SWITCH'' INTERRUPT/ LASCII /ANZA/ / / NO _INTERRUPT WAS GENERATED/ INTERRUPT FAULT/ /%A CPU PC: X06%A DPC: %06/ 7/ 'BUS-INIT'' DIDN'T INITIALIZE DISPLAY/ / START=NOP-STOP FAILURE/ / RESUME-NOP-JUMP FAILURE/ / JUMP SELF FAILURE/ / EXTERNAL STOP FAILURE/ / PIXEL DATA XFER INCORRECT/ /_ NULL OPCODE FAILURE/ /%N%XA OPCODE: %06/ / RELOCATION FAJLURE/ /%NYA / INITIAL DPC: X06%A, RELOC(DSR): %06%N/ ABS POINT FAILURE/ /_ LONG VECTOR FAILURE/ /XNXA ORIGIN: X04%A,%04%A / REL POINT FAILURE/ / SHORT VECTOR FAILURE/ /XNXA ORIGIN: Z04%A,%04%A /INXA AMPL: X06XA DX,DY: Z06%A,%06/ DXY: %06/ / / GRAPH-HISTO X FAILURE/ GRAPH-HISTO Y FAILURE/ / BIT MAP FAILURE/ /_ IMAGE MEMORY DATA INCORRECT/ INCR: %02/ /%NXA OPCODE: %06/ /_ CHAR MODE FAILURE/ /%NXA BASE: X06XA C(HAR: %03/ / TEST ABORTED/ / PIXEL-READ-BACK FAILS OR HANGS DPU/ /XA ADDRESS (X,Y): X04XA, %04/ /ANXA FIELD: X04%A EXP'D: Z04%A REC'D: %04/ /%NX¥A SUSPECT RAM GROUP %01%A, IMAGE MEMORY CHANNEL: %01/ o< | GLOBAL TEXT SECTION 29-JAN-81 17:22 IMDIXC: .ASCII /%NXA [ & PAGE 33-1 ADDRESS (X,Y): X04%A, %04/ 1977 006101 045 116 045 1979 006214 045 116 045 040 045 040 040 040 040 101 040 040 040 125 040 114 114 114 ULWI: LINTX: LAIER: LAIEW: LDINC: 040 040 040 040 040 040 04 040 040 040 040 040 040 040 040 040 040 104 104 103 115 115 IDPCE: IDSRE: ICSRE: IMRRE: IMPWPE: .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ # # # # # DPC READ/WRITE ERROR# DSR READ/WRITE ERROR# (SR READ/WRITE ERROR# MRR READ/WRITE ERROR# MPM WRITE/MWP (HBASE) READ ERROR# 130 110 103 104 104 104 IXPWPE: IHMBAE: ICBAE: JPDPCE: JPPCSE: DPDSE: .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ # # # # # / XPM WRITE/XWP (HBASE) READ ERROR# HBA READ/WRITE ERRORA# (BA READ/WRITE ERROR# DJMS/DPOP FAILURE (DPC)# DJMS/DPOP FAILURE (PCS)# DPC(W),DSR(R) DUAL ADRS FAULT/ 115 MPMRE: 1978 006137 1980 006306 1981 006362 1982 006437 1983 006477 1984 006540 1985 006555 1986 006617 1987 006662 1938 006707 1989 006760 1990 007030 1991 007100 1992 0C7127 1993 007156 1994 007205 1995 007234 1996 007277 1997 007326 1998 007355 1999 007404 2000 007447 2001 007476 2002 007525 2003 007557 2004 007611 2005 007651 2006 007711 2007 007751 2008 010011 2009 010051 2010 010111 2011 010151 2012 010211 2013 010251 2014 010311 2015 010351 2016 010411 2017 010451 2018 010511 2019 010551 2020 010611 2021 010651 2022 010711 2023 010751 2024 01101 2025 011051 2026 011111 2027 011151 2028 011211 2029 011251 2030 011311 2031 011351 2032 011411 2033 011451 045 040 040 040 045 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 116 04 040 101 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 045 114 114 125 040 042 042 11S 130 130 104 104 104 106 104 104 104 104 104 104 103 103 103 103 103 103 103 115 115 115 115 115 115 115 115 115 115 115 NLRI: NLWI: ULRI: REC'D: %04/ ASCIZ /INYA FIELD: %04%A EXP'D: %04%A IMAGE MEMORY (HANNEL: 201/ LASCIZ /%NXA SUSPECT RAM GROUP %01%A, LASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ 7/ UNEXPECTED LUT WRITE INTERRUPT/ /%A (SR: %06/ / LUT AUTO-INCR INCORRECT ON READ/ / LUT AUTO-INCR INCORRECT ON WRITE/ / LUT DATA INCORRECT/ LASCIZ LASCIZ LASCIZ LASCIZ LRwWX: NSINIT: .ASCIZ BRINIT: .ASCIZ IMPME: IXRRE: IXPME: DSDPE: DSDXE: DSDYE: DSPCE: DSFLE: DSCSE: DSMRE: DSMPE: DSXRE: DSXPE: (SDSE: CSPCE: CSFLE: CSMRE: CSMPE: CSXRE: C(SXPE: MRDSE: MRPCE: MRFLE: MRCSE: MRMPE: MRXRE: MRXPE: MPDSE: MPPCE: MPFLE: MPCSE: SEQ 0047 .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ _ASCIZ .ASCIZ .ASCIZ .ASCIZ LASCIZ LASCIZ L.ASCIZ .ASCIZ 7/ 7/ / LUT READ INTERRUPT EXPECTED, NOT RECEIVED/ LUT WRITE INTERRUPT EXPECTED, NOT RECEIVED/ UNEXPECTED LUT READ INTERRUPT/ /%A (SR: %06X%A EXP'D: X06%A REC'D: %06/ / ‘''SOFT=INIT'' DIDN'T INITIALIZE THE DPU/ / ‘'BUS-RESET'' DIDN'T INITIALIZE THE DPU/ # # # / / / / 7/ 7/ / / / / / / 7/ 7/ 7/ 7/ / / / 7/ / / / / / 7/ 7/ 7/ / MPM READ/WRITE ERROR# XRR READ/WRITE ERROR# XPM READ/WRITE ERROR# DSR(W),DPC(R) DUAL ADRS FAULT/ DSR(W),DXR(R) DUAL ADRS FAULT/ DSR(W),DYR(R) DUAL ADRS FAULT/ DSR(W),PCS(R) DUAL ADRS FAULT/ DSR(W),FLG(P’> DUAL ADRS FAULT/ DSR(W),CSR(R) DUAL ADRS FAULT/ DSR(W),MRR(R) DUAL ADRS FAULT/ DSR(W),MPM(R) DUAL ADRS FAULT/ DSR(W),XRR(R) DUAL ADRS FAULT/ DSR(W),XPM(R) DUAL ADRS FAULT/ C(SR(W),DSR(R) DUAL ADRS FAULT/ C(SR(W),PCS(R) DUAL ADRS FAULT/ C(SR(W),FLG(R) DUAL ADRS FAULT/ C(SR(W),MRR(R) DUAL ADRS FAULT/ CSR(W),MPM(R) DUAL ADRS FAULT/ C(SR(W),XRR(R) DUAL ADRS FAULT/ CSR(W),XPM(R) DUAL ADRS FAULT/ MRR(W),DSR(R) DUAL ADRS FAULT/ MRR(W),PCS(R) DUAL ADRS FAULT/ MRR(W),FLG(R) DUAL ADRS FAULT/ MRR(W),CSR(R} DUAL ADRS FAULT/ MRR(W),MPM(R) DUAL ADRS FAULT/ MRR(W),XRR(R) DUAL ADRS FAULT/ MRR(W),XPM(R) DUAL ADRS FAULT/ MPM(W),DSR(R) DUAL ADRS FAULT/ MPM(W),PCS(R) DUAL ADRS FAULT/ MPM(W),FLG(R) DUAL ADRS FAULT/ MPM(W),(SR(R) DUAL ADRS FAULT/ MPM(W),MRR(R) DUAL ADRS FAULT/ i < ey ——————————— e VSV11/vS11 == GRAPHIC SYS. DIAG MACRO M1113 4 C VUSV11/vS11 == GRAPHIC SYS. DIAG MACRO M1113 29« AN-81 17:22 PAGE %3-2 f . GLOBAL TEXT SECTION 203 01151 2035 011551 203% 01161 2037 011651 203%8 011711 2039 011751 2040 01201 2041 012051 204% 012111 2043 012151 2044 012211 20«5 012251 2046 01231 2047 (12351 2048 012411 2049 012451 2050 012511 2051 012545 2052 012600 2053 (12643 2054 012706 2055 01275 2056 013014 2057 013057 2058 013122 2059 013165 2060 013230 2061 0132732 2062 013336 2063 C13401 2064 013444 2065 013507 2066 013552 2067 2068 2069 013613 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 045 045 045 045 045 045 045 045 045 045 045 045 045 040 040 MPXRE: MPXPE: XRDSE: XRPCE: XRFLE: XRCSE: XRMRE: XRMPE: XRXPE: XPDSE: XPPCE: XPFLE: XPCSE: XPMRE: 040 040 040 040 040 040 040 040 040 040 040 040 040 DPCERA: .ASCIZ DSRERA: .ASCIZ DXRERA: .ASCIZ DYRERA: .ASCIZ PCSERA: .ASCIZ FLGERA: .ASCIZ CSRERA: .ASCIZ MRRERA: .ASCIZ MPMERA: .ASCIZ XRRERA: .ASCIZ XPMERA: .ASCIZ HBAERA: .ASCIZ 130 XPMPE: .ASCIZ 130 XPXRE: .ASCIZ 115 MMMACE: .ASCIZ 101 XMMACE: .ASCIZ 115 MMMNXE: .ASCIZ 106 CBAERA: .ASCIZ LASCIZ ECE: CRWRZ: .ASCIZ 7/ MPM(W),XRR(R) DUAL ADRS FAULT/ W) DUAL ADRS FAULT/ , XPM(R) 7/ MPM( 7/ XRR(W),DSR(R) DUAL ADRS FAULT/ 7/ XRR(W),PCS(R) DUAL ADRS FAULT/ 7/ XRR(W),FLG(R) DUAL ADRS FAULT/ 7/ XRR(W),CSR(R) DUAL ADRS FAULT/ 7/ XRR(W),MRR(R) DUAL ADRS FAULT/ 7/ XRR(W),MPM(R) DUAL ADRS FAULT/ 7/ XRR(W),XPM(R) DUAL ADRS FAULT/ 7/ xPM(W),DSR(R) DUAL ADRS FAULT/ 7/ XPM(W),PCS(R) DUAL ADRS FAULT/ 7/ xPM(W),FLG(R) DUAL ADRS FAULT/ 7/ XxPM(W),CSR(R) DUAL ADRS FAULT/ 7/ XPM(W),MRR(R) DUAL ADRS FAULT/ 7/ XPM(W),MPM(R) DUAL ADRS FAULT/ 7/ XPM(W),XRR(R) DUAL ADRS FAULT/ 7/ MAIN MEM MGT ACCESS FAULT/ 7/ AUX MEM MGT ACCESS FAULT/ /7 MAIN MEM MGT NON-EXIST MEM FAULT/ /%A (DPC) EXP'D: X06%A, REC'D: 206/ /%A (DSR) EXP'D: X06%A, REC'D: 206/ /%A (DXR) EXP'D: X06%A, REC'D: %06/ /%A (DYR) EXP'D: X06%A, REC'D: 206/ /%A (PCS) EXP'D: X06%A, REC'D: %06/ /%A (FLG) EXP'D: X06XA, REC'D: 206/ /%A (CSR) EXP'D: XZ06%A, REC'D: %06/ /%A (MRR) EXP'D: X06%A, REC'D: %06/ /%A (MPM) EXP'D: Z06%A, REC'D: %06/ /%A (XRR) EXP'D: X06%A, REC'D: %06/ /%A (XPM) EXP'D: X06%A, REC'D: 206/ /%A (HBA) EXP'D: X06%A, REC'D: %06/ /XA (CBA) EXP'D: X06XA, REC'D: %06/ 7/ DIDN'T GET EXPECTED ERROR CODE/ :MORE ERROR MESSAGES =-- '' CURSOR REGISTER WRITE/READ ZEROS ERROR'' 040 103 040 040 040 PROCESSING - BAD DPC' 123 SWNOHLT: .ASCIZ ** SWITCH INTR REQ DIDN'T HALT DISPLAY INTR REQ" 040 040 115 NOCMI: 116 NOMST: 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 5839 015205 040 2088 015263 2089 015334 040 040 2090 015371 040 040 040 040 040 040 040 040 040 040 040 040 101 101 101 101 0 101 101 101 101 101 101 101 101 .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ 115 115 130 130 130 130 130 130 130 130 130 130 130 130 040 2070 013664 2071 013734 2072 014017 2073 014102 2074 014145 2075 014211 2076 014255 2077 014326 2078 014376 2079 014461 2080 014543 2081 014630 2082 014712 2083 014777 2084 015036 2085 015112 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 040 103 103 103 103 112 112 112 112 112 122 122 111 105 106 111 106 115 CRWRO: .ASCIZ ‘' CRDAX: .ASCIZ ' CRDAY: .ASCIZ '* ' CRWRE: .ASCIZ JSEWRZ: .ASCIZ ' JSEWRO: .ASCIZ ‘' CEZWE: .ASCIZ '' CESWE: .ASCIZ ' JENOCL: .ASCIZ ** CSRGSNE: .ASCIZ ** CSRGENS: .ASCIZ ** CSIFC: .ASCIZ ‘' NOSWPI: .ASCIZ ' NOSWI: .ASCIZ ‘' SwIBvV: .ASCIZ ‘' SWNOCU: .ASCIZ .ASCIZ .ASCIZ (MNOMI: .ASCIZ CURSOR REGISTER WRITE/READ ONES ERROR'' CURSOR REGISTER DUAL ADDRESS = WRITE Y CHANGED X' CURSOR REGISTER DUAL ADDRESS = WRITE X CHANGED Y'' CURSOR REGISTER WRITE/READ ERROR' JOYSTICK ENABLES WRT/RD 0'S ERROR'' JOYSTICK ENABLES WRT/RD 1°'S ERROR'' JOYSTICK ENABLES ZERO-THEN-WRITE ERROR' JOYSTICK ENABLES SET-THEN-WRITE ERROR'' J.S. CHANNEL DECODE ERROR - ENABLES DIDN'T CLEAR' REGISTER ERROR AFTER J.S. SWITCH SET, NO ENABLE' REGISTER ERROR AFTER J.S. SW ENABLE SET, NO SWITCH'' INTERNAL REG. ERROR AFTER CLEARING J.S. SW INTR' ERROR IN FLAGS REG. == SHOULD SHOW PENDING SW INTRTM FAULTY J.S. SWITCH INTERRUPT'' INCORRECT VECTOR ON J.S. SWITCH INTERRUPT'' ‘' FAULTY CURSOR RETRIEVAL ON J.S. SW '' MATCH INTERRUPT FAULTY OR NOT RECEIVED" ' NO STOP ON MATCH INTERRUPT' ‘' MATCH BUT NO MATCH INTERRUPT"' SEQ 0048 | K_4& | VSV11/7yS11 == GRAPHIC SYS. DIAG MACRO M1113 29-JAN-81 17:22 PAGE 33-3 | GLOBAL TEXT SECTION 1 ‘ i ! 040 116 116 116 116 C(MIVB: .ASCIZ ' MATPCS: .ASCIZ ‘' MATXYE: .ASCIZ '' MATPOS: .ASCIZ ‘' MATIRE: .ASCIZ ‘' MEREG: .ASCIZ '' MATFLE: .ASCIZ ‘' MATUI: .ASCIZ ‘' MENDPCS: .ASCIZ ** CMPE: .ASCIZ ‘' 116 NOMAT: .ASCIZ 045 EXPGT2: .ASCIZ 045 FCOORD: .ASCI] LASCIZ 045 045 FSYCHAN: 116 000 NUL : NULCR: 101 040 101 040 DUAD12: .ASCIZ /%A REG(W) WRITTEN TO: X06%A REG(R) READ; EXP'D: %06%A, REC'D: %06/ .ASCIZ / MEM INTERLACE ERROR/ 115 INLE: 040 INLEXF: .ASCIZ /%A PIXEL READBACK EXP'D: XO6X%A, REC'D: %06%A, (HAN: %01/ 040 040 040 040 040 040 040 040 040 040 2108 016546 2109 016547 000 045 2117 017105 2118 017207 2119 017235 045 040 045 2101 016267 2102 016322 2103 016377 2104 016437 5182 016500 2107 2110 C16552 2111 016613 2112 016663 2113 016715 2114 016751 2115 017010 2116 017051 2120 017326 2121 017355 2122 017416 2123 017461 2124 017534 2125 017552 2126 017565 2127 017601 2128 017615 2129 017632 2130 017653 2131 017666 2132 017702 2133 017716 %1%2 017735 040 045 045 045 045 040 040 ne9 0 040 040 045 040 040 040 040 040 040 101 040 040 040 040 040 040 045 045 045 045 045 045 045 045 045 045 045 045 INCORRECT VECTOR ON CURSOR MAT(CH INTERRUPT"' 111 127 127 127 111 111 106 125 104 103 040 040 040 040 040 040 040 040 040 040 2091 015430 2092 015505 2093 015547 2096 015611 2095 015663 2096 015733 2097 016017 2098 016064 2099 016141 2100 016224 101 116 101 101 101 101 116 101 101 101 101 116 122 RLXIE: 122 RLX2IE: 122 RLYUE: 122 RLYDE: 122 RLY2UE: 122 RLY2DE: 040 EXPGOT: 120 123 103 040 045 040 054 054 054 045 040 054 054 054 LASCIZ L.ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ WRONG DPC OR DSR FOR MAT(CH STOP' WRONG DXR OR DYR FOR MAT(H STOP"' WRONG DXR OR DYR AFTER POSITION-RESTORE'’ INTERNAL REGISTER INCORRECT FOR MAT(CH'' INTERNAL REGISTER INCORRECT AFTER SETUP FOR MAT(H' FLAGS REGISTER INCORRECT FOR MAT(CH'' UNEXPECTED INTERRUPT ON RESUME AFTER MATCH DPC OR DSR WRONG ON AFTER RESUME FOILOWING MATCH' CURSOR MATCHED AT WRONG POSITION' ‘' NO CURSOR MATCH DETECTED" /INXA EXP'D: X06XA, X06INXA REC'D: Z06%A, %06/ /X%NXA CURSOR (X,Y) = X06XA, 206/ /%N%A REC'D DXR, DYR = X06%A, %06/ LASCIZ ""¥NXA SYNC GEN/JOYSTICK CHANNEL = %01" /7 /IN/ / RUN=-LENGTH X=INCREMENT FAILURE/ / RUN-LENGTH X-DOUBLE INCREMENT FAILURE/ / RUN-LENGTH Y=UP FAILURE/ / RUN=-LENGTH Y=DOWN FAILURE/ / RUN-LENGTH Y=SKIP UP FAILURE/ / RUN-LENGTH Y=SKIP DOWN FAILURE/ /XA EXP'D: X06%A, REC'D: %06/ PIXEL READBACK ERROR/ SYNC CHAN INTERLACE DIFFERENCE/ CONFIG DOESN'T MATCH MFG. MASTER/ SCPRE: SCIDE: SCME: .ASCIZ .ASCIZ .ASCIZ / / / SCM: LASCII LASCII LASCII LASCII LASCIZ LASCII LASCII LASCII LASCII LASCIZ /%NXA MEMORYS:/ /XA 0 = %06/ /%A, 1 = %06/ /%A, 2 = %06/ /%A, 3 = %06/ /ANXA SYNC CHANS:/ /%A 0 = %06/ /XA, 1 = %06/ /%A, 2 = %06/ /%A, 3 = %06IN/ SCMFG: SCS: 045 NOMAN: .ASCIZ /%A MFG MEM 0: X06XA, MFG SYNC CHAN 0: 206/ .?SELZ /UN%A*=++ MANUAL INTERVENTION NOT ALLOWED == ABORTING #**+%N/ £V Ve GL SEQ 0049 ; : 1 ; 5 i e PR iR VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 GLOBAL ERROR REPORT SECTION Ry R AN 29-JAN-81 17:22 L PAGE 34 & SEQ 0050 GLOBAL ERROR REPORT SECTION 2137 .SBTTL 2140 2141 %}2% : THE GLOBAL ERROR REPORT SECTION CONTAINS THE PRINTB AND PRINTX ; CALLS THAT ARE USED IN MORE THAN ONE TEST. : ASCII TEXT STRINGS ARE FOUND IN THE GLOBAL TEXT SECTION. 2138 2139 ;e 2144 2145 020032 2146 020032 2147 020056 004737 022276 sNON-EXISTANT DEVICE REGISTER. BGNMSG NXRERR sNODEV = NEXM ADDRESS. PRINTX #NXRX ,NODEV ¢ PRINT EXTENSION IF REQUIRED. PC,EXTEND JSR 2150 020064 2151 020064 BGNMSG ENDMSG g}zg 020062 2152 020120 004737 022276 PCSERR PRINTX JSR ENDMSG S}gz 020124 BGNMSG 2155 020126 2156 020126 2157 020162 004737 022276 XYERR PRINTX JSR ENDMSG gggg 020166 2160 020170 2161 020170 2162 020220 004737 022276 BGNMSG RLXYE PRINTX JSR 2165 020226 BGNMSG ENDMSG g}gz 020224 INTERR ;BAD DPC AND/OR DSR_SIGNATURE. #PCSX,R2,R3,aDPC,aDSR ;R2,R3 = EXP PC,SR PC,EXTEND ;BAD DXR AND/OR DYR SIGNATURE X #XYX,R4,R5,aDXR,aDYR ;R4 ,RS = EXP PC,EXTEND ;DISPLAY INTERRUPT ERROR SIGNATURE. #INTX,R1,aDPC #NULCR 001011 BNE 1% 2171 020324 000465 BR 2173 020334 001411 2175 020356 000450 2177 020366 2178 020370 001411 2180 020412 132737 000010 026107 3%: 2168 020274 2169 020302 2170 020304 PRINTX 2172 020326 132737 000001 2174 020336 CMPB 122737 000377 026107 026107 1%: 000433 2181 020420 2182 020422 2183 020442 001411 2185 020452 001412 2184 020444 2186 020454 2187 020474 2188 020500 g}gg 020504 000416 132737 000004 004737 023516 004737 022276 2191 020506 2192 020506 010137 072350 2193 020512 006237 072350 #~0377,INTFLAG #FNOINTR 20% ;R1 = CPU PC ; PRINT A NEWLINE ;WAS ANY INTERRUPT GENERATED? :BR IF YES NO -- REPORT THE FACT BITB #IOKSTP,INTFLAG ; WAS IT AN UNEXPECTED ''STOP'' INTERRUPT? PRINTX #FUSI ; YES == REPORT IT 3% #FUMI ; BR _IF NO. ; REPORT IF YES. 4% #FUSWI 20% : BR_IF NO ; REPORT IF YES BEG BR ; BR _IF NO. 2% 208 BITB #]10KJSM, INTFLAG ; WAS IT AN UNEXPECTED 'MATCH'" INTERRUPT? BR BITB #10KJSS,INTFLAG ; WAS IT AN UNEXPECTED ''SWITCH'® INTERRUPT? BITB #10KERR, INTFLAG ; WAS IT AN UNEXPECTED ‘ERROR'" INTERRUPT? 20%: PRINTX JSR JSR #FUTO PC,ERTCHK PC.EXTEND BGNMSG IMDERR 2176 020360 132737 000002 026107 2%: 2179 020410 : PRINT EXTENSION If REOUIRED :BAD DXR AND/OR DYR SIGNATURE. 1,R3 = EXP, R2,R4= REC. #XYX,R1,R3,R2,Ré IF REQUIRED. EXTENSION PRINT 5 PC,EXTEND PRINTX PRINTX 2166 020226 2167 020254 : PRINT EXTENSION IF REQUIRED. 026107 48%: BEQ PRINTX BEQ PRINTX BR BEQ ENDMSG MoV ASR 20% 20% ; REPORT IT. :CHECK THE ERROR CODE : PRINT EXTENSION IF REQUIRED. ; IMAGE MEM DATA ERROR. R1, IMCRAM IMCRAM : TRANSLATE X ADDR. :...TO RAM NUMBER. VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 GLOBAL ERROR REPORT SECTION 29-JAN-81 17:22 2194 020516 2196 020602 004737 022276 2199 020610 2200 020610 2201 020634 004737 022276 BGNMSG 2204 020642 BGNMSG BGNMSG §§}§ 020730 ENDMSG 2214 020732 BGNMSG gg;g 020762 ENDMSG 2219 020764 BGNMSG gggg 021014 ENDMSG 2224 021016 BGNMSG gggg 021046 ENDMSG 2229 021050 BGNMSG 2230 021050 _ 2231 021074 004737 022276 gggg 021100 ENDMSG 2234 021102 BGNMSG gggg 021132 ENDMSG 2239 021134 BGNMSG ngg 021164 ENDMSG 2244 021166 BGNMSG ggzg 021216 ENDMSG 2249 021220 BGNMSG 2235 021102 2236 021126 004737 022276 2240 021134 2241 021160 004737 022276 2245 021166 2246 021212 004737 022276 2250 021220 PC,EXTEND LINTER PRINTX : LUT INTERRUPT ERROR. : SHOW CSR. #LINTX,aLSR LRWERR PC,EXTEND : PRINT EXTENSION IF REQUIRED. * PRINT EXTENSION IF REQUIRED. : LUT READ/WRITE ERROR. PRINTX #LRWX,aLSR,R1,R2 ; CSR, EXP'D, REC'D. :"PRINT EXTENSION IF REQUIRED. PC,EXTEND JSR ENDMSG 2209 020700 2225 021016 2226 021042 004737 022276 JSR JSR 558; 020676 2220 020764 2221 021010 004737 022276 #IMDIX,R1,R2,PDF ,R3,Ré4 ENDMSG gggg 020640 2215 020732 2216 020756 004737 022276 PRINTX ENDMSG S}gg 020606 2210 020700 2211 020724 004737 022276 SEQ 0051 PRINTX #IMDIX2, IMCRAM, IMC.CH 2195 020552 2205 020642 2206 020672 004737 022276 L PAGE 34-1 EXPREC PRINTX W#EXPGOT,R1,R2 PC,EXTEND JSR DPCER . R1=EXP'D, R2=REC'D. : PRINT EXTENSION IF REQUIRED. PRINTX #DPCERA,R1,R2 PC,EXTEND JSR : R1=EXPECTED, R2=RECEIVED. * PRINT EXTENSION IF REQ'D. DSRER PRINTX #DSRERA,R1,R2 PC,EXTEND JSR : R1=EXPECTED, R2=RECEIVED. * PRINT EXTENSION IF REQ'D. DXRER ; R1=EXPECTED, R2=RECEIVED. * PRINT EXTENSION IF REQ‘D. PRINTX #DXRERA,R1,R2 PC,EXTEND JSR DYRER #DYRERA,R1,R2 : R1=EXPECTED, R2=RECEIVED. PRINTX #PCSERA,R1,R2 PC,EXTEND JSR : R1=EXPECTED, R2=RECEIVED. * PRINT EXTENSION IF REQ‘D. PRINTX JSR PC,EXTEND PCSER FLGER * PRINT EXTENSION IF REQ'D. #FLGERA,R1,R2 PC,EXTEND : R1=EXPECTED, R2=RECEIVED. * PRINT EXTENSION IF REQ'D. PRINTX #CSRERA,R1,R2 : R1=EXPECTED, R2=RECEIVED. MRRER . R1=EXPECTED, R2=RECEIVED. PRINTX JSR CSRER JSR PC.,FXTEND PRINTX #MRRERA,R1,R2 * PRINT EXTENSION IF REQ'D VSV11/vS11 == GRAPHIC SYS. DIAG MACRO M1113 GLOBAL ERROR REPORT SECTION 2251 021244 2252 021250 2253 2254 021252 2255 021252 2256 021276 2257 021302 2258 2259 021304 2260 021304 2261 021330 2262 021334 2263 2264 021336 2265 021336 2266 021362 2267 021366 2268 2269 021370 2270 C21370 2271 021414 2272 021420 2273 2274 021422 2275 021422 2276 021446 2277 021452 2278 2279 021454 2280 021454 2281 021502 2282 021506 2283 2284 021510 2285 021510 2286 021514 2287 021516 2288 021546 2289 021606 2290 021646 2291 2292 021650 2293 021650 2294 021674 2295 021714 2296 021740 2297 021760 2298 22 99 2300 021762 2301 021762 2302 022006 2303 022026 2304 022052 2305 022072 2 306 2307 - ——— 004737 022276 29-JAN-81 17:22 ENDMSG BGNMSG 004737 022276 ENDMSG BGNMSG 004737 022276 ENDMSG BGNMSG 004737 022276 ENDMSG BGNMSG 004737 022276 ENDMSG BGNMSG 004737 022276 ENDMSG BGNMSG 004737 022276 005737 001414 002512 ENDMSG BGNMSG 1%: ENDMSG BGNMSG ENDMSG BGNMSG ENDMSG N & PAGE 34-2 SEQ 0052 JSR PC.EXTEND ; PRINT EXTENSION IF REQ'D. MPMER PRINTX JSR #MPMERA ,R1,R2 PC,EXTEND ; R1=EXPECTED, R2=RECEIVED. ; PRINT EXTENSION IF REQ'D. XRRER PRINTX JSR #XRRERA,R1,R2 PC,EXTEND ; R1=EXPECTED, R2=RECEIVED. ; PRINT EXTENSION IF REQ'D. XPMER PRINTX #XPMERA ,R1,R2 ; R1=EXPECTED, R2=RECEIVED. HBAER PRINTX JSR #HBAERA ,R1,R2 PC,EXTEND ; R1=EXPECTED, R2=RECEIVED. ; PRINT EXTENSION IF REQ'D. CBAER PRINTX JSR #CBAERA,R1,R2 PC,EXTEND ; R1=EXPECTED, R2=RECEIVED. ; PRINT EXTENSION IF REQ'D. #DUAD12 ,R3,R1,R2 PC,EXTEND ; R3=WRITTEN, R1=EXP'D, R2=REC'D. ; PRINT EXTENSION IF REQ'D. JSR DUADRE PRINTX JSR SYSCON TST BEQ PRINTX PRINTX PRINTX PC,EXTEND ; PRINT EXTENSION IF REQ'D. MFGFLG ; MFG MODE? 1% : NO #SCMF G ,MF GMO ,MF GSO #SCM_MEMTAB ,MEMTAB+2 ,MEMTAB+4 ,MEMTAB+6 #SCS,SYCTAB,SYCTAB+2,SYCTAB+4,SYCTAB+6 MMMAE PRINTX PRINTX PRINTX PRINTX #NULCR ;PRINT BLANK LINE XMMAE PRINTX PRINTX PRINTX PRINTX #XRRERA ,R3 R4 #NUL CR #DPCERA,R1,R2 #NULCR ;PRINT BLANK L INE HMRRERA ,R3 R4 #NUL CR #DPCERA,R1,R2 B 5 VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 29-JAN-81 17:22 PAGE 34-3 SEQ 0053 GLOBAL ERROR REPORT SECTION 2308 022074 2309 022074 2310 022124 004737 022276 BGNMSG ENDMSG %%}; 022130 BGNMSG 2313 022132 2314 022132 2315 022172 %g}? 022176 004737 ENDMSG BGNMSG 2319 022200 PNTCOOR PRINTX JSR 022276 2318 022200 EXPR(2 PRINTX #EXPGT2,R1,R3,R2,Ré4 PC,EXTEND JSR PNTSYCH PRINTX ENDMSG %gg? 022224 INLEX #FCOORD,(SMF4X,CSMF4Y ,SDXR,SDYR PC.EXTEND #FSYCHAN,CSCHAN 2322 022226 BGNMSG g%gg 022274 ENDMSG 2327 ; TO ANY OF THE ABOVE ERROR SIGNATURES. 2323 022226 2324 022254 g;gg 2330 022276 2331 022300 2332 022302 #INLEXF,R1,R2,R5 ;PRINT BLANK LINE #NULCR : THIS ROUTINE APPENDS A UNIQUE EXTENSION (IF REQUIRED) 005727 EXTEND: TST 001402 BEQ ExXTA: 000000 2333 022304 004777 2334 022310 2335 022330 PRINTX PRINTX ;R1,R3 = EXP'D, R2,R4 = REC'D ; PRINT EXTENSION, IF REQ'D. 000207 177770 1%: O JSR PRINTX RTS (PC)+ 1% PC,EXTA #NULCR PC ; 0 = NU EXTENSION. ; APPEND EXTENSION TEXT. ; PRINT A BLANK LINE o e l VSV11/yS11 == GRAPHIC SYS. DIAG MACRO M1113 29-JAN-81 17:22 INTERNAL REGISTER CHECKER, ERROR (ODE HANDLER, DPINIT gggg .SBTTL 2339 o PAGE 35 SEQ 0054 INTERNAL REGISTER CHECKER, ERROR (CODE HANDLER, DPINIT sROUTINES TO CHECK CONTENTS OF INTERNAL REGISTERS. UPON ENTRY, THE EXPECTED DATA SHOULD BE IN LOCATION '‘GDDAT'’ ng? : 2342 2343 2344 2345 2346 2347 JMACRO TO ASSEMBLE REGISTER CHECK FRONT=END: MACRO CHECK RGS,RNAM MOV #SEL'RGS,~-(SP) ;GET REGISTER-SELECT CODE ONTO THE STACK. MOV #99%,-(SP) JAND THE ADDRESS OF THF REGISTER-NAME MESSAGE. JMP IREGCK ;THEN GO TO COMMON HANDLER. LASCIZ /%A "RNAM''/ 99%: 2348 g%gg 2351 022332 2352 022360 2353 022410 2354 022440 2355 022466 2356 022526 2357 022566 S%gg 022624 2360 2361 022664 2362 022736 2363 022775 2364 023012 gggg 040 045 045 045 2367 023054 000000 2373 2374 023066 2375 023072 2376 023076 2377 023104 2378 023112 2379 023120 2380 023122 _ 012637 012677 017737 012777 023737 001410 2368 023056 2369 023060 2370 023062 S;;} 023064 ggg; 023142 040 116 116 116 045 045 DSRCHK: PCSCHK: FLGCHK: CSRCHK: MMCHK: HBCHK: XMCHK: (BCHK: CHECK CHECK CHECK CHECK C(HECK CHECK CHECK C(HECK DSR,<DSR> PCS,<PCSAVE> FLG,<FLAGS> CSR,<CSR> MRR,<MAIN MEM MGMT> HBA,<HISTOGRAM BASE> XRR,<AUX MEM MGMT> (BA,<CHARACTER BASE> RGE: GDBAD: TINERR: SIMSG: .ASCIZ .ASCIZ .ASCIZ .ASCIZ .EVEN / INCORRECT DATA IN INTERNAL REGISTER .../ /%NXA EXP'D: %Z06%A REC'D: %06/ /AINXA TEST: / /XZNXA ... AFTER DOING SOFT INIT./ GDDAT:: BADDAT: REGNAM: SIFLAG: 023062 157736 157732 000000 023056 000207 005737 001410 CHECK LOOPFL:: 000000 000000 000000 000000 2383 023144 2384 023144 2385 023164 2386 023214 2387 023234 2388 023254 2389 023260 2390 023262 2391 023302 2392 023322 2393 111 .EVEN .ENDM 023060 157722 023060 0 0 0 0 0 ;CHECK THE DSR ;+..PCSAVE ;+..FLAGS sees(SR ;«..MAIN-SEG MEM. MGMT. ;+..HISTOGRAM BASE ;+«.AUX=SEG MEM. MGMT. ;...CHARACTER BASE ;FLAG OR DATA FOR TEST=LOOP-DEPENDENT STUFF. ;STORAGE FOR EXPECTED DATA. ;STORAGE FOR ACTUAL DATA. ;ADDRESS OF REGISTER NAME STRING. ;FLAG TO SAY DOING SOFT INIT. ;COME HERE WITH (SP)=ADDRESS OF NAME STRING, 2(SP)=SELECT CODE. IREGCK: MOV (SP) + ,REGNAM ;GET STRING ADDRESS. MOV (SP)+,aDSR ;SELECT THE REGISTER. MOV aDSR,BADDAT ;GET THE DATA. MOV #SELDSR,aDSR ;SELECT THE REAL DSR CMP GDDAT ,BADDAT s COMPARE EXPECTED W/ ACTUAL. BEQ 1% ;0K IF EQUAL; JUST EXIT. HRDERR RGE ,REGERR :IF NOT, SAY SO & PRINT DATA. 1%: RTS BGNMSG REGERR 023064 2%: PRINTX PRINTX PRINTX PRINTX TST BEQ PRINTX PRINTX ENDMSG PC REGNAM :PRINT THE REGISTER NAME. #GDBAD,GDDAT ,BADDAT sAND THE DATA. #TINERR TNAM sPRINT TEST NAME SIFLAG sSOFT INIT? 2% ;BR IF NO #SIMSG JPRINT IF YES A#NULCR sPRINT BLANK L INE VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 29-JAN-81 INTERNAL REGISTER CHECKER, ERROR CODE HANDLER, DPINIT 2394 023324 2395 023324 2396 023344 2397 023364 2398 023404 2399 PTINER: 000207 2422 023514 2425 023516 2426 023522 2427 023524 2428 023526 2429 023534 2430 023540 023546 2432 023552 2433 023556 2434 023562 2435 023564 2436 023566 2437 023570 2438 023610 2439 023612 2440 023632 2441 2442 023634 2443 023640 2444 023642 2445 023646 2446 023652 2447 023656 2448 023664 2449 023670 2450 023674 PRINTX PRINTX PRINTX RTS D 5 PAGE 35-1 #TINERR TNAM #NUL CR PC SEQ 0055 ;PRINT "'TEST:"' ;PRINT NAME OF TEST ;PRINT BLANK LINE ;ROUTINES TO CHECK FOR THE INITIALIZED STATE OF INTERNAL REGISTERS: 24600 2401 2402 2403 2404 2405 2406 023406 2407 023414 24608 023420 2409 023422 2410 023430 2411 2412 023440 2413 (23446 2414 023452 24615 023460 2416 023464 2417 023470 17:22 : 1 IRCHK : I IRNFC 3 : 012737 004737 000414 012737 004737 004737 012737 004737 012737 004737 005037 004737 004737 004737 004737 005037 000207 100000 022410 012746 000401 005046 012777 017746 000001 012777 011637 042716 022627 001424 005716 001011 100000 022410 023524 000003 022440 000001 022360 023056 022466 022526 022566 022624 023064 000003 157274 000000 023060 177760 000003 #CHAR,GDDAT PC,FLGCHK 023056 I1IRCHK: MOV JSR : JSR I IRCNF #(CHAR,GDDAT 023056 023056 JSR BR MOV JSR IIRNFC: MOV JSR CLR JSR JSR JSR JSR CLR RTS 157300 ;ERRCHK: CHECKS ERICHK: MOV BR ERRCHK: CLR ERRCK1: MOV MOV MOV MOV 157266 000455 000337 006237 006237 042737 013746 062716 013637 023060 023060 023060 100052 177741 023060 024266 024264 CHECKS ALL BUT THE FLAGS REGISTER. CHECKS ALL BUT THE CSR CHECKS ALL BUT FLAGS AND CSR. TIRCNC: MOV 20%: 023060 CHECKS THEM ALL. 023056 000466 005737 1 IRCNF TIRCNC 1%: 023060 BIC CMP BEQ TST BNE DFERR BR PRINTX BR TST BPL SWAB ASR ASR BIC MOV ADD MOV 1IRNFC PC.,FLGCHK ;SEE IF FLAGS HAS ''CHAR'' MODE ONLY. ;BYPASS (SR CHECK. ;SEE IF FLAGS HAS '‘CHAR'' MODE ONLY. PC,ERRCHK #SELCSR,GDDAT PC.,CSRCHK #1,GDDAT PC,PCSCHK ;SPECIFICALLY CHECK FOR AN ERROR CODE. ;WE SHOULD ONLY SEE SELECT CODE IN CSR. PC ,MMCHK PC ,HBCHK PC ,XMCHK PC,CBCHK ;...MAIN MEM MGMT GDDAT SIFLAG PC ;EXPECT TO SEE "EMPTY'' STATUS IN PCSAVE. J...G0 CHECK IT. JREMAINING REGISTERS S/B CLEAR. :...HISTOGRAM BASE ;«..AUX MEM MGMT ;...CHARACTER BASE. ;CLEAR SOFT=INIT FLAG. THE CSR FOR AN ERROR CODE & REPORTS IT. #1,-(SP) ; SET FLAG TO INHIBIT USE OF 'DFERR" -(SP) #SELCSR,aDSR ; CLEAR FLAG sSELECT THE CSR. #SELDSR,aDSR (SP) ,BADDAT ;SELECT REAL DSR SO PEOPLE WON'T GET MIXED UP.. ERRCK1 (SP) aDS=R, ;JREAD IT. ;STORE CSR CONTENTS. #*C17, (SP) JEXTRACT THE SELECT!WE FIELD. (SP) 2% ; SHOULD WE DO DFERR? ; BR IF NO ;IF NOT, SAY WE CAN'T READ IT. ; GO TO EXIT ; PRINT MESSAGE ''CAN'T READ (SR ; GO TO EXIT BADDAT :TEST THE ERROR BIT. BADDAT BADDAT BADDAT #~(36,BADDAT ;ZAP OUT JUNK. (SP)+ ,#SELCSR 1% 20% NOCSR 2$ #FNOCSR 2% BADDAT ,=(SP) #ERCTBL, (SP) + ,ERCNAM @ (SP) ;WE SHOULD SEE THE (SR REG SELECT CODE. ;0K IF CLEAR; JUST EXIT. ;IF SET, GET ERROR CODE :...INTO BITS<4:1>, ;SAVE ERROR CODE * 2 ON STACK JGET TO THE MESSAGE ADDRESS TABLE. ;GET THE ADDRESS OF THE REG NAME MESSAGE. o< — 29-JAN-81 TST BNE HRDERR BR PRINTX PRINTX TST RTS (SP) 11% INTERNAL REGISTER CHECKER, ERROR CODE HANDLER, DPINIT 2451 023700 26452 023702 2453 023704 24564 025724 2455 023726 2456 023746 2457 023766 gzgg 023770 005776 0010M 2460 023772 2461 024003 2462 024030 2463 024041 2464 2465 024074 2466 024074 24667 024114 2468 024122 2469 024124 2470 024154 2471 024174 2472 024214 045 040 045 040 2473 024220 2474 024222 2475 024242 2476 024262 2477 024264 000420 118: 2%: 005726 000207 116 040 116 040 045 103 045 103 FNOCSR: NOCSR: FERCM: ERCM: BGNMSG 023727 001014 023060 000026 1%: 005737 001410 000000 023064 024430 .ASCII .ASCIZ .ASCII .ASCIZ .EVEN ERCOD PRINTX CMP BNE PRINTX PRINTX PRINTX TST BEQ PRINTX PRINTX 2%: ENDMSG ERCNAM: 0 E 5 PAGE 35-2 SEQ 0056 ; USE 'DFERR'"? ; BR IF NO ERCM,ER CcoD sREPORT THE BAD NEWS. #FERCM ; PRINT ''CSR ERROR CODE DETECTED ="' ; ... AND THE ERROR NAME. 2% ERCNAM + (SP) PC 122 74 / INXA / CAN' T READ THE CSR/ (23 %4 / ANXA / (SR ERROR CODE REC'D = / ERCNAM BADDAT, #13%2 1% ; IS IT 'DBUS DATA R/W ERROR'"? ;BR IF NO ; YES == DXR = EXP'D, DYR = REC'D #GDBAD, aDXR,aDYR #TINERR TNAM ;SOFT INIT? ;BR IF NO SIFLAG 2% ;PRINT IF YES :PRINT BLANK L INE #SIMSG #NUL CR ERCTBL: 77%$,1%$,2%,38,4%5,58,63,7% 024326 024365 025004 025067 2482 024326 2483 024365 2484 024430 2485 024467 2486 024531 2487 024562 2488 024617 2489 024662 2490 024735 045 045 045 045 045 045 045 045 045 101 101 101 101 101 101 101 101 101 056 056 056 056 056 056 056 056 056 77%: 1%: 28%: 3%: 4%: 5%: 6%: 7%: 10%: LASCIZ LASCIZ LASCIZ LASCIZ LASCIZ LASCIZ LASCIZ LASCIZ LASCIZ /%A... /%A... /%A... /XA... /%A... /%A... /%A... /%A... /%A... 0: (ILLEGAL ERROR CODE)/ 1: NXM TIMEOUT ON DMA X'FER/ 2: (ILLEGAL ERROR CODE)/ 3: MEMORY PROTECTION ERROR/ 4: SEQUENCE ERROR/ 5: RESERVED OPERATION/ 6: VECTOR ENDPOINT MISMATCH/ 7: U-PROC EXECUTED UNUSED MICROWORD/ 10: IMAGE MEMORY ''SYNC'' TIMEOUT/ 2493 025143 2494 025211 2495 025245 2496 025301 2497 025341 045 045 045 045 045 101 101 101 101 101 056 056 056 056 056 13%: 14%: 15%: 16%: 17%: LASCIZ LASCIZ LASCIZ LASCIZ LASCIZ /%A... /%A... /%A... /%A... /%A... 13: 14: 15: 16: 17: 2478 024266 24679 024306 2480 2481 2491 025004 2492 025067 2498 024755 045 045 101 101 056 056 2499 2501 2504 025414 2505 025422 2506 025426 2507 025430 ;ERROR CODE EXPLANATIONS: 11%: 12%: LASCIZ LASCIZ .EVEN /%A... 11: /%A... 12: PIXEL READBACK 'DATA AVAILABLE'' TIMEOUT/ J.S. STATUS 'DATA READY'' TIMEQUT/ DBUS DATA READ-WRITE ERROR/ DBUS SIGNAL HUNG/ VBUS SIGNAL HUNG/ (ILLEGAL ERROR CODE)/ (ILLEGAL ERROR CODE)/ ;ROUTINE TO DO A "'SOFT'' INIT ON THE DPU: 2500 2502 025402 2503 025406 108,11$,12%,13%,14%,158,168,17% 004737 012737 012777 005777 100423 004737 031412 000001 000000 155406 026756 .ENABL 023064 155412 DPINIT: JSR MOV Mov TST BMI JSR LSB PC,SAVERS #1,SIFLAG #0,aDSR aDSR 11% PC,RELEAS ; SAVE RO-RS. ; SAY DOING SOFT INIT sSELECT THE REAL DSR JARE WE STOPPED? ;BR IF YES ;SEE IF WE'RE HUNG. DL VSV11/vS11 == GRAPHIC SYS. DIAG MACRO M1113 17:22 VSV11/VS11 == GRAPHI{ SYS. DIAG MACRO M1113 29-JAN-81 17:22 INTERNAL REGISTER CHECKER, ERROR CODE HANDLER, DPINIT 2508 025434 2509 025440 2510 025444 2511 025450 2512 025454 2513 025456 2514 025476 2515 025476 2516 025504 2517 025510 2518 025514 2519 025520 2520 025524 2521 025530 2522 025534 2523 025536 2524 025540 2525 025546 2526 025552 2527 025560 2528 025564 2529 025566 2530 025572 2531 025574 .¢ 025600 25 2933 025604 2534 025606 2535 025612 2536 025614 2537 025634 2538 025642 2539 025646 2540 025650 2541 025652 2542 025656 2543 025660 2544 025664 2545 025666 2546 025706 2547 025712 2548 025716 2549 2550 2551 025720 2552 025720 2553 025740 2554 2555 025742 2556 026010 2557 2560 2561 026074 2562 026076 2563 026102 2564 026104 012777 004737 012703 012704 010477 004737 062704 040000 027454 000004 155332 160000 155314 100000 027454 11%: 12%: 027454 000400 040000 027454 155270 1%: 100000 #GTJSSW,aDXR 000001 023422 004737 005037 000207 031436 023064 JSR MOV MOV MOV JSR ADD DEC BNE JSR MOV JSR BCS JSR CLR MOV BNE 155222 012737 004737 005004 005005 005777 001003 005777 001410 023064 2%: 3%: 155160 PC,WAITF #100000,aDYR PC,WAITF 1% PC.RELEAS R2 #BIT15,R3 aDP( 2% CLR CLR R4 R5 #1,SIFLAG PC,IIRCHK TST aDXR TST aDYR CLR SIFLAG SEQ 0057 ; REPORT HUNG, ALL REGISTERS 0 ;CLEAR PENDING INTERRUPT ;SET COUNTER FOR # OF SWITCHES TO CLEAR ;SET UP OP TO CLEAR SWITCHES ;CLEAR A SWITCH ;CLEAR PENDING INTERRUPT ;DO THE INIT. JWAIT FOR A COMPLETE ;0K IF STOPPED. s TRY TO UNHANG. JEXPECT DPC TO BE O. JEXPECT DSR TO BE 100000. ;TEST THE DPC, S/B =0. ;ERROR IF NOT 0. s CHECK DSR. JREPORT ERROR IN DPC OR DSR. ;SAY DOING SOFT INIT. JCHECK THE INTERNAL REGISTERS ; DXR AND DYR SHOULD BE 0. 4% ; RESTORE RO-RS. RTS PC JRETURN TO CALLER BGNMSG VSHNG PRINTX ENDMSG #VSHGE VSHUNG: VSHGE: LASCIZ LASCIZ .EVEN BEQ DFERR JSR .DSABL 025402 #GTJSSW,aDXR aDSR,R3 3% NSINIT,PCSERR MOV JSR 3 5% NSINIT,XYERR PC,RESTRS 4%: o%: 104 040 PC,WAITF #4 ,R3 #WECC R4 R4 ,aDYR PC,WAITF #CH1,R4 R3 12% CMP BEQ DFERR BNE 155154 101 000207 MOV TST 155226 004737 aDPC,RO aDSR,RO aDXR,R0O aDYR,RO 11% VSHUNG, VSHNG DPSINI: MOV 155260 026756 001410 BIS BIS BIS BNE DFERR MOV 017700 057700 057700 057700 001010 £ PAGE 35-3 LSB / DPU HUNG =-- ALL REGISTERS READ ZERO/ /%A BAD M7064 OR NO B=CLOCK OR VBLANK FROM M7061%N/ : CCCLLLLLLLLLLLLLLCc<<<<<<< BEGIN SEGMENT., DPRESET: BGNSEG PC,DPINIT JSR ; DO SOFT INIT, ENDSEG Hs CCCLLLLLLLLLCLLLLCCCL<c<<<< END SEGMENT, RTS P ‘ | WSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 ' GLOBAL SUBROUTINES SECTION 29-JAN-B1 17:22 gggg .SBTTL 2568 s+ 52;? * 2569 G S PAGE 36 SEQ 0058 GLOBAL SUBROUTINES SECTION * THE GLOBAL SUBROUTINES SECTION CONTAINS THE SUBROUTINES 2572 THAT ARE USED IN MORE THAN ONE TEST. 2573 3 2575 52;9 * IF DISPLAY TIME-JUT, REPORT DEV FATAL, AND ABORT PASS. * OTHERWISE, SAVE DPU REGISTERS AND DISMISS. cS74 : DEFAULT DISPLAY INTERRUPT HANDLERS. 2578 : BIT DEFINITIONS FOR ''INTMASK'' AND '‘INTFLAG'' BYTES: %2;8 2581 2582 2583 2584 sggg 2587 2588 026106 2589 523? 026107 2592 2593 026110 2594 gggg 026112 000200 000001 000002 000004 IOKCKIN=BIT7 IOKSTP=BITO JOKJSM=BIT1 iOKERR=B] T2 000010 : : ;s : I0KJSS=BRIT3 DON'T CHECK FOR BAD INTERRUPTS == TEST WILL. EXPECT ''STOP'' INTERRUP EXPECT JOYSTICK FMTCH“ INTERRUPT., EXPECT "ERROR'' INTERRUPT. : EXPECT "'JOYSTICK SWITCH'®' INTERRUPT, INTERRUPT MASK == SAYS EXPECTING INTERRUPTS 000 000 INTMASK : BYTE 0 :INTERRUPT FLAG == SAYS WE GOT ONE (IF POSITIVE) INTFLAG: BYTE 0 ;SAVED INTERRUPT VECTOR: 000000 INTVEC: .WORD 0 000000 ;SAVE (CPU PC INTCPC: .WORD 2598 026114 2599 026116 2600 026122 010046 013700 012720 003052 026242 ENAINT: MOV MOV MOV RO, =-(SP) STPV.RO lDSTP (RO)+ :SAVE RO ‘GET POINTER TO VECTORS ;SET UP STOP VECTOR 2602 026132 2603 026136 012720 012720 026274 000340 MOV MOV #DJM, (RO)+ #PR107, (RO) + :SET UP MATCH VECTOR 2605 026146 012720 000340 012710 012600 011646 012766 000002 000340 2597 :SUBROUTINE TO ENABLE 2601 026126 012720 000340 2604 026142 2606 026152 2607 026156 2608 026162 2609 026164 261C 026166 52}; 026174 2613 2614 026176 MOV 012720 026210 MOV MOV 012720 026326 011646 000000 MCV 000340 000002 2618 2619 026210 2620 026216 2621 026222 013737 105037 132737 003056 026107 000004 026110 2622 026230 001053 INTERRUPTS: #PR107, (RO)+ #DTO, (RO) + :SET UP ERROR VECTOR #DJS, (RO) + :SET UP JOYSTICK SWITCH VECTOR #PRI07, (RO) + #PR107, (RO) (SP)+,R0 (SP) ,=(SP) #0,2(SP) :RESTORE RO :SET CPU TO LEVEL 0 :SUBROUTINE TO DISABLE INTERRUPTS (RAISE PRIORITY TO LEVEL 7) 012766 000002 MOV MOV MOV MOV RT] 000002 2615 026200 5219 026206 0 026106 DSBINT: MOV j MOV RT] (SP) ,=(SP) #PR107,2(SP) ;ERROR (TIME=-CUT) INTERRUPT SERVICE: DTO: MOV TOTV, INTVEC :SAVE THE VECTOR CLRB INTFLAG ;CLEAR FLAG TO SAY WE GOT INTERRUPT BITR #]0KERR, INTMASK ;EXPECTING ERROR INTERRUPT? BNE DPUSAV ;BR IF YES; NO ERROR. a C WSV11/vS11 == GRAPHIC SYS. DIAG MACRO M1113 - GLOBAL SUBROUTINES SECTION 2623 026232 2624 026240 2625 2626 026242 2627 026250 2628 026254 2625 026262 2630 026264 2631 026272 2632 2633 026274 152737 000004 026107 013737 003052 026107 000001 026110 026106 000001 026107 003054 026107 000002 026110 000002 026107 105037 132737 003060 026107 0C0010 026110 152737 000010 026107 011637 010146 013701 026112 000447 105037 2634 026302 2635 026306 2636 026314 2637 026316 2638 026324 2639 2640 026326 2641 026334 2642 026340 2643 026346 2644 026350 2645 026356 2646 2647 2648 0263() 2649 026364 2650 026366 2651 026372 2652 026400 2653 026404 2654 026412 2655 026420 2656 026424 2657 026430 2669 026510 2670 026514 2672 026520 2673 (26524 267L 026526 2675 026532 2676 026534 2677 026540 2678 026546 2679 026552 013737 001004 000400 003034 154434 003130 154426 154422 000001 003146 000002 003150 000003 003152 000004 003154 000005 003156 000006 003160 000007 003162 000000 003144 ;GO FINISH UP. MOV CLRB STPV, INTVEC INTFLAG SCLEAR FLAG TO SAY WE GOT INTERRUPT #]10KSTP, INTMASK *EXPECTING STOP INTERRUPT? :BR IF YES DPUSAV #10KSTP,INTFLAG :NO. SET THE ERROR FLAG. ;GO FINISH UP. DPUSAV MOV (LRB JSMV, INTVEC INTFLAG MOV (LRB BITB DPUSAV: MOV MOV MOV MOV MOV MOV ;SAVE THE VECTOR #10KJSS, INTMASK P) , INTCPC (S R1,=(SP) DSR,R1 1% EXTA,=(SP) MOV MOV MOV MOV MOV MOV MOV MOV 1STB TSTB MOV MOV MOV JSR :CLEAR FLAG TO SAY WE GOT INTERRUPT *EXPECTING SWITCH INTERRUPT? :BR IF YES DPUSAV #10KJSS, INTFLAG :NO. SET THE ERROR DPUSAV ;GO FINISH UP. BM] MOV 022300 JSSV, INTVEC INTFLAG 1% MOV MOV MOV ERROR FLAG. ;GO FINISH UP. BEQ MOV :CLEAR FLAG TO SAY WE GOT INTERRUPT “EXPECTING MATCH INTERRUPT? DPUSAV BITB MOV MOV MOV ;SAVE THE VECTOR #10KJSM, INTMASK :BR IF YES DPUSAV #10KJSM, INTFLAG :NO. SET THE abPC, IDPC (R1) ,IDSR aDXR, IDXR aDYR,IDYR #SELPCS, (R1) (R1) ,IPCSAV #SELFLG, (R1) (R1),IFLAGS #SELCSR, (R1) (R1) ,ICSR #SELMRR, (R1) (R1) ,IMAIN #SELHBA, (R1) (R1) , IHBASE #SELXRR, (R1) (R1), IAUX #SELCBA, (R1) (R1) ,1CBASE #SELDSR, (R1) (R1),ISDSR #10KERR, INTFLAG MOV : ;SAVE THE VECTOR BITB BNE BISB BR BNE BISB BR 003132 003134 ;NO. SET THE ERROR FLAG. DPUSAV BISB BR 003126 SEQ 0059 #]0KERR, INTFLAG BNE DJS: 5 PAGE 36-1 BiSB BR BITB 026106 026106 023324 026112 030216 DJM: 026106 026107 022300 DSTP: 29-JAN-81 17:22 FLAG. ;SAVE (CPU PC. :SAVE R1 ;GET DSR ADDRESS INTC R1 SAVE DISPLAY PC... .STATUS. EamedX POSITION.. seesY POSITION.. *SAVE PCSAVE... ‘SAVE FLAGS... ‘SAVE CSR... "SAVE MAIN MEM-MGMT.. "SAVE HISTO. BASE... "SAVE AUX. MEM-MGMT.. ‘SAVE CHAR. BASE... END UP AT DSR.. _AND SAVE IT. “"DID WE GET AN ERROR INTERRUPT? INTMASK * ANY ERROR FLAGS SET? ; BR IF NO " YES. IS CHECKING TURNED OFF? #PTINER,EXTA ; SAVE_ERROR EXTENSION ADDRESS. SET EXTENSION TO PRINT TEST IN ERROR. INTFLAG R INTCPC PC, INCERK > BR IF YES :GET CPU PC, s INCREMENT THE ERROR COUNTS " Gl 5 §6°2 PAGE VSV11/7VS11 == GRAPHIC SYS. DIAG MACRO M1113 29-JAN-B81 17:22 ( SEQ 0060 GLOBAL SUBROUTINES SECTION 2680 026556 012637 004737 022300 030254 1%: 012601 000002 2688 2689 026602 2690 026604 2691 026606 2692 026614 2693 026622 269% 026630 ERRDF MOV JSR O, IFAULT,INTERR JREPORT ERROR... (SP)+ EXTA JRESTORE EXTA PC, CKEMAX MOV (SP)+ ,R1 RT] sRESTORE R1 ;...AND DISMISS. ; AND A SIMILAR CNE FOR THE LUT INTERRUPTS. [DUN: 000137 026606 017737 017737 017737 000002 154230 154224 154220 JMP LUTSAV LUTSAV: MOV MOV MOV RT] a(~0)+ aLSR,ILSR aLDR, ILDR alLMR, ILMR ; SAVE LUT REGISTERS. ; AND DISMISS. VSV11/VS11 == GRAPMIC IC SYS. DIAG MACRO M1113 29-JAN-81 17:22 PAGE 57 Y 5 - SEQ 0061 GLOBAL SUBROUTINES SECT 10N SUBROUTINE TO INITIALIZE THE CURRENT UNIT DISPLAY. CALL "‘CLRW'' TO INIT WITH [M'S IN WRITE MODE. CALL "'CLRRW'' TO INIT WITH IM*'S IN WRITE=IN=-RETRACE MODE. CALL "'CLRRW1'' TO INIT WITH IM'S [N WRITE=IN-RETRACE, 1°S=ONLY MODE. . ENABL 2707 2708 026632 2709 026636 2710 026640 2711 026646 2712 026650 2713 2714 (26656 2715 (26664 2716 026670 2717 026674 2718 026676 2;19 026704 2720 2721 026712 2722 2723 026714 2724 026722 2725 026726 2726 026732 2727 2728 026734 2729 026742 2730 026750 2731 026752 2732 026754 2733 LSB :THE OPERATIONS ARE PERFORMED VIA PROGRAMMED [/0 SO THAT EXECUTION OF A DISPLAY 005037 000407 012737 000403 012737 012777 001426 042737 052737 : FILE DOES NOT HAVE TO TAKE PLACE. :SAY CLEAR TO ‘WRITE-ONLY'' MODE. ggnfcu ghfl CLRW: 026754 176076 026754 CLRRW1: ggv 1§DURY1.CLHFCN :SAY CLEAR TO READ/WRITE=1"S=ONLY. 176074 026754 (LRRW: MOV #RDWRT ,CLMFCN ;SAY CLEAR TO READ/WRITE MOV #BIT15,aDYR ; DO SOFT INIT TO CLEAR MEMORIES 100000 027454 026754 176000 040000 154154 :18: 1%: JSR JSR TST BEQ BIC 026754 026754 BIS 2S: PC,WAITF CLMFCN 3s #176000,CLMFCN #WRTMSR,CLMFCN ;DO INIT (CLEARS MEM, WRITE MODE, DISABLES J.S.) ;aaal :ANY THING ELSE TO DO? JEXIT IF NOT. ;ZAP OUT OP-CODE. ;INSERT CODE FOR WRITING INTO DYR. ; €CCLCLLLLLLLLLLLLLCLLLLLL<< BEGIN SEGMENT. BGNSEG JSR JSR ENDSEG :WAIT FOR NOT BUSY. PC,WAITF :CHECK FOR ERROR PC ,ERRCHK ; €LCLCLLLLLLLLLLLLLLLLLLLLL< END SEGMENT. CLMFCN,aDYR :WRITE MEMORY STATUS-BA REGISTER ADD BIT BNE #CH1,CLMFCN #(H3,CLMFCN :BUMP THE CHANNEL #. ;DONE ALL CHANNELS? 013777 004737 004737 026754 027454 023524 154116 MOV 062737 032737 001360 000207 000000 000400 001400 026754 026754 3%: PC,.DPINIT ’% RTS PC .DSABL LSB CLMFCN: © ;LOOP IF NOT. :RETURN WHEN DONE ALL 3 CHANNELS :FUNCTION FOR CLEARING MEMORY. : ANOTHER TO RELEASE THE DPU. 2737 2738 026756 2739 026764 2740 026770 2741 026772 2742 026776 2743 027002 274k 2745 027004 2746 027006 2747 027012 2748 2749 2750 2751 2752 s EXECUTE “EXT STOP'' IF HE'S RUNNING, 'BUS=INIT'' IF HE'S HUNG. 012777 005777 000000 005077 004737 154036 100410 103403 004737 000207 154044 154050 RELEAS: MOV TST BM] (LR JSR 027454 027454 B(S 1%: BRESET JSR RTS #SELDSR,aDSR aDSR 1% aDSR PC,WAITF 1% PC,WwAITF PC :MAKE SURE WE SELECT REAL DSR JEXIT IF DPU IS STOPPED. JEXIT IF HE'S FREE. sXCT "EXTERNAL STOP''. :EXIT IF STOP WORKED. ;17T DIDN'T, XCT BUS=INIT... ; BUS RESET. :...AND WAIT AGAIN. : SUBROUTINE TO FILL ALL OF FREE CORE WITH PIXEL DATA (RO) ; FOR BIT MAP FUNCTIONS. ; REGISTERS ARE NOT SAVED. = DATA PATTERN. GLOBAL SUBROUTINES SECTION 2753 027014 27%6 027016 2755 027020 2756 027022 2757 027024 2758 027030 2759 027034 2760 027040 2761 027042 2762 027044 2763 027050 2704 027052 010001 000402 010001 005101 013702 013703 042703 010022 010122 162703 003373 000207 K 37- SEC 0062 MOV RO,R1 FILL WITH (RO). FILL2: MOV COM MOV MOV BIC RO,R1 R1 FREE ,R2 POINTER. MOV SUB BGT R1,(R2)+ 003242 000002 PAGE FILLY: 003240 100003 29-JAN-81 17:22 —\N VSV11/7VS11 == GRAPHIC SYS. DIAG MACRO M1113 1%: SKP? MOV RTS FILL WITH ALTERNATE WORDS. WORD COUNT. FRESIZ,R3 #100003,R3 RO, (R2) + #2.R3 1% PC ; ; INSURE WC IS EVEN. 1ST WORD... L. ..NEXT WORD. p— — | VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 GLOBAL SUBROUTINES SECTION 2821 2822 2823 29-JAN-81 17:22 MOV GREY-SCALE TABLE ADDRESS. LUT WORDS / SHADE. MOV #NTSC8,R1 #32.,-(SP) BASIC 8 COLOR TABLE ADDRESS. LUT WORDS / COLOR. MOV #EXPRM,R1 #16.,-(SP) EXPERIMENTAL 16 COLOR TABLE. LUT WORDS / COLOR. TST BEQ CLR BIS MOV LUTAV 3% aL SR 107066 000001 LUMIN: MOV 110066 000040 NTSC: 110106 000020 EXPR: 2833 027110 005737 003216 005077 052777 011600 012177 005777 100375 105777 001406 005300 001765 016177 000764 005726 000207 153720 000100 1%: 2835 027116 2836 027122 2837 027130 2838 027132 2839 027136 2840 027142 2841 027144 2842 027150 2843 027152 2844 027154 2845 027156 2846 027164 2847 027166 2848 027170 2849 2850 2851 2852 2853 001424 153716 153706 153700 2%: 153672 177776 153660 3%: SKP2+2 MOV SKP2+2 MOV MoV TST BPL TSTB BEQ DEC BEQ MOV BR TST RTS RETURN IF NO LUT INSTALLED. ADDR O, NO INTERRUPTS. GAMMA CORRECTION OFF. SET ITERATION K. BLAST THE RAM. #GCOFF ,aLMR (SP) ,RO (R1)+,aLDR iLzR WAIT FOR READY. aL SR LAST ADDRESS DONE ?? RO 1% GET NEXT COLOR. EXIT IF SO. 3% -2(R1) ,aLDR 2% + (SP) PC REPEAT THIS COLOR. ; FIX THE STACK... *...AND RETURN. BLAST 16 SHADES OF THE BASIC COLOR IN (R1). : LOCATION ''SHADLY'' SET BY CALLER TO PRODUCE A PLEASING ; VISUAL EFFECT. 2854 027172 2855 027176 005737 001433 003216 2857 027202 2858 027206 2859 027214 2860 027220 2861 027222 2862 027226 2863 027232 2864 027236 2865 027240 2866 027244 2867 027246 2868 027250 2869 027254 2870 027256 2871 027260 2872 027262 2873 027264 2874 027266 005077 052777 042701 005002 012703 010277 005777 100375 013700 005300 001376 105777 001404 005303 001362 060102 000756 000207 153634 000100 177356 2856 027200 SEQ 0063 #LUMTBL ,R1 #1,-(SP) 012701 012746 000404 012701 012746 000404 012701 012746 2834 027114 5 ° SUBROUTINE TO BLAST THE LUT RAM WITH COLOR OR GREY-SCALE DATA. 2824 027054 2825 027060 2826 027064 2827 027066 2828 027072 2829 027076 2830 027100 2831 027104 2832 L PAGE 38 000020 153612 153604 SHAD16: TST 153632 1%: 2%: 003220 153566 3%: BEQ BREAK CLR BIS BIC CLR MOV MOV TST BPL MOV DEC BNE T1STB BEQ DEC BNE ADD BR RTS LUTAV $ aLSR #GCOFF ,aLMR #~04621 ,R1 R2 R2,aLDR aLzR SHADLY ,RO RO RETURN IF NO LUT INSTALLED. Y e | | LA TE TR TR TR o ADDR 0, NO INTERRUPTS. GAMMA CORRECT OFF. SET DIMMEST SHADE THIS COLOR. 1ST SHADE IS ALWAYS BLACK. 16 LUT WORDS / SHADE. WRITE DATA. DELAY. LUT RAM FULL ?? EXIT IF SO. THIS SHADE DONE ?? NOT YET, LOOP. YES, INCREMENT THE SHADE... ...AND CONTINUE. VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 GLOBAL SUBROUTINES SECTION 2882 027270 2883 027274 2884 027276 2885 027300 2886 027304 2887 027310 020027 103003 005400 062700 042700 000207 001000 2889 027312 2890 027316 2891 027320 2892 027322 004737 000300 006200 000207 027270 NISeSesasanen, 2876 29-JAN-81 17:22 L PAGE 39 SEQ 0064 SUBROUTINES TO TRANSLATE AN ABSOLUTE X OR Y TO SHORT FORM DELTA X OR Y. USED IN SVEC AND RPNT TESTS. INPUT RO = ABS CO-ORD, IN THE RANGE (1000 +/=76). OUTPUT RO = DX OR DY CORRECTLY POSITIONED AND SIGNED. DY: 000100 177600 CMP BHIS NEG ADD BIC RTS SDX: JSR SWAB ASR RTS RO,#1000 .+10 RO #100,RO #~C177.RO PC PC,SDY RO RO PC ;SKP3 IF POS DELTA. sMAKE NEG DELTA. ;SET SIGN BIT. ;RO = +/-DY IN <6:0>. ;MAKE A DY... ;...MOVE TO HI BYTE. ;RO = +/=DX IN <13:7>. SUBROUTINE TO CONVERT 12 BIT OCTAL TO ASCII FOR DISPLAY. 2898 R1 = OCTAL X OR Y CO-ORD AT ENTRY. R1,,R2 = 4 DIGIT ASCII EQUIVALENT AT EXIT. RO, R1, AND R2 NOT SAVED AT ENTRY. 2899 027324 2900 027332 2901 027340 2902 027344 2903 027346 2904 027350 2905 027352 2906 027356 012737 013737 042701 010102 000302 006202 04270¢ 150237 030060 003232 170000 2908 027364 012700 000006 2911 027374 2912 027376 2913 027402 2914 027406 2915 027410 2916 027414 2917 027416 2918 027420 2919 027422 2920 027426 2921 027432 2922 027436 2923 027442 2924 027446 2925 027452 001375 042702 150237 010102 012700 006202 005300 001375 042702 150237 042701 150137 013701 013702 000207 003232 003234 CNVRT: 177770 003232 1%: 177770 003233 000003 177770 003234 177770 003235 003232 003234 2%: MOV MOV BIC MOV SWAB ASR BIC BISB MOV MoV ASR DEC BNE BIC BISB MOV MOV ASR DEC BNE BIC BISB BIC BISB MOV MOV RTS #''00, TEMP1 ;ASCII 00 #*C7777 .R1 :STRIP ANY CRAP BITS. TEMP1, TEMP2 R1.R2 R2 R2 #~C7 ,R2 R2,TEMP1 R1.R2 #6.R0O #~C7 ,R2 R2,TEMP1+1 R1.R2 #3.R0 R2 RO 2% #C7,R2 R2,TEMP2 #~C7,R1 R1,TEMP2+1 TEMP1 ,R1 TEMP2 ,R2 PC ;HERE TO0O. ;1ST (HI ORDER) DIGIT. ;SHIFT OFF 6 BITS. ;2ND DIGIT. ;SHIFT OFF 3 BITS. :3RD DIGIT. :4TH (AND LAST) DIGIT. :Hl HALF => R1. :LO HALF => RZ2. JAND EXIT. e VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 GLOBAL SUBROUTINES SECTION 2927 N PAGE 40 5 SEQ 0065 SUBROUTINE TO WAIT FOR DISPLAY STOP FLAG. 2928 2929 24 2932 027454 2933 027456 012727 005670 2934 027462 2935 027464 29-JAN-81 17:22 005670 005777 153344 2936 027470 100407 2937 027472 004737 027530 2938 027476 005337 027462 2939 027502 001370 2940 027504 000241 2941 027506 000401 RETURN WITH °C'* = 1 AS SOON AS STOP OCCURS. OTHERWISE, “'C'' = O AND RETURN AFTER APPROX 300 MSEC. ; DO A SUPVSR BREAK FIRST. WAITF: BREAK ; 300 MSEC TIMER. #3000., (PC)+ MOV 1$: 2%: 3000. TST BMI JSR DEC BNE CLC aDSR 3% PC,US100 1% 2% SKP1 SEC ; EXIT ON STOP FLAG. ; OTHERWISE, WAIT 100 USEC... ;...AND TRY AGAIN. ;s C =0, DPU STILL RUNNING... ;...0R HUNG-UP AFTER 300 MSEC. ; C=1, DPU IS STOPPED. 2942 027510 000261 3%: 2945 2946 : SUBROUTINES TO PAUSE (WAIT) IN INCREMENTS OF 100 USEC. ; BASED ON AVERAGE TIME (CPU DEPENDANT) TO EXECUTE 2949 2950 ggg} : DELAY CONSTANT (K100US) SHOULD BE ADJUSTED AS FOLLOWS: FOR SLOW CPU'S (11/03 THRU 10), K100US = 8. : FOR FAST CPU'S (11/34 THRU 70), K100US = 32. 3 ngz 027512 000207 2947 2948 RTS PC : : DEC RO BNE .- 2953 027514 012746 023420 PAUSE1: MOV #10000.,-(SP) ; 1 SEC TIMER. 2955 027522 012746 011610 PAUS.5: MOV #5000. ,-(SP) ; 1/2 SEC TIMER. 2957 027530 012746 2958 027534 011646 2959 027536 010066 000001 Us100: MoV MoV MOV #1,-(SP) (SP) ,=(SP) RO,2(SP) ; 100 USEC TIMER. ; SAVE THE COUNT ; SAVE RO BNE M 1 ; 100 USEC (MORE OR LESS) LOOP. 1% (SP) + (SP)+,RO PC ; VARIABLE LOOP. ; FIX STACK... ; RESTORE RO ;...AND RETURN. : 100 USEC TIMER. 2954 027520 2956 027526 2960 027542 2961 027546 000402 000402 013700 005300 2962 027550 001376 2963 027552 005316 2964 027554 001372 2965 027556 005726 2966 027560 012600 2967 027562 000207 2968 027564 000010 000002 027564 SKP?2 1%: SKP2 MOV DEC DEC BNE TST MOV RTS K100US: 8. K100US.RO RO (SP) - VYSV11/7vS11 == GRAPHIC SYS. DIAG MACRO M1113 GLOBAL SUBROUTINES SECTION 29-JAN-81 17:22 B PAGE 41 6 SEQ 0066 H 2970 : ROUTINE TO TEST FOR A NEXM IN THE RANGE (R1) THRU (R2). : ON RETURN, IF ''C'' = 1, (R1) = NEXM ADDRESS. 2971 2972 *'C"'= 0, ALL ADDRESSES OK. 3 297% ; 2974 2975 :CALL: MOV ADR1,R1 2977 3 JSR PC ,NXM : 2976 3 gg;g MOV ADRZ2,R2 RE TURN #2% ,ans :TEST *°C"" AND PROCEED. : SET BUSERR VECTOR. 2980 027566 012737 027620 000004 NXM: MOV 2983 027604 005711 2984 2985 027606 020102 2986 027610 001407 2987 027612 062701 000002 gggg 027616 000772 1%: TST 2959 027620 005103 2991 027622 012716 027630 2992 027626 000002 2993 027630 2994 027636 005703 2995 027640 001401 2996 027642 000261 2%: 2999 3000 %5 ; EXIT WITH *'C'* SET IF LOOPS ALLOWED AND LOOP COUNT NON-ZERG. : LOOP COUNTER IS SET BY "BEGIN.TEST'® MACRO. 3003 3004 3005 027646 : CALL: LOOPTO : LOOP: 2981 027574 2982 027602 gggg 027644 012737 005003 000200 000006 CMP BEQ ADD BR 3%: 003030 3010 027662 005337 027700 3012 027670 000241 1%: %014 027674 000261 2%: 000000 LOOPK: 3015 027676 3016 027700 = (R1) R1,.R2 3% #2,R1 1% R3 #3%,(SP) #4 R3 A FC ;FLAG. :TEST THE ADDRESS(ES). :IF ANY TRAP, CONTINUE AT 2$. :OTHERWISE, CONTINUE HERE. :BR IF FINISHED (NO NEXM'S). :SET NEXT ADDRESS... :...AND CONTINUE. ;GOT ONE, SET FLAG... :...AND DISMISS INTERRUPT... :...AND GIVE BACK THE VECTOR. :DID WE CATCH ONE ?? :NO, 'C'""= 0, SKIP NEXT. :YES, ''C"'= 1, (R1) = NEXM ADDR. 100403 001002 000401 000207 ARG TST NOITS : ITERATIONS INHIBITED? BMI 1% :LOOPS DISALLOWED IN QUICK PASS. BNE TST 001006 005737 3013 027672 RTI CLRVEC TST BEQ SEC #PR]104 ,a#6 R3 : SUBROUTINE TC EXECUTE TEST ITERATIONS. 3007 027652 3008 027654 3011 027666 COM MOV RTS 000207 3006 027646 005737 002510 3009 027660 MOV CLR DEC BNE gL L 1% QVP LOOPK 2% SKP1 SEC RTS O PC : YES. : NO. : BUMP LOOP COUNTER. :LOOP DISALLOWED, OR DONE. :LOOP ENABLED. : LOOP (ITERATION) COUNTER. o cC 6 VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 29-JAN-81 17:22 PAGE 42 GLOBAL SUBROUTINES SECTION SEQ 0067 3 3018 3019 : PRINT THE NUMBER AND NAME OF EACH TEST AS WE GO ALONG. 3021 : IN THE CURRENT RUN SEQUENCE. gggg : : INCREMENT '‘TESTK'' TO INDICATE THE NUMBER OF TESTS 3020 : CLEAR THE ERROR COUNTER AND SIGNATURE EXTENSION FLAGS. : w=x% NOTE: REQUIRES PRIOR USE OF THE 'BEGIN.TEST'' MACRO %85% 3024 TISTGO: 3027 027702 005037 023064 3028 027706 005037 030130 3029 027712 005037 022300 3030 027716 105037 026106 3031 027722 013700 3034 027734 3035 027736 001430 100010 003026 3032 027726 006300 3033 027730 005737 003226 3036 027740 052760 3037 027746 3038 027756 000407 3041 027776 012737 3039 027760 052760 3040 027766 3042 030004 3043 030012 33844? 030014 3046 030016 3047 030020 3048 3049 3050 030024 3051 030026 3052 030052 3053 030056 001412 3055 030064 3056 030066 gggg 030070 000000 000000 000000 3054 030062 160000 003302 160001 003302 3%: 177777 003224 2%: 005237 004737 000207 4%: 001000 : 3 1%: 030070 026114 5%: TNUM: TNAM: TESTK: 030027 gggg 030126 000207 3068 030130 3069 030132 000000 045 3072 1,NXR,NXRERR 2% : NO DEVICE HERE == PRINT IT #-1,DUFLG : DROP THE UNIT #160000,ERTABL(RO) ; FLAG ERROR IN THE ERROR TABLE BIS ERRDF : FLAG ERROR IN THE ERROR TABLE #160001 ,ERTABL (RO : DEVICE NOT IDLE 2,NOINIT DODU UNITN ERRDF BR MOV 5% RFLAGS BIT TST BNE RO #PNT ,RO TIDFLG 1% RTS PC ; ABORT THE PASS : : : : GET THE OPERATOR FLAGS. PRINT THE TEST NUMBERS? WANNA TYPE THE TEST ID? NAH! BR IF NO PRINT NUMBER AND TITLE. BUMP TEST COUNTER. ENABLE INTERRUPTS 1% BEQ PRINTF TNAM, TNUM TESTK INC PC,ENAINT JSR : : : : 0 0 0 : NUMBER OF TESTS RUN THIS PASS. : IF NORMAL ERROR REPORTING IS DISABLED (FLA:IER). 3062 030072 3063 030074 gggz : BR IF YES : BR IF NOT IDLE : AT END OF EACH TEST, PRINT THE NUMBER OF ERRORS RECEIVED 3829 gg;? 030151 43 33 BIS DOCLN BR 3059 3064 030100 2065 030102 BEQ BPL 000422 032700 TO SET NAME AND NUMBER POINTERS. : CLEAR ''SOFT INIT'' FLAG SIFLAG CLR : CLEAR LOCAL ERROR COUNTER. ERRK CLR : CLEAR ERROR EXTENSION FLAG. EXTA CLR CLEAR INTERRUPT MASK (CHECK ERROR) * INTMASK CLRB THE UNIT NUMBER, GET : UNITN,RO MOV MAKE IT A WORD OFFSET. AND ... : RO ASL FIND THE DEVICE? STARTUP DID : NODEV TST 001412 105 TSTEND: RFLAGS BIT 020000 1%: 101 122 040 122 BEQ PRINTF RTS RO RO,#IER 1% #ESUM,ERRK PC : BR IF "'IER'* NOT SET. : PRINT ERROR COUNT. : LOCAL ERROR COUNT. ; 0 ERRK: ESUM: _ .ASCIZ /%A %D%A ERRORS/ EMAthfi'.?sg*z EV /ERROR LIMIT REACHED == DROPPING UNIT/ : ROUTINES TO INCREMENT LOCAL ERROR COUNT AND CHECK FOR LIMIT: ) l f v | 1 | : 3075 030216 3076 030222 3077 030224 3078 030230 3079 030232 3080 030236 3081 030240 3082 030244 005237 6 INCERK: INC 030130 MO 003026 007777 1%: 36 3087 030254 3088 030256 309 3098 030320 3099 030322 3100 030330 3101 030340 023737 103417 030130 032700 001013 012737 000040 177777 1%: 012600 000207 2%: 010046 CKDROP: 032700 001011 012600 012737 000401 012600 000207 RETURN TO CALLER. ... AND MAKE IT A WORD OFFSET IS GLOBAL LIMIT EXCEEDED FOR THIS UNIT? BR IF YES IS LOCAL LIMIT EXCEEDED FOR THIS TEST? BR IF NO GET OPERATOR FLAGS IS DROPPING INHIBITED? 2% BR IF YES. NO == DROP THE UNIT (SP)+,RO RESTORE RO RETURN TO CALLER PC RO,=(SP) 000040 #1DU,RO 177777 #-1,DUFLG UNITN 1% 003224 (SP)+,RO DODU DOCLN RTS 2% (SP)+,RO PC ;ABORT THE PASS e e GET ERROR TABLE ENTRY EXTRACT ERROR COUNT FIELD #-1,DUFLG 4 ,EMAXDU UNITN 003224 YES == BACK IT UP TO 7777. ERTABL (RO) ,RO X RK , LERRMA ER 2% RO #1DU,RO 002514 BR IF NO. SAVE RO GET UNIT NUMBER ?g.GERRMAX 002516 INCREMENT THE DEVICE ERROR COUNT DID WE OVERFLOW THE FIELD? RO,=(SP) #170000,R0 170000 ... AND MAKE IT A WORD OFFSET. RO GETS ADDRESS OF ERROR TABLE ENTRY. RESTORE RO gNITN.RO 0 003302 INCREMENT LOCAL ERRCR COUNT SAVE RO GET UNIT NUMBER, (S”)+,RO PC CKEMAX: 003026 UNITN,RO RO #ERTABL ,RO (RO) #7777 ,(RO) % (RO) 003302 ==-==- 30 3085 030252 ERRK RO,=(SP) — SEQ 0068 GLOBAL SUBROUTINES SECTION e ——————— D_6 VSV11/vS11 == GRAPHIC SYS. BIAG MACRO M1113 29-JAN-81 17:22 PAGE 42-1 o o | | VSV11/yS11 == GRAPHIC SYS. DIAG MACRO M1113 29-JAN-81 17:22 E.6 PAGE 43 SEQ 0069 GLOBAL SUBROUTINES SECTION * SUBROUTINE = CONFIGURE VSV11 SYSTEM. 012777 004737 000000 027454 103410 012737 004737 005005 012777 005065 010501 006201 000301 052701 010177 004737 012777 004737 012777 017702 100440 012777 017702 NANNITEIETARRERZE £53 SRR WWW lolole] i e i D00~ ) (WL AV, IV, IV, | 152410 027454 000400 001400 144003 022440 000013 003256 040060 152272 027454 000000 027454 000003 152236 000000 152222 176003 ADD BIT BNE 152362 023056 1%: 152310 2%: 152242 o o o W o ~ OO d e h b ek e h e e NNNNNo o 042701 010177 012701 #0,aDXR PC,WAITF 1% JSR CLR :g.CSRCHK MOV ; PROTECT ALL MEMORIES . TRY A PIXEL READ. BR IF UNSUCCESSFUL. PIXEL READBACK HANGS UP. PRBH #144003,GDDAT MOV #13,aDSR MOV ASR SWAB BIS MOV R5,R1 CLR CTABM(RS) R1 R1 INIT MEM TABLE PTR. CLEAR (SR. CLEAR TABLE ENTRY. ENABLE MEM R/W. #40060,R1 R1,aDYR PC,WAITF #0,aDXR PC,WAITF #3,aDSR PIXEL READ. Ig MEM THERE? aDSR,R2 5% N aDSR,R2 #176003,R2 INVERT PIXEL DATA. #0,aDSR 152226 R2 - YES. GET PIXEL DATA. R2,CTABM(RS) PUT PIXEL DATA IN MEM TABLE. 5% SCPRE,SYSCON NO. #8..R3 R4 GOT AN EVEN NUMBER OF PIXEL BITS? 3%: 000001 001371 032704 001410 PC,DPINIT #40000,R0 RO,aDYR PC,WAITF #CH1,RO #CA43,R0 108 MOV JSR B(CS DFERR JSR 152256 O D wd e wd i e CONMEM: JSR MOV MOV 10%: JSR 003256 000010 b (N N N N N N N N NN N N NN NN N N NN N W 153 030616 CONF IG: SN, 3129 3130 030446 3131 030454 3132 030460 3133 030462 3134 030502 3135 030510 3136 030514 3137 C30516 3138 030524 3139 030530 3140 030532 3141 030534 3142 030536 3143 030542 3144 030546 3145 030552 3146 030560 3147 030564 3148 030572 3149 030576 025402 040000 S 3128 030444 004737 012700 010077 004737 062700 032700 001367 4%: 000001 5%: 000060 152130 PC,WAITF 027454 000002 000010 000010 003256 #60,R1 R1,aDYR #2,R5 003252 6%: gS,t10 $ #BIT3 MEMFLG #MEMTAB,R1 YES. RE-PROTECT THE MEM. NEXT MEM, ALL MEMS CHECKED? NO. YES. SET ONE FLAG TO INDICATE MEMS AVAIL. 152036 1%: 151776 BIS MOV oo 38R 3217 3218 031166 3219 031172 3220 031174 3221 031202 3222 031204 3223 031212 3224 031214 3225 3226 031234 3227 021242 3228 031246 3229 031250 3230 031252 3231 031260 JSR 152002 MOV MOV 150000 003270 003270 2%: 000002 000010 Qo o - 3203 031104 3204 031106 3205 031112 3206 031116 3207 031122 3208 031124 3209 031126 3210 031130 3211 031132 3212 031136 3213 031142 3214 031144 3215 3216 031146 003270 003230 005715 001402 021503 001006 062705 020527 001367 000410 100000 8 4%: 000002 003300 002512 003256 003022 023737 001410 003270 003024 ADD CMP BNE MOV MOV BIS TST BEQ CMP BNE ADD (MP 012737 012701 005721 001403 052737 006237 000010 003270 003254 RS,R1 READ CURSOR STATUS. R1 R1 #42100,R1 R1,aDXR PC,WAITF #3,aDSR aDSR,R2 R2.,#150000 2% aDYR,R2 #157777 ,R2 R2,CTABS(R5) R2.R3 #2.R5 R5,#10 1% #CTABS RS R3,INTLAC (RS) (RS) ,R3 5% #2,RS RS,#CTABS+10 3% 6% (MP BNE CMP BEQ HRDERR gEMTAB.MFGMO MOV MOV TST #BIT3,SYCFLG BIS #BI1T4L,SYCFLG SYCFLG ASR YES. 9% SYCTAB,MFGSO 9% SCME ,SYSCON #SYCTAB,R1 (R1)+ 1% (NO CHAN HERE). SET CHAN EXISTS IN TABLE. ; GET INTERLACE BIT. ; SET IT IN TABLE. ; REMEMBER IT IN R3. ; NEXT SYNC CHAN. ; ALL SYNC CHANS CHECKED? NO. YES. ALL INTERLACE BITS THE SAME? REMEMBER INTERLACE/NON-INTERLACE STATUS (R3 HAS LAST INTFRLACE BIT FOUND). GOT AN ENTRY IN TABLE? NO. 4% MFGFLG 11%: ; #BIT15,R3 TST BEQ ; GOT A DATA READY ERROR? #B1T15,CTABS(RS); NO. 6%: 9%: CLEAR TABLE ENTRY. #3777 ,R2 SCIDE ,SYSCON 10%: 003254 CLEAR CSR. HRDERR BEQ INIT SYNC CHAN TABLE PTR. #13,aDSR 5%: 7%: 000020 003254 BIC CMP BEQ BIS MOV BIC BIS BIS BNE BR 005737 001420 023737 001004 CTARS(RS) ASR SWAB 003777 100000 151756 157777 CLR MOV MOV 152016 027454 000003 CLR CLR R 025402 (R1)+ 8% #B1T4 MEMFLG gEMFLG $ PC,DPINIT R3 RS L S n . o o - W —d —d D o2 p WWWWWWWWWWWNW Juat 00325¢2 042100 1024 1032 1036 W o N o n 000020 003252 000013 003270 3201 031074 N TST BEQ BIS ASR 8%: BCC CONSYC: JSR 7%: SEG 0070 R 103370 o le] [eleleoleolololelolelelelele] oo S8 SYRIRACLSBEIFRRERNZ2ES ._.—l—ld-‘-‘—l—l—l—l—..a—l-l_—l—‘—‘.dd—l-—l_‘ o xfiwwwwwwwwwwwwuwwwwwwwww 76 030742 005721 001403 052737 006237 6 R 3175 030740 F_ PAGE 43-1 R GLOBAL SUBROUTINES SECTION 29-JAN=81 17:22 LR TR ' VSV11/vS11 == GRAPHIC SvS. DIAG MACRO M1113 LSS' INTERLACE BIT SAME? YES. NEXT TABLE ENTRY. DONE? NO. YES. MSNUFACTURING FLAG SET? N - : Lgs. NEW MEM O = MFG MEM O MASTER? NEW SYNC CHAN O = MFG MASTER SYNC CHAN 0? YES. ; NO. SET ONE FLAG TU INDICATE SYNC CHANS AVAIL. ! ' JSV11/7yS11 == GRAPMIC SYS. DIAG MACRO M1113 GLOBAL SUBROUTINES SECTION 33 031264 103370 3533 (031066 000207 353, 3235 353 29-JAN=81 17:22 BCC RTS 108 PC G_6 PAGE 43-2 SEQ 0071 - VSV11/vS11 == GRAPHMIC SYS. DIAG MACRO M1113 GLOBAL SUBROUTINES SECTION 5238 3239 3240 3241 031270 3262 031274 3243 031276 3244 031304 3245 3246 H PAGE 44 6 SEQ 0072 SUBROUTINE = ENABLE MEM MGT. 005737 001403 012737 000207 iTON: 003244 000001 177572 3247 3248 3249 3250 3251 031306 3252 3253 031306 3254 031310 <55 031312 3256 031320 29-JAN-81 17:22 1%: TST BEQ MOV RTS KTFLG 1% #1,SR0 PC GOT KT? NO. YES. ENABLE KT11. SUBROUTINE = DISABLE MEM MGT. KTOFF: 000240 000240 012737 000207 sTST ;BEQ NOP 000000 177572 1%: NOP MOV RTS KTFLG 1% #0,SRO PC GOT KT11? NO. ; DISABLE KT. C USVI1/vS11 == GRAPHIC SYS. DIAG MACRO M1113 GLOBAL SUBROUTINES SECTION 005737 001430 004737 012700 012737 012701 012702 010021 0201 001375 023737 3278 031410 031270 173000 001600 172354 1$: 140000 150000 2%: 172354 003244 000200 004737 031306 000207 KTBKGD: TST BEQ 003244 001406 062737 gg;g 031402 000761 3277 0314064 SEQ 0073 : (NOTE = ENABLE KT BEFORE CALLING THIS). g?zg? 2373 031372 2574 031374 6 ! SUBROUTINE = FILL ALL MEMORY OVER 28K WITH "‘STOPN''. 3259 3264 031330 2265 031336 2366 031340 3267 031346 3268 031352 3269 031356 3570 031360 3271 031362 3572 031364 I PAGE 45 ; 3258 32¢2 031322 3263 031326 29-JAN=81 17:22 38 9%: : GOT kT2 ; NO. GET OuT. JSR MOV MOV MOV MOV MOV CmP BNE CMP * YES. ENABLE KT, PC,KTON ; FILL ALL MEM (>28K) WITH BA(CKGROUND. #STOPN,RO #1600, #K I PARG #150000,R1 #150000,R2 RO, (R1)+ R1.R2 2 K I PARG KTFLG BR 1% BEQ ADD : 172354 KTFLG 9% JSR RTS 3 , 34K | PARG #200 PCKTOFF PC : DISABLE KT, VSV11/7y511 == GRAPHMIC SYS, DIAG MACRO M1113 29- AN-B1 17:22 GLOBAL SUBROUTINES SECTI ON : 2280 ggm 325 031412 010037 031462 3285 031422 3286 031424 3287 0314 3288 0314 2089 031432 3290 031434 3291 3292 012700 010120 010;20 010320 010420 010520 031464 3208 037446 2299 31450 3300 031452 3301 031454 RTS 012700 012001 012002 031464 013700 031462 012003 012004 012005 000000 - 8 3306 031462 330 3 3 3 3 W MOV MOV MOV MOV MOV RO, SAVED #SAVED+2 RO R1,(RO)+ R2,(RO)+ R3,(R0)+ R4, (RO) + RS,(RO)+ PC : SUBROUTINE TO RESTORE RO=RS. 000207 o MOV : 3 302 031460 3 g O oo~ SAVERS: MOV 000207 30°9% 3295 031436 2296 031442 3297 031444 : SUBROUTINE TO SAVE RO=RS. RESTRS: MOV MOV MOV MOV MOV MOV MOV RTS SAVED: olelelelele) 3284 031416 W J PAGE 46 #SAVED+?2 RO + ,R1 (RQ) (RO)+ ,R2 (RO)+,R3 + R4 (RO) (RO)+ RS SAVED RO PC 6 SEQ 0074 —— —— | — . et e —_—— e ce— —— o - - ——— - - - - -— - - - - o ‘ K_6 VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 29-JAN-81 17:22 PAGE 47 SEQ 0075 GLOBAL SUBROUTINES SECTION SUBROUTINE TO SET=UP VARIOUS ENVIRONMENTAL PARAMETERS. 2316 031476 ENVIRN: MEMORY 3317 031500 010037 003240 062737 000002 2319 031512 011037 003242 MOV 003240 000004 003242 2320 031516 162737 002012 3321 031524 013702 3352 031530 162737 000007 003242 108: 3323 051536 gggg 031540 005302 001373 2339 031554 012737 000040 027564 3330 031562 333, 3335 3331 3332 3333 3337 SUB MOV SUB DEC BNE RO : GET 1ST FREE ADDRESS... RO,FREE #2.FREE (RO) ,FRESIZ #4 FRESIZ LSUNIT,R2 #7 . FRESI1Z R2 108 #8. ,K100US BCOMPLETE 1$ :...AND WORD COUNT. : GET NUMBER OF UNITS * TAKE AWAY 7 WORDS PER UNIT : ASSUME LSI FOR 100US TIMER. : NOT LSI == CHANGE TIMER. * ASSUME 60 HZ SYSTEM. 1$: MOV :MOV #32. ,K100US #60..HZ : 4 CLR MOV @0 (RO) 6(R0O) ,HZ : INSURE CLOCK IS OFF. : SET ACTUAL FREQUENCY. BEQ 2% : ; : : AMAXYE0, YMAX MOV L,RO CLOCK 2% ETE BNCOMPL CMP : 3336 MOV READBUS 3327 131550 3378 031552 ADD MOV 336 031542 012737 000010 027564 : MOV JSR - : HZ #60. #MAXYS50, YMAX PCKTINIT : Y INIT KT11 MEM MGT. 2338 3339 031562 004737 031656 . 2%: 3341 * NOW THE FOLLOWING CODE PROVIDES A KEY RESTART FOR * THE DIAGNOSTIC SUPERVISOR (DRS), AND FOR XXDP+ MONITOR. * IF EITHER ONE CHANGES, THIS WILL PROBABLY TURN TO SHIT !! 3340 031566 000240 000240 3342 3343 3344 240,240 _-ttttttttttttflmtatrtttfittttttttttt-ttttatttt'attfin.tttt-nntn--q > BUT FOR NOW == IT'S CONVENIENT FOR DEBUGGING PURPOSES. %3325, : 6 3347 3348 3349 3350 025570 026050 026072 3354 031574 010037 003236 003726 §§§} 3353 031572 104042 : THE FOLLOWING OFFSETS APPLY TO DRS REV D. XX.ENTRY= 25570 SUPVSR= 26050 XX.EXIT= 26072 3726 XXDP= 42 KLUDGE: EMT MOV : DRS (REV D) ENTRY FROM XXDP+. * DRS (REV D) SUPERVISOR RESTART. * DRS (REV D) EXIT TO XXDP+. * XXDP+ RESTART ADDRESS (XX3726). : XXDP+ COMM BLOCK POINTER => RO RO, XXCOMM : SAVE IT. BIC SUB #7777 .RO #27000,R0O * MASK TO 2K PAGE... t...MINUS DRS SIZE (5.75K)... 3359 031620 012737 000137 000204 MOV #1357, 4204 *"LOC 204 = JMP DRS=-RESTART. 3363 031642 010037 000212 3364 031646 012737 000137 000210 MOV MOV 3355 031600 042700 007777 3356 031604 162700 027000 3357 031610 062700 026050 3358 031614 010037 000206 3360 031626 013700 003236 3361 031632 042700 007777 3362 031636 062700 003726 3365 031654 3366 3367 b . : 3313 gg}g 3318 031506 WS 000207 ADD MOV MOV BIC ADD RTS #SUPVSR , RO RO, a#206 XXCOMM, RO #7777 R0 #XXDP ,RO RO, a#212 #1357, 34210 PC - .PLUS DRS RESTART OFFSET... ... = DRS RESTART ADDRESS. * GET POINTER AGAIN. * MASK TO 2K PAGE... t...PLUS RESTART OFFSET... L1 = XXDP+ RESTART ADDRESS. 2TLOC 210 = JMP XXDP+ "'ttttttttttttttttttfittttitttttttttttttttttttfittt'tt'.'t'ttttt!t | , 1 ! VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 GLOBAL SUBROUTINES SECTION 3369 003244 002120 000004 031770 177572 002120 000177 000004 172340 077406 3395 032002 001577 KTINIT: CLR CMP a#SRO LSHIME KTFLG 003244 003244 #177 KTFLG RO,a#ERRVEC RO 1%: MOV 000207 031776 #K IPARO,R1 #776406,-40(R1) RO, (R1)+ #200,R0 Rg.JZOOO 5 #177600,=(R1) 9% 177600 012716 000002 010037 %%HIME.#1S77 ,RO a#ERRVEC 000004 177740 KTFLG #2% ,a#ERRVEC 000200 002000 3391 3393 031776 3394 L PAGE 48 6 SEQ 0076 SUBROUTINE = IF OVER 28K & KT11 AVAIL, INIT KT11. 3372 031656 3373 031662 3374 031670 3375 031672 3376 031676 3377 031704 3378 031710 3379 031712 3380 031720 3381 031726 3382 031732 3383 031734 3384 031740 3385 031746 3386 031750 3387 031754 3388 031760 3389 031762 3390 031766 3392 031770 031770 031774 29-JAN-81 17:22 2%: FORRTI 9%: SAVE OLD ERR VEC PTR. SET ERR VEC PTR. GOT KT11? (TRAP IF NO). YES. SET KT FLAG. RESTORE OLD ERR VEC PTR. RO = AR DATA. R1 = KI REGS PTR. SET DESCRIPTOR REG. SET KIPAR REG. BUMP AR DATA BY "'4K'’. AT "'1/70'7 NO. YES. SET KTPAR7 FOR 1/0. MOV #.+6,(SP) FORCE RTI RETURN TO - MOV RO,a#ERRVEC RESTORE OLD ERR VEC PTR. RTS PC RTI 000004 GOT ENOUGH MEMORY (>28K)? NO. - NEXT LOC. VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 INITIALIZE SECTION 29-JAN-81 17:22 JSBTTL 3397 M PAGE 49 6 INITIALIZE SECTION 3308 3399 i+t 528} . AT THE BEGINNING OF EACH PASS. * THE INITIALIZE SECTION CONTAINS THE CODING THAT IS PERFORMED 3400 3403 032004 3,04 032004 34,05 032014 177777 177777 BGNPROT =1, =1, =1, =1 177777 ENDPROT 34,06 * IF "'START'' OR 'RESTART'', SET QUICK-PASS FLAG AND BUS-INIT. 3409 * IF ""CONTINUE'', NOTHING IS REQUIRED. ;2}? 3413 032020 3414 032026 3415 032030 2416 032036 3417 032040 3418 032044 3419 032046 005037 023064 ‘ 023737 103056 005737 100460 003026 002012 3422 032060 013701 006301 005761 001504 3424 032070 001046 34,20 032052 3421 032054 3,23 032062 3425 032072 032761 003026 DUFLG NXTU UNITN,R1 003302 TST ERTABL (R1) 040000 ASL 003302 34,28 032106 3429 032114 3430 032116 2431 032124 : 012737 005037 004737 3438 032152 005020 012700 177777 030070 031476 003030 003302 308 : 003502 000137 032240 3446 032174 3447 032202 012737 005037 177777 032726 3449 032210 005237 003026 3451 032222 3452 032224 3453 032232 103423 012737 000401 003026 002012 177777 003224 3445 032174 3448 032206 3450 032214 023737 003026 sUNIT IN RANGE? *BR IF NO. :DROPPED UNIT? *BR IF YES R1 SETU #B1T14 ,ERTABL(R1) EXIT INIT NXTU READEF #EF .NEW : DROPPED? :DO NOTHING IF '‘CONTINUE''. BNCOMPLETE NXTU :TAKE NEXT UNIT IF NOT NEW PASS. BRESET MOV CLR JSR #-1,QVP TESTK PC.ENVIRN : 1ST PASS, BUS-INIT... ; BUS RESET. :...QUICK VERIFY... ....CLEAR TOTAL TEST COUNT. > SET ENVIRONMENT. (RO) + :CLEAR THE ERROR TABLE READEF #EF .START BCOMPLETE 2% READEF #EF .RESTART BNCOMPLETE 31$ MOV CLR #ERTABL ,RO CMP BLO BR CLR RO, #ERTABE 308 48 QVvP PASRPT :GO REPORT THE STATUS NEWPAS: MOV CLR #-1,UNITN DEVCNT SINIT UNIT NUMBER... *CLEAR COUNT OF DEVICES RUNNING UNITN :...AND SET NEXT UNIT NUMBER. 31$: 003030 :CLEAR "'SOFT INIT'' FLAG BIT BNE 2%: 020027 103774 000404 005037 gzzz 032170 BEQ 1$: 3432 032126 3433 032126 3434 032130 2435 032136 3436 032142 SIFLAG TST BM] MOV 3427 032104 3439 032154 3440 032160 3441 032162 3442 032164 CLR READEF #EF . CONTINUE BNCOMPLETE 1% UNITN,LSUNIT CMP 48 BHIS 003224 3426 032076 34,37 032146 ; NO DEVICE PROTECTION REQUIRED. BGNINIT gzg; 032014 3412 032014 SEQ 0077 JMP 4$: NXTU: BREAK INC CMP BLO MOV BR UNITN,LSUNIT SETU #-1,DUFLG 1% 3479 3480 3481 032334 3482 032336 3483 032340 3484 032344 3485 032350 3486 032354 3487 032356 3488 032362 3489 032366 3490 032370 3491 032374 3492 032400 3493 032402 3494 032406 3495 032412 3496 032414 3497 032420 3498 032424 3499 032426 3500 032432 3501 032440 3502 032446 3503 032450 3504 032452 3505 032460 3506 032466 3507 032466 3508 032472 3509 032476 3510 032500 002012 032700 001343 000100 000001 CMP BLOS 032726 SETU: 003032 101772 012001 011002 012037 010137 012721 010221 010137 012721 003050 003052 026242 010137 003056 026210 010221 20%: 000002 003046 003054 026274 005037 005737 001003 012737 NEWPAS ;BR IF NO BR #1SR,RO NEWPAS ;GET UNIT N P-TABLE POINTER. ;BR IF UNIT NOT AVAILABLE. ;CLEAR 'DROPPED'' FLAG. MOV MOV MOV ADD CMP BLOS #DPC ,R2 R1,(R2)+ #2.R1 R2,#LMR 20% ; GET 1ST REGISTER ADDRESS. MOV MOV MOV MOV MOV MOV MOV MOV MOV + ,R1 (RO) (RO) ,R2 (RO) +,DPRI R1,STPV #DSTP, (R1)+ R2,(R1)+ R1,JSMV #DJM, (R1)+ R2,(R1)+ MOV MOV #DTO, (R1)+ R2,(R1)+ MOV MOV #DJS, (R1)+ R2,(R1)+ #LDUN, (R1)+ R2,(R1)+ (RO) +,LUTAV #MAXY60, YMAX #60. ,HZ MOV DUFLG DEVCNT (RO)+,R1 R1,LUTV ; DITTO LUT DONE. 003246 003250 MOV #MAXYS50, YMAX CLR OPT! BNE MOV 1% #1,0PT] 040000 003064 DITTO JOY=STICK MATCH. * DITTO JOY-STICK SWITCH. 000062 001776 TST ...VECTOR... ...AND PRIORITY. R1,JSSV 003250 003246 21%: 1ST VECTOR ADDRESS. INTERRUPT PRIORITY INTERRUPT PRIORITY. STOP VECTOR POINTER... ; DITTO TIME-OUT. 003216 001676 000074 TST BEQ MOV GET GET SET SET R1,TOTV MOV MOV MOV MOV MOV 003064 002502 ;SHOULD WE PRINT STATISTICS GPHARD UNITN,RO BNCOMPLETE NXTU MOV 003062 026602 012737 BNE MOV 003060 026326 sHOW MANY UNITS SELECTED? sBR IF ONLY 1 JARE ANY STILL RUNNING? ;BR IF NO CLR INC 003224 032726 #1 LSUNIT, NEWPAS DEVCNT NEWPAS RO DORPT 10%: ;ABORT, NO MORE UNITS. TST BEQ RFLAGS BIT 000741 SEQ 0078 Y 3467 032272 3468 3469 032272 3470 032300 3471 032302 3472 032306 3473 032312 3474 032314 3475 032320 3476 032322 3477 032326 3478 032332 023727 101752 005737 001747 6 IRT 3460 032254 000240 DOCLN 11%: NOP PASRPT: N PAGE 49-1 AT TR S N X RRRERR \.fl\fl\l\g\.fl\l‘ Vsv 1 INI 1 ALIZE SECTION 29-JAN-81 17:22 LA — /VS11 == GRAPHIC SYS. DIAG MACRO M1113 (RO)+ 21% #50. ,HZ DPUMOD GET "LUT AVAILABLE'' ENTRY ASSUME 60HZ FREQUENCY. WHAT IS SELECTED FREQUENCY? BR IF 60HZ SAY 50 HZ AND SET UP FOR 512 VISIBLE LINES ; DPU ONLY? s SKIP NEXT IF DPU-ONLY. ;SET OPTIONAL I(NTENSIFY) BIT. B 7 VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 29-JAN-81 17:22 PAGE 49-2 SEQ 0079 INITIALIZE SECTION 3511 032506 351§ 251 1%: : 3 TST BEQ QvP 5% ;1ST PASS 22 ;NO, SKIP THE PASS 1 STUFF. [ INI TIALI It SECTION 3515 3516 3517 3518 3519 032506 3520 032512 3521 032514 c PAGE 50 7 SEQ 0080 1ST PASS, CHECK THAT DEVICE ADDRESSES ARE VALID, AND THAT THE DISPLAY STATUS IS PROPERLY INITIALIZED. 013701 003026 100000 022300 101416 3527 032544 3528 032546 3529 032572 3530 032572 3531 032576 3532 032602 3533 032606 3534 (032612 3535 032614 3536 032620 3537 032622 3538 032630 3539 032634 3540 032636 3541 032642 3542 032644 3543 032650 3544 032656 3545 3546 032664 3547 032670 3548 032672 3549 032676 3550 032702 3551 032706 3552 032710 29-JAN-81 17:22 e [ VSV 11/vS 11 == GRAPHIC SYS. DIAG MACRO M1113 002012 032700 001412 001000 005037 013701 013702 004737 103003 010137 003226 003032 003040 027566 012777 005777 000000 000416 100413 013701 006301 005261 012737 012737 000001 177777 003216 012737 000000 BIS CLR CMP : SAY DEVICE RUNNING #BIT15,ERTABL (R1) EXTENSION FLAG. ERROR CLEAR ; EXTA MULTIPLE UNITS? TESTING WE ARE ; LSUNIT,#1 BIT #PNT RO BLOS RFLAGS BEQ PRINTF 150204 2%: 4%: 003042 003046 003216 108 #PUNIT,UNITN ; BR IF NOT. ; PRINT THE UNIT # 3% #0,aDSR DPC.RI] DYR,R2 PC ,NXM 2% R1,NODEV aDSR 4% MOV UNITN.R1 INC ERTABL (R1) ; SHOULD WE PRINT UNIT #? ;TEST ALL &4 DPU REGISTERS... ;...AND BR IF ALL OK. ;FLAG DEVICE AS NON-EXISTENT ;DROP THIS UNIT. ;SELECT REAL DSR ;IS UNIT STOPPED? ;BR IF DISPLAY INITIALIZED OK. R1 MOV #-1,DUFLG #1 ,NODEV ;FLAG AS NOT IDLE TST LUTAV ; NOW, SEE IF LUT INSTALLED. MOV MOV LSR.R1 LMR,R2 MoV #0,LUTAV MOV BEQ JSR BCC 027566 ; BR _IF NO. ; YES == GET OPERATOR FLAGS. BR MOV TST ASL 3%: 10% RO NODEV B8M] 003226 003224 R1 CLR MOV MoV JSR BCC MOV 003026 005737 001412 013701 013702 004737 103003 003302 003226 003302 000001 UNITN,R1 ASL 108 150200 MOV 5% PC ,NXM 5% ; BR IF NO ; TEST ALL LUT REGISTERS... ;...BR IF IT'S THERE. ; CLEAR 'LUT AVAILABLE'' FLAG. : FINALLY, SET CPU PRIORITY AND WE'RE DONE. §¢: 3556 032716 3557 032724 3559 032726 3560 032730 000000 045 116 045 SETPRI ENDINIT DEVCNT: 0 PUNIT: '?35#2 #PRI0O :ENABLE INTERRUPTS. :COUNT OF RUNNING DEVICES JANINZA**2xx TESTING UNIT %D2XA xxxxw/ * SUBROUTINE - IF USER PATCHABLE FLAG '‘FORCER'' IS SET (NON-ZEROQ), THEN FORCE RETURN TO THE NEXT ERROR CALL (HRDERR) IN SEQUENCE. 3569 032776 3570 033002 3571 033004 005737 001402 062716 003020 000004 FORCET: TST BEQ ADD FORCER 1% #4,(SP) : FORCE ERROR TYPOUT? ; NO. : YES. FORCE RTN TO THE HRDERR CALL. e l L ey — VSV11/vS11 == GRAPHIC S¥S. DIAG MACRO M1113 INITIALIZE SECTION 3572 033010 000207 1$: 29-JAN-81 17:22 RTS PC D 7 PAGE 50-1 SEQ 0081 r— — VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 ADD AND DROP UNITS SECTIONS | 29-JAN-81 17:22 .SBTTL 3574 3575 3576 3577 3578 g PAGE 51 ¥ SEQ 0082 ADD AND DROP UNITS SECTIONS c44 THE ADD-UNIT SECTION CONTAINS THE CODING THAT CAUSES A DEVICE TO BE (A) ADDED TO THE TEST LIST FOR THE FIRST TIME, OR (B) RE=INSERTED iF IT HAD BEEN PREVIOUSLY DROPPED. 3579 3580 3581 033012 3582 033012 3583 033014 3584 033016 3585 033024 3586 033032 3587 033054 3588 033060 3589 3590 010001 006301 052761 042761 045 BGNAU 100000 040000 116 045 RO,R1 BIS #100000,ERTABL (R1) ASL 003302 003302 BIC EXIT AU #1$,R0O LASCIZ /%N%A ; SET THE "'ACTIVE'' BIT ; CLEAR THE 'DROPPED'’ BIT UNIT ZD%A ADDED/ ; UNUSED. ENDAU 3591 033106 359 ; MAKE IT A WORD INDEX R1 (R1) #40000,ERTABL PRINTF 1%: ; GET UNIT TO BE ADDED (RO) MOV THE DROP-UNIT SECTION CONTAINS THE CODING THAT CAUSES A DEVICE TO BE REMOVED FROM THE TEST LIST. IPETE TRTR T T N T N D44 AR Nele RNTo MV, B oYW N E 012737 010001 033164 033214 177777 WHICH ARE STILL ACTIVE. UPON ENTRY, RO CONTAINS THE UNIT TO BE DROPPED. BGNDU MOV MOV 003224 :gVB : 006301 052761 000240 000240 003302 000240 045 116 045 140000 L #-1,DUFLG RO,R1 g;1.STIK(R1) :REMOVE ''JOY=STICK'' FLAG. ; SAY DROPPED #140000,ERTABL (R1) BIS ;] MmN 240,240,240 1%: PRINTF EXIT LASCIZ .EVEN ENDDU #1%,R0O DU /%N%A UNIT ZD%A DROPPED/ :#0 ; 033216 033216 SUPVSR DOES THE ‘DROPPING''. THIS IS JUST TO TELL THE MAN. "DROPPED'* UNITS ARE RE-SELECTED ON OPERATOR ‘'‘STA'* OR '‘ADD'’ COMMAND, OTHERWISE REMAIN INACTIVE. THE ‘DISPLAY'' COMMAND WILL PRINT ALL DROPPED UNITS, AND THE P-TABLES OF THOSE AUTO-DROP CODE BGNAUTO ENDAUTO SECTION. ; UNUSED. VSV11/7VS11 == GRAPHIC SYS. DIAG MACRO M1113 . CLEAN=UP AND REPORT CODING SECTIONS 29-JAN-81 17:22 SBTTL E_ PAGE 52 ¥ | Vi SEQ 0083 CLEAN=UP AND REPORT CODING SECTIONS +? + : THE CLEANUP CODING SECTION CONTAINS THE CODING THAT IS : EXECUTED AT THE END OF EACH PASS (OR SUB=-PASS). . : USE TO RETURN DEVICE UNDER TEST TO A NEUTRAL STATE. 7 3628 033220 005737 003224 3633 033226 3634 033232 3635 033240 3636 033244 3637 033252 3638 033256 004737 012777 004737 012777 004737 005737 026756 040000 027454 100000 027454 003216 C33264 005077 147552 3629 033220 ;2%? 033224 3632 3640 o 3639 033262 3641 033270 100414 001402 BGNCLN TST BMI DUFLG 1% 147576 JSR MOV 147566 MOV PC,RELEAS #GTJSSW,aDXR PC,WAITF #100000,aDYR PC,WAITF JSR 1%: 2% : JSR TST BEQ CLR ENDCLN LUTAV 2% aLSR ;" DROPPED'* FLAG IS 'SET ON... ;...AND GROSS DPU FAULT... ;...DON'T TRY TO XCT DPU CODE. ;CHECK FOR 'HUNG'' DPU. ;CLEAR PENDING SWITCH INTERRUPT ;DO SOFT INIT. ; IF LUT, CLEAR STATUS. e + ' THE REPORT CODING SECTION CONTAINS THE . " "PRINTS'* CALLS THAT GENERATE STATISTICAL REPORTS. 3649 033314 3650 033316 3651 033320 3652 033324 3653 033326 3654 033330 3655 033332 3656 033334 3657 033340 3658 033342 3659 033346 3660 033372 3661 033374 3662 033400 3663 033402 3664 033424 3665 033426 3666 033432 3667 033434 3668 033456 3669 033460 3670 033464 3671 033510 3672 033514 3673 033516 3674 033522 3675 033504 3676 033526 3677 033530 BGNRPT PRINTS MOV 010246 010346 010446 012704 005003 011402 001467 100066 032702 001015 042702 000446 020227 001012 000431 020227 001012 MOV MOV MOV 003302 1%: 040000 170000 160000 28: 160001 3%: 042702 170000 30 $: 062704 005203 020427 103701 012604 012603 012602 000002 4%: 000414 003502 CLR MOV BEQ BPL BIT BNE BIC PRINTS B8R CMP BNE PRINTS BR CMP BNE PRINTS BR BIC PRINTS ADD INC CMP BLO MOV MOV MOV #DEVSUM R2,-(SP) R3,-(SP) R4 ,=(SP) #ERTABL ,R4 R3 (R4) ,R2 4% 4% #BIT14,R2 2% #~C7777 .R2 #DEVONL ,R3,R2 4% R2.#160000 3% #DEVNXR ,R3 4% R2,#160001 30% #DEVNRD ,R3 4% #~C7777 ,R2 #DEVDRO,R3,R2 GET START OF ERROR TABLE. CLEAR UNIT NUMBER GET ERROR TABLE ENTRY & TEST IT. ZERO IF UNIT NOT RUN WAS UNIT DROPPED? BR IF YES GET ERROR COUNT FIELD PRINT ; WAS UNIT NON-EXISTENT? ; BR IF NO ; WAS UNIT NOT READY AT STARTUP? ; BR IF NO. #2 ,R4 R3 R4 ,#ERTABE 1% (SP)+ ,R& (SP)+,R3 (SP)+,R2 — 3646 033272 3647 033272 3648 033312 vSV117y511 == GRAPHIC SYS. DIAG MACRO M1113 CLEAN=UP AND REPORT CODING SECTIONS 29-JAN-81 17:22 ENDRPT 3686 e —2 jolelele g — ) ek d ON _— 3681 033534 3682 033571 3683 033641 3684 033723 3685 034004 Voo 3678 033532 3679 3680 RRRRE L - * 045 040 040 040 040 DEVSUM: : DEVONL DEVNXR: DEVNRD: DEVDRO: . G 7 PAGE 52-1 ; UNUSED. /ANXADEVICE STATUS SUMMARY: 3N/ = XDIN/ ONLINE, ERRORS / %A UNIT XD3%XA DROPPED, NON=-EXISTENT REGISTERIN/ /%A UNIT %D3%A DROFPED, NOT READY AT STARTUPZN/ /%A UNIT %D3%A = ZDAN/ DROPPED, ERRORS /%A UNIT %D3%A SEQ 0084 e H VSV11/vS11 == GRAPHIC SYS. DIAG MACR) M1113 29-JAN-B81 17:22 PAGE 53 .SBTTL LSBTTL .SBTTL LSBTTL .SBTTL .SBTTL TN=0 NLIST HARDWARE TEST SECTICN. TEST # . ME MC DESCRIPTION SEQ 0085 YSV11/yS11 == GRAPMIC SYS. DIAG MACRO M1113 . wee TEST 1 STATIC RESET 3697 29-JAN-81 17:22 R PAGE 54 SEQ 0086 LR TR R '...QQ.."'.'."Q...""'"".'...."Q'"..Q.".t.'....0"".""..'...' L4 . BEGIN TEST 1 - STATIC RESET * "I'.Q'...'Q'......'Q.""Q'....'.'..."....'...'..Q.'."...'Q'."Q'.'.' ; (ITERATION COUNT = 1.) 3 : EXECUTE A BUS RESET INSTRUCTION AND (HE(CK THE STATE OF THE DPU. : THIS TEST IS ALMOST IDENTICAL TO THE "'SOFT=INIT'® ROUTINEIN (DPINIT:) THIS : USED TO INIT THE DPU AT THE START OF MANY OF THE TESTS INIT, DPU TWARE SOf A OF INSTEAD THAT ARE CES DIFFEREN THE : PROGRAM, RESET'’, 'BUS READS MESSAGE ERROR THE THAT AND USED, IS : A BUS RESET : INSTEAD OF "‘SOFT=INIT". 3658 2699 3700 3701 3702 3703 ;;8’; %;89 034122 004737 027702 3708 C34126 3709 034126 3710 034130 3711 034132 3712 034136 3713 034140 3714 036144 3715 034150 3716 034152 3717 034156 3718 034160 3719 034200 004737 023422 3720 034204 005004 3721 034206 005005 3722 034210 005777 146622 3724 034216 3725 034222 %;S? 034224 005777 001410 146616 3723 034214 001003 3728 034244 3729 034246 PC,TSTGO 1%: ; €CCCCLLCLLLLLLLLLLCLLCCCL<<< BEGIN SEGMENT, : BUS RESET. :WAIT FOR A COMPLETE PC,WAITF ;EXPECT DPC TO BE 0. R2 004737 027454 005002 (012703 100000 005777 146662 001003 027703 146656 001410 2%: 3%: DFERR JSR BRINIT,P(SERR PC,I1IRCHK :EXPECT DSR TO BE 100000. :TEST THE DPC, S/B =0. :ERROR IF NOT 0. ;CHECK DSR. ;REPORT ERROR IN DPC OR DSR. :CHECK THE INTERMNAL REGISTERS CLR RS :DXR AND DYR SHOULD BE 0. BEQ (LR 3% R4 aDXR TST 4%: ST BEQ DFERR 5%: ENDSEG 027646 034254 000402 034256 000137 034126 AT 034262 004737 030072 6£5%: ;;;? 034266 BNE cMP #IT15,R3 aDP( 2% aDSR,R3 BNE 004737 103401 BGNSEG BRESET JSR CLR MOV TST 034246 034252 ; TITLE. STRSET: JSR '3 3 aDYR 5% BRINIT,_XYERR COMEND 1% JSR PC,LO0P BR 65% BCS ; €CCCCCLLLLLLLCLCLCCCCccc<<<< END SEGMENT, 643 JMP 1% JSR PC,TSTEND ExIT ST : REPEAT °*TIL LOOPER EXPIRES. : PRINT ERROR SUMMARY, [F REQG'D. SOEXIT THIS TEST >>33333333333333333353335 END.TEST 3732 036272 '..."'..."...'Q"'."....'..'."...'Q..'....l...'.'..'.......'.....". * END TEST 1 :.".'.'O'.""".Q".'."'.'."..'l'..'..'....'........'Q..'..'...'...' T4 oW s 5,71 ru TECT 1 .= GRAPMIC S¥S STATIC RE 38 DIAGC MACRD M1113 ) AN=B1 17:22 29« J 7 PAGE 56~ 1 SEG 0087 g o s K 7 | 55 PAGE 17:22 1 USV11/VS11 == GRAPHMIC SYS. DIAG MACRO M1113 29-JAN-8 | v2e TEST 2 VS SEQ 0088 RESET ONES | | i 3734 .'.tQ"".'Qt'.".i'.""""..t.'.Q."'Q'.'..'.'t.t.t.t"""ttt""".t - * . BEGIN TEST 2 g . * ? RESET ONES = :ti"".'.'fi.t'..'t'tQit't!'t..t't.""t.t....."" 2232223222222 ka ; Rl d) (ITERATION COUNT = 1.) THEN : SET ALL APPLICABLE REGISTERS TO ONES, CHECK THAT ONES GOT SET, DPU. THE STATE OF ; EXECUTE A BUS RESET INSTRUCTION AND CHECK THEABOVE, EXCEPT THAT ; THIS IS THE SAME AS THE ‘'STATIC RESET'' TEST : THE REGISTERS ARE SET TO ONES FIRST. 3741 3742 034340 3743 034344 3744 3745 (34346 3746 034352 0 3747 0 3748 034376 : R1=EXPECTED, R2=RECEIVED, RO.R3=WORK REGS. 004737 027702 RESET1: JSR 012701 177763 MOV 012700 050100 010077 000013 MOV 012777 017702 000003 1%: 146450 146436 64%: 3750 034424 034424 3751 034432 034432 3752 034440 034440 034446 3753 034452 3754 034454 3755 034460 3756 034464 034464 034512 3757 034512 3758 034514 BIS MOV R1.RO RO,aDSR WIDSRA #177760,MRR WIDSRA #170000,MPM RDDSRA MRR,R2 MOV aDSR,R2 012777 170015 146374 MOV 012777 017702 010203 042702 012701 000004 146362 146366 MOV MOV BIC BIC - aDSR,R2 ICSRE,EXPREC,,CKLOOP : NO. #1777608~C17! SETMRR, aDSR R 17 ' SETMPM,aDS #1700008~C #SELMRR,aDSR : READ MRR INTO R2 . R2.R #170000,R2 : MRR OK? #7777 .R1 MOV IFERROR IMRRE ,EXPREC, ,CKLOOP ; 0K? R1,R2 CMP > ¥ES. 65% BEQ HRDERR IMRRE ,EXPREC, CKLOOP MOV 170000 ; READ CSR INTO R2 . : 0K? R1,R2 . YES. 64$ ICSRE,EXPREC,CKLOOP 177774 007777 (SR,R2 ; WRITE R1 INTO CSR . IFERROR CMP BEQ HRDERR 012777 . #SETCSR,RO #SELCSR,aDSR MOV 007777 ; TITLE. <KLCLLLLLLLLLLLLLLLLLLLLLL< BEGIN SEGMENT. MOV 146402 170000 ; #177763,R1 R1,CSR MOV 020102 001411 PC,TSTGO WTIDSRA RDDSRA 146442 3749 BGNSEG R3,R2 #7777 .R2 : NO. : MPM 0K? #170000,R1 MOV , CKLOOP IFERROR IMPME ,EXPREC, ; 0K? R1.R2 CMP . YES. 66$ BEQ HRDERR IMPME ,EXPREC, CKLOOP : NO. W . ' VSV‘}{!%‘} ~= GRAPHIC SYS. DIAG MACRO M1113 29-JAN-81 17:22 PAGE 55-1 SEQ 0089 RESET ONES LA Al 3762 034552 034552 3763 034560 034560 3764 034566 034566 034574 3765 034600 3766 034602 3767 034606 3768 034612 034612 034614 034616 034640 3769 034640 3770 034642 3771 034646 3772 034652 034652 034654 034656 034700 3773 3774 034700 3775 034702 3776 034706 3777 034710 3778 034714 3779 034720 3780 034722 3781 034726 3782 034730 3783 034750 3784 034754 3785 034756 3786 034760 3787 034764 3788 034766 3789 034772 3790 034774 3791 3792 035014 3793 3794 035016 035016 035022 035024 012777 177776 146254 012777 170017 146246 012777 017702 010203 042702 012701 000006 146234 010302 042702 012701 RDDSRA 146240 020102 001411 68%: 004737 005004 005005 005777 001003 005777 001410 023422 004737 103401 : READ XRR INTO R2 . MOV BIC R2,R3 #170000,R2 : XRR OK? 108: 146106 11%: 12%: PC.WAITF R2 CMP BEQ DFERR aDSR,R3 12% BRINIT,PCSERR (LR 146052 #BIT15,R3 aDPC 11% ENDSEG 14% BRINIT,XYERR 5 €<LLLLLLLLLLLLLLLLLLLLLLLKL END SEGMENT. 1% JSR PC,LOOP B(S BR 000402 ;REPORT ERROR IN DPC OR DSR. 13% COMEND 027646 ;CHECK DSR. :DXR AND DYR SHOULD BE 0. TST 14%: ;EXPECT DSR TO BE 100000. :TEST THE DPC, S/B =0. :ERROR IF NOT 0. RS aDYR 13%: : BUS RESET. :WAIT FOR A COMPLETE *EXPECT DPC TO BE 0. :CHECK THE INTERNAL REGISTERS TST BEQ DFERR : NO. SE.IIRCHK aDXR BNE 146046 #7777 .R2 BRESET JSR CLR gfg ; NO. : XPM OK? R3,R2 #170000,R1 MOV IFERROR IXPME ,EXPREC, ,CKLOOP : 0K? R1,R2 CMP YES. 68% BEQ HRDERR IXPME ,EXPREC, CKLOOP MOV TST BNE 100000 146112 aDSR,R2 #7777 .R1 MOV IFERROR IXRRE ,EXPREC, ,CKLOOP ; 0K? R1,R2 CMP * YES. 67% BEQ HRDERR IXRRE ,EXPREC, CKLOOP BIC 170000 XRR,R2 MOV MOV 007777 #1777608*C17! SETXRR, aDSR C aDSR 084 17! SETXPM, #17000 #SELXRR,ADSR MOV . 027454 WIDSRA #170000,XPM MOV 007777 004737 005002 012703 005777 001003 027703 001410 #177760,XRR MOV 170000 020102 001411 WIDSRA 69% 70% 035026 000137 034344 69%: JMP 1% 035032 3795 035036 3796 3797 035042 004737 030072 70%: JSR EXIT PC,TSTEND TST : REPEAT 'TIL LOOPER EXPIRES. : PRINT ERROR SUMMARY, IF REQ'D. : EXIT THIS TEST >>33>333>33333>33>33333>3>>> END.TEST :ttfitt'ttitQttttl’t'tttttt'tt"tti.tfi.t!litt.'tttt."ttti'ttt..tt""t"' VSV11/vS11 == GRAPHI C RE SE T wex TEST 2 SYS. ONES DIAG MACRO M1113 . . 29-JAN-81 17:22 M7 PAGE 55-2 * ' . .- % END TEST 2 'Q"'..t'.'t"..'tl.'fi""'t't'Qt."..t..'Q".'Q'.'Q'Q'..'.'.'.Q.Q".'.' . SEQ G090 VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 sxx TEST 3 SOFT INIT ONES 3799 29-JAN-81 17:22 N PAGE 56 7 SEQ 0091 :t'tttttttttt'tttttt'ttttttt.tttt'ttttfittttt'tttt'ttt'lttQ'tt'tt"ttt'tt - % i . % BEGIN TEST 3 = SOFT INIT ONES :-tttt'tt.ttttttt!tlttt"'t'ttttttttt'tt'ttfit"ttttttttttttttttt'tttt't" : (ITERATION COUNT = 10.) : 3800 * SET ALL APPLICABLE REGISTERS TO ONES, CHECK THAT ONES GOT SET, THEN * EXECUTE SOFT INIT AND CHECK THE STATE OF THE DPU. * THIS IS THE SAME AS THE 'RESET ONES'' TEST ABOVE, EXCEPT THAT 2801 3802 3803 * A SOFT INIT IS EXECUTED INSTEAD OF A RESET INSTRUCTION. * R1=EXPECTED, R2=RECEIVED, RO,R3=WORK REGS. : TITLE. PC,TSTGO SINIT1: JSR LLLLLLLLLLLLLLLLL< BEGIN SEGMENT. €<LLCLLLL ; BGNSEG 1%: 2804 gggg 3807 035114 004737 027702 3810 035122 012701 177763 MOV #177763,R1 035126 012700 000013 MOV #SETCSR,RO : WRITE R1 INTO CSR . #SELCSR,@DSR ; READ CSR INTO R2 . 33%88 035120 3811 035126 035132 035134 3812 035140 035140 035146 3813 035152 035152 035154 035156 3814 050100 010077 145662 020102 001411 64%$: 012777 177774 145626 035206 3817 035214 012777 170015 145620 035222 3818 035226 012777 017702 010203 000004 145612 3816 035206 035214 MOV 145666 035200 3815 035200 035200 BIS MOV RDDSRA 145674 012777 000003 017702 WTDSRA 145606 012701 3822 035266 010302 3824 035274 3825 035300 035300 035302 035304 012701 _ 035266 aDSR,R2 MOV IFERROR ICSRE,EXPREC, ,CKLOOP ; 0K? R1,R2 CMP YES. 64$ BEQ HRDERR ICSRE,EXPREC,CKLOOP WIDSRA MOV #177760 ,MRR #1777608~C17! SETMRR, aDSR MOV RDDSRA #170000€~C17! SETMPM, aDSR MRR,R2 MOV MOV aDSR,R2 R2,R MOV BIC 007777 020102 001411 65%: ; NO. 170000 020102 001411 66%: #SELMRR,aDSR ; READ MRR INTO R2 . #170000,R2 : MRR OK? R #7777 MOV IFERROR IMRRE,EXPREC,,CKLOOP ; 0K? R1,R2 CMP * YES. 65% BEQ OOP HRDERR IMRRE ,EXPREC,CKL MOV BIC 3823 035270 042702 007777 035326 R1,R0 RO,aDSR CSR,R2 WIDSRA #170000 ,MPM 3819 035230 042702 170000 3820 035234 3821 035240 035240 035242 035244 R1,CSR R3,R2 #7777 .R2 : NO. : MPM OK? #170000,R1 MOV IFERROR IMPME ,EXPREC, ,CKLOOP : 0K? R1,R2 CMP YES. 66$ BEQ HRDERR IMPME ,EXPREC,CKLOOP ; NO. 025350 017702 145460 012701 MOV 145464 MOV MOV BIC 007777 020102 035372 035414 010302 3836 035422 012701 035426 020102 67%: 170000 035432 68%: 035452 100000 027454 3844 035472 005777 3845 035476 001003 145334 145360 3848 035506 3849 035526 3850 035532 3851 035534 3852 035536 3853 035542 3854 035544 3855 035550 gggg 035552 027703 001410 145330 004737 023422 005004 005005 005777 001003 005777 001410 035574 035600 035602 004737 103401 000402 2863 035620 * YES. MOV R3,R2 : MPM OK? MOV #170000,R1 CMP R1,R2 : 0K? HRDERR IXPME ,EXPREC, ; NO. #7777 .R2 68$% ;DO SOFT INIT. :WAIT FOR STOP *EXPECT DPC TO BE 0. ST BNE abPC 11% *TEST THE DPC, S/B =0. *ERROR IF NOT 0. NSINIT ,PCSERR PC, 1 IRCHK ;REPORT ERROR IN DPC OR DSR. “CHECK THE INTERNAL REGISTERS RS :DXR AND DYR SHOULD BE 0. (MP BEQ DFERR JSR CLR #81T15,R3 R4 ST aDXR 13$: ST BEQ DFERR aDYR 14$ NSINIT,XYERR 14%: ENDSEG 13% ; €CCLLLLLLLLLLLLLLLLLLLLLL< END SEGMENT. 1% JSR PC,LOOP : REPEAT 'TIL LOOPER EXPiRES. JMP JSR 1% PC,TSTEND . PRINT ERROR SUMMARY, IF REQ'D. BCS BR 69% : 708 : *EXPECT DSR TO BE 100000. *CHECK DSR. aDSR,R3 128 COMEND EXIT ; . YES. #100000,aDYR PC,WAITF R2 BNE 027646 ; NO. MOV JSR CLR CLR 145270 035604 000137 035120 035610 004737 030072 %gg} 035614 11%: 12%: 145274 %ggg 035572 3860 035574 678 MOV 3843 035466 012703 100000 3846 035500 3847 035504 : XRR OK? HRDERR IXRRE ,EXPREC,CKLOOP BEQ 2840 035452 012777 2841 035460 004737 3842 035464 005002 : READ XRR INTO R2 . BEQ IFERROR IXPME ,EXPREC 035430 001410 it aDSR,R2 R2,RS #170000,R2 BIC 2835 035416 042702 007777 3837 035426 #SELXRR,@DSR #7777 R1 MOV IFERROR IXRRE ,EXPREC, ,CKLOOP ; 0K? R1,R2 CMP 035370 001411 3834 035414 XRR,R2 RDDSRA 3830 035354 010203 2831 035356 042702 170000 3832 035362 3833 035366 035366 SEQ 0092 #1777608~C17! SETXRR,aDSR MOV WIDSRA #170000, XPM aDSR C17 ! SETXPM, #1700008 MOV 035326 012777 177776 145500 3828 035334 035334 012777 170017 145472 035342 012777 000006 8 WIDSRA #177760,XRR 3827 035326 3829 035342 B PAGE 56-1 & SOFT INIT ONES 17:22 » ess TEST 3 29-JAN-81 R 1] VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 69% 70$ TST : EXIT THIS TEST >>333333333333333355>>335>> END.TEST EN i | e1 C 8 VSV11/vS11 == GRAPHIC SYS. DIAG MACRO M1113 29-JAN-81 17:22 PAGE 56-2 | vee TEST 3 SOFT INIT ONES SEQ 0093 ;'.Qt't.'.'t"'t....."""'t.'t'.'..'tt..."'Q..t..'.t..'.'tt"'""". .'. ;" "' END TEST 3 .'"t"""'t."'.'.'Q"'".....'.'t.""..'.'."'Q"'.'QQ"'Q.Q"'..QQQ' - D_8 SYS. DIAG MACRO M1113 29-JAN-81 17:22 PAGE 57 | VSV11/vS114 == GRAPHIC REGISTERS UNIQUE ADDRESS | vee TEST | 3865 ".ttt'.t't"'.t'Q.'Q!'."'QQQ'.."Q..'..Q'Qt..'.'Q'.tt'tt".'t't't'i't' - . . k2 * BEGIN TEST 4 * - REGISTERS UNIQUE ADDRESS -4 '..lttt"'t't"'.t.'i'Q""Q.'tt.l.."Q.Qfiit."'.'t't.'t.'.t.t""'!t'.' . ’ 004737 027732 004737 012703 010377 012701 017702 025402 177760 P« L 3866 3867 3808 3869 3870 3871 3872 035704 3873 035710 3874 035712 035712 3875 035716 3876 035722 3877 035726 3878 035732 3879 035736 035736 035740 035742 035762 3880 035762 3881 035766 035766 035770 035772 036012 3882 036012 3883 036016 036016 PR TR TR T ; (ITERATION COUNT = 10.) ALL REGISTERS ARE SET TO THEIR NORMAL STATIC STATE VIA A SOFT INIT. EACH APPLICABLE REGISTER, IN TURN, IS SET TO ITS CAPABILITY FOR ONES, AND THEN ALL OF THE OTHER REGISTERS ARE CHECKED THAT THEY REMAINED AT THEIR STATIC STATE. ADR: : AC | SEQ 0094 145106 MOV MOV 000000 145074 020102 001410 017702 64%: 145050 020102 001410 017702 65%: 145022 020102 001410 66%: 3889 3890 004737 012703 025402 012700 000010 012701 144744 000001 012777 017702 3891 036112 020102 001410 177760 000001 144726 JSR BGNSEG INITDP JSR MOV MOV ; PRINT TITLE. ; <€LCLLLLLLLLLLLLLLLLLLLLLLL BEGIN SEGMENT. PC,DPINIT ; GO DO SOFT INIT, CHECK THE STATE. R3,aDSR #0.R1 ; WRITE DSR. #177760,R3 aDPC ,R2 , DUADRE IFERROR DSDPE R1.R2 CMP 64% BEQ DSDPE ,DUADRE, HRDERR ; READ DPC INTO R2. aDX¥R,R2 , DUADRE OR DSDXE IFERR R1,R2 P CM 65% BEQ HRDERR DSDXE ,DUADRE , ; READ DXR INTO RZ2. MOV MOV aDYR,R2 IFERROR DSDYE ,DUADRE R1,R2 CMP 66% BEQ DSDYE ,DUADRE, HRDERR ENDSEG BGNSEG INITDP JSR MOV WTDSRA MOV BIS 144732 PC,TSTGO MOV MOV RDDSRA MOV MOV 0K? YES. No. 0K? Nol ; READ DYR INTO RZ2. ; 0K? ; YES. * NO. . ; €<CLLLLLLLLLLLLLLLLLLLL<<< END SEGMENT., 5 €<<LCLLLLLLLLLLLLLLLLLLLLL< BEGIN SEGMENT. PC,DPINIT #177760,R3 R3,DSR #SETDSR,RO #SELPCS ,aDSR aDSR,R2 IFERROR DSPCE ,DUADRE R1,R2 CMP 67% BEQ HRDERR DSPCE ,DUADRE, ; GO DO SOFT INIT, CHECK THE STATE. ; WRITE R3 INTO DSR . READ PCS INTO RZ . 0K? YES. NO. - wes TEST 4 036132 3892 036132 3893 036136 036136 012701 67%: 100000 012777 000002 036144 017702 144664 | 144670 036154 036206 3897 036212 036212 036214 036216 017702 036236 144622 012701 036250 3900 036254 017702 042702 6£9%: 0C0000 036242 012777 000004 144560 170000 036304 036312 70$: 012777 000004 017702 144516 144522 036346 020102 001410 71%: 036354 012777 017702 000006 144454 144460 020102 001410 72%: 036410 3908 036410 036410 036416 012777 017702 000006 144412 036452 3911 036452 ¢8$ #3,R1 CSR,R2 #SELCSR,aDSR aDSR,R2 MOV IFERROR DSCSE ,DUADRE R1,R2 CMP 69$ BEQ HRDERR DSCSE,DUADRE, MOV RDDSRA #0,R1 MRR,R2 #SELMRR,aDSR aDSR,R2 #170000,R2 IFERROR DSMRE ,DUADRE R1,R2 CMP 708 BEQ ,DUADRE, DSMRE HRDERR RDDSRA MPM,RZ2 MOV aDSR,R2 #SELMPM,aDSR #7777 R2 IFERROR DSMPE ,DUADRE R1,R2 CMP 71% BEQ HRDERR DSMPE ,DUADRE, RDDSRA XRR,R2 : 0K? * YES. ; NO. : READ MRR INTO R2 . : MASK OUT MPM. ; OK? YES. ; NO. : READ MPM INTO R2 . : MASK OUT MRR. : 0K? YES. s NO. : READ XRR INTO R2 . BIC #170000,R2 : MASK OUT XPM. aDSR,R2 IFERROR DSXRE ,DUADRE R1,R2 CMP 72% BEQ HRDERR DSXRE ,DUADRE, RDDSRA XPM,R2 MOV 73%: ; READ CSR INTO R2 . #SELXRR,aDSR #SELXPM,aDSR aDSR,R2 #7777 ,R2 BIC IFERROR DSXPE ,DUADRE R1,R2 CMP 001410 * YES. MOV MOV 144416 3909 036422 042702 007777 3910 036426 036426 020102 036430 036432 MOV RDDSRA MOV 3906 036360 042702 170000 3907 036364 036364 036366 036370 ; NO. BIC 036346 3905 036346 DSFLE,DUADRE, MOV 3903 036316 042702 007777 3904 036322 036322 036324 036326 HRDERR MOV BIC 020102 001410 036304 3902 036304 : OK? MOV 144564 : READ FLG INTO R2 . R1,R2 MOV 144626 020102 001410 2898 C36236 3899 036242 3901 036260 036260 036262 036264 68%: 000003 036200 012777 000003 aDSR,R2 CMP BEQ 036152 001410 012701 #100000,R1 FLG,R2 #SELFLG.aDSR IFERROR DSFLE ,DUADRE 036150 020102 3895 536174 3896 036200 MOV RDDSRA MOV MOV 3894 036150 036174 SEQ 0095 REGISTERS UNIQUE ADDRESS BEQ HRDERR ENDSEG 73% DSXPE ,DUADRE, : 0K? YES. 2 NOD. : READ XPM INTO R2 . : MASK OUT XRR. : 0K? * YES. ; NO. ;€L LLcc<ecccccce<e< END SEGMENT. » <& E 8 f 57-1 PAGE 17:22 81 29-JANM1113 | ySV11/VS11 == GRAPHIC SYS. DIAG MACRO | VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 29-JAN-81 17:22 wew TEST 4 3912 036454 3913 026456 036456 3914 036462 3915 056422 3916 036500 3917 036504 3918 836516 REGISTERS UNIQUE ADDRESS 004737 012703 025402 012700 050300 010077 012701 000013 012777 017702 BGNSEG INITDP JSR MOV 177760 WTDSRA MOV BIS MOV MOV 144334 100000 000000 144316 RDDSRA MOV MOV 144222 012701 012777 017702 0C0001 144254 74%: 144260 3924 036622 3925 036646 3926 836652 036660 3927 036664 3928 036670 3929 036714 3930 036726 3931 036732 3932 836756 012701 100000 012777 017702 000002 144212 75%: 144216 HRDERR 000000 012777 017702 042702 000004 144150 170000 76%: 144154 144112 020102 001410 785: 000006 144044 RO,aDSR #100000,R1 DSR,R2 #SELDSR,aDSR aDSR,R2 74$ CSDSE ,DUADRE , 144050 READ DSR INTO RZ2 . 0K? YES. No' #1,R1 PCS.R2 #SELPCS,aDSR READ PCS INTO R2 . R1,R2 CK? aDSR,R2 CSPCE ,DUADRE 75% CSPCE ,DUADRE , YES. NO. READ FLG INTG R2 . CMP R1,R2 0K? HRDERR 76% CSFLE.DUADRE, MOV RDDSRA MRR,R2 MOV aDSR,R2 HRDERR RDDSRA MOV MOV READ MRR INTO RZ . #170000,R2 , DUADRE CSMRE MASK OUT MPM, R1,R2 77% CSMRE ,DUADRE , MPM,R2 #SELMPM,aDSR aDSR,R2 HRDERR C SMPE , DUADRE , RDDSRA MOV #SELXRR ,aDSR MOV YES. NO. #SELMRR,aDSR #7777 .R2 BIC E ., DUADRE IFERROR C SMP R1,R2 CMP 78% BEQ 007777 WRITE R3 INTO CSR . #SELFLG,aDSR BIC IFERROR CMP BEQ 77%: 144106 R3,R0 #100000,R1 FLG,R2 MOV 020102 001410 000004 R3,CSR #SETCSR,RO ; GO DO SOFT INIT, CHECK THE STATE. MOV RDDSRA MOV MOV BEQ 012701 PC,DPINIT #177760,R3 aDSR,R2 IFERROR CSFLE ,DUADRE 020102 001410 012777 017702 042702 MOV RDDSRA MOV MOV IFERROR CMP BEQ 020102 001410 3922 036604 3923 036610 CMP BEQ HRDERR SEQ 0096 ; €<CLLLLLLLLLLLLLLLCLLLL<<<< BEGIN SEGMENT. , DUADRE IFERROR CSDSE R1,R2 020102 001410 000001 F_8 PAGE 57-2 XRR ,R2 aDSR,R2 0K? YES. NO. : READ MPM [NTO R2 . MASK OUT MRR. 0K? YES. NO. READ XRR INTO R2 . VSV1}€V§12 == GRAPHIC SYS. DIAG MACRO M1113 tew REGISTERS UNIQUE ADDRESS S 3933 036770 3934 036774 036774 036776 037000 037029 3935 037020 037020 037026 3936 037032 3937 037036 037036 037040 037042 042702 79%: 000006 144002 007777 144006 020102 001410 80%: 037062 3938 037062 3939 037064 3940 037066 037066 3941 (37072 3942 037076 037076 037102 037104 3943 037110 3944 037114 037114 037122 3945 037126 037126 037130 037132 037152 3946 037152 3947 037156 037156 037164 3948 037170 037170 037172 037174 037214 3949 037214 3950 037220 037220 037226 3951 037232 0 3952 037256 3953 037262 037262 037270 3954 037274 037274 004737 012703 025402 0C7777 012700 050300 010077 012701 000014 012777 017702 000000 143706 RDDSRA MOV MOV BIC BIS MOV 012777 017702 000001 143644 100000 012777 017702 000002 143602 81%: 143650 82%: 143606 000003 012777 017702 000003 143540 83%: 143544 #7777 .R2 ; MASK OUT XRR. ; ; 0K? VES. * NO. ; ; €€<LLLLLLLLLLLLLLLLLCC<<<L< END SEGMENT., €<<LLLLLLLLLLLLLLLLLLCL<<< BEGIN SEGMENT. PC,DPINIT ; GO DO SOFT INIT, CHECK THE STATE. #7777 .R3 R3,MRR #SE TMRR , RO R3,R0 RO,@DSR #100000,R1 aDSR,R2 MRDSE , DUADRE R1,R2 81% HRDERR MRDS , DUADRE E , MOV RDDSRA MOV MOV #1,R1 PCS,R2 #SELPCS ,aDSR aDSR,R2 IFERROR CMP BEQ HRDERR MRPCE ,DUADRE MOV RDDSRA MOV #100000,R1 FLG,R2 MOV IFERROR CMP BEQ 020102 001410 012701 READ XPM INTO RZ . aDSR,R2 #SELDSR,aDSR 020102 001410 012701 #SELXPM,aDSR DSR,R2 143712 MASK OUT XPM, CSXRE , DUADRE , ENDSEG BEQ 000001 SEQ 0097 0K? YES. NO. , DUADRE IFERROR C SXPE R1,R2 CMP 80% BEQ HRDERR CSXPE ,DUADRE , MOV 020102 001410 020102 HRDERR BGNSEG INITDP JSR MOV WTDSRA 143724 100000 012701 PAGE 57-3 #170000,R2 BIC , DUADRE IFERROR CSXRE R1,R2 CMP 79% BEG 170000 020102 001410 012777 017702 042702 29-JAN-81 17:22 G_8 ; WRITE R3 INTO MRR . READ DSR 0K? YES. ~0. READ PCS R1,R2 0K? MRPCE ,DUADRE , NO. 82% #SELFLG,aDSR aDSR,R2 MRFLE ,DUADRE 0K? HRDERR MRFLE ,DUADRE, NO. MOV RDDSRA #3,R1 MOV MOV CSR,R2 #SELCSR,aDSR aDSR,R2 IFERROR MRCSE ,DUADRE R1,R2 CMP INTO R2 . READ FLG INTO RZ . R1,R2 83$ INTO R2 . YES. READ (SR INTO R2 . oK? H_ 8 M1113 29-JAN-81 17:22 PAGE 57-4 | VSVI1/VS11 == GRAPHIC SYS. DIAG MACRO ADDRESS UNIQUE REGISTERS | eee TEST & | . | ‘ 037276 037300 037320 3955 037320 2956 037324 001410 012701 037324 012777 000004 037332 017702 84%: 000000 143476 3959 037366 037366 85%: 037374 012777 017702 000006 143434 143440 020102 037406 001410 86$: 037436 012777 017702 000006 143372 143376 020102 001410 87%: 037472 2065 037472 3966 037474 3967 037476 037476 004737 RDDSRA #170000,R2 : MASK OUT XPM. 86$ : YES. 050300 010077 3970 037520 012701 3971 037524 037524 012777 RDDSRA : READ XPM INTO R2 . BIC #7777 .R2 : MASK OUT XRR. IFERROR MRXPE ,DUADRE R1,R2 CMP 87% BEQ HRDERR MRXPE ,DUADRE, 143374 R3,R0O RO,aDSR 000000 RDDSRA MOV 001410 3973 037562 3974 037566 012701 000001 012777 000001 037574 017702 143234 020102 037602 001410 037604 ; €LCLCLLLLLLLLLLLLLLLCCC<<<<< BEGIN SEGMENT ., . BIS MOV MOV 143302 143240 #170000,R3 #SETMPM,RO DSR,R2 #SELDSR,aDSR BEQ HRDERR 88$ MPDSE ,DUADRE, MOV RDDSRA #1,R1 PC(CS.,R2 MOV aDSR,R2 MOV : GO DO SOFT INIT, CHECK THE STATE. ; WRITE R3 INTO mMPM #100000,R1 aDSR,R2 MOV IFERROR MPDSE ,DUADRE R1,R2 CMP g8s$ : 0K? * YES. ; NO. ; €CCLCLLLLLLLCLLLLLLLLLC<<< END SEGMENT, ENDSEG R3,MPM 037540 037542 3975 037600 037600 aDSR,R2 WTIDSRA 100000 : ND. #SELXPM,aDSR PC.DPINIT 037532 017702 143276 037536 020102 037566 XPM,R2 : 0K? MOV JSR 3972 037536 037562 aDSR,R2 HRDERR MRXRE ,DUADRE, MOV 012700 s NO. BIC 000015 037512 037514 : MASK OUT MRR. ; OK? YES. ; READ XRR INTO R2 . BGNSEG INITDP 025402 ; READ MPM INTO R2 . #SELXRR,aDSR MOV 037506 XRR,RZ2 s YES. ; NO. MOV 3968 037502 012703 170000 3969 037506 #SELMPM,aDSR HRDERR MRMPE ,DUADRE, MOV 3963 037442 062702 007777 2964 037446 037446 037450 037452 aDSR,R2 BEQ 037430 037430 MOV IFERROR MRXRE ,DUADRE R1,R2 CMP : 037410 3962 037430 #0,R1 MPM,R2 MOV 3960 037400 042702 170000 3961 037404 037404 MOV RDDSRA #7777 ,R2 BIC IFERROR MRMPE ,DUADRE R1,R2 CMP 85§ BEQ 3957 037336 042702 007777 2958 037342 037342 020102 037344 001410 037366 84% MRCSE ,DUADRE, MOV 143502 037346 BEQ HRDERR #SELPCS,aDSR ; READ DSR INTO RZ . : 0K? YES. : NO. : READ PCS INTO R2 . IFERROR MPPCE ,DUADRE R1,R2 (MP ; 0K? HRDERR MPP(E ,DUADRE, . NO. BEQ 89% *OVES. - | , SEQ 0098 8 g7-5 PAGE 17:22 AN-81 29M1113 SYS. DIAG MACRO VSV11/y511 == GRAPHIC REGISTERS UNIQUE ADDRESS see TEST & 037624 2976 037624 2977 0376 037630 037636 3578 037665 037642 037644 012701 100000 012777 oogoog 143176 017702 14317 020102 001410 037666 012701 000003 012777 000003 143134 017702 143130 020102 001410 037646 2979 037666 3980 037672 037672 037700 3981 037704 037704 037706 037710 037730 2982 (37730 012701 0C0000 89%: 908: 91%: 92%: 037776 012777 000006 143030 060006 017702 143024 2987 060010 042702 170000 040016 001410 978 3989 0460040 040040 012777 000006 142766 0600646 017702 162762 3990 060052 042702 007777 2991 040056 040056 060062 040102 3992 040102 2993 060104 3994 0460106 040106 3995 060112 2996 060116 040116 040122 040126 3997 040130 0064737 (012703 012700 050300 010077 012701 948 025402 007777 000016 142704 100000 #0,R1 MRR,R2 #SELMRR , 3DSR aDSR,R2 #170000,R2 : 0x? © VES. : NO. : READ CSR INTO R2 . : oK? L OVES. ; NO. : READ MRR INTO R2 . : MASK QUT MPM, : 0K? © VES. XRR,R2 : READ XRR INTO R2 . : MASK OUT XPM, HRDERR MPMRE ,DUADRE, RDDSRA : READ FLG INTO R2 . R1.R2 928 MOV MOV BIC #SELXRR,3DSR @DSR,R2 #170000,R2 BEQ 93§ MmOV MOV BIC RDDSRA #SELXPM,3DSR @DSR,R2 #777% R2 BEQ 9%$ HRDERR MPXRE ,DUADRE, XPM,R2 . DUADRE 1FERROR MPXPE R1.R2 (P 020102 040060 001410 MOV , DUADRE IFERROR MPXRE R1,R2 MP 020102 040020 040040 MP(SE,DUADRE, (MP BEQ 037752 020102 037754 001410 3988 040014 040014 HRDERR E . DUADRE [FERROR MPMR 3985 037752 037776 #3,R1 MOV RDDSRA (SR,R2 #SELCSR,aDSR MOV aDSR,R2 MOV E , DUADRE [FERROR MP(S R1,.R2 cMP 91$ BEQ MOV MOV BIC 037734 012777 000006 143072 037742 017702 143066 3984 037746 062702 170000 2986 037776 HRDERR MPFLE ,DUADRE, RDDSRA 2983 03773% 037756 #100000,R1 MOV RDDSRA FLG,R2 #SELFLG,ADSR MOV aDSR,R2 MOV [FERROR MPF LE , DUADRE R1.R2 (MP 90§ BEQ SEQ 0099 ; NO. ; 0K? : YES. ; NO. : READ XPM INTO R2 . : MASK OUT YRR, ; 0K? VES. ; NO. HRDERR MPXPE ,DUADRE, ; €CCCCECLLLLLLLLCLLLCCCCCcc<< FNE SEGMENT, ENDSEG €CCCCCELLLLLCCCCcccccc<<e< BECIN SEGMENT, ; BONSEG INITDP JSR MOV WIDSRA TMMoy 8IS MOV MCy PC,DPINITY R3 #7777 R3,XRR #5E TXRR RO R3,R0 RO, aDSR #100000,R" : GO DO SOFT INIT, CMECK THME STATE, : WRITE R3 INTO XRR ., V117451 == GRAPHIC SYS, DIAG MACRD M1113 2G- AN-81 17:22 ees TEST & REGISTERS UNIQUE ADDRESS 3998 0601 012777 017702 €00000 162666 RDDSRA 162672 ox? VES. c12701 000001 012777 017702 000001 142626 XRD , DUADRE SE, 95%: .81 PC5.R2 142630 aDSR,R2 XRPCE , DUADRE R1.R2 %8 012701 100C00 012777 0C0002 142562 017702 XRPCE ,DUADRE , 96%: #100000, R FLG,R2 1462566 01;777 000003 017702 142520 142524 READ (SR INTO R2 XRC SE , DUADRE R1,R2 oK? XRC , DUADRE SE, NO. aDSR,R2 : 8% 142456 170000 142462 #170000,R2 sP 99% READ MRR INTO R2 MASK ouT 0K? XRM , DUADRE RE , 99%: 142414 YES. #0.R1 MRR,R2 020102 001410 000004 YES. #SELCSR,@DSR 98$ 012701 012777 017702 042702 ? oK #3,R1 CSR,R2 020102 001410 012777 017702 042702 XRF LE ,DUADRE R1.R2 XRFLE ,DUADRE , 97%: V€S, READ FLG INTO R2 97% 000003 ; Ox? 2 #SELFLG,aDSR aDSR R2 020102 001410 012701 READ PCS INTO R2 #SELPCS,aDSR 00141 4014 040420 4015 040424 READ DSR INTO R2 95¢ 0201 4011 040356 4012 040362 DSR,R2 #SELDSR,ADSR aDSR,R?2 XRDSE , DUADRE 141 040344 040352 SEQ 0100 R1.R2 201 4010 040344 J_8 PAGE 57-6 MPM,R2 142420 #SELMPM_aDSR 007777 READ INTO R2 MASK ouT MPM, 0K ? 30 50 : 1008 142356 P —————————————————————————————————— —— —————————————————— HRDERR RDDSRA MOV MOV XRMPE ,DUADRE , XPM, R2 #SELXPM,aDSR aDSR,R2 YES. NO. READ INTO R2 . P ——— et e e e et e . —————e e i 12 — — 1 17:22 PAGE 57-; 29-JAN-8 M1113 MACRO DIAG SYS. GRAPHIC == 11 |% VSV11/vS ADDRESS UNIQUE S REGISTER ses TEST & K ' : ! | : | i { 4017 040462 042702 007777 BIC 040470 001410 040472 040512 1.019 01.0512 BEQ HRDERR ENDSEG BGNSEG #7777 ,R2 IFERROR XRXPE ,DUADRE 4018 040466 CMP 040466 020102 101$: 4020 040514 INITDP 4021 040516 JSR 040516 004737 025402 ; OK? PC,DPINIT : GO DO SOFT IMIT, CHECK THE STATE. YES. 101$ ; NO. XRXPE ,DUADRE, : €€LLLLLLLLLLLLLLLLLLLLLLKLKL END SEGHENY. 5 €<<<LLLLLLLLLLLLLLLLLLLKLKLKL BEGIN SEGMENT. MOV #170000,R3 040526 012700 000017 MOV #SETXPM,RO WIDSRA 040532 040534 050300 010077 4024 040540 012701 4025 040544 100000 040544 012777 000000 040552 017702 040556 040560 040562 020102 001410 4026 040556 040602 4027 060602 4028 040606 012701 142256 040614 040620 040622 040624 040644 4030 040644 4031 040650 040650 040656 4032 040662 040662 040664 040666 040706 4033 040706 4034 040712 017702 142214 012701 012777 000002 017702 142152 000003 040712 012777 000003 040720 4035 040724 040724 017702 142110 102%: 040762 017702 040754 103$: 4039 040772 R1,R2 102 XPDSE,DUADRE, MOV RDDSRA #1,R1 PCS,R2 MOV aDSR,R2 142046 #SELPCS.aDSR CMP BEQ HRDERR R1,R2 103$ XPPCE ,DUADRE., MOV RDDSRA #100000,R1 FLG.R2 MOV aDSR,R2 MOV 142156 #SELFLG.aDSR IFERROR XPFLE ,DUADRE 1048 CMP BEQ HRDERR R1,R2 104$ XPFLE,DUADRE, MOV RDDSRA #3,R1 CSR,R2 MOV 142114 142052 #SELCSR,aDSR aDSR,R2 MOV IFERROR XPCSE ,DUADRE R1.R2 CMP 105%: 000000 4038 040766 042702 170000 aDSR,R2 CMP BEQ HRDERR BEQ 012777 000004 DSR,R2 IFERROR XPPCE ,DUADRE 040726 001410 012701 #SELDSR.@DSR MOV 142220 020102 040730 040750 4036 040750 4037 040754 MOV IFERROR XPDSE ,DUADRE 020102 001410 012701 R3.RO RO.aDSR #100000,R1 MOV 020102 001410 100000 R3,XPM MOV RDDSRA 142262 000001 040606 012777 000001 4029 040620 8IS MOV 142274 105$ HRDERR XPCSE ,DUADRE, MOV RDDSRA #0,R1 MRR,R2 MOV MOV BIC : MASK OUT XRR. R1,R2 4022 040522 012703 170000 4023 040526 SEQ 0101 : WRITE R3 INTO XPM . : READ DSR INTO R2 . : 0K? * YES. ; NO. ; READ PCS INTO R2 . ; OK? : YES. ; NO. ; READ FLG INTO R2 . : 0K? YES. ; NO. ; READ CSR INTO R2 . ; 0K? : YES. s NO. #SELMRR,aDSR : READ MRR INTO R2 . #170000,R2 : MASK OUT MPM. aDSR,R2 IFERROR XPMRE ,DUADRE VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 29-JAN-81 17:22 wxx TEST & REGISTERS UNIQUE ADDRESS 040772 020102 040774 001410 040776 106%: 041016 4040 041016 041016 012777 000004 041024 017702 142004 020102 107%: 041060 4043 041060 041060 012777 000006 4045 041076 041076 C41100 041102 017702 042702 141742 170000 108%: 041122 041124 004737 027646 041134 000137 041130 041132 aDSR,R #SELMPM,aDSR #7777 ,R2 HRDERR RDDSRA 107% XPMPE ,DUADRE, XRR,R2 #SELXRR,aDSR aDSR,R2 MOV #170000,R2 BIC IFERROR XPXRE ,DUADRE R1.R2 CMP 108% BEQ HRDERR XPXRE ,DUADRE, ENDSEG COMEND 109%: 041140 004737 030072 110%: PC,LOOP JMP 1% JSR PC,TSTEND EXIT END.TEST 4049 041150 1% 109% 1108 TST SEQ 0102 ; 0K? : YES. s NO. : READ MPM INTO R2 . : MASK OUT MRR. ; 0K? : YES. s NO. : READ XRR INTO R2 . : MASK OUT XPM. ; 0K? : YES. ; NO. ; €€CLLLLLLLLLLLLLLLLLLLLLLL< END SEGMENT., JSR BCS BR 103401 000402 035710 4048 041144 MOV MOV 141746 020102 001410 4046 041122 4047 041124 MPM,R2 BEQ 041040 041066 4044 041072 RDDSRA IFERROR XPMPE ,DUADRE R1,R2 CMP 041036 001410 - R1,R2 106% XPMRE ,DUADRE, BIC 4041 061030 042702 007777 4042 041034 041034 CMP BEQ HRDERR MOV 142010 L_8 PAGE 57-8 : REPEAT 'TIL LOOPER EXPIRES. : PRINT ERROR SUMMARY, IF REQ'D. 2 EXIT THIS TEST >>333333>33>33>33333>3>3>>> :'tttIttttttttttttt*tt"tttttl0fittti""'ti*.t'ttt'tt'tti'tfi'ti'tt't't.' . % iw . % END TEST & :ttt*l"t*fitttti't*fi'tt""'Qflt'iti."tt'i!'tt.itt'ttt.ii'!.'Qfittt'tttfit . VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 wex TEST S ING REGISTERS INCREMENT 4051 M8 29-JAN-81 17:22 PAGE 58 SEQ 0103 ;t'tttt.tttt'tt"tttt'tt'ttttt'ttt'tttttttttt'ttt"ttttttt'.tttt'ttt'tt' . % o . % BEGIN TEST 5 = INCREMENTING REGISTERS :-tQttttt.'tfittt"tt't'titttttt-tfitttfifitttttttttttttittttt'tttt'itlttt'tt ; (ITERATION COUNT = 10.) - 4053 4052 - THE READ/WRITE CAPABILITIES OF THE REGISTERS WILL BE CHECKED : BY "'INCREMENTING'' EACH REGISTER FROM ITS LOWEST POSSIBLE : VALUE, MINUS ONE, TO ITS HIGHEST POSSIBLE VALUE, PLUS ONE, 4057 : R1=EXPECTED, R2=RECEIVED, RO,R3=WORK REGS. : IE. 1 10 177777 T0 0. i 4058 4059 041232 041232 041236 282? 041242 004737 004737 012701 027702 026074 000023 1%: 4062 041246 4063 041250 041250 041254 041256 4064 041262 012700 050100 010077 000003 041274 041276 041300 020102 001410 4066 041320 4067 041322 4068 041326 4069 041332 062701 020127 001346 000020 000003 4072 041336 28;2 041342 012701 012703 000001 000020 141540 141544 64%: 041320 28;? 041334 041350 041354 041356 4077 041362 041362 041370 4078 041374 041374 041376 041400 041420 4079 041420 012700 050300 010077 012777 017702 020102 001410 BGNSEG WTDSRA 3%: 000014 000004 141440 141444 R1,CSR ; €CLLLLLLLLLLLLLLLLLLLLLL<< BEGIN SEGMENT. : WRITE R1 INTO CSR . MOV #SELCSR,aDSR : READ CSR INTO R2 . R1,RO RO,aDSR C(CSR,R2 aDSR,R2 MOV IFERROR ICSRE ,EXPREC R1,R2 CMP 64% BEQ HRDERR ICSRE.,EXPREC, : LOOP IF ERROR. : INCREMENT. #20,R1 : DONE? R1,#SELCSR : NO. 2% MOV MOV #1,R1 #20,R3 BGNSEG WTDSRA ; €<LLLLLLLLLLLLLLLLLLLLLLL< END SEGMENT. R3.MRR : INCREMENT MRR. ; €<CLLLLLLLLLLLLLLLLLLLLLL< BEGIN SEGMENT.- MOV #SETMRR RO : WRITE R3 INTO MRR . MOV #SELMRR,aDSR : READ MRR INTO R2 . R3,R0 RO,aDSR MRR,RZ2 aDSR,R2 IFERROR IMRRE ,EXPREC 65%: ; 0K? : YES. : NO. CKLOOP ADD CMP BNE MOV : > TINE. ; DO SOFT INIT. : INCREMENT CSR. #SETCSR,RO BIS MOV RDDSRA 141452 PC,TSTGO PC,DPRESET #SELCSR+20,R1 MOV ENDSEG 4075 041346 4076 041350 JSR JSR MOV BIS MOV RDDSRA 141552 012777 017702 2%: 000013 041262 041270 4065 041274 NCREG: COMBEG CMP BEQ HRDERR CKLOOP R1,R2 65% IMRRE ,EXPREC, z OK? : YES. . NO. ; LOOP IF ERROR. 8 VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 29-JAN-81 17:22 PAGE 58wex TEST S 4080 041422 40B1 041426 4082 041432 4083 041436 4084 041440 :832 041444 062703 062701 020127 001403 042701 000741 ADD ADD CMP BEQ BIC BR 000020 000001 000001 170000 4%: 28%5 041446 2838 041450 4091 041454 4092 041456 041456 041462 041464 4093 041470 4094 041472 4095 041476 041476 041504 4096 041510 041510 041512 041514 041534 4097 041534 4098 041536 4099 041542 4100 041544 4101 041550 041550 041556 4102 041562 041562 041564 041566 041606 4103 041606 4104 0641610 4105 041614 4106 041620 2}8; 041622 4109 041624 2}}? 041630 4112 041634 4113 041636 041636 041642 041644 4114 041650 041650 041656 4115 041662 041662 SEQ 0104 ING REGISTERS INCREMENT #20,R3 : INCREMENT. R1.41 [A 3 : DONE? #1,R1 #170000,R1 3% MOV #290,R3 R3.MPM 012700 050300 010077 010301 042701 000015 BGNSEG WTDSRA MOV BIS MOV 012777 017702 000004 141324 5%: 141344 007777 141330 020102 001410 005001 668%: 032703 001402 052701 001000 012777 017702 000005 141252 100000 141256 50%: 020102 001410 67%: 062703 020327 001316 000020 000020 012701 000001 012703 012700 050300 010077 000016 012777 017702 000006 141152 020102 BIT BEQ BIS RDDSRA MOV CKLOOP ADD CMP BNE ENDSEG MOV 6%: 141164 141156 3 <<€ LLLLLLLLLLLLLLLLLLLLKL BEGIN SEGMENT. #SETMPM, RO R3,R0 RO,aDSR : WRITE R3 INTO MPM . :GET WRITTEN DATA “LEAVE MASK BITS IN R1 : READ MPM INTO R2 . ; 0K? : YES. : NO. R1 #BIT9,R3 :ASSUME WRITE=-PROTECT BIT IS 0 “DID WE WRITE IT TO 1? :girgg,n1 “SET BIT 15 FOR HBASE COMPARE IF YES. 508 #SELHBA.aDSR aDSR,R2 MOV EXPREC IFERROR IMP,WPE R1,R2 CMP BEQ HRDERR IMPWPE ,EXPREC, MOV 000020 : INCREMENT MPM. R3.R1 MOV #7777 ,R1 BIC RDDSRA MPM,R2 #SELMPM,aDSR MOV aDSR,R2 MOV ME , EXPREC IFERROR IMP R1,.R2 CMP 66$ BEQ HRDERR IMPME ,EXPREC, CLR ; NO. s ; €KCLLLLLLLLLLLLLLLLLLLLLL< END SEGMENT. ENDSEG 000020 012703 : YES. #20,R3 gg,wzo *BR IF NOT. : READ ‘HBA INTO R2 . ; 0K? : NO. : LOOP IF ERROR. : INCREMENT. : gONE? s CCCLLLLLLLLLLLLLLLLLLLL<<< END SEGMENT. #1,R1 #20,R3 : INCREMENT XRR. 2 €< €<<<LLLLLLLLLLLLLLLLLLKLKL BEGIN SEGMENT. BGNSEG R3 JXRR WTDSRA : WRITE R3 INTO XRR . #SETXRR,RO MOV R3.R0O B!% RO,aDSR MOV RDDSRA XRR,R2 #SELXRR,@DSR : READ XRR INTO R2 . MOV aDSR,R2 MOV IFERROR IXR RE , EXPREC R1.R : 0K? (MP B 9 VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 29-JAN-81 17:22 PAGE 58-2 ese TEST S 061664 0461666 ING REGISTERS INCREMENT 001470 68%: 041706 4116 041706 4117 041710 4118 041714 4119 041720 4120 041724 4121 041726 412% 041732 062703 062701 020127 001403 042701 000741 000020 41 _ 041744 041750 041752 4130 041756 170000 BEQ BIC BR 000001 8%: 141056 4132 041764 041764 041772 4133 041776 041776 042000 042002 012777 000006 017702 141036 4136 042030 4137 042032 4138 042036 042036 042044 4139 042050 #20,R3 R3,XPM BIS MOV MOV R3.RO RO,aDSR R3,R1 RDDSRA MOV 69%: CMP BEQ HRDERR CLR #SETXPM,RO :LEAVE MASK BITS IN R1 XPM,R?2 #SELXPM,aDSR aDSR,R2 ; 0K? 3 Y¢S. . NO. R1 :ASSUME WRITE-PROTECT BIT IS C 80% ;BR IF NOT. :DID WE WRITE IT TO 1? 052701 040000 BIS #BIT14,R1 012777 000005 MOV #SELHBA ,aDSR 017702 140764 140770 80%: RDDSRA MOV HBA,RZ2 aDSR,R2 IFERROR IXPWPE ,EXPREC CMP BEQ HRDERR R1,R2 708 IXPWPE ,EXPREC, #20,R3 R3,#20 8% 042050 042052 042054 020102 001410 4140 042074 4141 042076 4142 042102 4143 042106 2122 042110 062703 020327 001316 000020 000020 CKLOOP ADD CMP BNE ENDSEG 042112 004737 027646 JSR PC,LOOP 042120 000402 BR 72% 042122 000137 041242 71%: JMP 1% 042126 4147 042132 004737 030072 72%: JSR PC,TSTEND 70%: 042074 4146 042112 042116 103401 COMEND B(CS EXIT : READ XPM INTO R2 . R1,R2 69% IXPME ,EXPREC, 001000 001402 ; WRITE R3 INTO XxPM . :GET WRITTEN DATA #7777 ,R1 #B1T9,R3 BEQ : YES. ; NO. 3 ; INCREMENT XPM, ; €CLLLLLLLLLLLLLLLLLLLLLL<<< BEGIN SEGMENT. BIT 032703 ; DONE? ; €CCLLLLLLLLLLLLLLLLLLLLL<< END SEGMENT. IFERROR IXPME ,EXPREC 042022 4135 042024 7% #170000,R1 6% WIDSRA MOV MOV 141042 020102 001410 4134 042022 005001 BGNSEG BIC 4131 041760 042701 007777 #1,R1 : YES. ; NO. : LOOP IF ERROR. ; INCREMENT. R1.,#1 ENDSEG MOV 000020 012700 000017 050300 010077 010301 #20,R3 CMP 4128 041742 6129 041744 CKLOOP ADD ADD 7%: 012703 68% IXRRE ,EXPREC, 000001 41%§ 04173 2}%9 041736 BEQ HRDERR SEQ 0105 ; READ HBA INTO R2 . ; 0K? s YES. . NO. ; LOOP IF ERROR. : INCREMENT. s DONE? s NO. ; €<CLLLLLLLLLLLLLLLLLLLLL<<< END SEGMENT. 1% 71% ST :SET BIT 14 FOR HBASE COMPARE IF YES. ; REPEAT 'TIL LOOPER EXPIRES. : PRINT ERROR SUMMARY, IF REQ'D. 3 EXIT THIS TEST >>333333233333333>33>>>>5> c 9 VSV11/y511 == GRAPHIC SYS. DIAG MACRO M1113 29-JAN-81 17:22 PAGE 58-3 ess TEST S ING REGISTERS INCREMENT L148 END.TEST 4149 042136 :'.'.'QQ'.Qt"l.'.t"Q""".'.Q....Q"."'.'.'t...Q....'.'.'.'.'.".Q.' B * - " END TEST 5 '.""...t'.Q"."Q...""'.."Q'.'.'..Q.'Q...QQ"'Q.t'."'l"'.""".. v - SEQ 0106 [t | | ; | ] R i e e VSV11/vS11 == GRAPHIC SYS. DIAG MACRO M1113 ese TEST 6 DPU START=STOP ALY S—— D 29-JAN-81 17:22 PAGE 59 9 SEQ 0107 'tQ'tQQ'ttt"ttt".'Q"Q'Q'..Qtt't't"tt..t.t."'.Q'iQQ'Q"Q.'.QQ""'Q' ! . % - BEGIN TEST 6 ) - % DPU START=STOP :!'t'tt'tt"tt..tttttt'i"'t"t'tt.'tQ't"t""t.'t'tQ't'Qt.'Qt"'t""' = 20.) ; C(ITERATION COUNT 4152 : 4154 2}22 ; ALL FUNCTION CORRECTLY. : IF NOT, ABORT, NO POINT IN CONTINUING. 4153 ; FIRST INSURE THAT START, RESUME, DNOP, DJMP, AND STOP 4157 042210 042210 4158 042214 004737 004737 SSTST: 027702 026074 4}58 042220 416 1%: COMBEG JSR JSR PC,TSTGO PC,DPRESET BGNSEG ; TITLE. ; DO SOFT INIT. ; €LCLLLLLLLLLLLLLLLLLL<<<<< BEGIN SEGMENT. 4161 042222 012702 042526 MoV #SSTZ2, R2 ;SET 1ST EXP'D DPC... 4163 0462232 4164 042236 042703 052703 176000 172000 BIC BIS #~C1777 .R3 #STOP,R3 :...AND DSR. 4166 042250 004737 JSR PC.UAITF :WAIT 1/2 SEC (MORE OR LESS). 4162 042226 4165 042242 017703 140602 012777 042516 4168 042260 027702 001411 140552 4170 042302 4171 042304 4172 042310 000421 012702 005277 042550 140516 4174 042320 027702 140506 4167 042254 4169 042262 4173 042314 4175 042324 4176 042326 4177 042346 4178 042352 2};8 042356 004737 001412 004737 004737 027454 MOV 140562 MOV CMP 027454 aDPC ,R2 2% BR MOV INC 3% #SST3,R2 aDPC CMP aDPC,R2 JSR 026756 023422 3%: 4%: 4181 4182 ; 2}32 #SST1,aDPC BEQ DFERR 2%: aDSR,R3 BEQ DFERR JSR JSR ENDSEG SSF ,PCSERR PC,WAITF 4% RJF ,PCSERR :XCT START, DNOPS, AND STOP. ;DPC SHOULD POINT TO 'RTZ2'. BR IF IT'S RIGHT. START-NOP-STOP FAILS. .BYPASS RESUME TEST. OK SET NEXT EXP'D DPC. XCT RESUME, DNOP'S, AND DJMP. :NOW DPC SHOULD BE AT 'RT3''. BR IF SO ;RESUME-NOP-JUMP FAILS. PC,RELEAS *UNHANG IF HUNG PC,I1IRCHK :VERIFY THAT INTERNAL REGS REMAIN STATIC ; €<L<LLLLLLLLLLLLLLLLLLLLLLL END SEGMENT ., SO FAR, SO GOOD. NOW LET'S PUT HIM IN A JUMP-SELF ; LOOP, AND SEE IF WE CAN STOP HIM FROM THE CPU. 4185 4186 042360 4187 042362 042362 042370 4188 042374 4189 042400 4190 042404 4191 042406 4192 042426 4193 042430 4194 042434 4195 042440 012777 004737 005277 004737 103011 042526 027454 140442 MOV JSR 140432 027454 000417 000240 000240 004737 027454 005077 BGNSEG DPSTART #SST2 140374 5%: INC JSR BCC HRDERR BR 240,240 CLR JSR 7 €€CLCLLLLLLLLLLLLLLLLCLL<<<< BEGIN SEGMENT. #SST2,aDPC PC,WAITF aDP( PC,WAITF 5% JSF 6% aDSR PC,WAITF ; START THE DPU. ; WAIT FOR DISPLAY STOP. ;RESUME, XCT DJMP SELF. :BR IF HE'S DOING IT. :JUMP SELF FAILS. sXCT "EXTERNAL STOP'', . VSV11/vS11 == GRAPHIC SYS. DIAG MACRO M1113 «ex TEST 6 4196 042444 4197 042446 4198 042465 4199 042472 4%8? 042476 DPU START=STOP 103470 004737 004737 6%: 023422 026756 4 4202 042500 042500 042504 4203 042506 2%82 042512 004737 027646 004737 030072 103645 4209 042524 4210 042526 4211 042534 164000 164000 164000 SST1: 160000 164000 042546 164000 SST2: 173000 164000 173000 173000 4215 042554 160000 25}? 042560 SEQ 0108 ;sBR IF HE STOPPED. 6% JEXT STOP FAILS. ESF :MAKE SURE INTERNALS STILL OK. PC,]IRCHK ;1T DIDN'T, GO RELEASE DPU. PC,RELEAS ; €LCLLLLLLLLLLLLLLLLLLLLLL< END SEGMENT. 1% JSR PC,LOOP JSR EXIT PC,TSTEND TST B(CS .Y PAGE 59-1 1% ; REPEAT 'TIL LOOPER EXPIRES. ; PRINT ERROR SUMMARY IF REQ'D. ; EXIT THIS TEST >>333333333533333>333>3>>> : DISPLAY FILE FOR THIS TEST. 4212 042540 4213 042546 4214 042550 B(CS HRDERR JSR JSR ENDSEG LOOPTO 2589 4208 042516 29-JAN-81 17:22 164000 173000 173000 164000 042554 173000 $ST3: DNOP,DNOP,DNOP STOPN DNOP,DNOP,DNOP DJMP, .+10 STOPN,STOPN,STOPN STOPN ;SHOULD SKIP OVER THESE... ;...AND LAND HERE. DJMP, . =2 :JUMP SELF FOR "EXT STOP''. DNOP ,DNOP STOPN,STOPN 173000 ; INSURANCE . END.TEST 4218 042564 "tt.fitttl"fi*ttttttfifi""'t'ttttQit.t't'.'.i.i"fi'"'Qt'tfiQtt".t""t" > i . * . END TEST 6 "tttttttt‘.tt"i"tt't""'itti'Qfi'ttttt.t""'tt.'.t'.fi'.'t"t.'.t.t'.t - VSV11/vS11 == GRAPHIC SYS. DIAG MACRO M1113 sex TEST 7 DPU OPCODES 4220 29-JAN-81 17:22 F PAGE 60 9 SEQ 0109 :tt'tt’.'.tttt"ttt'tt"".Q't.t""'..QQ'Qtt"'..'t'!t""""t'...".' BEGIN TEST 7 i | - ® - DPU OPCODES :'nt'tt".t't'.t.tittttt""'QQQQQ't"t't.'tt..t"t'.'."'ttfit"t.""'.' ; (ITERATION COUNT = 5.) 4221 : 235’; : USE ALL 10 BITS OF THE PIXEL DATA FIELD. 4222 4223 6226 042632 042632 042636 4227 042642 4228 042646 4229 042654 4230 042660 25%; 042666 : FIRST, TEST ALL THOSE OPCODES WHICH XFER PIXEL DATA TO THE : DPU, OPCODES 100000 THRU 130000, (CHAR THRU REL POINT). 004737 004737 005037 012737 012702 012737 012703 027702 026074 023054 043412 043446 102000 172000 OPCOD: 022300 043440 2%%2 042672 4235 042674 012777 043440 4237 042706 4238 042712 4239 042714 027703 001410 140122 4241 042742 4242 042750 042737 003777 004737 022410 4236 042702 004737 027454 4240 042734 013737 043440 4243 042754 012737 000001 4244 042762 4245 042766 4246 042774 4247 043000 4248 043006 4249 043012 4250 043016 4251 043022 4252 043026 2522 043032 004737 012737 004737 013737 004737 005037 004737 004737 004737 022360 000003 022440 023054 022624 023056 023056 CMP BEQ HRDERR MOV aDSR,R3 3% PDXI,PCSERR :DOES DSR = STOP + DATA ?? ;YES ;PIXEL DATA XFER WRONG. #3777 GDDAT PC, FLGCHK :CLEAR OUT INTENSITY :SEE_THAT OPCODE IS IN FLAGS. 023056 JSR 022566 JSR 022526 173777 4263 043062 4264 043070 062737 042737 004000 001777 043440 043440 OPC1,GDDAT a1.GDDAT PC,PCSCHK #SELCSR,GDDAT PC,CSRCHK LOOPFL ,GDDAT PC,CBCHK GDDAT PC ,MM(CHK PC ,XMCHK ;GET OPCODE EXPECT "EMPTY'' ON PCSAVE. .AND EXPECT .AND EXPECT .AND :EXPECT GO CHECK FOR IT. CLEAR CSR (EXC. SEL). CHECK FOR IT. CBASE EITHER 0 OR DNOP.. CHECK FOR IT. 0 IN REMAINING REGS... :...MAIN MEM MGMT. I...AUX MEM MGMT. PC ,HB(CHK rMP R3,#STOP!1777 ;ALL DATA BITS DONE ?? INC INC R3 OPC1 :NO BUMP DATA BITS... :...HERE T0O0... BEQ B8R 4$: PC,WAITF JSR ENDSEG 133777 000673 JSR MOV JSR MOV JSR CLR 022466 043440 4265 043076 BIC JSR MOV 023056 023727 4266 3%: 023056 4261 043052 001407 JSR 023056 043440 4262 043060 ; €<LLLLLLLLLLLLLLLLLLLLL<<< BEGIN SEGMENT. ;START, XCT OPCODE+DATA. 005203 005237 000710 BGNSEG :SET EXPECTED DPC. ;IN'T OPCODE = CHAR, LEVEL 0. ;SE1 EXPECTED DSR. #0PC1,aDPC 4257 043042 4258 043044 2523 043050 2%: #0OPC1+6,R2 #CHAR'LO,0PC1 #STOP,R3 ; TITLE. : DO SOFT INIT. :CLEAR '‘LOOP-FLAG'' FOR C-BASE DATA. : SET ERROR EXTENSION ADDRESS. MOV 020327 001404 1%: MOV MOV MOV PC,TSTGO PC,DPRESET LOOPF L #208 EXTA 140130 4255 043034 4256 043040 14%: COMBEG JSR JSR CLR MOV ;...HISTOGRAM BASE. 7 <<KLLLLLLLLLLLLLLLLLLLLLL< END SEGMENT., 4 2% :BR IF SO. s...AND CONTINUE. CMP OPC1,#RPNT'3777 ;DONE THRU RPNT ??? ADD BiIC #B1T711,0PC1 #1777 ,0PC1 BEQ BR 5% :BR IF SO. 1% 2...AND CONTINUE. :NO, SET NEXT OPCODE... 2aaehEVEL 9... USV11/vS11 == GRAPHIC SYS. DIAG MACRO M1113 . wesx TEST 7 DPU OPCODES 29-JAN-81 17:22 G 9 PAGE 60-1 SEQ 0110 4267 4268 4269 4270 L271 : NOW OF THE REMAINING OPCODES (134000 - 17600C), EXECUTE ALL . EXCEPT BMO/BM1(134000/136000), DJMP(160000), AND STOP(172000), : WITH BITS <9:0> OF THE OPCODE = ZERO, AND NO FOLLOWING DATA. ; THEY ALL (INCLUDING THOSE UNDEF INED/SPARE) SHOULD APPEAR AS : NOPS, HAVING NO AFFECT ON THE DPU AS FAR AS FINAL REGISTER 4258 043116 6%: : CONTENT IS CONCERNED. 4272 : NOTE: THIS TEST WILL LEAVE IM CHAN O IN A "PROTECT'' STATE. 2%;2 : ALL REGISTERS SHOULD REMAIN... aDXR R4 MOV §s: 4275 043100 017704 137732 ;... UNCHANGED. aDYR,RS MOV 4276 0643104 017705 137730 : FIRST OPCODE = 1ST SPARE. PC1 #140000,0 MOV 2%;; 043110 012737 140000 043440 42 481 043120 4282 043126 4,283 043132 4284 043136 4285 043140 4286 043144 4287 043146 4288 043166 4289 043170 4290 043174 4291 043176 012777 004737 027702 001003 027703 001411 4292 043202 000416 027704 001003 027705 001410 4294 043224 012737 4293 043204 4295 043232 4296 043240 4297 043242 4298 043250 4299 043254 4300 043262 4309 043324 4311 043334 4312 043342 4313 043344 4314 043352 137636 130000 023056 144000 022410 023056 004737 022440 004737 005037 004737 004737 022360 023056 022466 022566 062737 023727 001771 023727 001765 023727 001761 002000 043440 043440 172000 043440 162000 043440 4318 043362 013737 043442 043370 004737 027646 4320 043376 004737 030072 043374 4321 043402 103404 023056 023056 043440 4319 043370 144000 000001 005737 001256 4315 043354 2%}9 043360 8%: 137642 012737 000003 4308 043316 4310 043332 7%: 043440 012737 137704 137670 023727 103403 012737 004737 4301 043266 4302 043274 4303 043300 4304 043304 4305 043310 2%89 043314 043440 027454 137674 160000 023054 9% : 11%: 10%: MOV JSR CMP BNE CMP BEQ HRDERR BR CMP BNE CMP #0PC1,aDPC PC,WAITF aDP(C ,R2 7% OPCF ,PCSERR :PC OR SR WRONG AFTER WNULL. HRDERR OPCF ,XYERR :XR OR YR WRONG AFTER NULL. OPC1,#RNLN 10% #RNLN, GDDAT PC,FLGCHK :GO TO RUN=-LENGTH YET? :BR IF NOT :IF YES, EXPECT TC SEE IT. :CHECK FLAGS FOR THE GRAPHIC OP. PC,CSRCHK 2 snsh MOV #RPNT ,GDDAT CMP BLO MOV JSR MOV #SELCSR,GDDAT :SAY WE SHOULD SEE 'RPNT'' OP IN FLAGS. ;...CHECK OTHER REGS, EXCEPT HBASE & (BASE MOV #1,GDDAT ADD #BI1T10,0PC1 :SET NEXT OPCODE. 15% : BYPASS DUMP... 15% OPC1,#IMREAD :...AND STOP. : BYPASS DMA PIXEL READ. TST BNE OPC1 6% : DONE THRU LAST OPCODE ?? ;CONTINUE IF NOT. MOV OPC1+2,L00PFL JSR PC,LOOP JSR PC,TSTEND CMP BEQ CMP BEQ CMP BEQ 30%: 8% BEQ JSR CLR JSR JSR ENDSEG 12%: aDSR,R3 1% aDXR R4 9% aDYR,RS 1% JSR 15%: ; €CLLLLCLLLLLLLLLLLLLLLLL<< BEGIN SEGMENT. BGNSEG LOOPTO BCS EXIT :...PCSAVE PC,PCSCHK OTHERS S/B 0 3 GDDAT :...MAIN MEM MGMT PC ,MMCHK 2. AUX MEM MGMT PC ,XMCHK 5 €<LCLLLLLLLLLLLLLLLLLLLLL< END SEGMENT. OPC1,#DJMP OPC1,#STOP 15% 13% 3 :GET DATA FOR (HAR-BASE :REPEAT °'TIL LOOPER EXPIRES. (BRANCH QUT OF RANGE) ;aaal 13§ TST 2 EXIT THIS TEST 220333333333 33333355353505 ' L USV11/7yS11 == GRAPHIC SYS. DIAG MACRO M1113 | wee (EST 7 4322 043406 DPU OPCODES 000137 04265 4327 043436 4329 oo H 9 PAGE 60<2 W SEQ 0111 | ;USE JMP TO GET BACK FOR LOOP. : ON ERROR, SHOW THE FAILING CPU OPCODE. 432 (356 043012 . 29 aN=-81 17:22 000207 508: ; PRINTX #OPCFX,0PC1 W : DISPLAY CODE. Egg 043440 102000 164000 173000 OPC1: CHARILO, DNOP, STOPN 4333 043446 END. TEST Y223 2222 2z = " ; EXTENSION SHOWS BAD OPCODE. ; DISPLAY CODE. s s e 2 R A R A R A R R AR R R R A AR R AR A A A A A R A A AR END TEST 7 > Y 2 222z s s s s R A R R A R R 2R R A R A AR A A R A A A A A A A A A A A A0 /SV11/7y511 == GRAPMIC SYS, DIAG MACRO M1113 29- AN-81 17:22 eee TEST 8 ING HISTOGRAM BASE ADDRESS INCREMENT 6375 I PAGE &1 SEQ 0112 » ..."...'..."...'Q""Q"..'..'.'.........'.Q......."................ . i BEGIN TEST 8 = ING HISTOGRAM BASE ADDRESS INCREMENT ; C(ITERATION COUNT = 5.) «3% 4337 H : THE READ/WRITE CAPABILITY OF THE BASE HISTOGRAM (OORDINATE wilLL Bt : CHECKED BY “"INCREMENTING'' 1T FROM 2 TO 1776 10 0. : (NOTE THAT THE WRITTEN DATA WiLL APPEAR SHIF TED 1 PLACE TO THE RIGMT)) ; R1= EXPECTED, R2=RECEIVID, RO,R3=wORK REGS. 4338 &139 &340 :33:; 433 63646 063544 0463546 0463550 4345 043554 L4346 063560 L3467 063562 4348 0463566 4349 064357C INCHBA: (OMBEG 004737 027702 004737 0c6076 012703 000002 18: 043712 2%: 010337 010301 006201 012777 JSR JSR 0Oy BGNSEG MOV MOV 2 TINE. PC,TSTGO : DO SOFT INiT. PC.DPRESET #2,R3 a BEGIN SEGMENT, << ; €CCCELLLLLLLLLLELLCCCLCC : SET VALUE FOR HBA (ODE. R3, 118 R3,RY £108,30PC ASR 043710 1372%2 MOy 063604 012777 000005 063612 017702 13721¢ 137222 MOV MOV 4350 043572 4351 043600 4352 063604 4353 043616 063616 004737 027654 JSR 043620 001410 648 062703 000002 4357 063654 4358 043660 020327 001340 000000 4360 043664 208 : 0o3664 004737 027646 063672 000402 043674 000137 043554 65%: 063 004737 030072 668 :kl 063704 6;:; 4367 063712 L4368 063716 (x_L 00P ADD #2 ,R3 HRDERR v anE ENDSEG COMEND 150000 i0s: 118: R3. 2% 18 EE 648 65§ L JSR P(,ISTEND sETeB 0 STOPN 1S7T : READ MBA INTO RZ . ox? VES. : NO. 3 MASK UNMANTED. 3 ? : NO. ; €CCCCLLLLLLLCCLLLLLLLCCccec<< END SEGMENT, . Exj? : WRITE MBA, ; LOOP ON ERROR. ; INCREMENT, #176001,R3 P, LOOP : DISPLAY (ODE. 000000 173000 [HBAE EXPRE(, JSR F ggg 4366 063710 [¥1 8CS 043670 103401 R1.R REQ BIC css(; 063650 042703 176001 4359 043662 #SELHBA DSk aDSR R?2 IFERROR [MBAF EXPRE( 1 0436462 4354 043642 4355 J63644 PCWAITF RDDSRA HBA _R?2 TM 043622 R1 ; REPEAT °TIL LOOPER ENPIRES. : PRINT ERROR SUMMARY, [f REQ'D. 333 03333 355030 2 ENIT THIS TEST 2300303333 01174501 == GRAPMIC SYS, DIAG MACRD M1113 ees TE5T B 20 an-81 17:27 ING w]5TOGRAM BASE ADDRESS INCREMENT €39 o370 06378 d 9P PAGE 611 €0 0113 END.TEST sssoocses . 0000000000000 00000E000000RERORRROORRRROROeRRNeNeeEeEeEeEREeEsresR - ;e N END TEST B 0000000000000 000000R0ReReRetOeetetec ceReetietettedensoseeescsseencssese VEVI1/V511 == GRAPWIC SYS. DIAG MACRO M1113 eee TEST § 29-JAN-81 17:22 ING (HARA(TER BASE ADDRESS INCREMENT K PAGE 62 . * = BEGIN TEST 9 . « SEQ 0114 L L LR R 4372 9 AR AR R AN NN R AR AR INCREMENTING CHARACTER BASE ADDRESS NI PR R AR AR AN R AR R R R AR AR AR AR AN NN RR AR R AR RN TSR RN CITERATION COUNT = 2.) ; 4373 4374 3 2%;; : R1= EXPECTED, R2=RECEIVED, RO,R3=WORK REGS. : THE READ/WRITE CAPABILITY OF THE BASE CHARACTER ADDRESS WILL BE » CHECKED BY "'INCREMENTING'' IT FROM 1 TO 177777 10 0. 4375 4374 4379 4380 044014 INCCBA: COMBEG 004737 004737 012701 027702 026074 0C0001 010137 012777 044152 044150 136766 044050 012777 000007 136756 044014 044020 4381 044024 4382 044030 4383 044032 4384 044036 4385 044044 4386 044050 044056 4387 044062 044062 044064 044066 004737 017702 027454 136752 4388 044106 4389 044110 4390 044114 4391 044120 4392 044122 4393 044124 1%: 2%: 000001 000000 044124 004737 027646 044134 000137 044024 65%: 044140 004737 030072 66%: 2%32 044144 30%: : 4398 2 4399 044150 4400 044152 4401 044154 4403 044156 #SELCBA,aDSR aDSR,R2 CMP BEQ HRDERR R1,R2 649% 1CBAE ,EXPREC, CKLOOP ADD CMP BNE #1,R1 R1,40 2% JSR PC,LOOP JMP 1% JSR PC,TSTEND ENDSEG COMEND BCS BR 4396 4397 MOV PC,WAITF (BA,R2 IFERROR ICBAE ,EXPREC 64%: 103401 000402 ;3 VITLE. PC,TSTGO ; DO SOFT INIT. PC,DPRESET #1,R1 ; €CCLLLLLLLLLLLLLLLLLLL<<<< BEGIN SEGMENT. ; SET VALUE FOR CBA CODE. R1,11% ; WRITE CBA. #10%,aDPC MOV 062701 020127 001344 044130 044132 JSR JSR MOV BGNSEG MOV MOV JSR RDDSRA 020102 001410 044106 4402 LR R A R EXIT 1% ; 0K? 2 YES. : NO. ; LOOP ON ERROR. ; INCREMENT. . DONE? ; NO. ; €<LLLLLLLLLLLLLLLLLLLLLLLK< END SEGMENT. 65% 66% TST ; READ CBA INTO R2 . ; REPEAT 'TIL LOOPER EXPIRES. : PRINT ERROR SUMMARY, IF REQ'D. : EXIT THIS TEST >>>3>333>3>533333333>>3>>3>> ; DISPLAY CODE. 152000 (000000 173000 10%: 11%: SETCB 0 STOPN END.TEST :"fl’t.!l’t"fit'ttltttti'i""t'tfitttt.'ttti.'t'.'fi!t't!Qt"t""ttt".t" r 1 VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 see TEST 29-JAN-81 17:22 INCREMENT ING CHARACTER BASE ADDRESS :' "e . L. ¥ PAGE 62-1 END TEST 9 "'t"fi.t"t't...fi'ttt'.."'t'l’“'"".Q."tt.'..'.'QQ""'..""..".Q" SEQ 0115 VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 =+« TEST 10 DJMS/DPOP 4405 29-JAN-81 17:22 M9 PAGE 63 SEQ 0116 "tt"'fil"t.'i"t.'t"'t"t".'t!'itfit"Q'ttl"t.t't."i"""i'.'.'." I b BEGIN TEST 10 = DJMS/DPOP "tt"'."t't'.t't*"t"i"t*tt'ttttt"fit.'.fittt.tt't'."QQ""'Q‘QQQ'.' ; (ITERATION COUNT = 10.) 4406 4407 4408 4409 * CHECK THE OPERATION OF THE DJMS AND DPOP OP CODES. 4410 044222 044222 044226 4611 4412 044232 4413 4414 044234 4415 044246 4416 044252 4417 044256 044256 044260 044262 044304 4418 044304 4419 044310 044310 044316 4420 044322 4421 044350 4422 044362 4423 044366 4424 044372 4425 044420 4426 044432 4427 044436 4428 044442 044442 0bbbelely 044kl 004737 004737 JMSPOP: COMBEG JSR JSR 027702 026074 1%: 012777 004737 012701 017702 044630 027454 044646 136554 012701 044634 012777 017702 000001 136512 020102 001411 052777 004737 012701 017702 000001 027454 044636 020102 001411 et 000001 027454 044647 136370 MOV IFERROR CMP BEQ HRDERR 136404 aDP(C ,R2 #118 ,R1 PC(CS,R2 #SELPCS,a@DSR ; READ DPC INTO R2. #8170,aDPC PC,WAITF MOV aDP(C ,R2 #12%,R1 . #BI1T0,aDPC MOV R1 1% ! AUXSEG. #2 JSR MOV PC,WAITF ; NO. ; NOW DO A DPOP. ; CONTINUE THE DPU. ; WAIT FOR DISPLAY STOP. ; READ DPC. IFERROR JPDPCE ,EXPREC, ,CKLOOP s 0K? R1,R2 CMP : YES. 66% BEQ OOP ,EXPREC,CKL HRDERR JPDPCE DPCONT BIS s NO. ; READ PCS INTO R2 . aDSR,R2 JPP(CSE ,EXPREC, ,CKLOOP ; 0K? R1,R2 * YES. 65% JPPCSE ,EXPREC,CKLOOP BIS JSR MOV 136440 020102 001411 052777 004737 012701 017702 JPDPCE ,EXPREC, ,CKLOOP s 0K? R1,R2 2 YES. 648 JPDPCE ,EXPREC,CKLOOP DPCONT 136454 ; DO A DJMS. : START THE DPU. ; WAIT FOR DISPLAY STOP. IFERROR CMP BEQ HRDERR MOV .58 ; DO SOFT INIT. #21% ,R1 MOV RDDSRA 136516 TITLE. MOV MOV R s 5 €KCLLLLLLLLLLLLLLLLLLLLLL< BEGIN SEGMENT. BGNSEG DPSTART #10% #108 ,aDPC MOV PC,WAITF JSR 136570 020102 001411 PC,TSTGO PC.DPRESET ; NO. : DO A DJMS (WITH AUX SEG BIT SET). ; CONTINUE THE DPU. ; WAIT FOR DiSPLAY STOP. aDPC ,R2 : READ DPC INTO R2. 67% : Y YES. IFERROR JPDPCE ,EXPREC, ,CKLOOP ; OK? R1,R2 CMP BEQ HRDERR JPDPCE ,EXPREC,CKLOOP : NO. E ' VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 w++ TEST 10 044470 6429 044470 4630 044474 044474 044502 4431 044506 044506 044510 044512 DJMS/DPOP 67%: 044642 012701 012777 000001 136326 017702 020102 001411 68%: 4433 044546 4434 044552 4435 044556 044556 044560 044562 052777 004737 000001 027454 017702 136254 020102 001410 044602 ; #13% R PC(CS.R2 #SELPCS,aDSR DPCONT #8170,aDPC BIS PC,WAITF JSR #20% ,R1 CMP BEQ HRDERR R1,R2 69% JPDPCE ,EXPREC, : 0K? : YES. . NO. ; €KLLLLLLLLLLLLLLLLLLLLLLL< END SEGMENT. ENDSEG COMEND 1% JMP 1% 044620 004737 030072 2223 044624 71%: JSR EXIT PC,TSTEND TST 222; ; DISPLAY CODE 044614 000137 044232 044610 044612 4443 044630 4444 044634 103401 000402 160001 173000 4445 044636 2229 044642 160001 173000 4448 044644 4449 044646 222? 044650 173000 165000 173000 70% 71% BCS BR 044644 108: DJMS,20% 044645 12%: 13%: % ' AUXSEG DJMS,20 STOPN 20%: 21%: 22%: STOPN DPOP STOFN 11%: ; NOW DPOP AGAIN. ; CONTINUE THE DPU. : WAIT FOR DISPLAY STOP. : READ DPC. IFERROR JPDPCE ,EXPREC 70%: 027646 s NO. aDP(C,R2 PC,LOOP 004737 : READ PCS INTO R2 . MOV JSR 044604 SEQ 0117 aDSR,R2 MOV IFERROR JPPCSE ,EXPREC, ,CKLOOP 0K? R1,R2 CMP : YES. 68 BEQ HRDERR JPPCSE ,EXPREC,CKLOOP MOV 69%: 22%9 044602 4438 044604 136270 044644 012701 MOV RDDSRA MOV 136332 044534 4432 044534 044534 044542 N9 29-JAN-81 17:22 PAGE 63-1 : REPEAT 'TIL LOOPER EXPIRES. : PRINT ERROR SUMMARY, IF REQ'D. 2 EXIT THIS TEST >>33333333333333>>>>>>>>>> STOPN END.TEST 4452 044652 T T T2 L . * e . % T h ) 2222222222222 23 2322332233222 333223322223ttt END TEST 10 S T il 2222222222222 322 2332223232332 3322222222ttt VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 29- AN-B1 17:22 ese TEST 1 MAIN MEM MGT ACCESS (OVER 2‘ L4654 8 10 PAGE 64 SEQ 0118 .-".....'..'."'!.'."..'.'Q'.......'Q'.".'"Q'Q'.'Q'..'."".t."."'.' BEGIN TEST 11 :' - MAIN MEM MGT ACCESS (OVER 28K) .-.""".."'....lt.'"".'...Q..Q...'.'...i.."'."'.'.Q"'."""'.". ; (ITERATION COUNT = 1.) 4455 4456 4457 4458 4459 4460 044744 044744 044750 4461 044754 4462 044760 4463 044762 446k 044764 4465 044770 4466 044772 4467 045012 (HECK THAT A DISPLAY FILE CAN BE ACCESSED VIA MAIN MEM MGT. IN MEMORY OVER 28K. 004737 004737 005737 001016 032700 001410 MMMAC: 027792 026074 003244 COMBEG JSR JSR TST BNE RFLAGS BIT 001000 BEQ PC,TSTGO 3 TITLE. KTFLG : GOT KT & >28k? RO : ARE WE PRINTING TEST NOS.? 1% : BR IF NO == DON'T PRINT : DO SOFT INIT. PC ,DPRESET > Y55 MMMACA #PNT ,RO 2 7 1%: EXIT PRINTF A#MNOK T TST 2 EXIT THIS TEST >>>3>>3>>3>3>>3>3>3>>>333>>>>>> s NO. MMMACA: 1%: JSR MOV PC ,KTBKGD ; SET UP BACKGROUND. 4468 6469 4470 045016 4471 045022 4472 4473 045026 4474 4475 045030 4476 045034 4477 045036 4478 045040 4479 045042 004737 012703 031322 001600 ; €CCLLCLLLLLLLLLLLLLLLLLLL< BEGIN SEGMENT. 2%: 010337 R3,a#K]PARG R3,R1 ; SET KT TO TEST PAGE. : SET UP MRR. #SETMRR,RO : WRITE R1 031270 #140000,RS PC ,KTON ; INIT LOC PTR. ; ENABLE KT. 031306 :S,KTOFF ; DISABLE KT. 172354 R1 R1 R1 R1 R1,MRR 4480 045044 4481 045046 000014 R1.RO RO,aDSR 135754 140000 #DNOP, (RS) 164000 e : INIT BANK PTR. (TO START OF 28K PAGE) #1600,R3 012777 004737 000413 000000 027454 004737 012715 004737 031270 052777 004737 010501 000001 027454 #0,aDPC ; 135724 zg.UAITF 3%: 164000 135674 4%: MOV : REPLACE ''STOPN'' WITH 'DNOP'* IN TEST LOC. START THE DPU. ; WAIT FOR DISPLAY STOP. PC,KTON ; ENABLE KT. PC,KTOFF ; DISABLE KT. #DNOP, (RS) 031306 INTO MRK . #8170 ,aDPC PC,WAITF R5,R1 : REPLACE ''STOPN'® WITH "DNOP'* IN TEST LOC. ; CONTINUE THE DPU. ; WAIT FOR DISPLAY STOP. : R1 = EXPECTED DPC, AND = r l { | | ! | VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 wev TEST 11 L4946 045144 | | 29-JAN-81 17:22 MAIN MEM MGT ACCESS (OVER 28K) 042701 062701 017702 012777 017704 BIC 170000 ADD 000004 135652 000004 135642 MOV 020102 4499 045222 4500 045226 4501 045232 031270 173000 031306 4503 045236 4504 045242 4505 045246 4506 045250 4507 045252 4508 045256 4509 045260 4510 045264 000002 147774 4502 45N 4512 0465266 045266 045272 045274 004737 103401 s READ MRR INTO Ré . aDSR R4 3 1ST ITEM OK? CMP BEQ HRDERR R3,R4 64% MMMAC(CE ,MMMAE, : 2ND ITEM OK? S ’ m. JSR PC,KTON 3 ENABLE KT. 2 REPLACE ‘DNOP'* WITH "'STOPN''. - DISABLE KT. 65% MOV JSR #STOPN, (R5) PC,KTOFF ADD #2,RS BNE 3% cMP RS, #147774 R3.KTFLG BEQ ADD BR 9% #200,R3 2% 9%: COMFND JSR BCS BR 1% PC,LOOP 66% 67% 000200 027646 #SELMRR ,aDSR IFERRX2 MMMA(E ,MMMAE R1,R2 CMP CMP 003244 aDPC ,R2 : = (R3 ALREADY = EXPECTED MRR). : READ DPC INTO R2. MOV ENDSEG 020337 001403 062703 000660 000402 ; 000137 045022 66%: JMP 1% 045302 004737 004737 030072 031306 67%: JSR PC,TSTEND 045 116 4516 4517 045316 4518 4519 045366 045 MNOKT: JSR EXIT PC KTOFF TST .ASCIZ /%N%XA .EVEN END.TEST ; m. ; ADVANCE LOC PTR. *- DONE ENOUGH LOCS? : NO. €<CLLLLL <CLCLLLLLLLLLLLLL< END .. ;Eg. ALL BANKS DONE? 3 :. SEGMENT. NO. ADVANCE BANK PTR. M REPEAT 'TIL LOOPER EXPIRES. 045276 4513 045306 4514 045312 4515 SEQ 0119 3 #6 R1 MRR,R4 BNE gzg #170000,R1 RDDSRA MOV 135646 ¢ 10 PAGE 64~1 :; PRINT ERROR SUMMARY, [F REQ'D. ; DISABLE KT11. 2- EXIT THIS TEST >>3333333333333335333333>> '!'! NO KT, OR <32K = NO TEST [!!/ :"t'tQiQtttt"fitt't"t"ttt.fitfifii'.'t't"t'fittttt".tt'tttit'tt't'tfi"' . * e . " END TEST 11 :'"Q't'tt"t"ttt."l"fi't"""ittttiit't"'ttfit"'t'fitt."tttt.t"i"' . s PO VSV11/vS11 == GRAPHIC SYS. DIAG MACRO M1113 wev TEST 12 AUX MEM MGT ACCESS (OVER 28K) 4521 29-JAN-81 17:22 0D 10 PAGE 65 SEQ 0120 L 'Q".".".'.""..'."Q""..'QQ.'Q'.""."Q.'.'."'."..""Q"".'.' * BEGIN TEST 12 . * = AUX MEM MGT ACCESS (OVER 28K) '!"Q'Q't.."Q..'..'Q""""....Q'....Q..'..QQ"Q.'.".'."'.'..""'.' - | ——— ; 4522 4523 (ITERATION COUNT = 1.) S : CHECK THAT A DISPLAY FILE CAN BE ACCESSED VIA AUX MEM MGT. : IN MEMORY OVER 28K. 4524 22%2 4527 045456 045456 045462 4528 045466 4529 045472 004737 004737 005737 001016 027702 026074 003244 4531 045476 4532 045502 4533 045504 032700 001410 001000 4530 045474 XMMAC: 4536 1%: 004737 012703 2%: 4544 045550 4545 045552 4546 045554 4547 045556 4548 045560 045560 045564 045566 4549 045572 4550 045576 010337 010301 172354 012700 000016 4551 045602 012715 012777 046030 zggg 045624 000413 027454 4556 045626 004737 031270 4558 045636 004737 031306 045642 045650 4560 045654 052777 004737 010501 000001 027454 4559 045642 : SET UP BACKGROUND. : INIT BANK PTR. 2 EXIT THIS TEST >>333333333>3>3>3>>>3>>>>>> TST ; €€LLLCLLLLLLLLLLLLLLLLLLLL<< BEGIN SEGMENT. MOV MOV R3,a#K IPAR6 R3.R1 : SET KT TO TEST PAGE. : SET UP XRR. MOV #SETXRR,RO : WRITE R1 INTO XRR . R1 R1 R1 R1 R1,XRR R1,RO RO,aDSR #140000,R5 PC,KTON #DNOP, (RS) MOV #10%,3DPC : START THE DPU. BR 4% 4%: PC,WAITF JSR PC,KTON JSR PC,KTOFF MOV DPCONT 135162 : REPLACE ''STOPN'' WITH 'DNOP'" IN TEST LOC. ; DISABLE KT. JSR 3%: : INIT LOC PTR. ; ENABLE KT. PC KTOFF DPSTART #10% 135212 164000 RO BGNSEG JSR 045612 4557 045632 012715 PC ,KTBKGD #1600,R3 EXIT MOV 164000 031306 045620 : ARE WE PRINTING? ; BRR IF NO ; NO. 135242 140000 031270 004737 004737 #PNT RO 1% #MNOKT BIS MOV MOV JSR 4552 045606 4553 045612 BIT BEQ PRINTF ASL ASL ASL ASL WIDSRA 006301 006301 006301 006301 050100 010077 012705 004737 XMMACA : TITLE. : DO SOFT INIT. : GOT KT & >28K? : YES. XMMACA: JSR MOV 1%: 031322 001600 2%2? 045540 4542 045542 4543 045546 PC,TSTGO PC,DPRESET KTFLG RFLAGS 2%%% 045524 4537 045530 22%3 045534 COMBEG JSR JSR TST BNE BIS JSR MOV : WAIT FOR DISPLAY STOP. : ENABLE KT. #DNOP, (RS) : REPLACE ''STOPN'' WITH "DNOP'* IN TEST LOC. #3170,aDPC PC,WAITF RS.R1 : CONTINUE THE DPU. : WAIT FOR DISPLAY STOP. ; R1 = EXPECTED DPC, AND - : DISABLE KT. | | USV11/vS11 == GRAPHIC SYS. DIAG MACRQ M1113 - wee TEST 12 4561 045656 AUX MEM MGT ACCESS (OVER 28k) 042701 (00005 135140 045672 012777 000006 045704 020102 4564 045672 045700 4565 045704 017704 BIC 170000 4562 045662 062701 4563 045666 017702 135130 045714 045734 4566 045734 020304 001410 004737 64%: 4567 045740 012715 173000 2223 045744 004737 031306 4570 045750 062705 000002 4571 045754 4572 045760 4572 045762 020527 001322 : 147774 4575 045770 001403 22;; 045776 000660 062703 000200 046000 004737 027646 046010 000137 045534 046014 004737 030072 4576 045772 4579 046000 046004 046006 4580 046020 Agg} 046024 103401 000402 004737 031306 & R1,R2 ; 1ST ITEM OK? R3,.R4 649 : 2ND ITEM OK? : YES. XRR,R4 BNE 65% HRDERR , XMMAE , XMMAC CMP BEQ JSR s NO. ; ENABLE KT. MOV JSR #STOPN, (RS) PC KTOFF : REPLACE "DNOP'‘ WITH "'STOPN''. ; DISABLE KT. ADD (MP #2,R5 RS, #147774 : ADVANCE LOC PTR. : DONE ENOUGH LOCS? ENDSEG 3% (MP R3,KTFLG ADD #200,R3 BEQ i 9% : PC ,KTON : NO. 9% COMEND 2% 1% JSR PC,LOOP 66%: JMP ik 6£7%: JSR PC,TSTEND B(S BR JSR EXIT 66% 67% PC,KTOFF TST : NO. ; €<CLCLLLLLLLLLLLLLLLLLLLLL< END SEGMENT. : YES. ALL BANKS DONE? : YES. : NO. ADVANCE BANK PTR. : REPEAT 'TIL LOOPER EXPIRES. : PRINT ERROR SUMMARY, I[F REQ'D. : DISABLE KkT11. : EXIT THIS TEST >3>>3>3333333>3>3>333>5>>3>>>> : 4583 : DISPLAY (ODE. 2232 4586 046030 222; 046034 CMP BNE 4574 045764 020337 003244 ;- #SELXRR,aDSR #5,R7 aDP( ,R2 aDSR R4 MOV , XMMAE IFERRX2 XMMACE 65%: 031270 #170000,R1 SEQ 0121 MOV RDDSRA 135134 E 10 PAGE 65-1 : = (R% ALREADY = EXPECTED XRR). : READ DPC INTO R2. : READ XRR INTO R4 . ADD MOV 045706 001002 045710 045712 29-JAN=-81 17:22 160001 173000 000001 10%: DJMS ,AUXSEG STOPN END.TEST 4589 046036 ""."'."t".tfit't"""t't.."'!.'."'.""..fi"."'!""l".""'.'i' :t ;e "' END TEST 12 '-.'t"tt't.t."t"'...Q"0"t"t""'."l'..'.'t".‘"t'."."t"".'t!. | USV11/yS11 == GRAPHIC SYS. DIAG MACRO M1113 I vee TEST 13 STOP INTERRUPT 6594 29- AN=-81 17:22 F PAGE 69 10 SEQ 0122 '3222222222222 2232232232222223 2322222332323 2322223223 2232222222222 BEGIN TEST 13 i . % = 2Rl STOP INTERRUPT :""'.'.."...t'.t.."".'...!Q'i"."'...'..."'..'t.."..".'..'.".. : (ITERATION COUNT = 40.) 4595 4596 4597 4598 : CHECK THE ACTION OF THE STOP INTERRUPT. * ALSO CHECKED IS THE ACTION OF THE CSR ‘FORCE STOP INTR'' BIT. : 004737 $1PTST: JSR 027702 19%: 4602 046114 4603 4604 046116 4605 046122 046122 4606 046130 4607 046136 4608 046142 4609 046146 4610 4611 4612 4613 046150 046154 046174 046200 4614 4615 4616 4617 4618 4619 4620 4621 046206 046214 046220 046224 046226 046232 046252 046256 046200 046256 4622 046264 4623 046272 4624 046276 4625 046304 4626 046306 4627 046312 4628 046332 4629 046336 046336 4630 046344 4631 046352 4632 046356 4633 046364 4634 046366 4635 046372 4636 046412 4637 066420 046420 REPEAT 40 TIMES AFTER QUICK PASS. 004737 012737 012777 004737 105737 001412 012701 004737 012737 012777 004737 105737 001412 012701 004737 012737 012777 004737 123727 001412 012701 004737 012737 012777 004737 123727 001412 012701 025402 177601 046742 027454 026107 026106 134674 1$: 046136 2%: 023422 177601 046746 027454 026107 026106 134614 3$: 4$: 023422 177600 046752 027454 026107 026106 134540 000377 5%: 177600 046760 027454 026107 ; ffi?ser gcLDPINIT MOV MOV c-o1774oo~xoxcxx~ 10KSTP, INTMASK #STP1,aDP( XCT “'STOP AND INT''. BEQ 2% 000377 PC,WAITF INTFLAG : MOV HRDERR #18,R1 NSI.INTERR ‘PC AT WAIT TIME. ZINT EXP'D, NOT REC'D. MOV #*0177400! IOKCKIN' IOKSTP, INTMASK TSTB INTFLAG JSR TSTB fg?ser MOV JSR 000053 134414 012737 177601 026106 ggfixxncux ;aaal : PRIME FLAG, EXPECT STP DID WE GET AN INTERRUPT? *BR IF INTERRUPT REC'D. *CHECK INTERNALS FOR INIT'ED STATE. : PRIME FLAG, EXPECT STP #STP2,aDP( PC,WAITF :XCT "'STOP'', ENABLE STILL SET. 48 *BR IF PC, 1 IRCHK *CHECK INTERNALS FOR INIT'ED STATE :DID WE GET AN INTERRUPT? INTERRUPT REC'D. MOV HRDERR #3$,R1 NSI.INTERR MOV #*0177400' IOKCKIN, INTMASK : PRIME FLAG, NO INTR. EXPECTED. #STP3,aDP( SXCT *'1 OFF' AND ''STOP"". fzfiser MOV JSR (MPB PC,WAITF INTFLAG,#%0377 SSET PC AT WAIT TIME. “INT EXP'D, NOT REC'D. :DID WE GET AN INTERRUPT? 6% : 7%: MOV MOV JSR #*0177400! 10KCKIN, INTMASK ;. PRIME FLAG, NO INTR. EXPECTED. #STP4 ,aDP( SXCT "1 ON'* AND “'STOP N''. PC,WAITF 8$: HRDERR 73¥ssr USI, INTERR ;INT REC'D, NOT EXP'D. g;gn(sx:unrcsn,aosn :SET BIT TO FORCE 046352 012777 ;INIT THE DPU SO WE CAN CHECK INTERNAL REGS. 63 #5%,R1 USI.,INTERR PC, 1 IRCHK 026106 134460 €K< LLLLLLLLLLLLLLLLC<<<< BEGIN SEGMENT, BEQ MOV HRDERR ffi?ssr 046272 023422 ;TITLE BGNSEG BEQ 046214 PC,TSTGO (MPB BEQ MOV MOV INTFLAG,#*0377 8$ #7% R ‘BR IF NO lNTERRUPI ;INT REC'D, NOT EXP'D. :CHECK INTERNALS FOR INIT'ED STATE ;:DID WE GET AN INTERRUPT? :BR IF NO INTERRUPT. #0177400' JOKCKIN! JOKSTP, INTMASK STOP INTR. ; PRIME FLAG, EXPECT STP VSV11/vS11 == GRAPHIC SYS, DIAG MACRO M1113 29- AN-B81 17:22 - ees TEST 13 STOP INTERRUPT G638 046426 012777 0466752 4639 0464346 004737 (27454 4660 046440 105737 026107 L6461 0464464 001412 4642 046446 012701 L6463 066452 13:37¢ 9%: MOV JSR 1S78 BEQ MOV 066434 LoLG 046472 066472 012737 177601 (026106 L64S 046500 012777 046760 134324 027454 10%: 11%: HRDERR INTSET MOV MOV JSR L6646 066506 004737 L6GB 046516 4649 046520 4650 046524 001412 012701 046506 4651 046544 4652 046552 4653 0646560 4654 046564 012777 000013 134262 105037 012777 026106 046742 134240 MOV SETPR] (LRB MOV 4,659 046616 012737 10000C 023056 MOV 4647 0646512 4655 046572 4656 046576 4657 046604 4658 046610 4660 046624 4661 046630 105737 026107 004737 012737 004737 012777 004737 12%: 027454 100001 023056 022410 000012 134276 022410 4663 046644 000240 4667 046654 004737 027454 4670 046666 012701 046644 4672 046712 46;3 046716 004737 023434 4664 046646 4665 046650 4666 0646652 L668 046660 4669 046664 4671 066672 000240 002240 0C -240 105737 1004612 L674 4675 046720 046720 046724 4676 046726 4677 066732 22;8 046736 030072 000137 046114 18%: L683 046746 4684 4685 046752 INTFLAG DID WE GET AN INTERRUPT? .BR IF YES == 0K GET PC “REPORT IF NOT ;CLEAR THE (SR LOCK OUT INTERRUPTS :DON'T EXPECT ANY INTERRUPTS. :XCT "'STOP AND INTR'' SETPR] NOP NOP NOP NOP #0'WRTCSR,aDSR #PR]07 INTMASK #STP1,aDPC #100000,GDDAT PC,FLGCHK :...AND VERIFY IT. : PRIME FLAG, NO INTR. EXPECTED. #%0177400!. I0KCKIN, INTMASK ALLOH INTERRUPTS #PR]00 JSR PC,WAITF MOV #13%,R1 ..AND SEE IF WE GET INTR INTFLAG 14% :DID WE GET AN INTERRUPT? ;0K IF NO INTR JSR ENDSEG USI,INTERR :SAY UNEXPECTED INTR CHECK INTERNALS FOR INIT'ED STATE PC,]1IRCNF : CCCCCCECLLLLLLCLCLL<<<<<<< END SEGMENT, LOOPTO 18% : REPEAT 'TIL LOOPER EXPIRES. HRDERR EX]T JMP PC,LO0P 18% PC,TSTEND ST 19% ;SAVE CPU PC 2 EXIT THIS TEST >3333333333533333333335>>> :JUMP TO START OF LOOP ; DISPLAY (ODE 164002 164002 164002 STP1: 173400 STP2: 172000 171000 172000 STP3: 223? 046760 164002 171400 173000 STP&: 4688 046766 ;WAIT FOR DONE PC.HAITK JSR zgg? 4682 046742 STP :INTR EXP'D, NOT REC'D ; PRIME FLAG, EXPECT STP #°0177400' JOKCKIN! JOKSTP, INTMSK N'* *'STOP "'I=-ON'’ JXCT #5TP4 ,aDPC JSR BCS 027646 004737 103404 004737 #9% R1 NSI,INTERR UAIT FOR DONE PC, WAITF SEXPECT PENDING INTR #BIT15!PINTRA, GDDAT ; CHECK FLAGS FOR IT. PC,FLGCHK “CLEAR THE INTERRUPT, #CLFLGS,.aDSR TSTR BM] 14%: INTFLAG 10% JXCT "'I=OFF'* AND STOP :DID WE GET AN [INTERRUPT? :BR IF YES == 0Ok :GET CPU PC FOR ERR REPORT JWAIT FOR DONC JSR MOV JSR MOV MOV 026107 P(,WAITF 12% #1718 ,R1 NSI,INTERR INTSET 13%: #STP3, aDP( SEQ 0123 BEQ MOV HRDERR JSR 046630 012737 177600 026106 4662 046636 TST8 10 9=1 PAGE 6 SYNC+1,STOP] :STOP AND INTERRUPT, ENABLE SHOULD HAVE. SYN(+1,STQP AGA N. SYNC+1,SIOFF ,STOP ENABLE OFF AND STOP (NO INT). SYNC+1,SION,STOPN BEEN SAVED. :ENABLE ON, STOP WlTHOUT INTERRUPT, END.TEST :....""'..'.'.'."".".".""..'..""t'.....""l.‘.'.t.".'."'..' 1 o= GRAPHMIT SYS, DIAG MACRO M1113 20 aN=81 17:22 . END TEST 12 STOP INTERRUPT » w0 PAGE 69- '..'..'..'..............'Q.'............'.'..'..'.....'.Q....".......'. SEQ 0124 Oe AN-B1 17:22 /¢5Y1 ee GRAPWIC SYS, DIAG MATRO M117'3 TEST Y% BT DB TIMEeDT INTERR L 1 10 PAGE 7O SEQ 0125 '-.......00......0'..'Q.0..........0..0....'.O..Q.Q..Q.......'I..Q....Q.. BEGIN TEST 14 i = DPy TIME-QUT [INTERRUPT .-00........QQ.....OQ..............Q......QQ'..Q...Q....."0'..'..'..'0.. : ot (ITERATION COUNT = 100.) . S SEND TwE DISPLAY TO A NON-EN]STENT MEMORY LOCATION OAND VERIFY TMAT ME RESPONDS wiTH A TIME-QUT INTERRUPT, W89 32 : REPEAT 100 TIMES AFTER QuiCk PASE, «e: <t “69% (47050 0-7050 004737 M TOTYST: (OMBEG _ JSR 0277352 JSR o 0676 0067%7 (26076 BNSEG 498 047080 699 067062 012777 14007 13374 67’8? o 4702 047070 012777 000012 «708% 067076 012777 000013 706 0677106 13%37% 1337%0 4705 067112 012777 4707 047122 L7008 067124 005300 NLVQ 4706 067120 005000 L7008 0e7 &7 6 715 7160 012737 4718 067200 &720 067212 4721 067216 108: 118: 106003 Q04787 022440 Q06737 02267 WSO;? 006737 023056 02252¢ 072 1 > TRk, : DO SOFT INIT. © CCCCCCLCLLCLCLCLCLLCCCCc<<<<< BEGIN SEGMENT. :SET RELOC TO 600000, SINCE THE... #56 TMRR 140000, aDSR "0, MOy 8CLFLGS,3DSR @) JRTCSR, A0SR mOy #°0177600 . 1OK(K IN! JOKERR , INTMASK (LR R0 D eee SHOULD GET TIME-QUT. L] T3] INTFLAG 2% : DID WE GET PROPER [NTERRUPT? ; BR IF VES MOy DEC SNE ERR #160000 ,80P( &0 178 :...170 PAGE IS REALLY 760000. CLEAR THE FLAGS & PENDING INTERUPTS. ;(LEAR THME ERROR (ODE. .. ;MCT DISPLAY START, 208, NTO, INTERR "0y GDDAT T1> SELCSR, SBITIS <1eB]IT 023056 -, #100000.GDDAT 13322 MOy #0 ' JRI(SR SDSR _5R ISR PC, (RO P, M s 023056 % .Sk ISR LR ISR ‘72§ &7222 006737 (22626 7226 Q04737 Q22566 72 ENDSEG 4.;24. 0672%2 P(, (SR PCFLGOm GDDATY P B : PRIME FLAG, EXPECT ERR ;17T DIDN®T, GEYT ERROR PC... NO TIME=-QUT INTERRUPT, MOy WeDERR 067720 717 062172 012737 1 ;SET UP GDDAT W/ ERROR CODE. ;(HECK FOR THE ERFOR (NXM) -SAY FLAGS SHOULD HAVE NO PENDING INTRS J...(HECK FOR 7, (LEAR ERROR (ODE JENPECTY Q°S FOR... ;.. «H=BASE I ... (=BASE I...AND AUX MMGT, ; €L Ccececcc<<< END SEGMENT, & 0672% 0672640 A —— 1 T2 1 T L7146 067180 o719 067206 133772 105737 026107 001412 711 067134 012707 :;1‘ 0467140 676 067166 160000 PCDPRESET ° ", INTSET 0672106 012737 177604 026106 PC,ISTGO :;27 067262 004737 103707 027646 P ,L00P i ) ", #SETWRA 0, 05R EEl 4729 067264 Q012777 Q00016 4730 067252 012777 000000 4782 047260 004737 030072 7% SR &S : 133562 133%% S8: ; MOy TM0y S b | #5ELDSR @DSR o070, 30"V PCISTEND l...TIL LOOPER ENPIRES, DINSURE MAIN-SEG RELOC IS O... :SELECT REAL DSR i.. AND RESTORE vECTOR, PAGE 40*'? 17:22 an-81 2%« WTTTR WACRC DIAG SYS, SGTTEGTT ee GRAPWIC DRy TINg-QUT INTERRPT 1 see TEST T4 END,TEST 7% AT ;..........O..‘..Q......Q............Q........Q.....Q...Q.....'.Q....... - e e e END TEST 4 -'...O...............................................................‘.. SEQ 0126 VSV11/vS11 == GRAPHIC SYS. DIAG MACRD M1113 29- AN-81 17:22 eee TEST 15 ERROR CODES 473 BEGIN TEST 15 T T I I ; 47%7 473%8 4739 4740 4741 4742 4743 4744 4745 4746 4747 4748 4749 4750 4751 4752 4753 4754 4755 4756 047430 4757 047430 4758 047434 047434 047442 4759 047446 047446 047450 047452 047472 4760 047472 4761 4762 4763 4764 047474 4765 047476 047476 4766 047502 047502 4767 047510 047510 4768 047516 I SEQ 0127 a2 220 A R R AR R R AR AR A AR AR e YTz . K 10 PAGE 71 A bl ERROR (CODES = sz zzzzzass 2222 22 02 A R A A 2 A A RO A AR 0 00 00t (ITERATION COUNT = 10.) GENERATE ALL ERROR CODES NOT TESTED ELSEWHERE IN THE PROGRAM (HECK FOR THE RETURN AND POSSIBLE TO GENERATE WITH SOFTWARE. OF THE APPROPRIATE ERROR CODE. 004737 004737 RCODS: 027702 026074 COMBEG JSR JSR 3 TINE, PC,TSTGO PC.DPRESET : DO SOFT INIT. ; TEST MPE = MEMORY PROTECTION (MAIN SEGMENT). BGNSEG INITDP JSR 004737 025402 012777 170015 133456 012737 177604 026106 012777 052264 027454 026107 133440 WTDSRA 114003 012777 017702 000003 133366 PC,DPINIT #170000, MPM 10%: 133372 64%: ; HRDERR ENDSEG GO DO SOFT INIT, CHECK THE STATE. LIMIT MAIN SEG TO 4K ; PRIME FLAG, EXPECT ERR #ECMPE1 #ECMPE 1 ,aDPC PC,UAITF ; FORCE MPE ON MAIN SEGMENT : 3; START THE DPU. WAIT FOR DISPLAY STOP. #.-12,R1 NTO, INTERR 3; 3; NO. SO GET PC FOR ERROR REPORT, ... AND REPORT THE PROBLEM. #SELCSR,aDSR 3 READ CSR INTO R2 . R1,R2 -+ 0K? ECE.CSRER, : NO. aDSR,R2 ECE,CSRER 020102 001410 3 : 01700003‘C17‘SETMPM aDSR ERR #°0177400! IOKCKIN! IOKERR, INTMASK INTFLAG 108 812701 047372 012701 ; €CCLCLLLLLLLLLLLLLLLLLLL<< BEGIN SEGMENT. 64% 3 DID WE GET THE EXPECTED ERROR INTERRUPT? :; BR IF YES. :s YES. ; €<<LLLLLLLLLLLLLLLLLLLL<<< END SEGMENT., TEST MPE - MEMORY PROTECTION (AUXILIARY SEGMENT). BGNSEG INITDP JSR 004737 025402 012777 170017 133324 WTDSRA MOV 012737 177604 026106 MOV INTSET ; PC,DPINIT €KCLLLLLLLLLLLLLLLLL<<<<<< BEGIN SEGMENT . : GO DO SOFT INIT, CHECK THE STATE. #170000, XPM c1rooooé~c17'ssrxpn aDSR ERR : PRIME FLAG, EXPECT ERR #°0177400! IOKCKIN! IOKERR, INTMASK : FORCE MPE ON AUXILIARY SEGMENT. DPSTART #ECMPE? R VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 29-JAN-81 17:22 PAGE 31-1 10 sex TEST 15 012777 004737 4772 047562 4773 047562 4774 047562 4775 047566 047566 047574 4776 047600 047600 047602 047604 047624 4777 047624 4778 047626 4779 047632 4780 4,781 4782 4783 4784 047634 4785 047636 642 4787 047650 047650 4788 047656 047656 047664 4789 047670 4790 047674 4791 047676 4792 047702 4793 047722 4794 047722 4795 047726 047726 047734 4796 047740 047740 047742 047744 047764 4797 047764 052270 027454 026107 MOV JSR TSTB 133306 BEQ 047524 000003 133234 WAIT FOR DISPLAY STOP. PC,WAITF DID WE GET THE EXPECTED ERROR INTERRUPT? INTFLAG 118 BR IF YES. NO. SO GET PC FOR ERROR REPORT, . AND REPORT THE PROBLEM. #MPE ,R1 CSR,R2 READ (SR INTO R2 . #SCLCSR,aDSR 133240 aDSR,R2 ECE,CSRER BEQ 65%: 005737 001132 START THE DPU. #ECMPE2 ,aDPC NTO,INTERR 11%: 114003 HRDERR ENDSEG TST 002502 BNE R1,R2 65% ECE,CSRER, DPUMOD 3% ; OK? ; YES. : NO. ; €CCLLLLLLLLLLLLLLLLLLLLLL< END SEGMENT. ; ARE WE IN DPU-MODE ONLY? ; BR IF YES == CAN'T DO READBACK ; TO CHECK FOR WRITE-PROTECT VIOLATIONS. : TEST MPE - MEMCRY WRITE PROTECTION (MAIN SEGMENT). 004737 025402 012777 001015 BGNSEG INITDP JSR 012737 177604 026106 012777 052302 027454 026107 133146 012701 WTDSRA 133164 114003 012777 017702 000003 133074 #B1T9 ,MPM ; GO DO SOFT INIT, CHECK THE STATE. ; SET MAIN-SEG WRITE PROTECT #BIT9&‘C17'SETMPM aDSR ERR : PRIME FLAG, EXPECT ERR #%0177400! IOKCKIN! IOKERR, INTMASK FORCE MPE BY TRYING DMA READBACK #ECMPE3 #ECMPE3,aDPC PC.UAITF #.-12,R1 NTO,INTERR 047664 012701 PC,DPINIT INTFLAG 12% 12%: 8EQ 66%: HRDERR . ' l WAIT FOR DISPLAY STOP. DID WE GET THE EXPECTED ERROR INTERRUPT? BR IF YES. ; NO. SO GET PC FOR ERROR REPORT, : ... AND REPORT THE PROBLEM. . . ; SET EXPECTED ERROR CODE 'MPE'’ #SELCSR,aDSR ; READ (SR INTO R2 . aDSR,R2 ECE,CSRER 020102 001410 ° START THE DPU. . #MPE ,R1 CSR,R2 133160 4798 4799 4800 4801 4802 047766 4803 047770 047770 4804 047774 047774 SEQ 0128 ERROR CODES 0K? R1,R2 66% ECE.CSRER, YES. No. ENDSEG : TEST MPE - MEMORY WRITE PROTECTION (AUXILIARY SEGMENT). 004737 025402 012777 001017 BGNSEG INITDP JSR 133032 WTDSRA MOV PC,DPINIT ; GO DO SOFT INIT, CHECK THE STATE. : SET AUX-SEG WRITE PROTECT aDSR #BIT9R~C17!SETXPM, #B1T9,XPM . . << r vss TEST 15 4805 050002 , ERROR CODES 0002 012737 177604 026106 050010 050016 012777 004737 052316 027454 133014 4808 050026 4809 050030 4810 050034 4811 050054 105737 001412 012701 050016 012701 114003 050060 050066 012777 017702 000003 132742 050072 050074 050076 020102 001410 4813 050060 4814 050072 INTSET 13%: #MPE R1 SET EXPECTED ERROR CODE ‘MPE'’ #SELCSR,aDSR READ CSR INTO R2 . R1,R2 67% 0K? aDSR,R2 ECE,CSRER 67%: 050116 SEQ 0129 ERR CSR,R2 132746 4815 C50116 M 10 PAGE 71-2 ; PRIME FLAG, EXPECT ERR #*0177400! IOKCKIN! TOKERR, INTMASK READBACK DMA TRYING BY ; FORCE MPE DPSTART #ECMPES #ECMPE4 ,aDPC START THE DPU. MOV : WAIT FOR DISPLAY STOP. PC,WAITF JSR : DID WE GET THE EXPECTED ERROR INTERRUPT? TSTB INTFLAG ; BR IF YES. 138 BEQ #.-12,R1 ; NO. SO GET PC FOR ERROR REPORT, MOV .. AND REPORT THE PROBLEM. NTO, INTERR HRDERR MOV 026107 4812 050054 ‘ 29-JAN-81 17:22 BEQ HRDERR ECE,CSRER, YES. m. ENDSEG 4816 4817 4818 050120 4819 4820 4821 050120 : TEST RSVDOP - RESERVED OPCODE (ILLEGAL INSTRUCTION. 004737 025402 012737 177604 026106 012777 004737 105737 001412 012701 052332 027454 026107 132670 012701 124003 012777 017702 000003 132616 050142 148: 132622 020102 001410 68%: 4834 ,R1 #RSVDOP MOV RDDSRA CSR,R2 #SELCSR,aDSR MOV aDSR,R2 MOV IFERROR ECE,CSRER R1,R2 CMP 68% BEQ HRDERR ECE.CSRER, ENDSEG ; READ CSR INTO R2 . : 0K? = WE S ; NO. ; <<CLLLLLLLLLLLLLLLLLLLLL<L<< END SEGMENT. : TEST RSVDOP - ODD Y COORDINATE (BIT O SET) 4835 4836 4837 050244 4838 050246 050246 4839 050252 4840 050260 050260 5 €CCLLLLLLLLLLLLLLLLLLL<<<< BEGIN SEGMENT. INITDP ; GO DO SOFT INIT, CHECK THE STATE. PC DPINIT JSR INTSET ;: PRIME FLAG, EXPECT ERR 0‘0177400'10KCKIN‘10KERR INTMASK MOV ;START DPU ON ILLEGAL INSTRUCTION. DPSTART #ECRSV1 #ECRSV1,aDPC START THE DPU. MoV WAIT FOR DISPLAY STOP. PC,WAITF JSR DID WE GET THE EXPECTED ERROR INTERRUPT? INTFLAG TSTB BR IF YES. 14% BEQ #.-12 R NO. SO GET PC FOR ERROR REPORT, MOV ... AND REPORT THE PROBLEM. HRDERR NTO,INTERR BGNSEG ffl 4822 050122 050122 4823 050126 050126 4824 050134 050134 050142 4825 050146 4826 050152 4827 050154 4828 050160 4829 050200 4,830 050200 4831 050204 050204 050212 4832 050216 050216 050220 050222 050242 4833 050242 3%: 004737 012777 025402 000113 132554 012737 177604 026106 BGNSEG INITDP JSR MOV INTSET [ 0)" ; €<KLLLLLLLLLLLLLLLLLLLL<<< BEGIN SEGMENT. ; GO DO SOFT INIT, CHECK THE STATE. PC,DPINIT ;ENABLE RSVD-OP ERROR CHECKING. gggECHK!URTCSR.QDSR IOKERR, INTMASK 7400! JOKCKIN! #*017 ; PRIME FLAG, EXPECT ERR » < VSVI1/VST] == GRAPHIC SYS. DIAG MACRO M1113 VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 29-JAN-81 17:22 «=+ TEST 15 ERROR CODES 4841 050266 050266 012777 (52336 050274 004737 027454 DPSTART #ECARSVZ2 #ECRSVZ2 ,aDPC MOV PC,WAITF JSR 132536 1STB 4842 050300 105737 026107 4843 050304 001412 4844 050306 012701 4845 050312 050274 4847 050332 4848 050336 012701 124103 050344 017702 050350 020102 4846 050332 050336 012777 000003 4849 050350 132464 N 10 PAGE 71-3 15%: ,R1 DOP ! ENECHK #RSV (SR.R2 MOV aDSR,R2 CMP 69%: 050374 2%2? 050374 : BR IF YES. MOV RDDSRA #.-12.R1 MOV HRDERR NTO, INTERR BEQ 050354 : DID WE GET THE EXPECTED ERROR INTERRUPT? 15% #SELCSR,alsR IFERROR ECE,CSRER 050352 001410 ;START DPU ON ODD Y VALUE. : START THE DPU. : WAIT FOR DISPLAY STOP. BEQ MOV 132470 INTFLAG SEQ 0130 HRDERR R1,R2 69% ECE,CSRER, : NO. SO GET PC FOR ERROR REPORT, : ... AND REPORT THE PROBLEM. : READ CSR INTO R2 . ; OK? YES. s NO. 5 €CLCLLLLLLLLLLLLLLLLLLLLLL END SEGMENT. ENDSEG : TEST RSVDOP = ODD X VALUE (BIT 0 SET) 2%2% 5 €CLCLLLLLLLLLLLLLLLLLLLLL< BEGIN SEGMENT. 4854 050376 BGNSEG 050400 004737 025402 4856 050404 012777 000113 132422 JSR MOV 050412 012737 177604 026106 MOV : GO DO SOFT INIT, CHECK THE STATE. PC,DPINIT :ENABLE RSVD-0OP ERROR CHECKING. #ENECHK 'WRTCSR,aDSR ERR : PRIME FLAG, EXPECT ERR #20177400! IOKCKIN' IOKERR, INTMASK TSTB INTFLAG INITDP 4855 050400 4857 050412 4858 050420 050420 050426 012777 004737 4860 050436 001412 4859 050432 052346 027454 050426 4864 050464 4865 050470 012701 , 124103 050476 4866 050502 050502 050504 050506 050526 017702 132332 4863 050464 050470 012777 000003 BEQ 16%: 020102 001410 70%: 004737 025402 050536 012737 177604 012777 004737 052356 027454 4874 050544 050544 050552 4875 050556 : BR IF YES. : NO. SO GET PC FOR ERROR REPORT, : ... AND REPORT THE PROBLEM. #.-12.R1 NTO, INTERR MOV RDDSRA ,R1 OP ' ENECHK #RSVD (CSR,R2 #SELCSR,aDSR aDSR,R2 MOV IFERROR ECE,CSRER R1.R2 CMP 70% BEQ HRDERR ECE,CSRER, ; READ CSR INTO R2 . : 0K? z YES. ; NO. ; €<CLLLLLLLLLLLLLLLLLLLLL<LK< END SEGMENT. ENDSEG 5 €CLLCLLLLLLLLLLLLLLLLLLLLL< BEGIN SEGMENT. BGNSEG 4871 050530 4,873 050536 : DID WE GET THE EXPECTED ERROR INTERRUPT? : TEST SEQERR - SEQUENCE ERROR (DJMS FROM SUBROUTINE) 2393 050532 16% :START DPU ON ODD X VALUE. : START THE DPU. : WAIT FOR DISPLAY STOP. MOV HRDERR MOV 132336 zggg 050526 4872 050532 DPSTART #ECRSV3 #ECRSV3,aDPC MOV PC,WAITF JSR 132404 105737 0261CG7 012701 4861 050440 4862 050444 INTSET 105737 026107 INITDP : GO DO SOFT INIT, CHECK THE STATE. JSR PC,DPINIT 026106 MOV #20177400' IOKCKIN! IOKERR, INTMASK 132260 MOV JSR #ECSEQ1,aDPC PC,WAITF INTSET ERR DPSTART #ECSEQ1 TSiB INTFLAG : START THE DPU. : WAIT FOR DISPLAY STOP. : PRIME FLAG, EXPECT ERR ; DID WE GET THE EXPECTED ERROR INTERRUPT? B 1 | VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 29-JAN-81 17:22 PAGE 71-4 «++ TEST 15 ERROR CODES 4876 050562 001412 4877 050564 012701 4878 050570 (50552 4880 050610 4881 050614 012701 120003 050622 4882 050626 017702 4879 050610 17%: A 71%: 4890 050670 050670 012777 052374 050676 004737 027454 4894 050714 18%: 120003 050752 050754 050756 #20177400!' IOKCKIN'! IOKERR, INTMASK MOV JSR #ECSEQZ2,aDPC PC,WAITF MOV RDDSRA #SEQERR,R1 (SR.R2 CMP BEQ 72%: HRDERR : DID WE GET THE EXPECTED ERROR INTERRUPT? : BR IF YES. : NO. SO GET PC FOR ERROR REPORT, : ... AND REPORT THE PROBLEM. : READ CSR INTO R2 . R1,R2 72% ; 0K? : YES. ECE,CSRER, : FRIME FLAG, EXPECT ERR : START THE DPU. : WAIT FOR DISPLAY STOP. #SELCSR,aDSR aDSR,R2 MOV IFERROR ECE,CSRER 020102 001410 050776 INTFLAG 18% #.-12.R1 HRDERR NTO,INTERR MOV 132062 2383 050776 ERR MOV TSTB BEQ MOV 050740 012777 000003 132066 017702 : 0K? R1,R2 : YES. 71% ; NO. ECE,CSRER, ; €LLLLLLLLLLLLLLLLLLLLLLL<< END SEGMENT. ENDSEG DPSTART W#ECSEQZ2 132134 4891 050702 105737 026107 4892 050706 001412 4893 050710 012701 050676 050746 4898 050752 : READ CSR INTO R2 . CMP BEQ HRDERR INTSET 050662 012737 177604 026106 012701 #SELCSR,aDSR ; €CCLLLLLLLLLLLLLLLLLLLLLL< BEGIN SEGMENT. BGNSEG INITDP : GO DO SOFT INIT, CHECK THE STATE. PC.DPINIT JSR 4,889 050662 4895 050734 #SEQERR,R1 (SR,R2 : BR IF VYES. : NO. SO GET PC FOR ERROR REPORT, : ... AND REPORT THE PROBLEM. : TEST SEQERR = SEQUENCE ERROR (CHARACTER DATA IN CHAR. SUBROUTINE) 4,887 050654 4888 050656 CS0656 004737 025402 4,896 050734 4897 050740 MOV RDDSRA aDSR,R2 MOV IFERROR ECE,CSRER 132206 ‘ 2%%2 17% MOV 050614 012777 000003 132212 050626 020102 050630 001410 050632 050652 4332 050652 BEQ #.-12,R1 MOV HRDERR NTO,INTERR SEQ 0131 s NO. ; €LCCLLLLLLLLLLLLLLLLLLLLL< END SEGMENT. ENDSEG : TEST SEQERR = SEQUENCE ERROR (DJMS iIN CHARACTER SUBROUTINE) 4901 238% BGNSEG 4904 051000 INITDP 4905 051002 JSR INTSET ERR #20177400' IOKCKIN' ICKERR, INTMASK MOV 051002 004737 025402 051006 012737 177604 026106 4906 051006 4907 051014 051014 051022 012777 052442 004737 027454 4908 051026 105737 026107 4909 051032 001412 4910 051034 012701 051022 4911 051040 4912 051060 ; €<CCLLLLLLLLLLLLLLLLLLLL<< BEGIN SEGMENT. : GO DO SOFT INIT, CHECK THE STATE. PC,DPINIT DPSTART #ECSEQ3 132010 MOV JSR #ECSEQ3,aDPC PC,WAITF BEQ 19% TSTB 19%: INTFLAG #.-12.R1 MOV HRDERR NTO,INTERR : START THE DPU. : WAIT FOR DISPLAY STOP. : PRIME FLAG, EXPECT ERR : DID WE GET THE EXPECTED ERROR INTERRUPT? : BR IF YES. : NO. SO GET PC FOR ERROR REPORT, . AND REPORT THE PROBLEM. : VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 29-JAN-81 17:22 PAGE $1°S 1" wev TEST 15 4913 051060 4914 051064 0 4915 051076 SEQ 0132 ERROR CODES 012701 120003 012777 017702 000003 131736 MOV RDDSRA MOV MOV 131742 020102 001410 73%: 4916 4917 4918 4919 4920 #SEQERR,R1 CSR,R2 #SELCSR,aDSR aDSR,R2 CSRER ECE, IFERROR R1,R2 CMP 73% BEQ HRDERR ECE,CSRER, : READ CSR INTO R2 . s OK? s Y835 ; NO. ; €LCLLLCLLLLLLLLLLLLLLLLLLL< END SEGMENT. ENDSEG ; TEST SEQERR - SEQUENCE ERROR (BIT=-MAP-0 IN SUBROUTINE) BGNSEG INITDP JSR 051126 4923 051132 051132 004737 025402 012737 177604 026106 051140 012777 004737 052474 027454 026107 131664 4924 051140 051146 4925 051152 4926 051156 4927 051160 4928 051164 4929 051204 4930 051204 4931 051210 051210 051216 4932 051222 051222 051224 051226 051246 4933 051246 4937 4938 051250 4939 051252 105737 001412 012701 012701 120003 012777 017702 000003 131612 20%: 131616 74%: HRDERR ; PRIME FLAG, EXPECT ERR #ECSEQ4 ,aDPC ; INTFLAG : DID WE GET THE EXPECTED ERROR INTERRUPT? 208 #.-12 ,R1 NTO, INTERR START THE DPU. ; WAIT FOR DISPLAY STOP. ; BR IF YES. : NO. SO GET PC FOR ERROR REPORT, : ... AND REPORT THE PROBLEM. #SEQERR,R1 CSR,R2 #SELCSR,aDSR ; READ CSR INTO R2 . 74$% ECE.CSRER, : YES. ; NO. ; 0K? ; €<LCLLLLLLLLLLLLLLLLLLLLL< END SEGMENT. ENDSEG ; TEST SEQERR - SEQUENCE ERROR (BIT=-MAP-1 IN SUBROUTINE) BGNSEG INITDP 012737 177604 026106 051264 051272 4942 051276 4943 051302 4944 051304 4945 051310 012777 004737 052520 027454 026107 131540 —— MOV RDDSRA MOV MOV BEQ 025402 051334 MOV HRDERR ; GO DO SOFT INIT, CHECK THE STATE. :Eg;é;:OOSIOKCKIN!IOKERR.INTMASK aDSR,R2 IFERROR ECE,CSRER R1,R2 CMP 020102 001410 004737 4946 051330 4947 051330 4948 051334 ggéDPINIT PC,WAITF 051146 051252 4940 051256 051256 4941 051264 INTSET 5 €€CLLCLLLLLLLLLLLLLLLLLLL<< BEGIN SEGMENT. 105737 001412 012701 JSR INTSET MOV DPSTART MOV JSR TSTB BEQ MOV 051272 012701 120003 012777 000003 21%: 131472 HRDERR MOV RDDSRA MOV ; <€CLLLLLLLLLLLLLLLLLLLLLL< BEGIN SEGMENT. Eg§DPI~IT ; GO DO SOFT INIT, CHECK THE STATE. :Eg;gggOO!IOKCKIN!IOKERR,INTMASK #ECSEQS ,aDPC PC,WAITF INTFLAG 218 #.-12,R1 NTO, INTERR ; ; PRIME FLAG, EXPECT ERR START THE DPU. ; WAIT FOR DISPLAY STOP. : DID WE GET THE EXPECTED ERROR INTERRUPT? ; BR IF YES. : NO. SO GET PC FOR ERROR REPORT, . AND REPORT THE PROBLEM. : #SEQERR,R1 CSR,R2 #SELCSR,aDSR ; READ CSR INTO R . i | 4921 051124 4922 051126 - | | | ! | i | VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 «ee TEST 15 051342 4949 051346 ERROR CODES 017702 020102 001410 75%: 4951 4952 4953 4954 ; 4959 051422 4960 051426 4961 051430 4962 051434 4963 051454 4964 051454 4965 051460 051460 051466 4966 051472 051472 051474 051476 051516 012737 177604 026106 012777 004737 052542 027454 026107 131414 012777 017702 * NO. 758 SEQUENCE ERROR (DMA READBACK FROM SUBROUTINE) 5 €KCLLLLLLLLLLLLLLLLLLLLLL< BEGIN SEGMENT. ?géDPINXT 131346 020102 001410 76%: 4967 051516 ; PRIME FLAG, EXPECT ERR #ECSEQ6,aDPC : START THE DPU. INTFLAG : DID WE GET THE EXPECTED ERROR INTERRUPT? PC,WAITF MOV RDDSRA MOV MOV ; GO DO SOFT INIT, CHECK THE STATE. #~0177400! IOKCKIN! IOKERR, INTMASK #ECSEQ6 HRDERR * YES. ; €€CLLLLLLLLLLLLLLLLLLLLL<< END SEGMENT. ENDSEG INTSET 22%: 120003 131342 ECE,CSRER, TEST SEQERR = 051416 000003 : 0K? BEQ HRDERR JSR 025402 012701 SEQ 0133 aDSR,R2 IFERROR ECE,CSRER R1,R2 CMP BGNSEG INITDP 004737 105737 001412 012701 D1 PAGE 71-6 MOV 131466 0 4950 051372 4955 051374 4956 051376 051376 4957 051402 051402 4958 051410 051410 051416 29-JAN-81 17:22 22% #.-12.R1 NTO,INTERR : WAIT FOR DISPLAY STOP. : BR IF YES. : NO. SO GET PC FOR ERROR REPORT, : ... AND REPORT THE PROBLEM. #SEQERR,R1 CSR,R2 #SELCSR,aDSR aDSR,R2 IFERROR ECE,CSRER R1,R2 (MP 76% BEQ HRDERR ECE,CSRER, : READ CSR INTO R2 . ; 0K? : YES. s NO. 5 €<CCLLLLLLLLLLLLLLLLLLLLL< END SEGMENT. ENDSEG 4968 4969 4970 4971 ; 4972 051520 4973 051522 051522 4974 051526 051526 4975 051534 051534 051542 4976 051546 4977 051552 4978 051554 4979 051560 4980 051600 4981 051600 4982 051604 0 4983 051616 051616 004737 025402 012737 177604 026106 012777 004737 052572 027454 026107 131270 105737 001412 012701 012701 012777 017702 020102 TEST SEQERR = BGNSEG INITDP JSR INTSET 120003 000003 131216 131222 EgfiDPINIT ; GO DO SOFT INIT, CHECK THE STATE. zgg;gg§00!IOKCKIN!IOKERR.INTMASK MOV #ECSEQ7,aDPC TSTB INTFLAG : PRIME FLAG, EXPECT ERR : START THE DPU. PC,WAITF : WAIT FOR DISPLAY STOP. BEQ MOV HRDERR 23% #.-12.R1 NTO, INTERR : BR IF YES. : NO. SO GET PC FOR ERROR REPORT, ... AND REPORT THE PROBLEM. : MOV #SEQERR,R1 MOV MOV #SELCSR,aDSR JSR 23%: ; CLCLLLLLLLLLLLLLLLLLLLLLL< BEGIN SEGMENT. MOV DPSTART 051542 SEQUENCE ERROR (ILLEGAL DMA READBACK RESTART) RDDSRA CSR.R2 aDSR,R? IFERROR ECE,CSRER R1,R2 MP : DID WE GET THE EXPECTED ERROR INTERRUPT? : READ CSR INTO R2 . : 0K? wes TEST 15 051620 051622 051642 ERROR CODES BEQ 00140 77%: 4984 051642 4985 ; 4986 4987 4988 051644 4989 051646 051646 4990 051652 4991 051660 025402 012737 177604 026106 012777 052620 027454 026107 131144 051736 4999 051742 051742 051744 051746 051766 5000 051766 5001 5002 5003 5004 051770 5005 051772 051772 5006 051776 5007 052002 5008 052010 5009 052014 5010 052020 052020 052026 5011 052032 052032 052034 052036 052056 5012 052056 5013 5014 5015 5016 052060 5017 052062 052062 5018 052066 5019 052074 ———— 140003 012777 017702 000003 131072 012777 017702 <<LLLLLLLLLLLLLLLLLLLL<<<< BEGIN SEGMENT., . . - BEQ MOV 24%: 131076 025402 026106 040000 027454 150003 131026 000003 131006 131002 ; . HRDERR MOV RDDSRA . BR IF YES. ; NO. SO GET PC FOR ERROR REPORT, . AND REPORT THE PROBLEM. 24$% . L4 #.-12,R1 NTO,INTERR . . . #SYNCTO,R1 CSR,.R2 MOV #SELCSR,aDSR CMP BEQ R1,R2 aDSR,R2 MOV IFERROR ECE,CSRER ; 004737 012701 TIMEOUT FROM IMAGE MEMORY. L4 78%: 105037 012777 €€C<LLLLLLLLLLLLLLLLLL<<<< END SEGMENT. PC,DPINIT ; GO DO SOFT INIT, CHECK THE STATE. RR #%0177400! JOKCKIN! IOKERR, INTMASK MOV ; PRIME FLAG, EXPECT ERR DPSTART #ECSTO #ECSTO,aDPC START THE DPU. MOV PC,WAITF WAIT FOR DISPLAY STOP. JSR TSTB DID WE GET THE EXPECTED ERROR INTERRUPT? INTFLAG INTSET 020102 001410 004737 ; TEST SYNCTO - SYNC 05166¢€ 012701 3 VES. 77% ECE.CSRER, ENDSEG BGNSEG INITDP JSR 004737 012701 HRDERR SEQ 0134 m ~ EN PAGE 717 29-JAN-81 17:22 P | VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M11i3 HRDERR ; 0K? s YES. 78% ECE,CSRER, ; ENDSEG READ CSR INTO R2 . ; NOI €<<CLLLLLLLLLLLLLLLLLLL<L< END SEGMENT. TEST DRDYTO = DATA READY TIMEOUT ON CURSOR READBACK BGNSEG INITDP JSR CLRB MOV JSR MOV RDDSRA MOV MOov 020102 001410 79%: PC,DPINIT GO DO SOFT INIT, CHECK THE STATE. #GTJSSW,aDXR PC,WAITF #DRDYTO,R1 WAIT FOR READY INTMASK SAY READ PENDING COORDS (BUT THERE ARE NONE) SET EXPECTED ERROR CODE 'DRDYTQ'" INTO R1 GET THE CSR READ CSR INTO RZ2 . CSR.R2 #SELCSR,aDSR aDSR,R2 IFERROR ECE,CSRER CMP R1,R2 79% BEQ HRDERR ECE,CSRER, 0K? YES. ~0. ENDSEG ; TEST DAVTO - DATA AVAILABLE TIMEOUT PIXEL READBACK. 004737 012777 004737 025402 040000 027454 130744 BGNSEG INITDP JSR MOV JSR ; €<<CCLLLLLLLLLLLLLLLLLL<<< BEGIN SEGMENT, PC,DPINIT #40000,aDYR PC,WAITF : GO DO SOFT INIT, CHECK THE STATE. ; PROTECT ALL MEMORYS. . . | ySV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 o Vi e o w wex TEST 15 ~nN i ERROR CODES 012777 040400 027454 012701 C 5032 052210 012777 017702 130732 130720 MOV JSR MOV 130706 MOV 130672 MOV 130624 JSR JSR 2%: 144003 000003 29-JAN-81 17:22 130630 JSR BCS DFERR MOV RDDSRA MOV MOV F1 PAGE 71-8 PC,WAITF #61400,aDYR PC,WAITF 3 : : : : PC,WAITF : #40400,aDYR PC,WAITF #41000,aDYR #0,aDXR 2% PR3H #DAVTO,R1 CSR,R2 #SELCSR,aDSR aDSR,R2 IFERROR ECE,CSRER R1,R2 80% 020102 001410 80%: 5033 C52234 SEQ 0135 CMP BEQ HRDERR ECE,CSRER, TRY PIXEL READ. ; BRANCH IF UNSUCCESSFUL. : PIXEL READBACK HUNG UP. : READ CSR INTO R2 . ; 0K? : YES. s NO. ; CLCLLLLLLLLLLLLLLLLLLLLLLL END SEGMENT. ENDSEG COMEND JSR B(CS BR : 1% 5035 052236 052236 052242 004737 052244 000402 052246 000137 047342 81%: JMP 1% 052252 5036 052256 5037 5038 004737 030072 82%: JSR EXIT : PRINT ERROR SUMMARY, IF REQ'D. PC,TSTEND TEST >>33>333>>333333333>>>>>>>>> THIS s EXIT TST 5041 052262 000002 5039 5040 5042 5043 5044 5045 5046 052264 5047 052266 5048 5049 052270 50 . 052274 5051 052276 5052 052300 5053 5054 052302 5055 052304 5056 052314 5057 5058 052316 5059 052320 5060 052330 5061 5062 052332 5063 052334 103401 027646 : REPEAT 'TIL LOOPER EXPIRES. ggiLOOP 82% * INTERUPT SERVICE FOR THIS TEST. ECISVC: RTI ; RETURN FROM INTERUPT. : DISPLAY FILES. ECMPE1: DNOP 164000 173000 160001 173000 164000 173000 162000 000001 173000 162000 000001 173000 161777 173000 STOPN ECMPE2: 2#33&1S!AUXSEG 052277 1%: 000001 000001 000001 000001 DNOP STOPN ECMPE3: IMREAD siéfi&'16oooo ECMPE4: [MREAD .1.,1,160000!AUXSEG STOPN ECRSV1: 161777 STOPN : MPE - MEMORY PROTECTION ERROR. * ... ON MAIN SEGMENT : CALL AUXILIARY SEGMENT :SHOULD GET MPE ERROR rnv DMA READBACK .TO WRITE PROTECTED MAIN SEG. TRY DMA READBACK . .TO WRITE=-PROTECTED AUX SEG. ; RSVDOP - RESERVED OPCODE, OPERATION. 1 VSV11/yS11 == GRAPHIC SYS. DIAG MACRO M1113 ~wes TEST 15 ERROR CODES 5064 5065 052336 5069 052344 G 1 PAGE 71-9 SEQ 0136 000000 000001 ECRSVZ: APNT,0,1 ; RSVDOP = ODD Y VALUE. 5068 052346 5869 052354 5070 5071 052356 5072 052362 5073 052364 5074 052370 5075 052372 00001 060000 ECRSV3: APNT,1,0 ; RSVDOP = ODD X VALUE. ECSEQT: DJMS,1$ ; SEQERR = SEQUENCE ERROR. 5077 052374 5078 052402 5079 052406 5080 052410 5081 052412 5082 052414 5083 052416 5084 052436 5085 052440 000000 052414 0C0000 000000 5087 052442 5088 052450 5089 052454 5090 052456 5091 052460 5092 052462 5093 052466 5094 052470 5095 052472 000000 052462 000000 506 052364 o V0 NO VW OOVONOWNMEWN=O YA AT VA YW A YA AL v B -t YA Ny i 052520 052526 052532 052534 052536 2%: 000000 0 052560 0 0 0 0 2%: 000000 052512 000000 2%: 173000 114000 000000 052534 000000 0'0‘0’0'00000'0 ; SEQERR. ;DATA AS 1ST WORD == STILL IN CHAR MODE. STOPN DJMS, 3% STOPN STOPN STOPN SEQERR. ;DJMS IN CHAR SUBROUTINE. ; SEQERR. STOPN BMO4 2% STOPN ; SEQERR. STOPN BM14 2% STOPN ECSEQ6: APNT,0,0 DUMS.1% 1%: ; 8HAR!ALL DJMS,1$ 2%: 000000 STOPN 0 ECSEQS: APNT,0,0 1%: 000000 052556 ;DJMS FROM SUBROUTINE. SHAR!ALL ECSEQ4: CLRMEM APNT,0,0 DIMS,1$ 1%: 052514 STOPN STOPN ECSEQ3: APNT,0,0 SET(B,Z2% 3%: 170140 1140C0 160001 173000 134000 DJMS, 2% DPOP STOPN 2%: 052470 STOPN ECSEQ2: APNT,0,0 SET(B,2% 1%: 0 52540 0 52542 0 STOPN 1%: 5086 5097 052474 5098 052476 5099 052504 5100 052510 052512 052514 052516 STOPN 1%: 052370 5076 5 29-JAN-81 17:22 STOPN IMREAD _— i ECSQ/B STOPN . SEQERR. ;:DMA READBACK FROM SUBROUTINE. 1§ ERROR CODES 114000 162001 CO0000 000000 ECSEQ7: APNT,0,0 1 ECSQ7B 000001 052614 052620 ! 101 IMREAD STOPN 173000 176000 176400 177000 1776400 114000 173000 SEQ 0137 STOPN 173000 162107 052614 H 1 PAGE 71-10 ;ILLEGAL DMA READBACK RESTART, IMREAD ! 1 ECSQ7B: .BLkW ECSTO: 040000 000000 2 PROTEC!CHO C ! CH} PROTE PROTEC!CH2 PROTEC!CH3 APNT,1!0,0 STOPN [T S WWWWWWWIWN N NN NN BN AR A LS R NE NN AR NN A A YUY AN S ————— R Y TEST AN eee 29-JAN-81 17:22 P J/SV11/vS11 == GRAPHIC SYS. DIAG MACRO M1113 END.TEST .'.tt'!""'.fi..'.’..'""t'.t.'..'t'.'.."t'.'.'.'."."'.Q".'..."".' .'Q e ." END TEST 15 ""'l"'t."'l"t'.'flt"""..t"'t'..i'.'t...Q!"'t""t".".t'.'t".' VSV11/y511 == GRAPMIC SYS. DIAG MACRO M1113 29-JAN=-81 17:22 PAGE ;2 eee TEST 16 n SEQ 0138 ADDRESS RELOCATE 5140 :'.""'.'."'Q"""Q""'.....Q"'Q."'.'Q.'QQQ.""QQ'."'..Q"I'.'.' :® BEGIN TEST 16 - ADDRESS RELOCATE :-.."'.t..."...'Q....'""'.'..."""'Q.Q..'..'Q.'..QQ.'..'Q"QQ..Q'QQ : (ITERATION COUNT = 20.) 3 5141 : TEST ALL COMBINATIONS OF DPC AND RELOCATE FACTOR : WHERE DPC + REL = RELT1, A LOCATION WITHIN THE PROGRAM : TEST RELIES OF THE FACT THAT (DPC + REL) > 18 BITS WiLL 5142 51e3 5144 : WRAP AROUND IN THE FINAL DPC. : REPEAT 20 TIMES AFTER QUICK PASS. 5145 g}zg 5148 052714 052714 004737 027702 RELTST: COMBEG PC,TSTGO MOV #SELDSR,aDSR MOV BIC §152 052744 042703 176000 gxg‘ 052750 052703 172000 JSR JSR MOV 052720 004737 026074 5149 (527264 (012737 053140 022300 012777 000000 130074 5150 0527 5151 052740 017703 130070 SRELTT,RS MRELT1+2,R2 #SETMRR!Q,RS MOV MOV MOV g}zg 052770 1%: BGNSEG 5163 053002 004737 5165 053012 001003 5167 053020 001410 5164 053006 027702 5166 253014 5168 053022 5169 053042 027703 130020 004737 026756 S SI ? g}; Slg 053050 020527 177774 g}n 053054 2%: i%: 001414 5175 053056 062705 000020 5176 053062 162702 000100 5177 053066 162704 000100 5178 053072 100336 5179 053074 005705 5180 053076 100734 5181 053100 052705 73 g;g 053104 €184 053106 053106 053112 004737 103720 027646 48: :...AND STATUS. :SET INITIAL DPC :SET INITIAL EXPECTED DPC :SET INITIAL RELOCATION (O ; €CCLLCLCLLLLLLLLLLLLLLLC<<< BEGIN SEGMENT. ;SET 1ST (NEXT) REL VALUE... ee.XCT == RELOCATE TO "RELTT" cTMP aDPC ,R2 (MP aDSR,R3 :CHECK DPC = R4 (INITIAL) + 2 :...AND DSR = STOP+PIXEL DATA, HRDERR JSR RELF ,PCSERR PC ,RELEAS ;RELOCATE FAILURE. :IN CASE HE "“HUNG'' SOMEWHERE. TMpP BEG :MAX RELOCATION DONE? RS,#SETMRR'! 177760 ;ALL DONE [F SO. A3 ADD SUB SuB #MIT4L,RS #100,R2 #100,R4 BEQ ENDSEG BPL 1ST BM] 8]S RR 140000 : DO SOFT INIT. : SET ERROR EXTENSION ADDRESS. RS.,aDRR R4 ,aDPC BNE 130014 z TINtL. MOV MOV JSR 027454 #~C1777.R3 #STOP,RS 5%: 130036 130030 aDSR,R3 BIS 5155 052754 012704 053166 5156 052760 012702 053170 2}2; 052764 012705 000014 5161 052772 010577 5162 052776 010477 PC ,DPRESET #208 EXTA LOOPTO JSR BCS PC,WAITF 2% 3 ; CLECCLLLLLLLLLLLLLLLCCLC<< END SEGMENT., 1% RS 18 #140000,RS 18 S$ P(,LO0P 5% :BUMP RELOCATION BY 1 (32 WORDS) :REDUCE EXPECTED... ... AND INITIAL DPC BY 32 WORDS) :CONTINUE °*TIL WE UNDERFLOW :SEE IF ALREADY FORCED HIGH BITS ;JUST CONTINUE IF YES :FORCE HIGH RELOCATION B]ITS le.oTHEN CONT INUE ; REPEAT °TIL LOOPER EXPIRES. — - —e - P S— 17:22 PAGE ; aN-81 26~ M1113 MACRO DIAG SYS, GRAPMIC o= " ‘AHVVS ! eee SS RELOCATE ADDRE TEST1 g' osgn« o1 777 0000146 oS 8 05;1 gj‘gg oS 0127 00!.737 028872 s;g? gwi OS§1£0 000207 ;;g‘ 053164 5195 5196 053166 $197 053170 5198 053172 173000 173000 MOy 127712 MOV 127704 JSR Exlt RR IS 0 #SETMRR'0,@DSR ; INSURE #SELDSR A0SR D PC,TSTEN st :...AND DSR IS SELECTED : EXIT THIS TEST >3333333333333>3333>>33>>> 1 ON ERROR, SHMOW RELOCATE PARAMETERS. 208: R&,RS PRINTX #RELFX, PC RTS : EXTENSION SHOWS RELOC FACTORS. :DISPLAY FILE FOR RELOCATE TEST RELTY: STOPN STOPN END.TEST '....'I...........".Q""."..............."'....'."'.....'...'Q.'.. N I g1 - . - END TEST 16 "'.....Q'Q.I..'."""."...'.Q.'........."...'..'.".'...."Q."'... L e —— s —c— ' SEQ 0139 L o K_11 | VSV11/yS11 == GRAPHIC SYS. DIAG MACRO M1113 29-JAN-81 17:22 PAGE 73 . wee TEST 17 SEQ 0140 CHARA(CTERS 5200 .-'Qt't't"t'Q.".QtQ"Q""QQt."".'tttt.."'t"'.ttt.t'ttt't't'tlt't.. . BEGIN TEST 17 S . = (HARA(CTERS :.'.'t..."'.""'t."'.'."..'.'..."'..tt..'.'t"..'t.."t"tl"l'."' ; (ITERATION COUNT = 20.) : USE SETCB, CHAR, AND DPOP AS A SUBROUTINE CALL AND RETURN. : USE ALL ASCII CODES (HI AND LO BYTES) ALTERING THE BASE : ADDRESS SUCH THAT EACH CHAR/BASE COMBINATION YIELDS THE ; SAME SUBROUTINE ADDRESS. : ¥§Z{FYDLS£ DPC AT EACH SUBROUTINE ENTRY AND AGAIN AFTER - . L : DO THE TEST FOR BOTH MAIN AND AUXILIARY SEGMENT SPECIFIED IN C-BASE. ; REPEAT 20 TIMES AFTER A QUICK PASS. * NOTE THAT AN ERROR WHERE CHAR CODE = -1 IMPLIES THAT * CHAR MODE DIDN'T TERMINATE WITH THE FINAL DPOP. * IN EVERY OTHER CASE, EXP DPC = SETCB + 2(CC) + 4. : ALSO, ANY ERROR IMPLIES THAT WE'VE LOST CONTROL AND ; CAN'T CONTINUE. : CHAR ARRAY SIZE = 67. WORDS (OPCODE + 128 CHAR + DJMP,RETURN). 5220 053240 053240 053244 5221 5222 053250 5223 053256 5224 053264 5225 053270 5226 053274 5227 053276 5228 053302 5229 053304 5230 053306 5231 053312 5232 053314 5233 053320 5234 5235 053324 5236 053330 5237 053334 5238 5239 053340 5240 053342 5241 053350 5242 053356 5243 5244 053360 5245 053364 5246 053370 004737 004737 027702 026074 012737 012737 013701 053754 053702 003240 053750 c HRTST: (53732 022290 017703 042703 052703 127504 176000 172000 68 : 160000 013737 013737 005001 053732 053732 013702 042702 052702 053732 177776 053760 ; VITLE. ; DO SOFT INIT. MOV MOV #CT.SUB,CHSEG #20% EXTA ;GET INITIAL BASE ADDRESS, MAIN SEGMENT. ; SET ERROR EXTENSION ADDRESS. MOVB FREE ,R1 R1,CT.ASC R2 #CHAR, (R1)+ R2,(Ri)+ MOV #DJMP, (R1) + MOV MOV 000200 053752 PC,TSTGO PC.DPRESET CLR 100000 012721 012721 COMBEG JSR JSR MOV INC CMP BNE MOV MOV 053744 053762 5%: R2 R2,#128. 6% #CT.RET, (R1)+ aDSR,R3 ; BUFFER ADDRESS => R1. ; SET 'DJMP FREE'' CODE. ;1ST CHAR CODE => R2 ;SET CHAR OPCODE... :...AND 128 CHARACTERS... :...AND THE RETURN LINK. . BIC BIS #-C1777 .R3 #STOP,R3 BGNSEG MOV MOV ; €CLCLLLLLLLLLLLLLLLLLLLLL<< BEGIN SEGMENT. CHSEG,CT.ASC=4 ;INIT INITIAL BASE ADDRESS. :INIT BASE ADDRESS IN CHAR SUBTRN. CHSEG,CT.BAS sSET EXP DSR FOR ERROR. CLR R1 :R1 = CURRENT CHAR. MOV BIC BIS CHSEG,R2 #*CAUXSEG,R2 #CT.SUB+4 ,R2 ;GET SEGMENT SELECTOR ;...FOR DPC READBACK J...AND SET EXPECTED DPC. < e, o ———e . MACRO M1113 29-JAN-81 17:22 PAGE %3-1 DIAG SYS. GRAPHIC == 11 || YSV11/vS CHARACTERS wex TEST 17 n 5247 053374 5248 053402 5249 053404 5250 053412 5251 053416 5252 053422 5253 053424 5254 053444 5255 053450 5256 053452 5257 053454 5258 053460 5259 053462 5260 053466 5261 053470 5262 053474 5263 053500 5264 053504 5265 053512 5266 053516 5267 053524 5268 053530 5269 053536 5270 053542 5271 5272 053544 5273 053546 5274 053550 5275 053556 5276 053560 5077 053564 5278 053566 5279 053572 5280 053576 5281 5282 053600 5283 053602 5284 053610 5285 053612 5286 053620 5287 053622 5288 053630 053630 053634 5289 053636 5290 053642 5291 053644 5292 053650 52 5295 053672 5296 053672 5297 053676 5298 012777 053734 000403 012777 000001 004737 027702 001410 027454 127430 127420 1%: 127410 2%: 013746 003240 005701 100003 000405 15%: 062716 000004 060116 042716 000001 012637 023056 004737 022360 004737 022410 004737 022440 012737 012737 013737 004737 16%: 053762 022624 020127 001307 012701 012702 000702 000002 004737 004737 004737 030072 .CHECK PCSAVE. 053762 BR 1% JSR CKLOOP PC,CBCHK : ;LOOP ON ERROR. TST R1 ENDSEG R1,4128. 1% #-1,R1 #CT.RET+2,R2 #AUXSEG, CHSEG :EXIT IF SO. NO DECR BASE ADDRESS. INCR CHAR COUNT. :128 CHARS DONE ?? ;LOOP IF NOT. :YES, SET TERMINATE FLAG.. 2 _ADJUST EXPECTED DPC. ..AND LOOP TO XCT FINAL "DPOP. BIS #AUXSEG, CHSEG :DID WE DO AUX SEGMENT? 2dal :BR IF YES. BR BIC 5% #AUXSEG, CHSEG :LOOP BACK AFTER SETTING SEG BIT. DID AUX, SO CLEAR THE BIT JSR BCS PC,LOOP 5% BNE 40% LOOPTO 5% :NO. SO DO IT NOW Q] : REPEAT TIL LOOPER EXPIRES. DPUMOD : ARE WE IN DPU-MODE ONLY? JSR PC,DPRESET : DO SOFT INIT. & CHECK STATE MOV JSR #CHDISP,aDPC PC,WAITF : START THE DPU. : WAIT FOR DISPLAY STOP. JSR EXIT PC,TSTEND TST 2 EXIT THIS TEST >33333333333335333>3>>>>>> DPSTART #CHDISP - :HAVE WE TERMINATED ?? 31% TST 127154 :CHECK THE CHARACTER BASE ; €<LLLLLLLLLLLLLLLLLLLLLLLKL END SEGMENT. BIT BNE 31%: : : CMP BNE MOV MOV 3%: PC,FLGCHK PC,CSRCHK JSR 027646 027514 027514 2adal 3% #2,CT.BAS R1 053732 053766 027454 #4,(SP) R1,(SP) #1,(SP) (SP)+,GDDAT PC,PCSCHK .THEN GO CHECK IT. ; "ADD OFFSET FOR FIRST TRIP, : AND THE CHARACTER, ;MAKE EVEN, 2 CHARS/UORD EXPECTED DATA FOR PCSAVE BMI SuUB INC 000001 012777 004737 16% MOV 053732 026074 ADD ADD BIC MOV JSR #203, (SP) 023056 000001 004737 B8R R1 15% :CHAR MODE FAILS. CT.BAS,GDDAT 052737 001013 TST BPL CHRF ,PCSERR l... AND CSR 177777 053754 002502 GET START OF MAIN DISPLAY FILE, ;FINAL DPOP? 22al IF NOT. AHEAD ;SKIP SAY PCSAVE IS EMPTY, WITH FINAL ADDRESS. MOV JSR 000200 005737 FREE,=(SP) HRDERR #SELCSR,GDDAT 053732 004737 103641 :CHECK DPC = R2 ERROR IF IT'S WRONG. PC,WAITF MOV 000001 000647 042737 abDP(C ,R2 2% MOV 023056 032737 001004 CMP BEQ JSR .NOU CHECK FOR ''CHAR'' OPCODE IN FLAGS 005701 100414 162737 005201 #1,aDPC :START, XCT 1S7T CHAR. ;SKIP OVER RE SUME RESUHE XCI NEXT CHAR. #CT,aDPC #CHAR ,GDDAT 100000 023056 000003 MOV SKP3 MOV ADD 062716 000203 SEQ 0141 JSR JSR PC ,PAUSE1 PC ,PAUSE1 : BR=YES. * ON ERROR, SHOW BASE ADDRESS AND CURRENT CHAR CODE. wxx TEST 17 5300 5301 053702 5302 053730 5303 5304 053732 5305 5306 5307 5308 053734 5309 053742 5310 053746 5311 053750 5312 053752 5313 5314 053754 5315 053756 5316 5317 053760 5318 053762 5319 C53764 2 5323 053766 5324 053776 5325 054000 5326 054004 5327 054012 5328 054014 5329 5330 054034 5331 054042 5332 054044 CHARACTERS 20%: 000207 tHSEG: 053754 SEQ 0142 PRINTX gEHRFx.CT.BAS.R1 : ERROR EXTENSION. CT.SUB :CHARACTER BASE CONTROL, WITH SEGMENT SELECT. RTS DISPLAY CODE FOR CHAR MODE TEST. 164000 152000 160000 164000 053754 164000 CT: DNOP ,DNOP , DNOP SET(B,CT.SUB DJMP ;INITIAL BASE ADDR = CT.SUB. XFER PC TO THE CHAR.. .DATA ARRAY. 000000 CT.ASC: O CT.RET: STOPN FINAL "*DPOP'* SHOULD RETURN HERE 053756 CT.SUB: .+2 152000 053754 CT.BAS: CT.SuB SET(B ;SUBROUTINE ENTRY PONNTER. :STOP HERE IF CHAR ADDRESSES.. ;...COME OUT RIGHT. :ON RESUME, SET NEW BASE ADDR.. DPOP ;...AND DPOP TO NEXT CHAR. 173000 STOPN 173000 165000 ; DISPLAY FILE FOR CHARACTER DISPLAY: CHDISP: ?EURT!CHO.RDURT!CH1,RDURT!CHZ.RDURT!CH3 176474 177074 110146 001000 001500 040 041 042 114000 100000 001000 001400 APNT,1000,1400 061 001000 001360 APNT,1000,1300 176074 170140 152000 117774 100000 060 5333 054056 5334 054064 5335 054066 114000 100000 072 073 074 5337 054076 5338 054104 5339 054106 5340 5341 054124 5342 054132 5343 054134 5344 5345 054152 5346 054160 5347 054162 5348 5349 5350 054170 5351 054176 5352 054200 5353 5354 054220 5355 054226 5356 054230 114000 100000 001000 001200 101 102 103 114000 100000 116 001000 001100 117 120 114000 001000 001000 133 134 135 117774 100000 040 001000 000602 041 042 114000 100000 001000 000502 061 062 5 336 M1 PAGE 73-2 100000 060 RMEM SETCB, APNT'ALL 1000 1500 CHAR ASCII .EVEN CHAR LASCII CHAR JASCII .EVEN 2 VASAR ()% ,=./? 70123456789/ /::<=>7% / APNT,1000,1200 CHAR JASCI1 .EVEN /ABCDEFGHIJKLM / APNT,1000,1100 CHAR JASCII .EVEN /NOPQRSTUVWXYZ / APNT, 1000, 1000 CHAR ASCIT .EVEN /[N~ / APNT !ALL,1000,602 CHAR LASCIT .EVEN ' (O x+ ,=./? 72 VWS%R APNT,1000,502 CHAR LASCII 70123456789/ * < VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 29-JAN-81 17:22 N1 VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 29-JAN-81 17:22 PAGE 73-3 CHARACTERS vs+ TEST 17 5357 054242 114000 001000 000402 5358 054250 5359 054252 5360 5361 054262 5362 054270 gggz 054272 100000 072 073 074 114000 001000 000302 101 102 103 100000 APNT,1000,402 CHAR ASCID .EVEN APNT,1000,302 CHAR .éegal gggg 054320 100000 116 117 CHAR .ésgkl 120 5370 054344 5371 054346 5372 gg;z 054354 133 134 /NOPQRSTUVWXYZ / APNT, 1000, 102 5369 054336 114000 001000 000102 100000 /ABCDEFGHIJKLM / APNT, 1000, 202 5365 054310 114000 001000 000202 5366 054316 /:;<3>? / CHAR LASCIT 135 .EVEN STOPN 173000 /0NI*_ 7 END.TEST 5375 054356 :titt'tttttttttttt't*t't'itt'Qt*Qtt.tittt'tittttti.*ti.'tifit*"t"i'tt.i . % . o .-* END TEST 17 :t"ttttttttt'ttitttt'tttti*'ttt'tttfitt'titttttttttt't"*t'tt"tt*ttttt' SEQ 0143 ' V! r | VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 wee TEST 18 ABSOLUTE POINTS 29-JAN-81 17:22 B 12 PAGE 74 SEQ 0144 'Q't"..lt"tt.'Q"Qttt""t"lt'.QQQQ'Q.'QQ"Q"'Q!.'tt..""t.'tt""' 5377 - % ‘e - % BEGIN TEST 18 =~ ABSOLUTE POINTS : l"'tt't".ttttttt't'"""'Qt't'tt'...tt."ttt't'.'t"'.tttt"tQ'Qtt" = 10.) . (ITERATION COUNT 5378 3 : VERIFY THAT WE CAN EXECUTE ABSOLUTE POINTS FOR THE FULL 5379 : RANGE OF X/Y. ggg? * PLOT ALL X POINTS, HOLDING Y AT 0. 5382 X AT 0. : PLOT ALL Y POINTS, HOLDING 5383 * PLOT ALL POINTS ON THE 45 (X = Y). §§3§ E REPEAT EACH POINT 10 TIMES AFTER QUICK PASS. gggg sTITLE PC,TSTGO APTST: JSR 5388 (054430 004737 027702 SET ERROR EXTENSION ADDRESS. * ,EXTA #208 MoV 022300 054740 5389 054434 012737 * BLAST LUT (IF THERE IS ONE). PC,LUMIN JSR ggg? 054442 004737 027054 §392 054446 5393 054452 g%gg 054454 005737 001002 004737 TST 002502 026650 . +6 PC,CLRRW : SKIP NEXT IF DPU-ONLY. > CLEAR AND SET R/W MODE. #-1,TEMP] LOOPK , TEMP2 R4 RS ABPX :USE AS XFER SWITCH. SAVE A COPY OF THE LOOPER. *EXPECTED X ADDRESS. expscreo Y ADDRESS. X SINIT ABPY 5396 054460 012737 5397 054466 013737 5398 054474 005004 5399 054476 005005 5400 054500 005037 177777 027700 055010 MoV MOV CLR CLR CLR 005037 055012 CLR 003232 003234 8%: BIS 5401 054504 053737 003064 055010 228% 054512 gzgg 054516 5406 054520 5407 054526 5408 054532 5409 054536 012777 004737 027704 001003 5410 054540 027705 055002 027454 126300 001410 054566 054572 004737 103752 027646 5416 054576 5417 054604 5418 054610 22}3 054612 013737 005737 003027 001413 003234 003232 5421 054614 5422 054620 062704 062737 000002 000002 gz}g 054574 5423 054626 020427 001776 ..AND Y AT 0. ; €CLLCLLLLLLLLLLLLLLLLLLLLL< BEGIN SEGMENT. 9%: MoV JSR CMP #ABP ,aDP( PC,WAITF aDXR R4 :START DISPLAY... “WAIT FOR DONE FLAG :CHECK DXR= R4. CMP aDYR,RS ..AND DYR= RS. HRDERR LOOPTO APF ,XYERR 9% 2%: 3$: 055010 ....INTENSIFY IS OPTIONAL... BGNSEG BNE 027700 OPTI1 ,ABPX 1%: 126274 5411 054544 5412 054546 5413 054566 126304 DPUMOD BNE JSR BEQ JSR BCS ENDSEG 2% 3$ PC,LOOP 9% :ABS POINT FAILS. * REPEAT...TIL LOOPER EXPIRES. ; <C<LLLLLLLLLLLLLLLLLLLLLL<< END SEGMENT. MOV TST BGT BEQ TEMP? LOOPK TEMP1 5% 48 ;RESET LOOPER. STEST XFER SWITCH. SINCR BOTH X AND Y. SINCR Y ONLY. ADD ADD CMP #2 R4 #2 ,ABPX R4 , AMAXX INCR X ONLY. PRUEE—— €12 VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 29-JAN-81 17:22 PAGE 74~1 wev TEST 18 5424 054632 5425 054634 5426 054640 5427 5428 054642 5429 054646 5430 054654 5631 054660 5432 054662 5433 054666 5434 5435 054670 5436 054674 5437 054676 5438 054702 5439 054704 5440 054710 5441 054714 5442 5443 054716 5444 054722 5445 054724 5446 054730 5447 054734 101731 005237 000715 5454 5455 5456 055002 5457 055004 5458 055010 5459 055012 5460 055014 5461 BLOS INC 003232 000002 000002 001776 BR 055012 06 060037 060005 060037 020527 101700 005737 001002 004737 004737 000002 ADD 4$: . 5% #2,RS SINCR Y ONLY. 8$ 1% TEMP1 53 :...AND LOOP *TIL DONE. “THEN, BUMP SWITCH... *...AND REINIT. MOV ADD #2,R0 RO R4 SINCR X AND Y. “INCR X'S... ADD RO,RS ;... AND Y'S... CMP RS AMAXY RS ,AMAXY RO ,ABPX BLOS 002502 108 : 027514 030072 11$: *...AND REINIT. BLOS INC BR ADD 055012 001776 :...AND LOOP *"TIL DONE. “THEN, BUMP SWITCH... ADD ADD 055010 1% TEMP1 . ABPY #2 CMP 003232 5448 5449 5450 5451 054740 5452 055000 5453 SEQ 0145 ABSOLUTE POINTS ST BNE RO.ABPY 1% DPUMOD 11$ :...AND LOOP °TIL DONE. JSR PC,PAUSE1 : PAUSE IF VIDEO ON. EXIT TST : EXIT THIS TEST 3>3333>3>>3>3>33333>3333>33>33>> JSR PC.TSTEND * ON ERROR, SHOW ORIGIN AND DELTAS. 508: 000207 PRINTX RTS #LONGX,ABP+2,ABP+4 ABPX,ABPY ; EXTENSION. PC DISPLAY FILE FOR APNT TEST. 117774 000000 000000 000000 173000 000000 ABP : APNT 'ALL ABPX : 0' ABPY : 0 STOPN END.TEST 5462 055016 ."*t""tfi.t'ttt"t"'i'tt"'fi.Qit.fi.t.tttfit.""ttl’t"t""t"".'t't" . " :t END TEST 18 T e e "t"'.'fifi'tt.t'*ttt""'"""Q‘t"tt.*tt'.fl"""""'Q"t"'t"t't’."! . rlosiss R A - VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 e+ TEST 19 LONG VECTORS 5664 29-JAN-81 17:22 D 12 PAGE 75 SEQ 0146 .t.t""'.Q'".t..."""""t"'.'t."'Q"Q"QQ"".Q'.'.".""'..t" I BEGIN TEST 19 o 1T =~ LONG VECTORS Q'ttt".'t'."'fi'.tt""t"fitt.'t.'.'t""t..'...l.."'.t't.'t"'t't't' ; (ITERATION COUNT = 10.) 5465 5475 €55072 5476 055100 5478 055104 5495 055162 004737 012737 004737 027702 055406 027054 005737 001002 004737 002502 005037 005037 055452 055454 001776 012702 012703 013737 M eeScvavevenenenen, ' 022300 012777 004737 027704 001003 027705 001410 5505 055250 5506 055256 5507 055264 5508 055266 5509 055274 5510 055302 013737 033727 001411 5504 ,,,,, 004737 103752 162737 062737 060204 MAX(X) TO HALF (XY) TO MAX(Y). THEN REPEAT FROM MAX,MAX USING NEGATIVE DELTAS. [THIS MAY BE WORST CASE !!!] REPEAT EACH VECTOR 10 TIMES AFTER QUICK PASS. VTST 026650 055460 003064 055462 177776 000002 027700 055450 027454 JSR MOV JSR PC,TSTGO #208 ,EXTA PC,LUMIN TST DPUMOD Lv+2 ;INIT ORIGIN AT 0,0. MOV #MAXX ,R4 INIT EXP X AT MAX... MOV BIS MOV MOV R4 ,LVX OPTI,LVX R5,LVY #-2 ,R2 INIT X LENGTH.. ..OPTIONAL INT. .AND Y LENGTH INIT EXP X. CLR CLR MOV MOV 003234 125632 5 €LCLCLLLLLLLLLLLLLLLLLLLL<< BEGIN SEGMENT. #LV,aDPC ;START "EM UP. (MP aDXR,R4 ;CHECK DXR = R4... CMP aDYR,RS = RS. ;...AND DYR HRDERR LVF ,XYERR ;LONG VECTOR FAILS. JSR PC,LOOP 3%: JSR BEQ LCOPTO B(CS ENDSEG 000002 000002 LAND Y INCR'S. SAVE A COPY OF LOOPK. MOV 2%: 055460 055462 #2 ,R3 LOOPK , TEMP2 9%: BNE 027700 001777 .AND Y AT 0. RS BGNSEG 125622 003234 055460 LV+4 1%: 125626 027646 ; BLAST THE LUT. ; SKIP NEXT IF DPU-ONLY. ; CLEAR AND SET R/W MODE. CLR 055460 sTITLE * SET ERROR EXTENSION ADDRESS. +6 PC,CLRRW BNE JSR 5493 055170 5495 055172 5496 055200 5497 055204 5498 055210 5499 055212 5500 055216 5501 055220 5502 055240 055240 055244 5503 055246 GENERATE LONG VECTORS FROM 0,0 VARYING THE LENGTH FROM PC,WAITF 2% 3% 9% 9% ; REPEAT... 5 €CLCCLLLLLLLLLLLLLLLLLLL<< END SEGMENT. MOV BIT TEMP2,LOOPK LVX, #1777 JRESET LOOPER. ADD ADD R2.R&4 :SET NEXT EXP X... BEQ SuB 4% #2,LVX #2,LVY BR IF DELTA X = 0. OTHERUISE DECR DX. .AND INCR DY. 'S | g —— S — S — - - - c— | WUSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 | wex TEST 19 | LONG VECTORS 060305 000730 ? E 5511 055304 gg}% 055306 | ! 2 §514 055310 033727 055460 §515 055316 001022 5516 055320 012737 001776 020000 020000 055462 §517 055326 5518 055334 012737 052737 001776 021776 §521 055352 012705 001776 §519 055342 5520 055350 5522 055356 012737 005004 005402 §523 055360 005403 5526 055364 §527 055370 005737 001002 4%: 055452 5529 055376 gg%? £55402 004737 004737 gggg 055446 LVX,AMXY 10% AMAXX ,LV+2 :ARE WE IN THE NEG CYCLE ?? :WE'RE DONE IF SO. ;OTHERWISE, REINIT ORIGIN... MOV CLR #MXY'0,LVY R4 JINIT Y LENGTH AT =0. JINIT EXP X = 0... NEG AMAXY ,LV+4 AMXY 'MAXX ,LVX #MAXY RS 027514 030072 11$: TST BNE R2 R3 1% DPUMOD 11$ +...AT MAX.MAX. sINIT X LENGTH AT =-MAX. :...AND Y = MAX... :...REVERSE EXP INCR'S. :AND GO 'ROUN. JSR PC,PAUSE1 : PAUSE IF VIDEO ON. EXIT TST 2 EXIT THIS TEST >333333333333333333>>>>>>> JSR PC.TSTEND * ON ERROR, SHOW ORIGIN AND DELTAS. 208 : 000207 §2§§ 5539 055450 114000 5540 055452 5541 055456 5542 055460 §543 (055462 ggzg 055464 BIT BNE MOV B8R gggg 5534 055406 J...AND EXP V., ;...AND CONTINUE. MOV 10%: SEC 0147 R3,R5 1% NEG 002502 E 12 PAGE 75-1 ADD BR MOV BIS 055454 055460 gg%g 055362 000702 5528 055372 29-JAN=81 17:22 000000 113774 000000 000000 173000 000000 PRINTX #LONGX,LV+2,LV+4,LVX,LVY ; EXTENSION. RTS PC * DISPLAY FILE FOR LONG VECTOR TEST. APNT Lv: LVX: LVY: 0,0 LVEC'ALL 0 0 STOPN END.TEST 546 055466 "'.tt.'l'tt'tt"'t'ti'.'t"t.'t.t-.Q.l.!.".'."t'.""".""""""" o . & . END TEST 19 i - :'t"'.tttt"tfi't'.t.'t't't"Q"'t".'.""..Q't"'t"t.'.t"..'t"""' " | eee TEST 20 RELATIVE POINTS 5548 F 12 29- AN-81 17:22 2222222322222 223 22 PAGE 70 2 2 2 22 2 BEGIN TEST 20 . . " 1222232322323 22332222 < | VSV11/vS11 == GRAPHIC SYS. DIAG MACRO M1113 SEQ 0148 2222 = R AR RS R R R R 2R Rt iRl l ) 2222232222 2222 2222222022222 2Rl lll ] RELATIVE POINTS 2222222222 (ITERATION COUNT = 10.) ; VERIFY THAT WE CAN EXECUTE RELATIVE POINTS FROM 1000, 1000 ; FOR THE FULL RANGE OF X/Y (=76 TO +76). ; PLOT ALL X POINTS, HOLDING Y AT =76. ; PLOT ALL Y POINTS, HOLDING X AT =76. ; PLOT ALL POINTS ON THE 45 (X = Y). ; REPEAT EACH POINT 10 TIMES AFTER QUICK PASS. 5559 €55540 5560 055544 5561 055552 004737 012737 004737 027702 056104 027054 5563 055556 5564 055562 005737 001002 004737 002502 012737 013737 012704 010405 012737 053737 177777 027700 003232 003234 037576 003064 056152 056152 5565 055564 5566 5567 055570 5568 055576 5569 055604 5570 055610 5571 055612 5572 055620 5573 5574 055626 5575 5576 055630 5577 055636 5578 055642 5579 055646 5580 055650 5581 055654 5582 055656 5583 055676 055676 055702 5584 055704 5585 5586 055706 5587 055714 5588 055720 5589 055722 5590 5591 055724 5592 055730 5593 055732 5594 055736 022300 R p TIST: 012777 004737 027704 001003 027705 001410 056142 027454 004737 103752 027646 013737 005737 003036 001420 003234 003232 062704 010400 004737 042737 000002 PC,TSTGO TST DPUMCD .+6 PC,CLRRW ; SKIP NEXT IF DPU-ONLY. ; CLEAR AND SET R/W MODE. MOV MOV MOV MOV MOV BIS #-1,TEMP1 LOOPK , TEMP2 #1000-76,R4 R4 RS #37576 ,RPD OPTI ,RPD JUSE AS XFER SWITCH. ;SAVE A COPY OF LOOPK. JINIT EXPECTED X... J...AND Y. JINIT DX,DY AT =MAX,-MAX. sOPTIONAL INTENSIFY. BNE JSR 026650 000702 JSR MoV JSR 125174 8%: 1%: BGNSEG 9%: MOV #RPT ,aDP( BNE 2% 125170 JSR CMP CMP 125164 2%: 3%: BEQ HRDERR LOOPTO JSR BCS ENDSEG 027312 037600 027700 056152 sTITLE #208 EXTA PC,LUMIN 7 ; SET ERROR EXTENSION ADDRESS. ; BLAST THE LUT. €<CLLLLLLLLLLLLLLLLLLCL<<<<< BEGIN SEGMENT., ;START DISFLAY PC,WAITF aDXR,R4 ;CHECK DXR = R4... aDYR,R5 3% J...AND DYR = RS. 9% ; REPEAT... RPF ,XYERR JREL POINT FAILS. PC,LOOP 9% ;€KL LLLLLLLLLLCCC<<<<<< END SEGMENT, MOV TEMPZ2 ,LOOPK JRESET LOOPER. BGT BEQ 5% 4% JINCR X AND Y. JINCR Y ONLY. ADD MOV #2 R4 R4 ,RO JINCR X ONLY. BIC #37600,RPD *CLEAR OLD... TST JSR TEMP1 PC,SDX sTEST XFER SWITCH. :CALCULATE +/= DX [N RO. wes TEST 20 5595 055744 §596 055750 §597 055754 5598 055756 RELATIVE POINTS 050037 020427 101724 005237 §599 055762 000710 056152 01076 003232 5601 055764 5602 055770 062705 010500 000002 5604 055776 5605 056002 110037 020527 056152 001076 5603 055772 5606 056006 5607 056010 gggg 056014 5610 056016 5511 056022 5612 056024 062704 010405 010500 5615 056034 000300 5613 056026 5614 056032 4%: 004737 010001 5616 056036 5617 056040 006200 050100 5619 056050 5620 056054 5255 056060 050037 020527 101662 000002 5624 056066 001002 5626 056074 004737 5625 056070 gg%g 056100 004737 027514 030072 22%5 056140 5637 056144 001000 5639 056152 000000 5638 056150 2229 056154 133774 173000 RO.RPD RS #1076 SSET NEW DY. :CALCULATE +/= DY IN RO. 1% TEMP1 8$ :AND LOOP *TIL DONE. “THEN, BUMP SWITCH... *...AND REINIT. ADD MOV MOV #2 R4 R4 .RS RS,RO sINCR X AND Y. DY = X) SWAB RO PC,SDY RO,R1 :CALCULATE +/= DY IN RO. “SAVE FOR A MOMENT. RO R1,R0 :REPOSITION FOR DX. “COMBINE DX AND DY. RO,RPD RS #1076 1% :...SET NEW DX,DY. BIS CMP BLOS 108$: 11%: “...AND REINIT. PC,SDY #37777 .RPD *CLEAR OLD... :AND LOOP °TIL DONE. ST DPUMOD JSR PC,PAUSE1 : PAUSE IF VIDEO ON. EXIT TST : EXIT THIS TEST >3>333333333333>333>5>>>>>> BNE JSR RTS 000207 gg%é 5636 056142 114000 MOVB CMP :AND LOOP °*TIL DONE. *THEN, BUMP SWITCH... 11$ PC.TSTEND : ON ERROR, SHOW ORIGIN AND DELTAS. PRINTX #SHRTX,RPT+2,RPT+4,RPD ; EXTENSION. 208 : gggg 5631 056104 SINCR Y ONLY. BIC 056152 001076 5623 056062 005737 002502 #2 RS RS,RO 8% ASR BIS 5618 056042 042737 037777 056152 bl ADD MOV JSR MOV 027270 SEQ 0149 :v..SET NEX DX. 8LOS INC BR 5%: G 12 PAGE 76=1 RO,RPD R4 . #1076 1% TEMP1 JSR 003232 17:22 BIS (MP BLOS INC B8R 004737 027270 101707 005237 000673 29-JAN-81 001000 PC *DISPLAY FILE FOR REL POINT TEST. APNT RPT : RPD : 1000, 1000 :ORIGIN AT CENTER SCREEN. 0 :DELTA X AND DELTA Y. RPNTTALL STOPN END.TEST 5642 056156 :".'."..'t'..'..'.'t'".'.'t't..".'.'t"..."."'.'t""..""""." ie END TEST 20 '"."fit"'.'."....t""."..."..'....'...""'.""""""".""". LI | VSV11/vS11 == GRAPHIC SYS. DIAG MACRO M1113 21 SHORT VECTORS 5644 TERTR '.""""'."Q"...."""'....'..'.'.."'."'.""'."'..'...".'...' - 5645 5646 567 5648 5649 5650 5651 5652 056226 5666 5667 056316 5668 056324 5669 056330 5670 056334 5671 056336 5672 056342 5673 056344 027702 056604 027054 0C2502 013737 012777 004737 027704 001003 027705 001411 103751 5682 056416 5683 056420 5684 056424 5685 056426 5686 056432 5687 056440 5688 056444 5689 5690 056446 056642 027454 013737 005737 001033 020427 001413 162704 010400 REPEAT EACH VECTOR 10 TIMES AFTER QUICK PASS. vT ST: BIS CLR mMOv 1%: BGNSEG 9%: MOV JSR (MP BNE (MP 3%: 30%: 027700 000702 HRDERR BR LOOPTO JSR B(S ENDSEG BNE (MP BEQ 000002 020527 BEQ MOV TST 000702 027312 037600 056652 JSR MOV JSR TST BNE JSR MOV MOV MOV Pe 1 004737 042737 050037 000723 10.) SWEEP VECTORS FROM MAX,MAX, (Cw THRU 360 DEGREES. 124476 003234 003232 22322222 222222222222 R R AR A A2 A A0 A R0 A 0 0 0t 2 dl FOR ALL VALUES OF DELTA X AND Y. 124502 027646 222222332 22222222222 VERIFY THAT WE CAN EXECUTE SHORT VECTORS FROM 1000,1000 003234 124506 Y (ITERATION COUNT = 056652 056652 000403 004737 5681 026650 001074 001076 017076 003064 003232 027700 022300 SHORT VECTORS - R ; =~ BEGIN TEST 21 L R 5653 056232 5654 056240 5655 056244 5656 056250 5657 056252 5658 056256 5659 056262 5660 056266 5661 056274 5662 056302 5663 056306 5664 5665 056314 SEQ 0150 SuB MOV JSR BIC B:IS BR 056652 5%: CMP sTITLE PC,TSTGO : SET ERROR EXTENSION ADDRESS. #208 EXTA BLAST LUT. PC,LUMIN DPUMOD ; SKIP NEXT IF DPU-ONLY. ; CLEAR AND SET R/W MODE. PC,CLRRW INIY EXPECTED X. #1074 ,R4 #1076 RS #17076,SVD ..AND Y TOO. INIY DX +74, DX +76. i...INT OPT IONAL . OPT!,SVD TEMP1 , TEMP2 LOOPK ; ;START DISPLAY ;CHECK DXR = aDXR,R4 2% aDYR,RS 3% SVF _XYERR 308 ;...AND DYR = RS. ;SHORT VECTOR FAILS. ; REPEAT... 9% PC.LOOP ; ;SAVE A COPY OF LOOPER. €CCLLLLLLLLLLLLLLLLLLCLC<<< BEGIN SEGMENT. #SVT ,aDP( PC,WAITF 9% ‘USE AS XFER SWITCH. €CCCLLLLLCLLLLLLLLLCLCLCCC<<< END SEGMENT, TEMPZ2, L 00OPK TEMP1 7% R4 ,#1000-76 5% ;RESET LOOPER. JTEST XFER SWITCH... #2 R4 JBR IF X MIN, ;OTHERWISE, DECR X. PC.SDX ; TRANSLATE ?2,SVD 2sso5E7 NEN DX, .. J...AND CONTINUE. R4 .RO #37600,SVD RS,#1000-76 TO Dx. . < TEST H 12 PAGE 77 29-JAN-81 17:22 I ese WIS Seseven,nen, : VSV11/7yS11 == GRAPHIC SYS. DIAG MACRO M1113 VSV11/vS11 == GRAPHIC SYS, DIAG MACRO M1113 29-JAN-81 17:22 PAGE 57-1 12 ese TEST 21 5691 056452 5692 056454 5693 056460 5696 056462 5695 056466 5696 056472 5697 5698 056474 5700 056504 5701 056506 5702 056512 5703 056514 5704 056520 5705 056526 5706 056532 5707 5708 056534 5709 056540 5710 056542 5711 056546 5712 056550 5713 056554 5714 056560 5715 5716 056562 5717 056566 5718 056570 5719 056574 5720 056600 5721 5722 5723 5724 056604 5725 056640 5726 5727 5728 5729 056642 5730 056644 5731 056650 5732 056652 5733 056654 5734 5735 056656 SEQ 01517 SHORT VECTORS 001470 162705 (00002 004737 110037 027270 056652 005137 020427 001413 062704 00323%2 001076 004737 027372 050037 000670 056652 020527 001410 062705 010500 004737 001076 010500 000710 010400 BEQ 110037 000655 030072 027514 com (MP BEQ ADD ;SET XFER SWITCH. JSR TEMP1 R4 ,#1000+76 8% #2 ,R& R4 RO PL,SDX BIS BR RO,SvD 1% J...SET NEW DX... ....AND CONTINUE. RS5,R0 1% #37600,SVD CMP BEQ ADD MOV JSR MOVR 056652 004737 004737 g%: 027270 002502 : TRANSLATE TO DY. ;SET NEW DY... BIC 000002 005737 001002 PC,SDY RO,SVD MOV 042737 037600 056652 BR 108: 11%: JOTHERWISE, DFCR Y. JSR MOVB B8R 000002 :BR IF Y MIN. #2,RS MOV 6%: 7%: 6% SUB ST BNE RS, #1000+76 10% #2 RS RS,RO PC,SDY RO,SVD 1% DPUMOD 11% J...AND CONTINUE. :BR IF X IS MAX. ;OTHERWISE, INCR X. : TRANSLATE TO DX. “CLEAR OLD... :BR (DONE) [F Y IS MAX. :OHTERWISE, INCR Y. : TRANSLATE TO DY. :SET NEW DY... :...AND CONTINUE. JSR PC ,PAUSE1 : PAUSF IF VIDEO ON. EXIT TST ; EXIT THIS TEST >>>>3333333>335333333>3>55> JSR PC,TSTEND : ON ERROR, SHOW ORIGIN AND DELTAS. 208%: 000207 PRINTX RTS #SHRTX,SVT+2,SVT+4,SVD ; EXTENSION. PC : DISPLAY (ODE FOR SHORT VECTORS. 114000 001000 107774 000000 173000 001000 SvT: APNT 1000, 1000 :ORIGIN AT CENTER SCREEN. SvD: 0 :DELTA X AND DELTA Y. SVEC'ALL STOPN END.TESI '"".".".'....."....'.".....'Q"..."."'..'...'Q.".t"'.."".". * . L END TEST 21 “."."..'i‘.".".."."""."'.."".'.l'..'."'.."'.."..""".'.t. VSY11/vS11 == GRAPHIC SYS. DIAG MACRD M1113 29 AN-81 17:22 PAGE ;3 eee TEST 22 12 SEQ 0152 RUN=LENGTH 5737 .'""'.'."'.""'.'"""""'.Q".'.".'..'Q..".""'."".."..."'. - v " BEGIN TEST 22 * 9 . . = RUN=LENGTH " .'."".".."".....Q.'."'.....'...."....'Q..'.."'.......""'...."' E (ITERATION COUNT = 10.) ; b » DN ALL VARIATIONS OF RUN LENTH MODE ARE DONE AND THE END POINTS ARE (HECKED. 5742 5743 056724 056724 056730 5744 056734 5745 056740 5746 056744 5747 5748 5749 056746 5750 056752 056752 056760 5751 056764 5752 056766 5753 056772 056772 057000 5754 057004 5755 057006 5756 057010 5757 057014 5758 057020 5759 057024 057024 057026 057030 057054 5760 057054 5761 057056 5762 057062 5763 057064 5764 5765 057066 5766 057072 057072 057100 5767 057104 5768 057106 5769 057112 IF TESTING IN DPU-ONLY MODE, JUST THE ‘NEWLINE'' COMMWDS ARE TESTED. LMOD : 027792 RLMOD1: 012705 000001 012777 004737 057564 027454 110537 057605 052777 000001 027454 COMBEG JSR JSR JSR TST s TITLE. ; DO ST INiT DPUMOD RLNEWL . ARE WE IN DPU-ONLY MODE? : IF YES, JUST DO “NEWLINE'" TESTS. PC,CLRRW 1%: 2%: 124032 RS R1 : R1 = EXPECTED DXR. #0 R3 aDXR,R2 : R3= EXPECTED DYR. : READ DXR INTO RZ2. BEQ HRDERR (MP BNE 057614 027454 : READ DYR INTO R4. R1,R2 65% R3.R4 649 ; s ; ; RLXIE ,RLXYE, RS INC gg.IZOO 110537 057635 052777 004737 000001 027454 3%: 123712 BGNSEG 1ST ITEM OK? NO. 2ND ITEM OK? YES. ; NO. ; DONE? ; INCREMENT X VALUE. ; €CCCLCLLLLLLLLLLLLLLLLLLL<< END SEGMENT. #1,RS MOV DPSTART #X2INC #X2INC ,aDPC MOV PC.UAITF JSR 123732 ; WAIT FOR DISPLAY STOP. aDYR,R4 ENDSEG 012777 004737 INIT COUNT FOR X TEST. ; CONTINUE THE DPU. RLXIE ,RLXYE 000200 TEST X INCREMENT. #3170,aDPC - WAITF 65%: 64%: 000001 : #XINC ,aDPC : START THE DPU. ; WAIT FOR DISPLAY STOP. PC,WAITF ., ; €KCLLCLLLLLLLLLLLLLLLLLLLL< BEGIN SEGMENT ; MODIFY COUNT IN DISPLAY FILE. RS, XINCB+1 124016 124014 012705 ; #XINC 124052 020102 001002 020304 001410 ; CLEAR FOR READ/WRITE. ; IF NO, DO ALL TESTS ( WRITE TO SCREEN ). #1,R5 000000 005205 020527 001341 PC,TSTGO PC,DPRESET ; TEST X2 INCREMENT. : INIT COUNT FOR X2 TEST. ; START THE DPU. ; WAIT FOR DISPLAY STOP. ., 5 €CCLLCLLLLLLLLLLLLLLLLLLL<< BEGIN SEGMENT MOvVB R5,X2INCB+1 : MODIFY COUNT IN DISPLAY FILE. BIS JSR #8170,aDPC ; CONTINUE THE DPU. DPCONT PC,WAITF ; WAIT FOR DISPLAY STOP. 5770 057126 5771 057126 §772 057130 RUN=LENGTH 010501 5773 057132 012703 000000 5774 057136 017702 123674 5775 057142 017704 123672 5776 057146 057146 057150 057152 057154 057156 5779 057204 g;g? 057206 001340 67%: 66%: ; 000200 5784 057212 3 057212 012777 057220 004737 012701 057224 5785 5786 057230 012703 5787 057234 017702 5788 057240 017704 5789 057244 057244 057246 057250 057252 057254 057644 027454 000000 000002 123576 123574 65%: 64%: 057336 057340 057342 057362 238? 057362 5802 5803 057364 5804 057366 67% R3,R4 66% RLXZ2IE,RLXYE, ; NO. ; 2ND ITEM OK? INC cMP BNE ENDSEG RS RS,#200 3% : INCREMENT X VALUE. ; DONE? 012777 004737 012701 012703 057660 027454 000000 000000 ; NO. ; €KCLLLLLLLLLLLLLLLLLLLLLLL END SEGMENT. ; €CKLLLLLLLLLLLLLLLLLLLLLL< BEGIN SEGMENT. : START THE DPU. : WAIT FOR DISPLAY STOP. : R1 = EXPECTED DXR. : R3 = EXPECTED DYR. : READ DXR INTO RZ2. : READ DYR INTO R4. CMP BNE CMP BEQ HRDERR R1,R2 65% R3,R4 64% RLYUE ,RLXYE, : 1ST ITEM OK? ; NO. : 2ND ITEM OK? : YES. ; NO. ; €K<CLLLLLLLLLLLLLLLLLLLLLL< END SEGMENT. ENDSEG MOV JSR MOV MOV MOV MOV 123510 123506 5 €<CLCLLLLLLLLLLLLLLLLLLLL<LK< BEGIN SEGMENT. #YDN,aDPC PC,WAITF #0,R1 #0,R3 aDXR,R2 aDYR,R4 IFERRX2 RLYDE ,RLXYE 020102 CMP R1.R2 CMP R3,R4 001002 BNE 001410 BEQ HRDERR 020304 67%: 66%: : YES. ; NO. #YUP,aDPC PC,WAITF #0,R1 #2 ,R3 aDXR,R2 aDYR,R4 DPSTART #YDN 123524 : 1ST ITEM OK? MOV JSR MOV MOV MOV MOV BGNSEG 5797 057322 017702 5798 057326 017704 057334 BNE CMP BEQ HRDERR : TEST Y DOWN. 5793 057276 057332 aDYR,R4 IFERRX2 RLYUE ,RLXYE 020102 001002 020304 001410 5792 5799 057332 MOV : R3 = EXPECTED DYR. : READ DXR INTO RZ2. : READ DYR INTO R4. aDXR,R2 DPSTART #YUP 123612 %;g? 057274 057300 057306 5795 057312 5796 057316 #0,R3 RLNEWL: BGNSEG 057274 5794 057300 MOV : s R1 R1 : TEST Y UP. 5782 5783 €57210 : R1 = EXPECTED DXR. IFERRX2 RLX2IE.,RLXYE R1,R2 CMP 001002 020304 001410 5777 057176 005205 5778 057200 020527 RS,R1 MOV 020102 057176 MOV ASL ASL 006301 006301 SEQ 0153 66% RLYDE,RLXYE, : TEST SKIP UP. BGNSEG DPSTART #Y2UP : READ DXR INTO RZ2. : READ DYR INTO R4. : 1ST ITEM 0OK? ; NO. 67% ENDSEG : START THE DPU. : WAIT FOR DISPLAY STOP. : R1 = EXPECTED DXR. : R3 = EXPECTED DYR. : 2ND ITEM 0OK? 2 YES. s ND. ; €CLCLLLLLLLLLLLLLLLLLLLLLL END SEGMENT. ; €<CCLLLLLLLLLLLLLLLLCLLL<< BEGIN SEGMENT. < © WSV11/vS11 == GRAPHIC SYS. DIAG MACRO M1113 - wew TEST 22 K 12 29-JAN-81 17:22 PAGE 78-1 - ————— PAGE %8-2 17:22 29-JAN-81 M1113 MACRO DIAG SYS. GRAPHIC == 1 VSV11/7yS1 RUN=LENGTH | wew TEST 22 | 057366 012777 057674 | 1 ' ’ l 057374 004737 (27454 123436 - 69%: 68%: 1" 012777 004737 012701 012703 5817 057476 017702 5818 057502 017704 057710 027454 000000 000000 R3,R4 68% RLYZ2UE ,RLXYE, CMP BNE CMP 001410 71%: 70%: #Y2DN,aDPC PC,WAITF #0,R1 #0,R3 aDXR,R2 aDYR,R4 027646 057550 000137 056740 64%: 057554 004737 030072 65%: 70% RLYZ2DE ,RLXYE, RLMOD1 PC,LOOP JMP RLMOD1 JSR PC,TSTEND EXIT 64% 65% TST 114000 000000 000000 XINC: APNT,0,0 5833 057574 114000 040000 000000 XINCA: APNT,I1!0,0 5835 057604 000777 XINCB: 000777 5836 057606 gg%g 057610 ; 2ND ITEM OK? : YES. ; NO. : START THE DPU. : WAIT FOR DISPLAY STOP. : R1 = EXPECTED DXR. : R3 = EXPECTED DYR. : READ DXR INTO RZ2. : READ DYR INTO R&. ; 1ST ITEM 0OK? : NO. : 2ND ITEM OK? = YES. s NO. : REPEAT 'TIL LOOPER EXPIRES. : PRINT ERROR SUMMARY, IF REQ'D. 2 EXIT THIS TEST >>333>3>33>3>>>>>> ; DISPLAY CODE. 5831 057564 5834 057602 ; NO. : 5828 5832 057572 : 1ST ITEM OK? ; €CLLLLLLLLLLLLLLLLLLLLLLLL END SEGMENT. JSR BCS BR 5825 5826 5827 R1,R2 71% R3.R4 ENDSEG RLMXIT: COMEND 004737 103401 000402 BEQ HRDERR : READ DXR INTO R2. : READ DYR INTO Ré&. ; €CLLLCLLLLLLLLLLLLLLLLLLLL< BEGIN SEGMENT. IFERRXZ2 RLYZDE ,RLXYE 020102 001002 020304 : WAIT FOR DISPLAY STOP. ; €CLLLLLLLLLLLLLLLLLLLLLLLL END SEGMENT. ENDSEG MOV MOV 057540 gggz 057560 HRDERR 69% DPSTART #YZ2DN 123334 123332 ggsq 057536 057544 057546 CMP BEQ MOV JSR MoV MOV 123350 057536 5822 057540 aDXR,R2 aDYR,R4 BGNSEG 5813 057452 057514 057516 : R1 = EXPECTED DXR. : R3 = EXPECTED DYR. ; TEST SKIP DOWN. 5812 057506 057510 057512 #0,R1 #4 R3 BNE 057450 5819 057506 MOV MOV IFERRX2 RLY2UE ,RLXYE R1,R2 CMP 5809 057420 057420 020102 057422 001002 057424 020304 057426 001410 057430 057454 057462 5815 057466 5816 057472 : START THE DPU. MOV MOV 5807 057410 017702 123422 5808 057414 017704 123420 5814 057454 #Y2UP ,aDPC PC,WAITF 173000 144000 173000 160000 057574 STOPN RNLN STOPN DJMP,XINCA E SEQ 0154 MOV JSR 5805 057400 012701 000000 5806 057405 012703 000004 2310 057450 i -— 12 ! : e e = : X INCREMENT. "* VSV11/vSi1 == GRAPHIC SVS DIAG MACRO M1113 wex TEST 22 RUN=LENGTH 29-JAN-B81 17:22 APNT,0,0 000000 000000 X2INC: 040000 000000 000777 X2INCA: APNT,1!0,0 RNLNDBLPIX X2INCB: 000777 160000 057624 DJMP X2INCA 114000 144000 173000 000000 114000 144040 173000 000000 000377 000002 5855 057674 5856 057702 5857 057706 114000 144400 173000 000000 000377 000000 5859 057710 5860 057716 5861 057722 114000 144440 173000 000000 000377 000004 5839 057614 5840 057622 5841 057624 5842 057632 5843 057634 5844 057636 5845 057640 5846 5847 057644 5848 057652 5849 057656 5850 5851 057660 5852 057666 5853 057672 5854 5858 5862 114000 173000 114000 144100 173000 000377 M12 PAGE 78-3 STOPN SEQ 0155 ; X2 INCREMENT. STOPN 000000 YUP: 0 APNT, RNLN,3?7 STOPN YDN: APNT,0,2 RNLN YDOWN, 377 ; Y DOWN. APNT,0,0 ; Y SKIP UP. STOPN Y2UP: RNLN!RLSKIP,377 STOPN Y2DN: APNT,0,4 RNLN'RLSKIP! YDOWN, 377 ;Y SKIP DOWN. STOPN END.TEST 5863 057724 :ttittittttttt*tt*ttt***tt'iti'*tfititttttttitttttttt*tttttttitttt*'ti.t* . % . . % . % END TEST 22 :t!tttfifitfi*titttt.tttttiitttt!tttttfii*t'titfit'*'tfilfitt!tt"ttttfit'tt'tt' . VSV11/VS11 == GRAPHIC SYS. DIAG MACRO Mi113 s+ TEST 23 CURSOR REGISTERS/SWITCH/MATCH 5865 29-JAN-81 17:22 N 12 PAGE 79 SEQ 0156 :tt'ttttt'tttt'tttttt'tttttt"ttttttttt'tQttt'tttttt'attttQti'tt'tt'ttt' . % BEGIN TEST 23 i . % = CURSOR REGISTERS/SWITCH/MATCH :-ttttttttttt!Qtttttt.ttt'ttttt'ttttt'tttttttttttttttttttttttttt'tttt"tt : (ITERATION COUNT = 3.) 5867 5868 gggg / 5871 5872 5866 M SWITCH, : THIS TEST, USING THE LOADABLE CURSOR POSITION REGISTERS AND ''SOFT'' AND SWITCH, JOYSTICK , : PERFORMS THE FOLLOWING CHECKS ON THE CURSOR REGISTERS : CHANNEL R GENERATO SYNC E AVAILABL * CURSOR MATCH AND ASSOCIATED LOGIC FOR EACH M 1'S * (1) WRITE/READ TEST OF THE CURSOR POSITION REGISTERS USING DATA OFFORALLSTUCK CHECK TO DYR) AND DXR (VIA I/0 D AND ALL 0°'S, USING PROGRAMME : 5875 5876 . 5877 gg;g 5880 gggé 5883 5884 : : : 3 > 2 : 3 (2) 5887 5888 * : (5) SET THE SWITCH ENABLE AND MATCH ENABLE BITS, THEN PERFORM A WRITE TO THE JOYSTICK STATUS REGISTER OF ANOTHER CHANNEL WITH DATA CONF IGURED gggz * (6) TEST OPERATION OF THE JOYSTICK SWITCH INTERRUFT. * : : (7) (4) 5895 5896 5897 : : 5898 gggg 005737 001402 000137 002502 064660 5 WRITE/READ TEST OF THE CURSOR POSITION REGISTERS VIA THE DISPLAY FILE INSTRUCTION LDCP (LOAD CURSOR POSITION) AND CURD (CURSOR READ), USING AN INCREMENTING COUNT PATTERN ON THE X POSITION (0 = 3776) AND A DECREMENTING COUNT PATTERN ON THE Y POSITION (3776 - 0). WRITE/READ TEST OF THE SWITCH ENABLE, MATCH ENABLE, AND CROSSHAIR INTENSITY ENABLE BITS USING PROGRAMMED 1/0 TO SET AND CLEAR ALL BITS. WRITE/READ TEST OF THE ENABLE BITS VIA DISPLAY FILE INSTRUCTION LDJSS (LOAD JOYSTICK STATUS), USING ALL COMBINATIONS OF LOAD-ENABLES AND DATA. : : 3 5889 5890 ggg; 5902 060014 5903 060020 5904 060022 (3) : gggz 5901 0°'S, STUCK 1'S AND DUAL ADDRESSING. : 23;2 TO SET THE ENABLE BITS: VERIFY THAT THE ENABLES OF THE CHANNEL UNDER TEST WERE CLEARED. FAILURE HERE INDICATES A FAULTY CHANNEL ADDRESS DECODER IN THE SYNC CHANNEL UNDER TEST. TEST OPERATION OF THE CURSOR MATCH INTERRUPT. FLOATING 1'S AND 0°S PATTERNS ARE USED IN THE CURSOR X AND Y POSITIONS TO VERIFY THE A MATCH OCCURS ON THE SELECTED POINT WHILE DRAWING A VECTOR THROUGH IT, AND THAT A MATCH DOES NOT OCCUR WHILE DRAWING VECTORS AROUND THE SELECTED POINT PARALLEL TO THE X AND Y AXES. TST BEQ JMP DPUMOD CSMTST CSMXIT : DPU-MODE ONLY? : BR IF NOT =-- OK TO EXECUTE. : YES == JUST GO TO EXIT. CURSOR REGISTERS/SWITCH/MAT(CH 5906 5907 060026 027702 026074 030414 027054 065002 065014 026074 065002 060026 CSMTST: COMBEG JSR JSR JSR 3 022300 ASL 064620 1%: 065004 5942 060212 060212 5943 060226 5944 060232 5945 060234 5946 060236 5947 060240 5948 060242 5949 060244 5950 060246 5951 060266 TST BNE JMP ASL ASL ASL ASL ASL MOV ASL ASL MOV 065006 065010 000000 026114 CLR : MOV JSR MOV 003270 5930 060140 5931 060144 5932 060152 5933 5934 5935 5936 060156 5937 060160 5938 060164 5939 060166 5940 060172 060172 060176 060202 5941 060206 JSR ASL ASL ASL MOV MOVB JSR 026106 B 13 PAGE 80 PC,TSTGO PC,DPRESET PC,CONFIG PC,LUMIN CSCHAN #PRSYCH,EXTA PC,DPRESET (SCHAN,RZ R2 ?YCTAB(R?) R R2,CSCH.6 R2 R2 R2,CSCH.8 R2 R2 R2 R2,CSCH.11 #0, INTMASK PC,ENAINT SEQ 0157 TITLE. DO SOFT INIT. ; IDENTIFY THE AVAILABLE SYNC CHANNELS. T T w++ TEST 23 25-JAN-81 17:22 TR T | VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 LA TETE TR | L r - @ START TESTING AT CHANNEL 0. SET UP TO PRINT CHANNEL NUMBER ON ERROR. DO SOFT INITIALIZE & CHECK REGISTERS. GET CHANNEL NUMBER INTO R2 ... AND MAKE IT A WORD OFFSET. IS THERE A MODULE HERE? BR IF YES. IF NOT, GO SELECT NEXT CHANNEL. SHIFT IT L' °'T 5 MORE TIMES TO GET ... CHANNEL NUMBER INTO BITS <7:6> ; STORE IT FOR FUTURE USE. L4 . . - . SHIFT IT LEFT 2 MORE TIMES TO GET ... IT INTG BITS <9:8> STORE IT FOR FUTURE USE. SHIFT LEFT 3 MORE TIMES ... : +ee 10 GET ... - . . L4 L . . CHANNEL NUMBER INTO BITS <12:11>, “ AND STORE IT FOR FUTURE USE. K3 - DON'T EXPECT ANY INTERRUPT. ; BUT LOOK FOR BAD ONES. . L4 . ;WRITE 0°'S INTO BOTH CURSOR REGISTERS AND VERIFY THAT ALL 0'S ARE RETURNED 012701 010103 013705 012746 053716 012677 004737 012746 053716 012677 100352 MOV MOV MOV 1 <<L<<L<<K<<<<BEGIN SEGMENT ; EXPECT CURSOR X = 0 (WITH FLAG SET) #BIT15,R1 ‘ : DITTO FOR CURSOR Y ;aaaR ; SET UP RS AS RETRY COUNTER CSRETRY,RS 065010 MOV BIS #WRTCPX'!0,=(SP) CSCH.11,(SP) 027454 JSR (SP)+,aDXR PC,WAITF MOV #WRTCPY'!0,=-(SP) MOV (SP)+,aDYR PC,GETCURS 100000 065012 140000 CSMT1: 1%: BGNSEG BISW3 MOV 122630 BISW3 140000 065010 BIS 065336 JSR 122612 2%: 3%: BPL HRDERR ENDSEG CSCH.11,#WRTCPX'!0,aDXR ; WRITE CURSOR X TO 0. ; WAIT FOR READY. CSCH.11,#WRTCPY!0,aDYR ; WRITE CURSOR Y TO 0. CSCH.11,(SP) R1,R2 2% R3,R4 3% RS 1% - :; READ CURSOR, GET DXR.DYR INTO R2.R4 CHECK DXR (X=CURSOR) BR _IF ERROR CHECK DYR (Y=CURSOR) BR IF OK. DECREMENT THE RETRY COUNTER :3daaR GO TRY AGAIN IF NOT NEGATIVE ;aadaR REPORT THE ERROR. CRWRZ ,RLXYE 35555355 >>>>END SEGMENT - VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 29-JAN-81 17:22 wxx TEST 23 CURSOR REGISTERS/SWITCH/MATCH 5953 gggg c 13 PAGE 81 SEQ 0158 P :WRITE 1'S INTO BOTH CURSOR REGISTERS AND VERIFY THAT ALL 1'S ARE RETURNED. 5956 060270 5957 060272 012701 103776 5958 060276 5959 060300 010103 013705 065012 060304 060310 012746 053716 143776 065010 5960 060304 060314 5961 060320 5962 060324 060324 060330 060334 5963 060340 5964 060344 5965 060346 5966 060350 5967 060352 5968 060354 5969 060356 5970 060360 5971 060400 012677 004737 012746 053716 012677 004737 020102 001002 020304 001412 005305 100352 (SMT2: 1%: 122516 027454 BGNSEG MOV MOV MOV BISW3 2%: 3%: R1,R3 CSRETRY RS : DITTO FOR CURSOR Y aadaR (SCH.11 #URTCPX"03776 aDXR; WRITE CURSOR X TO 3776. MRTCPX 1403776, ~(SP) CSCH.11,(SP) BISW3 MOV CSCH 11,AWRTCPY ! *03776, QDYR WRITE CURSOR Y TO 3776. #URTCPY"03776 -(SP) BIS MOV 065336 <BEGIN SEGMENT MOV BIS MOV JSR 143776 065010 122500 : <K<K 081715"03776 Rl : EXPECT CURSOR X = 3776 (WITH FLAG SET) (SP)+, anR PC, HAITF s UAIT FOR READY. CSCH.11,(SP) (SP)+,aDYR JSR PC,GETCURS HRDERR ENDSEG CRWRO,RLXYE ; REPORT THE ERROR. IOO53555>5>>>END SEGMENT CMP BNE CMP BEQ DEC BPL R1,R2 2% R3.R4 3% RS 1% 3 : : ; ; ; : READ CURSOR, GET DXR,DYR INTO R2.R4 CHECK DXR (X=CURSOR) BR IF ERROR CHECK DYR (Y=CURSOR) BR IF OK. DECREMENT THE RETRY COUNTER ;@aaR GO TRY AGAIN IF NOT NEGATIVE . daaR VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 ==+ TEST 23 5973 5974 5975 5976 060402 5977 060406 5978 060412 060412 060416 5979 5980 060422 5981 060424 5982 060430 060430 060432 060434 5983 060440 5984 060444 060444 060446 060450 5985 060454 5986 060460 5987 060462 5988 060464 5989 060466 5990 060470 5991 060472 5992 060474 5993 060514 5994 5995 060516 5996 060522 5997 060524 5998 060526 5999 060532 6000 060534 CURSOR REGISTERS/SWITCH/MATCH 29-JAN-81 17:22 PAGE 82 13 SEQ 0159 :CHECK DUAL ADDRESSING == VERIFY THAT Y NOT CHANGED BY WRITING X. 012701 012703 012705 053705 013700 010346 050516 012677 004737 100000 103776 CSMT3: ; EXPECT CURSOR X TO BE 0 EXPECT CURSOR Y TO BE ALL 1'S #B1T151403776 ,R3’ CSCH.11,4WRTCPX, R§: 140000 065012 #B81T15!0,R1 #WRTCPX ,RS SET UP WRITE CURSOR W/ CHANNEL CSCH.11,R5 065010 <BEGIN SEGMENT 1 << aR ,RO CSRETRY ; @a R5.R3,aDYR ; LOAD CURSOR Y WITH A PATTERN. 1%: 10%: R3,-(SP) R5, (SP) (SP)+,aDYR PC,WAITF R5,R1,aDXR 122400 027454 R1,=(SP) 010146 050516 012677 004737 020102 001002 020304 001412 005300 100356 ; WAIT FOR STOP. ; LOAD OPPOSITE PATTERN INTO CURSOR X. R5, (SP) ) + ,aDXR (SP PC,CETCURS R1.,R 003776 100000 4%: GET THE CURSOR INTO R2 & R4. 2% R3.R4 3% ENDSEG DECREMENT THE RETRY COUNTER :aaaR RO GO TRY AGAIN IF NOT NEGATIVE ;aaaR 108 REPORT THE ERROR. CRDAX ,RLXYE >>>>>>>>>>>>END SEGMENT BIT BNE #~03776 ,R1 4% ; DID WE WRITE 1°'S INTO X YET? ; BR IF YES, SO WE'RE DONE. #BI1T15,R3 ; ... SET UP TO WRITE Y TO 0. 2%: 3%: 032701 001004 010301 012703 000733 MoV e e NN, N, NN, l HRDERR MOV MOV BR 1% CHECK DXR (X=CURSOR) BR IF ERROR CHECK DYR (Y=CURSOR) BR IF OK. ; NO, SO SWAP PATTERNS. ; LOOP BACK TO DO IT. » < [ P VSV11/vS11 == GRAPHIC SYS. DIAG MACRC M1113 CURSOR REGISTERS/SWITCH/MATCH 6002 6004 6022 060646 6023 6024 060650 6025 060654 6026 060656 6027 060660 6028 060664 6029 060666 SEQ 0160 :CHECK DUAL ADDRESSING == VERIFY THAT X NOT CHANGED BY WRITING Y. 6003 6005 060534 6006 060540 6007 060544 060544 060550 6008 6009 060554 6010 060556 6011 060562 060562 060564 060566 6012 060572 6013 060576 060576 060600 060602 6014 060606 6015 060612 6016 060614 6017 060616 6018 060620 6019 060622 6020 060624 6021 060626 E_13 PAGE 83 012701 012703 103776 100000 012705 053705 140000 065012 010146 050516 012677 004737 027454 ;; EXPECT CURSOR X TO BE ALL 1°'S #B1T715!%03776,R1 EXPECT CURSOR Y TO BE 0 #81T15!0,R3 RS X, SET UP WRITE CURSOR W/ CHANNEL ,#WRTCP 11 CSCH. #WRTCPX R CSCH.11,RS 1 <K<K LK<BEGIN SEGMENT 1%: CSRETRY,RO R5,R1,aDXR R1,=(SP) R5, (SP) + ,aDXR (SP) PC.WAITF R5.R3,aDYR R3,-(SP) R5, (SP) (SP)+,aDYR 10%: 122244 122232 065336 ; @aaR ; LOAD CURSOR X WITH A PATTERN. ; LOAD OPPOSITE PATTERN INTO CURSOR Y. PC.,GETCURS 2%: 100356 3%: 032703 001004 010103 012701 000733 MOV 065010 013700 010346 050516 012677 004737 020102 001002 020304 001412 005300 CSMT14: BPL HRDERR ENDSEG BNE BR 1% MOV MOV 100000 4%: ; GET THE CURSOR INTO R2 & R4. CHECK DXR (X=CURSOR) BR IF ERROR 2% CHECK DYR (Y=CURSOR) R3.R4 BR IF OK. 3 DECREMENT THE RETRY COUNTER ;aaaR RO GO TRY AGAIN IF NOT NEGATIVE ;aaaR 108 THE ERROR. REPORT CRDAY ,RLXYE >>>>>>>>>>>>END SEGMENT #~03776,R3 4% BIT 003776 Se S NN, NN, vee TEST 23 29-JAN-81 17:22 R1.R3 #3]1T15,R1 : DID WE WRITE 1'S INTO Y YET? BR IF YES, SO WE'RE DONE. : NO, SO SWAP PATTERNS. : ... SET UP TO WRITE X TO O. ; LOOP BACK TO DO IT. YSV11/vS11 == GRAPHIC SYS. DIAG MACRO M1113 ~ees TEST 23 CURSOR REGISTERS/SWITCH/MAT(H 29-JAN-81 17:22 F 13 PAGE 84 SEQ 0161 : DO WRITE/READ TEST USING DISPLAY FILE. 005001 012703 012746 053716 012637 6039 060724 6040 060730 6041 060734 6042 060740 6043 060742 060742 060750 6044 060754 6045 060760 6046 060764 6047 060770 6048 060772 6049 060774 6050 060776 6051 061000 6052 061002 6053 061004 6054 061024 6060 061044 (LR 065042 010137 010337 013705 065044 065046 065012 CSCH.B.#CURD,CSMF1B ; ... BY NSERTING THE CHANNEL. #CURD , = (SP) CSCH.8, (SP) (SP)+,CSMF18 065050 065042 027454 1%: 122062 R1,CSMF1A+2 R3.CSMF1A+4 : INSERT X COORD. TC BE WRITTEN L ... AND THE Y COORDINATE. #CSMF 1A : EXECUTE LOAD THEN READ OF CURSOR. PC,WAITF * WAIT FOR DISPLAY STOP. CSRETRY,RS ;(((((((((((((BEGIN SE(KNT 2%: #CSMF1A,@DPC 100000 100000 065362 BEQ HRDERR ENDSEG ADD 100002 100002 003776 30%: BIT BNE : START THE DPU. #BIT15,R1 * EXPECT THE CURSOR FLAG BIT IN DXR PCRDDXY * GET MASKED DXR AND DYR INTO R2 AND Ré. 33 R3,R4 * BR IF INCORRECT. * CHECK DYR FOR Y CURSOR. * CHECK DXR FOR X CURSOR. R1.R2 3%: 001330 : INIT THE X PATTERN T0 0 R1 * INIT THE Y PATTERN TO ALL 1°S #%03776,R3 CSCH.6,#LDCP,CSMF1A ; SET UP THE DISPLAY FILE #LDCP,=(SP) (SCH.6, (SP) (SP)+,CSMF1A 175000 146100 06 6055 6056 061026 6057 061032 6058 061036 6059 061042 003776 012746 053716 012637 012777 CSMT5: X 5 CRWRE ,RLXYE * BR IF OK. : ERROR =- DXR OR DYR WRITE/READ ERROR. :>55>>>>>>>>>>END SEGMENT #2'BIT15,R1 #2'BIT15,R3 #*03776 ,R1 1% ; ; ; ; INCREMENT THE X PATTERN. DECREMENT THE Y PATTERN. DID WE INCREMENT X AROUND TO 0? LOOP BACK IF NO. YSV11/V511 == GRAPHIC SYS. DIAG MACRO M1113 CURSOR REGISTERS/SWITCH/MAT(H ves TEST 23 29-JAN-81 17:22 G 13 Ve PAGE 85 SEQ 0162 ; w=+ SPACE HERE FOR TESTING GENERAL DUAL ADDRESSING (ALL DBUS CODES & CHANNELS) : VERIFY THAT THE SWITCH, MATCH AND CROSSHAIR ENABLES CAN BE CLEARED TO 0°S. 004737 012701 010103 026176 012746 053716 062077 004737 027454 012677 KRRREIXEIIFER FENRAANIRE SRS & 6073 061100 012746 053716 012677 013705 004737 020102 001002 020304 (SMT6: 100000 001412 005305 MOV SP) JSS ! ~077,=( #MI CSCH.8, (SP) JSR PC,WAITF MOV #WJSS'BITS'BIT3!BIT1,=(SP) CSCH.8, (SP) BIS 1%: 2%: 100370 BIS BISwW3 121722 3%: ; DISABLE INTERRUPTS ; EXPECT DXR TO BE 0 #81T15,R1 MOV 042052 065006 1 <<<<<<<<<<K<<<BEGIN SEGMENT PC,DSBINT MOV MOV BISW3 065006 121742 065012 065404 BGNSEG JSR MOV MOV JSR BPL HRDERR ENDSEG R1,R3 ; DITTO FOR DYR. CSIH.8,#WJSS!~077,aDXR ; FIRST SET ALL ENABLES. (SP)+,aDXR : WAIT FOR READY. CSCH.B8,#WJSS'BITS!BIT3!RBIT1,aDXR ; THEN CLEAR THEM. (SP)+,aDXR ; aaaR CSRETRY RS PC,GETJSE R1,R2 2% R3.R4 3% RS 1% JSEWRZ ,RLXYE ; ; ; ; ; ; ; GET THE ENABLES INTO R2 AND R4. CHECK DXR (X=CURSOR) BR IF ERROR CHECK DYR (Y=CURSOR) BR IF OK. DECREMENT THE RETRY COUNTER ;aaaR GO TRY AGAIN IF NOT NEGATIVE ;aaaR * REPORT THE ERROR. :O5333553>>>>END SEGMENT NRNESIIIT - e b i e d e i wed SXEERXIEKER : VERIFY THAT THE SWITCH, MATCH AND CROSSHAIR ENABLES CAN BE SET TO 1°S. 012701 012703 114000 110000 012746 053716 012677 004737 042052 065006 012746 053716 012677 013705 004737 042077 065006 (SMT7: BISW3 MOV BIS 121626 MOV JSR 027454 BISW3 MOV BIS 121606 065012 065404 1%: 6096 6097 061244 6098 061246 6099 061250 6100 061252 6101 061254 6102 061274 100370 BGNSEG MOV MOV 2%: 3%: MOV MOV JSR CMP BNE CMP BEQ DEC BPL HRDERR ENDSEG ; <<<LKLCLLLLLLKL<BEGIN SEGMENT #BIT15'JSSIES!JSMIES,RT ; EXPECT DXR TO HAVE SW & MAT SET. #BIT15!'CHIE,R3 ; EXPECT DYR TO HAVE CROSSHAIR ENABLE SET. CSCH.8,#WJSS'BITS!BIT3!BIT1,aDXR ; FIRST CLEAR THEM. #WJSS!BITS!BIT3!BIT1,=(SP) CSCH.8, (SP) (SP) +,aDXR ; WAIT FOR READY. ,aDXR ; THEN SET THEM. CSCH.8,#WJSS!*077 PC,WAITF #WJSS!*077 ,-(SP) CSCH.8, (SP) (SP)+,aDXR CSRETRY RS PC,GETJSE R1,R2 2% R3,R4 3% RS 1% JS-WRO ,RLXYE . aaaR : GET THE ENABLES INTO R2 AND R4. : CHECK DXR (X=CURSOR) : : : : : : BR IF ERROR CHECK DYR (Y=CURSOR: BR IF OK. DECREMENT THE RETRY COUNTER ;aaaR GO TRY AGAIN IF NOT NEGATIVE ;aaaR REPORT THE ERROR. C:O>>>>>>>>>>>END SEGMENT VSV11/7yS11 == GRAPHIC SYS. DIAG MACRO M1113 CURSOR REGISTERS/SWITCH/MATCH see TEST 23 6104 6105 H13 PAGE 86 SEQ 0163 : TEST ENABLES WITH GENERAL WRITE/READ FROM DISPLAY FILE. (SP) +,CSMF2A R4 ,#LDJSS,CSMF2B ; SET UP TO GENERAL WRITE. #LDJSS,=(SP) 065056 (SP)+,CSMF2B R4 ,#CURD , CSMF2C ; R4, (SP) #CURD ,=(SP) R4, (SP) 146100 065060 MOV BIS MOV 1%: 065056 000002 000040 6135 061454 013700 065012 <BEGIN SEGMENT - ; ASSUME JSSIE AND JSMIE WILL BE O. ASSUME CHIE WILL BE 0. GET A COPY OF THE WRITTEN BITS. ENABLED TO WRITE SWITCH ENABLE? BR IF NO -- LEAVE EXPECTED ALONE. #JMWE RS BIT BEQ BIT BEQ #JCWE RS 4% #JCWD RS A BIS #CHIE ,R3 : WRITE TO 1? ; BR IF NO -- LEAVE AT 0. ; YES == SET EXPECTED STATUS. 4%: MOV CSRETRY,RO ; 2aaR 40%: DPSTART #C SMF 2A 3%: 000020 010000 121340 1 << BIT BEQ BIT BEQ BIS 000004 065054 027454 (SP)+,CSMF2D #JSWE ,RS 2%: 010000 R4, (SP) BGNSEG MOV MOV MOV ; SET UP TO SET ALL. BIT BEQ BIT BEQ BIS 000001 004000 #LDJSS!*077,-(SP) 065430 41%: MOV JSR JSR (MP BNE CMP BEQ DEC BPL L 2% #JSWD RS IR 100000 (SP)+,CSMF2(C R4 ,#LDJSS!*077,CSMF2D ) 065064 SET UP FOR READ. T 146077 032705 001405 032705 001402 052703 061472 6140 061476 6141 061502 6142 061504 6143 061506 6144 061510 6145 061512 6146 061514 #COIOF F ' CUOFF ,=(SP) 146000 6128 061432 6129 061434 FOR INSERTING. R4, (SP) 065054 000010 6136 6137 061460 6138 6139 061464 061464 ; ENABLE INTERRUPTS, TC FIND BAD ONES (SCH.8,R4 : GET A COPY OF THE CHANNEL #, ; SET UP TO CLEAR ALL. ! CUOFF ,CSMF2A R4, #CUTOF 146052 032705 001405 032705 001402 052701 6130 061440 6131 061440 6132 061444 6133 061446 6134 061452 #0, INTMASK PC,ENAINT 2% #JSSIES.,R1 LN 012701 010103 013705 032705 001405 032705 001402 052701 MOVB NN, 012746 050416 0126537 (SMT8: 3% N, 012746 050416 012637 026106 3% e 6114 6115 061364 6116 061366 6117 061372 6118 061374 6119 061400 6120 061404 6121 061406 6122 061412 6125 061414 6124 061420 6125 061420 6126 061424 6127 061426 012746 050416 012637 026114 065006 R #JSMIES #CSMF 2A ,aDPC( PC.WAITF PC,RDJSE R1,R2 41$ R3,R4 i 4 208 ®e 6113 061352 061352 061356 061360 012746 050416 012637 000000 WRITE TO 1? BR IF NO -- LEAVE AT 0. YES == SET EXPECTED STATUS. ENABLED TO WRITE MATCH ENABLE? BR IF NO -- LEAVE EXPECTED ALONE. WRITE 10 1? BR IF NO -- LEAVE AT 0. YES -- SET EXPECTED STATUS. ; ENABLED TO WRITE CROSSHAIR ENABLE? ; BR IF NO -- LEAVE EXPECTED ALONE. R ERR] oroO EIIE RRER 061326 061332 061334 004737 013704 TR 6108 061304 6109 061310 6110 061314 061314 061320 061322 6111 061326 112737 LR 6106 6107 061276 6112 29-JAN=-81 17:22 EXECUTE CLEAR ALL, THEN GENERAL WRITE. START THE DPU. WAIT FOR DISPLAY STOP. GET DXR, DYR INTO R2, Ré4. CHECK DXR (X=CURSOR) BR IF ERROR (HECK DYR (Y=CURSOR) BR IF OK. DECREMENT THE RETRY COUNTER ;aaaR GO TRY AGAIN [F NOT NEGATIVE ;aaak 113 JSV11/7VS11 == GRAPHIC SYS. DIAG MACRQ M1113 29-JAN-81 17:22 PAGE 86-1 CURSOR REGISTERS/SWITCH/MATCH see TEST 23 6147 061516 438: 6148 061536 114000 012701 061536 6149 g}g? 061542 012703 110000 6152 061546 6153 061552 6154 061556 6155 061560 g}gg 061562 6158 061566 6159 061566 6160 061572 6161 061576 6162 061600 g}gz 82}282 6165 061606 6166 061612 6167 061614 6168 061620 6169 061622 6170 061626 6171 061632 032705 000002 001405 032705 000001 001002 042701 004000 032705 001405 032705 001002 062701 032705 001407 032705 001004 042703 013700 6173 061644 6174 061650 6175 061654 6176 061656 6177 061660 6178 061662 6179 061664 6180 061666 g;gg 061670 6183 061710 6184 061712 6185 061716 6186 061724 6187 061726 6188 061732 5% 000004 010000 # 000040 000020 010000 065012 061632 052777 000001 061640 004737 027454 ; REPORT THE ERROR. CEZWE ,RLXYE ENABLES ARE 1. #B1T15! JSSIES! JSMIES,RT ; ASSUME SWITCH & MATCH * ASSUME CROSSHAIR ENABLE IS 1. #31T151CHIE RS ; ENABLED TO WRITE SWITCH ENABLE? #JSWE ,RS P BR IF NO == LEAVE EXPECTED ALONE. 5% #JSWD RS 5% #J5SIES,RT : WRITE TO 0? * BR IF NO == L.EAVE AT 1. * YES == CLEAR EXPECTED STATUS. BIT BEQ BIT BNE BIC BIT BEQ BIT BNE BI( #JMWE ,RS 6% #JMD ,RS 6% #JSMIES ,R1 #JCWE RS 7% #JCWD RS 7% #CHIE ,R3 ; ENABLED TO WRITE MATCH ENABLE? P BR IF NO == LEAVE EXPECTED ALONE. * WRITE TO 0? : BR IF NO -- LEAVE AT 1. * YES == CLEAR EXPECTED STATUS. : ENABLED TO WRITE CROSSHAIR ENABLE? * BR IF NO -- LEAVE EXPECTED ALONE. * WRITE TO 0? : BR IF NO -- LEAVE AT 1. * YES == CLEAR EXPECTED STATUS. BIT BNE BIC 000010 6172 061632 HRDERR MOV MOV BIT BEQ 7%: 005237 065056 032737 000077 065056 001402 000137 061364 DPCONT BIS JSR 121172 004737 027454 004737 065430 020102 001002 020304 001412 005309 100361 MOV JSR SR CMP BNE CMP 72%: 738: 8%: BEQ CSRETRY,RO ; RESTART, TO SET ALL, THEN DO GENERAL WRITE. #31T0,aDPC PC,WAITF PC.WAITF PC .RDJSE R1,R2 72% R3,R4 73$ RO DEC 7% BPL HRDERR CESWE ,PLXYE ENDSEG INC BIT BEQ JMP : d@aR : "CONTINUE THE DPU. * WAIT FOR DISPLAY STOP. : WAIT FOR DONE. * GET DXR. DYR INTC R2, Ré4. ) (X=CURSOR ; CHECK DXR : BR IF ERROR * CHECK DYR (Y=CURSOR) : BR IF OK. * DECREMENT THE RETRY COUNTER :a@aaR * GO TRY AGAIN IF NOT NEGATIVE :aaaR * REPORT THE ERROR. :>>>>>>>>>>>>END SEGMENT CSMF 2B #~077 ,CSMF 2B 8$ 1$ : INCREMENT THE LDJSS WRITE DATA. : DONE ALL COMBOS? * BR TO EXIT IF YES. ® NO. SO LOOP BACK FOR ANOTHER ROUND. SEQ 0164 ' VSV1;£§§1;3.. GRAPHIC SYS. DIAG MACRO M1113 CURSOR REGISTERS/SWITCH/MAT(H "ee 29-jAN-81 17:22 ; THE CHANNEL UNDER TEST. 6191 6192 6193 061732 6194 061736 6195 061742 004737 105037 013705 026074 026106 065006 tSMT9: 6197 061746 6198 061752 6199 061756 6200 061762 062705 042705 020537 001451 000400 1%: 6201 6202 061764 6203 061766 061766 061772 061776 6204 062002 6205 062006 062006 062012 062014 6206 062020 6207 062024 6208 062030 6209 062034 €210 062040 6211 062044 6272 062046 6213 062050 621% 062052 6215 062054 6216 062056 6217 062060 176377 065006 JSR CLRB MOV PC,DPRESET ; DO SOFT INITIALIZE. (SCH.8.RS ; GET CHANNEL # [N R5<9:8> ADD BI( CMP BEQ #]T8,RS ; INCREMENT TARGET CHANNEL RS,(SCH.8 BACK TO THE CHANNEL UNDER TEST? ; BR = YES. DONE INTMASK #~(<BIT19!BIT8>,RS 2% ; MASK THE CHANNEL FIELD. 1 <CCCC<C<<<<<<BEGIN SEGMENT CSCH.8,MIRTJISS! JCWE ! JMWE ! JMWD ! JSWE ! JSWD ,aDXR #WRTJISS ' JCWE ! JMWE ! JMWD ! JSWE ! JSWD ,=(SP) (SCH.8, (SP) 012746 053716 012677 004737 027454 012746 042017 050516 (SP)+ ,aDXR RS, AWRTJSS ' JMWE ! JMWD ! JSWE ! JSWD ,aDXR HWRTJSS ! JMWE ! JMWD ! JSWE ! JSWD ,=(SP) RS, (SP) + ,aDXR (SP) PC,WAITF 121016 100000 100000 065012 065404 #IT15,R1 : EXPECT ENABLES TO BE CLEAR. CSRETRY RO PC,GETJSE R1,R2 ; aaaR R3.R4 : CHECK DYR (Y=CURSOR) #IT1S,R3 10%: 12% 00C137 13% 12%: 102370 HRDERR 061746 : SET ENABLES PC,WAITF 0274654 6218 6219 062100 6220 062102 6221 6222 062106 SEQ 0165 ; CHECK THAT WRITING JS AND JM ENABLES OF OTHER (HANNELS CLEARS ENABLES OF 6190 619 J 13 PAGE 87 13%: 2%: ENDSEG JMP RO 108 ; BR IF COK. JENOCL ,RLXYE 1% : LOAD R2 & R4 W/ DXR, DYR. ; CHECK DXR (X=CURSOR) : BR IF ERROR : DECREMENT THE RETRyY COUNTER ;3a@aR : GO TRY AGAIN IF NOT NEGATIVE ;aaaR ; REPORT THE ERROR. 233525353 5>>>>END SEGMENT : LOOP BACK TO TRY ANOCTHER TARGET. e S ——— - c— —— - - - | | VSV11/vyS11 == GRAPHIC SYS. DIAG MACRO M1113 | wes TEST 23 | i ! ; ) CURSOR REGISTERS/SWITCH/MAT(H 6224 6225 29-JAN-81 17:22 K 13 PAGE 88 SEQ 0166 ’ 3 :TEST THE SOFT JOYSTICK SWITCH INTERRUPT OPERATION: PENDING. : (1) CLEAR SWITCH ENABLE, SET SWITCH, SEE THAT NO INTERRUPT PENDING. 2559 6228 v CLEAR SWITCH, SET SWITCH ENABLE, SEE THAT NO INTERRUPT SET BOTH SWITCH ENABLE AND SWITCH, SEE THAT FLAGS SHOWS PENDING INTERRUPT, REPEAT (3), BUT ALLOW INTERRUPT AND CHECK RESUL.TS REPEAT (4) BUT FROM DISPLAY FILE, SEE THAT SWITCH INTERRUPT STOPS : : (2) (3) : (4) 6234 : (5) 25%3 8533 (1) TEST THAT NO INTERRUPT REQUEST OCCURS WITH ENABLE CLEAR AND SWITCH SET. 6240 062106 6241 062110 004737 6242 062114 062114 004737 6243 062120 (SMT10: BGNSEG JSR INITDP JSR BISW3 6229 6230 6231 gs%% : : 6235 . 062120 062124 012746 053716 026176 025402 012677 004737 120702 027454 062140 062144 062150 6246 062154 012746 053716 012677 004737 160002 065006 120664 027454 6245 062140 MOV BIS 042002 065006 062130 6244 062134 062164 062170 062174 6249 062200 012746 053716 012677 004737 160000 065006 120640 027454 6251 062212 004737 027454 6250 062204 6252 062216 012777 040000 1%: 120624 062216 012777 000012 120610 6253 062224 1 <<<<<<LKLKLKLKLLK<BEGIN SEGMENT : DISABLE INTERRUPTS. PC,DSBINT : INITIALIZE THE DPU. : GO DO SOFT INIT, CHECK THE STATE. PC,.DPINIT CSCH.8,#WJSS'JSWE:0,aDXR ; CLEAR SWITCH ENABLE. #WJSS'JSWE'D,~(SP) CSCH.8, (SP) MOV JSR + ,aDXR (SP) PC,WAITF MOV BIS MOV JSR SP) CC ! SWCHON,=( #WE CSCH.8, (SP) (SP)+,aDYR PC,WAITF BISwW3 CSCH.8,#WECC,aDYR BISW3 6247 062160 004737 023422 6248 062164 PROCESSING AND GETS CURSOR. JSR CSCH.8,#WECC'SWCHON,aDYR PC,IIRCHK MOV BIS MOV JSR #WECC,-(SP) CSCH.8, (SP) (SP)+,aDYR PC,WAITF JSR PC,WAITF MOV WTDSRA MOV ENDSEG ; SET THE SWITCH. : CHECK INTERNAL REGS FOR INIT STATE. :TURN OFF THE SWITCH #GTJSSW,aDXR :DISMISS INTR REQ, IF ANY #0,FLG :CLEAR PENDING INTERRUPT #08~C17'SETFLG,aDSR >35>>>>>>>>>END SEGMENT [ ; VSV11/vS11 == GRAPHIC SYS. DIAG MACRO M1113 wx+ TEST 23 CURSOR REGISTERS/SWITCH/MAT(H 6255 6256 6257 6258 062226 6259 062230 6260 062234 062234 6261 062240 062240 6262 062254 6263 062260 6264 062274 6265 062300 6266 062304 062304 6267 062310 29-JAN-81 17:22 L 13 PAGE 89 SEQ 0167 :(2) TEST THAT NO INTERRUPT REQUEST OCCURS WITH ENABLE SET AND SWITCH CLEAR. 004737 026176 004737 025402 012746 053716 012677 004737 CSMT11: BGNSEG JSR INITDP JSR BISW3 MOV BIS MOV 120564 027454 012746 053716 012677 004737 004737 042003 065006 004737 025402 (SP)+,aDYR MOV BIS #WJSS ! JSWE ' JSWD,~(SP) CSCH.8, (SP) JSR PC,WAITF Jg?TDP 3 CSCH.8,(SP) PC,WAITF MOV ' #WECC'0,=-(SP) JSR BISW3 120542 027454 023422 LLLKL<BEGIN SEGMENT : DISABLE INTERRUPTS. : INITIALIZE THE DPU. : GO DO SOFT INIT, CHECK THE STATE. PC.DPINIT (SCH.8,#WECC'0,aDYR ; CLEAR THE SWITCH. 1 K<< PC,DSBINT i JSR ENDSEG CSCH.8,#WJSS'JSWE'JUSWD,aDXR ; SET SWITCH ENABLE. (SP) +,aDXR : CHECK INTERNAL REGS FOR INIT STATE. PC,IIRCHK PC,DPINIT : GO DO SOFT INIT, CHECK THE STATE. :OO55>>>>>>>>END SEGMENT VSV11/vS11 == GRAPHIC SYS. DIAG MACRO M1113 wex TEST 23 CURSOR REGISTERS/SWITCH/MATCH 6276 062340 6277 062344 6278 062360 6279 062364 6280 062370 6281 6282 062426 6283 062426 6284 062442 6285 062446 6286 062462 6287 062466 6288 062474 6289 6290 062500 £62500 6291 062506 6292 062512 6293 062514 Mm13 PAGE 90 SEQ 0168 ;(3) SET SWITCH AND ENABLE, SEE PENDING INTERRUPT 6271 6272 062312 6273 062314 062314 6274 062320 6275 062324 062324 29-JAN-81 17:22 ;1 <<LLLKLLLLLLL<BEGIN SEGMENT CSMT12: BGNSEG 004737 004737 012746 053716 012677 004737 012746 012701 012777 017702 INITDP JSR JSR 025402 026176 BISW3 042003 065006 120476 027454 160002 000002 120432 012746 053716 012677 004737 012746 053716 012677 004737 012777 004737 MOV MOV MOV #CHAR' JSLCKO!PINTRB!PVE(CZ2,R1 RDDSRA MOV MOV 64%: CSCH.8,#WJSS!JSWE ! JSWD ,aDXR SP) CC ! SWCHON,=( #WE CSCH.8, (SP) (SP)+ ,aDYR JSR 020102 001410 ; GO DO SOFT INIT, CHECK THE STATE. MOV BIS MOV JSR BIS 120436 PC,DSBINT #WJSS ! JSWE ! JSWD,=(SP) CSCH.8,(SP) BISW3 065006 120460 027454 100016 PC.DPINIT IFERROR CMP BEQ HRDERR BISW3 (SP)+,aDXR PC,WAITF PC,WAITF FLG,R2 #SELFLG,aDSR aDSR,R2 NOSWPI ,EXPREC R1,R2 649 NOSWPI ,EXPREC, : READ FLG INTO R2 . ; 0K? s YES. ; NO. (SCH.8,#WECC,aDYR 065006 120376 027454 042002 065006 MOV BIS ) S !0,=(SP JS ! JSWE #W 120354 027454 040000 027454 012777 004737 000012 023422 004737 026074 120342 2%: 3 TURN OFF THE SWITCH. CSCH.8, (SP) (SP) +,aDYR PC,WAITF CSCH.8,#WJSS!JSWE!0,aDXR CSCH.8, (SP) MOV JSR MOV (SP) +,aDXR PC,WAITF #GTJSSW,aDXR PC.WAITF ;DISMISS INTR REQ, IF ANY WTDSRA MOV JSR #0,FLG ; CLEAR THE FLAGS AND INTERRUPT. PC,IIRCHK ; CHECK THE INTERNAL REGISTERS JSR PC.DPRESET ; DO SOFT INITIALIZE. JSR 120326 ; EXPECT FLAGS TO SHOW PENDING. ; READ THE FLAGS REGISTER INTO R2. #WECC,-(SP) BISW3 3 TURN THE SWITCH ON. CSCH.8,#WECC!SWCHON,aDYR MOV BIS MOV JSR 160000 ; ENABLE SWITCH INTERRUPT. ENDSEG #08~C17!SETFLG,aDSR OO335355>>>>END SEGMENT N 13 VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 29-JAN-81 17:22 PAGE 91 =ex TEST 23 6295 6296 6297 6298 062520 6299 062522 062522 6300 062526 6301 062532 062532 6302 062540 062540 6303 062554 6304 062560 062560 062564 062570 6305 062574 6306 062600 6307 062604 6308 062610 6309 062612 6310 062614 6311 062616 6312 062622 6313 062624 6314 062630 6315 062650 6316 6317 062654 6318 6319 062654 6320 062656 SEQ 0169 CURSOR REGISTERS/SWITCH/MATCH ;(4) SET SWITCH AND ENABLE, CHECK FOR PROPER INTERRUPT. ;1 <<K<LLLLLLLKLLK<BEGIN SEGMENT CSMT13: BGNSEG 004737 004737 025402 026114 012737 177610 012746 053716 012677 004737 012746 053716 012677 026106 120262 065006 120244 000137 062654 MOV #WJSS ! JSWE ! JSWD ,=(SP) CSCH.8,(SP) (SP) +,aDXR BISW3 CSCH.8,#WECC! SWCHON, @D /& MOV 160002 026107 MOV BIS JSR 027454 105737 001414 012701 3§§E~AINT BISW3 042003 065006 027454 000100 026107 INITDP JSR JSR INTSET MOV 10%: 11%: 062604 BIS MOV JSR MOV TSTB BPL DEC BGT TSTB BEQ PC,DPINIT INTMASK IOKJSS , 0! 7740 IOKCKIN! #*01 ! ! JSWD ,aDXR JSWEWJSS CSCH.8,# ; PRIME FLAG, EXPECT JSS ; ENABLE SWITCH INTERRUPT. PC,WAITF #WECC ! SWCHON,=(SP) CSCH.8, (SP) (SP)+,aDYR PC,WAITF #100,R2 : ; DID WE INTERRUPT? ; BR IF YES. INTFLAG ; DID WE GET GOOD INTERRUPT? R2 10% ; BR_IF YES 2% #10% ,R1 NOSWI, INTERR ENDSEG JSR PC,DPRESET 3% : GET CPU PC. ; MIGHT AS WELL QUIT. 2%: 004737 026074 3%: ; TURN THE SWITCH ON. INTFLAG 11% MOV HRDERR JMP ; GO DO SOFT INIT, CHECK THE STATE. 3 SEGMENT >END 5555535555 ; DO SOFT INIT. wss TEST 23 CUKSOR REGISTERS/SWITCH/MATCH 6322 B_14 PAGE 92 SEQ 0170 :(5) CHECKX SWITCH INTERRUPT OPERATICN FROM DISPLAY FILE. g§%2 L<BEGIN SEGMENT ;<LK CSMT14: BGNSEG INITDP : GO DO SOFT INIT, CHECK THE STATE. PC,DPINIT JSR : ENABLE INTERRUPTS. PC.ENAINT JSR 6325 062662 6326 062664 062666 004737 025402 6327 062670 004737 026114 6328 062674 062674 062700 062704 012746 053716 012637 BISW3 MOV BIS MOV 175000 065004 065072 BISW3 MOV BIS 6329 062710 012746 146013 062710 065006 (53716 062714 062720 012637 065100 062724 062730 062734 012746 053716 012637 175402 065004 065102 6330 062724 MOV BISW3 MOV BIS MOV - MOVB 6331 062740 112737 000377 026107 6332 062746 062746 062754 012777 004737 065072 027454 6337 062776 gggg 063002 001412 012701 6340 063022 020227 065114 6341 063026 103412 6342 063030 012701 045106 1%: 6345 063054 2%: 065074 100000 063064 013703 065076 6347 063074 6348 063100 005737 001416 065012 6346 063064 : ... AND SET SWITCH ENABLE CSCH.8,#CUIS,CSMF3B #CUIS,=(SP) . 8, (SP) CSCH (SP)+,CSMF3B CSCH.6.#LDECC'SWCHON,CSMF3C ; ... AND TURN ON SWITCH. = (SP) ECC | SWCHON, #LD CSCH.6, (SP) (SP)+, CSMF 3¢ #%0377.INTFLAG PC.WAITF MOV HRDERR #.-16,R1 I ., INTERR NOSW aDPr , &2 INTFLAG 1s : DID THE DPC HIT THE STOPN? * BR IF NO == OK * EXPECT A DPC PRICR TO STOPN. BISW3 #BIT15,CSMF3A+2,R1 : EXPECT DXR TO HAVE X CURSOR. #BIT15.CSMF3A+4,R3 : EXPECT DYR TO MAVE Y CURSOR. MOV BIS BISW3 MOV SWNOHLT ,EXPREC CSMF 3A+2 ,R1 #BIT15,R1 CSMF3A+4 R3 BIS #BIT15,R3 6349 063102 004737 065362 JSR PC ,RDDXY CMP R1,R2 063106 063110 063112 063114 063116 001002 020304 001410 6353 063142 6354 063144 658 : 004737 026176 004737 026074 CSRETRY 3 IFERRX2 SWNOCU,RLXYE 64$: e 063136 6352 063136 TST BEQ 020102 3$: . WAIT FOR STOP. : SAVE THE DPC. * TEST FOR GOOD INTERRUPT. : BR IF GOOD. R2,#CSMF 3D 2$ #CSMF 3C+4 ,R1 063070 052703 100000 6350 063106 : PRIME THE INTERRUPT FLAG. : START THE DPU. : START THE DPU. * WAIT FOR DISPLAY STOP. CMP BLO MOV HRDERR ggzz 063034 013701 052701 (SP)+, CSMF 3A #LDCP,=(SP) CSCH.6, (SP) JSR MOV TSTB BEQ 062760 063054 063060 * SET UP DISPLAY FILE TO LOAD CURSOR, 3A UPSTART #CSMF #CSMF3A,aDPC MOV PC,WAITF JSR 120056 6333 062760 004737 027454 6334 062764 017702 120042 6335 062770 105737 026107 6336 062774 CSCH.6,#LDCP,CSMF3A BNE CMP BEQ HRDERR 65$ R3,R4 64$ SWNOCU,RLXYE, JSR PC,DSBINT ENDSEG JSR . GET MASKED DXR, DYR INTO R2,R4. : 1ST ITEM OK? : NO. * 2ND ITEM OK? YES. ; NO. 122225553 >>>>END SEGMENT : DO SOFT INIT. PC,DPRESET st VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 29-JAN-81 17:22 . <& - f—— e | | VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 29-JAN-81 17:22 wsx TEST 23 CURSOR REGISTERS/SWITCH/MATCH C.14 PAGE 93 SEQ 0171 ! 6356 : VERIFY THE CURSOR MATCH OPERATION. ggg; : DO SOFT INIT. PC,DPRESET CSMT15: JSR 6359 063150 004737 026074 SEGMENT <BEGIN << 1 BGNSEG 6360 063154 EXPECT INTERRUPTS DON'T : #0, INTMASK MOVB 6361 063156 112737 000000 026106 : INSERT CHANNEL # IN FILE. 4B 6362 063164 063164 063170 063174 6363 063200 0632 063204 063210 6364 063214 063214 063220 063224 6365 063230 012746 053716 012637 146076 065006 065162 012746 053716 012637 175000 065004 065166 012746 053716 012637 063240 012637 6367 063252 6368 063260 012737 012737 020002 020002 012746 053716 6369 063266 004737 6372 063306 001406 063310 063316 012777 004737 026176 6374 063322 000405 063324 063332 012777 004737 6375 063324 gg;g 063336 065116 027454 065132 027454 6390 063434 000411 6396 063462 117500 11%: 1%: 3%: 065172 000004 065244 020004 065302 020002 065320 112737 000200 #2,CSMF4F +2 JSR PC.,DSBINT MOV JSR 6391 063436 012737 000002 065264 30%: 6392 063444 012737 020002 065302 g%gz 063452 012737 020004 065320 6395 063460 MOV 026106 CSCH.6,#LDECC!SWCHON,CSMF4C CSCH.8,#CURD ' JSWE ! JMWE ' JCWE ,CSMF&J (SP)+,(SMF&J #M!2,CSMF4G+2 #M:2,CSMF4H+2 : ASSUME NON=-INTERLACED POSITION #IOKCKIN' IOKJSM, INTMASK ; SAY MATCH INTR OK, WE WILL CHECK. : ARE WE IN AN ODD-NUMBERED ITERATION? #B1T70,LO00PK ; BR IF NO. 11% BEQ : YES ==START THE SETUP FILE FOR VISUAL. DPSTART #CSMF&4V 117514 001302 065172 001272 065170 003230 000002 #CURD ' JSWE ' JMWE ! JCWE ,=(SP) CSCH.8,(SP) MOVB BIT 6379 063344 012737 064670 064666 6380 063352 012737 064670 064664 2%: 017737 017737 005737 001027 032737 001012 012737 0.:2737 012737 MOV BIS MOV MOV 065302 065320 6378 063340 004737 026114 6381 063360 6382 063366 6383 063374 6384 063400 6385 063402 6386 063410 6387 063412 6388 063420 6389 063426 MOV BIS v #LDECC'SWCHON,=(SP) CSCH.6,(SP) (SP)+,CSMF4C MOV 6370 063272 112737 000202 026106 6371 063300 032737 000001 027700 6373 063310 #CUIM!CUON,=(SP) CSCH.8,(SP) (SP)+,CSMF4B CSCH.6,.#LDCP,CSMF4LC #LDCP,~-(SP) CSCH.6,(SP) (SP)+,CSMF4LC BISW3 6366 063244 012737 000002 065264 CSCH.8,#CUIM! CUOMN,CSMF MOV BIS MOV BISW3 MOV BIS MOV BISW3 175402 065004 065156 146152 065006 065210 063230 063234 BISW3 . 4%: BR #CSMF 4V ,aDPC PC,WAITF 1% DPSTART #CSMF&4U : START THE DPU. : WAIT FOR DISPLAY STOP. : START TO PUT MEMORIES IN WRITE-ONLY MODE. : START THE DPU. : WAIT FOR DISPLAY STOP. MOV JSR #CSMF 4U,aDPC PC,WAITF JSR PC.,ENAINT : ENABLE INTERRUPTS. MOV MOV TST BNE BIT BNE MOV MOV MOV aCSMPY ,CSMF4Y @CSMPX , CSMF 4X INTLAG o e 43 #BIT1,CSMF4Y 30% #4 ,CSMF4F +2 #M'4,CSMF4LG+2 #M!2,CSMF4H+2 : SETUP Y CURSOR POSITION. : SETUP X CURSOR POSITION. . ARE WE IN INTERLACED MODE? IF YES == 3 : NO == ARE WE ON AN ODD LINE? : BR IF YES == CAN WRITE ABOVE, NOT BELOW : EVEN LINE == SETUP FOR Y+4. : ... AND BACK DOWN BY 4 . AND BELOW Y BY 2. : ENDSEG MOV MOV BR MOV MOV MOV BGNSEG MOVB ; €<CLLLLLLLLLLLLLLLLLLLLLL< END SEGMENT. : CSMPY = TABLE POINTER FOR Y POSITIONS : CSMPX = TABLE POINTER FOR X POSITIONS #CSMPT8, CSMPY #CSMPTB, CSMPX 4 #2.,CSMF4F +2 #M'2,CSMF4G+2 #M'4, CSMF4H+2 wee. : ODD LINE == SETUP FOR Y+2, : ... AND BACK DOWN TO Y, ! ... BUT DOWN TO Y=4, 1 <<<LCC<LKK<<<<BEGIN SEGMENT #]OKCKIN, INTMASK : SAY WE'LL CHECK UNEXP. INTR. — — {_ | ySV11/vS11 == GRAPHIC SYS. DIAG MACRO M1113 | wes TEST 23 CURSOR REGISTERS/SWITCH/MATCH 29-JAN-81 17:22 D_14 PAGE 93-1 6397 063470 013705 065012 6398 063474 013701 06517 6399 063500 013703 065172 6400 063504 052701 100000 6401 063510 052703 100000 MOV MOV MOV BIS BIS Y CSRETRRS CSMF4X,R1 CSMF4Y ,R3 #B1T15,R1 #8IT15,R3 160000 MOV #WECC,=(SP) MOV JSR (SP) +,aDYR PC,WAITF 0402 063514 063514 012746 063520 053716 063524 6403 063530 6404 063534 6405 063542 063542 063550 6406 063554 6407 063560 6408 063564 6409 063566 6410 063570 6411 063574 6412 063614 6413 063616 6414 063616 6415 063622 6416 063624 6417 063626 6418 063630 6419 063632 6420 063634 6421 063636 6422 063656 6423 063662 BISW3 BIS 065006 012677 004737 117310 02745 012777 004737 017702 105737 002414 065176 027454 117252 026107 112737 000377 026107 43%: 010146 012701 117262 063552 012601 004737 020102 001002 020304 001414 005305 100337 065362 000137 064552 403$: 44%: 6424 063662 112737 000202 026106 6425 063670 112737 000377 026107 6426 063676 063676 052777 063704 004737 6427 063710 012701 6428 063714 105737 6429 063720 100002 000001 027454 000100 026107 017702 117100 6430 063722 6431 063724 005301 003373 6433 063732 6434 063740 6435 063746 017737 017737 105737 117100 117074 026107 010146 012701 063714 012601 000137 064046 027727 117014 6432 063726 6436 063752 001417 6437 063754 002434 6438 063756 6439 063760 6440 063764 6441 064004 2225 064006 644h 064012 6445 064012 6446 064020 001040 45%: 40$: 003170 003172 41%: : 5%: ; CLEAR THE SWITCH CSCH.8, (SP) DPSTART #CSMF 4D #CSMF4D,aDPC MOV PC,WAITF JSR abP( ,R2 MOV INTFLAG TSTB 4038 BLT ; PRIME THE INTERRUPT FLAG ; START THE DPU. : WAIT FOR DISPLAY STOP. ; ANY INTERRUPTS? MOV MOV HRDERR MOV R1,=(SP) #.-14. ,R1 IFAULT,INTERR (SP)+,R1 JSR CMP BNE CMP BEQ DEC BPL HRDERR PC,RDDXY R1,R2 448 R3,R4 45% RS 438 CRWRE ,RLXYE MOVB MOVB #IOKCKIN!'IOKJSM,INTMASK ; SAY WE'LL CHECK FOR MATCH : PRIME THE INTERRUPT FLAG. #%0377,INTFLAG BIS JSR MOV TSTB BPL #B1T0,aDPC PC,WAITF #100,R1 INTFLAG 418 ; CONTINUE THE DPU. : WAIT FOR DISPLAY STOP. ; SETUP A WATCHDOG COUNTER. : DID WE GET AN INTERRUPT? ; BR IF YES. MOV abP( ,R2 : GET DPC FOR ERROR. JMP DEC BGT MOV MOV TSTB BEQ BLT 065234 CSCH.8,#WECC,aDYR MOVB _ #*0377,INTFLAG DPCONT 117126 SEQ 0172 8$ : GO TRY THE NEXT COORDINATES. R1 408 aDXR, SDXR aDYR, SDYR INTFLAG 5% 50% MOV MOV HRDERR MOV JMP R1,-(SP) #408 ,R1 NOCMI, INTERR (SP)+,R1 50% CMP aDPC ,#CSMF4K+2 BNE 51% : WAS IT A GOOD INTERRUPT? : BR IF NO INTERRUPT OCCURRED. :DID WE GET TQ THE STOPN (NO MATCH)? ; BR IF NO P e e e e | USV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 vee TEST 23 6447 064022 6448 064042 6449 6450 064046 6451 0646046 6452 064052 6453 064054 6454 064074 6455 064076 6456 064116 6457 6458 6459 064122 6460 6461 064122 6462 064126 6463 064132 6464 064136 6465 064142 064142 064144 064146 064150 064152 CURSOR REGISTERS/SWITCH/MATCH HRDERR JMP 000137 (064362 508%: 020227 065232 001011 000412 501%: 000137 064362 51%: 65%: 64%: 065170 065172 116630 116626 NOMAT,PNTCOOR ;NO MATCH AT ALL. JMP 67%: 66%: 017702 017704 100000 027454 000004 116566 68%: 012777 017702 020102 6%: 110000 000002 116476 #CSMF 4K ,R1 #LVEC'ALL.R3 116502 : EXPECT DPC TO BE JUST AFTER MATCH. : EXPECT DSR TO SHOW LVEC & ALL PIX BITS : GET ACTUAL DPC. : AND THE DSR. CMP R1,R2 : 1ST ITEM 0OK? CMP BEQ R3,.R4 64% : 2ND ITEM OK? : YES. 65% ; NO. HRDERR MATPCS,EXPRC2, . NO. MOV MOV MOV MOV CSMF4X ,R1 CSMF4Y ,R3 aDXR,R2 aDYR,R4 : GET EXPECTED MATCH X s v D THE ¥, : GET DXR SHOULD HOLD MATCH X : GET DYR, SHOULD HOLD MATCH Y. CMP R1,R2 : 1ST ITEM 0OK? CMP BEQ R3.R4 66% : 2ND ITEM OK? : YES. MOV JSR ADD #RSTPOS ,aDXR PC,WAITF #4 ,R1 HRDERR 67% MATXYE ,EXPRC2, ; NO. : NO. : RESTORE GRAPHIC POSITION TO DXR, DYR : WAIT FOR STOP. : X SHOULD BE X(MATCH)+4 aDXR,R2 aDYR,R4 : GET ACTUAL DXR ; ... AND DYR. CMP BNE CMP BEQ R1.R2 69% R3,R4 68% : 1ST ITEM OK? ; NO. MOV #LVEC R IFERRX2 MATPOS,EXPRC2 69%: ; GO CHECK OTHER MATCH DATA. ; GO SEE IF IT MATCHES ELSEWHERE. aDP( ,R2 aDSR,R4 MOV MOV 116552 116550 020102 001002 020304 001410 012701 7$ ; BR IF NO ;COME HERE IF WE THINK WE GOT A MAT(CH BNE 020304 001410 012777 004737 062701 51% IFERRX2 MATXYE ,EXPRC2 001002 6482 064336 064336 HRDERR BR BNE 020102 6479 ;YES 501$ iFERRX2 MATPCS,EXPRC2 020304 001410 ; DID WE DO A MAT(CH STOP? CMNOMI,PNTCOOR MOV MOV 001002 ; GO SEE IF OTHER THINGS CHECK OuT. HRDERR 020102 013701 013703 017702 017704 7% R2,#( SMF 4K MOV MOV 116674 116672 NOMST ,PNTCOOR SEQ 0173 ; COME HERE IF NO MATCH INTERRUPT OCCURRED. 012701 065232 012703 113774 017702 017704 E_14 PAGE 93-2 CMP BNE 064172 6480 064320 6481 064324 29-JAN-81 17:22 HRDERR RDDSRA MOV MOV MATPOS,EXPRCZ2, FLG,RZ #SELFLG,aDSR aDSR,R2 IFERROR MATFLE,FLGER,7$ (MP R1,R2 ; 2ND ITEM OK? : YES. . NO. : GET OP-CODE EXPECTED FOR FLAGS. : GET FLAGS. : READ FLG INTO R2 . 3 OK? USV11/vS11 == GRAPHIC SYS. DIAG MACRO M1113 . w=ee TEST 23 064340 822%25 CURSOR REGISTERS/SWITCH/MAT(CH 001470 » 6483 064362 112737 000377 026107 7%: ' 6484 064370 064370 064376 012777 004737 065234 027454 027454 6485 064402 004737 6487 064412 002421 6439 064416 6490 064422 6491 064424 6492 064430 6493 064450 gzgg 064452 017702 010146 012701 064404 012601 000137 064552 6486 064406 116434 116410 17%: 6497 064456 012701 065334 6498 064462 (012703 173200 6499 064466 017702 116340 017704 064502 064504 064506 020304 001410 064500 064526 gggi 064526 001002 71%: 70%: 064552 MOV JSR 17% MOV MOV MOV HRDERR MOV JMP aDPC ,R2 R1,=(SP) #.-16. ,R1 MATUI,INTERR (SP)+ ,R1 8% 18% MOV MOV MOV #CSMF4]+2 ,R1 #STOPN'GOLD,R3 abDPC ,R2 : GET EXPECT STOP DPC. : DSR SHOULD HAVE STOP + GOLD COLOR. : GET THE DPC. BNE 71% 064666 062737 000002 6513 064604 023727 064666 6514 064612 103002 6515 064614 000137 063352 065000 8% MATUI ,PNTCOOR 9%: 10%: 6518 064620 CSMNEXT: 6523 064640 6524 064640 064640 064644 064646 004737 103401 000402 027646 : 1ST ITEM OK? ; NO. JMP 6516 004620 000004 ; GET THE DSR : 2ND ITEM OK? R3.R4 : YES. 70% MENDPCS,EXPRCZ2, : NO. 233>>>>>>>>>>END SEGMENT : BUMP POINTER TO X DATA. : IS X POINTER AT END OF TABLE? : BR IF YES == GO DO NEXT Y. ADD CMP BHIS #2,CSMPX CSMPX ,#CSMPTE 9% ADD #2,CSMPY CSMPY ,#CSMPTE 108 2% : IS Y POINTER AT END OF TABLE? : BR IF YES == WE'RE DONE. : NO == GO DO NEXT Y. INC CMP BGE JMP CSCHAN CSCHAN, #4 1% CSMLOOP : INCREMENT TO NEXT CHANNEL : DID WE DO ALL AVAILABLE CHANNELS? : BR IF YES == GO TO EXIT. : NO. LOOP BACK TO TEST NEXT CHANNEL. JSR PC,LOOP JMP 6517 6519 064620 005237 065002 6520 064624 023727 065002 6521 064632 002002 6522 064634 000137 060052 INTFLAG CMP BEQ HRDERR ENDSEG 6512 064576 : START THE DPU. : WAIT FOR DISPLAY STOP. BLT 8%: 064664 065000 : PRIME THE INTERRUPT FLAG. TO SEE IF WE GET BAD MAT(H AGAIN START : : DID WE GET AN INTERRUPT? : BR IF NO : BR IF GOT "'GOOD'" INTERRUPT. 6506 064552 6507 064554 062737 000002 6508 064562 023727 064664 6509 064570 103002 : YES. . NO. PC,WAITF HRDERR 063366 #CSMF 4E ,aDP(C PC,WAITF SEQ 0174 JSR 18%: 000137 7% MATFLE,FLGER, #~0377,INTFLAG MOVB DPSTART #CSMF4E gggg 064532 gg}? 064572 F_14 PAGE 93-3 aDSR,R4 MOV IFERRX2 MENDPCS,EXPR(C?2 R1,R2 CMP 116336 020102 000137 HRDERR BEQ 6496 064456 6500 064472 6501 064476 064476 BEQ TSTB 105737 026107 6488 064414 001446 29-JAN-81 17:22 CMP BHIS JMP 1%: CSMEND: COMEND BCS BR 3% CSMITR 64% 65% : LOOP BACK. : REPEAT 'TIL LOOPER EXPIRES. | wewx TEST 23 | f | 64$: 064650 000137 060046 ' | CURSOR REGISTERS/SWITCH/MATC 65%: 064654 004737 030072 JSR CSMXIT: EXIT 6525 064660 6526 6527 6528 CSMPX: CSMPY: 000000 000000 .WORD .WORD CSMPTB: .WORD 6534 064670 000000 000002 000004 .WORD 000200 6535 064702 000040 000100 6536 CSMITR PC,TSTEND ST 001776 6538 064726 001736 001676 001576 6539 064740 001252 000524 001462 6540 064750 000006 0C0016 000036 6541 064764 001770 0C1760 001740 0 O 0.8I1T1,BIT2,BIT3,BIT4 ggz% 065000 000000 CSMPTE: .WORD O 6544 065002 6545 065004 6546 065006 ggzg 065010 000000 000000 000000 000000 CSCHAN: .WORD CSCH.6: .WORD CSCH.8: .WORD CSCH.11: 0 O 0 WORD O gggg 065012 000002 CSRETRY: LWORD 2 gggz 065040 : FIRST, FLOATING 1 ON Q'S, BITS 2 : ... THRU 9. BITS,BIT6,BIT7,BIT8,BIT9 :ALL 1'S FOR POSITION A1=%01776 : THEN, FLOATING O ON 1°'S 8(BIT4 .WORD A1,A18°CBIT1,A18*CBIT2,A18~CBIT3,A1BIT8,A1 R*(BITY 7,A18~C 18~CBIT "WORD A1R~CBITS,A18~CBIT6,A : ALTERNATING BITS AND PAIRS. LWORD 1252,524,1462,636 .WORD 6,16,36,76,176,376 1770,1760,1740,1700,1600,1400 .WORD 6537 064714 001776 001774 001772 6551 6552 065014 : PRINT ERROR SUMMARY, [F REQ'D. : TABLE OF MATCH POINTS == ALL VALUES ARE USED FOR X AND Y: gg%g 6531 064664 gggg 064666 JMP SEQ 0175 : EXTENDED PRINTOUT FOR SYNC CHANNEL: PRSYCH: PRINTX #FSYCHAN,CSCHAN RTS 000207 PC 6558 065050 :DISPLAY FILES FOR CURSOR/SWITCH/MATCH TEST == :LOAD CURSOR POSITION REGISTERS 175000 000000 000000 CSMF1A: .WORD LDCP,0,0 THEM BACK 146100 CSMF1B: .WORD 6561 065054 6562 065056 146052 146012 CSMF2A: .WORD CUIOFF !CUOFF CUIOFF CSMF2B: .WORD CURD,STOPN .WORD CSMF2C: CUON!*077 .WORD CSMF2D: gggg 6557 065042 gggg 065052 .WORD 173000 6563 065060 146100 173000 6564 065064 146077 gggg 065066 160000 065056 6567 065072 6568 065100 6569 065102 175000 146013 175402 001332 .WORD 002464 C(SMF3A: .WORD CSMF3B: .WORD CSMF3C: .WORD CURD STOPN DJMP,CSMFZ2B :READ : CLEAR ALL ENABLES : DO GENERAL WRITE : READ CURSOR (ENABLES COME TOO), THEN STOP : SET ALL ENABLES : THEN GO DO GENERAL WRITE AND READ. ; LOAD CURSOR WITH SOME DATA ; ENABLE SWITCH INTERRUPT ; TURN ON THE SOFT SWITCH LDCP,*01332,%0246 CUIS LDECC:SWCHON "WORD DNOP,DNOP,DNOP,DNOP ; DO SOME NO-OPS == SHOULD STOP 164000 164000 164000 . STOP == SWITCH DIDN''T WORK CSMF3D: .WORD STOPN 173000 :DISPLAY FILE FOR CURSOR MATCH TEST: gg;z ! CH1,RDWRT ! CH2 ,RDWRT!CH3 ; MEMORY SETUP, R/W. 6575 065116 176074 176474 177074 C(SMF&4V: .WORD RDWRT ! CHO,RDWRT MF4A 6570 065104 22;} 065114 6579 065126 160000 065142 6578 065132 176034 176434 657 .WORD 177034 (SMF4U: .WORD DJMP,(S WRT!CHO,WRTI!CH1, WRT'CH2 ,WRT'CH3 ; MEMORY SETUP, WRT=ONLY. =< G_14 . VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 H 29-JAN-81 17:22 PAGF 93-4 ———— ! VSV11/VS11 == GRAPHIC SYS. DIAG MACRQ M1113 | w++ TEST 23 CURSOR REGISTERS/SWITCH/MATCH 1 i | | 6579 065142 6580 065144 6581 065150 6582 065156 6583 6584 065162 6585 065166 6586 065170 6587 065172 6588 065174 6589 6590 065176 6591 065204 6592 065210 6593 065214 659, 065220 6595 065224 659 065206 6597 065232 6598 065234 6599 065242 6600 065244 6601 065250 6602 065260 6603 065262 6604 065266 6605 065276 6606 065300 6607 065304 6608 065314 6609 065316 6610 065322 6611 065332 6612 6613 6614 6615 065336 6616 065342 6617 065356 6618 065362 065376 6620 065402 6623 065404 6624 065410 065410 065414 065420 6625 065424 170140 175402 146076 175000 065162 065156 1€5000 CSMF4A: .WORD 173000 165000 065166 173000 065162 065156 160001 CSMF4B: .WORD CUON!CUIM,DPOP ; ENABLE CURSOR AND MATCH. 00u000 000000 000002 001776 020002 021776 173000 .WORD .WORD .WORD .WORD (SMF4K: .WORD CSMF4E: .WORD .WORD .WORD .WORD 061776 040000 041776 040000 LDCP C 0 DPOP ; LOAD CURSOR POSITION. : X : ¥ CSMF4F: "WORD .WORD .WORD "WORD CSMF4H: .WORD .WORD CSMF4]: .WORD ; STOP FOR CHECK. CURD!'JSWE:JMWE:JCWE,STOPN ; GO TURN ON MATCH ENABLE DJMS,CSMF4B DJMS,CSMF4C LVEC!ALL 1!4,0 STOPN ; GO TURN ON SWITCH ; SET TO WHITE. ; DRAW, SHOULD MATCH : ... WITH DPC AT F4K APNT,DJMS, CSMF4X LVEC! YELLOW 2.0 I'MAXX,0,I!M!MAXX,0 LVEC!'ViOLET .WORD M!2,2 I'0,MAXY,I!0,M!MAXY .WORD CSMF4G: .WORD ; RETURN. ; SET MATCH POSITION : LOAD CURSOR POSITION. CSMF4D: .WORD APNT,DJMS, CSMF&X DJMS,CSMF4LC WORD .WORD .WORD .WORD 065170 ; CLEAR THE MEMORIES. : GO TURN ON CURSOR AND MAT(H ENABLE ; TURN SWITCH ON, AND STOP ; TURN SWITCH ON, AND RETURN. CSMF&.: .WORD 000000 020002 000000 000002 040000 173000 065170 CLRMEM SEQ 0176 .WORD .WORD CSMF4C: .WORD CSMF4X: CSMF4Y: 160001 17:22 DJMS,(CSMF4B DJMS,CSMF4C,STOPN LDECC':SWCHON,DPOP CSMF4LC: .WORD 000000 000000 165000 114000 160001 146152 160001 160001 113774 040004 173000 114000 113600 000002 041776 113300 29-JAN-81 H 14 PAGE 93-S LVEC ! EGGBL M!2,M!2 I'M!MAXX,0,I!MAXX,0 LVEC!GOLD ; RESTART. SET POINT ; CHANGE COLOR : ... THEN MOVE TO X+2, Y. ; DRAW OUT TO RIGHT AND BACK. ; GO TO ABOVE MATCH POINT ; ... AND DRAW UP AND BACK. ; DRAW LEFT AND BACK. Z,M'Z I'0,M!MAXY,I!0,MAXY STOPN,STOPN s SUBROUTINES: “GET CURSOR COORDINATES, AND READ MASKED DXR, DYR INTO R2, R4 -- BIT. s WAIT FOR STOP PC,WAITF GETCURS: JSR : RETRIEVE CURSOR FROM SELECTED CHAN. CSCH.8,#WRTJSS!BIT6,aDXR BISW3 004737 027454 012746 053716 012677 004737 042100 017702 042702 115450 074000 017704 042704 000207 074000 BIC C04737 027454 GETJSE: JSR 012746 053716 012677 042100 065006 MOV 004737 065006 MOV BIS MWRTJSS 'BIT6,=(SP) CSCH.8, (SP) 027454 JSR PC,WAIT MOV aDXR,R2 MOV 115460 115442 115412 027454 RDDXY: BICW3 BIC aéCUS v RTS (SP)+, SDXR ; WAIT FOR STOP. #‘C<BIT15"0377/> aDXR,R2 #~C<BIT15!403777>.R2 ;B$<BIT1S"O3777>,aDYR,R4 ; DXR TO R2, LEAVE FLAG & COORD. ; DYR TO R4, LEAVE FLAG & COORD. #AC<BIT15!03777>,Ré4 PC ;GET JOYSTICK ENABLESBISwW3 ; WAIT FOR STOP. PC,WAITF ; READ CURSOR CSCH.8,#WRTJSS!BIT6,aDXR BIS CSCH.8,(SP) MOV JSR #WRTJSS 'BIT6,=(SP) (SP) +,aDXR PC,WAITF AR | | ! | JSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 wee TEST 23 6626 065430 065430 065434 6627 065440 065440 065444 6628 065450 6629 6630 065452 CURSOR REGISTERS/SWITCH/MAT(H 115402 017702 042702 063777 017704 042704 000207 067777 29-JAN-81 17:22 RDJSE: BICW3 MOV [.14 PAGE 93-6 #*C<BIT15!JSSIES!JSMIES>,aDXR,R2 ;DXR TO R2, LEAVE ENABLES aDXR,R2 BIC BICW3 S> #*C<BIT15!JSSIES!JSMIE,R2 #~(<BIT15!CHIE>,aDYR,R4 ;DYR TO R4. BIC RS #*C<BIT15!CHIE> MOV 115374 RTS aDYR, R4 PC END.TEST ‘"t"'.""t'.'.'.'."""'....'.""'"Q.'Q..'.'.Q".""Q..".'."". NN v | —— Se | e * . * END TEST 23 .'ltt"t.."'!t'.."Qt""t"'fi"..'tt..'tt"Q"'Q'.t'tt'.'.t"'.t'....'. SEQ 0177 | W ! | ySV11/yS11 == GRAPHIC SYS. DIAG MACRO M1113 j eee TEST 24 GRAPH=H]STOGRAM X 6632 29-JAN-81 17:22 J 14 PAGE 94 SEQ 0178 "'Q""'"fi'..'Q.'.'.."""..fi't..'...fifi".!"."'t'.""'...""."" s BEGIN TEST 264 L =~ GRAPH=HISTOGRAM X K 'tt"'t'"t"tt.'.tt""""'..'..'.."'.Q'Q...'t..'.".'.""..."..t.' ; 6633 065526 6634 065532 6635 065534 6636 6637 6638 6639 005737 001402 TST BEQ 002502 EXIT ;DPU ONLY 22? :NO, EXECUTE. : EXIT THIS TEST >>33>3333>3333>3>>3>>>3>>>> DPUMOD GHXTST TST PLOT GRAPH X = 1600 TO 200 (DELTA 30), FOR Y = 76 TO 2. WHEN DONE, REPEAT IN HISTO MODE, WITH BASE = X-20. DO THE SAME FOR CONNECTED-GRAPH AND FILLED HISTOGRAM, BUT AT LOWER RUN THE MEMORIES IN ‘WRITE=1°'S-ONLY'' MODE TO SEE STUFF. INTENSITY. REPEAT EACH INCREMENT 10 TIMES AFTER QUICK PASS. 027702 066142 027054 026640 027700 6643 065540 664 065544 6645 065552 6646 065556 6647 065562 6648 065570 6649 065576 6650 065604 065612 6652 065620 6653 065626 6654 065634 (ITERATION COUNT = 10.) 123774 000000 012737 012737 012704 066174 001600 001560 174176 001600 022300 003234 066212 066174 066214 066214 066200 066202 GH XTST: 8%: 1%: 013701 2%: 010000 066176 042737 020527 103743 004727 INC JSR BIT BNE 066214 13 $: 115116 001410 115112 010000 001776 027646 BIC CLR BIS MOV SKP2 115134 066214 4%: 5%: PC,TSTGO #208 EXTA PC.LUMIN PC,CLRRW1 sTITLE #GHX !ALL ,XA=2 ;SET G/H=X MODE WITH MAX INTENSITY ;START WITH GRAPH FUNCTION LOOPK , TEMP? #0,GHXTYP XA GHXTYP XA #1600, #1560,GHXT+2 #GY1'76,Y1 #1600,R4 ADD CMP BNE CMP BEQ HRDERR BIC CMP BLO ENDSEG LOOPTO JSR ;SET ERROR EXTENSION ADDRESS. ; BLAST LUT. JINIT IN R/W=1"S=ONLY MODE. ;SAVE A COPY OF LOOPK. ;SETUP THE FUNCTION IN FILE ... AND SET IN THE X AMPLITUDE JINIT BASE = X-20 sINIT Y INCREMENT = 76. sJINIT EXPECTED X. ¢ CLLLLLLLLLLLLLCLLLL<L<<<<< BEGIN SEGMENT. BGNSEG MOV 066202 177700 027454 010000 JSR MOV JSR JSR MOV MOV MOV MOV BIS MOV MOV MOV YI,R1 #°C77 .R1 RS ;SET CURRENT INCR IN R1. JINIT EXP Y. #GHXT ,aDPC ;START NEW INCREMENT. aDP( PC,WAITF #GHIINH, XA JRESUME, PLOT NEXT POINT. #GHI INH, XA 13% R1,R5 aDXR,R4 4% EXP Y = ¥ + ] :CHECK RETURNE aDYR,RS 5% GHXF ,XYERR #GH1 INH, XA RS ,AMAXY 3% 1% PC,LOOP R. X = X AMP, .. r oD ¥ 2 Y & I :GHX FAILS. ;DONE THIS INCREMENT ?7? JNOT YET, CONTINUE. s CCCLLLLLLLLLLLLLLLLLL<<<<< END SEGMENT, ; REPEAT... o ——— e | | | WSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 | wew TEST 24 i 065772 6681 6682 065774 6683 066002 6684 066010 6685 066012 6686 066020 6687 066026 6688 066032 6689 066040 GRAPH=KISTOGRAM X 103722 013737 023727 001414 162737 162737 6690 6701 066114 6702 066116 6703 066124 6705 066126 6706 066132 6707 066136 004737 1% 14 SEQ 0179 027700 MOV TEMP2,LOOPK ;RESET LOOPER. 000002 066202 066214 BEQ SuB SuUB 6% #2,Y1 #30,XA ;BR IF LAST INCR DONE. ;JOTHERWISE, SET NEXT INCR... s...AMPLITUDE... 000030 000030 000030 6%: 066174 060000 000400 066174 066212 040000 020000 066174 060000 066174 30%: YI,AGYI!2 SuB #30,R4 #30,GHXT+2 1% ;...AND BASE LINE. ;DO NEXT SET. TST BNE GHXTYP 308 JUST DID GRAPH? .BR AHEAD IF NOT. CMP GHXTYP ,#FHST :JUST DID FILLED-HISTO? SuB BR 066200 066174 027514 030072 CMP 174102 040000 6708 6709 6710 MOV BR #HST ,GHXTYP 8% BEQ SuB CMP BNE ggv 108 #BIT8, XA=2 GHXTYP ,#HST 318 ggGRPH,GHXTYP 31%: ggv g;HST.GHXTYP 10%: JSR JSR PC,PAUSE1 PC,TSTEND EXIT TST *YES. SET HISTO MODE ;...AND GO DO IT. :DONE IF YES. ;IF NOT, DECREMENT INTENSITY. JUST pip HISTO.? .BR AHEAD IF NOT. IF YES, NOW DO CONN-GRAPH .DID C-GRPH, NOW DO F=HIST : EXIT THIS TEST >>>33>333>3>>33333333>355>>> * ON ERROR, SHOW X AMPLITUDE AND Y INCREMENT. 208 : 6711 066142 6712 066172 6713 6714 PRINTX RTS #GHXYX,XA,YI PC :ERROR EXTENSION. *DISPLAY CODE FOR GRAPH/HISTO X TEST. 6715 6716 066174 6717 066176 6718 066202 6719 066204 6720 066206 6721 066212 6722 066214 6723 066216 6724 066220 6725 6726 066224 B(CS K PAGE 94-1 003234 066202 066174 6691 066042 6704 29-JAN-81 17:22 000000 GHXTYP: 0 GHXT: YIl: GYI'0 APNT :FUNCTION TYPE *SET BASE LINE. *SET Y INCR. 0.0 000000 XA: 160000 SETHB,0 GHX 'ALL 0 STOPN = HST MODE). ;X AMPLITUDE (BIT 14 DJMP, XA=2 066212 END.TEST :t'ttttitttttt'tttttitti'tttttt.ttttt*tttittfiittt"fit't!ittfitt‘tt't't"l :t it :t END TEST 24 :tttttttt.'ifi.tttitt.ti'ttt.ttt!t**ttittt'tt't'tt'tllt't't'!tt't'tt!t'tt - - -— VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 GRAPH=H]STOGRAM Y «xx TEST 25 6728 29-JAN-81 17:22 L 14 PAGE 95 SEQ 018C :'tttt'.'tt..t"'!t.."""t..'fifi".".'Qt'.t'fi.fiQ"Q't'.t'."tt""'tl. 1 - ol BEGIN TEST 25 : (ITERATION COUNT = 10.) . % GRAPH=-HISTOGRAM Y :'tt't.fi"'fi"tt.fittt"'i'i'.'t.t'tit'.t.fit'tl'."'lit..!'tt't.t.t'.t"'. 6729 066300 6730 066304 g;%} 066306 005737 001402 TST BEQ EXIT 002502 * PLOT GRAPH Y = 1600 TO 200 (DELTA 30), FOR X = 76 TO 2. : WHEN DONE, REPEAT IN HISTO MODE, WITH BASE = y=20. BUT AT LOWER 6733 673 : DO THE SAME FOR CONNECTED-GRAPH AND FILLED HISTOGRAM, : INTENSITY. RUN THE MEMORIES IN "WRITE=1"'S=ONLY'' MODE TO SEE STUFF. : REPEAT EACH INCREMENT 10 TIMES AFTER QUICK PASS. 6735 6736 6737 6738 6739 066312 004737 027702 6740 066316 012737 066714 022300 6741 066324 004737 027054 6742 066330 004737 026640 6743 066334 6744 066342 6745 066350 6746 066356 6747 066364 6748 066372 6749 066400 6750 066406 g;%z :DPU ONLY ?? ;NO, EXECUTE. : EXIT THIS TEST >>33>33333333333>3>33>>>>>> DPUMOD GHYTST TST 013737 012737 012737 013737 052737 012737 012737 012705 027700 127774 000000 066746 001600 001560 174176 001600 6758 066426 013701 005004 052737 6759 066434 012777 6761 066444 005277 6760 066442 000402 6762 066450 6763 066454 6764 066462 004737 032737 001001 6767 066472 001003 6765 066464 6766 066466 6768 066474 6769 066500 6770 066502 6771 066522 6772 066530 6773 066534 6774 066536 6775 066540 066540 JSR 066764 066746 066766 8%: 066766 066752 066754 1%: 6756 066420 042701 6757 066424 MOV 003234 12 6755 066414 GHYTST: JSR 177700 066750 060104 027704 114344 027705 114340 042737 010000 001410 020427 103743 004737 066766 001776 2%: 3%: 066766 13%: 4%: 5%: PC,CLRRW1 LOOPK , TEMP2 #GHY'ALL ,YA=2 #0,GHYTYP GHYTYP,YA #1600, YA #1560,GHYT+2 #GX]1!76 X1 #1600,R5 XI,R1 , #GHIINHYA SKP2 INC JSR BIT BNE ADD CMP BNE BEQ HRDERR BIC CMP BLO LOOPTO JSR :SAVE A COPY OF LOOPK. ;SET G/H=Y MODE WITH MAX INTENSITY :START WITH GRAPH FUNCTION :SETUP THE FUNCTION IN FILE :... AND SET IN THE Y AMPLITUDE ;INIT BASE LINE = Y=20. sINIT X INCREMENT = 76. JINIT EXP Y. :SET CURRENT INCR IN R1. BIS CLR : SET ERROR EXTENSION ADDRESS. ;INIT IN R/W=1"S-ONLY MODE. <LK BEGIN SEGMENT. ; <KCLLLLLLLLLLLLLLLLR #*C77 .R1 ENDSEG 027646 PC,.LUMIN ; BLAST LUT. #208 ,EXTA BIC CMP 066766 sTITLE BGNSEG MOV 114370 114362 027454 010000 MOV MOV 066754 010000 JSR MOV MOV MOV MOV BIS MOV MOV PC,TSTGO R4 JINIT EXP X... #GHYT ,aDPC ;START NEW INCREMENT. aDPC :RESUME, PLOT NEXT POINT. R1,R4 aDXR,R4 JEXP X = X + INCR. ;CHECK RETURNED X = X + INCR... aDYR,R5 ;...AND Y = Y AMPL. GHYF ,XYERR :GHY FAILS. R4 , AMAXX 3% :DONE THIS INCREMENT ?? JNOT YET, CONTINUE. PC,WAITF , #GHIINHYA 13% 43 5% , #GHIINHYA 1% PC,LOOP ; €<CLLLLLLLLLLLLLLLLLLLLLL< END SEGMENT. ; REPEAT... - VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 wxv TEST 25 GRAPH=HISTOGRAM Y 29-JAN-81 17:22 6778 066546 6779 066554 6780 066562 6781 066564 6782 066572 6783 066600 6784 066604 6;85 066612 013737 023727 001414 162737 162737 162705 003234 066754 027700 174102 000002 000030 000030 000030 066754 066766 1% MOV CMP BEQ SUB TEMP2,LOOPK XI, #GX]'2 6$ #2 X1 :RESET LOOPER. 1% ‘DO NEXT SET. ST BNE MOV BR CMP GHYTYP 308 #HST,GHYTYP 8$ GHYTYP ,#FHST ;JUST DID GRAPH? ...BR AHEAD IF NOT. ves SET HISTO MODE LAND GO DO IT. 30T DID FILLED-HISTO? SUB #BIT8,YA=2 “IF NOT, DECREMENT INTENSITY. 31$: ggv g;usr.cuvrvp BiD C-GRPH., NOW DO F=HIST 004737 004737 6806 6807 066714 6808 066744 6809 6810 6811 6812 066746 6813 066750 6814 066754 6815 066756 6816 066760 6817 066764 6818 066766 6819 066770 6820 066772 6821 6822 066776 066746 066746 060000 000400 066746 066764 040000 020000 066746 060000 066746 027514 030072 10%: JSR JSR PC,PAUSE1 PC,TSTEND BR 6$: 040000 #30, YA #30.RS #30 GHYT+2 SUB SUB SuB 066752 066746 SEQ 0181 BCS 103722 6 M 14 PAGE 95-1 308: 108 BEQ GHYTYP ,#HST 31$ ggcnpn.cnvrvp CMP BNE ggv EXIT TST :BR IF LAST INCR DONE. “OTHERWISE, SET NEXT INCR... t...AMPLITUDE... :...AND BASE LINE. ‘DONE IF YES. JUST pID HISTO.? .BR AHEAD IF NOT. xr YES, NOW DO CONN=-GRAPH s EXIT THIS TEST >>>>3333333333333>>>>>>>>> ; ON ERROR, SHOW Y AMPLITUDE AND X INCREMENT. 208: 000207 PRINTX RTS , YA, XI #GHXYX PC : ERROR EXTENSION. *DISPLAY CODE FOR GRAPH/HISTO Y TEST. 000000 150000 174100 114000 000000 127774 00000 173000 160000 000000 GHYTYP: 0 GHYT: X1I: 000000 YA: :FUNCTION TYPE *SET BASE LINE. SETHB.0 *SET X INCR. GX1'0 APNT GHY 'ALL .Y AMPLITUDE (BIT 14 = HST MODE). 0 STOPN DJMP, YA=2 066764 END.TEST 2 2 L2 2232222222222 23323232222 2222333332232 3 22222 2O 't :® '-t iRttt END TEST 25 sT T T 2 2 2 2222222222222 3222232233322 3333222222222ttt sl 14 VSV11/vS11 == GRAPHICSVS1)DIAG MACRO M1113 wxx TEST 26 BIT MAP 6824 29-JAN-81 17:22 ' 1232333233333 3 PAGE 96 SEQ 0182 323333223233 22232232223232322222222322222222 2R 2Rttt d ) . . BIT MAP (1) =~ BEGIN TEST 26 b . . % B = 1232223223232 ; (ITERATION COUNT = 10.) . 6825 067044 6826 067050 682; 067052 005737 001402 323 2323233323333 223223323332223233223232322222222222222 R0 RR R Rddd) TST BEQ EXIT 002502 DPUMOD BM1TST TST ;DPU ONLY ?? JNO, EXECUTE. : EXIT THIS TEST >>33333333333333333333>>>> EXECUTE BIT MAP MODE 1 WITH 4 AND 8 BIT PIXELS FOR ALL POSSIBLE RUN LENGTHS (0 THRU 777). TEST FINAL X/Y FOR EACH. IF VISUAL, DISPLAYS A WEDGE STARTING AT 0,0 WITH EVERY OTHER PIXEL (IN X) TURNED OFF. REPEAT AFTER QUICK AS BEFORE. PIXEL BUFFER SIZE = 256. WORDS (512. 8 BIT PIXELS MAX). 6846 067112 6847 067120 6848 067126 6849 067132 6850 067140 6851 067144 6852 067150 6853 067152 6854 067156 6855 6856 067162 6857 6858 067164 6859 067172 6860 067176 6861 067202 6862 067204 6863 067210 6864 067212 6865 067232 6866 6867 067234 067234 067240 6868 6869 067242 6870 067250 012777 017737 012701 013737 004737 010537 022300 027700 000377 027014 003234 00001 113710 113714 003146 067412 BM 1TST: 1%: 2%: 067410 067406 IN THE NEW DPU, A COUNT OF 0 DOES 512. PIXELS, SO IT'S LAST. JSR PC,TSTGO MOV MOV MOV MOV #SELPCS ,aDSR aDSR, IPCSAV #BM14+1 ,R1 FREE ,BM1PIX MOV CLR MOV MOV #g.R4 R R1.BMIPIX=2 RS .BM1Y MOV JSR MOV MOV JSR JSR #208 ,EXTA PC,LUMIN LOOPK , TEMP2 #377 ,RO PC.FILLT PC.CLRRW BGNSEG 012777 004737 027704 001003 027705 001410 067374 027454 113640 MOV JSR 113634 113630 3%: 4%: 004737 027646 013737 032701 003234 000777 103744 CMP BNE CMP BEQ HRDERR ENDSEG LOOPTO TITLE. SET ERROR EXTENSION ADDRESS. BLAST LUT. SAVE A COPY OF THE LOOPER. SET PIXEL DATA PATTERN... ..AND FILL THE BUFFER. "2°ON, 2 OFF IN 4 BIT MODE. 1 ON, 1 OFF IN 8 BIT MODE. ; SAVE PCSAVE... ; 1ST OPCODE W/ COUNT=1. ; BUFFER ADDRESS. * INIT IN R/W MODE. ; INIT EXPECTED X... ;...AND Y. ; SET 1ST/NEXT OPCODE... ;...AND Y CO-ORD. €<<CLLLLLLLLLLLLLLLLLLLLL< BEGIN SEGMENT. #BM1,aDPC ;START, XCT BIT MAP MODE. aDXR,R4 3% aDYR,R5 4$ BMF ,XYERR ;CHECK DXR = R4.. PC,WAITF 5 ;BM1 FAILS. <<CLLLLLLLLLLLLLLLLLLLLLL< END SEGMENT. 2% JSR PC,LOOP MOV BIT TEMP2, L OOPK #777 ,R1 B(S 027700 ; Se e %% 8, 8, %8, 027702 067350 027054 : REPEAT... 2% ;RESET LOOPER. :DONE 512. PIXELS? VS VSV11/VS11 == GRAPH!C SYS., DIAG MACRO M1113 wex TEST 26 BIT MAP(h 29-JAN-81 17:22 8EQ INC 6871 067254 001476 6872 067256 005201 6873 067260 6874 067264 6875 067270 6876 067274 6877 067276 6878 067302 6879 067304 6880 067310 6881 067312 6882 067316 6883 067320 6884 067324 6885 067326 ggg(; 067332 062704 000002 062705 00000; 6888 067334 6889 067340 004737 004737 ggg? C67344 ggg% 6894 067350 gggg 067372 032701 00077 001325 020127 001011 012701 000720 020127 001406 012701 137000 136000 5%: 137000 137001 000705 012701 137000 6$: 000707 108: 027514 030072 6900 067402 6901 067404 6902 067406 6903 067410 5% R1 #2 R4 SEQ 0183 ....IF YES, GO SEE IF ALL DONE. ; NO, INCREMENT RUN LENGTH. : NO, INCR EXPECTED X... 2% 2...AND Y... :COUNT OVERFLOW? C(NTINJE IF NOT. 2% :...AND CONTUNUE. #2 RS 8777 .R1 R1,#8M18 (3 1 #MBM14 R P 3 R1,#8M18 108 #3M18+1,R1 1% #8M18+0,R1 PC ,PAUSE1 PC,TSTEND TST S INTO BM18? :BR IF NOT. IF YES, DO BM14 W/ COUNT=0 .AND CONTINUE. HERE IF ACTUAL COUNT=0. *DONE IF ON BMiS8. GO TO M18 :...AND CONTUNUE. DO BM1.8 W/ COUNT=0 : EXIT THIS TEST >>33333>333333333>>3>3>3>>>> : ON ERROR, SHOW THE FAILING BIT MAP OPCODE. : EXTENSION SHOWS BAD OPCODE. PRINTX #8MX,R1 20%: RTS 000207 PC : DISPLAY CODE FOR BIT MAP MODE 1. 164000 114000 000000 000000 164000 164000 BM1: 136000 6904 067412 000000 6905 067414 164000 164000 164000 2‘99867) 067422 JSR JSR EXIT gggg 6899 067374 ADD ADD BIT BNE CMP BNE MOV BR CMP BEQ MOV BR MOV BR PAGE 96~ BMIX: BM1Y: DNOP, DNOP, DNOP : «xx WRITE MODE (176024) ==+ BM14'0 BIT MAP MODE. APNT 0 O BMIPIX: 0 DNOF, DMOP, DNOP STOPN 173000 . .PIXEL BUFFER ADDRESS. : “axx READ MODE ( 176040) w»#» END.TEST 6908 067424 _'Qt'tQtttttt.ttttttttQt"t'Qtttttttttt.tt't'."tttitttttt."t'ttttttt't' ‘-' s ". END TEST 26 .-.n.t.ttt"ttfitttt't'tt!"tt..ttfi'tttt'tt!l'.'.tt.'t'ttt'ttt"'tttt"t't VSV11/vS11 == GRAPHI( SVS.)DIAG MACRO M1113 wee TEST 27 BIT MAP (0 6910 = oy St 29-JAN-81 17:22 €15 PAGE 97 SEQ 0184 :"Q'"".".'"Q..."Q"'t't..t......Q"t.t."""t"...."’Q'."Q.Q"' . =~ e BEGIN TEST 27 : (ITERATION COUNT = 10.) . % BIT MAP () :°t.'Q.'..'t't..'t'.'."".""tQQQQ.tQ'..'..Q'.Q'."'.'t".'t'..Q"."QQ 6911 067472 005737 6912 067476 001402 2312 067500 002502 1%: 004737 004737 027054 026650 JSR JSR PC,LUMIN PC,CLRRW : BLAST LUT. :INIT IN R/W MODE. JSR MOV CLR PC,FILLT FREE ,BMOP1+12 BMOP2+12 : FILL THE BUFFER. : 1ST FRAME(S) USE BUFFER. ; 2ND USES ABS 0. MOV #8M04 R CLR BMOP1+4 MCY #100,R4 MOV 6920 067520 012700 000377 6921 067524 004737 027014 6922 067530 013737 003240 gggz 067536 005037 070452 : DPU ONLY ?? ; NO, EXECUTE. : EXIT THIS TEST >>33>33333333>3>3>3>3>>>>>>>> DF UMOD BMOTST TST * INITIALIZE AND FILL THE BUFFER. ;TITLE PC,TSTGO éMOTST: JSR gg}g 6917 067504 004737 027702 6918 067510 6919 067514 TST BEOQ EXIT 070426 #377 .RO : DATA FOR 2 OR 4 PIXELS. E FIRST TEST THE RESOLUTION BIT ON A 32 SQUARE ARRAY. gg%z : SAVE A COPY OF THE LOOPER. LOOPK , TEMP2 MOV 6927 067542 013737 027700 003234 1s: : MODE 0, 512 RESOLUTION. 6928 067550 012701 6929 067554 6930 067560 6931 067564 6932 067570 010137 070424 005037 070422 005037 012704 gggz 067574 010405 6935 067576 6936 067600 6937 067606 6938 067612 6939 067614 067614 90 067620 134000 012777 004737 004737 103766 MOV 070420 CLR 000100 070414 070320 MOV 113224 2%: JSR LOOPTO 027700 6944 067640 062737 000040 070420 6946 067654 062704 g% 067660 010405 6949 067662 6950 067664 6951 067672 6952 067676 6953 067700 6954 067700 067704 012777 004737 004737 103766 000140 070414 070320 027646 MOV ENDSEG 027646 6941 067622 013737 003234 6942 067630 012701 134100 6943 067634 010137 070424 BGNSEG 2042 R4 RS ; €LCLLLLLLLLLLLLLLLLLLLLL<<< BEGIN SEGMENT. #8MOP1 ,aDPC PC ,BMOCHK : ERROR CHECK. 2% : REPEAT... ; €<CLLLLLLLLLLLLLLLLLLLLL<< END SEGMENT. PC,LOOP 2% MoV MOV MOV TEMP2,LOOPK #BM04 'R256 ,R1 R1,BMOP1+10 ADD +4 #40,BMOP1 ADD #140,R4 PN, S— 71| 3%: : ORIGIN 0,0. BMOP1+6 JSR BCS MOV 113140 R1,BMOP1+10 BGNSEG MOV R4 ,R5 :...THEN RESTORE LOOPER. : SHIFT TO 256 RESOLUTION. 166 - ; €CKLCLLLLLLLLLLLLLLLLLLL<<< BEGIN SEGMENT. #BMOP1 ,aDPC JSR PC,BMOCHK : ERROR CHECK. LOOPTO 3% : REPEAT... ENDSEG JSR BCS PC,LOOP 3% ; €CCLLLLLLLCLLLLLLLLLLLLC<<< END SEGMENT. e A .. A—————— et e p——————— - = o | | T U VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 ; «ex TEST 27 BIT MAP(O E gggz 067706 013737 003234 ' ggg; 027700 A S LS 29-JAN-81 17:22 MOV TEMP2,LOOPK MOV #BMO4 R 6961 067722 012701 135000 6962 067726 005037 070420 5%: MOV CLR #8M08 ,R1 BMOP1+4 6960 067720 000402 6963 067732 6964 067736 005037 012704 070422 000100 6966 067744 010137 070424 6965 067742 010405 gggg 067750 6969 067754 004737 012777 004737 070414 070320 067772 ppony 067776 004737 103766 027646 6975 070000 6976 070006 013737 062737 003234 000040 113046 6984 070044 6985 070046 6986 070052 6987 070056 052701 010137 005277 004737 6%: 027700 070420 005277 TEMPZ2 ,LOOPK +4 #40 ,BMOP1 BIS MOV BGNSEG INC #40,"BMOP1+6 #140,R4 Ré RS #777 R1 #EX2 R1 R1.BMOP1¢1O aDPC TEMP2, LOOPK #100,8M0P1+4 #100,BMOP1+6 #300,R4 R4 RS BIS MOV #EX4 R R1.EM0P1010 ENDSEG 027700 070420 070422 BIC 000777 000020 070424 8%: 112672 7003 070146 070146 070152 004737 103767 027646 7005 070154 013737 (03234 BGNSEG INC ' : EXPAND X&. ; €€CCCLLLLLLLLLLLLLLLLLLL<< BEGIN SEGMENT. JSR ENDSEG : ERROR CHECK. PC.,BMOCHK 5 €CCCLLLLLLLLLLLLLLLLLC<<<<< END SEGMENT. MOV TEMP2 ,LOOPK LOOPTO JSR BCS 027700 : ERROR CHECK. ; €€CLLLLLLLLLLLLLLLLLLLLL<< END SEGMENT. 8777 .R1 aDP( : EXPAND X2. ; <CLLLLLLLLLLLLLLLLLLLLLC<<< BEGIN SEGMENT. MOV ADD ADD ADD MOV 070320 7004 MOV ADD PC,LOOP 6% 7% PC,LOOP 7% 004737 7001 070140 7002 070144 ; €KCLLLLLLLLLLLLLLLLLLLLLL< BEGIN SEGMENT. #BMOP1 ,aDPC ERROR CHECK. PC ,BMOCHK : <<<<<<<<<<<<<<<<<<<<<<<<<< END SEGMENT. : REPEAT... 6% LOOPTO JSR BCS 003234 000100 000100 000300 : SET OPCODE. MOV JSR ENDSEG LOOPTO PC ,BMCCHK 013737 062737 062737 062704 010405 7000 070134 PC.CLRRH JSR 6990 070066 6991 070074 6992 070102 6993 070110 6994 070114 6999 070132 BGNSEG ADD MOV BIC 7%: 112760 027646 052701 010137 R1 BMOP1¢1O ; SET EXP X AND Y. R4 ,RS 070320 004737 103767 6996 070122 gggg 070126 MOV ADD 000010 070424 6988 070060 070060 909 070064 6995 070116 042701 BMOP1+6 #100,R4 JSR BCS : :...AND RESTORE. : & BIT, 32 SQUARE, NO EXP. : 8 BIT, 32 SQUARE, NO EXP. : 1ST BLOCK AT 0,0 CLR MOV JSR 6977 070014 062737 000040 070422 6978 070022 062704 000140 6979 070026 010405 6980 070030 042701 000777 6981 070034 233% 070040 SKP2 MOV 026650 6970 067756 6971 067764 6972 067770 6973 067772 SEQ 0185 :© NOW CHECK THE EXPANSION OF A 32 SQUARE ARRAY. 43: 012701 D_15 PAGE 97-1 134000 6959 067714 issind 8% PC,LOOP 8% ; REPEAT E_15 «ex TEST 7006 070162 7007 070166 SEQ 0186 ) 27 020127 001255 CMP BNE 135020 ' EX4 R1,#8M08 5% ; 8 BIT MODE DONE ?7? ; NO, GO "ROUND. NOW TEST THEt 64, 128, AND 256 SQUARE SIZES BY DISPLAYING : THE CONTENTS OF CPU MEMORY STARTING AT LOC 0. MAPMEM: MOV 134001 7012 070170 7013 070174 000200 7014 070200 7015 070202 1%: 070450 7017 070206 7018 070210 7019 070216 7020 070222 7021 070224 070440 027454 . MOV MOV MOV agNSEG Vv JSR BCC JSR 112614 070324 R 04 ! M64 ~8M #200,R4 ; 4°BIT, 64 SQ. R1,BMOP2+10 ; SET OPCODE. R R4 EXP X,Y. ;. €CLCLLLLLLLLLLLLLLLLL<<<<< BEGIN SEGMENT. #8MOP2 ,aDP( PC,WAITF BIG ONES WILL OUTLAST WAITF TIMER. +4 ; ERROR CHECK 200,200. PC ,BMOCHK 400,400 (128 sSQ). 1000,1000 (256 SQ). H : H: €LCLLLLLLLLLLLLLLLLLLLLLL< END SEWNT ENDSEG 7024 070230 ; 004737 032701 001010 052701 000754 023727 001401 000747 042701 005201 006304 006305 032701 001737 027522 001000 JSR BIT PC,PAUS.5 #1000,R1 0C1000 BIS BR CMP BEQ #1000,R1 : NO SHIFT TO 8 BIT MODE. ; xxx QR NOP %x«» 1% !M256 BMOP2+10,4#BMO8 : QUIT AT 8 BIT, 256 SQ. ... 2% BIC INC #1000,R1 R1 070304 070310 070314 004737 004737 027514 030072 10%: 070320 7046 070324 7047 070330 7048 070332 7049 070336 7050 070340 7051 070340 7052 070346 7053 070366 7054 070366 7055 070370 7056 070412 7057 7058 7059 7060 070414 7061 070416 7062 070424 004737 027704 001003 027705 001413 027454 BMOCHK: JSR CMP BNE (MP BEQ 012737 070370 7026 070232 7027 070236 7028 070242 7029 070244 7032 7033 7034 7035 7036 070260 070262 070264 070270 070272 7037 070274 7038 070276 7039 070302 7040 7041 7042 7043 7044 7045 070450 BNE 135003 2%: 001000 BR ASL ASL BIT BEQ 000004 112506 112502 022300 1%: 2%: 000207 3%: 000207 JSR JSR EXIT MOV HRDERR RTS PRINTX RTS 2% ; 8 BIT MODE ?? ; YES. 1% ;... OR WE RUN OUT OF MEMORY. R4 RS :...AND EXP X #4 ,R1 1% : RESET 4 BIT MODE... 2.6.5ET NEXY SI1ZE... 256 $Q. ?? : "DONE GOTHRU "ROUND. : NO, PC,PAUSE1 PC,TSTEND TST ; ALL DONE. PC,WAITF aDXR,R4 1% aDYR,R5 2% : WAIT FOR DONE... #3% EXTA BMF ,XYERR PC #8MX,R1 PC EXIT THIS TEST >>>3>3333333333>33353>3>>>>> :...AND TEST X 2 ealND ¥, ; SET ERROR EXTENSION ADDRESS. ; EXTENSION SHOWS BAD OPCODE. * DISPLAY CODE FOR BMO TESTS. 164000 114000 134000 000000 000000 BMOP1: DNOP APNT, BM04 !0 0. 0 ; 32 SQUARE, NO EXP. i | ‘ VSV11/vS1] == GRS??ISAE'S DIAG MACRO M1113 29-JAN-81 17:22 PAGE 97-2 VSV11/vS1] == GRAPHXCSVSo DIAG MACRO M1113 vee TEST 27 7063 070426 BIT 000000 7065 070434 164000 160000 7067 070440 7068 070442 7069 070450 170140 114000 134000 7064 070430 7066 7070 070452 7071 070454 7072 070460 7073 000000 164000 160000 29-JAN-81 17:22 0 DNOP, STOPN DJMP, BMOP1+?2 173000 070416 000000 000000 BMOP2: F_15 PAGE 97-3 SEQ 0187 : BUFFER ADDRESS. C(LRMEM DNOP, STOPN 173000 DJMP, BMOP2 070440 END.TEST 7074 070464 "."Q'..Q".t."t..'.'Q"'Q'.'t.'.'..'...""...."'...'."..'."."Q." ." s ". END TEST 27 ."t"'.'ttQ"Qt'."...""'t't.t""'Q'..'.'.'."".""'.."'Q"'...t" , USV11/vS11 == GRAPHMIC SYS. DIAG MACRO M1113 . wee TEST 28 IMAGE MEMORY C(LEAR=-SET 29-JAN-81 17:22 G 15 PAGE 98 SEQ 0188 .'"""'Q'.."..""..".".Q"'Q.."Q.'.".'.Q'..".'QQ.....'.'Q'.'.'Q' - " e . % BEGIN TEST 28 =~ IMAGE MEMORY CLEAR=SET :'.".."'."'..""""""'"'.'.'.Q.".'..."""Q"..'.'.'.".'..'..' ; C(ITERATION COUNT = 10.) 7077 070546 7078 070552 ;8;3 070554 005737 001402 TST BEQ 002502 EXIT DPUMOD CLRTST TST :DPU ONLY 2? :NO, EXECUTE. : EXIT THIS TEST >>>33333>3>3333>>33>>>>>>>> : "'CLRMEM'' TO ZERO, EXECUTE PIXEL-READ-BACK, AND TEST DATA. 7081 : "'SETMEM'* TO 1°'S, AND REPEAT. 7082 : DISPLAY MODE (INTERLACE/NON=-INTERLACE) IS TRANSPARENT. ;832 7085 : IF SHORT MODE, CYCLE X FOR Y = O AND 2 (ODD VS EVEN), 7088 ;838 : IF LONG MODE, CYCLE X FOR EVERY Y (512 X 512 ADDRESSES), : READING EACH PIXEL ONLY ONCE. : THEN CYCLE Y HOLDING X AT 0. : REPEAT EACH PIXEL READ 10 TIMES AFTER QUICK PASS. 7086 7087 7091 070560 7092 070564 7093 070570 7094 070574 7095 070576 7096 070602 7097 070606 7098 070610 7099 070614 7100 070616 7101 070622 7102 070626 7103 070630 7104 070634 7105 070640 7106 070642 004737 004737 004737 027702 030414 027054 CLRTST: JSR JSR JSR 005037 013701 00630 016101 072414 072414 CLRT1: 000137 010137 005101 010137 013701 000301 071116 003072 001002 070642 070644 070650 010146 052716 012637 7108 070660 7109 070662 7110 070670 7111 070676 7112 070700 001403 012737 013737 005003 012777 7114 070710 005277 ;}}g 070722 005002 7107 070654 7113 070706 7115 070714 7116 070720 7119 070724 7120 070724 7121 070730 005737 000402 003256 MOV ASL MOV IMC.CH IMC.CH,R1 -3 ,R1 MEMTAB(R1) JMP MOV COM MOV MOV SWAB 11% R1,PDF =3 R1,PDM IMC.CH,R1 R1 MOV BIS MOV R1,-(SP) #RDWRT, (SP) (SP)+,CLR.ZA BNE 003074 072414 BISW3 176074 071434 002504 TST 000001 027700 027700 003234 071424 112124 112116 004737 005001 027454 010277 112110 004737 BGNSUB CLR 027454 1%: 2%: PC,TSTGO PC,CONFIG PC.LUMIN .+6 #RDWRT ,R1,CLR.ZA IMTMOD :VITLE : CONFIGURE VSV SYSTEM. ; BLAST LUT. : BR IF MEMORY ON THIS CHANNEL : INSERT CHANNEL OF MEMORY TO TEST BEQ MOV MOV CLR MOV .+10 #1,L00PK I.OOPK , TEMP2 R3 #(CLR.Z,aDPC :SKIP NEXT IF SHORT MODE... :...OTHERWISE, SET ONCE ONLY. :SAVE A CCPY OF LOOPK. :R3 = PATTERN (0'S FIRST). :XCT "'CLEAR MEM TO 0''. INC aDP( :RESUME, XCT "'SETMEM TO 1°'S"". CLR R2 :...AND Y ADDRESS. SKP2 JSR CLR MOV JSR PC,WAITF R1 R2,aDYR PC,WAITF :WAIT 'TIL DONE :INIT X ADDRESS... ;SET Y ADDRESS. | VSV11/VS11°- GRAPHIC SYS. DIAG MACRO M1113 | wes TEST 2 IMAGE MEMORY CLEAR=-SET 7122 070734 7123 0707% 7124 070742 010177 004737 7126 070752 017704 7125 070746 004737 7127 070756 100015 7128 070760 043704 004737 7137 071040 7138 071046 013737 020227 00323 000004 7141 C71054 020127 0C1776 71 000412 ;}28 071052 103006 7142 071060 7143 071062 001403 062701 7144 071066 000722 7145 071070 7146 071074 7147 071076 7148 071100 7149 071104 7150 071106 020237 001404 005001 062702 000707 005103 103624 7160 071134 072414 027700 052737 000006 7163 C71152 7164 071156 7165 071160 7166 071166 7167 071172 7168 017700 100515 042737 050037 005700 000274 012737 071454 001777 071562 072440 071452 071562 027454 111616 7175 071220 005037 072414 7178 071232 016001 BR BEQ (LR ADD BR coM 072414 003256 PC,ERRCHK 108 PDM,R4 4% 8% 8% #2,R1 3% R2 ., YMAX 9% R1 #2.,R2 2% R3 .BR IF DPU HUNG (PRB FAILURE). :0K, JUST KEEP THE DATA BITS. : ;RESET LOOPER. IF SHORT' MODE, HOLD X. TOFORY =4 T0 MAX . X :BR IF AT MAX OYHERUISE BUMP X. 3 AND CONT INUE. :DONE IF AT MAX Y. ;OTHERWISE, RESET X... 1 oA ¥, :...AND CONTINUE. :COMPL IMENT DATA PATTERN. BIC PDM,R3 1% :RESTART 1'S PATTERN. INC IMC.CH : DO NEXT CHANNEL BLO CLRT1 : LOOP THRU ALL & CHANNELS CMP CLTNEW: BGNSUB #4 IMC.CH, BIS #6,IMC. IR :LET READ SEE ALL BITS 2 MOV BM] BIC BIS TST BNE aCLMPTR,RO 8% #1777 ,CLR.D2 RO,CLR.DZ2 RO ’$ GET PATTERN TO CLEAR TO NEGATIVE IF DONE ALL :CLEAR OUT OLD PIXEL PATTERN :INSERT THE NEW ONE :1S NEW ONE 0? :1F NO, GO DO *'SETMEM'* FUNCTION. 2%: 3%: MOV JSR #CLR.D2,aDPC PC,WAITF :"'CLEAR'' TO THE PATTERN :WAIT FOR DONE 4%: MOV (LR IMC.CH :START CHECKING AT CHANNEL O. ASL RO 1%: 071562 012777 004737 006300 R1,A#MAXX 000004 7172 071206 ;};2 071214 7177 071230 CMP 11%: 111626 013700 7%: BHIS BNE 071546 7176 071224 TEMP2,LO0OPK R2 44 9%: 404 012777 000403 MOV CMP 8%: 7169 071174 7170 071176 7171 071204 5%: 6%: ENDSUB 7161 071136 7162 071144 RELEASE "HUNG'* DPU... PC ,RELEAS .REPORT ERROR AND QUIT. PRRHNG 3 <<<<<<<<<<<<<<<<<<<<<<<<<< END SEGMENT. 000002 7157 071130 ;}gg 071132 4%: JSR HRDERR ENDSEG 10%: BR 003250 7155 071116 7156 071122 .IS DATA RIGHT 2? BR IF WRONG. DATA INCORRECT. CMP 072414 023727 R3,R4 4% IMDIi, IMDERR 000002 005237 7154 071116 CMP BEQ HRDERR BEQ ADD 003074 001275 ;...70 R4, BPL BIC 026756 043703 7151 071110 ;}g% 071114 aDSR,R4 JSR 003074 7133 071012 7134 071016 71%2 071036 7132 071010 MOV 112056 020304 001423 SEQ 0189 ; €LLLLLLLLLLLLLLLLCCCL<<<<< BEGIN SEGMENT. ;NOW READ=-BA(K PIXEL DATA... R1,aDXR PC,WAITF 023524 7129 070764 7130 070766 7131 070770 H15 PAGE 98-1 BGNSEG MOV JSR 3$: 112074 027454 29-JAN-81 17:22 MOV BR MOV BR MOV #CLMTAB,CLMPTR 2% #CLR.Z2,aDPC 3% IMC.CH,RO MEMTAB(R() ,R1 :START AT BEGINNING OF PATTERN TABLE DO "'SETMEM'* TO O UNTIL NEU MICROCODE READY :IF YES, DO THE '‘CLRMEM'’ GET CHANNEL TO CHECK MAKE A WORD INDEX :GET MASK FOR VALID PIXEL BITS I 15 JSY11/7¥511 == GRAPHIC SYS. DIAG MACRO M1113 29-JAN-81 17:22 PAGE 98-2 wee TEST 28 IMAGE MEMORY CLEAR-SET BEQ 7179 071236 001445 7180 071240 010137 (03072 7181 071244 005101 7182 071246 057701 000200 7183 071252 7184 071254 7185 071256 7186 071260 7187 071264 7188 071266 7189 071272 006201 006201 010146 110166 000001 012601 012700 000400 013702 003240 7191 071300 7192 071302 005300 001375 5%: 7190 071276 010122 7193 071304 7194 071312 ;}gg 071316 7197 071322 7198 (71324 ;}88 071330 013737 003240 072416 010237 072450 005037 072436 004737 071600 6%: 7204 071350 7205 071352 7206 071356 7207 071364 7208 071366 7209 071374 7210 071400 7211 071402 7212 071410 7213 000764 7%: 005237 072414 023727 072414 000004 002717 062737 000002 071452 005737 001264 023727 001260 002504 071452 071470 7214 7215 371412 7216 071412 7217 071414 ;%}g 071420 8%: 004737 BIS aCLMPTR,R1 MOV R1,7R2)+ ASR ASR MOV MOVB MOV MOV MOV DEC BNE MOV MOV CLR BGNSEG JSR ENDSEG BR INC CMP BLT ADD TST BNE CMP BNE ENDSUB JSR 030072 EXIT 7220 ;SAVE VALID MASK R1,PDF CMP BEQ ADD 7201 071332 023737 072436 003250 7202 071340 001404 7203 071342 062737 000002 072436 :IF 0, NO CHANNEL HERE. GO TO NEXT. 7% MOV COM SEQ 0190 COMPLEMENT IT. ¥ : INSERT THE PATTERN SHIFT IT DOWN TO BITS <7:0> :PUT PATTERN IN LOW BYTE, AND HIGH BYTE. PUT IT BACK INTO R1. :GET COUNT OF NUMBER OF WORDS TO FILL (256.) GET ADDRESS TO PUT TEST DATA. R1 R1 R1,=(SP) R1,1(SP) (SP)+,R1 #256. ,RO FREE ,R2 :FILL THE TEST BUFFER RO 5% TELL CHECK ROUTINE WHERE IT IS. FREE,IMC.TA AND WHERE TO PUT THE MEM DATA READ. R2.,IMC.RA AT ¥ = 0. START IMC.Y ; €€KLCLCLLLLLLLLLLLLLLLLLLL<< BEGIN SEGMENT. :READ AND CHECK A LINE OF MEMORY DATA. PC, IMCHK : CCLLLLLLLLLLLLLLLLLLLLLL<< END SEGMENT. :DONE LAST LINE? MOVE ON TO NEXT CHANNEL IF YES. :IF NO, BUMP Y & GO FOR MORE. : INCREMENT THE CHANNEL NUMBER. DONE LAST CHANNEL? :IF NOT, GO FOR MORE. :1F YES, "MOVE ON TO NEXT PATTERN IMC.Y,YMAX 7% #2,IMC.Y 6% IMC.CH IMC.CH,#4 49 #2,CLMPTR IMTMOD 1% CLMPTR ,#CLMSHT 1% : SHORT TEST? ; NO. ; YES. DONE? : NO. : VES. PC,TSTEND : EXIT THIS TEST >333333333333>333>>>3>>33>>> TST CLR.Z: DNOP, CLRMEM STOPN :CLEAR IMAGE MEMORY. CLR.ZA: RDWRT :CLEAR MEMORY THIS WAY UNTIL NEw MICROCODE READY 7221 071424 176000 176400 177000 CLR 13 PROTEC CHO, PROTEC'CH1 PROTEC'CHZ PROTEC!CH3 7222 071434 176074 ;Sgg 071444 117774 7223 071436 116000 170100 173000 7226 173000 CLR.D: APNT'!ALL,SETMEM,STOPN .MACRO 7227 . ENDM ;%%O 071452 071454 CLMPTR: .UORD 7232 071454 000000 CLMTAB: 0 7233 071456 7234 071460 7235 071462 CLP.D CPAT “SET IMAGE MEMORY TO 1°S. <CPAT*BIT6>'<~(PAT=1817+B]T2> 7228 7229 170100 APNT 'LO,SETMEM,STOPN (LP.D c(LP.D CLP.D CLMTAB 17 10 & P — ———— ] | CLP.D CLP.D T: CLP.D SKH CLM C(LP.D CLP.D CLP.D CLP.D (LP.D CLP.D 7236 071464 7237 071466 7238 071470 7239 071472 7240 071474 7241 071476 7242 071500 7243 071502 7244 071504 7245 071506 7246 071510 7247 071512 7248 071526 7249 071546 7252 071556 7254 071562 7255 C71564 7256 C71574 001774 177777 ) ! 1{74 000000 000000 76074 70140 1764746 173000 177074 17774 6074 0100 176474 177074 173000 0.0.0.0.0.0 000000 000000 0,0.0.0,0,0.0.0 ;DISPLAY FILES FOR CLEARING MEMORY: ! (H3 RDWRT!CHZ CLR.Z2: RDWRT!CHO,RDWRT!CH1,RDWRT CLRMEM,STOPN CLR.D2: APNT:ALL RDWRT ! CHO,RDWRT ! CH1,RDWRT ! CH2 ,RDWRT ! (H3 SETMEM,STOPN SUBROUTINE = READ & VERIFY 1 LINE OF SENTER WITH: : 3 3 : 7269 7270 071600 7271 071604 7272 071606 7273 071614 7274 071620 7¢75 071626 7276 071634 7277 071640 7278 071644 7279 071650 7280 071654 7281 071660 7282 071662 7283 071666 7284 071670 7285 071670 7286 071710 7287 071712 7288 071716 7289 071722 7290 071726 7291 071730 7292 071734 SEQ 0191 IMAGE MEMORY CLEAR-SET NON NN = =2 LS EER o | vee TEST 28 ol | J 15 VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 29-JAN-81 17:22 PAGE 98-3 ~IN | -l ] IMCHK: 072414 001400 072430 072352 072420 IMC.CH IMC.Y IMC.RA IMC.TA 072354 111176 MEMORY CHANNEL TO READ (0, 1, 2, OR 3) Y POSITION OF LINE TO BE READ ADDRESS OF 512.-BYTE BUFFER TO READ DATA INTO ADDRESS OF 512.-BYTE BUFFER TO TEST AGAINST (DATA MUST INCLUDE 1°S IN NON-EXISTENT BIT POSITIONS TO CATCH BAD DRIVERS & DBUS LINES) IMC.CH,RO RO #B1T9!BIT8, IMC.ME 072430 RO, IMC .ME IMCTRY, IMCRCT #IMC.SR,aDPC IMCHKR: PC,WAITF IMC.RA,R2 #512. .R2 IMC. IR,R3 072440 abP( ,R2 111152 1% 111146 1%: 072436 000002 111110 111104 2%: 2 HRDERR IMRF ,PCSERR CLR R4 ADD #2 RS aDXR,R4 MOV CMP BNE (MP BEQ IMAGE MEMORY. IMC.Y.RS 3 aDYR,RS 4% sGET CHANNEL # ;... INTO HIGH BYTE OF RO. :CLEAR OLD CHANNEL # FROM ENABL ING INSTR. sSET IN THE NEW CHANNEL ;START THE READ. J... WAIT FOR IT TO FINISH. ;R2 GETS FINAL ADDRESS ;R3 GETS WHAT DSR SHOULD BE. ;1S DPC CORRECT? ;1S DSR CORRECT? sPRINT IF NOT. :DXR SHOULD BE 0. ;:DYR SHOULD BE Y+2 sTEST DXR sTEST DYR K 15 ySV11/vS11 == GRAPHIC SYS. DIAG MACRO M1113 29-JAN-81 17:22 PAGE 98-4 | wex TEST 28 7293 071736 7294 071736 7295 071756 7296 071762 7297 071766 7298 071772 7299 071774 7300 071776 7301 072002 7302 072006 ;}03 072010 304 7305 072012 7306 072016 7307 072020 7308 072024 7309 072030 7310 072036 7311 072040 7312 072046 7313 072054 7314 072060 7315 072064 7316 072070 7317 072074 7318 072102 3%: 012701 013704 013705 022425 001006 062701 020127 002771 000471 000000 072416 072450 (%: 000004 6%: 005337 072354 177776 177776 023056 023060 176003 176003 7326 072164 7327 072172 001710 116437 116537 000730 7329 072174 000207 7325 072156 7328 7330 7331 7332 7333 7334 072176 072176 072216 072224 7335 072230 7336 072274 7337 072324 7338 072344 7339 7340 072346 7341 072350 7342 072352 7343 072354 7344 7345 072356 7346 7347 7348 7349 072414 013737 006237 5%: 002000 071626 072346 177776 7319 072110 7320 072130 7321 072136 7322 072140 7323 072146 7324 072154 SEQ 0192 IMAGE MEMORY CLEAR-SET 10%: 177776 023056 023060 11%: 072346 000002 177777 072346 177777 177777 177777 023056 023060 DEC BMI JMP MOV CMPB BEQ MOVB MOvVB ASL ASL 12%: 163000 000000 104 =1(R4) ,-1(RS) 6% -1(R4) ,GDDAT -1(R5) ,BADDAT 11% ;COMPARE HIGH BYTES TNAM DA , IMCRAM IMCB IMCRAM PRINTX #IMDIXC, IMCBDA, IMC.Y,PDF ,GDDAT ,BADDAT PRINTX #NULCR ;PRINT BLANK LINE .WORD .WORD .WORD IMCRCT: .WORD 0 O 0 O ;X POSITION FOR PRINTOUT ;SUSPECT RAM LASCIZ / IMCBDA: IMCRAM: IMCTRY: 040 ;SHIFT IT TO LOOK LIKE DBUS DATA #2,IMCBDA IMCERR PRINTX ENDMSG 040 ;IF YES, GET THE DATA ;DONE HIGH BYTE? ;IF YES, GO BACK TO MAIN LOOP. BGNMSG PRINTX 000000 000000 000000 000000 ;LOW BYTE BAD? ;BR IF NOT. IMDI, IMCERR PC ASR ;GET POSITION OF BAD DATA #2,IMCBDA 6% RTS MOV ; EXIT WHEN DONE WITH LINE. BADDAT 9%: 072350 ;BUMP THE X ADDRESS GDDAT #~C1774 ,GDDAT #~C1774 ,BADDAT BIT ;CHECK THE DATA GDDAT BIC BIC BNE ADD CMPB BEQ MOVB MovB BR ;R4 POINTS TO EXPECTED DATA ;RS POINTS TO RECE!VED DATA -2(R4) ,=2(R5) 128 -2(R4) ,GDDAT -2(R5) ,BADDAT BADDAT HRDERR ;R1 = X ADDRESS UNDER TEST. IMCRCT .*+6 IMCHKR R1,IMCBDA ASL ASL 023056 023060 000002 072346 072350 HRDERR IMRF ,XYERR #0,R1 MOV IMC.TA,RG MOV IMC.RA,RS MOV (R4)+,(R5)+ CMP 108 . BNE #4 ,R1 ADD R1,AMAXX+2 CMP 5% BLT 9% BR : IMRF .EVEN #IMDIX2,IMCRAM, IMC.CH IMR8=163000 IMC.CH: 0 DMA PIXEL READBACK FAILURE/ Pgticos ——— | MACRO M1113 29-JAN-81 17:22 PAGE 98-5 VSV11/y511 == GRAPHIC SYS. DIAG CLEAR-SET L 15 w=av TEST 28 7350 072416 7351 072420 7352 072430 7353 072432 7354 072436 7355 072440 7356 072442 7357 072446 7358 072450 7359 072452 7360 072454 IMAGE MEMORY 000000 176000 176074 114000 000000 163006 001000 176400 000000 000001 177000 IMC.TA: O :ADDRESS OF TEST BUFFER IMC.ME: RDWRT GPNT.O - ENABLE SELECTED MEMORY START AT Xx=0 IMC.IR: IMR8!6 READ 2 8-BIT PIXELS/WORD, ALL BITS IMC.SR: PROTEC!CHO, PROTEC'CH! PROTEC! CH2 ,PROTEC!CH3 o3 :1 FULL LINE 512..1 256. IMC.RA: .WORD STOPN 1600C0 END.TEST = 256. :WORD COUNT READ BUFFER : (SHOULD STOP BY ITSELF) .'Qtt't.ttttt.tt.t'tttt'tttttt't'ttttttt't'.tttttt.tttttttt."'t't.t'.'t' .-' " ‘-Q END TEST 28 '-ttttttttttttttittttttt"t'ttitttttt"tttttttt'tt!.'t't..'ttttt.t'l.'t'. SEQ 0193 s+ TEST 29 IMAGE MEMORY INTERLACE 7362 e Y I 1 SEQ 0194 3322232232 22332222223222 2222223223333 232222222222 BEGIN TEST 29 [ M 15 PAGE 99 - Rttt A0t 2l IMAGE MEMORY INTERLACE d ) 22ttt 3 32232 32 2223222 22222 32323233322 2 2 22222233222222223 ; (ITERATION COUNT = 10.) ; !F MEM IS INTERLACED, THE PIXEL DATA AT 0,2 SHOULD BE (NON~-ZERO). F MEM IS NON-INTERLACED, THE PIXEL DATA AT 0,2 SHOULD BE (ZERO). DPSTART 072766 027454 020000 000002 027454 000000 7398 072704 072704 072706 072710 072730 7399 072730 7400 072732 7401 072736 7402 MOV 110162 3%: JSR BIT BEQ CLR MOV R5,R4 R4 #WRT ,R4 #10%,aDPC PC,WAITF #BIT13,SYCTAB 3$ R1 #2,aDYR PC. WAITF #0,aDSR aosn R2 110140 176003 #176603 R2 R3, R2 IFERROR INCE , INLEX BIC CMP BEQ HRDERR 000004 INC CMP BNE N P N N P 4% T MEMTAB(Ré) R1 R1,R3 A MOV 072776 . <<<<<<<<<<<<<<<<<<<<<<<<<< BEGIN SEGMENT. GET MEMORY TABLE ENTRY FOR THIS CHAN. (SAVE IT IN R1 & R3). IS THERE A MEM? NO. GET CHAN IN BITS 8.9. SET WRITE INST FOR CURRENT CHAN - IN DISPLAY FILE. A BIS 176034 RS R4 TR T A T A BEQ MOV SWAB PC,CLRRW T A 003256 CONF IGURE VSV SYSTEM. INIT CHAN PTR. CLEAR ALL MEMORIES. PC.CONFIG R5 R MOV ASL MOV MOV DO SOFT INIT. RR TR T 026650 TITLE. PC,TSTGO PC,DPRESET START THE DPU. WAIT FOR DISPLAY STOP. IS MEM NON-INTERLACED? YES. (R1 = EXPECTED FOR NON-INTERLACED). NO. ADJUST R1 TO EXPECT FOR INTERLACED. PIXEL READ (POINT 0,2) INTO R2. IR COMBEG JSR JSR JSR CLR JSR 027702 026074 030414 BGNSEG 73 7396 072700 7397 072702 : EXIT IHIS TEST D333333333333333333333>>>> R 072554 7373 072560 7374 072564 7372 072566 ; DPU ONLY? NO. EXECUTE. : CHECK MEMORY INTERLACE / NON- INTERLACE BY WRITING A POINT AT 0,0. ; 7372 072550 072550 DPUMOD INLAC TST PR TR 7370 7371 TST BEQ EXIT 002502 AND PIXEL READ WITH MEM TAB VAL. R1.R2 0K? YES. No. RS RS, 44 NEXT CHAN. 649 INLE, INLEX, 2% DONE? LN 7363 072536 7364 072542 7365 072544 7366 7367 7368 7369 No. LK 29-JAN-81 17:22 VSV11/vS11 == GRAPHIC SYS. DIAG MACRO M1113 wex TEST 29 IMAGE MEMORY INTERLACE ENDSEG COMEND 7403 072740 7404 072742 072742 072746 072750 004737 072752 000137 072564 65%: 072756 004737 030072 66%: 7405 072762 7406 7407 7408 7409 7410 072766 7411 072776 7412 073000 7413 073006 7614 103401 027646 1% ; REPEAT 'TIL LOGPER EXPIRES. PC,LOOP JMP 1% JSR PC,TSTEND EXIT 65% 66% ST SEQ 0195 ; €KCLLLLLLLLLLLLLLLLLLLLLL< END SEGMENT. JSR BCS BR 000402 N 15 PAGE 99-1 : PRINT ERROR SUMMARY, IF REQ'D. : EXIT THIS TEST >>3>33>>3>3333>3>>>3>>>>>>> DISPLAY FILE. 176000 176034 117774 173000 176400 177000 040000 000000 10%: 11%: PROTEC ! CHO,PROTEC ! CH1,PROTEC ! CH2,PROTEC ! CH3 ! CHO WRT APNT!ALL,1!0,0 STOPN END.TEST 7415 C73010 :tt.tt.tttttt'ttt!tt.tt'tttttttttttttttttttt.t!tfit'ttt.ttttttttttifittttt :t :® o> END TEST 29 :ttttttttittttt'.ttttttt'ttttttttttttifittti'fi.tttt'ttttfitt't't*t't'tt'tt » < VSV11/vS11 == GRAPHIC SYS. DIAG MACRO M1113 29-JAN-81 17:22 r—- | vSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 wee TEST 30 IMAGE MEMORY PATTERNS 7617 29-JAN-81 17:22 B 16 PAGE 100 SEQ 0196 .'....'..'."".'....'""Q'."'.'.'....".Q"'.".'..""..Q'Q"..Q..' - " ;” . ® BEGIN TEST 30 =~ IMAGE MEMORY PATTERNS .'.Q"..'Q'Q'.'.".'Q".'"'..'.."Q.....'.'Q.Q..'QQ..'.QQ...Q'Q.'.."Q ; (ITERATION COUNT = 1.0 7418 073070 7419 073074 7420 073076 005737 001402 002502 7421 7622 7423 DPUMOD ;DPU ONLY ?? EXIT TST ExlT THIS TEST >>33333333333333333333>3>> NO EXECUTE. PATTST : WRITE, THEN READ-BACK AND TEST PIXEL DATA PATTERNS. ; USE FOUR DATA PATTERNS PER PIXEL AS FOLLOWS: FOUR 2 BIT 0'S. . 00000000 : FOUR 2 BIT 1°'S 2. 01010101 : FOUR 2 BIT 2°'S 3. 10101010 : 7404 7425 7426 WS 2 7427 7428 7429 7430 7431 7432 7433 7434 7435 7436 073102 7437 073106 7438 073112 7439 Yk FOUR 2 BIT 3'S. : DISPLAY MODE (INTERLACE/NON-INTERLACE) ISTRANSPARENT. = 0 AND 2 (ODD VS EVEN), : IF SHORT MODE, CYCLE X FOF : THEN CYCLE Y HOLDING X AT 9. : READ EACH PATTERN 10 TIMES AFTER QUICK PASS. : IF LONG MODE, CYCLE X FOR ZACH Y (512 X 512 ADDRESSES), : READING EACH PATTERN ONLY CNCE. 027702 030414 027054 7640 073116 7441 073120 7442 073124 7443 073130 7444 073132 7445 073136 7446 073140 7447 073144 7448 073150 7449 073152 7450 073156 7451 073164 7452 073170 7453 073172 073172 073174 073200 7454 073204 073204 072212 7455 073216 7456 073220 7457 073222 7458 073230 7459 073234 7460 073240 TST BEQ PATTST: JSR PC,TSTGO sTITLE JSR PC,LUMIN ; BLAST LUT. IMC.CH :START AT CHANNEL 0 JSR BGNSUB 072414 072414 PATT1: 003256 073506 JMP MOV coM MOV 11% R1,PDF R1 R1,PDM BNE MOY 003234 MOV SWAB 176074 071434 071424 027454 107620 040000 074126 074130 074112 1 $: .+6 : BR IF MEMORY ON THIS CHANNEL. LOOPK , TEMP2 :SAVE A COPY OF LOOPK. IMC.CH.R1 R1 BISW3 MOV BIS MOV DPSTART #RDWRT,R1,CLR.ZA R1,-(SP) #RDWRT, (SP) (SP)+,CLR.ZA #(CLR.Z MOV #PATS ,R5 MOV JSR CLR CLR MOV CLR MOV : CONFIGURE VSV SYSTEM. R1 ,R1 MEMTAB(R1) 003074 027700 072414 012503 ASL R IMC.CH, MOV 003072 012705 CLR MOV PC,CONFIG #CLR.Z ,aDPC PC,WAITF R1 R2 #1 ,WRT.X WRT.Y ; START THE DPU. : WAIT FOR DISPLAY STOP. R1 = X POINTER. ;R2 = Y POINTER. INIT DISPLAY CODE X. Y -AND (R5)+,R3 21ST PATTERN.. PATIERN POINTER => RS. pi vSV11/vS11 == GRAPHIC SY S. DIAG MACRO M1113 ees TEST 30 IMAGE ME MORY PATTERNS 7461 073242 7462 073246 073254 7464 04370 3 2 737 050337 8 7465 073260 7466 003074 001777 074124 PDM,R3 #1777 WRT.D 076124 R3,WRT.D #WRT.D ,aDPC PC.WAITF R1,aDXR PC,WAITF R2,aDYR PC,WAITF 107542 3%: aDSR, R4 PDM, R4 R3,R4 9% IMDI, IMDERR 3s 7476 073326 7479 073356 7480 073364 7481 7482 073366 7483 073374 7484 073376 7485 073400 7486 073404 7487 7488 073406 7489 073412 7490 073414 7491 073420 7492 073426 7493 073430 7494 073434 7495 073436 7496 073440 7497 073446 7498 073452 7499 073460 7500 7501 073462 7502 073466 7503 073506 7504 073506 7505 073512 7506 073520 ;207 073522 08 7509 073524 7510 073526 7511 073532 7512 073536 7513 073542 7514 073546 7515 073550 9%: 37 53 37 NN~ 7477 073330 7478 073350 PC.LOOP SEQ 0197 i...NEXT PATTERN => R3. :SET NEXT PIXEL PATTERN... :...IN DISPLAY CODE. 027700 100321 020227 103011 001776 000002 000002 040000 000002 000002 072414 072414 003240 000045 000011 074150 J..0 TO R4, ;0K, STRIP ANY (RAP. ;AND TEST THE DATA. JBR IF OK :DATA INCORRECT ERROR. ; REPEAT... TEMP2,L0OOPK sRESET LOOPER. 5%: R2 A4 7% .HOLD 6%: R1,AMAXX 7% #2 ,R1 #2 ,WRT .X 1% R2, YMAX 1% R1 #1,WRT.X 4$: (R5)+,R3 2% BEQ CLR 074126 MOV ADD ADD BR 074130 10%: 11%: 000004 :NOW READ-BA(CK PIXEL DATA... ;RESET LOOPER. 7%: 026756 ;SET THE X ADDRESS. 3 (<<<<<<<<<<<<<(<<<<<(<<<<< END SEGMENT. 074126 003250 :WRITE NEXT PATTERN, THIS PIXEL. 3% TEMP2 ,LOOPK 027700 013737 012503 020127 001406 062701 062737 000702 020237 ¢ 16 PAGE 1 00-1 ; €€LLLLLLLLLLLLLLLLLLLLLLLL BEGIN SEGMENT. 074124 7467 073262 7468 073270 7469 073274 7470 073300 7471 073304 7472 073310 7473 073314 7474 073320 7475 073324 29-JAN-81 17:22 JGET NEXT PATTERN... See BR IF NOT TERMINATOR. ..AT 0, FOR Y 4 TO MAX. ;BR IF AT MAX X. ;OTHERWISE, BUMP X... ..AND CONTINUE. sALL DONE IF MAX Y. ;OTHERWISE, RESET X... #2,R2 u 2oariAPW V. 1% :...AND CONTINUE. JSR HRDERR PC,RELEAS PRBHNG RELEASE "HUNG'* DPU . .REPORT ERROR AND QUIT. INC CMP BLO ENDSUB IMC.CH MPTNEW: BGNSUB MOV MOV 1%: MOV MOV : MOV 2% DEC #2 ,MRT.Y , IMC.CH#4 PATT1 FREE.RO :START THE ‘WRITE BUFFER'' AT 1ST FREE LOCATION ;SETUP # OF TIMES TO REPEAT PATTERN TABLE #256. /MPLEN+MPLEN R #MPLEN ,R2 GET LENGTH OF PATTERN TABLE .AND ITS ADDRESS #MPAT2 R3 COPY PATTERN TABLE INTO WRITE BUFFER (R3)+,(RO)+ R2 IErEReY e l D 16 | VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 29-~JAN-81 17:22 PAGE 100-2 | wee TEST 30 7516 073552 ‘ BNE 001375 7517 073554 005301 7518 073556 001367 7519 073560 010037 074174 004737 3%: 7523 073574 013700 072414 7524 073600 000300 7525 073602 042737 001400 074206 7526 073610 050037 074206 7527 073614 7528 073620 7529 073622 7530 073626 7531 073630 7532 073634 7533 073636 012702 013703 7541 073666 012310 7542 073670 050120 7544 073674 001374 7543 073672 MOV 000412 (03240 4%: MOV MOV MOV BIS DEC 005302 7547 073702 005037 072436 013737 005037 013737 063737 #CA3 ,MPT WE RO, MPT . WE MOV MOVB MOV 000001 072436 074172 003240 074172 074214 5%: 074220 074220 6%: IMC.CH *START TESTING AT CHANNEL O. ;CLEAR ALL MEMORIES IMC.CH,RO RO GET CHANNEL NUMBER :...INTO BITS <9 8> IMC.CH,RO RO MEMTAB(RO) ,R1 8% R1,PDF R1 :GET THE CHANNEL AGAIN :...AND MAKE IT A WORD INDEX ;JGET THE MEMORY PARAMETER (PIXEL MASK) :1F ZERO, NO MEMORY ON THIS CHANNEL. ; SAVE PIXEL MASK (FOR ERROR REPORTS) :GET PIX MASK INTO LOW BYTE R1 R1 : INSTRUCTION LE'' ‘WRITE-ENAB FROM CHANNEL :CLEAR OLD CHANNEL CURRENT ....Aw INSERT THE :COMPLEMENT IT, TO ALLOWSETTING OF UNUSED :...BITS IN COMPARE WORDS :BOTH BYTES. R1,=(SP) R1,1(SP) (SP)+ ,R1 MP(CBAS ,RO :START AT BEGINNING OF COMPARE BUFFER (R3)+,(RO) :COPY WRITE BUFFER INTO COMPARE BUFFER, 1 ,R2 #256.+MPLEN+ ;AND AT WRITE BUFFER FREE .R3 R1,(RD)+ P4 ....SETTING UNUSED BITS. RO,IMC.RA 4 :MAKE NEXT FREE ADDRESS THE START OF READ BUFFER. CLR IMC.Y :START TESTING AT FIRST LINE (Y=0) MOV CLR MOV ADD IMC.Y,.MPT.WY MPOF F FREE ,MPT .WB MPOFF ,MPT .WB :TELL WRITER WHERE TO WRITE CLEAR THE PATTERN OFFSET GET BASE OF WRITE BUFFER ..AND ADD THE OFFSET ; €€CLLLLLLLLLLLLLLLLLLLL<<< BEGIN SEGMENT. BGNSEG 3222 073734 : :DO IT ENOUGH TIMES FOR 1 SCAN LINE, ALL PATTERNS ) BUFFER’ ‘‘COMPARE OF BASE IS LOCATION :NEXT FREE MOV BNE ;glzg 073676 010037 072450 7548 073706 7549 073714 7550 073720 ;gg; 073726 BIC BIS oM 7538 073652 013700 074174 7539 073656 7540 073662 PC,CLRRW ASR 006201 010146 110166 012601 JSR MOV SWAB MOV ASL MOV BEQ MOV ASR 013700 072414 300 016001 003256 001516 010137 003072 006201 7534 073640 005101 7535 073642 7536 073644 7537 073650 L 1$ RO ,MP(BAS CLR 026650 2% DEC MOV BNE 752(1) 073564 005037 072414 7522 073570 SEQ 0198 IMAGE MEMORY PATTERNS 7555 073736 012777 074176 107066 MOV #MPT.ST ,aDPC :THEN WRITE DATA FROM THERE. 7557 073750 7558 073756 7559 073764 013737 074174 063737 074172 004737 071600 072416 072416 MoV ADD JSR MPCBAS, IMC.TA MPOFF ,IMC.TA PC, IMCHK GET BASE OF COMPARE BUFFER .AND ADD THE OFFSET 10 IT. READ THE LINE AND COMPARE IT TO COMPARE BUFFER 7562 073772 005737 TST INTLAC ; INTERLACED MODE? 7556 073744 ;gg? 073770 7563 073776 7564 074000 7565 074006 004737 001014 032737 001010 027454 004737 162737 062737 7571 074044 002725 7570 074036 7572 074046 023727 062737 ENDSEG 003230 000002 7566 074010 062737 000002 7567 074016 7568 074022 7569 074030 JSR 071600 000002 000002 074172 000002 BNE 072436 072436 074172 000022 012{.36 7%: ; CKCLLLLLLLLLLLLLLLLLLLL<<< END SEGMENT. 7% BIT #2,IMC.Y ADD #2,IMC.Y CMP BNE 072436 PC,WAITF JSR SUB ADD BLT ADD 7% :IF YES, SKIP AHEAD. :IF NONINTERLACED, NEXT LINE SHOULD READ THE SAME PC, IMCHK #2,IMC.Y #2 ,MPOFF ;CHECK FOR IT. MPOFF #MPLEN*2 :BUMP THE OFFSET ;DONE ALL PATTERNS? OZ.IMC . s IF DONE ALL, BUMP Y :1F NOT, LOOP FOR MORE ON THIS SAME LINE. { E 16 VSV117V511 == GRAPHIC SYS. DIAG MACRO M1113 29-JAN-B81 17:22 PAGE 100-3 wex TEST 30 7573 074054 7574 074062 7575 074064 7576 074070 7577 074076 023737 072436 005237 023727 002634 072414 072414 7579 7580 074102 004737 030072 7578 074100 7581 074106 101711 003250 8s: 000004 PATS: 7583 074114 7584 074116 7585 074120 7586 074122 7614 7615 7616 074176 7617 074206 7618 074210 7619 074214 7620 074216 7621 074220 7622 074222 7623 7624 7625 074224 IMC.Y, YMAX 5% BLT 3% JSR PC,TSTEND INC cMP EXIT O 0524 1250 1774 IMC. CH IMC.CH, #4 TST WRT.D :g;.x 164000 164000 164000 164000 ;DONE LAST LINE? F NOT, GO FOR MORE NUMBER. CHAMEL mé DONE ALL CHANNELS? :1F NOT, DO THEM. s DXIT THIS TEST >333333333>3333333>33>>>>> PA‘°N 1 (00000000) PAYRN 2 (01010101) *PATRN 3 (10101010) SPATRN & (11111111) LIST TERMINATOR. -1 7587 7611 7612 074172 7613 074174 cMP BLOS ENDSUB 7582 074112 7588 074124 7589 074126 7590 074130 7591 074132 7592 074140 7593 074146 7594 7595 7596 7597 7598 7599 7600 074150 7601 074152 7602 074154 7603 074156 7604 074160 7605 074162 7606 074164 7607 074166 7608 074170 7609 7610 SEQ 0199 IMAGE MEMORY PATTERNS APNT!LO 6!0 :PIXEL DATA SET ON THE FLY. *LIKEWISE ADDRESSES. DNOP,DNOP , DNOP DNOP ,DNOP , DNOP STOPN IN CASE WE WANT TO CHANGE... .MODE FOR P-R-B DEBUG. STOP AND TEST THIS PIXEL. #00000000#0#000000000000000000000 .MACRO PAT.D MDX PAT.D PAT.D 0 1 PUT 4-BIT PATTERN INTO BITS <7:4> AND <11:8>, .AND ITS COHPLEHENT INTO <15:12> AND <3:0> PAT.D 4 oot <?gg;8178>‘<fl0x'8174>'<-MDX-1&17'BIT12>'<-HDX-1217> MPATZ2: PAT.D PAT.D PAT.D PAT.D PAT.D PAT.D 000011 MPLEN=.-MPATZ2/2 000000 MPOFF: 0 MPCBAS: 0 000000 176000 176034 114000 000 176400 000000 177000 2 10 7 13 15 16 - USE FLOATING 1'S AND 0°'S :USE ODD # OF WORDS TO MAXIMIZE CHANCES OF FINDING DUAL-ADDRESSING PROBLEMS. :OFFSET FOR WRITING AND COMPARING :BASE ADDRESS OF COMPARE BUFFER :COMMANDS FOR WRITING THE PATTERN INTO THE LINE MPT ST: PROTEC!'CHO,PROTEC'CH1,PROTEC!CHZ, PROTEC!CH3 ENABLE A CHANNEL FOR WRITING MPT.WE: WRT!CHO APNT,0 START AT X=0 BM18 :USE BIT=MAP-1, WITH A COUNT OF 512. PIXELS MPT.WY: O MPT.WB: 0 STOPN ;#06400000000000004#0000000000000000000040000#000 END.TEST tt “"."'..i..'t..tt.'..'t'ti....".t't".""'.t't't'."t"""'ttttt't . x e END TEST 30 . ! | VSV11/V511 == GRAPHIC SYS. DIAG MACRO M1113 see TEST 30 IMAGE MEMORY PATTERNS . 29-JAN=-81 17:22 : F 16 PAGE 100-4 :.'.'.".".'.".'.".'.."'.'..'.'."Q'.."t".'."'..0.'..'.".'."'.0 . SEQ 0200 o —— e —— e ——— — . o ——— e VSY11/yS11 == GRAPHIC SYS. DIAG MACRO M1113 | wes TEST 31 SPARE 29-JAN-81 17:22 G 16 PAGE 101 SEQ 0201 T | :"..'."'..'..'."...""..'.."...'.....'..'......'..'........"..".' | e BEGIN TEST 31 = SPARE E..'..".....".'..."."."....'...'..'.'..'.'.'......'.'....'."....'. ! ; (ITERATION COUNT = 1.) 7628 074264 7629 074270 ;g%? 074272 005737 001402 002502 TST BEG EXIT 7632 074276 004737 027702 SPARTS: JSR ;g%z 0764302 7635 7636 074306 EXIT DPUMOD SPARTS 1ST PC,TSTGO TST :DPU ONLY ?? ;NO, EXECUTE. : EXIT THIS TEST >3>3333333333333>3>33>33>>>>>> ; **=NOT YET CODEDw*«» s R END.TEST ;."."'.t........'Q'"'.'"..'..'...'.'...'..'....Q'.'.i'.t.t."'.t".' - " L §e ;t END TEST 31 :"t"ttt..t'."'tt.."'t't'ttt.t.Q'l"tt....tttt"itt.'.".t.Qttt'."" ' - 3 VvSV11/vS1]1 == GRAPHIC SYS. SYSTEM VER] vee TEST 32 7639 29-JAN-81 17:22 H 16 PAGE 103 SEC 0202 "'."".'..""'Q."'"""..Q"...........".'.."'.Q."".'.i"""' BEGIN TEST 32 =~ SYSTEM VERIFICATION DISPLAY ...Qt"..".."'..'.."""......'.""'Q'..'QQ'...."tt'..".'..".'.' ; 7640 074374 7641 074400 7642 074402 005737 001402 TST BEQ EXIT 002502 FAILIALAIET 7643 7644 7645 7646 7647 7648 074406 027702 026650 7649 074412 7650 (74416 7651 074422 7652 074442 027454 7655 7656 074440 7657 7658 074442 7659 074450 7660 074454 7661 074456 7662 7663 074474 7664 074502 7665 074504 7666 074510 7667 074514 7668 074520 7669 074524 7670 074532 I S1: 106376 JSR JSR JSR PC,TSTGO PC.CLRRW PC.DBL INK MOV JSR #L0GO, aDPC PC,WAITF JSR BR 000100 040 m 000140 000140 110146 LO GO: 001540 PC.PAUS.S viS2 ; START WITH THE LOGO. ..AND CONTINUE. SETCB,ACAT CHAR'ALL ASCIZ /D1 GITAL/ APNT, 140,140 LVEC LXY 1,-200,0 LVEC LXY LXY LXY STOPN JEXCEED EDGES AT LOWER LEFT.. 1,0,-200 1.200,0 1.0,200 LXY APNT,1640.1540 LXY 173000 PC.,LUMIN ; CLEAR. ; DISABLF BLINKING. ; BLAST THE LUT. APNT, 540, 100 LXY LXY 001640 ;DPU ONLY ?? sNO, EXECUTE. : EXIT THIS TEST >>3333333333333333>3>>>>>> SMORGASBORD, ONE FRAME THAT HAS A BIT OF EVERYTHING. JSR 000540 DPUMOD vIsi ST FIRST, A DEC LOGO (SORT OF), THEN VIOLATE THE EDGES AT LOWER LEFT AND UPPER RIGHT. 105222 027054 7653 074426 7654 074434 7671 074534 7672 074540 7673 074544 7674 (074550 7675 074554 (ITERATION COUNT = 1.) 1,200,0 1.0,300 1.-200,0 1.0,-300 ;...AND AT UPPER RIGHT. p o ———— | | YSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 vee TEST 32 7677 ;p?& 679 7680 074556 7681 074564 7682 074570 7683 074576 7684 074602 7685 074610 7686 7687 074614 7638 7689 074616 7690 074624 7691 074626 7692 074632 7693 074636 7694 074642 SYSTEM VERIFICATION DISPLAY 29-JAN-81 17:22 . 012777 114000 113774 074616 027454 074670 027454 074702 027454 000500 106246 4 vise: JSR MOV JSR JSR BR 106222 000002 7701 074670 7702 074676 7703 Q74702 7704 074710 7705 074712 7706 074714 7707 074716 7708 074720 7709 074722 7710 074724 7711 074726 7712 074730 7713 074732 7714 074734 7715 Q74736 LOCT: 114000 160000 114000 107774 173000 vIS3 :...AND CONTINUE. 1,-436,436 LXY 1,-436,-436 1.0,-576 1.436,-436 SOCT1: APNT, 220,620 000620 SOCT2: APNT ,1460,620 SVEC'!ALL .+10 SXY SXy 1.76.0 1,56,56 SXY SXxy 1.,-76.,0 1.-56,-56 SXY RPNT SXY SXyY SXY SXY SXY STOPN : 1 LARGE OCTAGON... 1.0,576 000620 SXY 7717 074742 :...AND 2 SMALL ONES. PC,WAITF #SOCT2,aDPC PC,WAITF PC ,PAUS.S LXY DJMP, :1 LARGE ONE... #SOCT1,aDPC 1,436,436 SXY SXY 130000 #LOCT,aDPC LXY STOPN 000220 074710 001460 PC,WAITF LVECTALL LXxy 1.576.,0 LXY LXY 173000 MOV APNT ,500,2 LXY 7716 074740 7718 074744 7719 074746 7720 074750 JSR MOV 106234 7696 (74652 7697 074656 7699 074666 7700 SEQ 0203 ; NOW 1 LARGE AND 2 SMALL CCTAGONS. 7695 074646 7698 074662 116 PAGE 104 :...AND 2 SMALL ONES. 1.0,76 1.-56,56 1.0,-76 1.56,.-56 u,20,50 1.20,50 1.20,0 1,-20,20 1,-20,-20 :5 REL POINTS IN CENTER. :CENTER. S po—— ——— USVIT/VS1132== GRAPHIC SYS, D ‘ eee 772 77 7704 7725 076752 7726 076760 7727 074766 7728 074770 074774 7729 7730 SEQ 0204 SYSTEM VERIF TESY 075000 7731 075006 7732 075014 7733 075022 773% 1 NEXT, SHOW GRAPH/MISTO ¥ IN UPPER LEFT. #1260 GHIINH,GY+2 ;PLOT GRAPH Y STARTING AT 1240:!GHIINH. MOV 075126 VIS3: 0127%7 106044 012777 000‘0; 005277 00473 062737 1%: 737 023727 001362 SKP2 INC JSR BGH] INH, GY 2 84 ,GY+2 GY+2 #1604 15 3 075152 MOV #HST 1240 GHI INM, HY+2 ;NOW, HISTO Y STARTING AT 1240!GHIINH. MOV SkP2 INC 075074 000431 7748 075100 114000 113774 7747 7749 075106 7750 075110 7751 075114 7752 075120 7755 075122 7754 075126 7755 7756 075134 7757 075140 7758 075146 7759 075150 7760 075154 176104 127774 173000 TMP BNE HY+2 #HST!1550 s] 150000 114000 176110 127774 173000 BR 001240 000140 041240 160000 075122 001240 LVEC ALL GY: HSY: HY: 075150 #10,HY+2 PC ,PAUS.S visé APNT,100,1240 LXY 001240 PC,WAITF #GH] INH HY+2 Ly Gx]!é ;LOOP UNTIL DONE. aDP( JSR 001240 JINCR ¥ AMPLITUDE... #4SY, aDPC BIC ADD 7746 075076 aDP( PC,WAITF BIC ADD o BNE JSR 77464 7745 TART GRAPH Y. 075124 075124 001604 105772 7743 #GRY ,aDP( 1.340,0 U.=340.0 GHY !ALL,0!1240 JINCR Y AMPLITUDE... ;...AND LOOP TIL DONE. i...AND CONTINUE. ;DRAW BASE LINE. ;X INCR = & FOR GRAPH, STOPN,DJMP,GY SETHB, 1240 APNT, 140,1240 Gxl! GHY !ALL ,HST 1240 P STOPN,DJMY sHISTO BASE LINE. ;X INCR = 10 FOR H]STO. K 16 | 106 PAGE 17:22 1 29-JAN-8 M1113 MACRO DIAG SYS. GRAPWIC | YSV11/vS11 == ~ wee TEST 32 H 7762 * NEXT, GRAPH/MISTO X IN LOWER RIGHT. ;;gz 7765 075162 012737 011340 075334 VIS&: 7766 075170 7767 075176 7768 075200 7769 0752064 012777 000402 005277 004737 075310 105626 027454 ;;;2 075232 042737 010000 062737 000004 023727 075334 001362 7776 075062 7777 075250 7778 075252 7779 075256 012777 000402 005277 004737 7770 075210 7771 075216 7772 075224 105634 1$: 075334 075334 001704 042737 062737 075344 105554 027454 010000 000010 105562 2%: 7788 075310 7789 075316 7790 075320 7791 075324 7792 075330 114000 113774 174104 001340 123774 173000 001340 160000 7796 075344 150000 001340 7798 075356 174110 7800 075364 173000 779% 075332 ;;gg 075336 7797 075350 7799 075360 114000 123774 001340 (41340 100000 000100 075332 000140 075360 MOV abPC PC,WAITF #GHI INH,GX+2 #4,GX+2 GX+2,41704 1% . ADPC #HSX CMP , #HST 11650 HX+2 JSR aDPC PC,WAITF #GHI INH, HX+2 :INCR X AMPLITUDE... :LOOP UNTIL DONE. #10 HX+2 :INCR X AMPLITUDE... 2% :...AND LOOP TIL DONE. PC ,PAUS.S :...AND CONTINUE. B8R GRX: APNT,1340,100 GX: GHX 'ALL,0'1340 STOPN,DJMP, GX HX : :START GRAPH X. #HST ' 1340 GHI INH,HX+2 :NOW, HISTO X STARTING AT 1340!GHIINH. H HSX: #1340/ GHIINH,GX+2 :PLOT GRAPH X STARTING AT 1340!GHIINH. #GRX , aDPC MOV SKP2 INC JSR BNE 001362 ;;gg 075306 000431 JSR BIC BIC ADD 075362 075362 7785 SKP2 INC MOV 7782 075276 023727 075362 041650 ;;gz 0753064 MOV ADD CMP BNE 7775 075234 012737 051340 075362 7780 075262 7781 075270 SEQ 0205 SYSTEM VERIFICATION DISPLAY vISS LVEC IALL 1.0,340 LXY U.0.-340 LXY GYI'4 :DRAW BASE LINE. SETHB,1340 :HISTO BASE LINE. 6y1:10 ;¥ INCR = 10 FOR HISTO. . 1340, 140 APNT GHXALL ,HST'1340 STOPN, DJMP, HX Y INCR = 4 FOR GRAPH. - VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 wee TEST 32 SYSTEM VERIFICATION DISPLAY 7802 7803 7804 7805 <.| e Sa g, | 7807 075376 012700 004737 177777 027020 7811 075410 7812 075416 7813 075424 013737 012737 012777 004737 003240 012737 012777 004737 137400 075542 027454 7821 C75454 012700 004737 000377 027014 7823 075460 013737 003240 075600 012737 012777 004737 075556 027454 134010 075576 012737 012777 004737 075570 027454 7806 075372 7808 7809 7810 075402 7814 7815 075430 7816 075436 7817 075444 7818 7819 7820 075450 7822 7824 7825 075466 7826 075474 7827 075502 7828 7829 075506 7830 075514 7831 075522 7832 7833 075526 7834 075526 7835 7836 075530 7837 075536 7838 075542 114000 160000 114000 136340 000000 7843 075556 7844 075564 7845 075570 7846 075576 7847 075600 7848 075602 7849 075606 114000 160000 114000 134001 000000 164000 173000 I S5: JSR ;...ALTERNATE WORDS. : XCT BM14, DRAWS A DASHED... MOV JSR #377 ,RO PC,FILLY MOV MOV : SET BUFFER ADDRESS. FREE ,B048 % ; 4 BIT X 64 SQUARE. ' M64 .B048-2" #BMO MOV JSR MOV PC,WAITF #BMO4 iM32EX2,B048-2 ; 4 BIT X 64 SCUARE. MOV 105330 ; SET PIXEL DATA PATTERN... ;...AND FILL BUFFER WITH... J...LINE (4 ON, & OFF)... ;...FOR 340 PIXELS. #B3M18!400,8148-2 ;SET OPCODE = BM18 X 400 #318,aDPC ;XCT BM18, DRAWS A DASHED... i...LINE (2 ON, 2 OFF)... PC,WAITF ;...FOR 400 PIXELS. PC,WAITF MOV 105366 #-1,R0 #814,aDPC MOV 075550 #804 , aDPC : DO IT. MOV 8 ; 8 BIT X 64 SQUARE. 'M64 ,B048-2 #BMO #BMO8 'M32 1 EX2,B048-2 ; 8 BIT X 64 SQUARE. JSR PC,WAITF MOV ;JSR BR #308,aDPC : AND DO THAT T0O. PC,PAUS.5 VISS5A s...AND CONTINUE. 000240 B1 4: SP:;,400i540 : 4 ON & OFF FOR 340 PIXELS. 000340 81 8: APNT, 300,340 : 2 ON 2 OFF FOR 400 PIXELS. 173000 164000 SEQ 0206 FREE ,B148 ; SET BUFFER ADDRESS. SET OPCODE = BM14 X 340 #BM14!340,8148-2 JSR B1 48: 075576 001040 PC.FILL2 JSR MOV 105406 1%: 000540 MOV MOV MOV 135010 000400 075550 000300 L 16 PAGE 107 NEXT SHOW BIT MAP MODE 1 AT BOTTOM CENTER, AND BIT MAP MODE O AT TOP CENTER. 075552 075550 000430 7839 075550 7840 075552 7841 075554 7842 136340 075530 027454 29-JAN-81 17:22 001340 B0 4: 001340 80 &: 8048: J 'l .‘ BM14!340 0 STOPN APNT, 540, 1340 DJMP, .+10 APNT, 1040, 1340 ' M64 BM04 0 DNOP, DNOP STOPN VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 sex TEST 32 SYSTEM VERIFICATION DISPLAY 7851 29-JAN-81 17:22 M 16 PAGE 108 SEQ 0207 785 785 7854 : : NEXT SHOW RUN-LENGTH MODE DIAGONAL BARS BETWEEN THE BM1 AND BMO LINES. : USES 16 INTENSITY LEVELS, FROM O TO MAX. THE O LEVEL RUN-LENGTH IS VARIED : FROM & TO 24(8) FOR 20 LINES OF DATA, WHILE THE OTHER RUN LENGTHS. REMAIN 7857 075610 112737 000004 075671 VIS5A: : ggg 7858 075616 012777 075660 7859 075624 000403 7860 075626 012777 000001 7861 075634 004737 027454 7862 075640 123727 075671 7863 075646 103003 7864 075650 105237 075671 7865 075654 000764 7866 075656 ;gg; 075656 7869 105206 105176 000024 114000 000300 000320 144040 000 004 7874 075700 7875 075710 7876 075720 006100 006200 006300 006120 006220 006320 7873 075672 006020 006040 006060 7877 075730 7878 075732 7879 075734 173000 000000 160000 075670 1%: 2%: 3%: 000430 7870 075660 7871 075666 7872 075670 CONSTANT AT 14, 006140 006240 006340 MOV MOvB THE LINES ARE DRAWN FROM TOP TO BOTTOM (YDOWN=1) #4 ,VRLF2+1 #VRLF ,aDPC ;SET INITIAL COUNT FOR O=INTENS AT 4 ;START THE FILE BR MOV JSR CMPB BHIS INCB BR 2% #1,aDPC PC,WAITF VRLF2+1,#24 3% VRLF2+1 1$ ;SKIP OVER THE RESUME JRESUME THE DISPLAY ;WAIT FOR DONE ;DONE 20(8) LINES? sFINISH IF YES. ;BUMP INITIAL COUNT IF NO. ;...THEN XCT AGAIN. BR visé ;...THEN CONTINUE. :JSR PC ,PAUS.5 s PAUSE ;DISPLAY FILE_FOR_VISUAL RUN-LENGTH MODE VRLF: VRLF1: VRLF2: APNT,300,320 RNLN!YDOWN .BYTE ‘WORD .WORD .WORD .WORD STOPN 0,4 ;START BETWEEN BM1 & BMO ;ENTER RUN-LENGTH MODE, GO DOWN THE SCREEN :0 INTENSITY, START AT LENGTH=4 6020,6040,6060 :INCREASING INTENSITY, LENGTH=14 6100,6120,6140,6160 6200,6220,6240,6260 6300,6320,6340,6360 O .WORD DJMP,VRLF?2 ;STOP :....AND MORE :....AND MORE ;+...AND MORE ;COUNT = 0 FOR NEWL INE ;THEN JUMP BACK FOR MORE ————— VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 SYSTEM VERIFICATION DISPLAY 78 7896 075740 7897 075746 7898 075754 7899 075762 7900 075766 7901 075772 7902 075774 7903 076002 012737 012737 012737 012701 012703 010102 012777 112000 040000 000300 000003 000004 076372 027454 076404 076400 076402 076404 105030 <.¢ LR IEATE TR TETATE FE TR R R T TN I 7881 020000 076402 7918 076074 7919 076102 7920 076110 7921 076112 7922 076116 7923 7924 076120 7925 076126 7926 076132 7927 076134 7928 076136 79%8 076142 79 7931 076144 7932 076150 7933 076154 7934 076160 7935 076164 7936 076170 7937 076174 020000 076402 004000 110C70 156: 1$: 104626 105174 004737 027514 027514 SEQ 0208 2 BITS <9:8> = & LEVELS. 4 BITS <9:6> = 16 LEVELS (4 PER QUADRANT). 6 BITS <9:4> = 64 LEVELS (LUT REQ'D). 8 BITS <9:2> = 256 LEVELS (LUT REQ'D). MOV #LVEC'LO,RBL MOV #RBO , aDPC CMP RBY ,#0 MOV JSR 076404 040000 4$: 076402 020000 5% 6$: 076404 060000 7%: 8$: 003220 98 : MOV 108: MOV BEQ JSR BR BIS CMP R1.R2 PC,WAITF 38 PC,Q1 2% #MXY , RBY RBX,#1'0 ;INIT DISPLAY FILE. . : SET FOR 3 VECTORS PER LEVEL... *...AND INCR LEVEL BY 'L1"". *"SCRATCH COPY LEVEL COUNTER. :START, QUAD 1. :DELTA Y MIN ?? *DONE QUAD 1 ‘DELTA X MIN 2? 5% PC,0Q2 48 #MXY , RBX RBY , #MXY ' 0 7% PC.03 BIC #MXY ,RBY :QUAD 4, #4000,SHADLY : (RS)+,R1 “...OF BR CMP BEQ JSR BR MOV 6$ RBX,#1'MXY'0 9% PC, 04 8$ ANTSC8+2,RS BEQ JSR 118 PC,SHAD16 JSR PC,OUTLIN JSR JSR JSR JSR JSR JSR IF SO. ;QUAD 2, DX POS, DY NEG. BEQ JSR BR BIS CMP BEQ JSR B8R 11$: #1'0,RBX #300,RBY #3.R1 #4.R3 2s: 3$: MOV MOV MOV MOV 000000 027172 027514 027514 027514 N 16 PAGE 109 PIXEL BITS ARE AVAILABLE, AND HOW THE LOOK=-UP-RAM IS PROGRAMMED (GREY -SCALE BY DEFAULT, IF INSTALLED). 076266 012705 — ACTUAL COLOR/INTENSITY SPECTRUM DE PENDS UPON HOW MANY 076230 7916 076066 7917 076072 29-JAN-81 17:22 S FINALLY, AT DEAD-CENTER: 076266 020000 076404 — A CIRCULAR SWEEP FROM 12 0°'CLOCK THRU 360 DEGREES. INCREMENT INTENSITY/COLOR LEVEL SUCH THAT ALL LEVELS ARE DISPLAYED IN 360 DEGREES. 3 VECTORS PER LEVEL * 256 LEVELS = 768 VECTORS TOTAL. (OCTAL 3 * 400 = 1400) 076230 7909 076032 7910 076040 7911 076042 7912 076046 7913 076050 7914 076056 7915 076064 —————— e *DONE QUAD 2 IF SO. :QUAD 3, DX NEG, DY NEG. ‘DELTA Y =MIN 27 *DONE QUAD 3 IF SO. DX NEG, DY POS. :DELTA X =MIN ?? *DONE QUAD & IF SO. FINALLY, SET SHADING DELAY... “...AND CYCLE THRU 16 SHADES... EACH BASIC (NTSC) *"BR WHEN ALL DONE. 108 PC,PAUSE1 PC,PAUSE1 PC,PAUSE1 PC,EBL INK PC,PAUSE1 PC,PAUSE1 : LR wee TEST 32 e OUTLINE THE SCREEN. PAUSE 3 SECONDS... cNABLE BLINKING. PAUSE 3 SECONS... COLOR. ' VSV11/VS11_ == GRAPHIC SYS. DIAG MACRO M1113 wxe TEST 32 SYSTEM VERIFICATION DISPLAY 7961 076336 7962 076342 7963 076346 7964 076352 7965 076356 7966 076362 004737 004737 004737 004737 004737 027514 105356 027514 027514 030072 28-0CT-81 11:23 B 1 PAGE 109-1 SEQ 0209 JSR JSR JSR PC,PAUSE1 PC,DBL INK PC.PAUSE1 ; DISABLE BLINKING. EXIT st 2 EXIT THIS TEST 333333333333333333333355>)> JSR VISXIT: JSR PC,PAUSE1 PC,TSTEND VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1 113 wex TEST 32 SYSTEM VERIFICATION DISPL 7968 076366 7969 076372 7970 076376 7971 076402 7972 076404 7973 076412 7974 076414 7975 076422 7976 7977 076424 7978 076430 7979 076434 7980 076440 7983 076452 7984 7985 076460 7986 076464 7987 076466 7988 076470 7989 076472 7990 076474 7991 076476 7992 076502 7993 076510 7994 076516 7995 076522 7996 076526 7997 7998 7999 8000 076530 8001 076536 8002 076540 8003 076542 8004 076544 8005 076552 8006 8007 076556 813705 000416 013705 076540 176000 000300 Q1:Q3: MOV 076540 000002 076542 076542 1$: 162737 000002 076540 012700 000600 076536 176000 000207 :NO, INCR DELTA X. SuB #2 ,RBY axiT :YES, DECR DELTA Y. :CHECK FOR LEVEL CHANGE AND EXIT ...MAX, THEN DECR DY. RBY RS ;QUAD 2 AND 4, INCR DY 'TIL... #-c1777.R5 qg.asoo SDELTA ¥ MAX ?2? 2233 #2,RBY :NO, INCR DELTA Y. 1$: SuB #2,RBX ;YES, DECR DELTA X. axIT: MoV #600,R0 : DELAY APPROX 3 MSEC... DEC BNE R2 28 : LEVEL CHANGE REQ'D ?? *NOT YET. ADD BIC BIS R3.RBL 0‘c1777 RBL #LVEC'LO,RBL *...INCREMENT... +...AND STRIP LEVEL... :...REPLACE OPCODE. JSR RTS PC,WAITF PC gfig 28: ...MAX, THEN DECR DX. qg MOV 027454 ‘DELTA X MAX ?? #2 ,RBX MOV 18: 076536 076536 §g.t300 ggg} ggg 076542 ;QUAD 1 AND 3, INCR DX °TIL... BIC 000300 000002 RBX RS #°ci1777.85 BR 02:04: 176000 SE@ 0210 BIC ggg 000002 ¢ 1 PAGE 110 28-0CT-81 11:23 :...BETWEEN VECTORS. R1,R2 INC aDPC *YES, RESET COUNTER... *RESUME. .. t...WAIT.. +...AND EXIT. : DISPLAY FILE FOR CIRCULAR RAINBOW. 114000 160000 000776 173000 076530 000736 164000 RBO: APNT,HAFX,HAFY60 ;SET ORIGIN AT CENTER. RBX : 1'2 SDITTO X... RBL: LVECILO RBY: :LEVEL WILL INCREMENT. 300 DNOP, STOPN, DNOP DJMP,RBO 2...AND Y. END.TEST SRR AR . % i* A A AR AR R AR R A AR AR AR AR R AR R AR AR AR AR R AR AR AR AR AR AR AR AN END TEST 32 % SRR A R A A A A A A A AR AR AR AR A AR AR AR AR AR AR AR AR AR AR RARR RN RS VSV11/VS11_=-- GRAPHIC SYS. DIAG MACRO M1113 28-0CT-81 11:23 w++ TEST 33 JOY=STICK VERIFICATION (STAND=ALONE) 8009 D .1 PAGE 111 SEQ 0211 32333333323333 332333323332323232333332333332323233333323233333323233332323332333333333233. .t Hh BEGIN TEST 33 * % -« JOY=STICK VERIFICATION (STAND=-ALONE) :ttttttttttttttttttttttttttttitttttttttttt*'tttttttfltttttttttttttttttttt ; (ITERATION COUNT = 1.) 8010 076656 8011 076662 801% 076664 005737 001402 030070 TST BEQ EXIT s TESTK JSV TST ;s BR IF CLEAR TO RUN. 2 EXIT THIS TEST >3>3>3333333333333333333>>>> THIS TEST WILL RUN ONLY IF IT IS SPECIFIED BY ITSELF, AND IF MANUAL : INTERVENTION IS ALLOWED (UAM=0), AND, OBVIOUSLY, ONLY IF A JOY=STICK ; IS AVAILABLE. 8019 8020 076670 8021 8022 076674 8023 076676 8024 076700 8025 076720 8026 076724 8027 076744 8028 076750 8029 076754 8030 076774 8031 077002 8032 077010 8033 077016 8034 077024 8035 077032 8036 077040 8037 077046 8038 077054 8039 077062 8040 077066 8041 077072 s ONCE STARTED, THERE IS NO EXIT, SAVE <*(C>. 004737 JSV: JSR PC,TSTGO MANUAL BCOMPLETE 004737 005057 030414 077302 012737 053737 012737 053737 012737 053737 012737 053737 013737 006237 006237 052737 0712737 053737 013701 013700 146072 077302 146016 077302 146013 077302 146100 077302 077302 100306 100306 5000 146100 077302 003026 077302 005760 100431 000414 003270 882%88 6 8057 077140 027702 012777 JSVA1: JSVA: #NOMAN 18T CLR SELCHA PRINTF JSR GMANID 100320 100320 100740 100740 101110 101110 101114 101114 100306 MOV BIS MOV BIS MOV BIS MOV BIS MOV ASR ASR BIS MOV slS MOV MOV 100306 077152 077152 igts : 077150 PRINTF EXIT 103664 TST BMI BR T1STB : BGT : 540, 240 ; TITLE. JSVA1 #SCOUT PC.CONFIG 2 EXIT THIS TEST 2333333333333 3333355335>>> . FIND THE CHANNELS SET SELECTED CHANNEL 70 0 (DEFAULT). MCHAN,SELCHA,O,1 00 0,3,YES #CUON'!CUIOFF ,JCXA SELCHA,JCXA #CUIM,JCXB SELCHA,JCXB #CUIS,JCXC SELCHA,JCXC #CURD ,JCXD SELCHA,JCXD SELCHA,JSPIXA JSPIXA JSPIXA #CUWT ,JSPIXA #CURD,10% SELCHA,10% UNITN,.R1 SELCHA,RO ; GET CHANNEL NO. 28 MAKE WORD OFFSET (BITS 9-8) SYCTAB(RO) 33 2% s IS THERE A JOYSTICK HERE? JSTST :YES, GET ON WITH IT STIK(R1) STICK AVAILABLE THIS UNIT ?2? ttttttttttttttt'tttttttttttttttttttt't.tttttttttttttttt BEQ i MoV 2% 3322332333323 3233333 #1%,aDPC JNO, CAN'T RUN. 3333332333333 333333333333333333%3323] sDON'T KNOW, LET'S FIND OUT. VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M111 3 8058 077146 8059 077150 8060 077152 8061 077156 8062 077162 8063 000403 164000 146100 004737 103416 1$: 10$: 173000 027454 8065 ; 8066 8072 077220 38;2 077220 004737 006200 026756 000137 076744 045 ggg; 077270 103 8083 077302 000000 8879 8080 ;TRY TO READ CURSOR POSITION. acs 38’ ;BR IF DPU RESPONDS TO STICK. . CLRB STIK(R1) ;OTHERWISE, SET FLAG = NC STICK. 101 110 240, 240 3 1 2233223233222 2233323323223 3233333333323333322222233322322222%83 JSR ASR PRINTF JMP PC,RELEAS RO #NOSTIK,RO JSVA 3$: : BR MOVB JSTST 040 NOSTIK: .ASCIZ -EVEN /%A == NON-EXISTENT SYNC CHANNEL : %01/ 107 : s CHANNEL SELECTION QUESTION AND ANSWER. : MCHAN: QSEIZ /CHANNEL / 28: 000431 8075 077222 8076 8077 8078 SKP3 DNOP CURD,STOPN JSR PC,WAITF SEQ 0212 :titttttttt.'«ttttttttttttttttttttt*ttt*tttttttttttttttttt 8064 8067 077164 8068 077170 8069 077172 gg;? 077214 E .1 PAGE 1111 SELCHA: 0 ;RELEASE '‘HUNG'' DPU... ....TELL THE MAN.. : "KEEP TRYING (FOREVER) !! #1,STIK(R1) :SET FLAG = STICK AVAILABLE... :...AND START 'EM UP. : USER SELECTED CHANNEL (DEFAULT=0). |S— xx+ TEST 33 28-0CT—81 11:23 JOY=STICK VERIFICATION (STAND-ALONE VSV11/VS11_== GRAPHIC SYS. Dl AG MACRO M 113 28-0C g;81 11:23 wx+ TEST 33 JOY=STICK VER IF ICATION STAND=- ALON A L R T 1 UPDATE READ=OUT IF STICK IS _MOVING, ON "MATCH'* JSR JSR INTERRUPT, ‘MARK THE SPOT AS BEFORE, AND SAY ‘MATCH'* PC,LUMIN #58,aJSSV SDXR SDYR 003172 077752 NNNN = WWWW =NNNN §wwuu B R ] (=l=lelele] (=1l WWW NNN - 017737 —_— (SXTVY N] NNN Voo~ 103426 1%: 2%: 100004 003170 100006 003172 PC,GTCURS H§DXR.SDXR 6 MKDYR, SDYR 68 aDPC 001777 103362 100470 003170 103354 003172 #1777 MATCH aDXR, SDXR 418 aDYR,SDYR 428 DXYME , JXYPE 54% #1777 ,MATCH 4%: o 077442 #JSPIXA #JSPIXA,aDPC PC,WAITF #JSPIX,aDPC 103440 103372 077440 ~ w WN=OVONOWVNSWN=O VNN WN=0O 000N 077406 077410 077414 o ~ b b e o d cd =D cd e b b e e o e e b b o b b b b b b b b o b D d 2 077376 3 077404 oo Lo Lo To To To to To To To To To To To To To To To To To To To To To To To Jo To To Yo To To To To To ] T b e b cd Lo Lo T 027454 100316 001777 023524 103306 003170 PC, ERRCHK aDXR, SDXR 103300 003172 aDYR,SDYR 100470 174000 174000 003170 003172 100442 100360 52%: 53%: MARK, EMK : START THE DPU. ; WAIT FOR DISPLAY STOP. sSTART THE DISPLAY... :++.AND WAIT FOR INTERRUPT. : ON ''STOP'’, BREAK... sGET & MASK THE CURSOR DATA s+..AND CHECK STICK MOTION. : BR IF STICK IS MOVING. DITTO : ; OTHERWISE, JUST RESUME... :+..AND DISMISS. : "MATCH'' == ENABLE TEXT. :SEE_THAT NO SIGN BIT SET ON MATCH :...IF SET, REPORT ERROR :AND ALSO FOR DYR :SKIP IF 0K :REPORT THE_ERROR :G0_PROCESS THE INTERRUPT : "SWITCH' == DISABLE TEXT, :CHECK FOR ERROR CODE IN CSR :GET_X=COORDINATE & TEST SIGN :GET_Y=COORDINATE & TEST SIGN :REPORT THE ERROR. :CLEAR SIGN & STATUS ON SAVED X :CLEAR SIGN & STATUS ON SAVED Y ,EMK +2 : ON _EITHER... :++.ERASE OLD MARKER... SDYR,MARK +2 62% ;...AND SET A NEW ONE. :GOTO COMMON HANDLER. #1777 ,MATCH MKDXR, SDXR MKDYR,SDYR ;STICK MOVING, DISABLE TEXT. SDXR ,MARK MoV s...AND SWITCH VECTORS. sCLEAR OLD JSX,JSY CO=-ORDS. :...0K IF SET. #174000.SDYR BIC sSET ST0P... :...MTCH.-. 538 MARK+2 6%: ¢ FILL PIXEL BUFFER. s SET BUFFER POINTER. :...ERROR IF NOT SET. #174000, SDXR 54%: : BLAST THE LUT. ¢INIT IN READ/WRITE MODE. 52 JSDXYE , JXYPE 003172 001777 100004 100006 SEQ 0213 *SWITCH INTERRUP T, MARK THE CO-ORD WITH A LITTLE ‘X" ON "‘SWITCH'' FREE ,BMXX #2$ ,aSTPV #4$,3JSMV 100306 1 TURN ON THE CURSOR AND DISPLAY IT'S CO-ORDINATES ON SCREEN. ON ‘'STOP'* INTERRUPT JSTST: 004737 F PAGE 112 :SAVE OBSERVED CO-ORDS. VSV11/VS11_ <= GRAPHIC SYS. DIAG MACRO M1113 28-0CT-81 11:23 s+ TEST 33 JOY=STICK VERIFICATION (STAND=ALONE) 8140 077654 8141 077654 8142 077662 8143 077670 8144 077676 8145 077704 8146 077710 8147 077714 8148 077720 8149 077724 013737 013737 013737 013737 013701 004737 010137 010237 013701 100414 100416 100434 100436 003170 027324 100414 100416 003172 8151 077734 8152 077740 010137 010237 100434 100436 8154 077750 8155 077752 8156 077760 000002 017737 017737 8158 077774 8159 100002 8160 100004 g}g; 100006 042737 000207 000000 000000 100336 100340 100352 100354 628 : MOV MOV MOV MOV MOV JSR MOV MOV MOV 6 PAGE 112-1 JSX,EX JSX+2 ,EX+2 JSY,EY JSY+2,EY+2 SDXR,R1 PC,CNVRT R1.,JSX R2,JSX+2 SDYR,R1 8150 077730 004737 027324 JSR PC,CNVRT 8153 077744 MOV #1$, (SP) 8157 077766 8163 8164 8165 8166 g}gg 100010 100064 100140 100216 8169 100254 8170 100254 8171 100304 012716 042737 040 040 040 045 MOV MOV 077376 103060 103054 100004 100006 174000 100006 174000 100004 RTI GTCURS: MOV MOV BIC MKDXR: MKDYR: 040 040 040 101 127 106 106 040 BIC RTS 0 O ;ERROR MESSAGES JSWTEX: .ASCIZ JSDXYE: .ASCIZ DXYME: .ASCIZ JXYPX: '232#1 BGNMSG JXYPE PRINTX ENDMSG R1.JSY R2.JSY+2 aDXR,MKDXR aDYR;MKDYR SEQ 0214 ;ERASE OLD X/Y. ;CONVERT X TO ASCII... :...UPDATE READ-OUT. ;CONVERT Y TO ASCII... :...UPDATE READ=-0UT. : SET PC TO RESTART... :...AND DISMISS. #174000, MKDXR #174000.MKDYR PC FOR JOYSTICK OPERATIONS: / WAITED TOO LONG FOR J.S. STATUS RETRIEVAL/ / DXR OR DYR SIGN NOT SET ON J.S. RETRIEVAL/ / DXR OR DYR SIGN SET ON J.S. MATCH INTERRUPT/ /%A DXR: %06%A DYR: X06XAIN/ #JXYPX,aDXR,aDYR - VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 28-0CT-81 w+x TEST 33 JOY=STICK VERIFICATION (STAND-ALONE) 8174 8175 8176 8177 100306 8178 100314 8179 8180 100316 8181 100320 8182 100322 8183 100326 8184 100334 8185 100336 8186 100342 8187 100350 8188 100352 8189 100356 8190 100360 H .1 PAGE 113 SEQ@ 0215 : DISPLAY CODE. 73000 000100 000100 JSPIXA: CUWT,100,100 STOPN JSPIX: JCXA: 001820 EX: 060 EY: 000000 DNOP CUON! CUIOFF SETCB,ACAT :CURSOR ON, INT'S OFF. HAR!LO CHAR! ;ERASE OLD X ... APNT, 1620, 1600 001600 8191 100364 8192 100366 EMK: 79000/ LASCII APNT,1620,1540 CHAR LASCII APNT SVEC SXY SXY SXY 8198 100400 8199 100406 0 114000 000000 104000 001460 001600 123 060 001460 130 060 001540 123 060 131 060 000000 JSK: JSY: MARK: 040 001540 001500 115 101 000010 :+..AND Y NUMERICS... ;++«.AND OLD MARKER. 1.-20,20 ?.20 0 -10,-10 sDISPLAY NEW X... LASCII /0000/ APNT,1460,1540 CHAR s...AND Y... LASCII /JSX / LASCII /JSY / LASCII APNT SVEC SXY SXY SXY SXY 114000 102000 1,-10,-10 u,20 sASCII BASE ADDRESS. APNT , 1460, 1600 CHARTALL SXY 8212 100456 8213 100460 70000/ 0.0 SXY SXY 8196 100376 8215 100462 11:23 70000/ :...AND NEW MARKER. 1,-10,-10 U.20,0 1.-20,20 u.20,0 1.-10,-10 APNT,1540,1500 CHAR!LO LASCII /7 MATCH/ : ""CHAR!ALL'' IF MATCH INTERRUPT 000716 APNT,10,HAFY60-20 sNOW LABEL THE BOX VECTORS. 060 000260 060 000716 062 000530 065 000716 LASCII 70000/ APNTiiéo.HAFY60-ZO CHAR!ALL 065 001116 062 000716 062 065 MATCH: CHAR! ALL LASCII_ 70250/ LASCIT 71256/ APNT,530,HAFY60-20 CHAR!ALL LASC 11_/0520/ APN711256-140.HAFY60-20 CHAR'ALL FERE AR == OONN O HfNSO VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 28-0CT-81 11:23 wex TEST 33 JOY=STICK VERIFICATION (STAND=-ALONE) 114000 103774 001366 000716 061 114000 103774 061 114000 103774 060 114000 065 001636 062 000716 067 000010 060 000716 060 000250 060 114000 103774 060 114000 062 000716 064 000510 065 000716 060 001136 061 000716 067 001376 100714 061 114000 103774 061 114000 103774 061 100720 100726 100730 100732 103774 RNONONN ¥ SEARK guum-—g oMo b b b s cd cuu i e (2 lelelelelelele b e i amd e e e e e i b d b — 064 001636 066 067 114000 103774 107 001706 000010 164000 146016 114000 113774 164000 164000 000000 000000 110000 CHARALL ASCII 120 BOXES: JCXB: APNT,1776=70,10 CHARfALL ASCII /GP/ sFINALLY... DNOP,DNOP,DNOP CUIM APNT,0.0 LVECTALL sxx%x FOR DEBUG *ww LXY 000250 LXY LXY LXY 000240 LVEC LXY 110000 114000 134001 000000 114000 106000 000520 000676 000756 : MATCH ON, SWITCH OFF. ;AND DRAW NESTED BOXES. 1.0,1676 1.-1776,0 1.0,-1676 1,1256,0 1.0,1176 1.-1256,0 ¥ 1.0,-1176 APNT, 520,500 000500 LVEC LXY LXY LXY LXY 000636 000736 1.1776,0 s...MY INITIALS. APNT, 250, 240 LXY LXY 114000 70240/ APNT ,HAFX=60,510 CHAR ALL ASCII 70500/ APNT ,HAFX~60,1176=40 CHAR fALL ASCIT 71176/ APNT ,HAFX=60, 1436=40 CHARfALL ASCII 71436/ APNT ,HAFX=60, 167640 CHARALL ASCIT 71676/ 063 000716 114000 =000 o ~N ~ oSN e e e e i e e e e e e e b d e [elelelelelelelelelelelelelelelelelele] 103774 SEQ@ 0216 APNT,1526=140,HAFY60-20 CHAR!ALL ASCII 71526/ APNT,1776=140, HAF Y60-20 CHARALL ASCII 71776/ APNT ,HAFX=60,10 CHAR fALL ASCII 70000/ APNT ,HAFX~60,250 067 000716 I .1 PAGE 113-1 1,536,0 1.0,476 1.-536,0 1.0,-476 APNT ,HAFX=64 . , HAF Y5064 . BMXX: BMO4 ' M64 0 APNT , HAF X=20 , HAF Y60 SVECILO SXY SXy SXY 1.40,0 u.=20,2¢ 1.0.-18 : A 64 SQUARE BIT MAP AT CENTER. : POINTS TO FREE CORE BUFFER. ; CROSS AT CENTER (BLK ON WHITE) 1 VSV11/VS11_ == GRAPHIC SYS. DIAG MACRO M1113 28-0CT-81 11:23 PAGE 113-2 s++ TEST 33 JOY=STICK VERIFICATION (STAND-ALONE) 8288 8289 101102 164000 164000 8291 101114 146100 173400 8290 101110 8292 101120 g%gz 101126 146013 164000 160000 164003 164000 100732 164000 164000 JCXC: JCXD: DNOP,DNOP, DNOP s*%* FOR DEBUG #x+ CURD,STOPI sREAD JSX/JSY, STOP, INTERRUPT. CUIS,SYNC+2 DNOP , DNOP, DNOP DJMP ,BOXES 8295 101132 SEQ 0217 ;SWITCH ON, MATCH OFF. sx*% FOR DEBUG #++ ;LOOP END.TEST ARttt . % i* . % M it 3232222232323 222 END TEST 33 ASAE SRRttt eI s I3 233222] VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 28-0CT-81 wex TEST 34 SELECTED DISPLAYS (STAND=-ALONE) 8297 K 1 PAGE 114 11:23 SEQ 0218 R IRl s % . o% BEGIN TEST 34 . % - SELECTED DISPLAYS (STAND-ALONE) PRRRRRARRRRRA AR AR RRRERARRRRARRERRAAARRRRARRRARR AR R AR AR ; (ITERATION COUNT = 1.) 8298 101224 8299 101230 ggg(‘) 101232 005737 001420 030070 TST BEQ EXIT TESTK SELDIS : BR IF OK TO RUN. TST 2 EXIT THIS TEST D3333333333333333333353>>> 8302 : THIS TEST CONSISTS OF A SELECTION OF DISPLAYS INDIVIDUALLY gggg * DISPLAY DISPATCH TABLE. gggz : SELECTABLE BY THE USER AS FOLLOWS: 8307 101236 000000 8312 101250 8313 101252 102702 103066 8308 8309 8310 8311 101240 101242 101244 101246 8314 101254 8315 101256 8316 101260 8317 8318 8319 8320 8321 gggg 101262 101264 101266 101270 101272 DTAB: 102262 102320 102356 102556 0 TBON TBOFF BARS DOTS HATCH PERIM 103106 103360 COLID GUNID 104526 SCRWHT 104620 104534 104542 104550 BLOOM SCRRED SCRBLU SCRGRN : 0 = "TYPE THIS" : 1 ; 2 : 3 : 4 ; 5 ; 6 ; 7 ; 8 ; 9 ;10 ;11 ;12 ;13 = TURN BLINKING ON = TURN BLINKING OFF = COLOR BARS =7X7DOTS =7 X 7 CROSS=HATCH = PERIMETER OUTLINE = BASIC COLOR ID = GUNS ID = ALL WHITE SCREEN = = = = DTABE: DTHIL=<DTABE-DTAB>/2~1 000015 "BLOOM'' TEST (ALT. WHITE SCREEN & PERIMETER OUTLINE) ALL RED SCREEN ALL BLUE SCREEN ALL GREEN SCREEN 8324 : IT WILL RUN ONLY IF IT IS SPECIFIED BY ITSELF, AND IF MANUAL gggg : ONCE STARTED, THERE IS NO EXIT, SAVE <*C>. gggg ; INTERVENTION IS ALLOWED (UAM=0). 8329 : gggg ; ggg% : %%%é ; 8336 101272 101272 101276 8337 101302 gggg 101306 8343 8344 8345 8346 101312 101314 101316 101336 004737 004737 004737 004737 027702 026074 027054 102320 CHANGE MODES VIA KEYBOARD: SELECT DISPLAY (D) N<CR> WHERE N = DISPLAY NUMBER (SEE ABOVE). SELDIS: COMBEG JSR JSR JSR JSR PC,TSTGO PC,DPRESET PC,LUMIN PC,TBOFF MANUAL BCOMPLETE PRINTF #NOMAN EXIT TST : : : ; TITLE. DO SOFT INIT. BLAST LUT. START OUT WITH BLINKING TURNED OFF. IDLEX 2 EXIT THIS TEST 2233032333333 VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 28-0CT-81 sxs TEST 34 SELECTED DISPLAYS (STAND=ALONE) 8347 8348 g%gg H : IDLE LOOP. 8351 101342 8352 101362 8353 101402 8354 101404 8358 101424 8359 8360 8361 8362 8363 101430 8364 101434 8365 101440 8366 101442 8367 101444 8368 101446 8369 101446 8370 101452 8371 101456 8372 101460 8373 101462 gg;g 101466 IDLEX: IDLE: gg;g 101470 000000 8378 8379 8380 8381 8382 8383 8384 8385 8386 8387 8388 8389 8390 8391 8392 8393 8394 8395 8396 8397 000410 005077 101404 012701 004737 103402 005301 001373 000050 027454 013700 001743 005037 006300 004770 000746 101470 28: 101236 040 012 040 012 040 012 040 012 040 012 040 012 040 012 040 012 040 012 040 012 8399 102103 015 012 060 061 062 063 064 065 066 067 070 071 061 060 8400 102105 040 061 061 8402 102133 040 061 062 8404 102162 040 061 063 8401 102131 8403 102160 8405 102210 8406 102212 015 015 015 015 012 012 012 012 SDLIST: 1 SEQ 0219 PRINTF GMANID BR GMANID CLR JSR JSR JSR JSR MOV JSR BCS DEC BNE #SCOUT SDLIST,DISSEL,D,=1,0,DTHIL,YES IDLEB SDASK,DISSEL,D,=1,0,DTHIL,YES aDSR ~ :STOP THE DPU (IE.., FOR BLOOM) PC,WAITF' PC.WAITF PC.WAITF PC.WAITF ;WAIT FOR STOP #40. ,R1 *SET UP A TIMEOUT COUNTER. PC,WAITF *WAIT FOR THE STOP BIT. 2$ *BR IF STOPPED. R1 *NOT STOPPED. BUMP COUNTER. 1$ :LOOP IF NOT STOPPED. MOV BEQ CLR ASL JSR BR DISSEL,RO IDLE DISSEL RO PC,aDTAB(RO) IDLEA .ASCII .BYTE JASCII .BYTE JASCII .BYTE JASCII .BYTE ASCII .BYTE JASCII .BYTE JASCII .BYTE .ASCII BYTE JASCII .BYTE JASCII .BYTE JASCII BYTE : / 0 = "TYPE THIS'Y 15,12 /"1 = TURN BLINKING ON/ 15,12 /" "2 = TURN BLINKING OFF/ 15,12 7/ "3 = COLOR BARS/ 15,12 /7 "4 =7 x 7 pOTS/ 15,12 /" °S = 7 X 7 CROSS=HATCH/ 15,12 7/ "6 = PERIMETER OUTLINE/ 15,12 /"7 = BASIC COLOR 1D/ 15,12 /"8 = GUNS ID/ 15,12 /"9 = ALL WHITE SCREEN/ 15,12 7/ 10 = ALTERNATING WHITE SCREEN & PERIMETER OUTLINE/ 15,12 7/ 11 = ALL RED SCREEN/ JASCII /712 = ALL BLUE SCREEN/ JASCII /13 = ALL GREEN SCREEN/ BYTE .BYTE .BYTE ;w8 ieeed ;eeB seeB seeeB DISPLAY CURRENTLY SELECTED. JASCII .BYTE SDASK: L PAGE 114-1 WAIT FOR KBD ENTRY TO CHANGE MODES. DISSEL: 0 040 015 040 015 040 015 040 015 040 015 040 015 040 015 040 015 040 015 040 015 040 1$: 101470 101472 101513 101515 101543 101545 101574 101576 101616 101620 101640 101642 101671 101673 101722 101724 101750 101752 101767 101771 102017 8398 102021 IDLEA: IDLEB: ;%8 ixxxB ixxxB iwxs8 11:23 15,12 15,12 15,12 15.12 VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 28-0(CT-81 wxs TEST 34 SELECTED DISPLAYS (STAND-ALONE) 8407 102214 8408 102231 8409 102241 32}? 050 117 123 102 106 105 114 106 114 SDO: LASCII .ASCII LASCIZ .EVEN 11:23 L PAGE 114-2 /(BLINKING IS / /0FF), / /SELECT DISPLAY / SEQ 0220 VSV11/VS11 == GRAPHIC SYS, DIAG MACRO M1113 28-0CT-81 eex TEST 34 SELECTED DISPLAYS (STAND-ALONE) 8413 : gflg : 8416 8417 8418 8419 8420 8421 8422 8423 8424 8425 8426 102262 102266 102274 102302 102310 102316 8429 8430 8431 8432 8433 8434 102320 102324 102332 102340 102346 102354 004737 112737 112737 112737 112737 000207 105330 000116 000051 000054 000040 102232 102233 102234 102235 11:23 N 1 PAGE 115 SEC 0221 TURN BLINKING ON. TBON: JSR MOVB MOVB MOVB MOVB RTS PC,EBLINK #'N,SDO+1 #'),SD0+2 #',,SD0+3 #' ,SDO+4 PC s ENABLE BLINKING. : ADJUST PROMPT MSG. 3 3255 ; TURN BLINKING OFF. 004737 112737 112737 112737 112737 000207 105356 000106 (000106 000051 000054 102232 102233 102234 102235 TBOFF: JSR MOVB MOVB MOVB MOVB RTS PC,DBLINK #'F _SDO+1 #'F _SDO+2 #'),5D0+3 #',,SD0+4% PC : DISABLE BLINKING. ; ADJUST PROMPT MSG. VSV11/VS1]1 == GRAPHIC SYS. DIAG MACRO M1113 28-0CT-81 11:23 wex TEST 34 SELECTED DISPLAYS (STAND=-ALONE) R TR T TN T 8436 8437 8438 8439 004737 026650 027066 112000 000004 102466 012777 000402 005277 004737 005302 001411 060137 042737 102460 100420 012702 052737 000761 000400 100412 027454 102466 176000 112060 1$: 28: 102466 102466 2 BITS <9:8> = = 4 COLORS/SHADES. 4 BITS <9:6> = 16 COLORS/SHADES. 6 BITS <9:4> = 64 COLORS/SHADES. 8 BITS <9:2> = 256 COLORS/SHADES. JSR BIS 000000 2. 0 000000 2, 0 000002 173000 160000 102466 :BR WHEN FINISHED. : OTHERWISE, INCREMENT... ‘...AND STRIP THE LEVEL... 28 :...AND LOOP. 3s: JSR RTS PC,OUTLIN PC BGEN: BV: APNT, 0, 0 LVECTLO 10, MAXY 170, MXY!MAXY sfoPN DJMP, BV : 'NTSC COLORS (IF LUT AVAILABLE) *INIT DISPLAY CODE AT LVL O... ...,AND INCREMENT BY LVL 1. abPC PC,WAITF R2 3$ R1,8Y #~C1777.8V #LVEC!LO,BV B8R 000002 021776 : 256 PAIRS = 512 TOTAL. #BGEN ., aDPC 000000 040000 #256. ,R2 MOV SKP2 INC JSR DEC BEQ ADD BIC MOV 114000 112000 001776 sINIT DISPLAY. PC.NTSC #LVEC!LO,BV ¥4 R1 104762 040000 PC,CLRRW JSR MOV MOV 004737 000207 000000 SEQ 0222 COLOR BAR GENERATOR. BARS: 004737 012737 012701 2 NUMBER AND COLOR OF BARS DEPENDANT ON PIXEL SIZE. ROUTINE DEFAULTS TO 8 BAR NTSC RAINBOW (IF LUT INSTALLED), OR GRAY=SCALE 3HADES DEPENDANT ON PIXEL SIZE AS FOLLOWS: AR TR T 8443 8444 8445 8446 102356 8447 102362 8448 102366 8449 102374 8450 102400 8451 102404 8452 102412 8453 102414 8454 102420 8455 102424 8456 102426 8457 102430 8458 102434 8459 102442 8460 102450 8461 8462 102452 8463 102456 8464 8465 102460 8466 102466 8467 102470 8468 102474 8469 102500 8470 102504 8471 102510 8472 102512 R 8440 8441 8442 B PAGE 116 *...AND REPLACE OPCODE. : OUTLINE THE SCREEN. * RETURN TO IDLE 1.OOP. : UP... :...AND OVER... :...DOWN... *...AND OVER AGAIN. N — | VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 28-OCT-81 11:23 wex TEST 34 SELECTED DISPLAYS (STAND=-ALONE) gz;z 8477 102516 8478 102516 8479 102520 8480 102522 8481 102524 8482 102526 8483 102530 8484 102532 8485 102534 8486 102536 8487 102540 8488 102542 8489 102544 8490 102546 8491 102550 8492 102552 8493 102554 ¢ 2 PAGE 117 : 7 X 7 POINT TABLE FOR DOTS AND CROSS=HATCH. 000104 000330 000554 001000 001224 001450 001674 177777 000110 000320 000530 000740 001150 001360 001570 177777 XTB YSOTBL 34,%2 108.%2 182.%2 %56.*2 30.%2 404.%2 478.%2 =1 Y60TBL: 36,2 104.+2 c.*2 240.+%2 308.%2 376.%2 444 . %2 -1 :X POINTS, .AND 50 HZ Y POINTS. DELTA : 60 HZ Y POINTS. ;DELTA = 68. SEQ 0223 VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 28-0CT-81 11:23 wxx TEST 34 SELECTED DISPLAYS (STAND=-ALONE) 8519 102662 8520 8521 8522 8526 102664 102666 102670 102700 SEQ 0224 : DOT GENERATOR. poTs: OO00O0O =0ON—=O =N~ NS NNIN OONVOW NrRoONNON O—=00—=0 VO === NNONNON) NN=ANSN WNWO =W NON=O"N 8495 8496 8497 8498 102556 8499 102562 8500 102566 8501 102574 8502 102576 8503 8504 102602 8505 102606 8506 102610 8507 102614 8508 102620 8509 102622 8510 102630 8511 102636 8512 102642 8513 8514 102644 8515 102652 8516 102656 8517 8518 102660 0.2 PAGE 118 012777 004737 000764 000207 117774 173000 CMP BEQ MOV 000074 102664 1%: 102516 102662 2$: MOV BMI 3s: HZ,#60. 1$ #YSOTBL ,R2 ;WRONG, USE 50 WZ Y'S. (R2)+,DGY 3s :SET ¥ POINT. :BR WHEN ALL DOTS DONE. (R1)+.,DGX ;SET X POINT. #1,DGX iSET 1 BIT. BMI 1$ MOV #DGEN,aDPC BR 2% MOV JSR RTS DGEN: DGX: DGY: sINIT DISPLAY. #XTBL,R1 MOV JSR 105070 PC,CLRRW #Y60TBL ,R2 MOV BIS 040000 102660 027454 000001 104762 JSR MOV PC,WAITF sASSUME 60 HZ Y'S. :X DONE, GET NEXT Y. 3 LOOP #1,0UTFLG PC,OUTLIN PC SAY WE WANT DOTS ON THE OUTLINE OUTLINE THE SCREEN. RETURN TO IDLE LOOP. APNT 'ALL 1'0 0 STOPN RPNT STOPN : **x NOP TO ENLARGE THE DOTS ww» VSV11/vS1]1 == GRAPHIC SYS. DIAG MACRO M1113 28-0CT-81 11:23 wex TEST 34 SELECTED DISPLAYS (STAND=-ALONE) 8528 gg%g . : ; CROSS=HATCH GENERATOR. 8531 102702 8532 102706 8533 102712 8534 102720 8535 102724 8536 102730 8537 102736 gg%g 102740 004737 005037 012737 005037 012701 023727 001402 012701 026650 103052 041776 103062 102536 003246 8540 8541 8542 8543 ggzg 102744 102750 102752 102760 102764 012137 100406 012777 004737 000767 103054 8546 102766 8547 102772 8548 103000 8549 103006 005037 012737 012737 012701 8551 8552 8553 8554 8555 8556 gggg 100406 012777 004737 000767 012737 004737 000207 8550 103012 103015 103020 103026 103032 103034 103042 103046 8559 103050 8560 103052 8561 E.2 PAGE 119 103054 8562 103056 8563 103060 8564 103064 012137 103060 000074 102516 103050 027454 103054 040000 001776 102516 1$: 100052 103060 103062 103052 2%: 38: 103050 027454 100004 000001 104762 105070 114000 000000 000000 113774 041776 173000 HATCH: 4$: PC,CLRRW CHX #1!MAXX,CHV CHV+2 #Y60TBL ,R1 HZ,#60. 1$ #Y50TBL ,R1 MoV BMI MoV JSR BR (R1)+,CHY 28 #HGEN,aDPC PC.WAITF 18 CLR MoV MOV MoV CHY #1!0,CHV #MAXY, CHV+2 #XTBL ,R1 BMI MOV JSR BR MoV JSR RTS 43 #HGEN,aDPC PC,WAITF 3s #1,0UTFLG PC,OUTLIN PC MOV HGEN: CHX: APNT 0 CHV: LVEC!ALL 1!MAXX,0 STOPN CHY: 000000 JSR CLR Mov CLR MoV CMP BEQ Mov 0 (R1)+,CHX sINIT DISPLAY. sSET FOR HORIZ VECTORS. sASSUME 60 HZ Y'S. ;WRONG AGAIN. sSET NEXT :BR AT END OF Y's. ;LOOP FOR 7 HORIZ VECTORS. sSET FOR VERT VECTORS. sSET NEXT X. ;BR AT END OF X'S. ;LOOP FOR 7 VERT VECTORS. : SAY WE WANT DOTS ON THE OUTLINE. ; OUTLINE THE SCREEN. : RETURN TO IDLE LOOP. SEQ 0225 VSV11/vS11 <= GRAPHIC SYS. S. DIAG MACRO M1113 28-0CT-81 vex TEST 34 SELECTED DISPLAYS (STAND=ALONE) 8566 gggg 8569 103066 8570 103072 8571 103100 8572 103104 11:23 F_2 PAGE 120 SEQ 0226 : s DISPLAY A SQUARE, OUTLINING THE PERIMETER OF THE SCREEN. 004737 012737 004737 000207 026650 000001 104762 105070 fiERIM: JSR MOV JSR RTS PC,CLRRW #1,0UTFLG PC,OUTLIN PC s CLEAR FOR READ/WRITE. s SAY WE WANT DOTS ON THE OUTLINE s OUTLINE THE SCREEN. s RETURN TO IDLE LOOP. CY%evsssven, ggovamv‘ S WANNN=O NONOO NNV O SO 6 2 PAGE 121 SEQ 0227 DISPLAY THE FOUR BASIC COLORS (BLUE, RED, LT GREEN, DK GREEN) AND DISPLAY THE NAME OF EACH UNDERNEATH. EACH COLOR BAND WILL BE 1/4 SCREEN WIDTH. OLID: JSR MOV PC,CLRRW lLVEC!%0.11S : CLEAR FOR READ/WRITE. START WITH BLUE. d e o D e 103240 (R2 DIVIDES SCREEN BY 4 & CHANGES COLORS). 077670 d 077654 2%: 3$: d d d e 000001 027454 e 000077 000757 012777 004737 004737 000207 001700 103240 103270 027454 104762 START THE DPU. WAIT FOR DISPLAY STOP. BR o e 027454 ~~~ o o~ N -e— [lelelelelelelele Blelelelelelelels] W WWWWWWWW - WWWWWWWINW VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 28-0CT-81 11:23 wex TEST 34 SELECTED DISPLAYS (STAND-ALONE) 103240 BIS JSR DEC BEQ BIT BNE ASL BIC BIS BR 077612 4%: MOV JSR JSR RTS #81T0,aDPC PC,WAITF R2 48 #77.R2 2$ R1 #1700,11% CONTINUE THE DPL. WAIT FOR DISPLAY STOP. ALL DONE? YES. “8. TIME TO CHANGE COLOR? YES. R1,11$ NOW PRINT COLOR ID'S. #12$,aDPC PC,WAITF START THE DPU. WAIT FOR DISPLAY STOP. OUTLINE THE SCREEN. RETURN TO IDLE LOOP. PC.OUTLIN PC : DISPLAY CODE. 114000 NONWN SN - 10$: 1i$: APNT,0,0 LVECILO 103240 000004 110302 000004 128: APNT 4,4 114 125 001776 000000 021776 000000 09 8610 BEEEEER 000000 000000 103356 173000 CHAR'ALL LASCIZ /BLUE EVEN STOPN RED LSB-GRN MSB-GRN / H. VSV11/VS1]1 == GRAPHIC SYS. DIAG MACRO M1113 28-0CT-81 11:23 ves TEST 34 SELECTED DISPLAYS (STAND=-ALONE) 8619 8620 8621 8622 PAGE 122 2 SEQ 0228 ; %2%2 25 103360 004737 026650 26 103364 012777 8627 103376 012704 103372 103636 004737 027454 8628 103402 8629 103406 012702 012703 000020 000017 8631 103420 8632 103422 001402 012703 103432 103440 103444 103446 103450 103454 103456 103460 052777 004737 005303 001371 062704 005302 001353 012704 000001 027454 8642 103470 8643 103474 8644 103502 103510 8630 103412 023727 : GUNS ID DISPLAY : THIS DISPLAY IS SIMILAR ro THE COLOR BARS DISPLAY, EXCEPT: * 1. THE BARS ARE HORIZONTAL. + 2. THE GUNS ACTIVATED FOR EACH BAR ARE PRINTED INSIDE EACH BAR. 077440 GUNID: 000074 1$: PC,CLRRW ; CLEAR FOR READ/WRITE. PC,WAITF : WAIT FOR DlSPLAY STOP. #108,aDpPC MOV #LVEC'LO,R4 CMP HZ, aeo JSR 112000 003246 JSR MOV MOV MOV #16. n #15. . : START THE DPU + INIT VECTOR CONTROL. : INIT BAR COUNT. : INIT VECTORS PER BAR - : = 15 FOR 60HZ, 16 FOR SOHZ. BEQ MOV 28 #16. .R3 RG,118 : MODIFY DISPLAY FILE VECTOR CONTROL. 000004 BIS JSR DEC BNE ADD DEC BNE MOV #BITO,aDPC PC,WAITF R3 33 c1oo.a4 R2 1$ #4 R4 : * : : : : : : CONTINUE THE DPU. WAIT FOR DISPLAY STOP. THIS BAR COMPLETED? NO. YES. UPDATE VECTOR CONTROL. ALL BARS COMPLETED? NO. YES. INIT MSG POSITION CONTROL. 012702 012737 012777 004737 000020 103774 103676 027454 MOV MOV MOV JSR #16. .R2 #CHAR'ALL,238 #208,3DPC PC,WAITF : : : : INIT MESSAGE COUNTER. INIT DISPLAY FILE INTENSITY CONTROL. START THE DPU. WAIT FOR DISPLAY STOP. 8646 103520 8647 103524 8648 103526 8649 103530 8650 103536 012700 112120 001376 112760 112720 103722 MOV MOVB BNE MOVB MOVB #24$,R0 (R1)+,(R0O)+ 53 #' ,-1(RO) #' _(RO)+ : MODIFY DISPLAY FILE MESSAGE. 8652 103546 8653 103550 8654 103554 103562 001373 105060 052777 004737 177777 000001 027454 077250 BNE CLRB BIS JSR 6$ =1(R0) #81T0,aDPC PC,WAITF ; CONTINUE THE DPU. : WAIT FOR DISPLAY STOP. 8656 103572 023727 003250 001776 CMP YMAX,#MAXYSO : ARE WE RUNNING SO0HZ? gggz }83253 8635 8636 8637 8638 8639 8640 8641 103464 8645 103514 8651 103542 8655 103566 8657 103600 8658 8659 8660 8661 8662 8663 gggg 103602 103606 183610 103612 103616 103620 103626 8666 103630 gggg 103634 8669 8670 010437 012701 010437 020027 06%704 001002 062704 005302 001407 ozo;gg 001 012737 000732 004737 000207 000020 103646 gg: 077372 000100 103776 MOV 103720 077322 103712 000040 000040 48: 5%: 177777 103770 000074 000004 68: 104762 MOV CMP ADD BNE 608: 000010 102000 MOV 103720 78: : #308,R1 R, 228 : INIT MESSAGE POINTER. : MODIFY DISPLAY FILE MSG POSITION CONTROL. RO,#25$ #74 R4 0s : UPDATE MSG POSITION CONTROL. : BR IF NO ADD DEC BEQ CMP BNE MOV BR #6 R4 2 78 R2.#10 4 #CHAR'L0,238 4 : * : : ; JSR RTS PC,OUTLIN PC : OUTLINE THE SCREEN. : RETURN TO IDLE LOOP. : DISPLAY FILES. YES == NEED TO BUMP UP 2 MORE PIXELS. ALL MSGS DONE? YES. rxne TO FLIP INTENSITY? YET. vss CHANGE INTENSITY FROM WHITE TO BLACK. VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 wxx TEST 34 8671 8672 103636 8673 8674 8675 8676 8677 8678 SELECTED DISPLAYS (STAND=-ALONE) 114000 000000 103644 103646 103650 103654 103660 103664 173000 112000 041776 000000 061776 000000 823? 103672 160000 103646 114000 173000 114000 000004 000004 152000 103774 130 173000 160000 000000 8679 103670 8682 8683 8684 8685 8686 8687 8688 8689 8690 8691 8692 8693 8694 103676 103704 103706 103710 103712 103714 103720 103722 103770 103772 28-0CT-81 11:23 173000 000000 . 10$: 11$: 000000 000002 000000 000002 SEQ 0229 APNT,.0,0 STOPN LVEC'LO I !MAXX,0 0,2 11MXY !MAXX,0 0,2 : THE COLOR BARS... STOPN DJMP, 118 000000 20$: 218: 22%: 110302 130 [.2 PAGE 122-1 130 103706 23$: 24%: 25¢: APNT,0,0 STOPN APNT ; THE IDENTIFICATION MESSAGES. 4 4 SETCB,ACAT CHAR'ALL LASCIZ 7000000000000 XXX XXXXXXX/ STOPN DJMP,21$ : : MESSAGES FOR DISPLAY. gggg 8697 103776 050 060 8699 8700 8701 8702 8703 050 050 050 050 050 060 060 060 060 060 8698 104005 104022 104036 104060 104100 104126 8704 104153 8705 104206 8706 104226 8707 104254 8708 104301 8709 104334 8710 104365 8711 104424 g;}g 104462 050 050 050 050 050 050 050 050 050 050 060 060 060 060 061 061 061 061 061 061 061 061 061 30s: LASCIZ /(0000)/ 060 060 061 061 061 ASCIZ ASCIZ ASCIZ JASCIZ ASCIZ /(0001) /(0010) 7(0011) 7(0100) 7(0101) /(0110) RED/ BLUE, RED/ LSB=GRN/ BLUE, LSB=GRN/ RED, LSB=GRN/ 060 060 060 ASCIZ JASCIZ JASCIZ /(1000) 7(1001) 7(1010) MSB=GRN/ BLUE, MSB=GRN/ RED, MSB=-GRN/ 060 061 061 061 061 LASCIZ JASCIZ JASCIZ JASCIZ JASCIZ ASCIZ 7(0111) 7(1011) 7(1100) 7(1101) 7(1110) BLUE/ BLUE, aeo LSB=GRN/ BLUE, RED, MSB=GRN/ LSB-GRN, MSB-GRN/ BLUE LSB-GRN, MSB-GRN/ LSB=GRN, MSB=-GRN/ 235#2 /(1111) aLué RED, LSB-GRN, MSB-GRN/ VSV11/VS1]1 == GRAPHIC SYS. DIAG MACRO M1113 28-0(CT-81 11:23 wex TEST 34 SELECTED DISPLAYS (STAND-ALONE) J PAGE 123 2 SEQ 0230 8715 8716 8717 8718 104526 8719 104532 8720 8721 104534 g;g% 104540 012746 000410 003774 SCRWHT: MOV #ALL,=(SP) BR SCRCOM : GO TO COMMON SECTION 012746 000405 002200 SCRRED: MOV #L0'200,=(SP) ; GET RED ONTO STACK, 8724 104542 g;%g 104546 012746 000402 002100 SCRBLU: MOV #L0'100,=(SP) ; GET BLUE ONTO STACK, 872; 104550 012746 003400 SCRGRN: MOV #L0!1400,-(SP) ; GET FULL GREEN ONTO STACK, 8729 8730 8731 8732 8733 8734 8735 8736 8737 8738 8739 104554 104560 104564 104572 104576 104604 104610 004737 004737 012737 052637 012777 004737 000207 026650 SCRCOM: JSR JSR MOV PC,CLRRW PC.NTSC #APNT, 108 :CLEAR FOR READ/WRITE :SETUP COLOR TABLE (IF AVAILABLE) SINIT PIXEL DATA SELECTION MOV JSR RTS #10$,3DPC PC,WAITF PC *START THE DPU *WAIT FOR DONE *RETURN TO IDLE 104612 104614 104616 117774 170100 173000 : DISPLAYS FOR FILLING SCREEN WITH SOLID COLOR BR B8R 104612 BIS 076226 108: APNT'ALL SETMEM STOPN SCRCOM SCRCOM (SP)+.108 : GO TO COMMON : GO TO COMMON *INSERT THE COLOR ;SET THE MEMORY VSV11/VS1]1 == GRAPHIC SYS. DIAG MACRO M1113 28-0CT-81 11:23 wxx TEST 34 SELECTED DISPLAYS (STAND=-ALONE) 8741 8742 8743 8744 8745 8746 104620 8747 104624 8748 104630 8749 104634 8750 104642 8751 104650 8752 104656 8753 104664 8754 8755 8756 8757 8758 104666 8759 104670 8760 104672 8761 104674 8762 8763 104676 8764 104704 8765 104706 8766 104710 8767 104712 8768 104714 8769 104716 8770 104724 8771 104726 8772 104730 8773 104732 8774 104734 8775 104736 8776 10474 8777 10474 8778 104744 8779 104746 8780 104750 8781 104752 8782 104754 8783 8784 K_2 PAGE 124 SEQ 0231 "BLOOM'' TEST DISPLAY THIS DISPLAY ALTERNATELY DISPLAYS A FULL WHITE SCREEN AND A PERIMETER OUTLINE. THE DISPLAY CHANGES ONCE EVERY 2 SECONDS. 004737 004737 004737 013737 013737 052737 012777 000207 025402 102320 027066 003250 003250 020000 104666 LOOM: JSR PC,DPINIT 104730 104740 104740 076146 sINIT THE DPU :TURN BLINKING OFF sSET UP THE COLOR TABLE (IF AVAILABLE) sSET UP THE MAX Y VALUES, BASED ON FREQUENCY. ;START THE DISPLAY & LET IT RUN. RETURN TO THE IDLE LOOP * DISPLAY FILE: 108: 000000 000000 WRT!CHO WRT!CH1 WRT!CH2 WRT!CH3 :LOOP TO HERE: APNT'ALL,0,0 118: SETMEM SWTCH DNOP+120. 000000 SWTCH CLRMEM APNT!ALL,0,0 LVEC 000000 12%: 13%: 1'0 MAXY 6!HAXX 1'0 MXY !MAXY 6!HXY!HAXX SWTCH DNOP+120. 160000 SWTCH 104676 DJMP,11% TR ;SET ALL CHANNELS TO WRITE=ONLY, SWITCH-ENABLED. ;SET WHITE PIXEL DATA ;SET MEMORIES TO ALL WHITE sSWITCH TO READ=ONLY TO DISPLAY WHITE SCREEN ;SHOW IT FOR 2 SECONDS. ;SWITCH TO WRITE-ONLY MODE. :CLEAR MEMORIES. :START PERIMETER OUTLINE AT <0,0> ;ENTER LONG-VECTOR MODE. ;DRAW LEFT EDGE ... :... TO TOP OF VISIBLE AREA. :DRAW TOP EDGE s.s+ TO RIGHT SIDE. :DRAW RIGHT EDGE ... i... 10 BOTT :DRAW BOTTOM EDGE ... ;... BACK TO <0,0> sSWITCH TO READ=-ONLY TO DISPLAY PERIMETER ;SHOW IT FOR 2 SECONDS ;SWITCH BACK TO WRITE-ONLY. :LOOP BACK TO DO IT ALL OVER AGAIN. AR AR AR AR A AR AR AR AR AR R AR AR A AR . AR AR AR AR AR AR AR AR AR AR AR AR % END TEST 34 M e TR AR AR AR AR AR AR AR AR R R A AR AR AR AR AR AR AR AR AR RN R AR RS VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 28-0CT-81 ees TEST 34 SELECTED DI SPLAYS (STAND=-ALONE) ; L 2 PAGE 125 SEQ 0232 SOME MISCELLANEOUS DISPLAY SUBROUTINES. ; SUBROUTINE TO OUTLINE THE PERIMETER OF THE SCREEN. 104762 104770 104776 105004 105012 8797 105016 8798 105022 8799 105024 8800 105030 8801 105034 8802 105034 8803 8804 8805 8806 8807 105036 8808 105044 8809 105046 8810 105050 8811 105052 8812 105054 8813 105056 8814 105060 8815 105062 8816 105064 8817 105065 8818 8819 8820 105070 8821 105072 8822 105100 8823 105104 8824 105110 8825 105112 8826 105114 8827 105120 105126 8828 105132 8829 8830 8831 105134 8832 105142 8833 105146 8834 105152 8835 105156 8836 105160 8837 105162 8838 105164 8839 105170 8840 105174 013737 013737 052737 012777 004737 005737 001404 004737 005037 003250 003250 020000 105036 027454 105070 OUTLIN: MOV YMAX,11$ ; BIS MOV JSR TST #MXY, 128 #108,aDPC PC,WAITF OUTFLG ; START THE DPU. ; WAIT FOR DISPLAY STOP. ; MAKE IT DOTTED (3 DOTS PER SIDE)? 105072 105070 JSR CLR PC,0UTDOT OUTFLG sYES == GO DO IT :THEN CLEAR THE FLAG RTS PC MOV BEQ 18 000207 YMAX, 128 1$ SET Y COORDINATES AS PER HZ. :BR IF NO * DISPLAY CODE. 114000 113774 000000 000000 040000 001776 041776 000000 040000 021776 061776 000000 11%: 12%: 173000 00000 013737 013746 062716 006216 006216 012637 012777 004737 000207 APNT,0,0 LVEC'ALL 1'0 MAXY I 'MAXX 0 1'0 MXY !MAXY 63HXVEHAXX STOPN sROUTINE TO MAKE 3 DOTS IN EACH LINE OF THE PERIMETER: 003250 003250 000002 105302 105134 027454 116000 160001 160001 160001 116000 000000 105246 105246 105246 160001 160001 160001 105246 105246 105246 00000 001676 108: 105162 075704 OUTFLG: 0 ouTDOT: MOV MOV YMAX,=(SP) ADD #2,(SP) JSR PC.WAITF ASR ASR MOV MOV RTS 000000 sFLAG FOR ENABL ING YMAX,OUTDT1 ;s SET UP THE DISPLAY FILE (SP) (SP) (SP)+,0UTDY1 #OUTDTF ,aDPC PC : DISPLAY FI%E FOR OUTLINE DOTS: OUTDTF: APNT!L0,0,0 DJMS,OUTDFX X DJMS,OUTDF DJMS, OUTDF X APNT!LO 0 OUTDT1: MAXY60 DJMS, OUTDFX DJMS, OUTDFX DJMS, OUTDFX i <o WITH FREQ.- DEPENDENT Y DATA. ; START THE DPU. ; WAIT FOR DISPLAY STOP. BEGIN AT 0,0 WITH BLACK DO DOT AT 400,0 ...AND AT 1000,0 .. AND AT 1400.0. ; GETS YMAX * DO DOT AT 400, YMAX t ... AND AT 1000, YMAX - 8786 8787 8788 8789 8790 8791 8792 8793 8794 8795 8796 11:23 110000 165000 105276 105276 105276 001776 105276 105276 105276 000000 113774 040000 165000 DJMS, OUTDFY DJMS, OUTDFY DJMS, STOPN QUTDFX: 000000 000000 000000 000000 000000 SEQ 0233 J J OUTDFY LVEC MAXX+2/4=2,0 GO AGAIN TO 0,0 DO A DOT AT 0,YMAX+2/4 ..« AND AT (, 2*<YMAX+2/4> eee AND AT 0, 3+<YMAX+2/4> DO A DOT AT 0,YMAX+2/4 ... AND AT 0, 2+<YMAX+2/4> «.« AND AT 0, 3+<YMAX+2/4> SPACE OVER +400-2 MAKE 8 BLANK PIXELS GO TO BEYOND THE TARGET POINT MAKE 8 BLANK PIXELS GO BACK TO TARGET RETURN 18..0 [1!114.,0 DPOP OUTDFY: LVEC!LO RO 112000 000000 000360 000000 040000 000000 m 2 PAGE 125-1 APNT!L0,0,0 DJMS, OUTDFY DJMS, OUTDFY DJMS, OUTDFY APNT !LO,MAXX,0 000000 ouTDY1: MAXY60+2/4 020020 000040 0200<0 O O=O o 000000 11:23 S NN, 160007 160001 160001 116000 160001 160001 160001 173000 M6, 0.3. M6, EC!WHITE 000000 POP : GETS YMAX+2/4 ; BACK uP ; IAP 17 PIXELS : BACK UP ; WRITE A DOT : SUBROUTINE TO ENABLE BLINKING (ALL CHANS). 012777 004737 000207 105344 nNO ~Nw SN SRR o 116000 000376 060016 000022 040016 020020 ~ mmmmmmmmw Vi D —b d b b ) —2 — B I S [=leleleleleleleleBlelelelelelele] ~ W o == GRAPHIC SYS. DIAG MACRO M1113 28-0(CT-81 - wee TEST 34 SELECTED DISPLAYS (STAND-ALONE) — e d D e e —h D 2 =lelelelelelelele] VSV11/vS11 027454 075474 EBL INK: MOV JSR RTS #108,aDP( PC,WAITF PC s START THE DPU. ; WAIT FOR DISPLAY STOP. * DISPLAY CODE. 401 108: BL INK BLINK+100 BLINK+200 BLINK+300 STOPN g SUBROUTINE TO DISABLE BLINKING (ALL CHANS). 012777 004737 000207 10 5372 02 7454 075446 MOV #10%,30PC RTS PC JSR PC,WAITF ; START THE DPU. : WAIT FOR DISPLAY STOP, USV11/VS11 == GRAPHIC SYS. DI AG MACRO M1113 wee TEST 3¢ SELECTED DISPLAYS (STAND=ALONE) RB89¢4 11:23 : 8895 8896 8897 105372 8898 8899 8900 8901 2B8-0(CT-81 10537&¢ 105376 105400 105402 175400 175500 175600 175700 173000 : DISPLAY CODE. : i0s: NBL INK NBL INK+100 NBL INK +200 NBL INK+300 STOPN PAGE N_2 125-2 SEG 0234 VSV11/V§11 == GRAPHIC SYS. DIAG MACRO M1113 28-0(T-81 11;23 PAGE ?26 3 w++ TEST 35 SYSTEM CONFIGURATION TYPEOUT (STAND=-ALONE 8903 TR AR R AR AR AR SEQ 0235 R AR RN AR AR AR AN R R R R AR R R R R RR AR AR AR RO . % . e BEGIN TEST 35 % =« SYSTEM CONFIGURATION TYPEOUT (STAND=ALONE) AR AR AR AR R AR AR AR RRR RN RA AR AR ; (ITERATION COUNT = 1.) 030070 TST BEQ EXIT TESTK SCONTY TST s : STAND ALONE ENTRY? YES. 3 EXIT THIS TEST 333333333333333333333355>> : THIS "TEST'' COMPUTES THE VSV SYSTEM CONFIGURATICN AND TYPES IT ON ; THE TTY, AFTER WHICH IT WAITS FOR THE USER TO "'CONTROL=-C'' OV WO Y 002012 000001 SCONTY: MOV suB ASL SRR PRV SN S BIT BEQ b b YN ~ NN - S — purd (=] b b -00 SIS 88 oo AS WN SRR ~ 838 SSS888S 3 83 WwW==rorurorRNONOWN WWVININ = &~ 33 eS HNO CLR JSR MoV SUB ASL BIT BEQ JMP = o o puiy NNN —— d o ok D md cd mmd d D —d = (elelelelealealealealelele] -—O0 v 23 RERERRRRERGG 8940 10 JMP JSR o Y A A A A oo o b o e e e e e e I e A D e e I e A e Y e e d rdedeielelelolelelaleleleslalalalel ; BACK TO THE MONITOR (DS). 106414 030414 003256 18: 000010 28: 3s: 177776 H%"m : GET NUMBER OF LAST UNIT R1 : MAKE A WORD OFFSET 168 PC,TSTGO : GO TO END IF YES == WE FINISHED. #BIT14,ERTABL(R1) ; WAS LAST UNIT PREVIOUSLY DROPPED? . +6 : BR IF NOT. TESTK PC,DPINIT LSUNIT,R1 #1.R1 R1 #BIT14,ERTABL (R1) . +6 iss PC,CONFIG JSR PRINTF MOV #NULCR #MEMTAB R BMI BEQ CLR MOV CLR ASL 68 1; R cg..n« R ag MOV ASL ASL ASL ASL (R1)+,RS s NO. R R4 -2(R1) ,R2 MOV R3,RS ASL R R END OF TABLE? * YES. (AND R1 NOW PTS TO SYNC CHAN TABLE.) : NO., (BUT THERE'S NO MEMORY THERE EITHER.) * INIT BIT COUNTER. : INIT SHIFT COUNTER. * INIT NON=STDD FLAG. : POSITION THE MEMORY BITS. 3 INC gsg ASL INIT MEM TABLE PTR. : : : : R MOV : : GET A MEM TAB ENTRY. R? R R R ASL BP. : CLEAR TEST COUNTER SO WE CAN REENTER. : INITIALIZE THE DPU * SHIFT. GOT A ONE? : YES. COUNT IT. : 38"‘ ENOUGH SHIFTING? : YES. NOW CHECK IF ALL ONE BITS ARE = : = (IF NOT, WE HAVE A NON=-STANDARD = : = CONSECUTIVE, STARTING AT BIT 9 = i = MEMORY.S VSV11/VS11 << GRAPHIC SYS. DIAG MACRO M1113 28-0(CT-81 11 ;23 ve+ TEST 35 SYSTEM CONFIGURATION TYPEOUT (STAND=-ALONE 8952 105716 8953 105720 8954 105722 8955 105724 8956 105726 8957 105730 8958 105732 8959 1057;4 8960 105736 8961 105742 8962 105744 8963 105750 8964 105776 8965 106000 8966 106002 8967 106022 8968 8969 106024 8970 106026 8971 106030 8972 106034 8973 106036 8974 106040 8975 106044 8976 106046 8977 106072 8978 106076 8979 106100 8980 106120 8981 8982 106122 gggz 106142 8985 106144 8986 106150 8987 106152 8988 106156 8989 106160 8990 106164 8991 106166 8992 106170 8993 106172 8994 106174 8995 106176 8999 1 8997 1 8998 106204 8999 1 9000 10621 9001 10621 900§ 10621 9003 1 9005 } 900? 1 9007 1 9008 1 & 006302 006%02 006302 006302 100002 005305 001374 010102 162702 006202 016104 4$: 003260 5$: 177776 882 :nénuaoz.nz 6$: 177777 003272 (R1)+,R2 63 R2.#4-1 8$ R1,R3 GET SYNC CHAN TABLE ENTRY. END OF TABLE? NO. (BUT NO SYNC CCHAN THERE). HA;BE. IS IT EOT OR A SYNC CHAN? EOT. SYNC CHAN. GET ITS NUMBER IN R3. #SYCTAB+2,R3 ISCSYS.RS.RZ #BIT13,R2 78 #SCNINT 68 7$: 002512 #SCINT 000010 PRINT DATA FOR THIS SYNC CHAN. &NTERLACED? m. NEXT SYNC CHAN. 63 NEXT SYNC CHAN. MFGFLG MFG MODE? NO 158 MF GMO,R2 R3 003022 GET TABLE ENTRY FOR THIS MEM IN R4. 18 R3 020000 GET NUMBER OF THIS MEM IN R2. PRINT DATA FOR THIS MEM. NON=STANDARD? NO. NEXT MEM. YES. TELL THE WORLD!. NEXT MEM. #SCNSTD 000730 882 5% R5 48 R1,R2 4 000741 005737 001521 013702 00500 012704 005005 006302 00630 00630 006 006 006 10000 5203 5 13 1810 1 R R #SCMEM,R2,R4 ,R3 R5 1$ 000707 032702 001011 SEQ 0236 R R 005705 001720 012102 100376 020227 001443 010103 162703 006203 .3 PAGE 126-1 :g..k‘ GET MFG MASTER FOR MEM 0. INIT BIT COUNTER. T SHIFT COUNTER. T _NON=-STDD FLAG. ITION THE MEMORY BITS. 9%: 108: 177776 SHIFT. GOT A ONE? NO. YES. COUNT IT. ONE ENOUGH SHIFTING? YES. NOW CHECK IF ALL ONE BITS AR CONSECUTIVE, STARTING AT BIT 9 (IF NOT, WE HAVE A NON-STANDARD = 0 118: WO 333 NSO L N = NNOSNOONSNONNVOON WWW NV W =N -~ S LS USOS LS LS S TS NN SN $22 2222222 82888888888888 » o — D e d d e D D D d e e d d D D — D ) D ed ed D e - 100002 BPL 005305 DEC 00137 013704 003022 128: 005705 001410 013702 003024 032702 020000 001011 138: 000410 14%: 158: 168: 17$: 128 ; : #SCMMMO,R4,R3 ; PRINT DATA FOR THIS MEM, ST £Q RS 138 PRINTF PRINTF SEQ 0237 RS 118 MF GMO , R4 : : GET TABLE ENTRY FOR THIS MEM IN Ré. : NON=STANDARD? ; #SCNSTD + #BIT13,R2 + INTERLACED? v PRINTF MFGSO,R2 #SCMMSO0,R2 BNE 43 YES. TELL THE WORLD'. : GET MFG MASTER SYNC CHAN o m R2. * PRINT DATA FOR THIS SYNC C : YES. PRINTF #SCNINT 5s : PRINTF #SCINT 3 TST #SCOUT * NO == EXIT TO DO ANOTHER. : : WAIT FOR USER TO <*C>. BR 013701 002012 162701 000001 006301 005761 003302 001002 3 PAGE 126-2 BNE oV BIT MOV SUB ASL ST BNE EXIT PRINTF BREAK LSUNIT,R1 #1.R1 R1 ERTABL (R1) 168 : NO. : GET NUMBER OF UNITS ; MAKE A WORD OFFSET * DID LAST UNIT RUN? : BR IF YES 000776 045 045 116 101 BR 178 ; 045 SCMEM: .ASCIZ /xnun noav ID1%A, MEMTAB VAL: X06%A, 054 SCNSTD: .ASCIZ -STD)/ 045 101 054 045 045 045 045 045 116 101 116 116 116 045 SCSYC: .ASCIZ /xuiAsmc CHAN: Z01%A, SYCTAB VAL: 206/ 054 045 045 045 SCINT: .ASCIZ /u INTERLACED/ SCNINT: .ASCIZ NON=INTERLACED/ SCMMMO: .ASCIZ mimrc MASTER MEM 0, MEMTAB VAL Y06%A, SCMMSO: .ASCIZ /INIAMFG SYNC CHAN 0, SYCTABVAL: %06/ SCOUT: eeg'x‘zJININIA (<*C> TO GET BACK TO "oa>">w o - ~ o - v — e 3 D D d D e —D '&’ma S on— 28822222288 OVBNOVISWN=O VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 28-0CT-81 11:23 wex TEST SYSTEM CONF IGURATION TYPEOUT (STAND=-ALONE) 2XD1%A BITS/ XD1%A BITS/ END.TEST .tttltt'ttttt'ttttttt.'tQQ"Qttt.t.tlt'tt...'t..."Q.Q'.t.t"t.'.tt.".t :t e ] END TEST 35 :.tt'tfi.l.'...tt'..t.tt""'.t"Qt.".'.'.t.t..Q..'t."'t'..'.'.t'."." VSV11/vS11 == GRAPHIC SYS. DIAG MACRO M1113 28-0CT-81 11:23 PAGE %273 9047 3823 .SBTTL .SBTTL 9050 9051 ggg% 144 ; THIS TABLE HOLDS THE S }gRTlNG ADDRESS OF EACH TEST ; FOR THE SUPERVISOR'S DISPATCHER. 9054 ' SUPERVISORS DISPATCH TABLE SEQ 0238 VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 28-0CT-81 11:23 w«+ LUMINANCE (GREY-SCALE) AND COLOR DATA TABLES F.3 PAGE 128 SEQ@ 0239 +SBTTL 9059 : TABLE OF 256 (8 BITS) LUMINANCE VALUES TO PRODUCE 8 3825 9062 9063 107222 107222 9064 107232 9065 107242 9066 107252 9067 107262 9068 107272 9069 107302 9070 107312 9071 107322 9072 107332 9073 107342 9074 107352 9075 107362 000000 001400 0 003400 003001 004 001040 003003 002404 000400 000401 000002 002401 002020 005400 002000 003000 001066 007444 003014 002413 002540 0035 107472 9085 107502 000126 001072 003142 001600 002161 007066 9087 107522 002163 005161 002563 004220 004074 9086 107512 002036 107532 9089 107542 004 000132 9091 107562 003513 107552 9092 107572 9093 10760 003640 7 9094 107612 005476 9097 107642 002173 9095 107622 9096 107632 9098 107652 9099 107662 002160 2023, 000504 100 1044, 140, 2031 003567 002243 002477 142. 1600. 2161, 7066. 115;. 5477. ooosag 247 002213 1 3640. 415;. 3517, oog 003651 005176 671 9105 107742 00027 334 007615 001312 i Rl RO 9110 11001 333; 7 335;;5 132 177, 3132 223 2574 1. 2218, 65. 1741, 4612, g 63. 651, 31 g. 5213, 4235, L 233 5;; § ;s. 7615, 136 40 g » . 1312, g - 1154 gro; 364 4631 1934 272 4322 474;. 125 s;s < 33. : LEVEL 177 15 132 - 65 : LEVEL 137 240 1222 7354. 1237, 5;3 126 131 2172 649 9 2 g 3506 §162 3153, 4117, 1917. 38‘ 4; 200 4660, szg ssss. ; LEVEL 77 505 16 125 210 1230, 5554, 12 2411 1065 4075. 5241, : LEVEL 37 1061 300 2173. 000671 oog 3567, 2243. 9103 107722 005 9 260 5476, 267, 69 005213 516§. 2165, 46o§. 003153 004117 002555 1201. 2563, 4074, &07 001230 1gi. 2034, 4220, 000300 005241 120 1064, 2030, 15 160 2541, 3513. 001152 2024, 2413, 5540. 3504, 00407 884 12 003 6g 9107 107762 504, 000260 007234 00123 14 1063, 3500, 503, 513, 3146, 00 ;65 001741 9106 107752 2025 501 4goo. 132 000647 001617 462, 11 005162 002165 000267 000 9104 107732 10 2407, 000513 003146 004602 g 2405 gzo 2163, 1001 1042, 4440, 2033. 004660 ooosgo 002177 2040. 60 001601 126 1072, 9100 107672 9101 107702 9102 107712 2020, 5400, 5160. 220 002034 3001, 2 17 oo41s; 00351 005554 3004. 1066, 7444, 3014, 9080 107432 9081 107442 9082 107452 000017 2403, 000015 000160 000014 5020 1441 6400, 7440, 502 5407, 000140 7400, 4 1040, 000120 001064 030 000462 000011 2420 gooo 4000, 001063 003500 503 000010 002407 5000, 3oo§. 2401, 2400, 7 000100 001044 402 3400. 002024 001042 000, §ooo. 004440 002023 1 401, 3003, 2404. 002403 007440 502 005407 9083 107462 | 1000, 1400, 004000 9076 107372 9077 107402 9078 107412 9079 107422 LUMTBL: 0 400, 007400 000006 002040 000060 | | & 006400 | : A LINEAR 12 BIT GREY=SCALE. 005000 003002 003004 007 001000 %+ LUMINANCE (GREY=-SCALE) AND COLOR DATA TABLES | : LEVEL 237 & ;$§§ it R 911§ 110042 002334 ooz?r'? 004367 2334, 291: 4367, 814. : LEVEL 277 VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 28-0CT-81 11:23 **+ LUMINANCE (GREY-SCALE) AND COLOR DATA TABLES 9114 9115 9116 9117 9118 9119 9120 9121 9122 9123 9124 9125 3}59 110052 110062 110072 110102 110112 110122 110132 110142 110152 110162 110172 110202 110212 004751 005715 371 001374 007752 004755 007372 374 356 004776 007375 006776 007776 g}%g 006276 004752 007367 004372 001375 007753 003357 002776 005357 007756 006376 005777 006777 001372 006277 004753 005717 004373 005 g 006355 005774 004376 006757 007757 006376 007377 4751, 5715, 4;71. 1374, 7752, 4755, 7372, 5374, 6356, 4776, 7;75. 6776, 7776, 6276, 4752, 739 . & g. 1375, 7753, 3357, %776. 357, 7756, 6376, 5777, 6777, 137;. 6277, 4753, 5717, 4373, 5337, 2355. 774, 4379. 6757, 7757. 376, 377, 007400 BLU= 17+«BIT8 3}%% 000360 GRN= 17+BITé4 NTSC8: 0 BLU RED RED+BLU GRN GRN+BLU GRN+RED GRN+RED+BLU 9131 000017 110222 110224 110226 110230 110232 110234 110236 110240 000000 007400 000017 007417 000360 007760 000377 007777 g}zz : LEVEL 337 ; LEVEL 377 RED= 17+BIT0 ; BLACK (NO COLOR AT ALL). ; MAGENTA : CYAN : YELLOW : WHITE s A 16 LEVEL VARIATION OF THE ABOVE TO EXPERIMENT WITH. 9145 110242 000000 9147 110246 9148 110250 000000 000017 9146 110244 9149 110252 9150 9151 9152 9153 9154 2717 1373 2337 4754 1757 4374 7754 7337 7374 4377 2777 6377 7777 SEQ 0240 : THE BASIC (NTSC) COLORS, PLUS BLACK AND WHITE. 9130 9134 9135 9136 9137 9138 9139 9140 8}2} 6.3 PAGE 128-1 000043 000000 110254 110256 110260 110262 110264 000117 000000 000377 000000 000360 9156 110270 9157 110272 9158 110274 007400 9160 110300 9155 110266 9159 110276 EXPRM: 0 43 0 RED 0 ; BROWN (3RD LEVEL YELLOW). : RED 117 0 RED+GRN 0 GRN ; ORANGE (RED + HI GREEN) ; BLUE 00741 BLU 0 RED+BLU : VIOLET (MAGENTA) 00777 BLU+RED+GRN ; WHITE. 000000 0 0 ; YELLOW : GREEN w++ ASCII CHARACTER ADDRESS TABLE AND SUBPIX 28-0CT-81 11:23 H PAGE 129 3 g}gg LSBTTL 9164 9165 sTHE FOLLOWING 128. WORDS CONTAIN THE CHARACTER SUBPIX sSTARTING ADDRESSES. 0-37 AND 140-=177 ARE NULL FOR NOW. g}gg 3192 110302 9175 110702 110402 9176 9177 110326 9178 9179 110334 g}g? 110326 110704 110334 110714 110402 9182 110402 9183 110404 9185 9186 9187 9188 9189 9190 9191 9192 9193 91946 9195 9196 9197 9198 9199 9200 9201 9202 9206 9207 =+« ASCII CHARACTER ADDRESS TABLE AND SUBPIX 3 (EXCEPT FOR 12 AND 15) ACAT: . «NULL :0=37 ARE NULL (NLISTED). $SVP(C=, sSAVE PC, BACK UP AND... SACAT+<12%2> sV SACAT+<15+2> ..CR .=$SVPC s.+..AND CARRIAGE RETURN ADDRESSES. sRESTORE PC 110730 110736 ss PR . EXC :SPACE JEXCLAM 110410 110412 110414 110416 110420 110422 110426 110426 110430 110432 110434 110436 110440 110442 110444 110446 110450 110452 110772 111020 111052 111112 111152 111164 111202 111220 111242 111260 111272 111304 111314 111330 111362 111402 111434 111474 « «NUM «.DOL ..PCT « «AND ..QUO1 ..LPAR . .RPAR . .AST ..PLS .+.CMA . «MNS ..DOT ««SLSH sll -~ S» .. b sNUMBER SIGN sDOLLAR sPER CENT s AMPERSAND sSINGLE QUOTE :LFT PAREN :RT PAREN sASTERISK sPLUS : COMMA sMINUS :PERIOD sSLASH 110462 110464 111616 111666 9184 110406 9203 110454 9204 110456 9205 110460 9208 110466 9209 110470 9210 110472 9211 110474 9212 110476 9213 110500 9214 110502 9215 110504 921 110508 9217 110510 9218 110512 9219 110514 9220 110516 9221 110550 9222 110522 9223 110524 110754 111514 111544 111576 111716 111734 111752 111766 112004 112016 112044 112100 112124 112160 11 112230 11 112254 11 73 11231 SEQ 0241 ..0QUO0 b s 9 ..88 .99 ..COLN . SEM] « « LANG ..EQ « - RANG ..QUES . .ATS e skl e 5o sV «.066 . oHH sadd s ««+INSERT LINE FEED... sDOUBLE QUOTE. s COLON sSEMI COLON :LFT ANGLE ;EQUALS :RT ANGLE JQUESTION ;AT SIGN —— — - VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 ONT—-IOMNOYTNMVOIOTOMNIOONMOTINMTINNIOOM0N0OONITN—STNT OTOVNNFo0 N ONTVONOVONTOVONTONVO UOrT—Nd=lI=SlNeMelNoeOloeOlNeoOlXeolNeoleNOlNeNINleUoMloMeloroV—MloaOAXlooOXleolNoNl«eX«lNeLl=Te« =0o 28-0CT-81 11:23 ATLE MOR MONW w«+ ASCII CHARACTER ADDRESS TABLE AND SUBPIX MDDXwL-<<2xOo - VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 3 [ PAGE 129-1 SEQ 0242 [— 140-177 ARE NULL (NLISTED). VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 wx+ ASCII CHARACTER ADDRESS TABLE AND SUBPIX 28-0CT-81 11:23 J_ PAGE 130 3 SEQ 0243 THESE ARE THE CHAR gUBP;X ROUTINES. EACH IS BUILT ON A 5 X DOT MATRIX (ALA VTO0S5). <CR> WILL INVOKE A ''STOP''. CPU MUST CALCULATE THE START CO-ORDS FOR NEXT LINE, STUFF IN '..CRX AND ..CRX+2'' AND RESUME, TO XCT PSUEDO=CRLF. THE FOLLOWING MACRO (SXY4) APPLIE S A 4X SCALE FACTOR AT ASSEMBLY TIME TO YIELD A CHAR SIZE 85730 X 40 (OCTAL) WHICH PRODUCES A MEDIUM SIZE CHAR F .MACRO SXY .ENDM 165000 .«NULL: DPOP 164000 104000 165000 sokhF :DPOP TO NULL THE <CRLF>. *WAIT FOR NEW X AND Y... .« CRX: DNOP STOPN APNT .WORD ..SPC: SVEC o oo e e B ..EXC: ..0QUO: « «NUM: ..DOL: o oPCT: ««AND: ..QUO1: ..LPAR: « RPAR: ..AST: ..PLS: «.CMA: e mad e R . «MNS: e SS8S8388S8SSVSISSISISTL v d D D i B ek D e o d e ) el d ad e ol ceed md e ;ALL UNDEFINED CHARS EXIT HERE. ;:DPOP TO NULL THE <LF>. ..DOT: R o R A R A R AR AR AR AR AR AR AR AR AR oo o S o 338 ~ NONONOONO NNV = b b b 2 2 OO0 OO N ~ S &~ —_—— W SXY4 DNOP SVEC DPOP 164000 000060 SXY4 A.B C A,Brb, (v ««SLSH: DPOP .. *...0K, EXECUTE THE <CRLF> 8OE8OE8O8EO2E8O3E8O3E8O»e2E3O2E3O3EO2E3O2E3W2Ew3vOE“3wOEm2WE3.W2Em3O2E"3w2E—3W2EO3Ew3E2W3E.2W2E“3E2W3G2WE2W.E3W2.E ¥W-OwawaO <OXWJUVO00ONVONTMN—O oW.NL—aav>el=nyaB=alNeoSa>voe=lPana=vlNaeEa>DAn=elreaao=elPRw>aaPeOnel0vaam€0lL>TI=RovaSTPA0>FcN€E0ISvYOea0>-BPP0bIvaLfNL0—>Ao=T0vAPaOR0>bwTa0ENTPA0n>IobT0abN0gt>vbn0ePa0v(>=.S0gnbv0R>a.-O0vNnRN0>oea0NvPA0>-.NPev0aRe>0Ano.oe0Nva>0e.oAe0vNAe>T0aOve0Oa>O0vRSnToae0O=>a0vM0aAT>o00vnN0Pa>=v0N.. ko Tn00vRIe0auN>=o0nA3Me0vOaPIoe0o>evTTAa0=n~v>=eTa=Nevn>A=eTa.veZ>ewaTk.Seom>wO VSV11/VS11 == GRAPHIC SYS. DIAG HACRO M1113 28-0CT-81 11:23 PAGE 130-1 K_3 *x+ ASCII CHARACTER ADDRESS TABLE AND SUBPIX 112160 [=) SEQ 0244 ov ;FINISH USING *'C*", VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 wx+ ASCII CHARACTER ADDRESS TABLE AND SUBPIX 1 1 1 ——- 1 D D d D D D D D d D D D D D D D D D D d D 1 1 1 1 1 1 1 1 1 1 D 9754 1 d ek e 1 1 1 1 1 1 1 1 1 1 1 d 1 e 1 ?Obl‘uf\)—‘—‘\lflbbl\) 112404 112406 112422 112424 WIWNMNNNNNININN N NN NNV oo~ oAV SN S N OfNVONNINONONS S OSNY 9685 9686 9692 9693 165000 28-0CT-81 11:23 «MM: «NN: ..00: «.PP: 112444 112474 ..00: ..RR: DPOP SVEC DPOP SVEC DPOP SVEC DPOP SVEC DPOP SVEC WORD SVEC .WORD . 381 SVEC DPOP oo TT2 SVEC DPOP «.UuU: SVEC DPOP o VV: SVEC DPOP oWl SVEC DPOP SVEC . XX: DPOP s ¥V2 SVEC DPOP oosll: SVEC DPOP ..LBRK: SVEC «.BSLH: DPOP SVEC L 3 PAGE 130-2 SEQ 0245 DJMP,..00 ;FINISH USING ‘0. DJMP,..PP ;FINISH USING 'P'". VSV11/vS11 == GRAPHIC SYS. DIAG MACRO H1113 «ex ASCII CHARACTER ADDRESS TABLE AND SUBPI 9822 9823 9829 9830 9835 9836 9839 113030 113032 113046 113050 113062 113064 113072 165000 104000 165000 104000 165000 104000 165000 28-0CT-81 11:23 DPOP ..RBRK: SVEC DPOP ..CRT: SVEC DPOP ..USC: SVEC DPOP PAGE 131 3 SEQ 0246 VSV11/vS11 == GRAPHIC SYS. DIAG MACRO M1113 *v+ DEVELOPMENT VERSIONS CONTROL 28-0CT-81 9841 LSBTTL 9844 9845 ; : gg:g 9848 113074 9849 113076 9850 9851 9852 11:23 N3 PAGE 132 *=« DEVELOPMENT VERSIONS CONTROL THE FOLLOWING NUMBERS GET CHANGED AT EACH NEW ASSEMBLY, THEREFORE: IF THESE NUMBERS DON'T MATCH WHAT'S IN CORE (OCTALLY) THEN THIS : LISTING DOESN'T MATCH THE LOADED PROGRAM! 021557 002165 9853 DDMMY: HHMM: 09071, 1141, LSBTTL e« PATCH AREA 9854 9855 9856 LSBTTL : 9859 ; 9862 9863 113100 9864 PATCH: .BLKW 16. 2 BLKB <<, +400>84C377>~, gggg : FINALLY A GENEROUS PATCH AREA. ggg? : DESCRIBED IN '‘SUPPRG.MEM'* (FOR REV (). 9865 9866 9868 9870 113404 AND AN ADJUSTMENT TO ACCOUNT FOR THE ‘‘LASIAD BIT7'' HWACK 113400 3 LSLAST:: L .=, 137741 SEQ 0247 VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 28-0CT-81 11:23 PAGE ?33 4 DEFAULT HARDWARE P-TABLE .SBTTL SEQ 0248 DEFAULT HARDWARE P=-TABLE 14t 79 : THE DEFAULT HARDWARE P-TABLE CONTAINS DEFAULT VALUES OF : THE TEST=DEVICE PARAMETERS. THE STRUCTURE OF THIS TABLE : IS IDENTICAL TO THE STRUCTURE OF THE RUN=TIME P-TABLE. .MORD 172000 000320 .WORD 320 ( IF_LUT INSTALLED ) : 1ST (OF &) VECTOR(S). 9887 113416 9888 113420 9889 9892 113426 989 9g 113430 000000 000000 .WORD WORD LWORD PRIO4 O O s INTERRUPT PRIORITY. s LUT AVAILABLE (IF NONZERO) s SYNC FREOUENCV:Ng = ggfi% 9896 113432 9897 113434 9838 113436 113410 172000 9884 113412 %683 9 ; ggg; 113414 000200 2 9903 113440 1ST (OF ;) REGISTER(S). H .‘ (S IF LUT INSTALLED ). = 172010 WORD 172010 ; 1ST (OF &) REGISTER(S). 000340 .WORD 340 : 1ST (OF 4) VECTOR(S). 000200 000000 000000 .WORD .gg:g PRIO4 8 000001 JSBTTL PEND: : ( 7 IF LUT INSTALLED H ( 5 IF LUT INSTALLED ; INTERRUPT PRIORITY. s LUT AVAILABLE (IF NONZERO) SYNC FREQUENCY: 0 = gOHZ NZ = 50WZ wwwnex TH =« TH = TH = TH = THAT'S ALL FOLKS ! .END wewnen DRSmmmmm2388yw1z=0w«mmunrmuw 00O.0,0000).s[0Tsa0"0sG00sG00-sG0stosGfofosGelseGletseGlelseGlelseGlfvesloGegclesG0clOre—ls‘rel—Gerl—Ge—OilN~eGglo‘—TTlaMTleF‘lNTeIlO6eNOlovl6I~eNlveOl=ol0OrNe—lWrOo—\l2MVMa)LlU0OOOOeV—lNMLecOlMLOTmMYfneMNlMee=Nlie=ONnle=NOlh &vwna"mnw-&m83nu"5*»mm5m2mm8H5wa2Wmn5mm8sR,smnwrmwQwNrmxemnmpum”nmnmMmvnUnmNRmmANmMmmRmRnSwTnRmHmuSWwR"TmmSRlwRmmTeE.wARmEnhTmmEmaTuwLEWmnCtuwRmnBEuwngmEuwwm“In§.G“iw”.Lu.RomlkwR[m]T]mwmmauwauunSmmNmm 33 MW~ mSEmS8HnCSoEEESS mmmmr2mwu‘»mw5»m3wummwmwomm77om‘1576wmo37o2m6mS7mm0m§mw72R52o8A8m5R‘2mS57820m528‘3m17°830m2S73“S LCLLeLULLULULULTNLULRVLRSNVUIVUUgTLUISLzSVULUSLULgURLULRsULVSL“DLVRLUTeLLaLwM3wLOo=.r—oAvTOrOachOr3xTr—wNSoSn=ytSMSE[y ‘35“ OOOoONININIM b-=.he TLVLOLUL L LNL~F~LFMINOI ~FOWvLOLO5000000rL—O\LML=LLvULNOLLLSO5Y w c T S w E es 3-YN o= N RBB E "lL 4 SYMBOL TABLE VSV11/vS11 == GRAPHIC SYS. DIAG MACRO M1113 28-0CT-81 11:23 PAGE $33-‘l SEQ 0249 SMT5 82‘20‘06’“0.‘’2o1s‘ VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 SYMBOL TABLE DJS 026326 DOTS 1025 ONOP = 1 G ECRSVY ECMPESL 052452 0030 020732 G ECRSY ECSEQY 524 FERCM DPC DPCER ECRSV 0524 S gO 05251 FILL FILL DPDSE DPINIT 007611 025402 DPCERA 01264 ECSEQ FCOORD 016377 FHST 85 S; ECSEQ ECSEQ4 = ECSEQS 052654 ECSEO? 05 976 ECSEQ 85 is ECSQ7B8 0527 ECSTO 0527564 EF .CON= gg G FNOCSR FNOINT FORCER FORCET FORCSI= FREE DRR EF .PWR= 000034 FSYCHA DRDYTO= 150003 G 003034 DSBINT DSCSE DSDPE 026176 010111 007651 DSDYE DSFLE 007751 010051 DSMRE 010151 DSDXE DSMPE DSPCE 007711 DSRERA 01 2703 DSTP DSXPE DSXRE EMK EN ENECHK= glz- G 022 020764 G 02624 010311 0032 FRESIZ FUM] FUSI FUSWI FSAU = FSAUTO= 4 026114 F$SBGN = 1 FSCLEA= ERCNAM ERCOD 689‘ 024074 G F SHARD= FSHW = ERCTBL 4;66 FSIMNP = ERCODS ERR =1 FSDU 4041 74666 3516 G 00 g 40 42 51 FUTO = FSEND = G 134 G 1 7 31 ;0 7 8 1 SEQ 0250 GHYTST 4 ;gg 031476 ERCM 14 7 %8 01650 ENVIRN ERICHK 010551 G 030151 = ENAINT 010011 00 G EF .RES= 000037 G EF.STA= 06 EGGBL = 00 G EMAXDU 010211 DSR DSRCHK DSRER G EF .NEW= 000035 9 00 FLGER FLGERA = 165000 G 026074 003050 G DPSINI 025540 002502 G DPUSAV 0%6 DPRESE 26038 FLGCHK 52576 85 630 D_ 4 PAGE 133-2 28-0CT-81 11:23 G G 6 GHYTYP GOLD GRN GRNC 066450 = = = GRN1 8 = GRNZ2 GRN3 = = GXlI = GRX GRY GTCURS GTJSSW= GUNID GX ? GY GYl] = GSCNTO= 0O GSDELM= G$DISP= GSEXCP= GSHILI= GSLOLI= GSNO = GSOFFS= 3§ 8 G HUE 3222 6 HY 75306 HX 6 010 6 HZ | 000 400 G 6 IBE =01 1CBAE 74 400 4 G TAUX IDLEX G IHBASE TIRCHK 6 GSRADA= 1IRCNF GSRADD= ILDR G IMCERR MCHK G FSMOD = GSRADB= T1IRCNC T1IRNFC RAFYS HAF Y HaTIH HBAER HBAERA IMCHKR IMCRAM IMCRCY IMCTRY MC.CH DYRER EXSM4 = DYR DYRERA EBLINK ECE ECIS ECMPE ECMPE ECMPES 1050 58 G 013014 10 gg 135 5241 524 52424 0524 6 4 EXSM2 = 50 EXTA EXTEND Elf EX s = EY ESEND = ESLOAD= 1 1 HAFX HAFY = = GDDAT GERRMA GETCUR GETJSE GHI INH= HBCHK HCOPY = HCPY = HGEN HHMM MC.IR MC . ME IMC.RA IMC.SR INC.TA 6 GHXF HPM1 MDERR 6 GHXTYP GHXYX $ G G 6 GHX = GHXT GHY GHYF GHYT HOE = m GHXTST = G G GSPRMA= GSPRMD= F$SUB = F$SW = FSTEST= GCOFF = GDBAD 1 D0 IHBAE ESF 61 ESUM 13 EVL = G X 1 EXPGOT 017051 1? G = IFAULT DUAD12 017105 DUFLG 0032;6 puMMy 0030 g DX = ()OOOg6 G DXR 003036 G EXPGT2 EXPR EXPRC2 EXPREC ExPrm G IER ILMR ILSR IMAIN IMCBDA DXRER 821 16 6 DXRERA 012751 DXYME 100140 byl = 000002 G DYNI = 002824 G .. 0C .. 00712 G GSPRML = FS$SOFT= FSSRY = 101342 G GSRADL = GSRADO= GSXFER= GSYES = S 6 = 00C IDXR IDYR FSPROT= FSPWR = FSRPT = FSSEG = ERTABE ERTABL G Iou ERRCHK 0 4 ERRCKT1 0235 ERRK 1 ERRVEC= G 035704 021454 6 160 G ] 312 6 3152 6 7153 101 1014 181‘ 4 IDPC IDPCE IDSR IDSRE 3246 = I1CBASE ICSR ICSRE IDLE IDLEA IDLEB DTAB 101 DTABE 10127 DTHIL = 00001 DTO 052;10 DUADR WS sgw IFLAGS GSOFSI= FSINIT= FSMSG = 89184 HPM& HPMS HST HSX HSY IMC.Y MD 6 G G b 6 MDIX = MD ls MDIX MREAD= 000 6 8‘61l¢l°¢lcl¢l¢lcl¢l¢l¢l¢—le====wO~N—OoOOON~FT 2~O8o8]&8888&:888:04‘.na1n:kQwgWkvkxHO‘@HeaUedWONW3O©37&6U"OO n)IVnv11clIclIqlIcloIlcIlqIlIcIlVcIlV.IlViIlVcIlVoRlVcIlVcRlVcBlVSLebOveV8BLIeoLeSenee.eNle0eOeomeeomeovoeoceuleaoemoemoQeonOeoOaon.lucwelmoemoeeon0oemOomo %’3G G G G G G2%%‘G “GG‘G G O O 0o VOV VLY O OVVOKVLVLUxVxLm-OlpVp G G G G G G G G G G G G G G G G G G G G G G G G G G G dw-cldqluO!dO=0lNcOeld0a.Mdl011ad0W11ad‘OO1d0d1'.0u1d011Od.01Oa10dO10N'd13.=0_5dlM1n0ldW0lOcOld0clCcdlO.—ld0c=lcOdl0clOcd0\5lOc6ldcO7l0cOdNl1clO5cdOl‘cOl6—dcO7NlOc0OdlCNqO1lOUMOc5dOlON‘“IOcNi5Olo=dcO6lOq7OldOcClOOqOdlO0Nc0Ol 'loloicl“ee]ggSSSSDSSSS.SsgSg5t5tUDIA)V)&U)LV)V)W)AVWL)LUAVlIVI1V!IN1VID1-N22-aa_u‘v5uu‘u5n;vy33ob Lo[SYyyVpBouTOMy)LBnUO—“BBL2Oi—LemOll“W.q-ylsa“lv—lecdlm”lI8lF0m8lE708xR80l7.E"0l87LB&>xl3%>>[87-OS3¢l—3H¢NMJLSmtuneMRnm>nSNR0AGsInNtawNs*DMTP&SsD&EL)&s>N8A=FgT"NLB0b"“Eb2tN”bA>“1P=TO"PtPN8nDRebN“S2T“1“T-BI8“lVX‘“Bs“V1aoPTw*0aRPne0SvYB e8AISR8N58¢ (oOV4LV] D~ededddd D&SB OAWDABB A B D @B O B SYMBOL TABLE VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 28-0CT-81 11:23 PAGE 733°3 — ozmo’A\NOaMOTN?NM — SEQ 0251 a 5468 scout SCPRE SCRBLU SCRCOM SCRGRN SCRRED SCRWHT SCS SCSR SCSYC SDASK SDLIST DO SDPC SDSR SDX SDXR sbY SDYR 107 017326 104542 104554 104550 104534 1045;6 0176 s 00320 6 106571 102215 10147 102231 003164 00316 731 ;17 27 317 oo 10552 o SCONTY OO (] & 106620 1025 106704 106772 O 073662 SCNINT SCNSTD SC SCMMSO OOOOOMOOMOMOe MPTNEW 003212 6 003;14 G 017355 109 0 017534 017416 109464 017461 oo ? 6 SCBASE SCFLG SCIDE SCINT SCM SCME SCMEM SCMFG OO0 OPCF o 11451 076 [ TaT T 16;;; NOSWPI 014712 NOTOT 7336 SI 88‘69“ NSINIT NTO NTSC 7 NTSC8 110 NUL 1654 NULCR 195‘ NXM b1 NXME = G NXR 3 NXRERR i 6 NXRX “ NXTU 0DDSKP= G PDF PDI PDM 6 9 6 SRR RNgfl NOSW! MMMAC 044744 MMMACA 045016 MMMACE 012511 MPMAE 021650 G MMMNXE 012600 MMVEC = 000;50 MNOK T 5316 MPAT2 74306 MPCBAS 074332 MPCSE 011411 MPDSE 011831 MPE = 114003 6 MPFLE 011351 MPLEN = 000011 MPMER 2;55; G MPMERA 01327 PDBITS w ~ MPMRE ; 2 G 01773 016;27 6 6 & 022466 004321 o~ MMCHK G 176076 176050 00001 Soogsg 0 023144 0 4 026756 7&3 77 8 325 5332 0;‘34 1436 ggz 3 e 002515 G 302 003024 NODEV NOINIT NOINTR o NOITS NOMAN NOMAT 015733 NLRI NLWI NOCMI NOCSR G G G G G G G 6 oo MFGFLG MF MFGSO MEREG NBLINK= NEWPAS 6 76424 0765 8 0765 7654 7254 6552 95596 176074 6 AT 1) MRPCE MRRER MRRERA MRXPE MRXRE MSX = MSY = Mxy = M128 = 26 = M32 = M64 = OUTFLG OUTLIN 0SAPTS= 0SAU = 0$BGNR= 0$BGNS= osbU = OSERRT= OSGNSW= OSPOIN= O$SETU= PASRPT PATCH PATS PATTST PATT] PAUSE1 PAUS. 5 PCSCHK PCSER PCSERA PCSERR PCSX 0;33;4 032730 00 ng G 89 0 8 G 646 076336 076424 8763 6 (Al a1 100442 100470 016017 015663 015505 015611 016064 015547 001776 G 001776 G 001776 G 001676 G MCHAN 077270 MOVO = 000000 G MDV1 = 000001 G MDVZ2 = 000002 G MDV3 = 000003 G MEMFLG 003252 G MEMTAB 003256 G MENDPC 016141 010711 011011 01111 010751 0215;0 013230 011211 011151 020000 000100 020000 000002 000003 000000 000001 175400 032174 306 00636; 01526 024003 0032;2 4 OPTI OQUTDFX OUTDFY ouTDOT OUTDTF ouTDT1 ouTDY1 b8 MRDSE MRFLE 074334 074356 074344 074352 011551 01151 011051 SEQ@ 0252 Ny MARK MATCH MATFLE MATIRE MATPCS MATPOS MATUI MATXYE MAXX = MAXY = MAXY50= MAXY60= MPT.ST MPT.WB MPT.WE MPT.WY MPXPE MPXRE MRCSE F_ 4 PAGE 133-4 B L D T S S Y QON =NINININ) NN = OO0V OVO0VVO0OO0O0O0OOO WNWNND W= NI N NVNWW S WO OOO0 OO0 M Nnnununununa o000 O WA SO OO 0000 OO NOW— —ORNG NN VIO =0 VO &COO0OCOOOOORNORT WSO oo~ NNVON M NVOOOOO = =0 === —=ONONNSNONON S L10123 104760 L10124 107110 L10125 113410 L10126 113426 L10127 113422 L101371 113440 L255 = 003774 N = 020000 G MAGEN = 002300 MAPMEM 070326 e SYMBOL TABLE 28-0(T-81 11:23 888°°°“°°°°°°fl°° uog dd§ S VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 VSV11/VS11 == GRAPHIC SYS. DIAG MACRO M1113 28-0CT-81 11:23 PAGE ?33-5 4 SYMBOL TABLE SHADLY 005350 ¢ SHAD16 027172 SHBASE SHRTX SIFLAG 003206 G 005250 023064 SIMSG 023012 SINIT = 100000 G SINIT1 035114 SIOFF = 171000 G SKPO SKP1 = 000400 = 000401 308 = o008 SKP3 = 00040 SMAIN 003204 G SOCT1 075026 v SUE = 000010 ¢ SwIByY 01?%3? SWNOCU 01 353 SWNOHL o;o 05 . SWTCH = 1 554 G SYCFLG °°§27o e SYCTAB_ 003270 6 SYNC = 164001 § SINCTO= 140008 G SSLSYA= 010000 oy 1858 TERP1 TENP1 TERPS TESTK 003 ?5 6 003232 6 Q03¢s8 030070 AU = ii&t&:= 8}§§g5 010047 ULRI UAM TSSDAT= §1 131 TSSDU = T$SHAR= T$SHW = SEQ 0253 = UMI 18050 010001 010000 us100 uro VIOLET= VISXIT 7 Sg 390 003300 6 076356 VIS vIS3 T$$5UB= 010116 TS8S = 010009 viss VISSA VRLE VRLE1 076016 076024 01000 XPXRE 012451 §2§§ § XRF g1 §117$1 L 003; 6 037 2 4;5 TSSRRT= 01003 T88SEG= 010000 T$$SO0F= 6 00‘5‘5 UNITN UsI uswi T$S$INI= 01 043 T3shses 01013 T$SPC = 000002 188PRO= 01006 0064 ;i 000200 XRMPE 012051 XRMRE XRPCE XRRER XRRERA NRXPE e Xxeom 15011 011651 021904 6 0713336 013111 el 005338 6 74714 075110 XX.ENT= 025570 XEXT= 036072 Q73330 075746 XYX 3657 XEALWA= 000000 vise 073320 VIS§ 076076 XYERR 020126 G SOCT2 SPARTS SPCSAV 075040 074434 003176 G 002630 n 110 11 034054 g 044160 G SPM2 TIDFLG 002506 TINERR_ 022773 TNAM - 030068 TNUM 04465 G VRLF2 n§ 076026 046040 6 XBINC VSHNG 0775 8 047422 WAITF X2INCB 027454 05779 SPM1 002600 SPM4 002660 SPMS 002710 SPM6 SPM7 002740 2770 SR1 SR2 = 177574 = 177576 RS = 172816 SSDSR 003174 G SSF_ 004503 SSTST 042210 312 SSTS STOP 04sae = 042550 175200 G STOPI = 173400 G STOPN = 173000 6 STPTST 046110 STy 0dags © STPa_ 0uered STP2 046746 SR, B3eiss Akl SVCINS= 17 = SVCTST= 177777 SV SVEC o SVIST 057010 = 104000 6 G 056 TNAM Torv . TOTVST TSTEND 1ST60 03006% 03 056 G 003056 047050 TSSTES= 010124 n 045370 G é 046770 6 S G 039902 027702 116 117 TSERRN= 006326 TSER 052776 6 053330 6 119 035156 6 34274 G 180 03adle & RN= TSEXCP= 006 000000 TSFLAG= TS$FREE= 11 000040 ;;mu; ooom? TSLAST= 000001 TSLOLI= 000000 TSLSYM= TSLTNO= TSNEST= 1 TINSO = 01 3 0 0 01 TSNS2 = Lo ol s TSPTAV= 00000 TSAVL= T$SEGL= 177777 TSSEKO= 010000 T 159 38316 ¢ . §29016 G T g 0064 G 158 §:sg§2 ; ! 136 6 1 9 I 7564 4 I g,z ! 130 1se-) 1317 13¢ T T deoe G 4 G 73 18044 ¢ 73150 ¢ 803423 074364 Qnusse 6 10113 6 140000 G WRTCSR= W}%gg: WRT .D WRT .X = 0 0 13 XACA XWAE. 6 000 g 074 96 074 074 6 1y 03778 4, g« o GEBC XPME RA oW 060002 N v 320938 TBL 102516 ;607& 102536 ‘T ‘NT - » = ?°g? 110 +oASl 111529 11513¢ +-BSLH 113014 B8 04 5‘§ 021763 6 012411 G 003350 6 Y D XPMPE I 140 6 566 0056 NP t o &a%ass 2 264 176036 X XINEA XINCB XWAC 067124 AK 176034 WRTCPY= 140000 6 WRT1 XA " = 042000 6 = 021336 1 g G YA 0577 YOO 06 YELLOW= 003600 G WRTCPX= WRT.Y X2INCA = 000010 6 = 160000 G XPRER T ! 025742 Of ;?f TSTEMP= mE m R T$TSTS= 000001 WSS~ WRT 96 wost 15 ¢ VSHUNG WE wECC XSOFFS= 000 400 e So% eds 0 2910 ¢ I$1AGLe 1r70e7 T$TAGN= VSHGE XSFALS= 000040 ! omEn G e 1 260 .ol 11171 ERT DD ..poL .0 0 oo DH 11508 11 111 1 G VSV11/V§1; == GRAPHIC SYS. DIAG MACRO M1113 SYMBOL LE ..EXC ««FF .66 «+HH 11 N « KK ..LANG «.LBRK ..t[ 110736 112236 112254 112272 112312 112334 112354 111752 112776 }}g;gg 113440 000000 ERRORS DETECTED: ..LPAR «.MM «.MNS ««NN ..NULL ..NUM ..00 «.PCT ..PLS ..PP . ABS. 0 111164 112493 1112 112424 110702 110772 112444 111052 111242 112474 28-0CT-81 11:23 ..00 ..QUES ..QUO_ ..QUOT « «RANG ..RBRK « «RPAR .+RR «.SEMI «.SLSH H__&4 PAGE 133-6 112516 112016 110754 111152 115004 113032 111205 11253 111734 111314 000 0 VIRTUAL MEMORY USED: 34896 WORDS ( 137 PAGES) DYNAMIC MEMORY: 20346 WORDS ( 78 PAGES) ELAPSED TIME: 00:36:46 CVVSA.BIN,CVVSA.LST/=SP=SV(C33.MLB/ML,CVVSABO.MAC/EN:AMA:ABS/DS : GBL SEQ 0254 SPC «e38 oo IT «.USC W Vv . W « XX oYY 22 110730 112546 1 804 113064 112622 115666 112664 1157 4 112730 112754 ..00 .1 ..ig oo . b «e35 .. 66 A7 .88 .99 111330 111365 11149 111434 111474 111514 111544 111576 111616 111666
Home
Privacy and Data
Site structure and layout ©2025 Majenko Technologies