File LINESP.PA (PAL assembler source file)

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

/ COMPUTE LINE SPEED FROM MOTION PULSES		28-MAY-91
/
/
/
/	L      IIIII  N   N  EEEEE   SSSS  PPPP
/	L        I    N   N  E      S      P   P
/	L        I    NN  N  E      S      P   P
/	L        I    N N N  EEEE    SSS   PPPP
/	L        I    N  NN  E          S  P
/	L        I    N   N  E          S  P
/	LLLLL  IIIII  N   N  EEEEE  SSSS   P
/
/
/

/
/EDIT HISTORY:
/
/28-MAY-91	(LHN)
/	1) REPLACED OLD LINESP TASK WITH THIS CODE
/

/
/	THIS TASK USES THE NUMBER OF MOTION PULSES 
/	(FROM THE STACKER ENCODER) IN 200 MILLISECONDS 
/	TO COMPUTE THE MACHINE LINE SPEED AND THE
/	REQUIRED STACKER VALVE TIMING ADVANCE. THE
/	TIMING ADVANCE IS USED TO COMPUTE THE NUMBER OF
/	MOTION PULSES TO DELAY THE TURN ON/OFF OF THE
/	INDIVIDUAL STACKER GATES. THE DELAY IS COMPUTED
/	IN MOTION PULSE UNITS USING THE INCLUDED STACKER
/	TIMING ADVANCE TABLE.
/
/	THIS TASK RUNS EVERY 200 MILLISECONDS.



	TASK=	LINESP
	CUR=	LINEFLD
	INIWT=	0
	VERS=	3


	FIELD LINEFLD%10
	*LINELOC

/ / / USEFULL DATA FOR TIMING COMPUTATIONS / / / / 1 MOTION PULSE => 4.128 MILLIMETERS / / THIS WAS COMPUTED FROM THE AVERAGE / OF THE MOTION PULSES PER CHOP FOR / ALL THE CHOP SIZES. / / / / / LINE MOTION PULSES TABLE INDEX MILLISECONDS/ / SPEED IN 200 MS (MP/200MS / 4 MOTION PULSE / M/MIN DEC. (OCTAL) [IN OCTAL]) / / 0 0 ( 0) 0 ---- / 25 20.2 ( 24) 5 9.90 / 50 40.4 ( 50) 12 4.95 / 75 60.6 ( 74) 17 3.30 / 100 80.7 (120) 24 2.47 / 125 100.9 (144) 31 1.98 / 150 121.9 (171) 36 1.65 / 175 144.3 (220) 43 1.42 / 200 161.5 (240) 50 1.23 / 225 181.7 (265) 55 1.10 / 250 201.9 (311) 62 .99 / /
/ / / COMPUTE LINE SPEED FROM MOTION PULSES / / / THIS TABLE IS CONSTRUCTED WHEN THE FINISHING / MACHINE IS DYMANICALLY TIMED, AND CONTAINS THE / NUMBER OF MOTION PULSES A GATE TURN ON/OFF MUST / BE ADVANCED FOR EACH UNIT OF MACHINE SPEED. THE / MACHINE LINE SPEED IS SCALED INTO THE RANGE OF / 0 TO 77 OCTAL, AND USED AS AN INDEX TO GET THE / GATE ADVANCE FROM THIS TABLE BELOW. / / / ADVANCE TABLE LINE SPEED / CONSTANT INDEX IN M/MIM /-------------------------------------------------------- LSPTBL, 0 / 0 STOPPED 1 / 1 2 / 2 4 / 3 5 / 4 6 / 5 25 7 / 6 10 / 7 11 / 10 12 / 11 13 / 12 50 14 / 13 15 / 14 16 / 15 20 / 16 21 / 17 75 22 / 20 24 / 21 25 / 22 26 / 23 27 / 24 100 30 / 25 32 / 26 33 / 27 34 / 30 35 / 31 125 37 / 32 40 / 33 41 / 34 42 / 35 43 / 36 150 44 / 37
/ / / LINE SPEED ADVANCE TABLE - CONTINUED / / / / ADVANCE TABLE LINE SPEED / CONSTANT INDEX IN M/MIM /-------------------------------------------------------- 45 /40 160 46 /41 47 /42 47 /43 175 47 /44 47 /45 47 /46 47 /47 47 /50 200 47 /51 47 /52 47 /53 47 /54 47 /55 225 47 /56 47 /57 47 /60 47 /61 47 /62 250 47 /63 47 /64 47 /65 47 /66 47 /67 47 /70 47 /71 47 /72 47 /73 47 /74 47 /75 47 /76 47 /77
/ START, CLB CAL /CALL THE CLOCK TASK TO WAKE US SENDW / IN 200 MS CLOCK CLKMG CLB /AWAKE AGAIN TAD LSPCTR /GET THE MOTION PULSE COUNT SINCE / THE LAST TIME WE RAN CLL RTR /DIVIDE BY 4 AND (0077) / MASK WITHIN 0 TO 77 TAD (LSPTBL) / ADD IN TABLE BASE TO FORM DCA LINEA / POINTER INTO THE TABLE TAD I LINEA /GET THE ADVANCE VALUE TAD LINEZ1 /ADD IN THE -(GATE OFFSET) AND DCA GATEDY / SAVE AS NEW GATING ADVANCE DCA LSPCTR /CLEAR THE MOTION PULSE COUNTER JMP START /ALL DONE, BACK TO SLLEEEEEEEPPPPP LINEA, 0 /POINTER INTO ADVANCE TABLE LINEZ1, -50 /THIS IS THE GATE TIMING OFFSET. / THIS NUMBER MUST BE GREATER THAN / THE LARGEST TIMING ADVANCE. /*********************************** / NOTE: CHANGING THIS CONSTANT / REQUIRES RETIMING ALL THE / MACHINE DISTANCES FOR 'BUILD' /*********************************** CLKMG, ZBLOCK 3 /MESSAGE FOR THE CLOCK TASK 0 0 24 /WAKE US IN 200MS 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