File USERCD.PA (PAL assembler source file)

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

/ USER COMMAND DISPATCH				19-APR-90


/
/
/	THIS TASK DECODES AND EXECUTES USER
/	LEVEL TELETYPE COMMANDS
/
/
/








	TASK=	USERCD
	CUR=	USERFLD
	INIWT=	0
	VERS=	1


	TASK2=	EXIT
	CUR2=	CUR
	INIWT2=	0
	VERS2=	3


	FIELD CUR%10
	*USERLOC

START, CLB CAL RECEIVE MADDR, 0 DCA MSGFLD+1 AC0002 TAD MADDR DCA MADDR JMS MSGFLD /IS THIS A NULL MESSAGE ? TAD I MADDR CDF CUR SPA SNA CLA JMP USERXT /YES, JUST EXIT. TAD (-13) DCA USERA /SET UP A LOOP COUNTER FOR SEARCH TAD (CMDLST-7) DCA USERB /SET UP A POINTER TO COMMAND LIST USER1, CLB TAD (7) /INCREMENT THE LIST POINTER TAD USERB /TO THE NEXT ENTRY. DCA USERB IAC TAD USERB DCA USERC TAD I USERC /AT END OF COMMAND LIST ? SNA CLA JMP USERER /YES, LOG ERROR. TAD MADDR /RESET THE MESSAGE POINTER. DCA USERD USER2, TAD I USERC /GET THE NEXT COMMAND CHARACTER. SNA CLA /THIS COMMAND FINISHED ? JMP USER1 /YES, TRY THE NEXT JMS MSGFLD /GET THE NEXT MESSAGE CHARACTER. TAD I USERD ISZ USERD CDF CUR CIA /NO, CHECK NEXT COMMAND CHARACTER. TAD I USERC ISZ USERC SZA CLA JMP USER1 /NO MATCH, TRY NEXT COMMAND. JMS MSGFLD /IS NEXT CHAR A TEN TAD I USERD CDF CUR SMA SZA CLA JMP USER2 /NO, GO ON STL /YES, MORE JMP I USERB
/ USERER, CDF CUR CAL SEND TTYST USERMG USERXT, CDF CUR CLB TAD MSGFLD+1 DCA USERX1 TAD (-5) TAD MADDR CAL POST USERX1, 0 JMP START MSGFLD, 0 HLT JMP I MSGFLD USERMG, ZBLOCK 3 0 0 TEXT "INVALID COMMAND" USERA, 0 /LOCAL STORAGE USERB, 0 USERC, 0 USERD, 0 PAGE
/ / / COMMAND LIST / / CMDLST, JMP CMDP1 "L /"LIST" A/D MAINTENANCE FORM "I "S "T 0 0 JMP CMDP2 "S /"S" FOR SAMPLE GATE ZBLOCK 5 JMP CMDP3 "R /"RA" FOR REJECT A GATE "A ZBLOCK 4 JMP CMDP4 "R /"RB" FOR REJECT B GATE "B ZBLOCK 4 JMP CMDP5 "P /"PC" FOR PRODUCT C GATE "C ZBLOCK 4 JMP CMDP6 "P /"PA" FOR PRODUCT B GATE "A ZBLOCK 4 JMP CMDP7 "P /"PB" FOR PRODUCT A GATE "B ZBLOCK 4 JMP CMDP8 "P /"PSM" TO RESTART ANALOG SELF CHECK "S "M ZBLOCK 3 JMP CMDP9 "C /"CH1" TO RESTART CHANNEL 1 SELF CHECK "H "1 ZBLOCK 3
/ JMP CMDP10 "C /"CH2" TO RESTART CHANNEL 2 SELF CHECK "H "2 ZBLOCK 3 JMP CMDP11 "C /"CH3" TO RESTART CHANNEL 3 SELF CHECK "H "3 ZBLOCK 3 JMP CMDP12 "N /"NONE" TO GET OUT OF STACKER TEST "O "N "E ZBLOCK 2 / / / JMP USERER /END OF COMMAND LIST ZBLOCK 6 PAGE
/ / / COMMAND PROCESSOR SEQUENCES / / CMDP1, CLB TAD (LIST) /RUN THE LIST TASK CAL RUN JMP USERXT CMDP2, RAL /SAMPLE GATE CMDP3, RAL /REJECT A GATE CMDP4, RAL /REJECT B GATE CMDP5, RAL /PRODUCT C GATE CMDP6, RAL /PRODUCT A GATE CMDP7, RAL /PRODUCT B GATE CDF 10 DCA I (STAKWD) DBRI50 /ARE WE IN TEST MODE ? AND (0040) SZA CLA JMP USERER /NO, SAY ERROR. CLB IAC / YES, SET THE STACKER DCA I (STAKFG) /MAINTENANCE FLAG. JMP USERXT /AND EXIT. CMDP12, CLB CDF 10 DCA I (STAKWD) /TURN OFF STACKER TEST DCA I (STAKFG) JMP USERXT CMDP8, CLB /REENABLE ANALOG SELF CHECK CDF 50 DCA I (ADERRF) JMP USERXT CMDP9, CLB /RENNABLE CHANNEL 1 SELF CHECK CDF 50 DCA I (CH1ERF) JMP USERXT CMDP10, CLB /REENABLE CHANNEL 2 SELF CHECK CDF 50 DCA I (CH2ERF) JMP USERXT CMDP11, CLB /REENABLE CHANNEL 3 SELF CHECK CDF 50 DCA I (CH3ERF) JMP USERXT
/ / /%RT EXIT FROM MAST AND RETURN TO OS/8 / /%TW WHENEVER THE USER ENTERS THE "EXIT" COMMAND, / MCR WILL RUN THIS TASK. IF MAST IS IN TEST MODE, / CONTROL WILL BE RETURNED TO OS/8. IF MAST IS NOT / IN TEST MODE, THE COMMAND IS IGNORED. / / START2, CLB CAL SUSPND /SLEEP 'TIL NEEDED. DBRI50 /ARE WE IN TEST MODE ? AND (0040) SZA CLA JMP START2 /NO, IGNORE THE COMMAND. CAL /ASK "INLOCK" TO OPEN THE "MAST SEND / MONITOR" INTERLOCK INLOCK EXTINL CAL /ASK THE CRT HANDLER TO RESTORE SENDW / THE VT220 CURSOR CRT EXTCRT CAL /WAIT FOR .5 SECONDS TO BE SURE SENDW / THE VT220 CURSOR IS RESTORED CLOCK EXTCLK IOF /SHUT MAST DOWN AND RESTART OS/8 CAF CDF CIF 0 JMP I (7600) / EXTINL, ZBLOCK 3 2000 /OPEN "MAST MONITOR" INTERLOCK EXTCRT, ZBLOCK 3 CRTV02 /TEXT TO RESTORE THE VT220 CURSOR EXTCLK, ZBLOCK 3 /WAIT FOR .5 SECONDS 0 0 62 /500 MS -> .5 SECONDS
/ PAGE NOPUNCH /F4COMM 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