File DEF.PA (PAL assembler source file)

Directory of image this file is from
This file as a plain text file

/69
/
/
/%R	PROCESS SHEET DEFECT DATA FOR CHANNEL 1
/
/%TW	THIS ROUTINE IS CALLED FROM THE JUMP TABLE AS
/	EACH SHEET BOUNDRY (YET TO BE CHOPPED) CROSSES THE 
/	INSPECTION POINT FOR CHANNEL 1.  IF CHANNEL 1
/	IS ENABLED, THE DEFECT DATA FOR THIS SHEET AND
/	THE FAILURE FLAG FROM SELF CHECK ARE "OR"ED 
/	INTO THE DEFECT MEMORY TABLE AT THE CHANNEL 1
/	POSITION.  THIS DATA IS LATER USED BY "PRODCT"
/	TO DETERMINE THE QUALITY OF THIS SHEET.
/
/
DEFCH1,	0
	CLB
	TAD CH1LOC	/FORM ADDRESS POINTER INTO MEMORY TABLE
	TAD MEMPTR	/AND SAVE THE CURRENT LOCATION OF THE 
	AND P177	/CHANNEL POINTER FOR THE RESOLUTION
	TAD (MEMTBL)	/ROUTINE
	DCA CH1PTR
	TAD P4		/CHECK IF THIS CHANNEL IS ENABLED
	JMS DEFDIS
	DCA CH1FLR	/NO, CLEAR THE CHANNEL DISABLE FLAG
	TAD I CH1PTR	/GET THE DATA CURRENTLY IN THE
	MQL		/MEMORY TABLE AND "OR" IN THE DEFECT
	TAD DEFCT1	/AND FAILURE DATA FOR THIS CHANNEL
	MQA
	MQL
	TAD CH1FLR
	CLL RTL
	MQA
	DCA I CH1PTR	/RETURN THE DATA TO THE MEMORY TABLE
DEFC1A,	DCA DEFCT1	/CLEAR DEFECT STORAGE FOR THIS CHANNEL
	JMP I DEFCH1	/RETURN

CH1LOC,	0		/CHANNEL 1 LOCATION IN THE MEMORY TABLE

/70 / / /%R CHANNEL 1 RESOLUTION HANDLER / /%TW COME HERE FROM THE JUMP TABLE AFTER THE RESOLUTION / AREA FOR CHANNEL 1 HAS PASSED THE INSPECTION / POINT. THE RESOLUTION AREA IS A SMALL LENGTH / OF PRODUCT FOLLOWING THE LAST SHEET BOUNDARY FOR / CHANNEL 1. DEFECTS APPEARING IN THE RESOLUTION / AREA BETWEEN TWO SHEETS WILL CAUSE BOTH SHEETS / TO BE REJECTED. ANY DEFECT DATA WHICH HAS COME IN / SINCE "DEFCH1" WAS LAST CALLED IS "OR"ED WITH / THE DEFECT DATA IN THE DEFECT MEMORY TABLE FOR / THE SHEET WHICH JUST PASSED CHANNEL 1. THE NEW DATA / IS LEFT IN "DEFCT1" FOR THE NEXT CALL TO "DEFCH1". / / RESCH1, 0 CLB TAD I CH1PTR /"OR" DEFECT DATA INTO THE MEMORY MQL /TABLE AT THE CHANNEL 1 LOCATION TAD DEFCT1 MQA DCA I CH1PTR JMP I RESCH1 /RETURN CH1PTR, 0 /MEMORY TABLE ADDRESS FOR THIS CHANNEL, /LEFT BY DEFCH1
/71 / / /%R PROCESS SHEET DEFECT DATA FOR CHANNEL 2 / /%TW THIS ROUTINE IS CALLED FROM THE JUMP TABLE AS / EACH SHEET BOUNDARY (YET TO BE CHOPPED) CROSSES THE / INSPECTION POINT FOR CHANNEL 2. IF CHANNEL 2 / IS ENABLED, THE DEFECT DATA FOR THIS SHEET AND / THE FAILURE FLAG FROM SELF CHECK ARE "OR"ED / INTO THE DEFECT MEMORY TABLE AT THE CHANNEL 2 / POSITION. THIS DATA IS LATER USED BY "PRODCT" / TO DETERMINE THE QUALITY OF THIS SHEET. / /%TW "DEFCH2" ALSO MONITORS THE SPLICE DATA. IT WILL / SET THE SPLICE FLAG "SPLFLG" FOR ONE CHOP TIME / WHENEVER THE CHANNEL 2 SPLICE BIT IS SET. IT IS / NECESSARY TO USE THE SPLICE FLAG TO INSURE ALL / THE SERVICE ROUTINES ACT ON THE SPLICE SIGNAL / DURING THE SAME CHOP. / / DEFCH2, 0 CLB TAD DEFCT2 /MOVE SPLICE DATA TO THE SPLICE FLAG AND P10 DCA SPLFLG TAD CH2LOC /FORM ADDRESS POINTER INTO MEMORY TABLE TAD MEMPTR /AND SAVE THE CURRENT LOCATION OF THE AND P177 /CHANNEL POINTER FOR THE RESOLUTION TAD (MEMTBL) /ROUTINE DCA CH2PTR CLB STL RTL /CHECK IF THIS CHANNEL IS ENABLED JMS DEFDIS DCA CH2FLR /NO, CLEAR THE CHANNEL DISABLE FLAG TAD I CH2PTR /GET THE DATA CURRENTLY IN THE MQL /MEMORY TABLE AND "OR" IN THE DEFECT TAD DEFCT2 /AND FAILURE DATA FOR THIS CHANNEL MQA MQL TAD CH2FLR CLL RAL MQA DCA I CH2PTR /RETURN THE DATA TO THE MEMORY TABLE DEFC2A, DCA DEFCT2 /CLEAR DEFECT STORAGE FOR THIS CHANNEL JMP I DEFCH2 /RETURN CH2LOC, 0 /CHANNEL 2 LOCATION IN THE MEMORY TABLE
/72 / / /%R CHANNEL 2 RESOLUTION HANDLER / /%TW COME HERE FROM THE JUMP TABLE AFTER THE RESOLUTION / AREA FOR CHANNEL 2 HAS PASSED THE INSPECTION / POINT. THE RESOLUTION AREA IS A SMALL LENGTH / OF PRODUCT FOLLOWING THE LAST SHEET BOUNDARY FOR / CHANNEL 2. DEFECTS APPEARING IN THE RESOLUTION / AREA BETWEEN TWO SHEETS WILL CAUSE BOTH SHEETS / TO BE REJECTED. ANY DEFECT DATA WHICH HAS COME IN / SINCE "DEFCH2" WAS LAST CALLED IS "OR"ED WITH / THE DEFECT DATA IN THE DEFECT MEMORY TABLE FOR THE / SHEET WHICH JUST PASSED CAHNNEL 2. THE NEW DATA / IS LEFT IN "DEFCT2" FOR THE NEXT CALL TO "DEFCH2". / / RESCH2, 0 CLB TAD I CH2PTR /"OR" DEFECT DATA INTO THE MEMORY MQL /TABLE AT THE CHANNEL 2 LOCATION TAD DEFCT2 MQA DCA I CH2PTR JMP I RESCH2 /RETURN CH2PTR, 0 /MEMORY TABLE ADDRESS FOR THIS CHANNEL, /LEFT BY DEFCH2
/73 / / /%R PROCESS SHEET DEFECT DATA FOR CHANNEL 3 / /%TW THIS ROUTINE IS CALLED FROM THE JUMP TABLE AS / EACH SHEET BOUNDARY (YET TO BE CHOPPED) CROSSES THE / INSPECTION POINT FOR CHANNEL 3. IF CHANNEL 3 / IS ENABLED, THE DEFECT DATA FOR THIS SHEET AND / THE FAILURE FLAG FROM SELF CHECK ARE "OR"ED / INTO THE DEFECT MEMORY TABLE AT THE CHANNEL 2 / POSITION. THIS DATA IS LATER USED BY "PRODCT" / TO DETERMINE THE QUALITY OF THIS SHEET. / / DEFCH3, 0 CLB TAD CH3LOC /FORM ADDRESS POINTER INTO MEMORY TABLE TAD MEMPTR /AND SAVE THE CURRENT LOCATION OF THE AND P177 /CHANNEL POINTER FOR THE RESOLUTION TAD (MEMTBL) /ROUTINE DCA CH3PTR CLB IAC /CHECK IF THIS CHANNEL IS ENABLED JMS DEFDIS DCA CH3FLR /NO, CLEAR THE CHANNEL DISABLE FLAG TAD I CH3PTR /GET THE DATA CURRENTLY IN THE MQL /MEMORY TABLE AND "OR" IN THE DEFECT TAD DEFCT3 /AND FAILURE DATA FOR THIS CHANNEL MQA MQL TAD CH3FLR MQA DCA I CH3PTR /RETURN THE DATA TO THE MEMORY TABLE DEFC3A, DCA DEFCT3 /CLEAR DEFECT STORAGE FOR THIS CHANNEL JMP I DEFCH3 /RETURN CH3LOC, 0 /CHANNEL 3 LOCATION IN THE MEMORY TABLE
/74 / / /%R CHANNEL 3 RESOLUTION HANDLER / /%TW COME HERE FROM THE JUMP TABLE AFTER THE RESOLUTION / AREA FOR CHANNEL 3 HAS PASSED THE INSPECTION / POINT. THE RESOLUTION AREA IS A SMALL LENGTH / OF PRODUCT FOLLOWING THE LAST SHEET BOUNDARY FOR / CHANNEL 3. DEFECTS APPEARING IN THE RESOLUTION / AREA BETWEEN TWO SHEETS WILL CAUSE BOTH SHEETS / TO BE REJECTED. ANY DEFECT DATA WHICH HAS COME IN / SINCE "DEFCH3" WAS LAST CALLED IS "OR"ED WITH / THE DEFECT DATA IN THE DEFECT MEMORY TABLE FOR THE / SHEET WHICH JUST PASSED CHANNEL 3. THE NEW DATA / IS LEFT IN "DEFCT3" FOR THE NEXT CALL TO "DEFCH3". / / RESCH3, 0 CLB TAD I CH3PTR /"OR" DEFECT DATA INTO THE MEMORY MQL /TABLE AT THE CHANNEL 3 LOCATION TAD DEFCT3 MQA DCA I CH3PTR JMP I RESCH3 /RETURN CH3PTR, 0 /MEMORY TABLE ADDRESS FOR THIS CHANNEL, /LEFT BY DEFCH3
/75 / / /%R TEST FOR A DISABLED INSPECTION CHANNEL / /%TW COME HERE FROM THE SHEET DEFECT PROCESSING ROUTINES / (DEFCH1,2,3) AND THE RESOLUTION ROUTINES (RESCH1,2,3) / TO CHECK IF THAT CHANNEL IS DISABLED. TO DISABLE ANY / CHANNEL, THE MAST SYSTEM MUST BE IN "TEST" MODE. / / DEFDIS, 0 DCA WKB /SAVE THE CHANNEL MASK DBRI50 /IS MAST IN THE "TEST" MODE ? AND P40 SZA CLA JMP .+4 /NO, SET UP TO RETURN DBRI52 /YES, IS THIS CHANNEL DISABLED ? AND WKB SNA CLA ISZ DEFDIS /NO, INCREMENT THE RETURN ADDRESS JMP I DEFDIS /RETURN PAGE



Feel free to contact me, David Gesswein djg@pdp8online.com with any questions, comments on the web site, or if you have related equipment, documentation, software etc. you are willing to part with.  I am interested in anything PDP-8 related, computers, peripherals used with them, DEC or third party, or documentation. 

PDP-8 Home Page   PDP-8 Site Map   PDP-8 Site Search