File SGATE.PA (PAL assembler source file)

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

/ SAMPLE TRAY GATE HANDLER			30-AUG-90
/
/
/
/	 SSSS   GGG    AAA   TTTTT  EEEEE
/	S      G   G  A   A    T    E
/	S      G      A   A    T    E
/	 SSS   G      A   A    T    EEEE
/	    S  G GGG  AAAAA    T    E
/	    S  G   G  A   A    T    E
/	SSSS    GGG   A   A    T    EEEEE
/
/
/

/
/EDIT HISTORY:
/
/3-JUL-90	(LHN)
/	1) ADDED CODE TO USE "EMPTY SAMPLE TRAY"
/	   MESSAGE
/	2) ADDED CODE TO STOP MACHINE WHEN "SMSTOP" FLAG
/	   IS SET AND THE TRAY GOES OUT
/	3) ADDED CODE TO CLEAR SAMPLE TRAY OUT FLAG
/
/30-AUG-90	(LHN)
/	1) ADDED OPERATOR MESSAGE CODE TO INLOCK MESSAGE
/

/
/%RP	SAMPLE TRAY GATE CONTROL ROUTINE
/
/
/%TW	THIS ROUTINE IS CALLED DURING EACH SHEET AND
/	CHECKS THE TRAY DESTINATION DATA IN THE DEFECT
/	MEMORY TABLE TO SEE IF THE SHEET NEARING THE
/	SAMPLE GATE IS MARKED AS A SAMPLE. IF THE SHEET
/	IS NOT FOR THE SAMPLE TRAY, THE SAMPLE GATE IS
/	TURNED OFF AND THE ROUTINE EXITS.
/
/%TW	IF THE SHEET IS MARKED AS A SAMPLE, THE "GATE
/	ON" TIMING DELAY FOR THE SAMPLE GATE IS SET UP
/	BASED ON THE CURRENT MACHINE SPEED.  ONCE THE
/	TIMER IS SET, IT IS PROCESSED BY THE GATE TURN
/	ON ROUTINE, "GATEON" WHICH WILL TURN ON THE 
/	SAMPLE GATE AND TRAY AIR ON AT THE PROPER TIME.
/	IF THE SAMPLE TRAY IS OUT, THE SHEET IS IGNORED.
/	EJECTION OF THE SAMPLE TRAY AND TURNING OFF OF
/	THE TRAY AIR ARE ALSO CONTROLLED HERE.




TASK=	SMGATE		/SAMPLE TRAY GATE HANDLER
CUR=	SGATEFLD
INIWT=	0
VERS=	3



	FIELD SGATEFLD%10
	*SGATELOC

/ / / /%RP SAMPLE TRAY GATE CONTROL ROUTINE / / START, CLB CAL SUSPND /TO SLEEP 'TIL NEEDED. CLB IAC DCA SMGTON /CLEAR THE SAMPLE GATE ON DELAY. CLB IAC DCA SMGTOF /CLEAR THE TURN OFF DELAY. TAD SMTFLG /IS THE SAMPLE TRAY OUT FLAG SET ? SNA CLA JMP SMG1 /NO, GO ON DBRI51 /IS THE TRAY STILL OUT ? MQL DBRO51 MQA SPA CLA JMP SMG1 /YES, GO ON DCA SMTFLG /NO, TRAY HAS RETURNED, CLEAR THE CAL / TRAY OUT FLAG AND REMOVE THE SEND / "EMPTY SAMPLE TRAY" MESSAGE CRTMSG SMGM1 SMG1, CLB TAD SMGLOC /GET THE DATA FROM THE MEMORY TABLE TAD MEMPTR / AT THE SAMPLE GATE POSITION. AND (0377) TAD (MEMTBL) DCA SMGSCR TAD I SMGSCR /IS THIS SHEET A SAMPLE ? AND (0040) SNA CLA JMP SMG2 /NO, GO TURN OFF THE GATE VALVE. TAD SMTFLG /IS THE SAMPLE TRAY OUT ? SZA CLA JMP SMG2 /YES, FORGET IT. TAD GATEDY /SET UP THE SAMPLE GATE ON DELAY. DCA SMGTON / AC7775 /-3 / DCA SMGAIR /RESET THE SAMPLE TRAY AIR ON DELAY.
/ TAD I SMGSCR /IS THIS TRAY MARKED TO EJECT ? SMA CLA JMP SMG3 /NO, GO ON. TAD (-10) /SET UP THE TRAY EJECT DELAY. DCA SMGEJC JMP SMG3 SMG2, TAD GATEDY /SET UP THE TURN OFF DELAY. DCA SMGTOF / CLB IAC /HAS THE SAMPLE TRAY AIR ON DELAY / TAD SMGAIR / TIMED OUT ? / SPA SNA / DCA SMGAIR / SNL CLA / JMP .+3 /NO, GO ON. / TAD (40) /TURN OFF THE SAMPLE TRAY AIR. / DBCO50 CLB IAC /HAS THE SAMPLE TRAY EJECT DELAY TAD SMGEJC / TIMED OUT ? SPA SNA DCA SMGEJC SNL CLA JMP SMG3 /NO, GO ON. AC4000 /YES, EJECT THE SAMPLE TRAY NOW. DBSO51 DCA SMTFLG /SET THE SAMPLE TRAY OUT FLAG. TAD TRAYSZ /RESET SAMPLE TRAY SHEET COUNTER DCA SMTCNT CAL /DISPLAY "EMPTY SAMPLE TRAY" SEND / MESSAGE CRTMSG SMGM2 TAD SMSTOP /IS THE STOP FLAG SET ? SNA CLA JMP SMG3 /NO, GO ON DCA SMSTOP /YES, CLEAR THE FLAG AND ASK THE CAL / INLOCK TASK TO STOP THE MACHINE SEND INLOCK SMGM3 SMG3, JMP START
/ /SMGAIR, 0 /SAMPLE TRAY AIR ON DELAY COUNTER SMGSCR, 0 /LOCAL TEMPORARY SMGM1, ZBLOCK 3 /REMOVE EMPTY SAMPLE TRAY MOPM12+4000 / MESSAGE SMGM2, ZBLOCK 3 /SHOW EMPTY SAMPLE TRAY MESSAGE MOPM12 SMGM3, ZBLOCK 3 /OPEN "TRAY OUT" INTERLOCK TRYINL+MOPM13 / "SAMPLE TRAY OUT" MESSAGE PAGE NOPUNCH /F1COMM FILE FOLLOWS XLIST 1



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