File MARKER.PA (PAL assembler source file)

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

/SAMPLE MARKER			             	21-MAY-90
/
/
/
/	M    M   AAA   RRRR   K   K  EEEEE  RRRR
/	MM MM   A   A  R   R  K  K   E      R   R
/	M M M   A   A  R   R  K K    E      R   R
/	M   M   A   A  RRRR   KK     EEEE   RRRR
/	M   M   AAAAA  R R    K K    E      R R
/	M   M   A   A  R  R   K  K   E      R  R
/	M   M   A   A  R   R  K   K  EEEE   R   R
/
/
/

/
/
/	SMARKQ IS CALLED FROM TALLEY TO LOAD THE
/	DATA NEEDED TO MARK A SAMPLE INTO THE SAMPLE
/	MARKER QUE.
/
/	SMARKR IS CALLED DURING EACH CHOP WHEN A
/	SAMPLE SHEET WOULD BE IN PLACE FOR MARKING.
/	IF THE CURRENT SHEET IS NOT A SAMPLE, WE
/	JUST EXIT.  IF IT IS A SAMPLE, THE DATA FOR
/	THE SAMPLE IS TAKEN OUT OF THE BUFFER, LOADED
/	IN THE SAMPLE MARKER, AND THE SAMPLE MARKER IS 
/	FIRED.
/
/


	TASK=	SMARKQ
	CUR=	MARKFLD
	INIWT=	0
	VERS=	3


	TASK2=	SMARKR
	CUR2=	MARKFLD
	INIWT2=	0
	VERS2=	1


	FIELD MARKFLD%10
	*MARKLOC

/ / / / / SSSS M M AAA RRRR K K QQQ / S MM MM A A R R K K Q Q / S M M M A A R R K K Q Q / SSS M M A A RRRR KK Q Q / S M M AAAAA R R K K Q Q / S M M A A R R K K Q Q Q / SSSS M M A A R R K K QQQQ / / / / / PUT SAMPLE DATA IN THE SAMPLE MARKER QUEUE / / / COME HERE (FROM TALLEY) FOR EACH SAMPLE AND ADD / THE INFORMATION FOR THAT SAMPLE INTO THE SAMPLE / MARKER QUEUE. / / START, CLB CAL SUSPND /GO TO SLEEP 'TIL NEEDED. CLB TAD IQAVL /SET UP AN INDEX FOR THE DATA. DCA XR16 CDF 20 TAD I (SAMNAD) /GET THE ADDRESS OF THE SAMPLE CDF CUR / NUMBER TO USE DCA SMQWKA TAD I SMQWKA /MOVE THE PROPER SAMPLE NUMBER. ISZ SMQWKA DCA I XR16 TAD I SMQWKA ISZ SMQWKA DCA I XR16 TAD I SMQWKA DCA I XR16 TAD I (CRTD07) /AND THE SHIFT ROLL NUMBER DCA I XR16 TAD I (CRTD07+1) DCA I XR16 CDF 20 TAD I (SAMTYP) /AND FINALLY THE SAMPLE TYPE CDF CUR DCA I XR16
/ TAD XR16 /UPDATE THE BUFFER POINTER STORAGE DCA IQAVL TAD IQAVL /CHECK FOR THE END OF THE BUFFER. TAD (-IMQEND) SPA CLA JMP START /STILL WITHIN THE BUFFER, EXIT. TAD (IMQUE-1) /END OF BUFFER, RESET TOT START DCA IQAVL JMP START /ALL DONE. SMQWKA, 0 /LOCAL TEMP
/ / / / / SSSS M M AAA RRRR K K RRRR / S MM MM A A R R K K R R / S M M M A A R R K K R R / SSS M M A A RRRR KK RRRR / S M M AAAAA R R K K R R / S M M A A R R K K R R / SSSS M M A A R R K K R R / / / / /%R LOAD AND FIRE THE SAMPLE MARKER / /%TW GET 6 CHARACTER GROUP FOR LOADING TUBES IN LATENT / IMAGE MARKING SYSTEM. LOAD TUBES, RELEASE 6 WORDS / BUFFER STORAGE TO AVAILABLE AREA. ASSUMES DR8, REG- / ISTER 52. / / START2, CLB CAL SUSPND /GO TO SLEEP 'TIL NEEDED CLB CDF 10 TAD I (SMRLOC) /GET THE WORD FROM THE DEFECT MEM TAD I (MEMPTR) /TABLE AT THE SAMPLE MARKER POSITION AND (0377) TAD (MEMTBL) DCA SMRKA TAD I SMRKA /IS THE SAMPLE MARKER SET TO FIRE CDF CUR AND (0400) /FOR THIS SHEET ? SNA CLA JMP START2 /NO, BACK TO SLEEP CLA CMA /MASK OF ALL BITS DBCO52 /CLEAR DR8 (?) CLB TAD IQNEXT /NEXT STRING CIA /2'S COMPLEMENT TAD IQAVL /IF ZERO, CAUGHT UP SNA CLA JMP START2 /NO WORK. SHOULD WE BE HERE?
/ TAD IQNEXT /START OF STRING DCA XR14 TAD (TUBADR-1) /BIT ADDRESS OF TUBE IN REGISTER DCA XR15 TAD (-6) /6 CHARACTERS TO DISPLAY DCA IMQCNT /CHARACTER COUNTER IMLOOP, TAD I XR14 AND (0017) /ONLY LOW ORDER CHARACTER DBSO52 /SEND DATA TAD I XR15 /TUBE ADDRESS DBSO52 /TICKLE THAT TUBE AND (7760) /AND OFF DATA AND (7760) /JUST FOR TIMING DBCO52 /CLEAR TUBE LOCATION TAD (17) /CLEAR DATA BITS DBCO52 /CLEAR CLB ISZ IMQCNT /DONE YET? JMP IMLOOP /NO. MORE TO LOAD. TAD (-IMQEND) /SEE IF OVERFLOW TAD XR14 /RESET? SPA CLA /SKIP IF SO JMP .+3 /NO. ALL DONE. TAD (IMQUE-1) /BACK TO BEGINNING SKP TAD XR14 DCA IQNEXT /WRAP-AROUND TABLE IOF ///NEEDED THE BOX TO OURSELVES !! CLA STL RAR ///BIT 0 DBSO52 ///STROBE MARKER CLB TAD TUBWAT ///NO. OF 5 MIC. INTERVALS TO WAIT DCA TUBCNT ///LOCAL COUNTER TUBLUP, NOP ///1.2 MICROSECONDS ISZ TUBCNT ///2.6 MICROSECONDS JMP TUBLUP ///1.2 MICROSECONDS CLA CMA ///ALL BITS SET DBCO52 ///CLEAR IT ALL ION JMP START2 /RETURN
/ / / TUBE REGISTER BIT ASSIGNMENTS / / TUBADR, 100 /TUBE 1 BIT IN DR8-52 40 /TUBE 2 20 /TUBE 3 1000 /TUBE 4 400 /TUBE 5 200 /TUBE 6 / TUBWAT, -4 /4 DECIMAL * 5 MICROSECONDS WAIT TUBCNT, 0 /THE COUNTER ITSELF / IMQCNT, 0 SMRKA, 0 /LOCAL TEMPORARY / IMQIPR=IQAVL / PAGE NOPUNCH /F3COMM 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