1 /******PROGRAM PDIS.PAL, 1969****** /PETER LEMKIN /NATIONAL INSTITUTES OF HEALTH /BETHESDA, MD. 20014 / / / /INTRODUCTION: /------------ /PDIS IS A SUBROUTINE FOR THE LINC8 COMPUTER USED TO /ACCESS THE LINC CPU'S POINT DISPLAY HARDWARE FROM /THE PDP8 CPU. THIS GREATLY FACILITATES INCORPORATING THE /LINC DISPLAY IN PDP8 PROGRAMS. / / / / /HARDWARE REQUIRED: /------------------ /LINC8 COMPUTER WITH AT LEAST 4K OF MEMORY. /PDIS WILL COMPILE WITH PAL. / / / / / /DESCRIPTION: /---------------- /SUBROUTINE PDIS IS A POINT DISPLAY ROUTINE WHICH CAN BE /USED FOR DISPLAYING ARBITRARY SETS OF (X,Y) COORDINATES ON /THE LINC DISPLAY SCOPE. IT MAY BE CALLED FROM ANY FIELD. IT SHOULD /BE NOTED THAT THE DISPLAY ROUTINE MUST BE RESIDENT IN THE PART OF /MEMORY WHICH CORRESPONDS TO THE CURRENT LINC CPU MEMORY BANK. /THE (X,Y)=(0,0) POSITION IS THE ENTER OF THE SCREEN. (+X,+Y) /IS TO THE RIGHT AND UP RESPECTIVELY. /CALLING SEQUENCE: / JMS PDIS / Y /Y COORD -Y=-377, +Y=377 / X /X COORD -X=-377, +X=377 / NORMAL RETURN /& 0000 FIELD 0 4000 *4000 /CORRESPONDS TO BANK 2 IN THE LINC CPU. 6165 ISSP=6165 6141 ICON=6141 / / / / 4000 0000 PDIS, 0 4001 7300 CLA CLL 4002 1600 TAD I PDIS /GET Y 4003 3253 DCA Y 4004 2200 ISZ PDIS 4005 1245 TAD PK377 /COMPUTE THE REAL X NEEDED FOR THE DISPLAY 2 4006 1600 TAD I PDIS /GET X 4007 3252 DCA X 4010 6214 RDF /SET UP RETURN 4011 1242 TAD PKCIF 4012 3237 DCA PDISEX 4013 6201 CDF 00 4014 1644 TAD I PK4010 /SAVE MEMORY 4015 3243 DCA PKSAVE 4016 2200 ISZ PDIS /SET UP RETURN /NOW GO GET SET TO LINC UP. /CLEAR FLAGS 4017 1246 TAD PK11 4020 6141 ICON /CLEAR LINC HANGUPS 4021 7200 CLA 4022 1241 TAD GOLINC 4023 6165 ISSP 4024 7200 CLA 4025 1247 TAD PK10 /SELECT 4026 6141 ICON 4027 1251 TAD PK2 4030 6141 MP, ICON /GO DISP 4031 7200 CLA 4032 1246 TAD PK11 /DESELECT THE LINK 4033 6141 ICON 4034 7200 CLA 4035 1243 TAD PKSAVE /RESTORE MEMORY 4036 3644 DCA I PK4010 4037 6202 PDISEX, CIF 00 4040 5600 JMP I PDIS /RETURN /*****CONSTANTS****** 4041 4054 GOLINC, LINC 4042 6202 PKCIF, CIF 00 4043 0000 PKSAVE, 0 4044 4010 PK4010, 4010 4045 0377 PK377, 377 4046 0011 PK11, 11 4047 0010 PK10, 10 4050 0007 PK7, 7 4051 0002 PK2, 2 4052 0000 X, 0 4053 0000 Y, 0 / / / / / /SUBROUTINE LINC /IS A LINC CODE SUBROUTINE USED TO DISPLAY 1 /POINT AT X AND Y. IT IS CALLED AND STARTED BY PDIS. / /& 4054 0050 LINC, 0050 /SET 10 ----- LINC CODE 4055 0052 X-4000 4056 1000 1000 /LDA IN LINC CODE 4057 0053 Y-4000 3 4060 0150 150 /DIS 10....DISPLAY CHANNEL 0 4061 0000 0000 /HLT IN LINC CODE /RETURN TO PDP8 CPU /CHANGE BACK MODE. /..................................................... $