ASMB,R,L,T HED CPU PSEUDO ON LINE VERIFICATION NAM RODFK 91711-16002 REV 1813 780321 SUP A EQU 0 B EQU 1 SWREG EQU 1 * ENT RODFK EXT .ENTR * ERRFG NOP ERCNT NOP RODFK NOP JSB .ENTR DEF ERRFG * * * ONLY SINGLE OPERATION INSTRUCTIONS ARE TESTED. * IT IS ASSUMED THAT COMBINATIONS AFTER INITIAL * TEST WILL WORK (NOT NECESSARILY TRUE) * * INSTRUCTIONS ARE TESTED IN THE FOLLOWING SEQUENCE: * * RSS SOS SOC STO CLO CLE SEZ CCE CME * CL* SZ* SL* SS* CC* CP* ST* LD* IN* CM* (* = A/B-REG) * OT* LI* MI* TO & FROM S-REG (* = A/B-REG) * STA B,I STB A,I LDA B,I LDB A,I CPA B,I CPB A,I * JMP JSB JSB,I * AND XOR IOR ISZ ADA ADB * ALS ARS RAL RAR ALR ALF (BITS 8-6) * ALS ARS RAL RAR ALR ALF (BITS 2-0) * ELA ERA (BITS 8-6) ELA ERA (BITS 2-0) * * SPC 5 * ARITHMETIC SETTING OF E & O REGISTERS (INA ADA INB ADB) * * EXTEND & OVERFLOW REGISTER RESULTS * * * AD* MEM TO REG. = REG. OVF EXT * + + + 0 0 * + + - 1 0 * + - + 0 1 * - + + 0 1 * - + - 0 0 * + - - 0 0 * - - - 0 1 * - - + 1 1 SKP * RSS JSB ASG RSS FAILED OR I/O CAUSED SKIP JMP *+2 RSS JMP *+4 RSS JMP *+3 JSB MRG JMP FAILED JMP *-2 * STO SOC SOS JSB IOG STO / SOC / SOS CLO SOS SOC JSB IOG CLO / SOS / SOC CLE SEZ,RSS SEZ JSB IOG CLE / SEZ,RSS / SEZ CCE SEZ SEZ,RSS JSB IOG CCE / SEZ / SEZ,RSS CME SEZ,RSS SEZ JSB IOG CME / SEZ / SEZ,RSS * CLA SZA JSB ASG SLA JSB ASG SSA JSB ASG CLA SZA SLA SSA CLB SZB JSB ASG SLB JSB ASG SSB JSB ASG CLB / SZB / SLB / SSB * SKP * CCA SZA RSS JSB ASG SLA RSS JSB ASG SSA RSS JSB ASG CCA/SZA/SLA/SSA * CCB SZB RSS JSB ASG SLB RSS JSB ASG SSB RSS JSB ASG CCB/SZB/SLB/SSB * CLA CCB STA TMPA STB TMPB CPA B0 RSS JSB MRG CLA/CPA/SZA CLB CPB B0 RSS JSB MRG CLB/CPB * SKP CPA M1 JSB MRG CPA LDA TMPB LDB TMPA SZA CPA B0 JSB MRG STB/LDA CPB B0 SZB JSB MRG STA/LDB SOS SEZ JSB MRG E / O SET INB CPB B1 RSS JSB ASG SOS SEZ JSB ASG E / O SET INA CPA B0 RSS JSB ASG INB SEZ SOC JSB ASG E NOT SET / O SET CLE SZB SZA JSB ASG INA/INB CPB B1 RSS JSB ASG INB SKP * CCA CLB STA TMPA STB TMPB CPA M1 RSS JSB ASG CCA/CPA CCB CPB M1 RSS JSB ASG CCB/CPB SZA,RSS JSB ASG CCA/CPA/SZA,RSS SZB RSS JSB ASG CCB/CPB/SZB,RSS CPA B0 JSB MRG CPA LDA TMPB LDB TMPA SZA,RSS CPA M1 JSB MRG STB/LDA CPB M1 SZB,RSS JSB MRG STA/LDB SOS SEZ JSB MRG E / O SET INA CPA B1 RSS JSB MRG INA/CPA SOS SEZ JSB MRG E / O SET INB CPB B0 INB/CPB RSS JSB MRG SEZ SOC JSB MRG E NOT SET / O SET CLE SZB,RSS SZA,RSS JSB ASG INA/INB CPA B1 RSS JSB ASG INA SKP * LDA ALT0 LDB ALT1 STA TMPA STB TMPB CPA ALT0 RSS JSB MRG LDA/CPA CPB ALT1 RSS JSB MRG LDB/CPB LDA TMPB LDB TMPA CPA ALT1 RSS JSB MRG LDA/STB CPB ALT0 RSS JSB MRG LDB/STA INA INB CPA ALT1A RSS JSB ASG INA CPB ALT0A RSS JSB ASG INB SKP * CLA CCB CMA CMB CPA M1 SZB JSB ASG CMA / CMB SSA SSB JSB ASG SSA / SSB SLA SLB JSB ASG SLA / SLB CMA CMB CPB M1 SZA JSB ASG CMA / CMB SSB SSA JSB ASG SSA / SSB SLB SLA JSB ASG SLA / SLB LDA ALT0 LDB ALT1 CMA CMB CPA ALT1 RSS JSB ASG CMA CPB ALT0 RSS JSB ASG CMB SKP * * CHECK SWITCH REGISTER I/O * LIA SWREG GET AND STA SWRX SAVE S-REG. LDB M20 SET ERR COUNT SREGT LDA ALT0 TRY ALTERNATING PATTERNS OTA SWREG CLA LIA SWREG CPA ALT0 RSS JMP ERVF LDA ALT1 OTHER PATTERN OTA SWREG CLA LIA SWREG CPA ALT1 RSS JMP ERVF CCA TRY OUTPUTING OTA SWREG ALL ONE'S CLA LIA SWREG NOW GET IT BACK CPA M1 DID IT ECHO THE 1'S? RSS JMP ERVF NO CLA TRY OUTPUTING OTA SWREG ALL ZERO'S CLA LIA SWREG GET IT BACK SZA OK JMP ERVF NO SOS SEZ,RSS JMP *+5 * ERVF INB INCR ERR COUNT SZB JMP SREGT OK. ERR CAUSED BY SYST INTRPT JSB IOG S-REG ERR * SKP * LDB M20 SET ERR COUNT SREGU LDA ALT0 TRY ALTERNATING PATTERNS OTA SWREG CLA MIA SWREG CPA ALT0 RSS JMP ERVF1 LDA ALT1 OTHER PATTERN OTA SWREG CLA MIA SWREG CPA ALT1 RSS JMP ERVF1 CCA TRY OUTPUTING OTA SWREG ALL ONE'S CLA MIA SWREG NOW GET IT BACK CPA M1 DID IT ECHO THE 1'S? RSS JMP ERVF1 NO CLA TRY OUTPUTING OTA SWREG ALL ZERO'S CLA MIA SWREG GET IT BACK SZA OK JMP ERVF1 NO SOS SEZ,RSS JMP *+5 * ERVF1 INB INCR ERR COUNT SZB JMP SREGU OK. ERR CAUSED BY SYST INTRPT JSB IOG S-REG ERR LDA SWRX OTA SWREG RESTORE ORIG S-REG * SKP * LDA DTMPB LDB DTMPA STA B,I STB A,I CPA TMPA RSS JSB MRG STA B,I/STB A,I CPB TMPB RSS JSB MRG STA B,I/STB A,I LDA B,I LDB A,I CPA TMPA RSS JSB MRG LDA B,I CPB TMPB RSS JSB MRG LDB A,I LDA A,I LDB B,I CPA B,I RSS JSB MRG CPA B,I/LDA A,I CPB A,I RSS JSB MRG CPB A,I/LDB B,I * CLA STA JB0 STA JB1 JSB *+2 JBR0 JSB MRG JSB JB0 NOP LDA *-1 CPA DJBR0 RSS JSB MRG JSB RETURN ADDRESS CLA JSB *+2,I JBR1 JSB MRG JSB ,I DEF *+3 JSB MRG JSB ,I JSB MRG JSB ,I JB1 NOP LDA *-1 CPA DJBR1 RSS JSB MRG JSB ,I RETURN ADDRESS SKP * CCA AND B0 SZA JSB MRG AND LDA ALT0 AND ALT1 SZA JSB MRG AND LDA ALT1 AND ALT0 SZA JSB MRG AND CCA AND ALT0 CPA ALT0 RSS JSB MRG AND CCA AND ALT1 CPA ALT1 RSS JSB MRG AND * CLA XOR B0 SZA JSB MRG XOR XOR ALT0 CPA ALT0 RSS JSB MRG XOR XOR ALT1 CPA M1 RSS JSB MRG XOR XOR ALT0 CPA ALT1 RSS JSB MRG XOR XOR ALT1 SZA JSB MRG XOR CCA XOR M1 SZA JSB MRG XOR SKP * CLA IOR B0 SZA JSB MRG IOR IOR ALT0 CPA ALT0 RSS JSB MRG IOR IOR ALT1 CPA M1 RSS JSB MRG IOR CLA IOR ALT1 CPA ALT1 RSS JSB MRG IOR IOR ALT0 CPA M1 RSS JSB MRG IOR SKP * CLA CLB STA TMPA L01 CPA B100K RSS JMP *+5 SOC SEZ JSB IOG E SET / O NOT SET CLO SOS SEZ JSB IOG E / O SET INA SZA,RSS JMP NXT01 INB SZB,RSS JSB ASG INB ISZ TMPA RSS JSB MRG ISZ CPA TMPA RSS JSB MRG ISZ / INA CPB A JMP L01 JSB MRG ISZ / INB NXT01 SEZ SOC JSB MRG E NOT SET / O SET CLE INB SEZ SOC JSB ASG E NOT SET / O SET CLE SZB JSB MRG INB ISZ TMPA JSB MRG ISZ SOS SEZ JSB MRG E / O SET SKP * CLA CCB ADA B1 SOS SEZ JSB MRG E / O SET ADB B1 SEZ SOC JSB MRG E NOT SET / O SET CLE CPA B1 SZB JSB MRG ADA/ADB CCA CLB ADB B1 SOS SEZ JSB MRG E / O SET ADA B1 SEZ SOC JSB MRG E NOT SET / O SET CLE CPB B1 SZA JSB MRG ADA/ADB CLA CCB ADA M1 SOS SEZ JSB MRG E / O SET ADB M1 SEZ SOC JSB MRG E NOT SET / O SET CLE CPA M1 RSS JSB MRG ADA CPB M2 RSS JSB MRG ADB CCA CLB ADB M1 SOS SEZ JSB MRG E / O SET ADA M1 SEZ SOC JSB MRG E NOT SET / O SET CLE CPA M2 RSS JSB MRG ADA CPB M1 RSS JSB MRG ADB LDA ALT0 LDB ALT1 ADB ALT1 SOC SEZ JSB MRG E SET / O NOT SET CLO ADA ALT1A SEZ SOC JSB MRG E NOT SET / O SET CLE CPB ALT0 SZA JSB MRG ADA/ADB LDA ALT1 LDB ALT0 ADA ALT0 SOS SEZ JSB MRG E / O SET ADB ALT1A SEZ SOC JSB MRG E NOT SET / O SET CLE CPA M1 SZB JSB MRG ADA/ADB SKP * BPJP0 JMP *+2,I JSB MRG JMP ,I DEF *+3 JSB MRG JMP ,I JSB MRG " JMP *+2,I JSB MRG " DEF CPJP0 JSB MRG JSB MRG BPJP1 JMP *+2,I JSB MRG DEF CPJP1 JSB MRG JSB MRG * BPJB0 NOP LDA *-1 CPA DJBR2 RSS JSB MRG JSB JSB *+2,I JBR5 JSB MRG JSB ,I DEF CPJB0 JSB MRG " JSB MRG " * SKP * * STORAGE AND CONSTANTS * B0 OCT 0 B1 OCT 1 B2 OCT 2 B4 OCT 4 B10 OCT 10 B20 OCT 20 B100K OCT 100000 M1 OCT -1 M2 OCT -2 M20 OCT -20 TMPA OCT -1 TMPB OCT 0 SWRX NOP ALT0 OCT 125252 ALT1 OCT 052525 ALT0A OCT 125253 ALT1A OCT 052526 * DTMPA DEF TMPA DTMPB DEF TMPB DJBR0 DEF JBR0 DJBR1 DEF JBR1 DJBR2 DEF JBR2 * SKP * LDB ALT1 LDA ALT0 STA TMPA STB TMPB CPA ALT0 RSS JSB MRG LDA/CPA CPB ALT1 RSS JSB MRG " " LDB TMPA LDA TMPB CPA ALT1 RSS JSB MRG STB/CPA CPB ALT0 RSS JSB MRG STA/CPB * JMP *+2 JSB MRG JMP JMP *+4 JSB MRG JMP JMP *+4 JSB MRG JMP JMP *-2 JSB MRG JMP * JMP BPJP0 JSB MRG JMP CPJP0 JMP *+2,I JSB MRG JMP ,I DEF BPJP1 JSB MRG JMP ,I JSB MRG " CPJP1 JMP *+2,I JSB MRG " DEF *+3 JSB MRG " JSB MRG " * CLA STA .JB0 STA .JB1 STA BPJB0 STA CPJB0 JSB *+2 JBR3 JSB MRG JSB .JB0 NOP LDA *-1 CPA DJBR3 RSS JSB MRG JSB (RETURN ADRESS) JSB *+2,I JBR4 JSB MRG JSB ,I DEF *+3 JSB MRG " JSB MRG " .JB1 NOP LDA *-1 CPA DJBR4 RSS JSB MRG JSB ,I (RETURN ADDRESS) JSB BPJB0 JBR2 JSB MRG JSB CPJB0 NOP LDA *-1 CPA DJBR5 RSS JSB MRG JSB ,I SKP * LDA SRGP1 1000100100100111 LDB SRGP2 1001100000100000 ALS 1001001001001110 BRS 1100110000010000 ARS 1100100100100111 BLR 0001100000100000 ALS 1001001001001110 BLF 1000001000000001 RAR 0100100100100111 BLS 1000010000000010 ARS 0010010010010011 RBR 0100001000000001 ALR 0100100100100110 BLS 0000010000000010 RAL 1001001001001100 BLF 0100000000100000 ARS 1100100100100110 RBL 1000000001000000 ALR 0001001001001100 BRS 1100000000100000 ALF 0010010011000001 RBL 1000000001000001 RAL 0100100110000010 BRS 1100000000100000 ALS 0001001100000100 RBR 0110000000010000 RAR 0000100110000010 BLR 0100000000100000 ALF 1001100000100000 BLS 0000000001000000 CPA SRGP2 RSS JSB SRG SRG INST A-REG. CPB SRGP3 RSS JSB SRG SRG INST B-REG. SOS SEZ JSB SRG E / O SET SKP * LDB SRGP1 1000100100100111 LDA SRGP2 1001100000100000 BLS 1001001001001110 ARS 1100110000010000 BRS 1100100100100111 ALR 0001100000100000 BLS 1001001001001110 ALF 1000001000000001 RBR 0100100100100111 ALS 1000010000000010 BRS 0010010010010011 RAR 0100001000000001 BLR 0100100100100110 ALS 0000010000000010 RBL 1001001001001100 ALF 0100000000100000 BRS 1100100100100110 RAL 1000000001000000 BLR 0001001001001100 ARS 1100000000100000 BLF 0010010011000001 RAL 1000000001000001 RBL 0100100110000010 ARS 1100000000100000 BLS 0001001100000100 RAR 0110000000010000 RBR 0000100110000010 ALR 0100000000100000 BLF 1001100000100000 ALS 0000000001000000 CPB SRGP2 RSS JSB SRG SRG INST B-REG. CPA SRGP3 RSS JSB SRG SRG INST A-REG. SOS SEZ JSB SRG E / O SET SKP * LDA SRGP1 1000100100100111 LDB SRGP2 1001100000100000 OCT 0020 ALS 1001001001001110 OCT 4021 BRS 1100110000010000 OCT 0021 ARS 1100100100100111 OCT 4024 BLR 0001100000100000 OCT 0020 ALS 1001001001001110 OCT 4027 BLF 1000001000000001 OCT 0023 RAR 0100100100100111 OCT 4020 BLS 1000010000000010 OCT 0021 ARS 0010010010010011 OCT 4023 RBR 0100001000000001 OCT 0024 ALR 0100100100100110 OCT 4020 BLS 0000010000000010 OCT 0022 RAL 1001001001001100 OCT 4027 BLF 0100000000100000 OCT 0021 ARS 1100100100100110 OCT 4022 RBL 1000000001000000 OCT 0024 ALR 0001001001001100 OCT 4021 BRS 1100000000100000 OCT 0027 ALF 0010010011000001 OCT 4022 RBL 1000000001000001 OCT 0022 RAL 0100100110000010 OCT 4021 BRS 1100000000100000 OCT 0020 ALS 0001001100000100 OCT 4023 RBR 0110000000010000 OCT 0023 RAR 0000100110000010 OCT 4024 BLR 0100000000100000 OCT 0027 ALF 1001100000100000 OCT 4020 BLS 0000000001000000 CPA SRGP2 RSS JSB SRG SRG INST A-REG. CPB SRGP3 RSS JSB SRG SRG INST B-REG. SOS SEZ JSB SRG E / O SET SKP * LDB SRGP1 1000100100100111 LDA SRGP2 1001100000100000 OCT 4020 BLS 1001001001001110 OCT 0021 ARS 1100110000010000 OCT 4021 BRS 1100100100100111 OCT 0024 ALR 0001100000100000 OCT 4020 BLS 1001001001001110 OCT 0027 ALF 1000001000000001 OCT 4023 RBR 0100100100100111 OCT 0020 ALS 1000010000000010 OCT 4021 BRS 0010010010010011 OCT 0023 RAR 0100001000000001 OCT 4024 BLR 0100100100100110 OCT 0020 ALS 0000010000000010 OCT 4022 RBL 1001001001001100 OCT 0027 ALF 0100000000100000 OCT 4021 BRS 1100100100100110 OCT 0022 RAL 1000000001000000 OCT 4024 BLR 0001001001001100 OCT 0021 ARS 1100000000100000 OCT 4027 BLF 0010010011000001 OCT 0022 RAL 1000000001000001 OCT 4022 RBL 0100100110000010 OCT 0021 ARS 1100000000100000 OCT 4020 BLS 0001001100000100 OCT 0023 RAR 0110000000010000 OCT 4023 RBR 0000100110000010 OCT 0024 ALR 0100000000100000 OCT 4027 BLF 1001100000100000 OCT 0020 ALS 0000000001000000 CPB SRGP2 RSS JSB SRG SRG INST B-REG. CPA SRGP3 RSS JSB SRG SRG INST A-REG. SOS SEZ JSB SRG E / O SET SKP * LDA SRGEP 0111010001110010 LDB SRGEP 0111010001110010 ERA 0011101000111001 0 ELB 0 1110100011100100 ERA 0001110100011100 1 ELB 1 1101000111001001 ERA 1000111010001110 0 ELB 1 1010001110010010 ERA 1100011101000111 0 ELB 1 0100011100100100 ERA 1110001110100011 1 ELB 0 1000111001001001 ERA 0111000111010001 1 ELB 1 0001110010010011 ERA 1011100011101000 1 ELB 0 0011100100100111 ERA 0101110001110100 0 ELB 0 0111001001001110 ERB 0 0011100100100111 ELA 1011100011101000 0 ERB 1 0001110010010011 ELA 0111000111010001 1 ERB 1 1000111001001001 ELA 1110001110100011 0 ERB 1 0100011100100100 ELA 1100011101000111 1 ERB 0 1010001110010010 ELA 1000111010001110 1 ERB 0 1101000111001001 ELA 0001110100011100 1 ERB 1 1110100011100100 ELA 0011101000111001 0 ERB 0 0111010001110010 ELA 0111010001110010 0 CPA SRGEP RSS JSB SRG SRG E-REG ERROR CPB SRGEP RSS JSB SRG SRG E-REG ERROR SOS SEZ JSB SRG E / O SET SKP * LDA SRGEP 0111010001110010 LDB SRGEP 0111010001110010 OCT 0025 ERA 0011101000111001 0 OCT 4026 ELB 0 1110100011100100 OCT 0025 ERA 0001110100011100 1 OCT 4026 ELB 1 1101000111001001 OCT 0025 ERA 1000111010001110 0 OCT 4026 ELB 1 1010001110010010 OCT 0025 ERA 1100011101000111 0 OCT 4026 ELB 1 0100011100100100 OCT 0025 ERA 1110001110100011 1 OCT 4026 ELB 0 1000111001001001 OCT 0025 ERA 0111000111010001 1 OCT 4026 ELB 1 0001110010010011 OCT 0025 ERA 1011100011101000 1 OCT 4026 ELB 0 0011100100100111 OCT 0025 ERA 0101110001110100 0 OCT 4026 ELB 0 0111001001001110 OCT 4025 ERB 0 0011100100100111 OCT 0026 ELA 1011100011101000 0 OCT 4025 ERB 1 0001110010010011 OCT 0026 ELA 0111000111010001 1 OCT 4025 ERB 1 1000111001001001 OCT 0026 ELA 1110001110100011 0 OCT 4025 ERB 1 0100011100100100 OCT 0026 ELA 1100011101000111 1 OCT 4025 ERB 0 1010001110010010 OCT 0026 ELA 1000111010001110 1 OCT 4025 ERB 0 1101000111001001 OCT 0026 ELA 0001110100011100 1 OCT 4025 ERB 1 1110100011100100 OCT 0026 ELA 0011101000111001 0 OCT 4025 ERB 0 0111010001110010 OCT 0026 ELA 0111010001110010 0 CPA SRGEP RSS JSB SRG SRG E-REG ERROR CPB SRGEP RSS JSB SRG SRG E-REG ERROR SOS SEZ JSB SRG E / O SET * SKP * CLA STA ALTX STA ALTX+1 DLD ALT0 CPA ALT0 CPB ALT0 JSB EAU DLD CPB ALT1 CPA ALT1 JSB EAU DLD DST ALTX CPA ALTX CPB ALTX JSB EAU DST CPB ALTX+1 CPA ALTX+1 JSB EAU DST * ASR 1 ASL 2 ASR 5 ASL 7 CPA P5240 SOS JSB EAU ASR/ASL CPB P2525 CPA ALT1 JSB EAU ASR/ASL * CLO DLD ALT0 LSR 1 LSL 2 LSR 5 LSL 7 CPA P5240 SOC JSB EAU LSR/LSL CPB P1252 CPA ALT1 JSB EAU * SKP * DLD ALT0 RRR 2 RRL 4 RRR 3 RRL 7 RRR 1 RRL 11 CPA ALT1 CPB ALT0 RSS JSB EAU RRR/RRL SOC JSB EAU * STO LDA ALT0 MPY ALT1 CPA MPYA1 SOC JSB EAU MPY CPB MPYB1 RSS JSB EAU STO LDA ALT1 MPY ALT1 CPA MPYA2 SOC JSB EAU MPY CPB MPYB2 RSS JSB EAU * CLO DLD ALT0 BRS,BRS DIV P7777 CPA DIVA1 SOC JSB EAU DIV CPB ALT1 RSS JSB EAU DIV CLO DLD ALT0 DIV B0 CPA ALT0 SOS JSB EAU DIV CPB ALT1 RSS JSB EAU DIV * JMP RODFK,I EXIT SUBROUTINE SKP ALTX OCT 0 OCT 0 SRGP1 OCT 104447 1000100100100111 SRGP2 OCT 114040 1001100000100000 SRGP3 OCT 000100 SRGEP OCT 072162 011010001110010 P5240 OCT 52400 P2525 OCT 25255 P1252 OCT 125255 MPYA1 OCT 016162 MPYB1 OCT 161616 MPYA2 OCT 107071 MPYB2 OCT 016161 DIVA1 OCT 025253 P7777 OCT 77777 DJBR3 DEF JBR3 DJBR4 DEF JBR4 DJBR5 DEF JBR5 * * * MRG NOP LDA B1 JSB ERR JMP MRG,I * ASG NOP LDA B2 JSB ERR JMP ASG,I * SRG NOP LDA B4 JSB ERR JMP SRG,I * IOG NOP LDA B10 JSB ERR JMP IOG,I * EAU NOP LDA B20 JSB ERR JMP EAU,I * SKP * ERR NOP IOR ERRFG,I STA ERRFG,I LDA ERCNT,I CPA P7777 RSS INA STA ERCNT,I JMP ERR,I * END