ASMB,A,B,L,C HED SEND (ONLY) INTERFACE DIAGNOSTIC ORG 100B JMP CFGR GO TO CONFIGURATION TTY.I BSS 1 TAPE INPUT TTY.O BSS 1 LIST OUTPUT TTY.P BSS 1 PUNCH OUTPUT TTY.K BSS 1 KEYBOARD INPUT DEF FWAM FIRST WORD AVAILABLE MEMORY ORG 126B OCT 103013 DSN BSS 1 EXRTN DEF H77-1 SKP A EQU 0 B EQU 1 CH EQU 10B FERC ABS -FER FER DEF *+1 ERROR NUMBER TABLE DEF E0 DEF E1 DEF E2 DEF E3 DEF E4 DEF E5 DEF E6 DEF E10 DEF E12 DEF E13 DEF E14 DEF E15 DEF E16 DEF E21 DEF E22 DEF E23 DEF E24 DEF E30 DEF E31 DEF E32 DEF E33 DEF E34 DEF E40 DEF E41 DEF E43 DEF E44 DEF E53 DEF E61 DEF E70 DEF E120 DEF E167 DEF E200 DEF E201 DEF E202 DEF E203 DEF E204 DEF E205 DEF E206 DEF E207 DEF E210 DEF E211 DEF E212 DEF E213 DEF E214 DEF E215 DEF E216 DEF E217 DEF E220 DEF E221 DEF E222 DEF E223 DEF E224 DEF E225 DEF E226 DEF E227 DEF E230 DEF E231 DEF E232 DEF E233 LER DEF * SKP CHLT DEF * CODED HALT TABLE HLT 0 HLT 1 HLT 2 HLT 3 HLT 4 HLT 5 HLT 6 HLT 10B HLT 12B HLT 13B HLT 14B HLT 15B HLT 16B HLT 21B HLT 22B HLT 23B HLT 24B HLT 30B HLT 31B HLT 32B HLT 33B HLT 34B HLT 40B HLT 41B HLT 43B HLT 44B HLT 53B HLT 61B HLT 70B OCT 107020 OCT 107067 OCT 103000 OCT 103001 OCT 103002 OCT 103003 OCT 103004 OCT 103005 OCT 103006 OCT 103007 OCT 103010 OCT 103011 OCT 103012 OCT 103013 OCT 103014 OCT 103015 OCT 103016 OCT 103017 OCT 103020 OCT 103021 OCT 103022 OCT 103023 OCT 103024 OCT 103025 OCT 103026 OCT 103027 OCT 103030 OCT 103031 OCT 103032 OCT 103033 SKP FMI DEF * MESSAGE ADDRESS TABLE DEF M0 DEF M1 DEF M2 DEF M3 DEF M4 DEF M5 DEF M6 DEF M10 DEF M12 DEF M13 DEF M14 DEF M15 DEF M16 DEF M21 DEF M22 DEF M23 DEF M24 DEF M30 DEF M31 DEF M32 DEF M33 DEF M34 DEF M40 DEF M41 DEF M43 DEF M44 DEF M53 DEF M61 DEF M70 DEF M120 DEF M167 DEF M200 DEF M201 DEF M202 DEF M203 DEF M204 DEF M205 DEF M206 DEF M207 DEF M210 DEF M211 DEF M212 DEF M213 DEF M214 DEF M215 DEF M216 DEF M217 DEF M220 DEF M221 DEF M222 DEF M223 DEF M224 DEF M225 DEF M226 DEF M227 DEF M230 DEF M231 DEF M232 DEF M233 SKP FML DEF * MESSAGE LENGTH TABLE DEF L0 DEF L1 DEF L2 DEF L3 DEF L4 DEF L5 DEF L6 DEF L10 DEF L12 DEF L13 DEF L14 DEF L15 DEF L16 DEF L21 DEF L22 DEF L23 DEF L24 DEF L30 DEF L31 DEF L32 DEF L33 DEF L34 DEF L40 DEF L41 DEF L43 DEF L44 DEF L53 DEF L61 DEF L70 DEF L120 DEF L167 DEF L200 DEF L201 DEF L202 DEF L203 DEF L204 DEF L205 DEF L206 DEF L207 DEF L210 DEF L211 DEF L212 DEF L213 DEF L214 DEF L215 DEF L216 DEF L217 DEF L220 DEF L221 DEF L222 DEF L223 DEF L224 DEF L225 DEF L226 DEF L227 DEF L230 DEF L231 DEF L232 DEF L233 SKP FIRST DEF *+1 TABLE OF SELECT CODES TO BE DEF CH0 DEF CH1 MODIFIED DEF CH2 DEF CH3 DEF CH4 DEF CH5 DEF CH6 DEF CH7 DEF CH8 DEF CH9 DEF CH10 DEF CH11 DEF CH12 DEF CH13 DEF CH14 DEF CH15 DEF CH16 DEF CH17 DEF CH18 DEF CH19 DEF CH20 DEF CH21 DEF CH22 DEF CH23 DEF CH24 DEF CH25 DEF CH26 DEF CH27 DEF CH28 DEF CH29 DEF CH30 DEF CH31 DEF CH33 DEF CH34 DEF HLTC DEF DCH LAST DEF *-1 SKP A0077 OCT 77 COMMON CONSTANTS AND SYMBOLS A0002 OCT 2 A0003 OCT 3 A0100 OCT 100 THLT OCT 106002 TRAPCELL HALT P0000 OCT 170000 P7700 OCT 177700 NOTTY NOP SAVA NOP SAVB NOP SAVC NOP SAVD NOP SAVE NOP HLTA OCT 106000 A REG TRAP CELL HALT HLTB OCT 106001 B REG HLTC OCT 106000 SELECTED CHANNEL DCH NOP IO NOP SRP NOP CNT1 NOP * ERROR CNT2 NOP * COUNTERS SETXX NOP SWB NOP CRL OCT 2 CRI DEF *+1 OCT 6400 CARRIAGE RETURN DIN NOP SNA NOP SNB NOP P7760 OCT 177760 MSK1 OCT 140000 MN11 DEC -11 TABL DEF *+1 DEC -2 DEC -4 DEC -8 DEC -16 DEC -32 DEC -64 DEC -128 DEC -256 AC OCT 20060 PTNC NOP WD1 NOP CHCNT NOP PAR NOP CNR NOP TRW NOP BTNM NOP A0017 OCT 17 MN8 DEC -8 SKP BT0 OCT 1 BT1 OCT 2 BT2 OCT 4 BT3 OCT 10 BT4 OCT 20 BT5 OCT 40 BT6 OCT 100 BT7 OCT 200 BT8 OCT 400 BT9 OCT 1000 BT10 OCT 2000 BT11 OCT 4000 BT12 OCT 10000 BT13 OCT 20000 BT14 OCT 40000 BT15 OCT 100000 NBT7 OCT 177577 MSK2 OCT 66001 MSK3 OCT 46000 MSK4 OCT 14001 MSK5 OCT 1017 MSK6 OCT 60000 SYNCH OCT 040001 CW1 OCT 160010 CW2 OCT 150610 CW3 OCT 150017 CW4 OCT 150410 CW5 OCT 156016 CW6 OCT 150010 CW7 OCT 154016 CW8 OCT 151017 CW9 OCT 157016 CW10 OCT 155016 CW11 OCT 150014 SEND, AUTO ON CW12 OCT 140014 RCVE, AUTO ON CW13 OCT 151014 SEND, AUTO OFF CW14 OCT 141014 RCVE, AUTO OFF CW15 OCT 140610 CWX NOP CWXX NOP SKP TSNC1 OCT 14 TSNC2 OCT 17 TSNC3 OCT 0 TSYNC OCT 040014 TDATA OCT 3 SNBB NOP P7774 OCT 177774 P7776 OCT -2 DFLAG NOP ASDT DEF ASDTA MG0A DEF M0A MG0B DEF M0B JSB1 JSB R1,I INTERRUPT ROUTINE R1 DEF RETRN ADDRS DEF INTPT+1 STR DEF START SML DEF SL SMI DEF SM J1 JSB *+1,I DEF IJ1 J2 JSB *+1,I DEF IJ2 J3 JSB *+1,I DEF IJ3 J4 JSB *+1,I DEF IJ4 J5 JSB *+1,I DEF IJ5 E25 HLT 25B E35 HLT 35B E45 HLT 45B E54 HLT 54B E62 HLT 62B E121 OCT 107021 E170 OCT 107070 SKP AS0M DEF AS0 AS1M DEF AS1 AS2M DEF AS2 MI7 DEF M7 LM7 DEF L7 MI11 DEF M11 LM11 DEF L11 MG44A DEF G44A MG44B DEF G44B MG53A DEF G53A MG53B DEF G53B MG53C DEF G53C MG53D DEF G53D MI52 DEF M52 LM52 DEF L52 MI65 DEF M65 LM65 DEF L65 MG67A DEF G67A MG67B DEF G67B MG67C DEF G67C MG67D DEF G67D MI77 DEF M77 LM77 DEF L77 MG20A DEF G20A MG20B DEF G20B MG20C DEF G20C MG20D DEF G20D MG33A DEF G33A MG33B DEF G33B MG61A DEF G61A MG61B DEF G61B MI140 DEF M140 LM140 DEF L140 MI176 DEF M176 LM176 DEF L176 LM270 DEF L270 MI270 DEF M270 SKP *** SUBROUTINES *** SPC 2 DATA NOP CHANGE DATA IN A TO ASCII AND STA DX STORE IN LOCATION IN B STB DADD JSB B2ASC CHANGE TWO LEAST SIG CH TO ASCII LDB DADD ADB A0002 MODIFY ADDRESS STA B,I STORE TWO CHARACTERS LDA DX ALF,ALF RAL,RAL JSB B2ASC CHANGE NEXT TWO CH TO ASCII LDB DADD INB MODIFY ADDRESS STA B,I STORE TWO CHARACTERS LDA DX AND P0000 ALF JSB B2ASC CHANGE TWO MOST SIG CH TO ASCII STA DADD,I STORE FINAL TWO CHARACTERS JMP DATA,I EXIT DX BSS 1 DATA TO BE CONVERTED DADD BSS 1 ADDRESS WHERE ASCII CH MUST GO SPC 2 B2ASC NOP CONVERT 2 LEASE SIGNIFICANT AND A0077 DIGITS (IN A) TO ASCII AND LDB A RETURN WITH OCTAL ASCII'S IN A BRS,BRS BRS BLF,BLF AND A0007 IOR B IOR D0060 JMP B2ASC,I A0007 OCT 7 D0060 OCT 30060 ASCII PREFIXES SPC 2 STN NOP * STN CONTAINS LAST TEST START JMP STN,I ADDRESS SPC 2 DELAY NOP DELAYS A FEW HUNDRED MSEC CLA INA,SZA JMP *-1 JMP DELAY,I SPC 2 OTACH NOP CH15 OTA CH JMP OTACH,I SPC 1 LIACH NOP CH16 LIA CH JMP LIACH,I SPC 1 SW13 NOP CHECK SW REG BIT 13 FOR RECYCLE JSB SWR LAST PROGRAM AND BT13 SZA,RSS REPEAT PROGRAM? ISZ SW13 NO JMP SW13,I YES SPC 2 SW15 NOP CHECK SW REG BIT 15 FOR HALTING JSB SWR AT END OF PROGRAM OR CONTINUE SSA AUTOMATICALLY TO NEXT PROGRAM ISZ SW15 NO JMP SW15,I YES SPC 2 SW09 NOP CHECK TO OMIT START AND STOP JSB SWR MESSAGES AND BT9 SZA OMIT MESSAGE? ISZ SW09 YES JMP SW09,I NO SPC 2 SW10 NOP CHECK BIT 10 TO OMIT PRESET JSB SWR TEST AND BT10 SZA,RSS OMIT TEST? ISZ SW10 YES JMP SW10,I NO SPC 2 SW11 NOP CHECK SW REG BIT 11 FOR TTY JSB SWR LDA WITH INTERNAL OR EXT SW REG AND BT11 SZA JMP SW11,I TTY IS SUPPRESSED - RTN *+1 LDA NOTTY SZA,RSS TTY AVAILABLE? ISZ SW11 YES JMP SW11,I NO SKP SW12 NOP CHECK SW REG BIT 12 FOR HALT AT JSB SWR END OF DIAGNOSTIC AND BT12 SZA HALT? ISZ SW12 NO JMP SW12,I YES SPC 1 SW7 NOP CHECK SW REG BIT 7 FOR RECYCLE JSB SWR LAST TEST - LDA WITH INTERNAL AND BT7 SZA BIT 7 JMP STN,I RECYCLE LAST TEST JMP SW7,I NO RECYCLE, RETURN *+1 SKP SW14 NOP CHECK SW REG BIT 14 FOR HALT JSB SWR ON ERRORS AND BT14 SZA ISZ SW14 NO HALT - RETURN *+2 JMP SW14,I HALT ON ERRORS, RETURN *+1 SPC 1 SW8 NOP CHECK SW REG BIT 8 FOR HALT AT JSB SWR END OF TEST AND BT8 TEST BIT 8 SZA,RSS JMP SW8,I EXIT *+1 LDB P7776 ADB SW8 LDA FER FIND CODED HALT T3 CPB A,I JMP T4 FOUND IT INA CPA LER JMP SW8,I EXIT *+1 JMP T3 T4 ADA FERC ADA CHLT LDA A,I STA *+1 NOP HALT JMP SW8,I EXIT *+1 SKP * TWO ERRORS PLUS SW REG SPC 2 MHLT3 NOP ** REPORT ERROR VIA SW REG JSB INR AND A REG JMP MHLT3,I RETURN *+1 LDA SAVA JSB EY4R LDA SAVB JSB EY4R LDA SAVC JSB EY4R ISZ MHLT3 JMP MHLT3,I RETURN *+2 SPC 2 * THREE ERRORS PLUS SW REG SPC 2 MHLT4 NOP ** REPORT ERROR VIA SW REG JSB INR AND A REG JMP MHLT4,I RETURN *+1 LDA SAVA JSB EY4R LDA SAVB JSB EY4R LDA SAVD JSB EY4R LDA SAVC JSB EY4R ISZ MHLT4 JMP MHLT4,I RETURN *+2 SPC 2 * FOUR ERRORS PLUS SW REG SPC 2 MHLT5 NOP ** REPORT ERROR VIA SW REG JSB INR AND A REG JMP MHLT5,I RETURN *+1 LDA SAVA JSB EY4R LDA SAVB JSB EY4R LDA SAVD JSB EY4R LDA SAVE JSB EY4R LDA SAVC RESTORE SW REG JSB EY4R ISZ MHLT5 JMP MHLT5,I RETURN *+2 SKP INR NOP ** RETURN *+2 IF NO STA EY4 TTY SELECTED LDA NOTTY SZA,RSS JMP INR,I RTN *+1 LIA 1 STA SAVC SAVE SW REG ISZ INR JMP INR,I RTN *+2 SPC 2 EY4R NOP ** OUTPUT TO SWITCH REGISTER OTA 1 LDB SAVC RBL SSB,RSS HALT SELECTED? EY4 HLT 0 YES ISZ EY4 JMP EY4R,I SPC 2 ERROR NOP ERROR REPORTING ROUTINE CLF 0 DISABLE INTERRUPTS CCB ADB ERROR LDA FER FIND ERROR NUMBER BASED ON RETRN T1 CPB A,I ADDRESS AND TABLE JMP T2 FOUND IT INA CPA LER END OF TABLE? JMP ERROR,I YES, EXIT ERROR ROUTINE JMP T1 CONTINUE SEARCH T2 ADA FERC NORMALIZE NUMBER STA SETXX JSB SW11 TTY SUPPRESSED? JMP NOH YES LDA SETXX NO LDB FMI MESSAGE ADDRESS TABLE ADB A LDB B,I MESSAGE ADDRESS INTO B ADA FML LDA A,I MESSAGE LENGTH INTO A JSB TTY.O,I TYPE MESSAGE NOH ISZ CNT2 COUNT ERRORS. LEAST SIG IN RSS CNT2 AND MOST SIG IN CNT1 ISZ CNT1 NOP LDB CHLT CODED HALT TABLE ADB SETXX LDB B,I CODED HALT IN B STB EXX JSB SW14 ERROR HALT? EXX HLT 0 YES, SO HALT JMP ERROR,I EXIT ERROR ROUTINE SKP TTSK NOP CHECKS FOR PRINTOUT SELECTION CLF 0 DISABLE INTERRUPTS LDB TTSK ADB A0003 MODIFY RETURN ADDRESS STB SWB JSB SW11 TTY SUPPRESSED? JMP SWB,I YES, SKIP PRINTOUT JMP TTSK,I NO, EXIT AND PRINT SPC 2 PARTY NOP STUFF PARITY MODE INTO MESSAGE STB ADRS PAR IN A, ADDRESS IN B LDB AS0M SZA JMP YE LDA B,I NO PARITY YA STA ADRS,I INB LDA B,I ISZ ADRS STA ADRS,I JMP PARTY,I EXIT YE CPA A0002 JMP YO LDB AS1M EVEN PARITY LDA B,I JMP YA YO LDB AS2M ODD PARITY LDA B,I JMP YA ADRS NOP SPC 2