File MSTSUB.5

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

/		MOST SUBROUTINES
/		****************






RCHAR=JMS I 20	/"INSTRUCTION" DEFINITIONS
TCHAR=JMS I 21
RTCHAR=JMS I 22
TDC=JMS I 23
LINE=JMS I 24
CHECK=JMS I 25
CHBLOK=JMS I 26
TYDER=JMS I 27


CHOCT=JMS I 32
ROCT=JMS I 33
TOCT=JMS I 34

CHKCHN=JMS I 36




        *20



	SRRCH	/PAGE 0 POINTERS
        SRTCH
        SRRTCH
        SRTDC
        SRLINE
        SRCH
        SRCHBK
	SRTYD
*.+2
        SRCHOC
        SRROCT
        SRTOCT
*.+1
	SRCKCN



OCNUM,	0	/OCTAL NUMBER FROM ROCT PUT HERE





*200 /****************** READ A CHARACTER ******************** /CALL: RCHAR /FETCHES CHAR. FROM KEYBOARD /RETURNS WITH ASCII CODE IN ACC. SRRCH, 0 KSF JMP .-1 KRB JMP I SRRCH /****************** TYPE A CHARACTER ******************* /CALL: TCHAR /TYPES CONTENTS OF ACC. /RETURNS WITH ACC. UNCHANGED SRTCH, 0 TSF JMP .-1 TLS JMP I SRTCH /**************** READ AND TYPE A CHAR. ***************** /CALL: RTCHAR /FETCHES CHAR. FROM KEYBOARD /ECHOS CHAR. /RETURNS WITH ASCII IN ACC. TEMPB, SRRTCH, 0 /READ AND TYPE A CHARACTER RCHAR TCHAR JMP I SRRTCH /***************** TYPE A DIAGNOSTIC SYMBOL ************ /CALL: TDC / XXX /ASCII CODE /TYPES CHAR. WHOSE ASCII CODE XXX /FOLLOWS THE CALL /IF XXX=4000 + AN ASCII CODE IT /REPEATS UNTIL ARGUMENT < 4000 IS FOUND /RETURNS WITH ACC.=0 TEMPA, SRTDC, 0 CLA TDCLP, TAD I SRTDC ISZ SRTDC TCHAR SPA CLA JMP TDCLP JMP I SRTDC /********************* TYPE OCTAL ********************** /CALL: TOCT /ENTER WITH NUMBER IN ACCUMULATOR /RETURNS WITH ACC.=0 LINK UNCHANGED SRTOCT, 0 RAL DCA TEMPB TAD M4 DCA TEMP NEXTO, TAD TEMPB RAL RTL DCA TEMPB TAD TEMPB AND MASK TAD P260 TCHAR CLA ISZ TEMP JMP NEXTO JMP I SRTOCT
/**************** TYPE CAR. RET. AND LINE FEED ************* /CALL: LINE TEMP, SRLINE, 0 TDC 4215 212 JMP I SRLINE /***************** CHECK AND SKIP IF WRONG ******************** /CALL: CHECK / XXX /NUMBER SOUGHT / RETURN FOR XXX=ACC. / RETURN FOR NOT EQUAL /RETURNS WITH ACC. UNCHANGED SRCH, 0 DCA TEMP TAD I SRCH ISZ SRCH CIA TAD TEMP SZA CLA ISZ SRCH TAD TEMP JMP I SRCH /***************** SKIP IF NOT IN BLOCK ******************* /CALL: CHBLOCK / XXX /LOWER LIMIT OF BLOCK / YYY /NUMBER OF ENTRIES IN BLOCK / RETURN WHEN ACC. IS IN BLOCK / NORMAL RETURN /ACC. REMAINS UNCHANGED SRCHBK, 0 DCA TEMP TAD I SRCHBK ISZ SRCHBK CIA TAD TEMP SPA JMP NO CMA TAD I SRCHBK SPA NO, ISZ SRCHBK ISZ SRCHBK CLA TAD TEMP JMP I SRCHBK /**************** SKIP IF OCTAL DIGIT ****************** /CALL: CHOCT / NON OCT. DIGIT RETURN / OCTAL DIGIT RETURN /ACC. REMAINS UNCHANGED TEMPC, SRCHOC, 0 CHBLOK P260, 260 10 ISZ SRCHOC JMP I SRCHOC /*************** READ AND TYPE OCTAL NUMBER *********** /CALL: ROCT /1ST CHAR. IN ACC. ON ENTRY /READS UNTIL NON-OCTAL /TERMINATOR FOUND OR /UNTIL 5 DIGITS TYPED /RETURNS WITH TERM. IN ACC. /AND OCTAL NUM. IN "OCNUM" TEM, SRROCT, 0 CHOCT TYDER /ENTERED WITH NON-OCTAL CHAR AND MASK DCA TEMP TAD M4 DCA TEMPA DCA OCNUM ROCTA, TAD OCNUM RAL CLL RTL TAD TEMP DCA OCNUM RTCHAR CHOCT JMP I SRROCT /EXIT ON NON-OCTAL CHAR. ISZ TEMPA SKP JMP I SRROCT AND MASK DCA TEMP JMP ROCTA M4, -4 MASK, 0007 /******************* TYPE A DIAGNOSTIC ERROR ******************** /CALL: TYDER /TYPES THE ADDRESS /FROM WHICH IT WAS CALLED CKCNCT, SRTYD, 0 LINE TDC 277 CLA CMA TAD SRTYD TOCT HLT /*************** CHECK CHAIN OF TAGS ******************* /CALL: CHKCHN / NUMBER OF CHECKS TO BE DONE / XXX / ADDR. OF ROUTINE FOR XXX / YYY / ADDR. OF ROUTINE FOR YYY / : / : / : / ZZZ / ADDR. OF ROUTINE FOR ZZZ /RETURNS WITH ACC. UNCHANGED IF TAG /NOT FOUND. OTHERWISE ACC.=0 TEMST, SRCKCN, 0 DCA TEM TAD I SRCKCN CIA DCA CKCNCT CHCNLP, ISZ SRCKCN TAD I SRCKCN CIA TAD TEM ISZ SRCKCN SNA CLA JMP CHKADD ISZ CKCNCT JMP CHCNLP TAD TEM ISZ SRCKCN JMP I SRCKCN CHKADD, TAD I SRCKCN DCA CKCNCT JMP I CKCNCT



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