Moved all the KA10 diagnostics into a ka10 folder
This commit is contained in:
parent
afd621dc79
commit
6eba847a18
57 changed files with 76 additions and 53 deletions
362
apps/pdp10/diags/ka10/FIXED.KLM.txt
Normal file
362
apps/pdp10/diags/ka10/FIXED.KLM.txt
Normal file
|
|
@ -0,0 +1,362 @@
|
|||
SUBTTL *FIXED* FIXED CONTROL AND DISPATCH STORAGE, SEPT 18,1979
|
||||
|
||||
LOC 30000
|
||||
|
||||
; **********************************************************************
|
||||
;PROGRAM STARTING ADDRESSES
|
||||
;THESE ADDRESSES CALL VARIOUS SPECIAL START ROUTINES AND OR OPTIONS
|
||||
;NORMAL START ADDRESS IS 30000 ALL OTHERS ARE SPECIAL. INVOKED BECAUSE
|
||||
;OF END OF PASS, POWER FAILURE, DDT START, RE-ENTERING(TYPICALLY USER
|
||||
;MODE), OR ANY NUMBER OF SPECIAL FEATURE TESTS.
|
||||
; **********************************************************************
|
||||
|
||||
BEGIN: JRST @MODLNK ;STAND-ALONE START
|
||||
$START: JRST START ;MODE CHECK STARTING ADDRESS
|
||||
|
||||
DIAGMN: JRST @LDLNK ;DIAGNOSTIC MONITOR START
|
||||
|
||||
SYSEXR: JRST @LDLNK ;SYSTEM EXERCISER START
|
||||
|
||||
SFSTRT: JRST SADR1 ;SPECIAL FEATURE START
|
||||
|
||||
PFSTRT: JRST SADR2 ;POWER FAIL RESTART
|
||||
|
||||
REENTR: JRST SADR3 ;REENTER START(USUALLY USER MODE ONLY)
|
||||
|
||||
SRTDDT: ;COMMONLY MISTAKEN NAME FOR "DDTSRT"
|
||||
DDTSRT: JRST @DDTLNK ;DDT START
|
||||
|
||||
BEGIN1: JRST STARTA ;LOOP START(END OF PASS COMES HERE)
|
||||
SBINIT: JRST @SUBLNK ;PMGINT LINKAGE
|
||||
RETURN: 0 ;RETURN ADDRESS STORAGE
|
||||
|
||||
START1: SADR7 ;OPTIONAL STARTING ADR/INSTRUCTIONS
|
||||
START2: SADR8 ; "
|
||||
START3: SADR9 ; "
|
||||
START4: SADR10 ; "
|
||||
START5: SADR11 ; "
|
||||
; **********************************************************************
|
||||
;PROGRAM FIXED PARAMETER AREA
|
||||
; **********************************************************************
|
||||
|
||||
PNTNAM: PAREA3 ;SIXBIT PROGRAM NAME
|
||||
PNTEXT: PAREA4 ;SIXBIT PROGRAM EXTENSION
|
||||
RANDBS: PAREA1 ;RANDOM BASE NUMBER
|
||||
SWTEXR: PAREA2 ;SYSTEM EXERCISER SWITCHES
|
||||
ITRCNT: ITERAT ;PROGRAM ITERATIONS
|
||||
$PNAME: PGMNAM ;POINTER TO PROGRAMS NAME
|
||||
$PVER: MCNVER,,DECVER ;MCN & DEC VERSION LEVEL
|
||||
$MODVL: MODDVL ;DEVICE CODE CHANGE LOWER LIMIT
|
||||
$MODVU: MODDVU ;DEVICE CODE CHANGE UPPER LIMIT
|
||||
$EMODE: IFNDEF EXCASB,<0> IFDEF EXCASB,<-1> ;EXEC ALLOWED
|
||||
$UMODE: IFNDEF USRASB,<0> IFDEF USRASB,<-1> ;USER ALLOWED
|
||||
$DSKUP: IFNDEF DSKUPD,<0> IFDEF DSKUPD,<-1> ;DISK UPDATE MODE
|
||||
$MMAP: IFNDEF MEMMAP,<0> IFDEF MEMMAP,<-1> ;ALLOW MEMORY RTNS
|
||||
PAREA7: PAREA5 ;OPTIONAL PARAMETER
|
||||
PAREA8: PAREA6 ;OPTIONAL PARAMETER
|
||||
|
||||
; **********************************************************************
|
||||
;PROGRAM VARIABLE PARAMETER AREA
|
||||
; **********************************************************************
|
||||
|
||||
USER: 0 ; 0 = EXEC, -1 = USER MODE FLAG
|
||||
KAIFLG: 0 ;PROCESSOR TYPE, 0 = KA10, -1 = KI10
|
||||
KLFLG: 0 ;PROCESSOR TYPE, 0 = KA/KI, -1 = KL10
|
||||
MONFLG: -1 ;DIAG MONITOR SPECIAL USER FLAG
|
||||
MONCTL: 0 ;DIAG MON/SYS EXR FLAG
|
||||
MONTEN: 0 ;-1= LOADED BY 10
|
||||
CLOCKF: 0 ;CLOCK TICKED FLAG
|
||||
CONSW: 0 ;CONSOLE SWITCH SETTINGS
|
||||
PASCNT: 0 ;PROGRAM PASS COUNT
|
||||
RUNFLG: 0 ;PROGRAM RUN FLAG
|
||||
TESTPC: 0 ;SUBTEST PC
|
||||
ERRPC: 0 ;ERROR PC
|
||||
ERRTLS: 0 ;ERROR TOTALS
|
||||
TICKS: 0 ;PROGRAM RUNNING TIME
|
||||
MARGIN: 0 ;KI10 MARGIN WORD VALUE
|
||||
$ONETM: 0 ;SUBROUTINE INITIALIZATION FLAG
|
||||
; **********************************************************************
|
||||
;SPECIAL PROGRAM DISPATCH ADDRESSES
|
||||
; **********************************************************************
|
||||
|
||||
BEGEND: ENDUUO ;END OF PASS
|
||||
$BEND1: JRST BEGIN1 ;KEEP RUNNING PROGRAM
|
||||
$BEND2: EOPUUO ;END OF PROGRAM - NO RETURN
|
||||
CNTLC: SADR5 ;CONTROL C XFER ADDRESS
|
||||
ALTMGO: SADR6 ;ALTMODE XFER ADDRESS
|
||||
CPOPJ1: ;SKIP RETURN
|
||||
UUOSKP: AOS (P) ;SKIP RETURN FROM UUO
|
||||
CPOPJ: ;NON-SKIP REGULAR RETURN
|
||||
UUOEXT: RTN ;UUO RETURN
|
||||
UUORTN: JFCL ;ADDITIONAL USERS UUO ROUTINE
|
||||
$UORTX: JFCL ;ADDITIONAL UUO LINKAGE
|
||||
$UUOER: JFCL ;INITED AS (JRST $UOERX)
|
||||
$ITRHL: JFCL ;ADDITIONAL INTERRUPT LINKAGE
|
||||
$ITRX1: JFCL ; "
|
||||
$USRHL: JFCL ; "
|
||||
$RSRTX: JFCL ;ADDITIONAL POWER FAIL LINKAGE
|
||||
$RSRTY: JFCL ; "
|
||||
RESRT1: JFCL ; INITED AS (JRST RESRTX)
|
||||
RESRT2: JFCL ; "
|
||||
$PARER: JFCL ;ADDITIONAL PARITY ERROR LINKAGE
|
||||
ERMORE: JFCL ;ADDITIONAL ERROR HANDLER LINKAGE
|
||||
HALT . ;IMPROPER TRANSFER HALT
|
||||
|
||||
$PSHER: 0 ;INITED AS (JRST PSHERR)
|
||||
ITRCH1: 0 ;PC & FLAGS OF CURRENT INTERRUPT
|
||||
0 ;INITED AS (JRST $ITRC1)
|
||||
|
||||
; **********************************************************************
|
||||
;PROCESSOR CONTROL STORAGE
|
||||
; **********************************************************************
|
||||
|
||||
$ACC0: 0 ;INTERRUPT SAVED AC0
|
||||
$SVPI: 0 ;INTERRUPT SAVED PI
|
||||
$SVAPR: 0 ;INTERRUPT SAVED APR
|
||||
$SVPAG: 0 ;INTERRUPT SAVED PAG (DATAI)
|
||||
$SPAG1: 0 ;INTERRUPT SAVED PAG (CONI)
|
||||
|
||||
$SVUUO: 0 ;CURRENT USERS UUO
|
||||
$SVUPC: 0 ;PC OF CURRENT USERS UUO
|
||||
|
||||
REPTU: 0 ;REPEAT UUO ITERATIONS
|
||||
SCOPE: 0 ;ERROR HANDLER SCOPE LOOP FLAG
|
||||
%CORFLG:0 ; " CORRECT FLAG
|
||||
%COREC: 0 ; " CORRECT DATA
|
||||
%ACTFL: 0 ; " ACTUAL FLAG
|
||||
%ACTUL: 0 ; " ACTUAL DATA
|
||||
%DISCR: 0 ; " DISCREPENCY DATA
|
||||
; **********************************************************************
|
||||
;UUO DISPATCH TABLE
|
||||
; **********************************************************************
|
||||
XLIST
|
||||
IFNDEF LUUO1,<LUUO1=$UUOER>
|
||||
IFNDEF LUUO2,<LUUO2=$UUOER>
|
||||
IFNDEF LUUO3,<LUUO3=$UUOER>
|
||||
IFNDEF LUUO4,<LUUO4=$UUOER>
|
||||
IFNDEF LUUO5,<LUUO5=$UUOER>
|
||||
IFNDEF LUUO6,<LUUO6=$UUOER>
|
||||
IFNDEF LUUO7,<LUUO7=$UUOER>
|
||||
IFNDEF LUUO10,<LUUO10=$UUOER>
|
||||
IFNDEF LUUO11,<LUUO11=$UUOER>
|
||||
IFNDEF LUUO12,<LUUO12=$UUOER>
|
||||
IFNDEF LUUO13,<LUUO13=$UUOER>
|
||||
IFNDEF LUUO14,<LUUO14=$UUOER>
|
||||
IFNDEF LUUO15,<LUUO15=$UUOER>
|
||||
IFNDEF LUUO16,<LUUO16=$UUOER>
|
||||
IFNDEF LUUO17,<LUUO17=$UUOER>
|
||||
IFNDEF LUUO20,<LUUO20=$UUOER>
|
||||
IFNDEF LUUO21,<LUUO21=$UUOER>
|
||||
IFNDEF LUUO22,<LUUO22=$UUOER>
|
||||
IFNDEF LUUO23,<LUUO23=$UUOER>
|
||||
IFNDEF LUUO24,<LUUO24=$UUOER>
|
||||
IFNDEF LUUO25,<LUUO25=$UUOER>
|
||||
IFNDEF LUUO26,<LUUO26=$UUOER>
|
||||
IFNDEF LUUO27,<LUUO27=$UUOER>
|
||||
IFNDEF LUUO30,<LUUO30=$UUOER>
|
||||
IFNDEF LUUO31,<LUUO31=$UUOER>
|
||||
IFNDEF LUUO32,<LUUO32=$UUOER>
|
||||
IFNDEF LUUO33,<LUUO33=$UUOER>
|
||||
LIST
|
||||
UUODIS: LUUO1,,$UUOER
|
||||
LUUO3,,LUUO2
|
||||
LUUO5,,LUUO4
|
||||
LUUO7,,LUUO6
|
||||
LUUO11,,LUUO10
|
||||
LUUO13,,LUUO12
|
||||
LUUO15,,LUUO14
|
||||
LUUO17,,LUUO16
|
||||
LUUO21,,LUUO20
|
||||
LUUO23,,LUUO22
|
||||
LUUO25,,LUUO24
|
||||
LUUO27,,LUUO26
|
||||
LUUO31,,LUUO30
|
||||
LUUO33,,LUUO32
|
||||
|
||||
; **********************************************************************
|
||||
;MEMORY MANAGMENT STORAGE
|
||||
; **********************************************************************
|
||||
|
||||
DF22F: 0 ;DF10 CONTROL FLAG, 0 = 18, -1 = 22 BIT
|
||||
MAPNEW: 0 ;MEMORY MAPPING CONTROL FLAG, -1 = 4096K MAPPING
|
||||
MEMTOT: 0 ;TOTAL MEMORY SIZE IN K (1024.)
|
||||
MEMLOW: 0 ;LOWEST USABLE MEMORY
|
||||
MEMSIZ: BLOCK ^D41 ;MEMORY SEGMENT POINTER TABLE
|
||||
|
||||
; **********************************************************************
|
||||
;PRINT CONTROL STORAGE
|
||||
; **********************************************************************
|
||||
|
||||
PNTFLG: 0 ;PRINT FLAG, -1 WHILE IN PRINT ROUTINE
|
||||
PNTENB: 0 ;PRINT ENABLE
|
||||
PDISF: 0 ;PRINT DISABLED FLAG
|
||||
PNTINH: 0 ;INHIBIT PRINT INPUT CHECKS
|
||||
PNTSPC: 0 ;PRINT SPACE CONTROL
|
||||
OPTIME: 0 ;TYPE-IN WAIT TIME
|
||||
$TWCNT: 0 ;TIME WAITED
|
||||
$DVOFF: 0 ;LOGICAL DEVICE INITED FLAG
|
||||
TTYFIL: 0 ;TTY EXEC FILLERS FLAG
|
||||
TTYSPD: 0 ;TTY EXEC BAUD RATE
|
||||
$TTCHR: 0 ;ACTUAL TYPED IN CHAR
|
||||
$CHRIN: 0 ;UPPER CASED & PARITY STRIPPED CHAR
|
||||
$TYPNB: 0 ;TYPED IN NUMBER
|
||||
$CRLF: 0 ;FREE CR/LF FLAG
|
||||
$TABF: 0 ;TAB CONVERSION FLAG
|
||||
$FFF: 0 ;FORM FEED CONVERSION FLAG
|
||||
$VTF: 0 ;VERTICAL TAB CONVERSION FLAG
|
||||
USRLFF: 0 ;USER LF FILLERS
|
||||
USRCRF: 0 ;USER CR FILLERS
|
||||
; **********************************************************************
|
||||
;THE FOLLOWING MISCELLANEOUS PRINT CHARACTERS ARE INCLUDED
|
||||
;TO FACILITATE PRINTING AND ARE CALLED AS FOLLOWS:
|
||||
; MOVEI NAME
|
||||
; PNTA ;OR PNTAF
|
||||
; **********************************************************************
|
||||
|
||||
CRLF: ASCII/
|
||||
/
|
||||
CRLF2: ASCII/
|
||||
|
||||
/
|
||||
COMMA: ASCII/,/
|
||||
PERIOD: ASCII/./
|
||||
SPACE: ASCII/ /
|
||||
TAB: ASCII/ /
|
||||
MINUS:
|
||||
HYPEN: ASCII/-/
|
||||
PLUS: ASCII/+/
|
||||
AST: ASCII/*/
|
||||
ATSIN: ASCII/@/
|
||||
LFP: ASCII/(/
|
||||
RTP: ASCII/)/
|
||||
BELL: BYTE (7) 007
|
||||
QUEST: ASCII/?/
|
||||
SLASH: ASCII!/!
|
||||
DOLLAR: ASCII/$/
|
||||
RADIX: ^D10 ;DECIMAL PRINT RADIX
|
||||
RADLSP: 40 ;DECIMAL PRINT LEADING CHAR
|
||||
RADLSC: ^D10 ;DECIMAL PRINT LEADING CHAR COUNT
|
||||
|
||||
; **********************************************************************
|
||||
;USER MODE OUTPUT FILE INFORMATION
|
||||
; **********************************************************************
|
||||
|
||||
$OBUF: BLOCK 3 ;LOGICAL FILE OUTPUT BUFFER HEADER
|
||||
$OUTNM: SIXBIT /PRINT/ ;FILE NAME
|
||||
$OUTEX: SIXBIT /PNT/ ;FILE NAME EXTENSION
|
||||
BLOCK 2
|
||||
|
||||
; **********************************************************************
|
||||
;DISK UPDATE MODE FILE INFORMATION
|
||||
; **********************************************************************
|
||||
|
||||
$IBUF: BLOCK 3
|
||||
$INNM: SIXBIT /PRINT/
|
||||
$INEXT: SIXBIT /PNT/
|
||||
BLOCK 2
|
||||
; **********************************************************************
|
||||
;PUSHDOWN LIST CONTROL INFORMATION
|
||||
; **********************************************************************
|
||||
|
||||
PLIST: PLIST-PLISTE,,PLIST
|
||||
PLISTS: BLOCK 200
|
||||
PLISTE: 0 ;END OF PUSHDOWN LIST
|
||||
|
||||
; **********************************************************************
|
||||
;POWER LINE CLOCK FREQUENCY FLAG
|
||||
; **********************************************************************
|
||||
|
||||
CYCL60: 0 ;0 = 60, -1 = 50 CYCLE
|
||||
|
||||
; **********************************************************************
|
||||
;KL10 CACHE CONTROL FLAGS
|
||||
; **********************************************************************
|
||||
|
||||
CSHFLG: 0 ;ALLOW CACHE IF 0
|
||||
CSHMEM: 0 ;CACHE MEMORY SEGMENTS IF 0
|
||||
|
||||
; **********************************************************************
|
||||
;NUMBER INPUT DIGIT FLAG
|
||||
; **********************************************************************
|
||||
|
||||
TTNBRF: 0 ;-1 IF ANY DIGIT TYPED
|
||||
|
||||
; **********************************************************************
|
||||
;KL10 & KI10 "INHPAG" SWITCH PAGING PREVENTION
|
||||
; **********************************************************************
|
||||
|
||||
PVPAGI: 0 ;IF NON-ZERO, OVERRIDE "INHPAG" SWITCH ACTION
|
||||
|
||||
; **********************************************************************
|
||||
;ERROR REPORTING ROUTINE ADDITIONAL USERS CONTROL INSTRUCTIONS
|
||||
; **********************************************************************
|
||||
|
||||
%ERHI1: 0 ;IF NON-ZERO, XCT'D AT START OF %ERUUO
|
||||
%ERHI2: 0 ;IF NON-ZERO, XCT'D AT END OF %ERUUO
|
||||
%ERHI3: 0 ;IF NON-ZERO, XCT'D AFTER "PC" OF %ERUUO
|
||||
|
||||
; **********************************************************************
|
||||
;SPECIAL USERS UUO INTERCEPT INSTRUCTION
|
||||
; **********************************************************************
|
||||
|
||||
$$UUO: 0 ;IF NON-ZERO, XCT'D AT START OF $UORTN
|
||||
; **********************************************************************
|
||||
;USER MODE MONITOR TYPE FLAG
|
||||
; **********************************************************************
|
||||
|
||||
MONTYP: 0 ;0 = TOPS10, -1 = TOPS20
|
||||
|
||||
;*********************************************************************^
|
||||
;*KL10 PROCESSOR TYPE FLAG, 0=P0, 1=BBD NEW, 2=BBD OLD
|
||||
;*********************************************************************^
|
||||
|
||||
KLTYP: 0
|
||||
|
||||
; **********************************************************************
|
||||
;SPECIAL USERS MUUO INTERCEPT INSTRUCTION
|
||||
; **********************************************************************
|
||||
|
||||
$$MUUO: 0 ;IF NON-ZERO, XCT'D AT START OF MUUOER
|
||||
|
||||
; **********************************************************************
|
||||
;SPECIAL USERS USER MODE OUTPUT ERROR INTERCEPT INSTUCTION
|
||||
; **********************************************************************
|
||||
|
||||
$$OUTER:0 ;IF NON-ZERO, XCT'D AT END OF USER MODE ERROR
|
||||
|
||||
; **********************************************************************
|
||||
;"SWITCH" CALL USAGE CONTROL
|
||||
; **********************************************************************
|
||||
|
||||
$$TOGGLE:0 ;IF NON-ZERO, USE C(CONSW) FOR SWITCHES
|
||||
|
||||
; **********************************************************************
|
||||
;SPECIAL USERS ALTMODE SWITCH CALL INTERCEPT INSTRUCTIONS
|
||||
; **********************************************************************
|
||||
|
||||
$$TAX1: 0 ;IF NON-ZERO, XCT'D AT START OF ALTMODE SWITCH CALL
|
||||
$$TAX2: 0 ;IF NON-ZERO, XCT'D AT END OF ALTMODE SWITCH CALL
|
||||
|
||||
; **********************************************************************
|
||||
;SM10 (KS-10) PROCESSOR TYPE FLAG
|
||||
; **********************************************************************
|
||||
|
||||
SM10: 0 ;IF -1 THIS IS A KS-10
|
||||
|
||||
; **********************************************************************
|
||||
;RIGHT HALF SWITCHES PROMPT TABLE ADDRESS
|
||||
; **********************************************************************
|
||||
|
||||
SWPTAB: 0 ;0 = NO PROMPT, ADR = ADR OF SIXBIT PROMPT TABLE
|
||||
|
||||
; **********************************************************************
|
||||
;SPECIAL FUTURE EXPANSION ROOM
|
||||
; **********************************************************************
|
||||
|
||||
; **********************************************************************
|
||||
;END OF FIXED STORAGE
|
||||
; **********************************************************************
|
||||
|
||||
LOC 30577
|
||||
ENDFIX: 0 ;END OF FIXED STORAGE
|
||||
|
||||
1087
apps/pdp10/diags/ka10/PARAM.KLM.txt
Normal file
1087
apps/pdp10/diags/ka10/PARAM.KLM.txt
Normal file
File diff suppressed because it is too large
Load diff
136
apps/pdp10/diags/ka10/README.md
Normal file
136
apps/pdp10/diags/ka10/README.md
Normal file
|
|
@ -0,0 +1,136 @@
|
|||
---
|
||||
layout: page
|
||||
title: PDP-10 KA10 Diagnostics
|
||||
permalink: /apps/pdp10/diags/ka10/
|
||||
---
|
||||
|
||||
PDP-10 KA10 Diagnostics
|
||||
-----------------------
|
||||
|
||||
PCjs has archived selected KA10 diagnostic source files from the
|
||||
[PDP-10 KLAD Diagnostics Sources](http://pdp-10.trailing-edge.com/klad_sources/index.html) and turned them into
|
||||
stand-alone PDP-10 diagnostics, using the new PCjs [MACRO-10 Mini-Assembler](/modules/pdp10/lib/macro10.js).
|
||||
|
||||
A complete list of supported diagnostics is provided [below](#list-of-ka10-diagnostics).
|
||||
|
||||
I've also experimented with assembling these diagnostics from the original (unmodified) source files. For example,
|
||||
you can go to the [DAKAK Diagnostic](dakak/) page and try the following command:
|
||||
|
||||
a 'dakakt.mac;../param.klm;../fixed.klm;dakakm.mac;../uuoerr.klm;../stor.klm'
|
||||
|
||||
and while the MACRO-10 assembly process works:
|
||||
|
||||
loading dakakt.mac
|
||||
loading param.klm
|
||||
loading fixed.klm
|
||||
loading dakakm.mac
|
||||
loading uuoerr.klm
|
||||
loading stor.klm
|
||||
6301 words loaded at 000137-044630, start address 030000
|
||||
00=000000000000 01=000000000000 02=000000000000 03=000000000000
|
||||
04=000000000000 05=000000000000 06=000000000000 07=000000000000
|
||||
10=000000000000 11=000000000000 12=000000000000 13=000000000000
|
||||
14=000000000000 15=000000000000 16=000000000000 17=000000000000
|
||||
PC=030000 RA=00000000 EA=000000 PS=000000 OV=0 C0=0 C1=0 ND=0 PD=0
|
||||
030000: 254020 027776 JRST @27776
|
||||
|
||||
there are additional modules that must be loaded into the machine as well, which are not yet supported. So it's best
|
||||
to assemble the modified files that I've placed inside each diagnostic's folder. For the [DAKAK Diagnostic](dakak/),
|
||||
that's **DAKAK.MAC**:
|
||||
|
||||
>> a dakak.mac
|
||||
loading dakak.mac
|
||||
5849 words loaded at 000137-044133, start address 030621
|
||||
00=000000000000 01=000000000000 02=000000000000 03=000000000000
|
||||
04=000000000000 05=000000000000 06=000000000000 07=000000000000
|
||||
10=000000000000 11=000000000000 12=000000000000 13=000000000000
|
||||
14=000000000000 15=000000000000 16=000000000000 17=000000000000
|
||||
PC=030621 RA=00000000 EA=000000 PS=000000 OV=0 C0=0 C1=0 ND=0 PD=0
|
||||
030621: 254000 030622 JRST 30622
|
||||
|
||||
If the machine is able to run to the end of the diagnostic (which can be located by looking at the diagnostic's original
|
||||
MACRO-10 listing file) without stopping on an UUO opcode, then you can assume it passed.
|
||||
|
||||
List of KA10 Diagnostics
|
||||
------------------------
|
||||
|
||||
The following list of KA10 Diagnostics is not comprehensive. It's simply a list of thosr diagnostics we have archived and
|
||||
tested with PDPjs so far.
|
||||
|
||||
- [KA10 Basic Instruction Diagnostic #1 (MAINDEC-10-DAKAA)](dakaa/)
|
||||
- TEST OF JUMP, JUMPA AND SKIPX INSTRUCTIONS
|
||||
- TEST OF MOVE, SKIP AND COMPARE INSTRUCTIONS
|
||||
- TEST OF SKIP, FULL WORD TRANSFER AND HALF WORD TRANSFER INSTRUCTIONS
|
||||
- TEST OF BOOLEAN INSTRUCTIONS (SETM, SETZ, AND, XOR, EQV)
|
||||
- [KA10 Basic Instruction Diagnostic #2 (MAINDEC-10-DAKAB)](dakab/)
|
||||
- TEST OF THE ADD INSTRUCTION
|
||||
- SPECIAL KI10 FOUR BIT ADDER TEST
|
||||
- TEST OF SUB AND COMPARE INSTRUCTIONS
|
||||
- TEST OF COMPARE (CAMX) INSTRUCTIONS
|
||||
- TEST OF MOVS INSTRUCTION
|
||||
- TEST OF COMPARE (CAXX) INSTRUCTIONS
|
||||
- TEST OF BOOLEAN INSTRUCTIONS
|
||||
- TEST OF MOVN INSTRUCTION
|
||||
- TEST OF MOVM INSTRUCTION
|
||||
- [KA10 Basic Instruction Diagnostic #3 (MAINDEC-10-DAKAC)](dakac/)
|
||||
- TEST OF LOGICAL TEST INSTRUCTIONS
|
||||
- TEST OF HWT INSTRUCTIONS
|
||||
- SUPPLEMENTARY ADDER TESTS - FLT 1 + 0
|
||||
- SUPPLEMENTARY ADDER TESTS - O + FLT 0
|
||||
- SUPPLEMENTARY ADDER TESTS - FLT 1 + FLT 1
|
||||
- SUPPLEMENTARY ADDER TESTS - FLT 0 + 0FLT
|
||||
- [KA10 Basic Instruction Diagnostic #4 (MAINDEC-10-DAKAD)](dakad/)
|
||||
- TEST OF AC HARDWARE AND INDEX REGISTERS
|
||||
- TEST OF INDEX REGISTER ADDRESSING
|
||||
- TEST OF EXCH INSTRUCTION
|
||||
- TEST OF MOVEM INSTRUCTION
|
||||
- TEST OF JFCL INSTRUCTION AND ARITHMETIC FLAGS
|
||||
- TEST OF JRST INSTRUCTION AND ARITHMETIC FLAGS
|
||||
- TEST OF JSP INSTRUCTION
|
||||
- TEST JRST INSTRUCTION
|
||||
- TEST OF AOBJX INSTRUCTIONS
|
||||
- TEST SETTING OF ARITHMETIC FLAGS VIA MOVNX AND MOVMX
|
||||
- TEST OF AOS AND SOS INSTRUCTIONS
|
||||
- TEST OF INTERACTION OF JFCL, JRST, AND JSP WITH ARITHMETIC FLAGS
|
||||
- TEST OF JUMPX INSTRUCTIONS
|
||||
- TEST OF AOJ AND SOJ INSTRUCTIONS
|
||||
- TEST OF MEMORY, BOTH AND SELF MODE INSTRUCTIONS
|
||||
- XCT INSTRUCTION - BASIC TESTS
|
||||
- INDIRECT ADDRESSING - BASIC TESTS
|
||||
- TEST INDIRECT ADDRESSING WITH INDEXING
|
||||
- [KA10 Basic Instruction Diagnostic #5 (MAINDEC-10-DAKAE)](dakae/)
|
||||
- TEST OF JSR INSTRUCTION
|
||||
- TEST OF JSA INSTRUCTION
|
||||
- TEST OF JRA INSTRUCTION
|
||||
- TESTS OF BIS FLAG
|
||||
- TEST OF MSCL FWT INSTRUCTIONS
|
||||
- TEST OF MSCL ADD/SUB INSTRUCTIONS
|
||||
- TEST OF MSCL CAIX INSTRUCTIONS
|
||||
- TEST OF MSCL CAMX INSTRUCTIONS
|
||||
- TEST OF MSCL JUMPX INSTRUCTIONS
|
||||
- TEST OF MSCL AOJX INSTRUCTIONS
|
||||
- TEST OF MSCL AOSX INSTRUCTIONS
|
||||
- TEST OF MSCL SOJX INSTRUCTIONS
|
||||
- TEST OF MSCL SOSX INSTRUCTIONS
|
||||
- [KA10 Basic Instruction Diagnostic #6 (MAINDEC-10-DAKAF)](dakaf/)
|
||||
- TEST OF MSCL BOOLEAN INSTRUCTIONS
|
||||
- TEST OF MSCL HWT INSTRUCTIONS
|
||||
- TEST OF MSCL LOGICAL TEST INSTRUCTIONS
|
||||
- [KA10 Basic Instruction Diagnostic #7 (MAINDEC-10-DAKAG)](dakag/)
|
||||
- TEST OF PUSH INSTRUCTION
|
||||
- TEST OF PUSHJ INSTRUCTION
|
||||
- TEST OF POP INSTRUCTION
|
||||
- TEST OF POPJ INSTRUCTION
|
||||
- XCT INSTRUCTION - ADDITIONAL TESTS
|
||||
- TEST XCT INSTRUCTION WITH INDIRECT ADDRESSING AND INDEXING
|
||||
- TEST OF SHIFT/ROTATE INSTRUCTIONS USED IN THE ERROR HANDLER
|
||||
- [KA10 Basic Instruction Diagnostic #8 (MAINDEC-10-DAKAH)](dakah/)
|
||||
- TESTS OF PI, INTERRUPTS, LUUO'S, I/O
|
||||
- [KA10 Basic Instruction Diagnostic #9 (MAINDEC-10-DAKAI)](dakai/)
|
||||
- TESTS OF LOGICAL SHIFT, ROTATE, ARITHMETIC SHIFT; SINGLE AND COMBINED
|
||||
- [KA10 Basic Instruction Diagnostic #10 (MAINDEC-10-DAKAJ)](dakaj/)
|
||||
- TESTS OF LOGICAL SHIFT, ROTATE, ARITHMETIC SHIFT; SINGLE AND COMBINED
|
||||
- [KA10 Basic Instruction Diagnostic #11 (MAINDEC-10-DAKAK)](dakak/)
|
||||
- TESTS OF MULTIPY, INTERGER MULTIPLY, DIVIDE, INTERGER DIVIDE*
|
||||
|
||||
*Gotta love those interger multipy tests! -JP
|
||||
171
apps/pdp10/diags/ka10/SPCCPU.KLM.txt
Normal file
171
apps/pdp10/diags/ka10/SPCCPU.KLM.txt
Normal file
|
|
@ -0,0 +1,171 @@
|
|||
SUBTTL *SPCCPU* SPECIAL BASIC CPU PROCESSOR CONTROL, 26-FEB-76
|
||||
|
||||
;NEW DEFINITIONS USED BY THE KL10 SUBROUTINE PACKAGE
|
||||
|
||||
AC0= 0
|
||||
DIAGNOS=30000 ;PDP-10 DIAGNOSTIC START ADDRESS
|
||||
DDT= 10000 ;PDP-10 DDT START ADDRESS
|
||||
DIAMON= 20000 ;PDP-10 DIAMON LOADER START ADDRESS
|
||||
DONG11= 1B22 ;11 DOORBELL (FROM THE 10)
|
||||
|
||||
;DTE20 DEVICE CODES
|
||||
|
||||
DTE== 200 ;DTE0
|
||||
DTE0== 204
|
||||
DTE1== 204
|
||||
DTE2== 210
|
||||
DTE3== 214
|
||||
|
||||
;KL10 EPT COMMUNICATION AREA
|
||||
|
||||
$STD= 440 ;PDP-10 DIAGNOSTIC START ADDRESS
|
||||
$DDT= 441 ;PDP-10 DDT START ADDRESS
|
||||
$STL= 442 ;PDP-10 LOADER START ADDRESS
|
||||
$STM= 443 ;PDP-10 MONITOR START ADDRESS
|
||||
|
||||
$DTFLG= 444 ;DTE20 OPERATION COMPLETE FLAG
|
||||
$DTCLK= 445 ;DTE20 CLOCK INTERRUPT FLAG
|
||||
$DTCI= 446 ;DTE20 CLOCK INTERRUPT INSTRUCTION
|
||||
$DTT11= 447 ;DTE20 10 TO 11 ARGUMENT
|
||||
$DTF11= 450 ;DTE20 11 TO 10 ARGUMENT
|
||||
$DTCMD= 451 ;DTE20 TO 11 COMMAND WORD
|
||||
$DTSEQ= 452 ;DTE20 OPERATION SEQUENCE NUMBER
|
||||
$DTOPR= 453 ;DTE20 OPERATIONAL DTE #
|
||||
$DTCHR= 454 ;DTE20 LAST TYPED CHARACTER
|
||||
$DTMTD= 455 ;DTE20 MONITOR TTY OUTPUT COMPLETE FLAG
|
||||
$DTMTI= 456 ;DTE20 MONITOR TTY INPUT FLAG
|
||||
|
||||
$DTSWR= 457 ;DTE20 CONSOLE SWITCH REGISTER
|
||||
;SPECIAL "FIXED" REASSIGNMENTS
|
||||
|
||||
$$LOC=. ;SAVE CURRENT LOCATION
|
||||
|
||||
LOC 30000
|
||||
$$BEGIN:JRST $$START ;SETUP SPECIAL START
|
||||
JRST $$START ;"DIAMON" CHAIN START ADDRESS
|
||||
|
||||
LOC 440
|
||||
$STD: JRST BEGIN ;SETUP FOR "STD"
|
||||
LOC 443
|
||||
$STM: JRST $SPEC ;SIMPLE RUN CONTROL
|
||||
|
||||
LOC 30057
|
||||
$BEGEND:JRST $SPBEND ;SETUP SPECIAL "BEGEND"
|
||||
|
||||
;SPECIAL MUUO, TRAP & PAGE FAIL SETUP
|
||||
|
||||
LOC 420
|
||||
$$420: HALT . ;KI10 PAGE FAIL
|
||||
$$421: JFCL ;OVERFLOW
|
||||
$$422: HALT . ;PUSHDOWN OVERFLOW
|
||||
$$423: HALT . ;TRAP 3
|
||||
$$424: 0 ;MMUO
|
||||
$$425: 0 ;MMUO PC
|
||||
$$426: 0 ;KI10-PAGE FAIL, KL10-PROCESS CONTEXT
|
||||
$$427: HALT .
|
||||
$$430: 427 ;MMUO NEW PC'S
|
||||
$$431: 427
|
||||
$$432: 427
|
||||
$$433: 427
|
||||
$$434: 427
|
||||
$$435: 427
|
||||
$$436: 427
|
||||
$$437: 427
|
||||
|
||||
LOC 500
|
||||
$$500: 0 ;KL10 PAGE FAIL WORD
|
||||
$$501: 0 ;KL10 PAGE FAIL PC
|
||||
$$502: 503 ;KL10 PAGE FAIL NEW PC
|
||||
$$503: HALT .
|
||||
LOC $$LOC ;RESET CURRENT LOCATION
|
||||
|
||||
;SPECIAL STARTUP SEQUENCE
|
||||
|
||||
$$START:SETZM USER
|
||||
JSP 0,.+1 ;IN USER MODE ?
|
||||
TLNE 0,USERF
|
||||
SETOM USER ;YES, SET CONTROL WORD
|
||||
SKIPN MONFLG ;SPECIAL USER MODE ?
|
||||
SETZM USER ;YES, RUN AS EXEC
|
||||
SKIPE USER
|
||||
JRST START ;USER MODE, DON'T NEED CPU TYPE
|
||||
|
||||
$STKIL: SKIPN MONTEN ;LOADED BY "DIAMON" ?
|
||||
SETOM ITRCNT ;NO, RUN FOREVER
|
||||
SETZM KLTYP
|
||||
SETZM KLFLG ;ASSUME KI10
|
||||
MOVE 1,[1,,1]
|
||||
BLT 1,1 ;HOPE THIS WORKS
|
||||
CAMN 1,[1,,1] ;IF AC NE 1,,1 AFTER BLT, KL10
|
||||
JRST START ;KI10, NO ADDITIONAL SETUP
|
||||
|
||||
$STKL: CONO APR,10040 ;SET BBD NOT BIT
|
||||
CONI APR,0
|
||||
CONO APR,20040 ;CLEAR BBD NOT BIT
|
||||
TRNN 0,40 ;IF SET, KL10
|
||||
AOS KLTYP ;IF NOT, BBD
|
||||
SETZM $DTFLG
|
||||
SETZM $DTCLK
|
||||
MOVE $DTOPR ;GET DTE #
|
||||
ORM $$DTE0 ;INSERT IN DTE I/O INSTS
|
||||
ORM $$DTE1
|
||||
ORM $$DTE2
|
||||
ORM $$DTE3
|
||||
SETOM KLFLG ;SET KL10 CONTROL FLAG
|
||||
JRST START
|
||||
|
||||
$SPEC: MOVE [JRST STARTA] ;SIMPLE RUN CONTROL
|
||||
MOVEM $SPB1
|
||||
JRST START
|
||||
;SPECIAL "BEGEND" ROUTINE
|
||||
|
||||
$SPBEND:AOS PASCNT ;INCREMENT PASS COUNT
|
||||
SOS ITRCNT ;DECREMENT ITERATION COUNT
|
||||
$SPB1: SKIPN USER
|
||||
JRST $SPBEX ;EXEC MODE
|
||||
|
||||
$SPBUS: SKIPE ITRCNT ;USER MODE, COMPLETED ?
|
||||
JRST STARTA ;NO, KEEP RUNNING
|
||||
SKIPN MONTEN ;DONE, LOADED BY "DIAMON" ?
|
||||
EXIT ;NO, RETURN TO MONITOR
|
||||
JRST @RETURN ;YES, RETURN TO "DIAMON"
|
||||
|
||||
$SPBEX: SKIPE KLFLG
|
||||
JRST $SPBKL ;KL10 & EXEC
|
||||
DATAO PI,ITRCNT ;KI10 & EXEC, DISPLAY ITER COUNT
|
||||
SKIPE ITRCNT
|
||||
JRST STARTA ;NOT COMPLETED YET
|
||||
JRST @RETURN ;DONE
|
||||
|
||||
$SPBKL: SKIPN ITRCNT
|
||||
JRST $SPKLD ;KL10, EXEC & COMPLETED
|
||||
|
||||
SKIPGE MONCTL
|
||||
JRST STARTA ;"DIAMON" CONTROL
|
||||
MOVEI 0,404 ;NOTIFY PDP-11 OF END OF PASS
|
||||
MOVEM 0,$DTCMD
|
||||
SETZM $DTFLG
|
||||
SKIPN KLTYP
|
||||
$$DTE0: CONO DTE,DONG11
|
||||
SKIPE KLTYP
|
||||
$$DTE1: CONO DTE,10000
|
||||
SKIPN $DTFLG ;WAIT TILL 11 RESPONDS
|
||||
JRST .-1
|
||||
JRST STARTA ;KEEP RUNNING
|
||||
|
||||
;SPECIAL KL10 COMPLETED ROUTINE
|
||||
|
||||
$SPKLD: SKIPE MONTEN
|
||||
JRST @RETURN ;LOADED BY "DIAMON"
|
||||
|
||||
MOVEI 0,403 ;NOTIFY PDP-11 OF COMPLETION
|
||||
MOVEM 0,$DTCMD
|
||||
SETZM $DTFLG
|
||||
SKIPN KLTYP
|
||||
$$DTE2: CONO DTE,DONG11
|
||||
SKIPE KLTYP
|
||||
$$DTE3: CONO DTE,10000
|
||||
SKIPN $DTFLG ;SHOULD NEVER HAPPEN
|
||||
JRST .-1 ;11 NEVER RETURNS ON END OF PROGRAM
|
||||
HALT BEGIN ;IF IT DOES, HALT.
|
||||
|
||||
21
apps/pdp10/diags/ka10/STOR.KLM.txt
Normal file
21
apps/pdp10/diags/ka10/STOR.KLM.txt
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
SUBTTL *STOR* RESERVED STORAGE, JULY 19,1977
|
||||
|
||||
;PROGRAM LITERALS
|
||||
|
||||
XLIST
|
||||
IFNDEF $LPAPER,<LIST>
|
||||
LIT
|
||||
LIST
|
||||
ENDSLD: 0
|
||||
|
||||
IFDEF DEBUG,<
|
||||
PATCH: BLOCK DEBUG ;PATCHING AREA
|
||||
>
|
||||
|
||||
;PROGRAM VARIABLES
|
||||
VAR
|
||||
|
||||
IFDEF PGMEND,<
|
||||
END: 0
|
||||
END BEGIN >
|
||||
|
||||
290
apps/pdp10/diags/ka10/UUOERR.KLM.txt
Normal file
290
apps/pdp10/diags/ka10/UUOERR.KLM.txt
Normal file
|
|
@ -0,0 +1,290 @@
|
|||
SUBTTL *UUOERR* OLD-UUO ERROR HANDLER SUBROUTINE, V75B, APR 22,1975
|
||||
|
||||
;THIS SUBROUTINE PROVIDES ERROR REPORTING THRU THE USE OF UUO'S.
|
||||
|
||||
ERRMES: MOVEM 0,%ERAC0# ;SAVE AC0
|
||||
IFDEF EXCASB,<IFDEF KI10,<
|
||||
SKIPN KAIFLG
|
||||
JRST .+5
|
||||
SKIPE USER ;USER MODE ?
|
||||
JRST .+3
|
||||
SKIPE MARGIN
|
||||
DATAO APR,[IMGNOF,,ISPDOF] ;CLR MARGINS >>
|
||||
MOVEM 1,%ERAC1# ;SAVE AC1
|
||||
MOVEM 2,%ERAC2# ;SAVE AC2
|
||||
AOS ERRTLS ;INCREMENT ERROR TOTALS
|
||||
HRRZ 0,$SVUPC ;GET PC OF UUO
|
||||
CAMN 0,ERRPC ;PC = PC OF LAST ERROR ?
|
||||
AOS MICNT# ;YES, ADD 1 TO ERROR COUNT
|
||||
MOVE 0,MICNT
|
||||
HRL 0,$SVUPC
|
||||
SKIPN KLFLG ;NOT KL10
|
||||
SKIPE USER ;AND NOT USER?
|
||||
JRST .+2
|
||||
DATAO PI,0 ;YES, DISPLAY ERROR PC,ERROR COUNT
|
||||
SETZM PROCED# ;CLEAR PROCEED FLAG
|
||||
SWITCH
|
||||
TLNE NOPNT ;PRINTOUT ?
|
||||
JRST %ERRS1 ;NO, RESTORE AC'S AND RETURN
|
||||
MOVE 1,$SVUUO
|
||||
LSH 1,-^D27
|
||||
MOVEM 1,%ACS1A# ;SAVE UUO NUMBER
|
||||
MOVE 0,%ERAC0
|
||||
MOVE 1,%ERAC1
|
||||
SKIPGE @ERRLOP ;ERR LOOP AC > OR = 0 ?
|
||||
JRST %ERRS4 ;NO, SEE IF PRINT ALL
|
||||
%ERMS1: SETZM MICNT ;CLEAR ERROR COUNT
|
||||
SKIPL MONCTL ;DIAG MON OR SYS EXER ?
|
||||
JRST .+4 ;NO, DON'T NEED TITLE
|
||||
SKIPN %ERFST# ;FIRST ERROR ?
|
||||
PNTNM ;YES, PRINT PROGRAM TITLE
|
||||
SETOM %ERFST
|
||||
SKIPN PASCNT ;FIRST PASS ?
|
||||
JRST .+4 ;YES
|
||||
PMSG <^TEST PASS COUNT = >
|
||||
MOVE PASCNT
|
||||
PNTDEC
|
||||
PMSG <^PC = >
|
||||
HRRZ 0,$SVUPC ;GET PC OF UUO
|
||||
MOVEM 0,ERRPC ;SAVE FOR COMPARE
|
||||
PNT6 ;PRINT UUO ADDRESS
|
||||
XLIST
|
||||
IFDEF ERDIAG,<LIST
|
||||
;DIAGNOSTIC FORMAT ERROR PRINTER
|
||||
|
||||
;PRINT RESULT
|
||||
|
||||
%ERMS2: PMSG <^RESULT = >
|
||||
MOVE 1,$SVUUO ;GET AC # OF UUO
|
||||
LSH 1,-27
|
||||
ANDI 1,17
|
||||
MOVE 0,(1) ;GET C(AC)
|
||||
CAIG 1,1 ;IS AC # = TO SAVE AC ?
|
||||
MOVE 0,%ERAC0(1) ;YES, GET SAVED AC
|
||||
PNTHW ;PRINT C(AC)
|
||||
|
||||
MOVE CONSW
|
||||
TLNE TXTINH ;PRINT FAILURE DES AND FLT NBR ?
|
||||
JRST %ERMORE ;NO, RESTORE AC'S ETC.
|
||||
|
||||
;PRINT FAILURE DESCRIPTOR
|
||||
|
||||
MOVE 1,%ACS1A ;GET UUO NUMBER
|
||||
CAIG 1,1 ;PRINT DESCRIPTOR ?
|
||||
JRST %ERMS3 ;NO, JUST PRINT FAULT NUMBER
|
||||
PCRL
|
||||
MOVE %FLTTB(1)
|
||||
PNTAL ;PRINT FAULT DESCRIPTOR
|
||||
|
||||
;PRINT FAULT NUMBER
|
||||
|
||||
%ERMS3: PMSG <^FAULT NUMBER = >
|
||||
MOVEI TLET
|
||||
PNTA ;PRINT TEST LETTER
|
||||
|
||||
HRRZ $SVUUO
|
||||
TRNE 700000
|
||||
JRST %ER6X
|
||||
TRNE 070000
|
||||
JRST %ER5X
|
||||
TRNE 007000
|
||||
JRST %ER4X
|
||||
PNT3 ;PRINT FAULT NUMBER
|
||||
%ER7X: PCRL
|
||||
JRST %ERMORE
|
||||
|
||||
%ER4X: PNT4
|
||||
JRST %ER7X
|
||||
%ER5X: PNT5
|
||||
JRST %ER7X
|
||||
%ER6X: PNT6
|
||||
JRST %ER7X
|
||||
|
||||
;FAILURE DESCRIPTORS
|
||||
|
||||
TLET: 0 ;TEST LETTER
|
||||
%FLTTB: 0 ;DESCRIPTOR TABLE
|
||||
%NODES: [0] ;NO DESCRIPTOR
|
||||
SPDES: [0] ;SPECIAL USER FAILURE DESCRIPTOR
|
||||
$ACF: [ASCIZ/C(AC) FAILED/]
|
||||
%AC1F: [ASCIZ/C(AC+1) FAILED/]
|
||||
%EF: [ASCIZ/C(E) FAILED/]
|
||||
%E1F: [ASCIZ/C(E+1) FAILED/]
|
||||
%ARF: [ASCIZ/C(C(ACR)) FAILED/]
|
||||
%AR1F: [ASCIZ/C(C(ACR+1)) FAILED/]
|
||||
%ALF: [ASCIZ/C(C(ACL)) FAILED/]
|
||||
%EEF: [ASCIZ/C(C(E)) FAILED/]
|
||||
%FF: [ASCIZ/FLAG FAILED/]
|
||||
>
|
||||
XLIST
|
||||
IFDEF ERRELB,<
|
||||
LIST
|
||||
;RELIABILITY FORMAT ERROR PRINTER
|
||||
|
||||
%ERMS2: SETZM %RAND# ;CLEAR PNT C(RAN) FLAG
|
||||
MOVE 1,%ACS1A
|
||||
CAIL 1,11 ;UUO # 11-13
|
||||
SETOM %RAND ;YES, SET PNT C(RAN) FLAG
|
||||
TRZ 1,10 ;MAKE UUO # 1-7
|
||||
MOVEM 1,%ACS1A
|
||||
MOVE 2,ERRPC ;GET UUO ADDRESS
|
||||
MOVE 2,-1(2) ;GET INST IN UUO-1
|
||||
CAIL 1,4 ;UUO # < THAN 4 ?
|
||||
MOVE 2,$SVUUO ;YES, GET UUO
|
||||
MOVEM 2,%CNTE# ;SAVE E ADDRESS
|
||||
MOVE 2,%ERAC2
|
||||
MOVE 1,%ERAC1
|
||||
MOVE 0,%ERAC0
|
||||
MOVEI 1,@%CNTE ;GET ADRS FIELD OF UUO OR UUO-1
|
||||
MOVEM 1,%EE1#
|
||||
MOVE 1,%ERAC1
|
||||
MOVE 1,@%EE1 ;GET C(E)
|
||||
MOVEM 1,%EE1A#
|
||||
MOVE 1,%ERAC1
|
||||
MOVEI 1,@$SVUUO ;GET ADDRESS FIELD OF UUO
|
||||
MOVEM 1,%EE2#
|
||||
MOVE 1,%ACS1A
|
||||
CAIN 1,3 ;UUO # 3 ?
|
||||
JRST .+4 ;YES
|
||||
MOVE 1,%ERAC1
|
||||
MOVE 1,@%EE2 ;GET C(E) OF UUO
|
||||
MOVEM 1,%EE2A#
|
||||
MOVE 2,%ACS1A ;GET UUO #
|
||||
MOVE 1,%CNTE
|
||||
LSH 1,-27 ;GET AC NUMBER
|
||||
ANDI 1,17
|
||||
CAIG 2,5 ;UUO # 6,7 OR 2
|
||||
CAIN 2,2
|
||||
JRST %ERR2 ;YES, GO PNT E AND C(E)
|
||||
;PRINT ERROR AC
|
||||
|
||||
PMSG <^AC = >
|
||||
MOVE 0,1
|
||||
PNT2 ;PRINT AC NUMBER
|
||||
PMSG <^C(AC)= >
|
||||
MOVE 0,(1) ;GET C(AC)
|
||||
CAIG 1,2 ;IS AC # = SAVED AC ?
|
||||
MOVE 0,%ERAC0(1) ;YES, GET SAVED AC
|
||||
%ERRB: PNTHW ;PRINT C(AC) OR UUO2 (E)
|
||||
|
||||
;PRINT ERROR INFO
|
||||
|
||||
CAIN 2,5 ;UUO # 5
|
||||
JRST %ERR4 ;YES, GO PNT 'TST','SKP', OR ETC.
|
||||
|
||||
PMSG <^COR = >
|
||||
MOVE 0,(1) ;GET C(AC)
|
||||
CAIG 1,2 ;IS AC # = SAVED AC ?
|
||||
MOVE 0,%ERAC0(1) ;YES, GET SAVED AC
|
||||
CAIE 2,2
|
||||
MOVE 0,%EE1A ;UUO # 2, GET C(E)
|
||||
PNTHW ;PRINT C(E) OR UUO2 C(AC)
|
||||
CAIL 2,4 ;UUO # >3 ?
|
||||
JRST %ERRC ;YES, RESTORE AC'S AND RETURN
|
||||
|
||||
PMSG <^ ORIGINAL>
|
||||
%ERRB1: MOVE 1,$SVUUO
|
||||
LSH 1,-27 ;GET AC # OF UUO
|
||||
ANDI 1,17
|
||||
PMSG <^C(AC)= >
|
||||
MOVE 0,(1) ;GET C(AC)
|
||||
CAIG 1,2 ;IS AC # = SAVED AC ?
|
||||
MOVE 0,%ERAC0(1) ;YES, GET SAVED AC
|
||||
SKIPE %RAND ;PRINT C(RAN) FLAG SET ?
|
||||
MOVE 0,RAN# ;YES
|
||||
PNTHW ;PRINT C(AC) OR C(RAN)
|
||||
CAIN 2,3 ;UUO # 3 ?
|
||||
JRST %ERR2 ;YES, PRINT E, RESTORE AC'S AND RETURN
|
||||
CAIN 2,7 ;UUO # 7 ?
|
||||
JRST %ERRC ;YES, BYPASS PRINTING C(E)
|
||||
PMSG <^C(E) = >
|
||||
MOVE 0,%EE2A
|
||||
PNTHW ;PRINT C(E)
|
||||
JRST %ERRC
|
||||
|
||||
%ERR2: PMSG <^E = >
|
||||
MOVE 0,%EE2
|
||||
CAIN 2,2 ;UUO # 2 ?
|
||||
MOVE 0,%EE1
|
||||
PNT6 ;PRINT E OF UUO OR UUO-1
|
||||
CAIL 2,6 ;UUO 6 OR 7 ?
|
||||
JRST %ERRB1 ;YES, GO PNT C(AC), C(E) AND RETURN
|
||||
CAIN 2,3 ;UUO # 3 ?
|
||||
JRST %ERRC ;YES, RESTORE AC'S AND RETURN
|
||||
|
||||
PMSG <^C(E) = >
|
||||
MOVE 0,%EE1A ;GET C(E)
|
||||
JRST %ERRB
|
||||
;PRINT ASCII COMMENT
|
||||
|
||||
%ERR4: HRRZI 0,@$SVUUO
|
||||
PNTA ;PRINT 'TST','SKP', OR ETC.
|
||||
JRST %ERRC
|
||||
|
||||
;COMPLETE PRINTOUT
|
||||
|
||||
%ERRC: PCRL
|
||||
|
||||
XLIST
|
||||
IFDEF UUOTXT,<
|
||||
LIST
|
||||
MOVE 0,CONSW
|
||||
TLNN TXTINH ;PRINT DIAGNOSTIC COMMENT ?
|
||||
CAIE 2,7 ;UUO # 7 ?
|
||||
JRST %ERMORE ;NO, RESTORE AC'S AND RETURN
|
||||
MOVE 0,%EE2 ;YES
|
||||
PNTAL ;PRINT DIAGNOSTIC COMMENT
|
||||
PCRL
|
||||
>
|
||||
LIST
|
||||
JRST %ERMORE
|
||||
|
||||
>
|
||||
LIST
|
||||
;RESTORE AC'S AND RETURN OR HALT
|
||||
|
||||
%ERMORE:XCT ERMORE
|
||||
PNTMGN ;PRINT MARGINS
|
||||
SWITCH
|
||||
|
||||
%ERRS1: TTALTM ;ALTMODE CHECK
|
||||
JRST .+4 ;NONE
|
||||
MOVEI .+3 ;SAVE CONT ADDRESS
|
||||
MOVEM JOBOPC
|
||||
JRST @ALTMGO ;PERFORM TRANSFER
|
||||
MOVE CONSW
|
||||
TLNE 0,ERSTOP ;HALT ON ERROR SWITCH SET ?
|
||||
ERRHLT ;YES
|
||||
TLNN 0,LOOPER ;LOOP ON ERROR SWITCH SET ?
|
||||
SETOM PROCED ;NO, SET THE PROCEED FLAG
|
||||
TLNE 0,DING ;RING BELL SWITCH SET ?
|
||||
PBELL ;YES, GO RING BELL
|
||||
|
||||
%ERRS2: MOVE 2,%ERAC2 ;RESTORE AC'S
|
||||
MOVE 1,%ERAC1
|
||||
SETOM @ERRLOP ;SET C(ERR LOOP AC) TO -1
|
||||
SKIPN PROCED ;LOOP ON ERROR ?
|
||||
JRST %ERRS5 ;YES
|
||||
AOS @ERRLOP ;NO, INC C(ERR LOOP AC)
|
||||
AOS @ERRLOP ;SO IT ='S 1
|
||||
SKIPL MONCTL ;UNDER DIAGNOSTIC MONITOR ?
|
||||
JRST %ERRS5 ;NO, CONTINUE PROGRAM
|
||||
MOVE 0,ERRTLS ;YES
|
||||
CAIL 0,5 ;PRINTED ALLOWED ERRORS ?
|
||||
JRST $BEND2
|
||||
|
||||
%ERRS5: MOVE 0,%ERAC0 ;NO, CONTINUE PROGRAM
|
||||
IFDEF EXCASB,<IFDEF KI10,<
|
||||
SKIPN KAIFLG
|
||||
JRST .+5
|
||||
SKIPE USER
|
||||
JRST .+3
|
||||
SKIPE MARGIN
|
||||
DATAO APR,MARGIN ;RESET MARGIN SYSTEM >>
|
||||
JRST UUOEXT
|
||||
|
||||
%ERRS4: MOVE 0,CONSW
|
||||
TLNN PALERS ;PRINT ALL ERRORS ?
|
||||
JRST %ERRS1 ;NO
|
||||
JRST %ERMS1 ;YES
|
||||
|
||||
10131
apps/pdp10/diags/ka10/dakaa/DAKAA.LST.txt
Normal file
10131
apps/pdp10/diags/ka10/dakaa/DAKAA.LST.txt
Normal file
File diff suppressed because it is too large
Load diff
1053
apps/pdp10/diags/ka10/dakaa/DAKAA.MAC.txt
Normal file
1053
apps/pdp10/diags/ka10/dakaa/DAKAA.MAC.txt
Normal file
File diff suppressed because it is too large
Load diff
1042
apps/pdp10/diags/ka10/dakaa/DAKAAM.MAC.txt
Normal file
1042
apps/pdp10/diags/ka10/dakaa/DAKAAM.MAC.txt
Normal file
File diff suppressed because it is too large
Load diff
288
apps/pdp10/diags/ka10/dakaa/README.md
Normal file
288
apps/pdp10/diags/ka10/dakaa/README.md
Normal file
|
|
@ -0,0 +1,288 @@
|
|||
---
|
||||
layout: page
|
||||
title: PDP-10 KA10 Basic Instruction Diagnostic #1
|
||||
permalink: /apps/pdp10/diags/ka10/dakaa/
|
||||
machines:
|
||||
- id: testka10
|
||||
type: pdp10
|
||||
config: /devices/pdp10/machine/ka10/test/debugger/machine.xml
|
||||
debugger: true
|
||||
commands: a 30724 DAKAA.MAC
|
||||
---
|
||||
|
||||
PDP-10 KA10 Basic Instruction Diagnostic #1
|
||||
-------------------------------------------
|
||||
|
||||
The *PDP-10 KA10 Basic Instruction Diagnostic #1* (MAINDEC-10-DAKAA) test code has been extracted from
|
||||
[DAKAAM.MAC](DAKAAM.MAC.txt) [[original](http://pdp-10.trailing-edge.com/klad_sources/01/klad.sources/dakaam.mac.html)]
|
||||
for use with the [PDP-10 Test Machine with Debugger](/devices/pdp10/machine/ka10/test/debugger/) below.
|
||||
|
||||
This diagnostic "IS THE FIRST IN A SERIES OF PDP-10 KA10 PROCESSOR DIAGNOSTICS. IT IS THE MOST BASIC OF THE PROCESSOR DIAGNOSTICS.
|
||||
THIS DIAGNOSTIC ASSUMES THE HALT INSTRUCTION AND THE COMPUTER CONSOLE TO BE OPERATIVE. IT MAKES NO FURTHER ASSUMPTIONS EXCEPT
|
||||
THAT IT IS LOADED INTO MEMORY CORRECTLY."
|
||||
|
||||
Resources for this test include:
|
||||
|
||||
- [Instructions](#dakaatxt)
|
||||
- [History](#dakaahst)
|
||||
- [Source Code](#dakaamac)
|
||||
- [MACRO-10 Listing](DAKAA.LST.txt)
|
||||
- [Additional Information](http://archive.pcjs.org/apps/pdp10/diags/ka10/dakaa/DAKAA.SEQ.txt)
|
||||
|
||||
{% include machine.html id="testka10" %}
|
||||
|
||||
The Debugger's assemble ("a") command can be used to test the new built-in
|
||||
[MACRO-10 Mini-Assembler](/modules/pdp10/lib/macro10.js), which supports a subset
|
||||
of the [MACRO-10](http://archive.pcjs.org/pubs/dec/pdp10/tops10/02_1973AsmRef_macro.pdf) assembly language.
|
||||
This command:
|
||||
|
||||
a 30724 DAKAA.MAC
|
||||
|
||||
will automatically read the [DAKAA.MAC](DAKAA.MAC.txt) source file (a slightly modified copy of [DAKAAM.MAC](DAKAAM.MAC.txt)),
|
||||
assemble it, and then load the binary output at the specified address.
|
||||
|
||||
---
|
||||
|
||||
DAKAA.TXT
|
||||
---------
|
||||
|
||||
```
|
||||
MAINDEC-10-DAKAA
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
IDENTIFICATION
|
||||
--------------
|
||||
|
||||
PRODUCT CODE: MAINDEC-10-DAKAA-B-D
|
||||
|
||||
PRODUCT NAME: DECSYSTEM10 PDP-10 KA10 BASIC
|
||||
INSTRUCTION DIAGNOSTIC (1)
|
||||
|
||||
FUNCTION: BASIC INSTRUCTIONS
|
||||
|
||||
VERSION: 0.2
|
||||
|
||||
DATE RELEASED: JANUARY 1977
|
||||
|
||||
MAINTAINED BY: DIAGNOSTIC ENGINEERING GROUP
|
||||
|
||||
AUTHOR: JOHN R. KIRCHOFF
|
||||
|
||||
COPYRIGHT(C) 1976,1977
|
||||
DIGITAL EQUIPMENT CORPORATION
|
||||
MARLBORO, MASS. 01752
|
||||
|
||||
THIS SOFTWARE IS FURNISHED UNDER A LICENSE FOR USE ONLY
|
||||
ON A SINGLE COMPUTER SYSTEM AND MAY BE COPIED ONLY WITH
|
||||
THE INCLUSION OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE,
|
||||
OR ANY OTHER COPIES THEREOF, MAY NOT BE PROVIDED OR OTHERWISE
|
||||
MADE AVAILABLE TO ANY OTHER PERSON EXECPT FOR USE ON SUCH SYSTEM
|
||||
AND TO ONE WHO AGREES TO THESE LICENSE TERMS. TITLE TO AND
|
||||
OWNERSHIP OF THE SOFTWARE SHALL AT ALL TIMES REMAIN IN DEC.
|
||||
|
||||
THE INFORMATION IN THIS DOCUMENT IS SUBJECT TO CHANGE WITHOUT
|
||||
NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL
|
||||
EQUIPMENT CORPORATION.
|
||||
|
||||
DEC ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
|
||||
SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DEC.
|
||||
|
||||
MAINDEC-10-DAKAA.TXT
|
||||
PAGE 2
|
||||
|
||||
|
||||
TABLE OF CONTENTS
|
||||
-----------------
|
||||
|
||||
1.0 ABSTRACT
|
||||
|
||||
2.0 REQUIREMENTS
|
||||
|
||||
2.1 EQUIPMENT
|
||||
|
||||
2.2 STORAGE
|
||||
|
||||
2.3 PRELIMINARY PROGRAMS
|
||||
|
||||
3.0 PROGRAM PROCEDURES
|
||||
|
||||
3.1 LOADING PROCEDURE
|
||||
|
||||
3.2 STARTING PROCEDURE
|
||||
|
||||
3.3 OPERATING PROCEDURE
|
||||
|
||||
4.0 ERRORS
|
||||
|
||||
5.0 ITERATION COUNTER
|
||||
|
||||
6.0 CYCLE TIME
|
||||
|
||||
7.0 OPERATIONAL VARIATIONS
|
||||
|
||||
8.0 MISCELLANEOUS
|
||||
|
||||
9.0 LISTING
|
||||
|
||||
MAINDEC-10-DAKAA.TXT
|
||||
PAGE 3
|
||||
|
||||
|
||||
1.0 ABSTRACT
|
||||
|
||||
THIS PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC IS THE FIRST IN A
|
||||
SERIES OF PDP-10 KA10 PROCESSOR DIAGNOSTICS. IT IS THE MOST
|
||||
BASIC OF THE PROCESSOR DIAGNOSTICS. THIS DIAGNOSTIC
|
||||
ASSUMES THE HALT INSTRUCTION AND THE COMPUTER CONSOLE
|
||||
TO BE OPERATIVE. IT MAKES NO FURTHER ASSUMPTIONS EXCEPT
|
||||
THAT IT IS LOADED INTO MEMORY CORRECTLY.
|
||||
|
||||
THE DIAGNOSTIC TESTS SOME OF THE MOVE AND SKIP INSTRUCTIONS.
|
||||
IT ALSO TESTS THE ADDERS AND OTHER LOGIC WITH AND, XOR, EQV,
|
||||
AND ALL BOOLE INSTRUCTIONS.
|
||||
|
||||
2.0 REQUIREMENTS
|
||||
|
||||
2.1 EQUIPMENT
|
||||
|
||||
A PDP-10 KA10 WITH A MINIMUM OF 32K OF MEMORY
|
||||
|
||||
PAPER TAPE READER
|
||||
DECTAPE (OPTIONAL)
|
||||
CONSOLE TELETYPE
|
||||
|
||||
2.2 STORAGE
|
||||
|
||||
THE PROGRAM RUNS WITHIN 32K OF MEMORY.
|
||||
|
||||
2.3 PRELIMINARY PROGRAMS
|
||||
|
||||
CONSOLE FUNCTIONS WORKING PROPERLY
|
||||
PAPER TAPE OR DECTAPE READ-IN WORKING PROPERLY
|
||||
|
||||
MAINDEC-10-DAKAA.TXT
|
||||
PAGE 4
|
||||
|
||||
|
||||
3.0 PROGRAM PROCEDURES
|
||||
|
||||
3.1 LOADING PROCEDURE
|
||||
|
||||
PAPER TAPE - HARDWARE READ-IN (READER DEVICE CODE 104)
|
||||
DECTAPE - LOAD WITH DIAMON (DECTAPE DEVICE CODE 320)
|
||||
|
||||
3.2 STARTING PROCEDURE
|
||||
|
||||
STAND-ALONE STARTING ADDRESS IS 30000.
|
||||
|
||||
IF THE DIAGNOSTIC FAILS TO START CORRECTLY TRY STARTING AT THE
|
||||
FIRST TEST INSTEAD OF AT THE BEGINNING OF THE CONTROL SEQUENCE.
|
||||
(SEE LISTING).
|
||||
|
||||
3.3 OPERATING PROCEDURE
|
||||
|
||||
ONCE STARTED THE PROGRAM WILL CYCLE CONTINUALLY UNTIL STOPPED
|
||||
OR AN ERROR OCCURS.
|
||||
|
||||
4.0 ERRORS
|
||||
|
||||
ERRORS ARE IN THE FORM OF HALT INSTRUCTIONS. THE LISTING
|
||||
SHOULD BE CONSULTED TO DETERMINE THE CAUSE OF THE ERROR. A
|
||||
NO OPERATION (JUMP) INSTRUCTION FOLLOWS EACH HALT. THIS
|
||||
MAY BE USEFUL IN CONSTRUCTING A SCOPE LOOP TO CYCLE ON THE
|
||||
FAILING INSTRUCTION.
|
||||
|
||||
5.0 ITERATION COUNTER
|
||||
|
||||
THE ITERATION COUNT OF THE PROGRAM IS DISPLAYED IN THE MEM-
|
||||
ORY INDICATORS (MI). THIS COUNT IS A DECREMENTING COUNT AND
|
||||
INITIALLY STARTS AT -1 IN STAND-ALONE OPERATION.
|
||||
|
||||
6.0 CYCLE TIME
|
||||
|
||||
THE CYCLE TIME OF THE PROGRAM IS IN THE MILLISECOND RANGE AND
|
||||
IS THEREFORE SUITABLE FOR TAKING MARGINS, VIBRATION TESTS, ETC.
|
||||
|
||||
MAINDEC-10-DAKAA.TXT
|
||||
PAGE 5
|
||||
|
||||
|
||||
7.0 OPERATIONAL VARIATIONS
|
||||
|
||||
A. DIAGNOSTIC MONITOR
|
||||
|
||||
THE PROGRAM IS USABLE WITH THE DIAGNOSTIC MONITOR TO PRO-
|
||||
VIDE RELIABILITY TESTS, ACCEPTANCE TESTS, AND/OR TO PRO-
|
||||
VIDE A QUICK METHOD OF ISOLATION OF A FAULT TO A PARTICULAR
|
||||
AREA OF THE PROCESSOR. CERTAIN PROCEDURES ARE USED WHEN
|
||||
THE PROGRAM IS USED IN THIS MANNER. THEY ARE:
|
||||
|
||||
1. THE DIAGNOSTIC MONITOR TRANSFERS CONTROL TO THE PRO-
|
||||
GRAM AND STARTS IT AT LOCATION 30002.
|
||||
|
||||
2. MONCTL - LOCATION 30043 IS USED AS THE DIAGNOSTIC MON-
|
||||
ITOR CONTROL FLAG WORD.
|
||||
|
||||
B. USER MODE
|
||||
|
||||
THE PROGRAM WILL OPERATE IN USER MODE AND AS SUCH PROVIDES
|
||||
ASSURANCE THAT THE PROCESSOR IS PERFORMING ALL FUNCTIONS
|
||||
CORRECTLY. USER MODE STARTING ADDRESS IS 30000.
|
||||
|
||||
C. SYSTEM EXERCISER
|
||||
|
||||
STARTING ADDRESS IS 30003. NO DATA SWITCHES ARE USED BY
|
||||
THIS PROGRAM.
|
||||
|
||||
8.0 MISCELLANEOUS
|
||||
|
||||
NONE
|
||||
|
||||
9.0 LISTING
|
||||
|
||||
```
|
||||
|
||||
DAKAA.HST
|
||||
---------
|
||||
|
||||
THIS IS A HISTORY OF THE DEVELOPMENT OF MAINDEC-10-DAKAA
|
||||
|
||||
************************************************************************
|
||||
|
||||
PRODUCT CODE: MAINDEC-10-DAKAA
|
||||
|
||||
PRODUCT NAME: BASIC INSTRUCTION DIAGNOSTIC #1
|
||||
|
||||
DATE RELEASED: JANUARY 1977
|
||||
|
||||
VERSION: 0.2
|
||||
|
||||
UPDATE AUTHOR: JOHN R. KIRCHOFF
|
||||
|
||||
CHANGES MADE:
|
||||
|
||||
1. UPGRADE TO ALLOW COMPATABILITY WITH THE SUBROUTINE PACKAGE.
|
||||
|
||||
************************************************************************
|
||||
|
||||
ORIGINAL VERSION: 0.1
|
||||
|
||||
ORIGINAL AUTHOR: RICHARD MALISKA
|
||||
|
||||
ORIGINAL RELEASE: 16-MAR-72
|
||||
|
||||
************************************************************************
|
||||
|
||||
DAKAA.MAC
|
||||
---------
|
||||
|
||||
[[Download](DAKAA.MAC.txt)]
|
||||
|
||||
{% highlight text %}
|
||||
{% include_relative DAKAA.MAC.txt %}
|
||||
{% endhighlight %}
|
||||
12231
apps/pdp10/diags/ka10/dakab/DAKAB.LST.txt
Normal file
12231
apps/pdp10/diags/ka10/dakab/DAKAB.LST.txt
Normal file
File diff suppressed because it is too large
Load diff
1782
apps/pdp10/diags/ka10/dakab/DAKAB.MAC.txt
Normal file
1782
apps/pdp10/diags/ka10/dakab/DAKAB.MAC.txt
Normal file
File diff suppressed because it is too large
Load diff
1770
apps/pdp10/diags/ka10/dakab/DAKABM.MAC.txt
Normal file
1770
apps/pdp10/diags/ka10/dakab/DAKABM.MAC.txt
Normal file
File diff suppressed because it is too large
Load diff
279
apps/pdp10/diags/ka10/dakab/README.md
Normal file
279
apps/pdp10/diags/ka10/dakab/README.md
Normal file
|
|
@ -0,0 +1,279 @@
|
|||
---
|
||||
layout: page
|
||||
title: PDP-10 KA10 Basic Instruction Diagnostic #2
|
||||
permalink: /apps/pdp10/diags/ka10/dakab/
|
||||
machines:
|
||||
- id: testka10
|
||||
type: pdp10
|
||||
config: /devices/pdp10/machine/ka10/test/debugger/machine.xml
|
||||
debugger: true
|
||||
commands: a 30724 DAKAB.MAC
|
||||
---
|
||||
|
||||
PDP-10 KA10 Basic Instruction Diagnostic #2
|
||||
-------------------------------------------
|
||||
|
||||
The *PDP-10 KA10 Basic Instruction Diagnostic #2* (MAINDEC-10-DAKAB) test code has been extracted from
|
||||
[DAKABM.MAC](DAKABM.MAC.txt) [[original](http://pdp-10.trailing-edge.com/klad_sources/01/klad.sources/dakabm.mac.html)]
|
||||
for use with the [PDP-10 Test Machine with Debugger](/devices/pdp10/machine/ka10/test/debugger/) below.
|
||||
|
||||
This diagnostic tests "MOVE, COMPARE, TEST, HALF WORD AND BOOLE. IT ALSO TESTS THE ADDERS USING ADD AND COMPARE INSTRUCTIONS."
|
||||
|
||||
Resources for this diagnostic include:
|
||||
|
||||
- [Instructions](#dakabtxt)
|
||||
- [History](#dakabhst)
|
||||
- [Source Code](#dakabmac)
|
||||
- [MACRO-10 Listing](DAKAB.LST.txt)
|
||||
- [Additional Information](http://archive.pcjs.org/apps/pdp10/diags/ka10/dakab/DAKAB.SEQ.txt)
|
||||
|
||||
{% include machine.html id="testka10" %}
|
||||
|
||||
The Debugger's assemble ("a") command can be used to test the new built-in
|
||||
[MACRO-10 Mini-Assembler](/modules/pdp10/lib/macro10.js), which supports a subset
|
||||
of the [MACRO-10](http://archive.pcjs.org/pubs/dec/pdp10/tops10/02_1973AsmRef_macro.pdf) assembly language.
|
||||
This command:
|
||||
|
||||
a 30724 DAKAB.MAC
|
||||
|
||||
will automatically read the [DAKAB.MAC](DAKAB.MAC.txt) source file (a slightly modified copy of [DAKABM.MAC](DAKABM.MAC.txt)),
|
||||
assemble it, and then load the binary output at the specified address.
|
||||
|
||||
---
|
||||
|
||||
DAKAB.TXT
|
||||
---------
|
||||
|
||||
```
|
||||
MAINDEC-10-DAKAB.TXT
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
IDENTIFICATION
|
||||
--------------
|
||||
|
||||
PRODUCT CODE: MAINDEC-10-DAKAB-B-D
|
||||
|
||||
PRODUCT NAME: DECSYSTEM10 PDP-10 KA10 BASIC
|
||||
INSTRUCTION DIAGNOSTIC (2)
|
||||
|
||||
FUNCTION: BASIC INSTRUCTIONS 2
|
||||
|
||||
VERSION: 0.2
|
||||
|
||||
DATE RELEASED: JANUARY 1977
|
||||
|
||||
MAINTAINED BY: DIAGNOSTIC ENGINEERING GROUP
|
||||
|
||||
AUTHOR: JOHN R. KIRCHOFF
|
||||
|
||||
COPYRIGHT(C) 1976,1977
|
||||
DIGITAL EQUIPMENT CORPORATION
|
||||
MARLBORO, MASS. 01752
|
||||
|
||||
THIS SOFTWARE IS FURNISHED UNDER A LICENSE FOR USE ONLY
|
||||
ON A SINGLE COMPUTER SYSTEM AND MAY BE COPIED ONLY WITH
|
||||
THE INCLUSION OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE,
|
||||
OR ANY OTHER COPIES THEREOF, MAY NOT BE PROVIDED OR OTHERWISE
|
||||
MADE AVAILABLE TO ANY OTHER PERSON EXECPT FOR USE ON SUCH SYSTEM
|
||||
AND TO ONE WHO AGREES TO THESE LICENSE TERMS. TITLE TO AND
|
||||
OWNERSHIP OF THE SOFTWARE SHALL AT ALL TIMES REMAIN IN DEC.
|
||||
|
||||
THE INFORMATION IN THIS DOCUMENT IS SUBJECT TO CHANGE WITHOUT
|
||||
NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL
|
||||
EQUIPMENT CORPORATION.
|
||||
|
||||
DEC ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
|
||||
SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DEC.
|
||||
|
||||
MAINDEC-10-DAKAB.TXT
|
||||
PAGE 2
|
||||
|
||||
|
||||
TABLE OF CONTENTS
|
||||
-----------------
|
||||
|
||||
1.0 ABSTRACT
|
||||
|
||||
2.0 REQUIREMENTS
|
||||
|
||||
2.1 EQUIPMENT
|
||||
|
||||
2.2 STORAGE
|
||||
|
||||
2.3 PRELIMINARY PROGRAMS
|
||||
|
||||
3.0 PROGRAM PROCEDURES
|
||||
|
||||
3.1 LOADING PROCEDURE
|
||||
|
||||
3.2 STARTING PROCEDURE
|
||||
|
||||
3.3 OPERATING PROCEDURE
|
||||
|
||||
4.0 ERRORS
|
||||
|
||||
5.0 ITERATION COUNTER
|
||||
|
||||
6.0 CYCLE TIME
|
||||
|
||||
7.0 OPERATIONAL VARIATIONS
|
||||
|
||||
8.0 MISCELLANEOUS
|
||||
|
||||
9.0 LISTING
|
||||
|
||||
MAINDEC-10-DAKAB.TXT
|
||||
PAGE 3
|
||||
|
||||
|
||||
1.0 ABSTRACT
|
||||
|
||||
THIS PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC IS THE
|
||||
SECOND IN A SERIES OF PDP-10 KA10 PROCESSOR DIAGNOSTICS.
|
||||
THE DIAGNOSTIC TESTS SOME FOLLOWING INSTRUCTIONS.
|
||||
MOVE, COMPARE, TEST, HALF WORD AND BOOLE.
|
||||
IT ALSO TESTS THE ADDERS USING ADD AND COMPARE INSTRUCTIONS.
|
||||
|
||||
2.0 REQUIREMENTS
|
||||
|
||||
2.1 EQUIPMENT
|
||||
|
||||
A PDP-10 KA10 WITH A MINIMUM OF 32K OF MEMORY
|
||||
|
||||
PAPER TAPE READER
|
||||
DECTAPE (OPTIONAL)
|
||||
CONSOLE TELETYPE
|
||||
|
||||
2.2 STORAGE
|
||||
|
||||
THE PROGRAM RUNS WITHIN 32K OF MEMORY.
|
||||
|
||||
2.3 PRELIMINARY PROGRAMS
|
||||
|
||||
CONSOLE FUNCTIONS WORKING PROPERLY
|
||||
PAPER TAPE OR DECTAPE READ-IN WORKING PROPERLY
|
||||
PREVIOUS PROCESSOR DIAGNOSTICS
|
||||
|
||||
MAINDEC-10-DAKAB.TXT
|
||||
PAGE 4
|
||||
|
||||
|
||||
3.0 PROGRAM PROCEDURES
|
||||
|
||||
3.1 LOADING PROCEDURE
|
||||
|
||||
PAPER TAPE - HARDWARE READ-IN (READER DEVICE CODE 104)
|
||||
DECTAPE - LOAD WITH DIAMON (DECTAPE DEVICE CODE 320)
|
||||
|
||||
3.2 STARTING PROCEDURE
|
||||
|
||||
STAND-ALONE STARTING ADDRESS IS 30000.
|
||||
|
||||
IF THE DIAGNOSTIC FAILS TO START CORRECTLY TRY STARTING AT THE
|
||||
FIRST TEST INSTEAD OF AT THE BEGINNING OF THE CONTROL SEQUENCE.
|
||||
(SEE LISTING).
|
||||
|
||||
3.3 OPERATING PROCEDURE
|
||||
|
||||
ONCE STARTED THE PROGRAM WILL CYCLE CONTINUALLY UNTIL STOPPED
|
||||
OR AN ERROR OCCURS.
|
||||
|
||||
4.0 ERRORS
|
||||
|
||||
ERRORS ARE IN THE FORM OF HALT INSTRUCTIONS. THE LISTING
|
||||
SHOULD BE CONSULTED TO DETERMINE THE CAUSE OF THE ERROR. A
|
||||
NO OPERATION (JUMP) INSTRUCTION FOLLOWS EACH HALT. THIS
|
||||
MAY BE USEFUL IN CONSTRUCTING A SCOPE LOOP TO CYCLE ON THE
|
||||
FAILING INSTRUCTION.
|
||||
|
||||
5.0 ITERATION COUNTER
|
||||
|
||||
THE ITERATION COUNT OF THE PROGRAM IS DISPLAYED IN THE MEM-
|
||||
ORY INDICATORS (MI). THIS COUNT IS A DECREMENTING COUNT AND
|
||||
INITIALLY STARTS AT -1 IN STAND-ALONE OPERATION.
|
||||
|
||||
6.0 CYCLE TIME
|
||||
|
||||
THE CYCLE TIME OF THE PROGRAM IS IN THE MILLISECOND RANGE AND
|
||||
IS THEREFORE SUITABLE FOR TAKING MARGINS, VIBRATION TESTS, ETC.
|
||||
|
||||
MAINDEC-10-DAKAB.TXT
|
||||
PAGE 5
|
||||
|
||||
|
||||
7.0 OPERATIONAL VARIATIONS
|
||||
|
||||
A. DIAGNOSTIC MONITOR
|
||||
|
||||
THE PROGRAM IS USABLE WITH THE DIAGNOSTIC MONITOR TO PRO-
|
||||
VIDE RELIABILITY TESTS, ACCEPTANCE TESTS, AND/OR TO PRO-
|
||||
VIDE A QUICK METHOD OF ISOLATION OF A FAULT TO A PARTICULAR
|
||||
AREA OF THE PROCESSOR. CERTAIN PROCEDURES ARE USED WHEN
|
||||
THE PROGRAM IS USED IN THIS MANNER. THEY ARE:
|
||||
|
||||
1. THE DIAGNOSTIC MONITOR TRANSFERS CONTROL TO THE PRO-
|
||||
GRAM AND STARTS IT AT LOCATION 30002.
|
||||
|
||||
2. MONCTL - LOCATION 30043 IS USED AS THE DIAGNOSTIC MON-
|
||||
ITOR CONTROL FLAG WORD.
|
||||
|
||||
B. USER MODE
|
||||
|
||||
THE PROGRAM WILL OPERATE IN USER MODE AND AS SUCH PROVIDES
|
||||
ASSURANCE THAT THE PROCESSOR IS PERFORMING ALL FUNCTIONS
|
||||
CORRECTLY. USER MODE STARTING ADDRESS IS 30000.
|
||||
|
||||
C. SYSTEM EXERCISER
|
||||
|
||||
STARTING ADDRESS IS 30003. NO DATA SWITCHES ARE USED BY
|
||||
THIS PROGRAM.
|
||||
|
||||
8.0 MISCELLANEOUS
|
||||
|
||||
NONE
|
||||
|
||||
9.0 LISTING
|
||||
```
|
||||
|
||||
DAKAB.HST
|
||||
---------
|
||||
|
||||
THIS IS A HISTORY OF THE DEVELOPMENT OF MAINDEC-10-DAKAB
|
||||
|
||||
************************************************************************
|
||||
|
||||
PRODUCT CODE: MAINDEC-10-DAKAB
|
||||
|
||||
PRODUCT NAME: BASIC INSTRUCTION DIAGNOSTIC #2
|
||||
|
||||
DATE RELEASED: JANUARY 1977
|
||||
|
||||
VERSION: 0.2
|
||||
|
||||
UPDATE AUTHOR: JOHN R. KIRCHOFF
|
||||
|
||||
CHANGES MADE:
|
||||
|
||||
1. UPGRADE TO ALLOW COMPATABILITY WITH THE SUBROUTINE PACKAGE.
|
||||
|
||||
************************************************************************
|
||||
|
||||
ORIGINAL VERSION: 0.1
|
||||
|
||||
ORIGINAL AUTHOR: RICHARD MALISKA
|
||||
|
||||
ORIGINAL RELEASE: 16-MAR-72
|
||||
|
||||
************************************************************************
|
||||
|
||||
DAKAB.MAC
|
||||
---------
|
||||
|
||||
[[Download](DAKAB.MAC.txt)]
|
||||
|
||||
{% highlight text %}
|
||||
{% include_relative DAKAB.MAC.txt %}
|
||||
{% endhighlight %}
|
||||
7750
apps/pdp10/diags/ka10/dakac/DAKAC.LST.txt
Normal file
7750
apps/pdp10/diags/ka10/dakac/DAKAC.LST.txt
Normal file
File diff suppressed because it is too large
Load diff
2664
apps/pdp10/diags/ka10/dakac/DAKAC.MAC.txt
Normal file
2664
apps/pdp10/diags/ka10/dakac/DAKAC.MAC.txt
Normal file
File diff suppressed because it is too large
Load diff
2652
apps/pdp10/diags/ka10/dakac/DAKACM.MAC.txt
Normal file
2652
apps/pdp10/diags/ka10/dakac/DAKACM.MAC.txt
Normal file
File diff suppressed because it is too large
Load diff
278
apps/pdp10/diags/ka10/dakac/README.md
Normal file
278
apps/pdp10/diags/ka10/dakac/README.md
Normal file
|
|
@ -0,0 +1,278 @@
|
|||
---
|
||||
layout: page
|
||||
title: PDP-10 KA10 Basic Instruction Diagnostic #3
|
||||
permalink: /apps/pdp10/diags/ka10/dakac/
|
||||
machines:
|
||||
- id: testka10
|
||||
type: pdp10
|
||||
config: /devices/pdp10/machine/ka10/test/debugger/machine.xml
|
||||
debugger: true
|
||||
commands: a 30724 DAKAC.MAC
|
||||
---
|
||||
|
||||
PDP-10 KA10 Basic Instruction Diagnostic #3
|
||||
-------------------------------------------
|
||||
|
||||
The *PDP-10 KA10 Basic Instruction Diagnostic #3* (MAINDEC-10-DAKAC) test code has been extracted from
|
||||
[DAKACM.MAC](DAKACM.MAC.txt) [[original](http://pdp-10.trailing-edge.com/klad_sources/01/klad.sources/dakacm.mac.html)]
|
||||
for use with the [PDP-10 Test Machine with Debugger](/devices/pdp10/machine/ka10/test/debugger/) below.
|
||||
|
||||
This diagnostic tests "LOGICAL TEST, HALF WORD INSTRUCTIONS AND THE ADDER."
|
||||
|
||||
Resources for this diagnostic include:
|
||||
|
||||
- [Instructions](#dakactxt)
|
||||
- [History](#dakachst)
|
||||
- [Source Code](#dakacmac)
|
||||
- [MACRO-10 Listing](DAKAC.LST.txt)
|
||||
- [Additional Information](http://archive.pcjs.org/apps/pdp10/diags/ka10/dakac/DAKAC.SEQ.txt)
|
||||
|
||||
{% include machine.html id="testka10" %}
|
||||
|
||||
The Debugger's assemble ("a") command can be used to test the new built-in
|
||||
[MACRO-10 Mini-Assembler](/modules/pdp10/lib/macro10.js), which supports a subset
|
||||
of the [MACRO-10](http://archive.pcjs.org/pubs/dec/pdp10/tops10/02_1973AsmRef_macro.pdf) assembly language.
|
||||
This command:
|
||||
|
||||
a 30724 DAKAC.MAC
|
||||
|
||||
will automatically read the [DAKAC.MAC](DAKAC.MAC.txt) source file (a slightly modified copy of [DAKACM.MAC](DAKACM.MAC.txt)),
|
||||
assemble it, and then load the binary output at the specified address.
|
||||
|
||||
---
|
||||
|
||||
DAKAC.TXT
|
||||
---------
|
||||
|
||||
```
|
||||
MAINDEC-10-DAKAC.TXT
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
IDENTIFICATION
|
||||
--------------
|
||||
|
||||
PRODUCT CODE: MAINDEC-10-DAKAC-B-D
|
||||
|
||||
PRODUCT NAME: DECSYSTEM10 PDP-10 KA10 BASIC
|
||||
INSTRUCTION DIAGNOSTIC (3)
|
||||
|
||||
FUNCTION: LOGICAL, HALF WORD, ADDER
|
||||
|
||||
VERSION: 0.2
|
||||
|
||||
DATE RELEASED: JANUARY 1977
|
||||
|
||||
MAINTAINED BY: DIAGNOSTIC ENGINEERING GROUP
|
||||
|
||||
AUTHOR: JOHN R. KIRCHOFF
|
||||
|
||||
COPYRIGHT(C) 1976,1977
|
||||
DIGITAL EQUIPMENT CORPORATION
|
||||
MARLBORO, MASS. 01752
|
||||
|
||||
THIS SOFTWARE IS FURNISHED UNDER A LICENSE FOR USE ONLY
|
||||
ON A SINGLE COMPUTER SYSTEM AND MAY BE COPIED ONLY WITH
|
||||
THE INCLUSION OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE,
|
||||
OR ANY OTHER COPIES THEREOF, MAY NOT BE PROVIDED OR OTHERWISE
|
||||
MADE AVAILABLE TO ANY OTHER PERSON EXECPT FOR USE ON SUCH SYSTEM
|
||||
AND TO ONE WHO AGREES TO THESE LICENSE TERMS. TITLE TO AND
|
||||
OWNERSHIP OF THE SOFTWARE SHALL AT ALL TIMES REMAIN IN DEC.
|
||||
|
||||
THE INFORMATION IN THIS DOCUMENT IS SUBJECT TO CHANGE WITHOUT
|
||||
NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL
|
||||
EQUIPMENT CORPORATION.
|
||||
|
||||
DEC ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
|
||||
SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DEC.
|
||||
|
||||
MAINDEC-10-DAKAC.TXT
|
||||
PAGE 2
|
||||
|
||||
|
||||
TABLE OF CONTENTS
|
||||
-----------------
|
||||
|
||||
1.0 ABSTRACT
|
||||
|
||||
2.0 REQUIREMENTS
|
||||
|
||||
2.1 EQUIPMENT
|
||||
|
||||
2.2 STORAGE
|
||||
|
||||
2.3 PRELIMINARY PROGRAMS
|
||||
|
||||
3.0 PROGRAM PROCEDURES
|
||||
|
||||
3.1 LOADING PROCEDURE
|
||||
|
||||
3.2 STARTING PROCEDURE
|
||||
|
||||
3.3 OPERATING PROCEDURE
|
||||
|
||||
4.0 ERRORS
|
||||
|
||||
5.0 ITERATION COUNTER
|
||||
|
||||
6.0 CYCLE TIME
|
||||
|
||||
7.0 OPERATIONAL VARIATIONS
|
||||
|
||||
8.0 MISCELLANEOUS
|
||||
|
||||
9.0 LISTING
|
||||
|
||||
MAINDEC-10-DAKAC.TXT
|
||||
PAGE 3
|
||||
|
||||
|
||||
1.0 ABSTRACT
|
||||
|
||||
THIS PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC IS THE
|
||||
THIRD IN A SERIES OF PDP-10 KA10 PROCESSOR DIAGNOSTICS.
|
||||
THE DIAGNOSTIC TESTS SOME FOLLOWING INSTRUCTIONS.
|
||||
LOGICAL TEST, HALF WORD INSTRUCTIONS AND THE ADDER.
|
||||
|
||||
2.0 REQUIREMENTS
|
||||
|
||||
2.1 EQUIPMENT
|
||||
|
||||
A PDP-10 KA10 WITH A MINIMUM OF 32K OF MEMORY
|
||||
|
||||
PAPER-TAPE READER
|
||||
DECTAPE (OPTIONAL)
|
||||
CONSOLE TELETYPE
|
||||
|
||||
2.2 STORAGE
|
||||
|
||||
THE PROGRAM RUNS WITHIN 32K OF MEMORY.
|
||||
|
||||
2.3 PRELIMINARY PROGRAMS
|
||||
|
||||
CONSOLE FUNCTIONS WORKING PROPERLY
|
||||
PAPER-TAPE OR DECTAPE READ-IN WORKING PROPERLY
|
||||
PREVIOUS PROCESSOR DIAGNOSTICS
|
||||
|
||||
MAINDEC-10-DAKAC.TXT
|
||||
PAGE 4
|
||||
|
||||
|
||||
3.0 PROGRAM PROCEDURES
|
||||
|
||||
3.1 LOADING PROCEDURE
|
||||
|
||||
PAPER TAPE - HARDWARE READ-IN (READER DEVICE CODE 104)
|
||||
DECTAPE - LOAD WITH DIAMON (DECTAPE DEVICE CODE 320)
|
||||
|
||||
3.2 STARTING PROCEDURE
|
||||
|
||||
STAND-ALONE STARTING ADDRESS IS 30000.
|
||||
|
||||
IF THE DIAGNOSTIC FAILS TO START CORRECTLY TRY STARTING AT THE
|
||||
FIRST TEST INSTEAD OF AT THE BEGINNING OF THE CONTROL SEQUENCE.
|
||||
(SEE LISTING).
|
||||
|
||||
3.3 OPERATING PROCEDURE
|
||||
|
||||
ONCE STARTED THE PROGRAM WILL CYCLE CONTINUALLY UNTIL STOPPED
|
||||
OR AN ERROR OCCURS.
|
||||
|
||||
4.0 ERRORS
|
||||
|
||||
ERRORS ARE IN THE FORM OF HALT INSTRUCTIONS. THE LISTING
|
||||
SHOULD BE CONSULTED TO DETERMINE THE CAUSE OF THE ERROR. A
|
||||
NO OPERATION (JUMP) INSTRUCTION FOLLOWS EACH HALT. THIS
|
||||
MAY BE USEFUL IN CONSTRUCTING A SCOPE LOOP TO CYCLE ON THE
|
||||
FAILING INSTRUCTION.
|
||||
|
||||
5.0 ITERATION COUNTER
|
||||
|
||||
THE ITERATION COUNT OF THE PROGRAM IS DISPLAYED IN THE MEM-
|
||||
ORY INDICATORS (MI). THIS COUNT IS A DECREMENTING COUNT AND
|
||||
INITIALLY STARTS AT -1 IN STAND-ALONE OPERATION.
|
||||
|
||||
6.0 CYCLE TIME
|
||||
|
||||
THE CYCLE TIME OF THE PROGRAM IS IN THE MILLISECOND RANGE AND
|
||||
IS THEREFORE SUITABLE FOR TAKING MARGINS, VIBRATION TESTS, ETC.
|
||||
|
||||
MAINDEC-10-DAKAC.TXT
|
||||
PAGE 5
|
||||
|
||||
|
||||
7.0 OPERATIONAL VARIATIONS
|
||||
|
||||
A. DIAGNOSTIC MONITOR
|
||||
|
||||
THE PROGRAM IS USABLE WITH THE DIAGNOSTIC MONITOR TO PRO-
|
||||
VIDE RELIABILITY TESTS, ACCEPTANCE TESTS, AND/OR TO PRO-
|
||||
VIDE A QUICK METHOD OF ISOLATION OF A FAULT TO A PARTICULAR
|
||||
AREA OF THE PROCESSOR. CERTAIN PROCEDURES ARE USED WHEN
|
||||
THE PROGRAM IS USED IN THIS MANNER. THEY ARE:
|
||||
|
||||
1. THE DIAGNOSTIC MONITOR TRANSFERS CONTROL TO THE PRO-
|
||||
GRAM AND STARTS IT AT LOCATION 30002.
|
||||
|
||||
2. MONCTL - LOCATION 30043 IS USED AS THE DIAGNOSTIC MON-
|
||||
ITOR CONTROL FLAG WORD.
|
||||
|
||||
B. USER MODE
|
||||
|
||||
THE PROGRAM WILL OPERATE IN USER MODE AND AS SUCH PROVIDES
|
||||
ASSURANCE THAT THE PROCESSOR IS PERFORMING ALL FUNCTIONS
|
||||
CORRECTLY. USER MODE STARTING ADDRESS IS 30000.
|
||||
|
||||
C. SYSTEM EXERCISER
|
||||
|
||||
STARTING ADDRESS IS 30003. NO DATA SWITCHES ARE USED BY
|
||||
THIS PROGRAM.
|
||||
|
||||
8.0 MISCELLANEOUS
|
||||
|
||||
NONE
|
||||
|
||||
9.0 LISTING
|
||||
```
|
||||
|
||||
DAKAC.HST
|
||||
---------
|
||||
|
||||
THIS IS A HISTORY OF THE DEVELOPMENT OF MAINDEC-10-DAKAC
|
||||
|
||||
************************************************************************
|
||||
|
||||
PRODUCT CODE: MAINDEC-10-DAKAC
|
||||
|
||||
PRODUCT NAME: BASIC INSTRUCTION DIAGNOSTIC #3
|
||||
|
||||
DATE RELEASED: JANUARY 1977
|
||||
|
||||
VERSION: 0.2
|
||||
|
||||
UPDATE AUTHOR: JOHN R. KIRCHOFF
|
||||
|
||||
CHANGES MADE:
|
||||
|
||||
1. UPGRADE TO ALLOW COMPATABILITY WITH THE SUBROUTINE PACKAGE.
|
||||
|
||||
************************************************************************
|
||||
|
||||
ORIGINAL VERSION: 0.1
|
||||
|
||||
ORIGINAL AUTHOR: RICHARD MALISKA
|
||||
|
||||
ORIGINAL RELEASE: 16-MAR-72
|
||||
|
||||
************************************************************************
|
||||
|
||||
DAKAC.MAC
|
||||
---------
|
||||
|
||||
[[Download](DAKAC.MAC.txt)]
|
||||
|
||||
{% highlight text %}
|
||||
{% include_relative DAKAC.MAC.txt %}
|
||||
{% endhighlight %}
|
||||
7993
apps/pdp10/diags/ka10/dakad/DAKAD.LST.txt
Normal file
7993
apps/pdp10/diags/ka10/dakad/DAKAD.LST.txt
Normal file
File diff suppressed because it is too large
Load diff
2054
apps/pdp10/diags/ka10/dakad/DAKAD.MAC.txt
Normal file
2054
apps/pdp10/diags/ka10/dakad/DAKAD.MAC.txt
Normal file
File diff suppressed because it is too large
Load diff
2054
apps/pdp10/diags/ka10/dakad/DAKADM.MAC.txt
Normal file
2054
apps/pdp10/diags/ka10/dakad/DAKADM.MAC.txt
Normal file
File diff suppressed because it is too large
Load diff
294
apps/pdp10/diags/ka10/dakad/README.md
Normal file
294
apps/pdp10/diags/ka10/dakad/README.md
Normal file
|
|
@ -0,0 +1,294 @@
|
|||
---
|
||||
layout: page
|
||||
title: PDP-10 KA10 Basic Instruction Diagnostic #4
|
||||
permalink: /apps/pdp10/diags/ka10/dakad/
|
||||
machines:
|
||||
- id: testka10
|
||||
type: pdp10
|
||||
config: /devices/pdp10/machine/ka10/test/debugger/machine.xml
|
||||
debugger: true
|
||||
commands: a 30724 DAKAD.MAC
|
||||
---
|
||||
|
||||
PDP-10 KA10 Basic Instruction Diagnostic #4
|
||||
-------------------------------------------
|
||||
|
||||
The *PDP-10 KA10 Basic Instruction Diagnostic #4* (MAINDEC-10-DAKAD) test code has been extracted from
|
||||
[DAKADM.MAC](DAKADM.MAC.txt) [[original](http://pdp-10.trailing-edge.com/klad_sources/01/klad.sources/dakadm.mac.html)]
|
||||
for use with the [PDP-10 Test Machine with Debugger](/devices/pdp10/machine/ka10/test/debugger/) below.
|
||||
|
||||
This diagnostic "TESTS REGISTER ADDRESSING, JFCL, AR FLAGS, AOS, SOS, JRST, AOBJX, JSP, XCT, INDIRECT AND INDEXED ADDRESSING."
|
||||
|
||||
Resources for this diagnostic include:
|
||||
|
||||
- [Instructions](#dakadtxt)
|
||||
- [History](#dakadhst)
|
||||
- [Source Code](#dakadmac)
|
||||
- [MACRO-10 Listing](DAKAD.LST.txt)
|
||||
- [Additional Information](http://archive.pcjs.org/apps/pdp10/diags/ka10/dakad/DAKAD.SEQ.txt)
|
||||
|
||||
{% include machine.html id="testka10" %}
|
||||
|
||||
The Debugger's assemble ("a") command can be used to test the new built-in
|
||||
[MACRO-10 Mini-Assembler](/modules/pdp10/lib/macro10.js), which supports a subset
|
||||
of the [MACRO-10](http://archive.pcjs.org/pubs/dec/pdp10/tops10/02_1973AsmRef_macro.pdf) assembly language.
|
||||
This command:
|
||||
|
||||
a 30724 DAKAD.MAC
|
||||
|
||||
will automatically read the [DAKAD.MAC](DAKAD.MAC.txt) source file (a slightly modified copy of [DAKADM.MAC](DAKADM.MAC.txt)),
|
||||
assemble it, and then load the binary output at the specified address. Use the command `db 30724` to dump the first few words
|
||||
of binary data:
|
||||
|
||||
030724: 254000 030741 053 000 000 061 160 +..1p
|
||||
030725: 064252 042240 015 012 120 104 120 ..PDP
|
||||
030726: 265426 020226 055 061 060 040 113 -10 K
|
||||
030727: 405426 020204 101 061 060 040 102 A10 B
|
||||
030730: 406471 141500 101 123 111 103 040 ASIC
|
||||
030731: 446352 352244 111 116 123 124 122 INSTR
|
||||
030732: 526072 444636 125 103 124 111 117 UCTIO
|
||||
030733: 471010 444602 116 040 104 111 101 N DIA
|
||||
030734: 436351 751650 107 116 117 123 124 GNOST
|
||||
030735: 446064 024150 111 103 040 050 064 IC (4
|
||||
030736: 245013 342202 051 040 133 104 101 ) [DA
|
||||
030737: 456030 456432 113 101 104 135 015 KAD].
|
||||
|
||||
---
|
||||
|
||||
DAKAD.TXT
|
||||
---------
|
||||
|
||||
```
|
||||
MAINDEC-10-DAKAD.TXT
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
IDENTIFICATION
|
||||
--------------
|
||||
|
||||
PRODUCT CODE: MAINDEC-10-DAKAD-B-D
|
||||
|
||||
PRODUCT NAME: DECSYSTEM10 PDP-10 KA10 BASIC
|
||||
INSTRUCTION DIAGNOSTIC (4)
|
||||
|
||||
FUNCTION: REGISTER ADDRESSING, PC CHANGE, XCT
|
||||
|
||||
VERSION: 0.2
|
||||
|
||||
DATE RELEASED: JANUARY 1977
|
||||
|
||||
MAINTAINED BY: DIAGNOSTIC ENGINEERING GROUP
|
||||
|
||||
AUTHOR: JOHN R. KIRCHOFF
|
||||
|
||||
COPYRIGHT(C) 1976,1977
|
||||
DIGITAL EQUIPMENT CORPORATION
|
||||
MARLBORO, MASS. 01752
|
||||
|
||||
THIS SOFTWARE IS FURNISHED UNDER A LICENSE FOR USE ONLY
|
||||
ON A SINGLE COMPUTER SYSTEM AND MAY BE COPIED ONLY WITH
|
||||
THE INCLUSION OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE,
|
||||
OR ANY OTHER COPIES THEREOF, MAY NOT BE PROVIDED OR OTHERWISE
|
||||
MADE AVAILABLE TO ANY OTHER PERSON EXECPT FOR USE ON SUCH SYSTEM
|
||||
AND TO ONE WHO AGREES TO THESE LICENSE TERMS. TITLE TO AND
|
||||
OWNERSHIP OF THE SOFTWARE SHALL AT ALL TIMES REMAIN IN DEC.
|
||||
|
||||
THE INFORMATION IN THIS DOCUMENT IS SUBJECT TO CHANGE WITHOUT
|
||||
NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL
|
||||
EQUIPMENT CORPORATION.
|
||||
|
||||
DEC ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
|
||||
SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DEC.
|
||||
|
||||
MAINDEC-10-DAKAD.TXT
|
||||
PAGE 2
|
||||
|
||||
|
||||
TABLE OF CONTENTS
|
||||
-----------------
|
||||
|
||||
1.0 ABSTRACT
|
||||
|
||||
2.0 REQUIREMENTS
|
||||
|
||||
2.1 EQUIPMENT
|
||||
|
||||
2.2 STORAGE
|
||||
|
||||
2.3 PRELIMINARY PROGRAMS
|
||||
|
||||
3.0 PROGRAM PROCEDURES
|
||||
|
||||
3.1 LOADING PROCEDURE
|
||||
|
||||
3.2 STARTING PROCEDURE
|
||||
|
||||
3.3 OPERATING PROCEDURE
|
||||
|
||||
4.0 ERRORS
|
||||
|
||||
5.0 ITERATION COUNTER
|
||||
|
||||
6.0 CYCLE TIME
|
||||
|
||||
7.0 OPERATIONAL VARIATIONS
|
||||
|
||||
8.0 MISCELLANEOUS
|
||||
|
||||
9.0 LISTING
|
||||
|
||||
MAINDEC-10-DAKAD.TXT
|
||||
PAGE 3
|
||||
|
||||
|
||||
1.0 ABSTRACT
|
||||
|
||||
THIS PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC IS THE
|
||||
FOURTH IN A SERIES OF PDP-10 KA10 PROCESSOR DIAGNOSTICS.
|
||||
THE DIAGNOSTIC TESTS REGISTER ADDRESSING, JFCL, AR FLAGS,
|
||||
AOS, SOS, JRST, AOBJX, JSP, XCT, INDIRECT AND
|
||||
INDEXED ADDRESSING.
|
||||
|
||||
2.0 REQUIREMENTS
|
||||
|
||||
2.1 EQUIPMENT
|
||||
|
||||
A PDP-10 KA10 WITH A MINIMUM OF 32K OF MEMORY
|
||||
|
||||
PAPER-TAPE READER
|
||||
DECTAPE (OPTIONAL)
|
||||
CONSOLE TELETYPE
|
||||
|
||||
2.2 STORAGE
|
||||
|
||||
THE PROGRAM RUNS WITHIN 32K OF MEMORY.
|
||||
|
||||
2.3 PRELIMINARY PROGRAMS
|
||||
|
||||
CONSOLE FUNCTIONS WORKING PROPERLY
|
||||
PAPER-TAPE OR DECTAPE READ-IN WORKING PROPERLY
|
||||
PREVIOUS PROCESSOR DIAGNOSTICS
|
||||
|
||||
MAINDEC-10-DAKAD.TXT
|
||||
PAGE 4
|
||||
|
||||
|
||||
3.0 PROGRAM PROCEDURES
|
||||
|
||||
3.1 LOADING PROCEDURE
|
||||
|
||||
PAPER TAPE - HARDWARE READ-IN (READER DEVICE CODE 104)
|
||||
DECTAPE - LOAD WITH DIAMON (DECTAPE DEVICE CODE 320)
|
||||
|
||||
3.2 STARTING PROCEDURE
|
||||
|
||||
STAND-ALONE STARTING ADDRESS IS 30000.
|
||||
|
||||
IF THE DIAGNOSTIC FAILS TO START CORRECTLY TRY STARTING AT THE
|
||||
FIRST TEST INSTEAD OF AT THE BEGINNING OF THE CONTROL SEQUENCE.
|
||||
(SEE LISTING).
|
||||
|
||||
3.3 OPERATING PROCEDURE
|
||||
|
||||
ONCE STARTED THE PROGRAM WILL CYCLE CONTINUALLY UNTIL STOPPED
|
||||
OR AN ERROR OCCURS.
|
||||
|
||||
4.0 ERRORS
|
||||
|
||||
ERRORS ARE IN THE FORM OF HALT INSTRUCTIONS. THE LISTING
|
||||
SHOULD BE CONSULTED TO DETERMINE THE CAUSE OF THE ERROR. A
|
||||
NO OPERATION (JUMP) INSTRUCTION FOLLOWS EACH HALT. THIS
|
||||
MAY BE USEFUL IN CONSTRUCTING A SCOPE LOOP TO CYCLE ON THE
|
||||
FAILING INSTRUCTION.
|
||||
|
||||
5.0 ITERATION COUNTER
|
||||
|
||||
THE ITERATION COUNT OF THE PROGRAM IS DISPLAYED IN THE MEM-
|
||||
ORY INDICATORS (MI). THIS COUNT IS A DECREMENTING COUNT AND
|
||||
INITIALLY STARTS AT -1 IN STAND-ALONE OPERATION.
|
||||
|
||||
6.0 CYCLE TIME
|
||||
|
||||
THE CYCLE TIME OF THE PROGRAM IS IN THE MILLISECOND RANGE AND
|
||||
IS THEREFORE SUITABLE FOR TAKING MARGINS, VIBRATION TESTS, ETC.
|
||||
|
||||
MAINDEC-10-DAKAD.TXT
|
||||
PAGE 5
|
||||
|
||||
|
||||
7.0 OPERATIONAL VARIATIONS
|
||||
|
||||
A. DIAGNOSTIC MONITOR
|
||||
|
||||
THE PROGRAM IS USABLE WITH THE DIAGNOSTIC MONITOR TO PRO-
|
||||
VIDE RELIABILITY TESTS, ACCEPTANCE TESTS, AND/OR TO PRO-
|
||||
VIDE A QUICK METHOD OF ISOLATION OF A FAULT TO A PARTICULAR
|
||||
AREA OF THE PROCESSOR. CERTAIN PROCEDURES ARE USED WHEN
|
||||
THE PROGRAM IS USED IN THIS MANNER. THEY ARE:
|
||||
|
||||
1. THE DIAGNOSTIC MONITOR TRANSFERS CONTROL TO THE PRO-
|
||||
GRAM AND STARTS IT AT LOCATION 30002.
|
||||
|
||||
2. MONCTL - LOCATION 30043 IS USED AS THE DIAGNOSTIC MON-
|
||||
ITOR CONTROL FLAG WORD.
|
||||
|
||||
B. USER MODE
|
||||
|
||||
THE PROGRAM WILL OPERATE IN USER MODE AND AS SUCH PROVIDES
|
||||
ASSURANCE THAT THE PROCESSOR IS PERFORMING ALL FUNCTIONS
|
||||
CORRECTLY. USER MODE STARTING ADDRESS IS 30000.
|
||||
|
||||
C. SYSTEM EXERCISER
|
||||
|
||||
STARTING ADDRESS IS 30003. NO DATA SWITCHES ARE USED BY
|
||||
THIS PROGRAM.
|
||||
|
||||
8.0 MISCELLANEOUS
|
||||
|
||||
NONE
|
||||
|
||||
9.0 LISTING
|
||||
```
|
||||
|
||||
DAKAD.HST
|
||||
---------
|
||||
|
||||
THIS IS A HISTORY OF THE DEVELOPMENT OF MAINDEC-10-DAKAD
|
||||
|
||||
************************************************************************
|
||||
|
||||
PRODUCT CODE: MAINDEC-10-DAKAD
|
||||
|
||||
PRODUCT NAME: BASIC INSTRUCTION DIAGNOSTIC #4
|
||||
|
||||
DATE RELEASED: JANUARY 1977
|
||||
|
||||
VERSION: 0.2
|
||||
|
||||
UPDATE AUTHOR: JOHN R. KIRCHOFF
|
||||
|
||||
CHANGES MADE:
|
||||
|
||||
1. UPGRADE TO ALLOW COMPATABILITY WITH THE SUBROUTINE PACKAGE.
|
||||
|
||||
************************************************************************
|
||||
|
||||
ORIGINAL VERSION: 0.1
|
||||
|
||||
ORIGINAL AUTHOR: RICHARD MALISKA
|
||||
|
||||
ORIGINAL RELEASE: 16-MAR-72
|
||||
|
||||
************************************************************************
|
||||
|
||||
DAKAD.MAC
|
||||
---------
|
||||
|
||||
[[Download](DAKAD.MAC.txt)]
|
||||
|
||||
{% highlight text %}
|
||||
{% include_relative DAKAD.MAC.txt %}
|
||||
{% endhighlight %}
|
||||
5687
apps/pdp10/diags/ka10/dakae/DAKAE.LST.txt
Normal file
5687
apps/pdp10/diags/ka10/dakae/DAKAE.LST.txt
Normal file
File diff suppressed because it is too large
Load diff
2772
apps/pdp10/diags/ka10/dakae/DAKAE.MAC.txt
Normal file
2772
apps/pdp10/diags/ka10/dakae/DAKAE.MAC.txt
Normal file
File diff suppressed because it is too large
Load diff
2739
apps/pdp10/diags/ka10/dakae/DAKAEM.MAC.txt
Normal file
2739
apps/pdp10/diags/ka10/dakae/DAKAEM.MAC.txt
Normal file
File diff suppressed because it is too large
Load diff
291
apps/pdp10/diags/ka10/dakae/README.md
Normal file
291
apps/pdp10/diags/ka10/dakae/README.md
Normal file
|
|
@ -0,0 +1,291 @@
|
|||
---
|
||||
layout: page
|
||||
title: PDP-10 KA10 Basic Instruction Diagnostic #5
|
||||
permalink: /apps/pdp10/diags/ka10/dakae/
|
||||
machines:
|
||||
- id: testka10
|
||||
type: pdp10
|
||||
config: /devices/pdp10/machine/ka10/test/debugger/machine.xml
|
||||
debugger: true
|
||||
commands: a 30706 DAKAE.MAC
|
||||
---
|
||||
|
||||
PDP-10 KA10 Basic Instruction Diagnostic #5
|
||||
-------------------------------------------
|
||||
|
||||
The *PDP-10 KA10 Basic Instruction Diagnostic #5* (MAINDEC-10-DAKAE) test code has been extracted from
|
||||
[DAKAEM.MAC](DAKAEM.MAC.txt) [[original](http://pdp-10.trailing-edge.com/klad_sources/01/klad.sources/dakaem.mac.html)]
|
||||
for use with the [PDP-10 Test Machine with Debugger](/devices/pdp10/machine/ka10/test/debugger/) below.
|
||||
|
||||
This diagnostic "TESTS THE FWT, ADD/SUB, PC CHANGE AND COMPARE INSTRUCTIONS."
|
||||
|
||||
Resources for this diagnostic include:
|
||||
|
||||
- [Instructions](#dakaetxt)
|
||||
- [History](#dakaehst)
|
||||
- [Source Code](#dakaemac)
|
||||
- [MACRO-10 Listing](DAKAE.LST.txt)
|
||||
- [Additional Information](http://archive.pcjs.org/apps/pdp10/diags/ka10/dakae/DAKAE.SEQ.txt)
|
||||
|
||||
{% include machine.html id="testka10" %}
|
||||
|
||||
The Debugger's assemble ("a") command can be used to test the new built-in
|
||||
[MACRO-10 Mini-Assembler](/modules/pdp10/lib/macro10.js), which supports a subset
|
||||
of the [MACRO-10](http://archive.pcjs.org/pubs/dec/pdp10/tops10/02_1973AsmRef_macro.pdf) assembly language.
|
||||
This command:
|
||||
|
||||
a 30706 DAKAE.MAC
|
||||
|
||||
will automatically read the [DAKAE.MAC](DAKAE.MAC.txt) source file (a slightly modified copy of [DAKAEM.MAC](DAKAEM.MAC.txt)),
|
||||
assemble it, and then load the binary output at the specified address.
|
||||
|
||||
---
|
||||
|
||||
DAKAE.TXT
|
||||
---------
|
||||
|
||||
```
|
||||
IDENTIFICATION
|
||||
--------------
|
||||
|
||||
PRODUCT CODE: AH-6859C-DD
|
||||
|
||||
DIAGNOSTIC CODE: DAKAE
|
||||
|
||||
PRODUCT NAME: DAKAEC0 DECSYSTEM10 PDP-10 KA10 BASIC
|
||||
INSTRUCTION DIAGNOSTIC (5)
|
||||
|
||||
VERSION: 0.3
|
||||
|
||||
DATE RELEASED: JANUARY 1979
|
||||
|
||||
MAINTAINED BY: DIAGNOSTIC ENGINEERING
|
||||
|
||||
AUTHOR: BILL SCORZELLI
|
||||
|
||||
COPYRIGHT (C) 1967, 1979
|
||||
|
||||
DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASS.
|
||||
|
||||
THIS SOFTWARE IS FURNISHED UNDER A LICENSE FOR USE ONLY ON A
|
||||
SINGLE COMPUTER SYSTEM AND MAY BE COPIED ONLY WITH THE INCLUSION
|
||||
OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE, OR ANY OTHER
|
||||
COPIES THEREOF, MAY NOT BE PROVIDED OR OTHERWISE MADE AVAILABLE
|
||||
TO ANY OTHER PERSON EXCEPT FOR USE ON SUCH SYSTEM AND TO ONE WHO
|
||||
AGREES TO THESE LICENSE TERMS. TITLE TO AND OWNERSHIP OF THE
|
||||
SOFTWARE SHALL AT ALL TIMES REMAIN IN DIGITAL EQUIPMENT
|
||||
CORPORATION.
|
||||
|
||||
THE INFORMATION IN THIS DOCUMENT IS SUBJECT TO CHANGE WITHOUT
|
||||
NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL
|
||||
EQUIPMENT CORPORATION.
|
||||
|
||||
DIGITAL EQUIPMENT CORPORATION ASSUMES NO RESPONSIBILITY FOR THE
|
||||
USE OR RELIABILITY OF ITS SOFTWARE IN EQUIPMENT WHICH IS NOT
|
||||
SUPPLIED BY DIGITAL EQUIPMENT CORPORATION.
|
||||
|
||||
MAINDEC-10-DAKAE.TXT
|
||||
PAGE 2
|
||||
|
||||
|
||||
TABLE OF CONTENTS
|
||||
-----------------
|
||||
|
||||
1.0 ABSTRACT
|
||||
|
||||
2.0 REQUIREMENTS
|
||||
|
||||
2.1 EQUIPMENT
|
||||
|
||||
2.2 STORAGE
|
||||
|
||||
2.3 PRELIMINARY PROGRAMS
|
||||
|
||||
3.0 PROGRAM PROCEDURES
|
||||
|
||||
3.1 LOADING PROCEDURE
|
||||
|
||||
3.2 STARTING PROCEDURE
|
||||
|
||||
3.3 OPERATING PROCEDURE
|
||||
|
||||
4.0 ERRORS
|
||||
|
||||
5.0 ITERATION COUNTER
|
||||
|
||||
6.0 CYCLE TIME
|
||||
|
||||
7.0 OPERATIONAL VARIATIONS
|
||||
|
||||
8.0 MISCELLANEOUS
|
||||
|
||||
9.0 LISTING
|
||||
|
||||
MAINDEC-10-DAKAE.TXT
|
||||
PAGE 3
|
||||
|
||||
|
||||
1.0 ABSTRACT
|
||||
|
||||
THIS PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC IS THE
|
||||
FIFTH IN A SERIES OF PDP-10 KA10 PROCESSOR DIAGNOSTICS.
|
||||
THE DIAGNOSTIC TESTS THE FWT, ADD/SUB, PC CHANGE
|
||||
AND COMPARE INSTRUCTIONS.
|
||||
|
||||
2.0 REQUIREMENTS
|
||||
|
||||
2.1 EQUIPMENT
|
||||
|
||||
A PDP-10 KA10 WITH A MINIMUM OF 32K OF MEMORY
|
||||
|
||||
PAPER TAPE READER
|
||||
DECTAPE (OPTIONAL)
|
||||
CONSOLE TELETYPE
|
||||
|
||||
2.2 STORAGE
|
||||
|
||||
THE PROGRAM RUNS WITHIN 32K OF MEMORY.
|
||||
|
||||
2.3 PRELIMINARY PROGRAMS
|
||||
|
||||
CONSOLE FUNCTIONS WORKING PROPERLY
|
||||
PAPER-TAPE OR DECTAPE READ-IN WORKING PROPERLY
|
||||
PREVIOUS PROCESSOR DIAGNOSTICS
|
||||
|
||||
MAINDEC-10-DAKAE.TXT
|
||||
PAGE 4
|
||||
|
||||
|
||||
3.0 PROGRAM PROCEDURES
|
||||
|
||||
3.1 LOADING PROCEDURE
|
||||
|
||||
PAPER TAPE - HARDWARE READ-IN (READER DEVICE CODE 104)
|
||||
DECTAPE - LOAD WITH DIAMON (DECTAPE DEVICE CODE 320)
|
||||
|
||||
3.2 STARTING PROCEDURE
|
||||
|
||||
STAND-ALONE STARTING ADDRESS IS 30000.
|
||||
|
||||
IF THE DIAGNOSTIC FAILS TO START CORRECTLY TRY STARTING AT THE
|
||||
FIRST TEST INSTEAD OF AT THE BEGINNING OF THE CONTROL SEQUENCE.
|
||||
(SEE LISTING).
|
||||
|
||||
3.3 OPERATING PROCEDURE
|
||||
|
||||
ONCE STARTED THE PROGRAM WILL CYCLE CONTINUALLY UNTIL STOPPED
|
||||
OR AN ERROR OCCURS.
|
||||
|
||||
4.0 ERRORS
|
||||
|
||||
ERRORS ARE IN THE FORM OF HALT INSTRUCTIONS. THE LISTING
|
||||
SHOULD BE CONSULTED TO DETERMINE THE CAUSE OF THE ERROR. A
|
||||
NO OPERATION (JUMP) INSTRUCTION FOLLOWS EACH HALT. THIS
|
||||
MAY BE USEFUL IN CONSTRUCTING A SCOPE LOOP TO CYCLE ON THE
|
||||
FAILING INSTRUCTION.
|
||||
|
||||
5.0 ITERATION COUNTER
|
||||
|
||||
THE ITERATION COUNT OF THE PROGRAM IS DISPLAYED IN THE MEM-
|
||||
ORY INDICATORS (MI). THIS COUNT IS A DECREMENTING COUNT AND
|
||||
INITIALLY STARTS AT -1 IN STAND-ALONE OPERATION.
|
||||
|
||||
6.0 CYCLE TIME
|
||||
|
||||
THE CYCLE TIME OF THE PROGRAM IS IN THE MILLISECOND RANGE AND
|
||||
IS THEREFORE SUITABLE FOR TAKING MARGINS, VIBRATION TESTS, ETC.
|
||||
|
||||
MAINDEC-10-DAKAE.TXT
|
||||
PAGE 5
|
||||
|
||||
|
||||
7.0 OPERATIONAL VARIATIONS
|
||||
|
||||
A. DIAGNOSTIC MONITOR
|
||||
|
||||
THE PROGRAM IS USABLE WITH THE DIAGNOSTIC MONITOR TO PRO-
|
||||
VIDE RELIABILITY TESTS, ACCEPTANCE TESTS, AND/OR TO PRO-
|
||||
VIDE A QUICK METHOD OF ISOLATION OF A FAULT TO A PARTICULAR
|
||||
AREA OF THE PROCESSOR. CERTAIN PROCEDURES ARE USED WHEN
|
||||
THE PROGRAM IS USED IN THIS MANNER. THEY ARE:
|
||||
|
||||
1. THE DIAGNOSTIC MONITOR TRANSFERS CONTROL TO THE PRO-
|
||||
GRAM AND STARTS IT AT LOCATION 30002.
|
||||
|
||||
2. MONCTL - LOCATION 30043 IS USED AS THE DIAGNOSTIC MON-
|
||||
ITOR CONTROL FLAG WORD.
|
||||
|
||||
B. USER MODE
|
||||
|
||||
THE PROGRAM WILL OPERATE IN USER MODE AND AS SUCH PROVIDES
|
||||
ASSURANCE THAT THE PROCESSOR IS PERFORMING ALL FUNCTIONS
|
||||
CORRECTLY. USER MODE STARTING ADDRESS IS 30000.
|
||||
|
||||
C. SYSTEM EXERCISER
|
||||
|
||||
STARTING ADDRESS IS 30003. NO DATA SWITCHES ARE USED BY
|
||||
THIS PROGRAM.
|
||||
|
||||
8.0 MISCELLANEOUS
|
||||
|
||||
NONE
|
||||
|
||||
9.0 LISTING
|
||||
```
|
||||
|
||||
DAKAE.HST
|
||||
---------
|
||||
|
||||
THIS IS A HISTORY OF THE DEVELOPMENT OF MAINDEC-10-DAKAE
|
||||
|
||||
************************************************************************
|
||||
|
||||
ORIGINAL VERSION: 0.1
|
||||
|
||||
ORIGINAL AUTHOR: RICHARD MALISKA
|
||||
|
||||
ORIGINAL RELEASE: 16-MAR-72
|
||||
|
||||
************************************************************************
|
||||
|
||||
PRODUCT CODE: MAINDEC-10-DAKAE
|
||||
|
||||
PRODUCT NAME: BASIC INSTRUCTION DIAGNOSTIC #5
|
||||
|
||||
DATE RELEASED: JANUARY 1977
|
||||
|
||||
VERSION: 0.2
|
||||
|
||||
UPDATE AUTHOR: JOHN R. KIRCHOFF
|
||||
|
||||
CHANGES MADE:
|
||||
|
||||
1. UPGRADE TO ALLOW COMPATABILITY WITH THE SUBROUTINE PACKAGE.
|
||||
************************************************************************
|
||||
|
||||
PRODUCT CODE: MAINDEC-10-DAKAE
|
||||
|
||||
PRODUCT NAME: BASIC INSTRUCTION DIAGNOSTIC #5
|
||||
|
||||
DATE RELEASED: JANUARY 1979
|
||||
|
||||
VERSION: 0.3
|
||||
|
||||
UPDATE AUTHOR: BILL SCORZELLI
|
||||
|
||||
CHANGES MADE:
|
||||
|
||||
1. THE COMPARE INSTRUCTION TESTS DID NOT CHECK THE COMPARE OF 2
|
||||
NEGATIVE NUMBERS WITH THE CONTENTS OF THE (AC) BEING LARGER
|
||||
THAN THE CONTENTS OF (E). ADDED TEST C52205.
|
||||
|
||||
************************************************************************
|
||||
|
||||
DAKAE.MAC
|
||||
---------
|
||||
|
||||
[[Download](DAKAE.MAC.txt)]
|
||||
|
||||
{% highlight text %}
|
||||
{% include_relative DAKAE.MAC.txt %}
|
||||
{% endhighlight %}
|
||||
6826
apps/pdp10/diags/ka10/dakaf/DAKAF.LST.txt
Normal file
6826
apps/pdp10/diags/ka10/dakaf/DAKAF.LST.txt
Normal file
File diff suppressed because it is too large
Load diff
3219
apps/pdp10/diags/ka10/dakaf/DAKAF.MAC.txt
Normal file
3219
apps/pdp10/diags/ka10/dakaf/DAKAF.MAC.txt
Normal file
File diff suppressed because it is too large
Load diff
3207
apps/pdp10/diags/ka10/dakaf/DAKAFM.MAC.txt
Normal file
3207
apps/pdp10/diags/ka10/dakaf/DAKAFM.MAC.txt
Normal file
File diff suppressed because it is too large
Load diff
278
apps/pdp10/diags/ka10/dakaf/README.md
Normal file
278
apps/pdp10/diags/ka10/dakaf/README.md
Normal file
|
|
@ -0,0 +1,278 @@
|
|||
---
|
||||
layout: page
|
||||
title: PDP-10 KA10 Basic Instruction Diagnostic #6
|
||||
permalink: /apps/pdp10/diags/ka10/dakaf/
|
||||
machines:
|
||||
- id: testka10
|
||||
type: pdp10
|
||||
config: /devices/pdp10/machine/ka10/test/debugger/machine.xml
|
||||
debugger: true
|
||||
commands: a 30724 DAKAF.MAC
|
||||
---
|
||||
|
||||
PDP-10 KA10 Basic Instruction Diagnostic #6
|
||||
-------------------------------------------
|
||||
|
||||
The *PDP-10 KA10 Basic Instruction Diagnostic #6* (MAINDEC-10-DAKAF) test code has been extracted from
|
||||
[DAKAFM.MAC](DAKAFM.MAC.txt) [[original](http://pdp-10.trailing-edge.com/klad_sources/01/klad.sources/dakafm.mac.html)]
|
||||
for use with the [PDP-10 Test Machine with Debugger](/devices/pdp10/machine/ka10/test/debugger/) below.
|
||||
|
||||
This diagnostic "TESTS THE BOOLE, HWT AND TEST INSTRUCTIONS."
|
||||
|
||||
Resources for this diagnostic include:
|
||||
|
||||
- [Instructions](#dakaftxt)
|
||||
- [History](#dakafhst)
|
||||
- [Source Code](#dakafmac)
|
||||
- [MACRO-10 Listing](DAKAF.LST.txt)
|
||||
- [Additional Information](http://archive.pcjs.org/apps/pdp10/diags/ka10/dakaf/DAKAF.SEQ.txt)
|
||||
|
||||
{% include machine.html id="testka10" %}
|
||||
|
||||
The Debugger's assemble ("a") command can be used to test the new built-in
|
||||
[MACRO-10 Mini-Assembler](/modules/pdp10/lib/macro10.js), which supports a subset
|
||||
of the [MACRO-10](http://archive.pcjs.org/pubs/dec/pdp10/tops10/02_1973AsmRef_macro.pdf) assembly language.
|
||||
This command:
|
||||
|
||||
a 30724 DAKAF.MAC
|
||||
|
||||
will automatically read the [DAKAF.MAC](DAKAF.MAC.txt) source file (a slightly modified copy of [DAKAFM.MAC](DAKAFM.MAC.txt)),
|
||||
assemble it, and then load the binary output at the specified address.
|
||||
|
||||
---
|
||||
|
||||
DAKAF.TXT
|
||||
---------
|
||||
|
||||
```
|
||||
MAINDEC-10-DAKAF.TXT
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
IDENTIFICATION
|
||||
--------------
|
||||
|
||||
PRODUCT CODE: MAINDEC-10-DAKAF-B-D
|
||||
|
||||
PRODUCT NAME: DECSYSTEM10 PDP-10 KA10 BASIC
|
||||
INSTRUCTION DIAGNOSTIC (6)
|
||||
|
||||
FUNCTION: BOOLE, HWT, TEST
|
||||
|
||||
VERSION: 0.2
|
||||
|
||||
DATE RELEASED: JANUARY 1977
|
||||
|
||||
MAINTAINED BY: DIAGNOSTIC ENGINEERING GROUP
|
||||
|
||||
AUTHOR: JOHN R. KIRCHOFF
|
||||
|
||||
COPYRIGHT(C) 1976,1977
|
||||
DIGITAL EQUIPMENT CORPORATION
|
||||
MARLBORO, MASS. 01752
|
||||
|
||||
THIS SOFTWARE IS FURNISHED UNDER A LICENSE FOR USE ONLY
|
||||
ON A SINGLE COMPUTER SYSTEM AND MAY BE COPIED ONLY WITH
|
||||
THE INCLUSION OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE,
|
||||
OR ANY OTHER COPIES THEREOF, MAY NOT BE PROVIDED OR OTHERWISE
|
||||
MADE AVAILABLE TO ANY OTHER PERSON EXECPT FOR USE ON SUCH SYSTEM
|
||||
AND TO ONE WHO AGREES TO THESE LICENSE TERMS. TITLE TO AND
|
||||
OWNERSHIP OF THE SOFTWARE SHALL AT ALL TIMES REMAIN IN DEC.
|
||||
|
||||
THE INFORMATION IN THIS DOCUMENT IS SUBJECT TO CHANGE WITHOUT
|
||||
NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL
|
||||
EQUIPMENT CORPORATION.
|
||||
|
||||
DEC ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
|
||||
SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DEC.
|
||||
|
||||
MAINDEC-10-DAKAF.TXT
|
||||
PAGE 2
|
||||
|
||||
|
||||
TABLE OF CONTENTS
|
||||
-----------------
|
||||
|
||||
1.0 ABSTRACT
|
||||
|
||||
2.0 REQUIREMENTS
|
||||
|
||||
2.1 EQUIPMENT
|
||||
|
||||
2.2 STORAGE
|
||||
|
||||
2.3 PRELIMINARY PROGRAMS
|
||||
|
||||
3.0 PROGRAM PROCEDURES
|
||||
|
||||
3.1 LOADING PROCEDURE
|
||||
|
||||
3.2 STARTING PROCEDURE
|
||||
|
||||
3.3 OPERATING PROCEDURE
|
||||
|
||||
4.0 ERRORS
|
||||
|
||||
5.0 ITERATION COUNTER
|
||||
|
||||
6.0 CYCLE TIME
|
||||
|
||||
7.0 OPERATIONAL VARIATIONS
|
||||
|
||||
8.0 MISCELLANEOUS
|
||||
|
||||
9.0 LISTING
|
||||
|
||||
MAINDEC-10-DAKAF.TXT
|
||||
PAGE 3
|
||||
|
||||
|
||||
1.0 ABSTRACT
|
||||
|
||||
THIS PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC IS THE
|
||||
SIXTH IN A SERIES OF PDP-10 KA10 PROCESSOR DIAGNOSTICS.
|
||||
THE DIAGNOSTIC TESTS THE BOOLE, HWT AND TEST INSTRUCTIONS.
|
||||
|
||||
2.0 REQUIREMENTS
|
||||
|
||||
2.1 EQUIPMENT
|
||||
|
||||
A PDP-10 KA10 WITH A MINIMUM OF 32K OF MEMORY
|
||||
|
||||
PAPER TAPE READER
|
||||
DECTAPE (OPTIONAL)
|
||||
CONSOLE TELETYPE
|
||||
|
||||
2.2 STORAGE
|
||||
|
||||
THE PROGRAM RUNS WITHIN 32K OF MEMORY.
|
||||
|
||||
2.3 PRELIMINARY PROGRAMS
|
||||
|
||||
CONSOLE FUNCTIONS WORKING PROPERLY
|
||||
PAPER TAPE OR DECTAPE READ-IN WORKING PROPERLY
|
||||
PREVIOUS PROCESSOR DIAGNOSTICS
|
||||
|
||||
MAINDEC-10-DAKAF.TXT
|
||||
PAGE 4
|
||||
|
||||
|
||||
3.0 PROGRAM PROCEDURES
|
||||
|
||||
3.1 LOADING PROCEDURE
|
||||
|
||||
PAPER TAPE - HARDWARE READ-IN (READER DEVICE CODE 104)
|
||||
DECTAPE - LOAD WITH DIAMON (DECTAPE DEVICE CODE 320)
|
||||
|
||||
3.2 STARTING PROCEDURE
|
||||
|
||||
STAND-ALONE STARTING ADDRESS IS 30000.
|
||||
|
||||
IF THE DIAGNOSTIC FAILS TO START CORRECTLY TRY STARTING AT THE
|
||||
FIRST TEST INSTEAD OF AT THE BEGINNING OF THE CONTROL SEQUENCE.
|
||||
(SEE LISTING).
|
||||
|
||||
3.3 OPERATING PROCEDURE
|
||||
|
||||
ONCE STARTED THE PROGRAM WILL CYCLE CONTINUALLY UNTIL STOPPED
|
||||
OR AN ERROR OCCURS.
|
||||
|
||||
4.0 ERRORS
|
||||
|
||||
ERRORS ARE IN THE FORM OF HALT INSTRUCTIONS. THE LISTING
|
||||
SHOULD BE CONSULTED TO DETERMINE THE CAUSE OF THE ERROR. A
|
||||
NO OPERATION (JUMP) INSTRUCTION FOLLOWS EACH HALT. THIS
|
||||
MAY BE USEFUL IN CONSTRUCTING A SCOPE LOOP TO CYCLE ON THE
|
||||
FAILING INSTRUCTION.
|
||||
|
||||
5.0 ITERATION COUNTER
|
||||
|
||||
THE ITERATION COUNT OF THE PROGRAM IS DISPLAYED IN THE MEM-
|
||||
ORY INDICATORS (MI). THIS COUNT IS A DECREMENTING COUNT AND
|
||||
INITIALLY STARTS AT -1 IN STAND-ALONE OPERATION.
|
||||
|
||||
6.0 CYCLE TIME
|
||||
|
||||
THE CYCLE TIME OF THE PROGRAM IS IN THE MILLISECOND RANGE AND
|
||||
IS THEREFORE SUITABLE FOR TAKING MARGINS, VIBRATION TESTS, ETC.
|
||||
|
||||
MAINDEC-10-DAKAF.TXT
|
||||
PAGE 5
|
||||
|
||||
|
||||
7.0 OPERATIONAL VARIATIONS
|
||||
|
||||
A. DIAGNOSTIC MONITOR
|
||||
|
||||
THE PROGRAM IS USABLE WITH THE DIAGNOSTIC MONITOR TO PRO-
|
||||
VIDE RELIABILITY TESTS, ACCEPTANCE TESTS, AND/OR TO PRO-
|
||||
VIDE A QUICK METHOD OF ISOLATION OF A FAULT TO A PARTICULAR
|
||||
AREA OF THE PROCESSOR. CERTAIN PROCEDURES ARE USED WHEN
|
||||
THE PROGRAM IS USED IN THIS MANNER. THEY ARE:
|
||||
|
||||
1. THE DIAGNOSTIC MONITOR TRANSFERS CONTROL TO THE PRO-
|
||||
GRAM AND STARTS IT AT LOCATION 30002.
|
||||
|
||||
2. MONCTL - LOCATION 30043 IS USED AS THE DIAGNOSTIC MON-
|
||||
ITOR CONTROL FLAG WORD.
|
||||
|
||||
B. USER MODE
|
||||
|
||||
THE PROGRAM WILL OPERATE IN USER MODE AND AS SUCH PROVIDES
|
||||
ASSURANCE THAT THE PROCESSOR IS PERFORMING ALL FUNCTIONS
|
||||
CORRECTLY. USER MODE STARTING ADDRESS IS 30000.
|
||||
|
||||
C. SYSTEM EXERCISER
|
||||
|
||||
STARTING ADDRESS IS 30003. NO DATA SWITCHES ARE USED BY
|
||||
THIS PROGRAM.
|
||||
|
||||
8.0 MISCELLANEOUS
|
||||
|
||||
NONE
|
||||
|
||||
9.0 LISTING
|
||||
```
|
||||
|
||||
DAKAF.HST
|
||||
---------
|
||||
|
||||
THIS IS A HISTORY OF THE DEVELOPMENT OF MAINDEC-10-DAKAF
|
||||
|
||||
************************************************************************
|
||||
|
||||
PRODUCT CODE: MAINDEC-10-DAKAF
|
||||
|
||||
PRODUCT NAME: BASIC INSTRUCTION DIAGNOSTIC #6
|
||||
|
||||
DATE RELEASED: JANUARY 1977
|
||||
|
||||
VERSION: 0.2
|
||||
|
||||
UPDATE AUTHOR: JOHN R. KIRCHOFF
|
||||
|
||||
CHANGES MADE:
|
||||
|
||||
1. UPGRADE TO ALLOW COMPATABILITY WITH THE SUBROUTINE PACKAGE.
|
||||
|
||||
************************************************************************
|
||||
|
||||
ORIGINAL VERSION: 0.1
|
||||
|
||||
ORIGINAL AUTHOR: RICHARD MALISKA
|
||||
|
||||
ORIGINAL RELEASE: 16-MAR-72
|
||||
|
||||
************************************************************************
|
||||
|
||||
DAKAF.MAC
|
||||
---------
|
||||
|
||||
[[Download](DAKAF.MAC.txt)]
|
||||
|
||||
{% highlight text %}
|
||||
{% include_relative DAKAF.MAC.txt %}
|
||||
{% endhighlight %}
|
||||
3126
apps/pdp10/diags/ka10/dakag/DAKAG.LST.txt
Normal file
3126
apps/pdp10/diags/ka10/dakag/DAKAG.LST.txt
Normal file
File diff suppressed because it is too large
Load diff
1290
apps/pdp10/diags/ka10/dakag/DAKAG.MAC.txt
Normal file
1290
apps/pdp10/diags/ka10/dakag/DAKAG.MAC.txt
Normal file
File diff suppressed because it is too large
Load diff
1255
apps/pdp10/diags/ka10/dakag/DAKAGM.MAC.txt
Normal file
1255
apps/pdp10/diags/ka10/dakag/DAKAGM.MAC.txt
Normal file
File diff suppressed because it is too large
Load diff
280
apps/pdp10/diags/ka10/dakag/README.md
Normal file
280
apps/pdp10/diags/ka10/dakag/README.md
Normal file
|
|
@ -0,0 +1,280 @@
|
|||
---
|
||||
layout: page
|
||||
title: PDP-10 KA10 Basic Instruction Diagnostic #7
|
||||
permalink: /apps/pdp10/diags/ka10/dakag/
|
||||
machines:
|
||||
- id: testka10
|
||||
type: pdp10
|
||||
config: /devices/pdp10/machine/ka10/test/debugger/machine.xml
|
||||
debugger: true
|
||||
commands: a 30724 DAKAG.MAC
|
||||
---
|
||||
|
||||
PDP-10 KA10 Basic Instruction Diagnostic #7
|
||||
-------------------------------------------
|
||||
|
||||
The *PDP-10 KA10 Basic Instruction Diagnostic #7* (MAINDEC-10-DAKAG) test code has been extracted from
|
||||
[DAKAGM.MAC](DAKAGM.MAC.txt) [[original](http://pdp-10.trailing-edge.com/klad_sources/01/klad.sources/dakagm.mac.html)]
|
||||
for use with the [PDP-10 Test Machine with Debugger](/devices/pdp10/machine/ka10/test/debugger/) below.
|
||||
|
||||
This diagnostic "TESTS THE PUSH, POP, XCT AND BASIC SHIFT ROTATE INSTRUCTIONS."
|
||||
|
||||
Resources for this diagnostic include:
|
||||
|
||||
- [Instructions](#dakagtxt)
|
||||
- [History](#dakaghst)
|
||||
- [Source Code](#dakagmac)
|
||||
- [MACRO-10 Listing](DAKAG.LST.txt)
|
||||
- [Additional Information](http://archive.pcjs.org/apps/pdp10/diags/ka10/dakag/DAKAG.SEQ.txt)
|
||||
|
||||
{% include machine.html id="testka10" %}
|
||||
|
||||
The Debugger's assemble ("a") command can be used to test the new built-in
|
||||
[MACRO-10 Mini-Assembler](/modules/pdp10/lib/macro10.js), which supports a subset
|
||||
of the [MACRO-10](http://archive.pcjs.org/pubs/dec/pdp10/tops10/02_1973AsmRef_macro.pdf) assembly language.
|
||||
This command:
|
||||
|
||||
a 30724 DAKAG.MAC
|
||||
|
||||
will automatically read the [DAKAG.MAC](DAKAG.MAC.txt) source file (a slightly modified copy of [DAKAGM.MAC](DAKAGM.MAC.txt)),
|
||||
assemble it, and then load the binary output at the specified address.
|
||||
|
||||
---
|
||||
|
||||
DAKAG.TXT
|
||||
---------
|
||||
|
||||
```
|
||||
MAINDEC-10-DAKAG.TXT
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
IDENTIFICATION
|
||||
--------------
|
||||
|
||||
PRODUCT CODE: MAINDEC-10-DAKAG-B-D
|
||||
|
||||
PRODUCT NAME: DECSYSTEM10 PDP-10 KA10 BASIC
|
||||
INSTRUCTION DIAGNOSTIC (7)
|
||||
|
||||
FUNCTION: PUSH, POP, XCT, BASIC SHIFT/ROTATE
|
||||
|
||||
VERSION: 0.2
|
||||
|
||||
DATE RELEASED: JANUARY 1977
|
||||
|
||||
MAINTAINED BY: DIAGNOSTIC ENGINEERING GROUP
|
||||
|
||||
AUTHOR: JOHN R. KIRCHOFF
|
||||
|
||||
COPYRIGHT(C) 1976,1977
|
||||
DIGITAL EQUIPMENT CORPORATION
|
||||
MARLBORO, MASS. 01752
|
||||
|
||||
THIS SOFTWARE IS FURNISHED UNDER A LICENSE FOR USE ONLY
|
||||
ON A SINGLE COMPUTER SYSTEM AND MAY BE COPIED ONLY WITH
|
||||
THE INCLUSION OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE,
|
||||
OR ANY OTHER COPIES THEREOF, MAY NOT BE PROVIDED OR OTHERWISE
|
||||
MADE AVAILABLE TO ANY OTHER PERSON EXECPT FOR USE ON SUCH SYSTEM
|
||||
AND TO ONE WHO AGREES TO THESE LICENSE TERMS. TITLE TO AND
|
||||
OWNERSHIP OF THE SOFTWARE SHALL AT ALL TIMES REMAIN IN DEC.
|
||||
|
||||
THE INFORMATION IN THIS DOCUMENT IS SUBJECT TO CHANGE WITHOUT
|
||||
NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL
|
||||
EQUIPMENT CORPORATION.
|
||||
|
||||
DEC ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
|
||||
SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DEC.
|
||||
|
||||
MAINDEC-10-DAKAG.TXT
|
||||
PAGE 2
|
||||
|
||||
|
||||
TABLE OF CONTENTS
|
||||
-----------------
|
||||
|
||||
1.0 ABSTRACT
|
||||
|
||||
2.0 REQUIREMENTS
|
||||
|
||||
2.1 EQUIPMENT
|
||||
|
||||
2.2 STORAGE
|
||||
|
||||
2.3 PRELIMINARY PROGRAMS
|
||||
|
||||
3.0 PROGRAM PROCEDURES
|
||||
|
||||
3.1 LOADING PROCEDURE
|
||||
|
||||
3.2 STARTING PROCEDURE
|
||||
|
||||
3.3 OPERATING PROCEDURE
|
||||
|
||||
4.0 ERRORS
|
||||
|
||||
5.0 ITERATION COUNTER
|
||||
|
||||
6.0 CYCLE TIME
|
||||
|
||||
7.0 OPERATIONAL VARIATIONS
|
||||
|
||||
8.0 MISCELLANEOUS
|
||||
|
||||
9.0 LISTING
|
||||
|
||||
MAINDEC-10-DAKAG.TXT
|
||||
PAGE 3
|
||||
|
||||
|
||||
1.0 ABSTRACT
|
||||
|
||||
THIS PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC IS THE
|
||||
SEVENTH IN A SERIES OF PDP-10 KA10 PROCESSOR DIAGNOSTICS.
|
||||
THE DIAGNOSTIC TESTS THE PUSH, POP, XCT AND BASIC
|
||||
SHIFT ROTATE INSTRUCTIONS.
|
||||
|
||||
2.0 REQUIREMENTS
|
||||
|
||||
2.1 EQUIPMENT
|
||||
|
||||
A PDP-10 KA10 WITH A MINIMUM OF 32K OF MEMORY
|
||||
|
||||
PAPER TAPE READER
|
||||
DECTAPE (OPTIONAL)
|
||||
CONSOLE TELETYPE
|
||||
|
||||
2.2 STORAGE
|
||||
|
||||
THE PROGRAM RUNS WITHIN 32K OF MEMORY.
|
||||
|
||||
2.3 PRELIMINARY PROGRAMS
|
||||
|
||||
CONSOLE FUNCTIONS WORKING PROPERLY
|
||||
PAPER TAPE OR DECTAPE READ-IN WORKING PROPERLY
|
||||
PREVIOUS PROCESSOR DIAGNOSTICS
|
||||
|
||||
MAINDEC-10-DAKAG.TXT
|
||||
PAGE 4
|
||||
|
||||
|
||||
3.0 PROGRAM PROCEDURES
|
||||
|
||||
3.1 LOADING PROCEDURE
|
||||
|
||||
PAPER TAPE - HARDWARE READ-IN (READER DEVICE CODE 104)
|
||||
DECTAPE - LOAD WITH DIAMON (DECTAPE DEVICE CODE 320)
|
||||
|
||||
3.2 STARTING PROCEDURE
|
||||
|
||||
STAND-ALONE STARTING ADDRESS IS 30000.
|
||||
|
||||
IF THE DIAGNOSTIC FAILS TO START CORRECTLY TRY STARTING AT THE
|
||||
FIRST TEST INSTEAD OF AT THE BEGINNING OF THE CONTROL SEQUENCE.
|
||||
(SEE LISTING).
|
||||
|
||||
3.3 OPERATING PROCEDURE
|
||||
|
||||
ONCE STARTED THE PROGRAM WILL CYCLE CONTINUALLY UNTIL STOPPED
|
||||
OR AN ERROR OCCURS.
|
||||
|
||||
4.0 ERRORS
|
||||
|
||||
ERRORS ARE IN THE FORM OF HALT INSTRUCTIONS. THE LISTING
|
||||
SHOULD BE CONSULTED TO DETERMINE THE CAUSE OF THE ERROR. A
|
||||
NO OPERATION (JUMP) INSTRUCTION FOLLOWS EACH HALT. THIS
|
||||
MAY BE USEFUL IN CONSTRUCTING A SCOPE LOOP TO CYCLE ON THE
|
||||
FAILING INSTRUCTION.
|
||||
|
||||
5.0 ITERATION COUNTER
|
||||
|
||||
THE ITERATION COUNT OF THE PROGRAM IS DISPLAYED IN THE MEM-
|
||||
ORY INDICATORS (MI). THIS COUNT IS A DECREMENTING COUNT AND
|
||||
INITIALLY STARTS AT -1 IN STAND-ALONE OPERATION.
|
||||
|
||||
6.0 CYCLE TIME
|
||||
|
||||
THE CYCLE TIME OF THE PROGRAM IS IN THE MILLISECOND RANGE AND
|
||||
IS THEREFORE SUITABLE FOR TAKING MARGINS, VIBRATION TESTS, ETC.
|
||||
|
||||
MAINDEC-10-DAKAG.TXT
|
||||
PAGE 5
|
||||
|
||||
|
||||
7.0 OPERATIONAL VARIATIONS
|
||||
|
||||
A. DIAGNOSTIC MONITOR
|
||||
|
||||
THE PROGRAM IS USABLE WITH THE DIAGNOSTIC MONITOR TO PRO-
|
||||
VIDE RELIABILITY TESTS, ACCEPTANCE TESTS, AND/OR TO PRO-
|
||||
VIDE A QUICK METHOD OF ISOLATION OF A FAULT TO A PARTICULAR
|
||||
AREA OF THE PROCESSOR. CERTAIN PROCEDURES ARE USED WHEN
|
||||
THE PROGRAM IS USED IN THIS MANNER. THEY ARE:
|
||||
|
||||
1. THE DIAGNOSTIC MONITOR TRANSFERS CONTROL TO THE PRO-
|
||||
GRAM AND STARTS IT AT LOCATION 30002.
|
||||
|
||||
2. MONCTL - LOCATION 30043 IS USED AS THE DIAGNOSTIC MON-
|
||||
ITOR CONTROL FLAG WORD.
|
||||
|
||||
B. USER MODE
|
||||
|
||||
THE PROGRAM WILL OPERATE IN USER MODE AND AS SUCH PROVIDES
|
||||
ASSURANCE THAT THE PROCESSOR IS PERFORMING ALL FUNCTIONS
|
||||
CORRECTLY. USER MODE STARTING ADDRESS IS 30000.
|
||||
|
||||
C. SYSTEM EXERCISER
|
||||
|
||||
STARTING ADDRESS IS 30003. NO DATA SWITCHES ARE USED BY
|
||||
THIS PROGRAM.
|
||||
|
||||
8.0 MISCELLANEOUS
|
||||
|
||||
NONE
|
||||
|
||||
9.0 LISTING
|
||||
```
|
||||
|
||||
DAKAG.HST
|
||||
---------
|
||||
|
||||
THIS IS A HISTORY OF THE DEVELOPMENT OF MAINDEC-10-DAKAG
|
||||
|
||||
************************************************************************
|
||||
|
||||
PRODUCT CODE: MAINDEC-10-DAKAG
|
||||
|
||||
PRODUCT NAME: BASIC INSTRUCTION DIAGNOSTIC #7
|
||||
|
||||
DATE RELEASED: JANUARY 1977
|
||||
|
||||
VERSION: 0.2
|
||||
|
||||
UPDATE AUTHOR: JOHN R. KIRCHOFF
|
||||
|
||||
CHANGES MADE:
|
||||
|
||||
1. UPGRADE TO ALLOW COMPATABILITY WITH THE SUBROUTINE PACKAGE.
|
||||
|
||||
************************************************************************
|
||||
|
||||
ORIGINAL VERSION: 0.1
|
||||
|
||||
ORIGINAL AUTHOR: RICHARD MALISKA
|
||||
|
||||
ORIGINAL RELEASE: 16-MAR-72
|
||||
|
||||
************************************************************************
|
||||
|
||||
DAKAG.MAC
|
||||
---------
|
||||
|
||||
[[Download](DAKAG.MAC.txt)]
|
||||
|
||||
{% highlight text %}
|
||||
{% include_relative DAKAG.MAC.txt %}
|
||||
{% endhighlight %}
|
||||
7091
apps/pdp10/diags/ka10/dakah/DAKAH.LST.txt
Normal file
7091
apps/pdp10/diags/ka10/dakah/DAKAH.LST.txt
Normal file
File diff suppressed because it is too large
Load diff
1775
apps/pdp10/diags/ka10/dakah/DAKAH.MAC.txt
Normal file
1775
apps/pdp10/diags/ka10/dakah/DAKAH.MAC.txt
Normal file
File diff suppressed because it is too large
Load diff
1775
apps/pdp10/diags/ka10/dakah/DAKAHM.MAC.txt
Normal file
1775
apps/pdp10/diags/ka10/dakah/DAKAHM.MAC.txt
Normal file
File diff suppressed because it is too large
Load diff
117
apps/pdp10/diags/ka10/dakah/DAKAHT.MAC.txt
Normal file
117
apps/pdp10/diags/ka10/dakah/DAKAHT.MAC.txt
Normal file
|
|
@ -0,0 +1,117 @@
|
|||
;DAKAH
|
||||
|
||||
|
||||
|
||||
DECVER==2
|
||||
MCNVER==0
|
||||
|
||||
XLIST
|
||||
DEFINE NAME (MCNVER,DECVER)<
|
||||
|
||||
TITLE DAKAH PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (8) MCNVER,DECVER
|
||||
>
|
||||
LIST
|
||||
LALL
|
||||
NAME \MCNVER,\DECVER
|
||||
|
||||
;TEST DESIGNED FOR INITIAL DEBUGGING OF PROCESSOR HARDWARE
|
||||
;AND TO DETECT (SOLID) FAILURES IN THE FIELD.
|
||||
|
||||
;COPYRIGHT 1972,1977
|
||||
;DIGITAL EQUIPMENT CORPORATION
|
||||
;MARLBORO, MASS. 01752
|
||||
|
||||
;JOHN R. KIRCHOFF
|
||||
|
||||
LOC 137
|
||||
MCNVER,,DECVER
|
||||
|
||||
NOSYM
|
||||
SUBTTL DIAGNOSTIC PARAMETERS
|
||||
|
||||
;CONTROL WORDS
|
||||
|
||||
EXIOT=4000 ;USER PRIV I/O FLAG
|
||||
USERF=10000 ;USER MODE FLAG
|
||||
|
||||
DACT=400
|
||||
ME=774
|
||||
PIG0=2377
|
||||
PIH1=40000
|
||||
PIH2=20000
|
||||
PIH3=10000
|
||||
PIH4=4000
|
||||
PIH5=2000
|
||||
PIH6=1000
|
||||
PIH7=400
|
||||
PIOSET=2000
|
||||
PIOCLR=1000
|
||||
PIREQ=4000
|
||||
ACT=200
|
||||
PROT=20000
|
||||
NONEX=10000
|
||||
UMIOT=4000
|
||||
;SUBROUTINE DEFINITIONS
|
||||
|
||||
SADR1=START
|
||||
SADR2=START
|
||||
SADR3=START
|
||||
SADR4=START
|
||||
SADR5=START
|
||||
SADR6=START
|
||||
SADR7=JRST START
|
||||
SADR8=JRST START
|
||||
SADR9=JRST START
|
||||
SADR10=JRST START
|
||||
SADR11=JRST START
|
||||
PAREA1=0
|
||||
PAREA2=0
|
||||
PAREA3=0
|
||||
PAREA4=0
|
||||
PAREA5=0
|
||||
PAREA6=0
|
||||
ITERAT=1
|
||||
EXCASB==1
|
||||
PGMEND==1
|
||||
|
||||
;MACROS
|
||||
|
||||
;STOP - USED FOR SCOPE LOOP, IF INSTRUCTION FAILS, CHANGE (JUMP .+1)
|
||||
; TO A (JUMP .-X) TO CYCLE ON FAILING INSTRUCTION.
|
||||
|
||||
DEFINE STOP (A)<
|
||||
HALT .+1
|
||||
JUMP .+1
|
||||
>
|
||||
|
||||
;SFLAG - USED TO CLEAR ALL FLAGS THEN TO SET REQUESTED
|
||||
; FLAG FOR TESTING.
|
||||
|
||||
DEFINE SFLAG (A)<
|
||||
MOVSI 1,A
|
||||
JFCL 17,.+1
|
||||
JRST 2,.+1(1)
|
||||
>
|
||||
|
||||
;CHANEL - USED FOR 2 CHANNEL SYSTEM CHECK
|
||||
|
||||
DEFINE CHANEL (A)<
|
||||
SKIPN PI7SYS#
|
||||
JRST A
|
||||
>
|
||||
|
||||
;RETURN - USED TO SETUP UUO TRAP
|
||||
|
||||
DEFINE RETURN (A)<
|
||||
MOVE 2,[JSP 2,A]
|
||||
MOVEM 2,41
|
||||
SETOB 2,40
|
||||
>
|
||||
|
||||
;CLEAN - USED TO CLEAR THE PROCESSOR EXCEPT CLOCK
|
||||
; CLEAR DEVICES AND PI SYSTEM
|
||||
|
||||
DEFINE CLEAN (A)<
|
||||
CONO 634440
|
||||
CONO PI,10000
|
||||
>
|
||||
282
apps/pdp10/diags/ka10/dakah/README.md
Normal file
282
apps/pdp10/diags/ka10/dakah/README.md
Normal file
|
|
@ -0,0 +1,282 @@
|
|||
---
|
||||
layout: page
|
||||
title: PDP-10 KA10 Basic Instruction Diagnostic #8
|
||||
permalink: /apps/pdp10/diags/ka10/dakah/
|
||||
machines:
|
||||
- id: testka10
|
||||
type: pdp10
|
||||
config: /devices/pdp10/machine/ka10/test/debugger/machine.xml
|
||||
debugger: true
|
||||
commands: a 30724 DAKAH.MAC
|
||||
---
|
||||
|
||||
PDP-10 KA10 Basic Instruction Diagnostic #8
|
||||
-------------------------------------------
|
||||
|
||||
The *PDP-10 KA10 Basic Instruction Diagnostic #8* (MAINDEC-10-DAKAH) test code has been extracted from
|
||||
[DAKAHM.MAC](DAKAHM.MAC.txt) [[original](http://pdp-10.trailing-edge.com/klad_sources/01/klad.sources/dakahm.mac.html)] and
|
||||
[DAKAHT.MAC](DAKAHT.MAC.txt) [[original](http://pdp-10.trailing-edge.com/klad_sources/01/klad.sources/dakaht.mac.html)]
|
||||
for use with the [PDP-10 Test Machine with Debugger](/devices/pdp10/machine/ka10/test/debugger/) below.
|
||||
|
||||
This diagnostic "TESTS THE PI SYSTEM, INTERRUPTS, LUUO'S AND INPUT/OUTPUT."
|
||||
|
||||
Resources for this diagnostic include:
|
||||
|
||||
- [Instructions](#dakahtxt)
|
||||
- [History](#dakahhst)
|
||||
- [Source Code](#dakahmac)
|
||||
- [MACRO-10 Listing](DAKAH.LST.txt)
|
||||
- [Additional Information](http://archive.pcjs.org/apps/pdp10/diags/ka10/dakah/DAKAH.SEQ.txt)
|
||||
|
||||
{% include machine.html id="testka10" %}
|
||||
|
||||
The Debugger's assemble ("a") command can be used to test the new built-in
|
||||
[MACRO-10 Mini-Assembler](/modules/pdp10/lib/macro10.js), which supports a subset
|
||||
of the [MACRO-10](http://archive.pcjs.org/pubs/dec/pdp10/tops10/02_1973AsmRef_macro.pdf) assembly language.
|
||||
This command:
|
||||
|
||||
a 30724 DAKAH.MAC
|
||||
|
||||
will automatically read the [DAKAH.MAC](DAKAH.MAC.txt) source file (a slightly modified copy of [DAKAHM.MAC](DAKAHM.MAC.txt)),
|
||||
assemble it, and then load the binary output at the specified address.
|
||||
|
||||
---
|
||||
|
||||
DAKAH.TXT
|
||||
---------
|
||||
|
||||
```
|
||||
MAINDEC-10-DAKAH.TXT
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
IDENTIFICATION
|
||||
--------------
|
||||
|
||||
PRODUCT CODE: MAINDEC-10-DAKAH-B-D
|
||||
|
||||
PRODUCT NAME: DECSYSTEM10 PDP-10 KA10 BASIC
|
||||
INSTRUCTION DIAGNOSTIC (8)
|
||||
|
||||
FUNCTION: PI, INTERRUPTS, LUUO'S, I/O
|
||||
|
||||
VERSION: 0.2
|
||||
|
||||
DATE RELEASED: JANUARY 1977
|
||||
|
||||
MAINTAINED BY: DIAGNOSTIC ENGINEERING GROUP
|
||||
|
||||
AUTHOR: JOHN R. KIRCHOFF
|
||||
|
||||
COPYRIGHT(C) 1976,1977
|
||||
DIGITAL EQUIPMENT CORPORATION
|
||||
MARLBORO, MASS. 01752
|
||||
|
||||
THIS SOFTWARE IS FURNISHED UNDER A LICENSE FOR USE ONLY
|
||||
ON A SINGLE COMPUTER SYSTEM AND MAY BE COPIED ONLY WITH
|
||||
THE INCLUSION OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE,
|
||||
OR ANY OTHER COPIES THEREOF, MAY NOT BE PROVIDED OR OTHERWISE
|
||||
MADE AVAILABLE TO ANY OTHER PERSON EXECPT FOR USE ON SUCH SYSTEM
|
||||
AND TO ONE WHO AGREES TO THESE LICENSE TERMS. TITLE TO AND
|
||||
OWNERSHIP OF THE SOFTWARE SHALL AT ALL TIMES REMAIN IN DEC.
|
||||
|
||||
THE INFORMATION IN THIS DOCUMENT IS SUBJECT TO CHANGE WITHOUT
|
||||
NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL
|
||||
EQUIPMENT CORPORATION.
|
||||
|
||||
DEC ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
|
||||
SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DEC.
|
||||
|
||||
MAINDEC-10-DAKAH.TXT
|
||||
PAGE 2
|
||||
|
||||
|
||||
TABLE OF CONTENTS
|
||||
-----------------
|
||||
|
||||
1.0 ABSTRACT
|
||||
|
||||
2.0 REQUIREMENTS
|
||||
|
||||
2.1 EQUIPMENT
|
||||
|
||||
2.2 STORAGE
|
||||
|
||||
2.3 PRELIMINARY PROGRAMS
|
||||
|
||||
3.0 PROGRAM PROCEDURES
|
||||
|
||||
3.1 LOADING PROCEDURE
|
||||
|
||||
3.2 STARTING PROCEDURE
|
||||
|
||||
3.3 OPERATING PROCEDURE
|
||||
|
||||
4.0 ERRORS
|
||||
|
||||
5.0 ITERATION COUNTER
|
||||
|
||||
6.0 CYCLE TIME
|
||||
|
||||
7.0 OPERATIONAL VARIATIONS
|
||||
|
||||
8.0 MISCELLANEOUS
|
||||
|
||||
9.0 LISTING
|
||||
|
||||
MAINDEC-10-DAKAH.TXT
|
||||
PAGE 3
|
||||
|
||||
|
||||
1.0 ABSTRACT
|
||||
|
||||
THIS PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC IS THE
|
||||
EIGHTH IN A SERIES OF PDP-10 KA10 PROCESSOR DIAGNOSTICS.
|
||||
THE DIAGNOSTIC TESTS THE PI SYSTEM, INTERRUPTS, LUUO'S
|
||||
AND INPUT/OUTPUT.
|
||||
|
||||
2.0 REQUIREMENTS
|
||||
|
||||
2.1 EQUIPMENT
|
||||
|
||||
A PDP-10 KA10 WITH A MINIMUM OF 32K OF MEMORY
|
||||
|
||||
PAPER TAPE READER
|
||||
DECTAPE (OPTIONAL)
|
||||
CONSOLE TELETYPE
|
||||
|
||||
2.2 STORAGE
|
||||
|
||||
THE PROGRAM RUNS WITHIN 32K OF MEMORY.
|
||||
|
||||
2.3 PRELIMINARY PROGRAMS
|
||||
|
||||
CONSOLE FUNCTIONS WORKING PROPERLY
|
||||
PAPER TAPE OR DECTAPE READ-IN WORKING PROPERLY
|
||||
PREVIOUS PROCESSOR DIAGNOSTICS
|
||||
|
||||
MAINDEC-10-DAKAH.TXT
|
||||
PAGE 4
|
||||
|
||||
|
||||
3.0 PROGRAM PROCEDURES
|
||||
|
||||
3.1 LOADING PROCEDURE
|
||||
|
||||
PAPER TAPE - HARDWARE READ-IN (READER DEVICE CODE 104)
|
||||
DECTAPE - LOAD WITH DIAMON (DECTAPE DEVICE CODE 320)
|
||||
|
||||
3.2 STARTING PROCEDURE
|
||||
|
||||
STAND-ALONE STARTING ADDRESS IS 30000.
|
||||
|
||||
IF THE DIAGNOSTIC FAILS TO START CORRECTLY TRY STARTING AT THE
|
||||
FIRST TEST INSTEAD OF AT THE BEGINNING OF THE CONTROL SEQUENCE.
|
||||
(SEE LISTING).
|
||||
|
||||
3.3 OPERATING PROCEDURE
|
||||
|
||||
ONCE STARTED THE PROGRAM WILL CYCLE CONTINUALLY UNTIL STOPPED
|
||||
OR AN ERROR OCCURS.
|
||||
|
||||
4.0 ERRORS
|
||||
|
||||
ERRORS ARE IN THE FORM OF HALT INSTRUCTIONS. THE LISTING
|
||||
SHOULD BE CONSULTED TO DETERMINE THE CAUSE OF THE ERROR. A
|
||||
NO OPERATION (JUMP) INSTRUCTION FOLLOWS EACH HALT. THIS
|
||||
MAY BE USEFUL IN CONSTRUCTING A SCOPE LOOP TO CYCLE ON THE
|
||||
FAILING INSTRUCTION.
|
||||
|
||||
5.0 ITERATION COUNTER
|
||||
|
||||
THE ITERATION COUNT OF THE PROGRAM IS DISPLAYED IN THE MEM-
|
||||
ORY INDICATORS (MI). THIS COUNT IS A DECREMENTING COUNT AND
|
||||
INITIALLY STARTS AT -1 IN STAND-ALONE OPERATION.
|
||||
|
||||
6.0 CYCLE TIME
|
||||
|
||||
THE CYCLE TIME OF THE PROGRAM IS IN THE MILLISECOND RANGE AND
|
||||
IS THEREFORE SUITABLE FOR TAKING MARGINS, VIBRATION TESTS, ETC.
|
||||
|
||||
MAINDEC-10-DAKAH.TXT
|
||||
PAGE 5
|
||||
|
||||
|
||||
7.0 OPERATIONAL VARIATIONS
|
||||
|
||||
A. DIAGNOSTIC MONITOR
|
||||
|
||||
THE PROGRAM IS USABLE WITH THE DIAGNOSTIC MONITOR TO PRO-
|
||||
VIDE RELIABILITY TESTS, ACCEPTANCE TESTS, AND/OR TO PRO-
|
||||
VIDE A QUICK METHOD OF ISOLATION OF A FAULT TO A PARTICULAR
|
||||
AREA OF THE PROCESSOR. CERTAIN PROCEDURES ARE USED WHEN
|
||||
THE PROGRAM IS USED IN THIS MANNER. THEY ARE:
|
||||
|
||||
1. THE DIAGNOSTIC MONITOR TRANSFERS CONTROL TO THE PRO-
|
||||
GRAM AND STARTS IT AT LOCATION 30002.
|
||||
|
||||
2. MONCTL - LOCATION 30043 IS USED AS THE DIAGNOSTIC MON-
|
||||
ITOR CONTROL FLAG WORD.
|
||||
|
||||
B. USER MODE
|
||||
|
||||
THE PROGRAM WILL OPERATE IN USER MODE AND AS SUCH PROVIDES
|
||||
ASSURANCE THAT THE PROCESSOR IS PERFORMING ALL FUNCTIONS
|
||||
CORRECTLY. USER MODE STARTING ADDRESS IS 30000.
|
||||
|
||||
C. SYSTEM EXERCISER
|
||||
|
||||
STARTING ADDRESS IS 30003. NO DATA SWITCHES ARE USED BY
|
||||
THIS PROGRAM.
|
||||
|
||||
8.0 MISCELLANEOUS
|
||||
|
||||
NONE
|
||||
|
||||
9.0 LISTING
|
||||
```
|
||||
|
||||
DAKAH.HST
|
||||
---------
|
||||
|
||||
THIS IS A HISTORY OF THE DEVELOPMENT OF MAINDEC-10-DAKAH
|
||||
|
||||
************************************************************************
|
||||
|
||||
PRODUCT CODE: MAINDEC-10-DAKAH
|
||||
|
||||
PRODUCT NAME: BASIC INSTRUCTION DIAGNOSTIC #8
|
||||
|
||||
DATE RELEASED: JANUARY 1977
|
||||
|
||||
VERSION: 0.2
|
||||
|
||||
UPDATE AUTHOR: JOHN R. KIRCHOFF
|
||||
EDWARD G. PRENTICE
|
||||
|
||||
CHANGES MADE:
|
||||
|
||||
1. UPGRADE TO ALLOW COMPATABILITY WITH THE SUBROUTINE PACKAGE.
|
||||
|
||||
************************************************************************
|
||||
|
||||
ORIGINAL VERSION: 0.1
|
||||
|
||||
ORIGINAL AUTHOR: RICHARD MALISKA
|
||||
|
||||
ORIGINAL RELEASE: 16-MAR-72
|
||||
|
||||
************************************************************************
|
||||
|
||||
DAKAH.MAC
|
||||
---------
|
||||
|
||||
[[Download](DAKAH.MAC.txt)]
|
||||
|
||||
{% highlight text %}
|
||||
{% include_relative DAKAH.MAC.txt %}
|
||||
{% endhighlight %}
|
||||
16210
apps/pdp10/diags/ka10/dakai/DAKAI.LST.txt
Normal file
16210
apps/pdp10/diags/ka10/dakai/DAKAI.LST.txt
Normal file
File diff suppressed because it is too large
Load diff
1876
apps/pdp10/diags/ka10/dakai/DAKAI.MAC.txt
Normal file
1876
apps/pdp10/diags/ka10/dakai/DAKAI.MAC.txt
Normal file
File diff suppressed because it is too large
Load diff
1733
apps/pdp10/diags/ka10/dakai/DAKAIM.MAC.txt
Normal file
1733
apps/pdp10/diags/ka10/dakai/DAKAIM.MAC.txt
Normal file
File diff suppressed because it is too large
Load diff
136
apps/pdp10/diags/ka10/dakai/DAKAIT.MAC.txt
Normal file
136
apps/pdp10/diags/ka10/dakai/DAKAIT.MAC.txt
Normal file
|
|
@ -0,0 +1,136 @@
|
|||
;DAKAI
|
||||
|
||||
MCNVER==0
|
||||
DECVER==2
|
||||
|
||||
|
||||
XLIST
|
||||
DEFINE NAME (MCNVER,DECVER)<
|
||||
|
||||
TITLE DAKAI PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (9) MCNVER,DECVER
|
||||
>
|
||||
LIST
|
||||
LALL
|
||||
|
||||
NAME \MCNVER,\DECVER
|
||||
|
||||
;(LOGICAL SHIFT, ROTATE, ARITHMETIC SHIFT; SINGLE AND COMBINED)
|
||||
|
||||
;COPYRIGHT 1975,1977
|
||||
;DIGITAL EQUIPMENT CORPORATION
|
||||
;MARLBORO, MASS. 01752
|
||||
|
||||
;JOHN R. KIRCHOFF
|
||||
|
||||
LOC 137
|
||||
MCNVER,,DECVER
|
||||
|
||||
NOSYM
|
||||
SUBTTL DIAGNOSTIC PARAMETERS
|
||||
|
||||
;OPERATOR DEFINITIONS
|
||||
|
||||
OPDEF ER1 [1B8]
|
||||
OPDEF ER2 [2B8]
|
||||
OPDEF ER3 [3B8]
|
||||
OPDEF ER4 [4B8]
|
||||
OPDEF ER5 [5B8]
|
||||
OPDEF ER6 [6B8]
|
||||
OPDEF ER7 [7B8]
|
||||
OPDEF ER10 [10B8]
|
||||
OPDEF ER11 [11B8]
|
||||
OPDEF ER12 [12B8]
|
||||
OPDEF ER13 [13B8]
|
||||
|
||||
LUUO1=ERRMES
|
||||
LUUO2=ERRMES
|
||||
LUUO3=ERRMES
|
||||
LUUO4=ERRMES
|
||||
LUUO5=ERRMES
|
||||
LUUO6=ERRMES
|
||||
LUUO7=ERRMES
|
||||
LUUO10=ERRMES
|
||||
LUUO11=ERRMES
|
||||
LUUO12=ERRMES
|
||||
LUUO13=ERRMES
|
||||
;SUBROUTINE ASSEMBLY DEFINITIONS
|
||||
|
||||
KLOLD==1
|
||||
DEBUG=40
|
||||
EXCASB=1
|
||||
USRASB=1
|
||||
KA10=1
|
||||
PGMEND=1
|
||||
ERDIAG=1
|
||||
|
||||
;SPECIAL FEATURE DEFINITIONS
|
||||
|
||||
SADR1=BEGIN
|
||||
SADR2=BEGIN
|
||||
SADR3=BEGIN
|
||||
SADR4=BEGIN
|
||||
SADR5=JRST BEGIN
|
||||
SADR6=JRST BEGIN
|
||||
SADR7=JRST BEGIN
|
||||
SADR8=JRST BEGIN
|
||||
SADR9=JRST BEGIN
|
||||
SADR10=JRST BEGIN
|
||||
SADR11=JRST BEGIN
|
||||
|
||||
;SPECIAL FEATURE PARAMETERS
|
||||
|
||||
PAREA0=0
|
||||
PAREA1=0
|
||||
PAREA2=0
|
||||
PAREA3=SIXBIT/DAKAI/
|
||||
PAREA4=SIXBIT/TMP/
|
||||
PAREA5=0
|
||||
PAREA6=0
|
||||
ITERAT==1000
|
||||
|
||||
;MACROS
|
||||
|
||||
DEFINE SAVEAC (A,B)<
|
||||
MOVEI AC+2,. ;SAVE TEST PC
|
||||
MOVEM AC+2,TESTPC
|
||||
MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
||||
MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION>
|
||||
|
||||
DEFINE SETACS (WW,XX)<
|
||||
MOVEI AC-1,WW ;SETUP AC-1
|
||||
HRLI AC-1,WW ;FOR COMPARISION
|
||||
MOVE AC-2,<AC-1>&17 ;SETUP AC-2 FOR COMPARISON
|
||||
MOVEI AC,XX ;SETUP AC RIGHT
|
||||
HRLI AC,XX ;SETUP AC LEFT
|
||||
MOVEM AC,<AC+1>&17 ;SETUP AC2>
|
||||
;USER DEFINED MACROS
|
||||
|
||||
DEFINE SR1 (T,D1A,D1B,R1A,R1B,OP,S)<
|
||||
;THIS MACRO SHIFTS/ROTATES THE DATA SPECIFIED IN [XWD D1A,D1B] S BIT
|
||||
;POSITIONS AND COMPARES THE RESULT IN THE AC TO THE DATA SPECIFIED IN [XWD R1A,R1B]
|
||||
;IT ALSO CHECKS THAT C(AC+1) WAS NOT MODIFIED
|
||||
|
||||
E'T'00: MOVE AC,[XWD D1A,D1B] ;INITIALIZE AC
|
||||
MOVE AC+1,[XWD 741703,607417];INITIALIZE AC+1
|
||||
OP AC,S ;*SHIFT/ROTATE S BIT POSITIONS
|
||||
CAME AC,[XWD R1A,R1B] ;IS RESULT IN AC CORRECT?
|
||||
ER3 AC,T'01 ;RESULT IN AC IS INCORRECT
|
||||
CAME AC+1,[XWD 741703,607417]
|
||||
ER4 AC+1,T'01 ;C(AC+1) WAS MODIFIED INCORRECTLY
|
||||
JUMPL AC+2,E'T'00 ;LOOP ON ERROR SWITCH>
|
||||
|
||||
|
||||
DEFINE SR2 (T,D1A,D1B,D2A,D2B,R1A,R1B,R2A,R2B,OP,S)<
|
||||
;THIS MACRO PERFORMS A COMBINED SHIFT/ROTATE OPERATION ON THE
|
||||
;DATA SPECIFIED IN [XWD D1A,D1B] AND [XWD D2A,D2B] S BIT POSITIONS AND
|
||||
;COMPARES THE RESULT IN AC AND AC+1 TO THE DATA SPECIFIED IN [XWD R1A,R1B] AND
|
||||
;[XWD R2A,R2B]
|
||||
|
||||
E'T'00: MOVE AC,[XWD D1A,D1B] ;INITIALIZE AC
|
||||
MOVE AC+1,[XWD D2A,D2B] ;INITIALIZE AC+1
|
||||
OP AC,S ;*SHIFT/ROTATE COMBINED S PLACES
|
||||
CAME AC,[XWD R1A,R1B] ;IS RESULT IN AC CORRECT?
|
||||
ER3 AC,T'01 ;RESULT IN AC IS INCORRECT
|
||||
CAME AC+1,[XWD R2A,R2B] ;IS RESULT IN AC+1 CORRECT?
|
||||
ER4 AC+1,T'01 ;RESULT IN AC+1 IS INCORRECT
|
||||
JUMPL AC+2,E'T'00 ;LOOP ON ERROR SWITCH>
|
||||
459
apps/pdp10/diags/ka10/dakai/README.md
Normal file
459
apps/pdp10/diags/ka10/dakai/README.md
Normal file
|
|
@ -0,0 +1,459 @@
|
|||
---
|
||||
layout: page
|
||||
title: PDP-10 KA10 Basic Instruction Diagnostic #9
|
||||
permalink: /apps/pdp10/diags/ka10/dakai/
|
||||
machines:
|
||||
- id: testka10
|
||||
type: pdp10
|
||||
config: /devices/pdp10/machine/ka10/test/debugger/machine.xml
|
||||
debugger: true
|
||||
commands: a DAKAI.MAC
|
||||
---
|
||||
|
||||
PDP-10 KA10 Basic Instruction Diagnostic #9
|
||||
-------------------------------------------
|
||||
|
||||
The *PDP-10 KA10 Basic Instruction Diagnostic #9* (MAINDEC-10-DAKAI) test code has been extracted from
|
||||
[DAKAIM.MAC](DAKAIM.MAC.txt) [[original](http://pdp-10.trailing-edge.com/klad_sources/01/klad.sources/dakaim.mac.html)] and
|
||||
[DAKAIT.MAC](DAKAIT.MAC.txt) [[original](http://pdp-10.trailing-edge.com/klad_sources/01/klad.sources/dakait.mac.html)]
|
||||
for use with the [PDP-10 Test Machine with Debugger](/devices/pdp10/machine/ka10/test/debugger/) below.
|
||||
|
||||
This diagnostic "TESTS THE SHIFTING AND ROTATING INSTRUCTIONS."
|
||||
|
||||
Resources for this diagnostic include:
|
||||
|
||||
- [Instructions](#dakaitxt)
|
||||
- [History](#dakaihst)
|
||||
- [Source Code](#dakaimac)
|
||||
- [MACRO-10 Listing](DAKAI.LST.txt)
|
||||
- [Additional Information](http://archive.pcjs.org/apps/pdp10/diags/ka10/dakai/DAKAI.SEQ.txt)
|
||||
|
||||
{% include machine.html id="testka10" %}
|
||||
|
||||
The Debugger's assemble ("a") command can be used to test the new built-in
|
||||
[MACRO-10 Mini-Assembler](/modules/pdp10/lib/macro10.js), which supports a subset
|
||||
of the [MACRO-10](http://archive.pcjs.org/pubs/dec/pdp10/tops10/02_1973AsmRef_macro.pdf) assembly language.
|
||||
This command:
|
||||
|
||||
a DAKAI.MAC
|
||||
|
||||
will automatically read the [DAKAI.MAC](DAKAI.MAC.txt) source file (a slightly modified copy of [DAKAIM.MAC](DAKAIM.MAC.txt)),
|
||||
assemble it, and then load the binary image at the location specified in the file.
|
||||
|
||||
Interesting MACRO-10 Bug
|
||||
------------------------
|
||||
|
||||
Take a look at this piece of original [source code](#dakaimac):
|
||||
|
||||
MOVSI AC+1,ZZ ;SET BIT (N) OF AC+1 LEFT
|
||||
IFG <ZZ-2,>,<
|
||||
MOVSI AC-1,YY ;SETUP FOR COMPARISON>
|
||||
|
||||
and the corresponding lines in the [listing file](DAKAI.LST.txt):
|
||||
|
||||
11660 037024 205 07 0 00 000001 MOVSI AC+1,ZZ ;SET BIT (N) OF AC+1 LEFT
|
||||
11661 IFG <ZZ-2,>,<
|
||||
11662 037025 205 05 0 00 000000 MOVSI AC-1,YY ;SETUP FOR COMPARISON>
|
||||
|
||||
It's clear from the listing file that *ZZ* is 1, and therefore the *IFG* expression *<ZZ-2>* should be -1, so the
|
||||
*MOVSI AC-1,YY* should be suppressed. And my MACRO-10 Mini-Assembler *does* suppress it. But as you can see from
|
||||
DEC's listing file, they didn't suppress it. This results in an unfortunate mismatch between our respective
|
||||
instruction sequences from that point on.
|
||||
|
||||
Why did this happen? Since earlier identical *IFG* expansions work as expected, I have to assume that the spurious
|
||||
comma in that particular *IFG* pseudo-op somehow tripped up the expression evaluation. Commas *are* allowed in MACRO-10
|
||||
expressions; for example:
|
||||
|
||||
777777,,666666
|
||||
|
||||
combines two 18-bit values (0o777777 and 0o666666) into a single 36-bit value (0o777777666666). But I'm not aware of
|
||||
a *single* comma meaning anything to MACRO-10, and it's pretty clear that the comma in that *IFG* is just a typo,
|
||||
so I'm not going to try to replicate MACRO-10's behavior here.
|
||||
|
||||
The PCjs expression evaluator (which is what my MACRO-10 Mini-Assembler uses) is OK with the comma, but not because it
|
||||
supports a comma operator (it doesn't); it simply allows numbers to contain commas, in case the user is using commas to
|
||||
group digits. So "2," is the same as "2".
|
||||
|
||||
---
|
||||
|
||||
DAKAI.TXT
|
||||
---------
|
||||
|
||||
```
|
||||
MAINDEC-10-DAKAI.TXT
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
IDENTIFICATION
|
||||
--------------
|
||||
|
||||
PRODUCT CODE: MAINDEC-10-DAKAI-B-D
|
||||
|
||||
PRODUCT NAME: DECSYSTEM10 PDP-10 KA10 BASIC
|
||||
INSTRUCTION DIAGNOSTIC (9)
|
||||
|
||||
FUNCTION: SHIFT-ROTATE TEST (PART 1)
|
||||
|
||||
VERSION: 0.2
|
||||
|
||||
DATE RELEASED: JANUARY 1977
|
||||
|
||||
MAINTAINED BY: DIAGNOSTIC ENGINEERING GROUP
|
||||
|
||||
AUTHOR: JOHN R. KIRCHOFF
|
||||
|
||||
COPYRIGHT(C) 1976,1977
|
||||
DIGITAL EQUIPMENT CORPORATION
|
||||
MARLBORO, MASS. 01752
|
||||
|
||||
THIS SOFTWARE IS FURNISHED UNDER A LICENSE FOR USE ONLY
|
||||
ON A SINGLE COMPUTER SYSTEM AND MAY BE COPIED ONLY WITH
|
||||
THE INCLUSION OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE,
|
||||
OR ANY OTHER COPIES THEREOF, MAY NOT BE PROVIDED OR OTHERWISE
|
||||
MADE AVAILABLE TO ANY OTHER PERSON EXECPT FOR USE ON SUCH SYSTEM
|
||||
AND TO ONE WHO AGREES TO THESE LICENSE TERMS. TITLE TO AND
|
||||
OWNERSHIP OF THE SOFTWARE SHALL AT ALL TIMES REMAIN IN DEC.
|
||||
|
||||
THE INFORMATION IN THIS DOCUMENT IS SUBJECT TO CHANGE WITHOUT
|
||||
NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL
|
||||
EQUIPMENT CORPORATION.
|
||||
|
||||
DEC ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
|
||||
SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DEC.
|
||||
|
||||
MAINDEC-10-DAKAI.TXT
|
||||
PAGE 2
|
||||
|
||||
TABLE OF CONTENTS
|
||||
-----------------
|
||||
|
||||
1.0 ABSTRACT
|
||||
|
||||
2.0 REQUIREMENTS
|
||||
|
||||
2.1 EQUIPMENT
|
||||
|
||||
2.2 STORAGE
|
||||
|
||||
2.3 PRELIMINARY PROGRAMS
|
||||
|
||||
3.0 PROGRAM PROCEDURES
|
||||
|
||||
3.1 LOADING PROCEDURE
|
||||
|
||||
3.2 STARTING PROCEDURE
|
||||
|
||||
3.3 OPERATING PROCEDURE
|
||||
|
||||
4.0 DATA SWITCH FUNCTIONS
|
||||
|
||||
5.0 ERRORS
|
||||
|
||||
6.0 ITERATION COUNTER
|
||||
|
||||
7.0 CYCLE TIME
|
||||
|
||||
8.0 OPERATIONAL VARIATIONS
|
||||
|
||||
9.0 MISCELLANEOUS
|
||||
|
||||
10.0 LISTING
|
||||
|
||||
MAINDEC-10-DAKAI.TXT
|
||||
PAGE 3
|
||||
|
||||
1.0 ABSTRACT
|
||||
|
||||
THIS PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC IS THE
|
||||
NINTH IN A SERIES OF PDP-10 KA10 PROCESSOR DIAGNOSTICS.
|
||||
THE DIAGNOSTIC TESTS THE SHIFTING AND ROTATING INSTRUCTIONS.
|
||||
|
||||
2.0 REQUIREMENTS
|
||||
|
||||
2.1 EQUIPMENT
|
||||
|
||||
A PDP-10 KA10 EQUIPPED WITH A MINIMUM OF 32K OF MEMORY
|
||||
|
||||
PAPER TAPE READER
|
||||
CONSOLE TELETYPE
|
||||
DECTAPE
|
||||
LINE PRINTER (OPTIONAL)
|
||||
|
||||
2.2 STORAGE
|
||||
|
||||
THE PROGRAM RUNS WITHIN 32K OF MEMORY.
|
||||
|
||||
2.3 PRELIMINARY PROGRAMS
|
||||
|
||||
PREVIOUS PROCESSOR DIAGNOSTICS
|
||||
|
||||
3.0 PROGRAM PROCEDURES
|
||||
|
||||
3.1 LOADING PROCEDURE
|
||||
|
||||
THIS DIAGNOSTIC REQUIRES THAT THE DECSYSTEM10 SUBROUTINE
|
||||
PROGRAM BE RESIDENT IN THE PDP-10.
|
||||
|
||||
PAPER TAPE - HARDWARE READ-IN (READER DEVICE CODE 104)
|
||||
DECTAPE - LOAD WITH DIAMON (DECTAPE DEVICE CODE 320)
|
||||
TIME SHARING - RUN UNDER DIAMON.
|
||||
|
||||
MAINDEC-10-DAKAI.TXT
|
||||
PAGE 4
|
||||
|
||||
3.2 STARTING PROCEDURE
|
||||
|
||||
A. SELECT OPERATIONAL CONSOLE DATA SWITCH SETTINGS (REFER TO
|
||||
4.0 DATA SWITCH FUNCTIONS).
|
||||
|
||||
B. EXEC MODE
|
||||
|
||||
STAND-ALONE STARTING ADDRESS IS 30000.
|
||||
|
||||
C. USER MODE
|
||||
|
||||
RUN UNDER "DIAMON".
|
||||
IN USER MODE THE FOLLOWING QUESTIONS WILL BE ASKED TO
|
||||
SELECT THE OPERATIONAL SWITCHES:
|
||||
|
||||
TELETYPE SWITCH CONTROL ? 0,S,Y OR N (CR) -
|
||||
|
||||
IF THE OPERATOR TYPES "N", THE ACTUAL CONSOLE
|
||||
SWITCHES ARE USED.
|
||||
|
||||
IF THE OPERATOR TYPES "Y", THE FOLLOWING QUESTIONS
|
||||
ARE ASKED AND THE OPERATOR RESPONDS BY TYPING
|
||||
THE ANSWER AS SIX OCTAL DIGITS REPRESENTING
|
||||
THE DESIRED SWITCH SETTINGS.
|
||||
|
||||
SPECIFY LH SWITCHES IN OCTAL-
|
||||
|
||||
SPECIFY RH SWITCHES IN OCTAL-
|
||||
|
||||
IF THE OPERATOR TYPES "0", ZERO'S ARE USED FOR
|
||||
THE SWITCH SETTINGS.
|
||||
|
||||
IF THE OPERATOR TYPES "S", PREVIOUSLY SET SWITCHES
|
||||
ARE USED. THIS IS ONLY VALID UPON RESTARTING
|
||||
OF AN INTERRUPTED PROGRAM.
|
||||
|
||||
MAINDEC-10-DAKAI.TXT
|
||||
PAGE 5
|
||||
|
||||
3.3 OPERATING PROCEDURE
|
||||
|
||||
A. TO THROUGHLY TEST ALL HARDWARE, ALL TEST CONTROL DATA
|
||||
SWITCHES SHOULD BE SET TO 0.
|
||||
|
||||
B. WHEN DEBUGGING HARDWARE, SET SWITCHES TO 0. ALLOW THE
|
||||
TELETYPE TO PRINT THE ERROR MESSAGES. THIS ALLOWS THE
|
||||
PROGRAM TO RUN A COMPLETE PASS AND THEN THE ERROR MESSAGES
|
||||
MAY BE CORRELATED TO QUICKLY DIAGNOSE THE FAILURE. IF A
|
||||
HARDWARE PROBLEM IS SUCH THAT THE ERROR MESSAGES, AFTER THE
|
||||
FIRST ONE, HAVE NO MEANING (FIRST ERROR CAUSES ALL FOLLOWING
|
||||
TESTS TO FAIL) SET THE LOOP ON ERROR SWITCH AND RESTART THE
|
||||
TEST FROM THE BEGINNING. THE FIRST FAILURE WILL THEN CAUSE
|
||||
THE PROGRAM TO ENTER A LOOP SUITABLE FOR SCOPING.
|
||||
|
||||
THE ERROR MESSAGE USED IN CONJUNCTION WITH THE LISTING AND
|
||||
SCOPING IF NECESSARY SHOULD ALLOW THE FAILING CONPONENT
|
||||
TO BE ISOLATED AND REPLACED AND/OR REPAIRED.
|
||||
|
||||
C. WHEN TAKING MARGINS, SET DATA SWITCHES 'NOPNT' AND 'DING'.
|
||||
THIS WILL INHIBIT PRINTOUT BUT WILL ALLOW THE TELETYPE
|
||||
BELL TO BE RUNG WHEN A ERROR OCCURS. IF THE MARGIN OBTAINED
|
||||
IS UNACCEPTABLE, THE OPERATOR MAY REVERT TO STANDARD SWITCH
|
||||
SETTINGS FOR DEBUGGING PURPOSES.
|
||||
|
||||
D. ERROR INFORMATION MAY BE OBTAINED QUICKLY BY PRINTING
|
||||
ERRORS ON THE LINE PRINTER.
|
||||
|
||||
E. IN THE EVENT OF A PRINT ROUTINE FAILURE THE 'NOPNT' SWITCH
|
||||
AND THE 'ERSTOP' SWITCH MAY BE SET TO INHIBIT PRINTOUT
|
||||
BUT HALT THE PROGRAM POINTING TO THE ERROR.
|
||||
|
||||
MAINDEC-10-DAKAI.TXT
|
||||
PAGE 6
|
||||
|
||||
4.0 DATA SWITCH FUNCTIONS
|
||||
|
||||
SWITCH STATE FUNCTION
|
||||
------ ----- --------
|
||||
|
||||
0 ABORT 0 NORMAL OPERATION
|
||||
1 ABORT AT END OF PASS
|
||||
|
||||
1 RSTART NOT USED
|
||||
|
||||
2 TOTALS NOT USED
|
||||
|
||||
3 NOPNT 0 NORMAL TYPEOUT
|
||||
1 INHIBIT ALL PRINT/TYPEOUT
|
||||
(EXCEPT FORCED)
|
||||
|
||||
4 PNTLPT 0 NORMAL OUTPUT TO TTY
|
||||
1 PRINT ALL DATA ON LPT
|
||||
(LOGICAL DEVICE, USER MODE)
|
||||
|
||||
5 DING 0 NO FUNCTION
|
||||
1 RING TTY BELL ON ERROR
|
||||
|
||||
6 LOOPER 0 PROCEED TO NEXT TEST
|
||||
1 ENTER SCOPE LOOP ON TEST ERROR
|
||||
|
||||
7 ERSTOP 0 NO FUNCTION
|
||||
1 HALT ON TEST ERROR
|
||||
|
||||
8 PALERS 0 PRINT ONLY FIRST ERROR WHEN LOOPING
|
||||
1 PRINT ALL ERRORS, EVEN IF SAME ERROR
|
||||
|
||||
9 RELIAB NOT USED
|
||||
|
||||
10 TXTINH 0 PRINT FULL ERROR MESSAGES.
|
||||
1 INHIBIT COMMENT PORTION OF
|
||||
ERROR MESSAGES.
|
||||
|
||||
11 INHPAG 0 ALLOW PAGING AND TRAP ENABLE
|
||||
1 INHIBIT PAGING AND TRAPPING
|
||||
|
||||
12 MODDVC NOT USED
|
||||
|
||||
13 INHCSH NOT USED
|
||||
|
||||
MAINDEC-10-DAKAI.TXT
|
||||
PAGE 7
|
||||
|
||||
5.0 ERRORS
|
||||
|
||||
ERRORS ARE PRINTED ON THE TTY OR LINE PRINTER. THE ERROR
|
||||
PRINTOUT CONTAINS THE TEST TITLE, THE PC OF THE FAILURE, ERROR
|
||||
NUMBER AND THE CONTENTS OF AN APPLICABLE AC.
|
||||
|
||||
THE PC VALUE IS USEFUL IN RELATING THE FAILURE TO THE LISTING.
|
||||
THE ERROR NUMBER IS PROVIDED SUCH THAT AN ERROR DICTIONARY MAY
|
||||
BE MADE AT SOME FUTURE DATE.
|
||||
|
||||
WHEN THE SCOPE LOOP MODE IS USED THE MI REGISTER WILL COUNT
|
||||
FOR EACH OCCURANCE OF AN ERROR. IF AN AUDIO INDICATION OF
|
||||
A CONTINUING ERROR IS DESIRED THE 'DING' SWITCH MAY BE SET.
|
||||
|
||||
6.0 ITERATION COUNTER
|
||||
|
||||
THE ITERATION COUNT OF THE PROGRAM IS DISPLAYED IN THE MEMORY
|
||||
INDICATORS (MI). THIS COUNT IS A DECREMENTING COUNT AND
|
||||
INITIALLY STARTS AT -1 IN STAND-ALONE OPERATION.
|
||||
|
||||
7.0 CYCLE TIME
|
||||
|
||||
THE CYCLE TIME OF THE PROGRAM IS IN THE MILLISECOND RANGE AND
|
||||
IS THEREFORE SUITABLE FOR TAKING MARGINS, VIBRATION TESTS,
|
||||
ETC.
|
||||
MAINDEC-10-DAKAI.TXT
|
||||
PAGE 8
|
||||
|
||||
8.0 OPERATIONAL VARIATIONS
|
||||
|
||||
A. DIAGNOSTIC MONITOR
|
||||
|
||||
THE PROGRAM IS USABLE WITH THE DIAGNOSTIC MONITOR TO PROVIDE
|
||||
RELIABILITY TESTS, ACCEPTANCE TESTS, AND/OR TO PROVIDE A
|
||||
QUICK METHOD OF ISOLATION OF A FAULT TO A PARTICULAR AREA
|
||||
OF THE PROCESSOR. CERTAIN PROCEDURES ARE USED WHEN THE
|
||||
PROGRAM IS USED IN THIS MANNER. THEY ARE:
|
||||
|
||||
1. THE DIAGNOSTIC MONITOR TRANSFERS CONTROL TO THE PROGRAM
|
||||
AND STARTS IT AT LOCATION 30002.
|
||||
|
||||
2. MONCTL - LOCATION 30043 IS USED AS THE DIAGNOSTIC MONITOR
|
||||
CONTROL WORD.
|
||||
LH = 0, STAND-ALONE OPERATION
|
||||
-1, RUNNING UNDER DIAGNOSTIC MONITOR
|
||||
|
||||
RH = RIGHT HALF OF CONSOLE SWITCHES IF UNDER
|
||||
DIAGNOSTIC MONITOR CONTROL.
|
||||
|
||||
B. USER MODE
|
||||
|
||||
TO OUTPUT THE PRINTED ERROR MESSAGES TO A USER SPECIFIED
|
||||
DEVICE IN USER MODE, ASSIGN THE DESIRED OUTPUT DEVICE TO
|
||||
DEVICE NAME 'DEV' AND SET SWITCH 'PNTLPT'. THE PHYSICAL
|
||||
DEVICE USED CAN BE ANY DEVICE THAT CAN ACCEPT ASCII OUTPUT
|
||||
FORMAT SUCH AS LPT, DSK, DTA, ETC. THE CORRESPONDING
|
||||
OUTPUT FILE IS 'DAKAI.TMP'
|
||||
|
||||
EXAMPLE DEVICE ASSIGNMENT:
|
||||
|
||||
.ASSIGN DSK DEV
|
||||
|
||||
IN USER MODE THE PROGRAM WILL MAKE 1000(8) PASSES AND THEN
|
||||
RETURN TO DIAMON COMMAND MODE.
|
||||
|
||||
MAINDEC-10-DAKAI.TXT
|
||||
PAGE 9
|
||||
|
||||
8.0 OPERATIONAL VARIATIONS (CON'T)
|
||||
|
||||
THE OUTPUT FILE (IF USED) MAY THEN BE LISTED BY USING THE
|
||||
NORMAL MONITOR COMMANDS (PRINT, LIST, TYPE, PIP, ETC.).
|
||||
|
||||
IF THE PROGRAM IS ABORTED BEFORE COMPLETION (BY ^C, ETC.) THE
|
||||
OUTPUT FILE MAY BE CLOSED BY USING THE MONITOR 'REENTER'
|
||||
COMMAND.
|
||||
|
||||
C. SYSTEM EXERCISER
|
||||
|
||||
START ADDRESS IS 30003. DATA SWITCHES ARE PRESTORED IN
|
||||
'SWTEXR' LOC 30023.
|
||||
|
||||
9.0 MISCELLANEOUS
|
||||
|
||||
THE NON-EX-MEMORY AND PARITY STOP SWITCHES SHOULD BE RESET
|
||||
(0). THESE ERRORS, ILLEGAL UUO'S AND OTHER ERRORS OF THIS
|
||||
TYPE ARE HANDLED BY PRINTOUT ON THE TELETYPE.
|
||||
|
||||
10.0 LISTING
|
||||
```
|
||||
|
||||
DAKAI.HST
|
||||
---------
|
||||
|
||||
THIS IS A HISTORY OF THE DEVELOPMENT OF MAINDEC-10-DAKAI
|
||||
|
||||
************************************************************************
|
||||
|
||||
PRODUCT CODE: MAINDEC-10-DAKAI
|
||||
|
||||
PRODUCT NAME: BASIC INSTRUCTION DIAGNOSTIC #9
|
||||
|
||||
DATE RELEASED: JANUARY 1977
|
||||
|
||||
VERSION: 0.2
|
||||
|
||||
UPDATE AUTHOR: JOHN R. KIRCHOFF
|
||||
|
||||
CHANGES MADE:
|
||||
|
||||
1. UPGRADE TO ALLOW COMPATABILITY WITH THE SUBROUTINE PACKAGE.
|
||||
|
||||
************************************************************************
|
||||
|
||||
ORIGINAL VERSION: 0.1
|
||||
|
||||
ORIGINAL AUTHOR: RICHARD MALISKA
|
||||
|
||||
ORIGINAL RELEASE: 16-MAR-72
|
||||
|
||||
************************************************************************
|
||||
|
||||
DAKAI.MAC
|
||||
---------
|
||||
|
||||
[[Download](DAKAI.MAC.txt)]
|
||||
|
||||
{% highlight text %}
|
||||
{% include_relative DAKAI.MAC.txt %}
|
||||
{% endhighlight %}
|
||||
9412
apps/pdp10/diags/ka10/dakaj/DAKAJ.LST.txt
Normal file
9412
apps/pdp10/diags/ka10/dakaj/DAKAJ.LST.txt
Normal file
File diff suppressed because it is too large
Load diff
1869
apps/pdp10/diags/ka10/dakaj/DAKAJ.MAC.txt
Normal file
1869
apps/pdp10/diags/ka10/dakaj/DAKAJ.MAC.txt
Normal file
File diff suppressed because it is too large
Load diff
1727
apps/pdp10/diags/ka10/dakaj/DAKAJM.MAC.txt
Normal file
1727
apps/pdp10/diags/ka10/dakaj/DAKAJM.MAC.txt
Normal file
File diff suppressed because it is too large
Load diff
135
apps/pdp10/diags/ka10/dakaj/DAKAJT.MAC.txt
Normal file
135
apps/pdp10/diags/ka10/dakaj/DAKAJT.MAC.txt
Normal file
|
|
@ -0,0 +1,135 @@
|
|||
;DAKAJ
|
||||
|
||||
|
||||
MCNVER==0
|
||||
DECVER==2
|
||||
|
||||
XLIST
|
||||
DEFINE NAME (MCNVER,DECVER)<
|
||||
|
||||
TITLE DAKAJ PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (10) MCNVER,DECVER
|
||||
>
|
||||
LIST
|
||||
LALL
|
||||
|
||||
NAME \MCNVER,\DECVER
|
||||
|
||||
;(LOGICAL SHIFT, ROTATE, ARITHMETIC SHIFT; SINGLE AND COMBINED)
|
||||
|
||||
;COPYRIGHT 1975,1977
|
||||
;DIGITAL EQUIPMENT CORPORATION
|
||||
;MARLBORO, MASS. 01752
|
||||
|
||||
;JOHN R. KIRCHOFF
|
||||
|
||||
LOC 137
|
||||
MCNVER,,DECVER
|
||||
|
||||
NOSYM
|
||||
SUBTTL DIAGNOSTIC PARAMETERS
|
||||
|
||||
;OPERATOR DEFINITIONS
|
||||
|
||||
OPDEF ER1 [1B8]
|
||||
OPDEF ER2 [2B8]
|
||||
OPDEF ER3 [3B8]
|
||||
OPDEF ER4 [4B8]
|
||||
OPDEF ER5 [5B8]
|
||||
OPDEF ER6 [6B8]
|
||||
OPDEF ER7 [7B8]
|
||||
OPDEF ER10 [10B8]
|
||||
OPDEF ER11 [11B8]
|
||||
OPDEF ER12 [12B8]
|
||||
OPDEF ER13 [13B8]
|
||||
|
||||
LUUO1=ERRMES
|
||||
LUUO2=ERRMES
|
||||
LUUO3=ERRMES
|
||||
LUUO4=ERRMES
|
||||
LUUO5=ERRMES
|
||||
LUUO6=ERRMES
|
||||
LUUO7=ERRMES
|
||||
LUUO10=ERRMES
|
||||
LUUO11=ERRMES
|
||||
LUUO12=ERRMES
|
||||
LUUO13=ERRMES
|
||||
;SUBROUTINE ASSEMBLY DEFINITIONS
|
||||
|
||||
DEBUG=40
|
||||
EXCASB=1
|
||||
USRASB=1
|
||||
KA10=1
|
||||
KL10=1
|
||||
KL10P0=1
|
||||
PGMEND=1
|
||||
ERDIAG=1
|
||||
|
||||
;SPECIAL FEATURE PARAMETERS
|
||||
|
||||
SADR1=START
|
||||
SADR2=START
|
||||
SADR3=START
|
||||
SADR4=START
|
||||
SADR5=JRST START
|
||||
SADR6=JRST START
|
||||
SADR7=JRST START
|
||||
SADR8=JRST START
|
||||
SADR9=JRST START
|
||||
SADR10=JRST START
|
||||
SADR11=JRST START
|
||||
|
||||
PAREA0=0
|
||||
PAREA1=0
|
||||
PAREA2=0
|
||||
PAREA3=SIXBIT/DAKAJ/
|
||||
PAREA4=SIXBIT/TMP/
|
||||
PAREA5=0
|
||||
PAREA6=0
|
||||
ITERAT==1000
|
||||
|
||||
;MACROS
|
||||
|
||||
DEFINE SAVEAC (A,B)<
|
||||
MOVEI AC+2,. ;SETUP TESTPC
|
||||
MOVEM AC+2,TESTPC
|
||||
MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
||||
MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION>
|
||||
|
||||
DEFINE SETACS (WW,XX)<
|
||||
MOVEI AC-1,WW ;SETUP AC-1
|
||||
HRLI AC-1,WW ;FOR COMPARISION
|
||||
MOVE AC-2,<AC-1>&17 ;SETUP AC-2 FOR COMPARISON
|
||||
MOVEI AC,XX ;SETUP AC RIGHT
|
||||
HRLI AC,XX ;SETUP AC LEFT
|
||||
MOVEM AC,<AC+1>&17 ;SETUP AC2>
|
||||
;USER DEFINED MACROS
|
||||
|
||||
DEFINE SR1 (T,D1A,D1B,R1A,R1B,OP,S)<
|
||||
;THIS MACRO SHIFTS/ROTATES THE DATA SPECIFIED IN [XWD D1A,D1B] S BIT
|
||||
;POSITIONS AND COMPARES THE RESULT IN THE AC TO THE DATA SPECIFIED IN [XWD R1A,R1B]
|
||||
;IT ALSO CHECKS THAT C(AC+1) WAS NOT MODIFIED
|
||||
|
||||
E'T'00: MOVE AC,[XWD D1A,D1B] ;INITIALIZE AC
|
||||
MOVE AC+1,[XWD 741703,607417];INITIALIZE AC+1
|
||||
OP AC,S ;*SHIFT/ROTATE S BIT POSITIONS
|
||||
CAME AC,[XWD R1A,R1B] ;IS RESULT IN AC CORRECT?
|
||||
ER3 AC,T'01 ;RESULT IN AC IS INCORRECT
|
||||
CAME AC+1,[XWD 741703,607417]
|
||||
ER4 AC+1,T'01 ;C(AC+1) WAS MODIFIED INCORRECTLY
|
||||
JUMPL AC+2,E'T'00 ;LOOP ON ERROR SWITCH>
|
||||
|
||||
|
||||
DEFINE SR2 (T,D1A,D1B,D2A,D2B,R1A,R1B,R2A,R2B,OP,S)<
|
||||
;THIS MACRO PERFORMS A COMBINED SHIFT/ROTATE OPERATION ON THE
|
||||
;DATA SPECIFIED IN [XWD D1A,D1B] AND [XWD D2A,D2B] S BIT POSITIONS AND
|
||||
;COMPARES THE RESULT IN AC AND AC+1 TO THE DATA SPECIFIED IN [XWD R1A,R1B] AND
|
||||
;[XWD R2A,R2B]
|
||||
|
||||
E'T'00: MOVE AC,[XWD D1A,D1B] ;INITIALIZE AC
|
||||
MOVE AC+1,[XWD D2A,D2B] ;INITIALIZE AC+1
|
||||
OP AC,S ;*SHIFT/ROTATE COMBINED S PLACES
|
||||
CAME AC,[XWD R1A,R1B] ;IS RESULT IN AC CORRECT?
|
||||
ER3 AC,T'01 ;RESULT IN AC IS INCORRECT
|
||||
CAME AC+1,[XWD R2A,R2B] ;IS RESULT IN AC+1 CORRECT?
|
||||
ER4 AC+1,T'01 ;RESULT IN AC+1 IS INCORRECT
|
||||
JUMPL AC+2,E'T'00 ;LOOP ON ERROR SWITCH>
|
||||
437
apps/pdp10/diags/ka10/dakaj/README.md
Normal file
437
apps/pdp10/diags/ka10/dakaj/README.md
Normal file
|
|
@ -0,0 +1,437 @@
|
|||
---
|
||||
layout: page
|
||||
title: PDP-10 KA10 Basic Instruction Diagnostic #10
|
||||
permalink: /apps/pdp10/diags/ka10/dakaj/
|
||||
machines:
|
||||
- id: testka10
|
||||
type: pdp10
|
||||
config: /devices/pdp10/machine/ka10/test/debugger/machine.xml
|
||||
debugger: true
|
||||
commands: a DAKAJ.MAC
|
||||
---
|
||||
|
||||
PDP-10 KA10 Basic Instruction Diagnostic #10
|
||||
--------------------------------------------
|
||||
|
||||
The *PDP-10 KA10 Basic Instruction Diagnostic #10* (MAINDEC-10-DAKAJ) test code has been extracted from
|
||||
[DAKAJM.MAC](DAKAJM.MAC.txt) [[original](http://pdp-10.trailing-edge.com/klad_sources/01/klad.sources/dakajm.mac.html)] and
|
||||
[DAKAJT.MAC](DAKAJT.MAC.txt) [[original](http://pdp-10.trailing-edge.com/klad_sources/01/klad.sources/dakajt.mac.html)]
|
||||
for use with the [PDP-10 Test Machine with Debugger](/devices/pdp10/machine/ka10/test/debugger/) below.
|
||||
|
||||
This diagnostic "CONTINUES TESTING THE SHIFT AND ROTATE INSTRUCTIONS."
|
||||
|
||||
Resources for this diagnostic include:
|
||||
|
||||
- [Instructions](#dakajtxt)
|
||||
- [History](#dakajhst)
|
||||
- [Source Code](#dakajmac)
|
||||
- [MACRO-10 Listing](DAKAJ.LST.txt)
|
||||
- [Additional Information](http://archive.pcjs.org/apps/pdp10/diags/ka10/dakaj/DAKAJ.SEQ.txt)
|
||||
|
||||
{% include machine.html id="testka10" %}
|
||||
|
||||
The Debugger's assemble ("a") command can be used to test the new built-in
|
||||
[MACRO-10 Mini-Assembler](/modules/pdp10/lib/macro10.js), which supports a subset
|
||||
of the [MACRO-10](http://archive.pcjs.org/pubs/dec/pdp10/tops10/02_1973AsmRef_macro.pdf) assembly language.
|
||||
This command:
|
||||
|
||||
a DAKAJ.MAC
|
||||
|
||||
will automatically read the [DAKAJ.MAC](DAKAJ.MAC.txt) source file (a slightly modified copy of [DAKAJM.MAC](DAKAJM.MAC.txt)),
|
||||
assemble it, and then load the binary image at the location specified in the file.
|
||||
|
||||
---
|
||||
|
||||
DAKAJ.TXT
|
||||
---------
|
||||
|
||||
```
|
||||
MAINDEC-10-DAKAJ.TXT
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
IDENTIFICATION
|
||||
--------------
|
||||
|
||||
PRODUCT CODE: MAINDEC-10-DAKAJ-B-D
|
||||
|
||||
PRODUCT NAME: DECSYSTEM10 PDP-10 KA10 BASIC
|
||||
INSTRUCTION DIAGNOSTIC (10)
|
||||
|
||||
FUNCTION: SHIFT-ROTATE TEST (PART 2)
|
||||
|
||||
VERSION: 0.2
|
||||
|
||||
DATE RELEASED: JANUARY 1977
|
||||
|
||||
MAINTAINED BY: DIAGNOSTIC ENGINEERING GROUP
|
||||
|
||||
AUTHOR: JOHN R. KIRCHOFF
|
||||
|
||||
COPYRIGHT(C) 1976,1977
|
||||
DIGITAL EQUIPMENT CORPORATION
|
||||
MARLBORO, MASS. 01752
|
||||
|
||||
THIS SOFTWARE IS FURNISHED UNDER A LICENSE FOR USE ONLY
|
||||
ON A SINGLE COMPUTER SYSTEM AND MAY BE COPIED ONLY WITH
|
||||
THE INCLUSION OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE,
|
||||
OR ANY OTHER COPIES THEREOF, MAY NOT BE PROVIDED OR OTHERWISE
|
||||
MADE AVAILABLE TO ANY OTHER PERSON EXECPT FOR USE ON SUCH SYSTEM
|
||||
AND TO ONE WHO AGREES TO THESE LICENSE TERMS. TITLE TO AND
|
||||
OWNERSHIP OF THE SOFTWARE SHALL AT ALL TIMES REMAIN IN DEC.
|
||||
|
||||
THE INFORMATION IN THIS DOCUMENT IS SUBJECT TO CHANGE WITHOUT
|
||||
NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL
|
||||
EQUIPMENT CORPORATION.
|
||||
|
||||
DEC ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
|
||||
SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DEC.
|
||||
|
||||
MAINDEC-10-DAKAJ.TXT
|
||||
PAGE 2
|
||||
|
||||
TABLE OF CONTENTS
|
||||
-----------------
|
||||
|
||||
1.0 ABSTRACT
|
||||
|
||||
2.0 REQUIREMENTS
|
||||
|
||||
2.1 EQUIPMENT
|
||||
|
||||
2.2 STORAGE
|
||||
|
||||
2.3 PRELIMINARY PROGRAMS
|
||||
|
||||
3.0 PROGRAM PROCEDURES
|
||||
|
||||
3.1 LOADING PROCEDURE
|
||||
|
||||
3.2 STARTING PROCEDURE
|
||||
|
||||
3.3 OPERATING PROCEDURE
|
||||
|
||||
4.0 DATA SWITCH FUNCTIONS
|
||||
|
||||
5.0 ERRORS
|
||||
|
||||
6.0 ITERATION COUNTER
|
||||
|
||||
7.0 CYCLE TIME
|
||||
|
||||
8.0 OPERATIONAL VARIATIONS
|
||||
|
||||
9.0 MISCELLANEOUS
|
||||
|
||||
10.0 LISTING
|
||||
|
||||
MAINDEC-10-DAKAJ.TXT
|
||||
PAGE 3
|
||||
|
||||
1.0 ABSTRACT
|
||||
|
||||
THIS PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC IS THE
|
||||
TENTH IN A SERIES OF PDP-10 KA10 PROCESSOR DIAGNOSTICS.
|
||||
THE DIAGNOSTIC CONTINUES TESTING THE SHIFT
|
||||
AND ROTATE INSTRUCTIONS.
|
||||
|
||||
2.0 REQUIREMENTS
|
||||
|
||||
2.1 EQUIPMENT
|
||||
|
||||
A PDP-10 KA10 EQUIPPED WITH A MINIMUM OF 32K OF MEMORY
|
||||
|
||||
PAPER TAPE READER
|
||||
CONSOLE TELETYPE
|
||||
DECTAPE
|
||||
LINE PRINTER (OPTIONAL)
|
||||
|
||||
2.2 STORAGE
|
||||
|
||||
THE PROGRAM RUNS WITHIN 32K OF MEMORY.
|
||||
|
||||
2.3 PRELIMINARY PROGRAMS
|
||||
|
||||
PREVIOUS PROCESSOR DIAGNOSTICS
|
||||
|
||||
3.0 PROGRAM PROCEDURES
|
||||
|
||||
3.1 LOADING PROCEDURE
|
||||
|
||||
THIS DIAGNOSTIC REQUIRES THAT THE DECSYSTEM10 SUBROUTINE
|
||||
PROGRAM BE RESIDENT IN THE PDP-10.
|
||||
|
||||
PAPER TAPE - HARDWARE READ-IN (READER DEVICE CODE 104)
|
||||
DECTAPE - LOAD WITH DIAMON (DECTAPE DEVICE CODE 320)
|
||||
TIME SHARING - RUN UNDER DIAMON.
|
||||
|
||||
MAINDEC-10-DAKAJ.TXT
|
||||
PAGE 4
|
||||
|
||||
3.2 STARTING PROCEDURE
|
||||
|
||||
A. SELECT OPERATIONAL CONSOLE DATA SWITCH SETTINGS (REFER TO
|
||||
4.0 DATA SWITCH FUNCTIONS).
|
||||
|
||||
B. EXEC MODE
|
||||
|
||||
STAND-ALONE STARTING ADDRESS IS 30000.
|
||||
|
||||
C. USER MODE
|
||||
|
||||
RUN UNDER "DIAMON".
|
||||
IN USER MODE THE FOLLOWING QUESTIONS WILL BE ASKED TO
|
||||
SELECT THE OPERATIONAL SWITCHES:
|
||||
|
||||
TELETYPE SWITCH CONTROL ? 0,S,Y OR N (CR) -
|
||||
|
||||
IF THE OPERATOR TYPES "N", THE ACTUAL CONSOLE
|
||||
SWITCHES ARE USED.
|
||||
|
||||
IF THE OPERATOR TYPES "Y", THE FOLLOWING QUESTIONS
|
||||
ARE ASKED AND THE OPERATOR RESPONDS BY TYPING
|
||||
THE ANSWER AS SIX OCTAL DIGITS REPRESENTING
|
||||
THE DESIRED SWITCH SETTINGS.
|
||||
|
||||
SPECIFY LH SWITCHES IN OCTAL-
|
||||
|
||||
SPECIFY RH SWITCHES IN OCTAL-
|
||||
|
||||
IF THE OPERATOR TYPES "0", ZERO'S ARE USED FOR
|
||||
THE SWITCH SETTINGS.
|
||||
|
||||
IF THE OPERATOR TYPES "S", PREVIOUSLY SET SWITCHES
|
||||
ARE USED. THIS IS ONLY VALID UPON RESTARTING
|
||||
OF AN INTERRUPTED PROGRAM.
|
||||
|
||||
MAINDEC-10-DAKAJ.TXT
|
||||
PAGE 5
|
||||
|
||||
3.3 OPERATING PROCEDURE
|
||||
|
||||
A. TO THROUGHLY TEST ALL HARDWARE, ALL TEST CONTROL DATA
|
||||
SWITCHES SHOULD BE SET TO 0.
|
||||
|
||||
B. WHEN DEBUGGING HARDWARE, SET SWITCHES TO 0. ALLOW THE
|
||||
TELETYPE TO PRINT THE ERROR MESSAGES. THIS ALLOWS THE
|
||||
PROGRAM TO RUN A COMPLETE PASS AND THEN THE ERROR MESSAGES
|
||||
MAY BE CORRELATED TO QUICKLY DIAGNOSE THE FAILURE. IF A
|
||||
HARDWARE PROBLEM IS SUCH THAT THE ERROR MESSAGES, AFTER THE
|
||||
FIRST ONE, HAVE NO MEANING (FIRST ERROR CAUSES ALL FOLLOWING
|
||||
TESTS TO FAIL) SET THE LOOP ON ERROR SWITCH AND RESTART THE
|
||||
TEST FROM THE BEGINNING. THE FIRST FAILURE WILL THEN CAUSE
|
||||
THE PROGRAM TO ENTER A LOOP SUITABLE FOR SCOPING.
|
||||
|
||||
THE ERROR MESSAGE USED IN CONJUNCTION WITH THE LISTING AND
|
||||
SCOPING IF NECESSARY SHOULD ALLOW THE FAILING CONPONENT
|
||||
TO BE ISOLATED AND REPLACED AND/OR REPAIRED.
|
||||
|
||||
C. WHEN TAKING MARGINS, SET DATA SWITCHES 'NOPNT' AND 'DING'.
|
||||
THIS WILL INHIBIT PRINTOUT BUT WILL ALLOW THE TELETYPE
|
||||
BELL TO BE RUNG WHEN A ERROR OCCURS. IF THE MARGIN OBTAINED
|
||||
IS UNACCEPTABLE, THE OPERATOR MAY REVERT TO STANDARD SWITCH
|
||||
SETTINGS FOR DEBUGGING PURPOSES.
|
||||
|
||||
D. ERROR INFORMATION MAY BE OBTAINED QUICKLY BY PRINTING
|
||||
ERRORS ON THE LINE PRINTER.
|
||||
|
||||
E. IN THE EVENT OF A PRINT ROUTINE FAILURE THE 'NOPNT' SWITCH
|
||||
AND THE 'ERSTOP' SWITCH MAY BE SET TO INHIBIT PRINTOUT
|
||||
BUT HALT THE PROGRAM POINTING TO THE ERROR.
|
||||
|
||||
MAINDEC-10-DAKAJ.TXT
|
||||
PAGE 6
|
||||
|
||||
4.0 DATA SWITCH FUNCTIONS
|
||||
|
||||
SWITCH STATE FUNCTION
|
||||
------ ----- --------
|
||||
|
||||
0 ABORT 0 NORMAL OPERATION
|
||||
1 ABORT AT END OF PASS
|
||||
|
||||
1 RSTART NOT USED
|
||||
|
||||
2 TOTALS NOT USED
|
||||
|
||||
3 NOPNT 0 NORMAL TYPEOUT
|
||||
1 INHIBIT ALL PRINT/TYPEOUT
|
||||
(EXCEPT FORCED)
|
||||
|
||||
4 PNTLPT 0 NORMAL OUTPUT TO TTY
|
||||
1 PRINT ALL DATA ON LPT
|
||||
(LOGICAL DEVICE, USER MODE)
|
||||
|
||||
5 DING 0 NO FUNCTION
|
||||
1 RING TTY BELL ON ERROR
|
||||
|
||||
6 LOOPER 0 PROCEED TO NEXT TEST
|
||||
1 ENTER SCOPE LOOP ON TEST ERROR
|
||||
|
||||
7 ERSTOP 0 NO FUNCTION
|
||||
1 HALT ON TEST ERROR
|
||||
|
||||
8 PALERS 0 PRINT ONLY FIRST ERROR WHEN LOOPING
|
||||
1 PRINT ALL ERRORS, EVEN IF SAME ERROR
|
||||
|
||||
9 RELIAB NOT USED
|
||||
|
||||
10 TXTINH 0 PRINT FULL ERROR MESSAGES.
|
||||
1 INHIBIT COMMENT PORTION OF
|
||||
ERROR MESSAGES.
|
||||
|
||||
11 INHPAG 0 ALLOW PAGING AND TRAP ENABLE
|
||||
1 INHIBIT PAGING AND TRAPPING
|
||||
|
||||
12 MODDVC NOT USED
|
||||
|
||||
13 INHCSH NOT USED
|
||||
|
||||
MAINDEC-10-DAKAJ.TXT
|
||||
PAGE 7
|
||||
|
||||
5.0 ERRORS
|
||||
|
||||
ERRORS ARE PRINTED ON THE TTY OR LINE PRINTER. THE ERROR
|
||||
PRINTOUT CONTAINS THE TEST TITLE, THE PC OF THE FAILURE, ERROR
|
||||
NUMBER AND THE CONTENTS OF AN APPLICABLE AC.
|
||||
|
||||
THE PC VALUE IS USEFUL IN RELATING THE FAILURE TO THE LISTING.
|
||||
THE ERROR NUMBER IS PROVIDED SUCH THAT AN ERROR DICTIONARY MAY
|
||||
BE MADE AT SOME FUTURE DATE.
|
||||
|
||||
WHEN THE SCOPE LOOP MODE IS USED THE MI REGISTER WILL COUNT
|
||||
FOR EACH OCCURANCE OF AN ERROR. IF AN AUDIO INDICATION OF
|
||||
A CONTINUING ERROR IS DESIRED THE 'DING' SWITCH MAY BE SET.
|
||||
|
||||
6.0 ITERATION COUNTER
|
||||
|
||||
THE ITERATION COUNT OF THE PROGRAM IS DISPLAYED IN THE MEMORY
|
||||
INDICATORS (MI). THIS COUNT IS A DECREMENTING COUNT AND
|
||||
INITIALLY STARTS AT -1 IN STAND-ALONE OPERATION.
|
||||
|
||||
7.0 CYCLE TIME
|
||||
|
||||
THE CYCLE TIME OF THE PROGRAM IS IN THE MILLISECOND RANGE AND
|
||||
IS THEREFORE SUITABLE FOR TAKING MARGINS, VIBRATION TESTS,
|
||||
ETC.
|
||||
|
||||
MAINDEC-10-DAKAJ.TXT
|
||||
PAGE 8
|
||||
|
||||
8.0 OPERATIONAL VARIATIONS
|
||||
|
||||
A. DIAGNOSTIC MONITOR
|
||||
|
||||
THE PROGRAM IS USABLE WITH THE DIAGNOSTIC MONITOR TO PROVIDE
|
||||
RELIABILITY TESTS, ACCEPTANCE TESTS, AND/OR TO PROVIDE A
|
||||
QUICK METHOD OF ISOLATION OF A FAULT TO A PARTICULAR AREA
|
||||
OF THE PROCESSOR. CERTAIN PROCEDURES ARE USED WHEN THE
|
||||
PROGRAM IS USED IN THIS MANNER. THEY ARE:
|
||||
|
||||
1. THE DIAGNOSTIC MONITOR TRANSFERS CONTROL TO THE PROGRAM
|
||||
AND STARTS IT AT LOCATION 30002.
|
||||
|
||||
2. MONCTL - LOCATION 30043 IS USED AS THE DIAGNOSTIC MONITOR
|
||||
CONTROL WORD.
|
||||
LH = 0, STAND-ALONE OPERATION
|
||||
-1, RUNNING UNDER DIAGNOSTIC MONITOR
|
||||
|
||||
RH = RIGHT HALF OF CONSOLE SWITCHES IF UNDER
|
||||
DIAGNOSTIC MONITOR CONTROL.
|
||||
|
||||
B. USER MODE
|
||||
|
||||
TO OUTPUT THE PRINTED ERROR MESSAGES TO A USER SPECIFIED
|
||||
DEVICE IN USER MODE, ASSIGN THE DESIRED OUTPUT DEVICE TO
|
||||
DEVICE NAME 'DEV' AND SET SWITCH 'PNTLPT'. THE PHYSICAL
|
||||
DEVICE USED CAN BE ANY DEVICE THAT CAN ACCEPT ASCII OUTPUT
|
||||
FORMAT SUCH AS LPT, DSK, DTA, ETC. THE CORRESPONDING
|
||||
OUTPUT FILE IS 'DAKAJ.TMP'
|
||||
|
||||
EXAMPLE DEVICE ASSIGNMENT:
|
||||
|
||||
.ASSIGN DSK DEV
|
||||
|
||||
IN USER MODE THE PROGRAM WILL MAKE 1000(8) PASSES AND THEN
|
||||
RETURN TO DIAMON COMMAND MODE.
|
||||
|
||||
MAINDEC-10-DAKAJ.TXT
|
||||
PAGE 9
|
||||
|
||||
8.0 OPERATIONAL VARIATIONS (CON'T)
|
||||
|
||||
THE OUTPUT FILE (IF USED) MAY THEN BE LISTED BY USING THE
|
||||
NORMAL MONITOR COMMANDS (PRINT, LIST, TYPE, PIP, ETC.).
|
||||
|
||||
IF THE PROGRAM IS ABORTED BEFORE COMPLETION (BY ^C, ETC.) THE
|
||||
OUTPUT FILE MAY BE CLOSED BY USING THE MONITOR 'REENTER'
|
||||
COMMAND.
|
||||
|
||||
C. SYSTEM EXERCISER
|
||||
|
||||
START ADDRESS IS 30003. DATA SWITCHES ARE PRESTORED IN
|
||||
'SWTEXR' LOC 30023.
|
||||
|
||||
9.0 MISCELLANEOUS
|
||||
|
||||
THE NON-EX-MEMORY AND PARITY STOP SWITCHES SHOULD BE RESET
|
||||
(0). THESE ERRORS, ILLEGAL UUO'S AND OTHER ERRORS OF THIS
|
||||
TYPE ARE HANDLED BY PRINTOUT ON THE TELETYPE.
|
||||
|
||||
10.0 LISTING
|
||||
```
|
||||
|
||||
DAKAJ.HST
|
||||
---------
|
||||
|
||||
THIS IS A HISTORY OF THE DEVELOPMENT OF MAINDEC-10-DAKAJ
|
||||
|
||||
************************************************************************
|
||||
|
||||
PRODUCT CODE: MAINDEC-10-DAKAJ
|
||||
|
||||
PRODUCT NAME: BASIC INSTRUCTION DIAGNOSTIC #10
|
||||
|
||||
DATE RELEASED: JANUARY 1977
|
||||
|
||||
VERSION: 0.2
|
||||
|
||||
UPDATE AUTHOR: JOHN R. KIRCHOFF
|
||||
|
||||
CHANGES MADE:
|
||||
|
||||
1. UPGRADE TO ALLOW COMPATABILITY WITH THE SUBROUTINE PACKAGE.
|
||||
|
||||
************************************************************************
|
||||
|
||||
VERSION: 1.1
|
||||
|
||||
DATE RELEASED: 09-APR-73
|
||||
|
||||
UPDATE AUTHOR: RICHARD MALISKA
|
||||
|
||||
REASON FOR UPDATE: FIX PROBLEM WITH PROGRAM INITIALIZATION
|
||||
|
||||
************************************************************************
|
||||
|
||||
ORIGINAL VERSION: 0.1
|
||||
|
||||
ORIGINAL AUTHOR: RICHARD MALISKA
|
||||
|
||||
ORIGINAL RELEASE: 16-MAR-72
|
||||
|
||||
************************************************************************
|
||||
|
||||
DAKAJ.MAC
|
||||
---------
|
||||
|
||||
[[Download](DAKAJ.MAC.txt)]
|
||||
|
||||
{% highlight text %}
|
||||
{% include_relative DAKAJ.MAC.txt %}
|
||||
{% endhighlight %}
|
||||
18764
apps/pdp10/diags/ka10/dakak/DAKAK.LST.txt
Normal file
18764
apps/pdp10/diags/ka10/dakak/DAKAK.LST.txt
Normal file
File diff suppressed because it is too large
Load diff
445
apps/pdp10/diags/ka10/dakak/DAKAK.MAC.txt
Normal file
445
apps/pdp10/diags/ka10/dakak/DAKAK.MAC.txt
Normal file
|
|
@ -0,0 +1,445 @@
|
|||
;DAKAK
|
||||
|
||||
MCNVER==0
|
||||
DECVER==2
|
||||
|
||||
|
||||
XLIST
|
||||
DEFINE NAME (MCNVER,DECVER)<
|
||||
|
||||
TITLE DAKAK PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (11) MCNVER,DECVER
|
||||
>
|
||||
LIST
|
||||
LALL
|
||||
|
||||
NAME \MCNVER,\DECVER
|
||||
|
||||
;(MULTIPY, INTERGER MULTIPLY, DIVIDE, INTERGER DIVIDE)
|
||||
|
||||
;COPYRIGHT 1975,1977
|
||||
;DIGITAL EQUIPMENT CORPORATION
|
||||
;MARLBORO, MASS. 01752
|
||||
|
||||
;JOHN R. KIRCHOFF
|
||||
|
||||
LOC 137
|
||||
MCNVER,,DECVER
|
||||
|
||||
NOSYM
|
||||
SUBTTL DIAGNOSTIC PARAMETERS
|
||||
|
||||
;OPERATOR DEFINITIONS
|
||||
|
||||
OPDEF ER1 [1B8]
|
||||
OPDEF ER2 [2B8]
|
||||
OPDEF ER3 [3B8]
|
||||
OPDEF ER4 [4B8]
|
||||
OPDEF ER5 [5B8]
|
||||
OPDEF ER6 [6B8]
|
||||
OPDEF ER7 [7B8]
|
||||
OPDEF ER10 [10B8]
|
||||
OPDEF ER11 [11B8]
|
||||
OPDEF ER12 [12B8]
|
||||
OPDEF ER13 [13B8]
|
||||
|
||||
;LUUO1=ERRMES
|
||||
;LUUO2=ERRMES
|
||||
;LUUO3=ERRMES
|
||||
;LUUO4=ERRMES
|
||||
;LUUO5=ERRMES
|
||||
;LUUO6=ERRMES
|
||||
;LUUO7=ERRMES
|
||||
;LUUO10=ERRMES
|
||||
;LUUO11=ERRMES
|
||||
;LUUO12=ERRMES
|
||||
;LUUO13=ERRMES
|
||||
;SUBROUTINE ASSEMBLY DEFINITIONS
|
||||
|
||||
DEBUG=40
|
||||
EXCASB=1
|
||||
USRASB=1
|
||||
KI10=1
|
||||
KA10=1
|
||||
KLOLD==1
|
||||
PGMEND=1
|
||||
ERDIAG=1
|
||||
|
||||
;SPECIAL FEATURE DEFINITIONS
|
||||
|
||||
;SADR1=BEGIN
|
||||
;SADR2=BEGIN
|
||||
;SADR3=BEGIN
|
||||
;SADR4=BEGIN
|
||||
;SADR5=JRST BEGIN
|
||||
;SADR6=JRST BEGIN
|
||||
;SADR7=JRST BEGIN
|
||||
;SADR8=JRST BEGIN
|
||||
;SADR9=JRST BEGIN
|
||||
;SADR10=JRST BEGIN
|
||||
;SADR11=JRST BEGIN
|
||||
|
||||
;SPECIAL FEATURE PARAMETERS
|
||||
|
||||
PAREA0=0
|
||||
PAREA1=0
|
||||
PAREA2=0
|
||||
PAREA3=SIXBIT/DAKAK/
|
||||
PAREA4=SIXBIT/TMP/
|
||||
PAREA5=0
|
||||
PAREA6=0
|
||||
ITERAT==1000
|
||||
|
||||
;MACROS
|
||||
|
||||
DEFINE SAVEAC (A,B)<
|
||||
MOVEI AC+2,. ;SAVE TEST PC
|
||||
MOVEM AC+2,TESTPC
|
||||
MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
||||
MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION>
|
||||
DEFINE MOP1 (T,A1,A2,EE,R1,R2)<
|
||||
;THIS MACRO INITIALIZES AC,AC+1 AND E WITH [A1],[A2] AND
|
||||
;[EE] RESPECTIVELY, PERFORMS 'MUL AC,E' AND COMPARES AC,AC+1
|
||||
;AND E AGAINST [R1], [R2] AND [EE] RESPECTIVELY.
|
||||
;IF ANY OF THE ABOVE COMPARISONS FAIL, AN ERROR IS REPORTED
|
||||
|
||||
F'T'0: AA1=A1 ;INITIAL C(AC)
|
||||
MOVE AC,[A1] ;PRELOAD AC (MULTIPLIER)
|
||||
AA2=A2 ;INITIAL C(AC+1)
|
||||
MOVE AC+1,[A2] ;PRELOAD AC+1
|
||||
AEE=EE ;INITIAL C(E)
|
||||
MOVE E,[EE] ;PRELOAD E (MULTIPLICAND)
|
||||
MUL AC,E ;*MULTIPLY C(E) BY C(AC)
|
||||
AR1=R1 ;EXPECTED RESULT IN AC
|
||||
CAME AC,[R1] ;IS HIGH PRODUCT CORRECT?
|
||||
ER3 AC,T'1 ;HIGH PRODUCT FAILED
|
||||
AR2=R2 ;EXPECTED RESULT IN AC+1
|
||||
CAME AC+1,[R2] ;IS LOW PRODUCT CORRECT?
|
||||
ER4 AC+1,T'2 ;LOW PRODUCT FAILED
|
||||
AEE=EE ;INITIAL C(E)
|
||||
CAME E,[EE] ;WAS C(E) CLOBBERED?
|
||||
ER5 E,T'3 ;C(E) WAS CLOBBERED
|
||||
JUMPL AC+2,F'T'0 ;LOOP ON ERROR SWITCH>
|
||||
|
||||
SUBTTL DIAGNOSTIC SECTION
|
||||
|
||||
EXIT: ;DROPDV ;CLOSE LOGICAL OUTPUT FILE
|
||||
;EXIT
|
||||
|
||||
PGMNAM: ASCIZ/
|
||||
PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (11) [DAKAK]
|
||||
/
|
||||
|
||||
;INITIALIZE
|
||||
|
||||
TESTPC: 0 ;SUBTEST PC
|
||||
|
||||
LOC 30621
|
||||
|
||||
START: ;PGMINT
|
||||
;MOVE [ASCIZ/AK/]
|
||||
;MOVEM TLET ;INITIALIZE TEST LETTER
|
||||
|
||||
STARTA: JRST F00 ;GO PERFORM DIAGNOSTIC
|
||||
SUBTTL DIAGNOSTIC SECTION - MPY TEST - ZERO PRODUCT
|
||||
|
||||
ADR=3000
|
||||
AC=14
|
||||
E=<AC-2>&17
|
||||
|
||||
F00: SAVEAC (1,1)
|
||||
|
||||
;MULTIPLY 0 BY 0 TO GET PRODUCT OF 0
|
||||
MOP1 (\ADR,0,-1,0,0,0)
|
||||
|
||||
AC=13
|
||||
E=<AC-2>&17
|
||||
SAVEAC (1,1)
|
||||
XX=0
|
||||
|
||||
REPEAT ^D36, <
|
||||
ADR=ADR+1
|
||||
XX=XX+XX
|
||||
IFE XX,<XX=1>
|
||||
|
||||
;MULTIPLY RIPPLED 1 BY 0 TO GET PRODUCT OF 0
|
||||
MOP1 (\ADR,0,-1,XX,0,0)>
|
||||
AC=12
|
||||
E=<AC-2>&17
|
||||
SAVEAC (1,1)
|
||||
XX=0
|
||||
|
||||
REPEAT ^D36, <
|
||||
ADR=ADR+1
|
||||
XX=XX+XX+1
|
||||
IFE <XX-1>,<XX=-2>
|
||||
|
||||
;MULTIPLY RIPPLED 0 BY 0 TO GET PRODUCT OF 0
|
||||
MOP1 (\ADR,0,-1,XX,0,0)>
|
||||
ADR=ADR+1
|
||||
AC=14
|
||||
E=<AC-2>&17
|
||||
SAVEAC (1,1)
|
||||
|
||||
;MULTIPLY -1 BY 0 TO GET PRODUCT OF 0
|
||||
MOP1 (\ADR,0,-1,-1,0,0)
|
||||
SUBTTL DIAGNOSTIC SECTION - MULTIPLICATION ALGORITHM
|
||||
|
||||
AC=13
|
||||
E=<AC-2>&17
|
||||
SAVEAC (1,1)
|
||||
|
||||
XX=-1
|
||||
|
||||
;MULTIPLICAND=1
|
||||
REPEAT ^D16,<
|
||||
;TEST MULTIPLICATION ALGORITHM
|
||||
;VERIFY THAT (-MPY SHIFT) WORKS AS SPECIFIED IN THE
|
||||
;KI10 MULTIPLICATION ALGORITHM. I.E., THE TWO LEAST
|
||||
;SIGNIFICANT BITS OF THE MULTIPLIER (C(AC)) ARE
|
||||
;EXAMINED AND THEN THE MULTIPLICAND (C(E)) IS MULTIPLIED BY THEM.
|
||||
;THIS PROCESS IS REPEATED 18 TIMES IN ORDER
|
||||
;TO MULTIPLY ALL 36 BITS OF THE AC. THIS TEST IS
|
||||
;EXECUTED 16 TIMES WITH C(AC)=0,1,3,4,..., 17 AND
|
||||
;C(E)=1. IT IS EXECUTED ANOTHER 16 TIMES AS ABOVE
|
||||
;EXCEPT C(E)=-1 TO VERIFY THAT THE ALGORITHM IS INDEPENDENT
|
||||
;OF C(E).
|
||||
|
||||
ADR=ADR+1
|
||||
XX=XX+1
|
||||
|
||||
MOP1 (\ADR,XX,-1,1,0,XX)>
|
||||
AC=12
|
||||
E=<AC-2>&17
|
||||
SAVEAC (1,1)
|
||||
|
||||
XX=-1
|
||||
|
||||
;MULTIPLICAND=-1
|
||||
REPEAT ^D16,<
|
||||
;TEST MULTIPLICATION ALGORITHM
|
||||
;VERIFY THAT (-MPY SHIFT) WORKS AS SPECIFIED IN THE
|
||||
;KI10 MULTIPLICATION ALGORITHM, I.E., THE TWO LEAST
|
||||
;SIGNIFICANT BITS OF THE MULTIPLIER (C(AC)) ARE
|
||||
;EXAMINED AND THEN THE MULTIPLICAND (C(E)) IS MULTIPLIED BY THEM.
|
||||
;THIS PROCESS IS REPEATED 18 TIMES IN ORDER
|
||||
;TO MULTIPLY ALL 36 BITS OF THE AC. THIS TEST IS
|
||||
;EXECUTED 16 TIMES WITH C(AC)=0, 1,2,3,4, . . ., 17 AND
|
||||
;C(E)=1. IT IS EXECUTED ANOTHER 16 TIMES AS ABOVE
|
||||
;EXCEPT C(E)=-1 TO VERIFY THAT THE ALGORITHM IS INDEPENDENT
|
||||
;OF C(E).
|
||||
|
||||
ADR=ADR+1
|
||||
XX=XX+1
|
||||
MX=-XX
|
||||
IFE XX,<
|
||||
V1=-1
|
||||
V2=0>
|
||||
IFN XX,<
|
||||
V1=0
|
||||
V2=-1>
|
||||
MOP1 (\ADR,XX,V1,-1,V2,MX)>
|
||||
SUBTTL DIAGNOSTIC SECTION - MPY TEST - ZERO PRODUCT
|
||||
|
||||
AC=11
|
||||
E=<AC-2>&17
|
||||
SAVEAC (1,1)
|
||||
XX=0
|
||||
|
||||
REPEAT ^D36, <
|
||||
ADR=ADR+1
|
||||
XX=XX+XX
|
||||
IFE XX,<XX=1>
|
||||
|
||||
;MULTIPLY 0 BY RIPPLED 1 TO GET PRODUCT OF ZERO
|
||||
MOP1 (\ADR,XX,-1,0,0,0)>
|
||||
AC=10
|
||||
E=<AC-2>&17
|
||||
SAVEAC (1,1)
|
||||
XX=0
|
||||
|
||||
REPEAT ^D36,<
|
||||
ADR=ADR+1
|
||||
XX=XX+XX+1
|
||||
IFE <XX-1>,<XX=-2>
|
||||
|
||||
;MULTIPLY 0 BY RIPPLED 0 TO GET PRODUCT OF 0
|
||||
MOP1 (\ADR,XX,-1,0,0,0)>
|
||||
AC=7
|
||||
E=<AC-2>&17
|
||||
SAVEAC (1,1)
|
||||
ADR=ADR+1
|
||||
|
||||
;MULTIPLY 0 BY -1 TO GET PRODUCT OF 0
|
||||
MOP1 (\ADR,-1,-1,0,0,0)
|
||||
SUBTTL DIAGNOSTIC SECTION - MPY TEST - NON-ZERO PRODUCT
|
||||
|
||||
AC=6
|
||||
E=<AC-2>&17
|
||||
SAVEAC (1,1)
|
||||
|
||||
XX=0
|
||||
|
||||
REPEAT ^D36, <
|
||||
ADR=ADR+1
|
||||
XX=XX+XX
|
||||
IFE XX,<XX=1>
|
||||
|
||||
;MULTIPLY A RIPPLED 1 BY 1 TO GET A PRODUCT OF RIPPLED 1
|
||||
IFG XX,<V1=0>
|
||||
IFL XX,<V1=-1>
|
||||
MOP1 (\ADR,1,-1,XX,V1,XX)>
|
||||
AC=5
|
||||
E=<AC-2>&17
|
||||
SAVEAC (1,1)
|
||||
XX=0
|
||||
|
||||
REPEAT ^D35,< ;LAST CASE IS DIFFERENT
|
||||
ADR=ADR+1
|
||||
XX=XX+XX
|
||||
IFE XX,<XX=1>
|
||||
|
||||
;MULTIPLY A 1 BY A RIPPLED 1 TO GET PRODUCT OF RIPPLED 1
|
||||
IFG XX,<V1=0>
|
||||
IFL XX,<V1=-1>
|
||||
MOP1 (\ADR,XX,-1,1,V1,XX)>
|
||||
;MULTIPLY A 1 BY 400000,,0
|
||||
XX=400000000000
|
||||
ADR=ADR+1
|
||||
|
||||
MOP1 (\ADR,XX,-1,1,1,0)
|
||||
AC=4
|
||||
E=<AC-2>&17
|
||||
SAVEAC (1,1)
|
||||
XX=0
|
||||
|
||||
REPEAT ^D36,<
|
||||
ADR=ADR+1
|
||||
XX=XX+XX
|
||||
IFE XX,<XX=1>
|
||||
|
||||
;MULTIPLY A RIPPLED ONE BY -1
|
||||
IFG XX,<
|
||||
V1=-1
|
||||
V2=-XX>
|
||||
IFL XX,<
|
||||
V1=1
|
||||
V2=0>
|
||||
MOP1 (\ADR,-1,0,XX,V1,V2)>
|
||||
AC=3
|
||||
E=<AC-2>&17
|
||||
SAVEAC (1,1)
|
||||
XX=0
|
||||
|
||||
REPEAT ^D35,< ;LAST CASE IS DIFFERENT
|
||||
ADR=ADR+1
|
||||
XX=XX+XX
|
||||
IFE XX,<XX=1>
|
||||
|
||||
;MULTIPLY -1 BY A RIPPLED 1
|
||||
IFG XX,<
|
||||
V1=-1
|
||||
V2=-XX>
|
||||
IFL XX,<
|
||||
V1=1
|
||||
V2=0>
|
||||
MOP1 (\ADR,XX,0,-1,V1,V2)>
|
||||
;MULTIPLY A -1 BY 400000,,0
|
||||
ADR=ADR+1
|
||||
XX=400000000000
|
||||
|
||||
MOP1 (\ADR,XX,0,-1,-1,XX)
|
||||
AC=2
|
||||
E=<AC-2>&17
|
||||
SAVEAC (1,1)
|
||||
XX=0
|
||||
|
||||
REPEAT ^D36,<
|
||||
ADR=ADR+1
|
||||
XX=XX+XX+1
|
||||
IFE <XX-1>,<XX=-2>
|
||||
|
||||
;MULTIPLY RIPPLED 0 BY 1 TO GET PRODUCT OF RIPPLED 0
|
||||
IFL XX,<V1=-1>
|
||||
IFG XX,<V1=0>
|
||||
MOP1 (\ADR,1,0,XX,V1,XX)>
|
||||
AC=10
|
||||
E=<AC-2>&17
|
||||
SAVEAC (1,1)
|
||||
XX=0
|
||||
|
||||
REPEAT ^D36,<
|
||||
ADR=ADR+1
|
||||
XX=XX+XX+1
|
||||
IFE <XX-1>,<XX=-2>
|
||||
|
||||
;MULTIPLY 1 BY RIPPLED 0 TO GET PRODUCT OF RIPPLED 0
|
||||
IFL XX,<V1=-1>
|
||||
IFG XX,<V1=0>
|
||||
MOP1 (\ADR,XX,0,1,V1,XX)>
|
||||
AC=10
|
||||
E=<AC-2>&17
|
||||
SAVEAC (1,1)
|
||||
XX=0
|
||||
|
||||
REPEAT ^D36, <
|
||||
ADR=ADR+1
|
||||
XX=XX+XX+1
|
||||
IFE <XX-1>,<XX=-2>
|
||||
|
||||
;MULTIPLY A RIPPLED 0 BY -1
|
||||
MX=-XX
|
||||
IFL XX,<V1=0>
|
||||
IFG XX,<V1=-1>
|
||||
MOP1 (\ADR,-1,-1,XX,V1,MX)>
|
||||
AC=14
|
||||
E=<AC-2>&17
|
||||
SAVEAC (1,1)
|
||||
XX=0
|
||||
|
||||
REPEAT ^D36, <
|
||||
ADR=ADR+1
|
||||
XX=XX+XX+1
|
||||
IFE <XX-1>,<XX=-2>
|
||||
|
||||
;MULTIPLY -1 BY A RIPPLED 0
|
||||
MX=-XX
|
||||
IFL XX,<V1=0>
|
||||
IFG XX,<V1=-1>
|
||||
MOP1 (\ADR,XX,-1,-1,V1,MX)>
|
||||
N1=525252525252
|
||||
N2=252525252525
|
||||
AC=13
|
||||
E=<AC-2>&17
|
||||
SAVEAC (1,1)
|
||||
WW=^D36
|
||||
XX=0
|
||||
ZZ=0
|
||||
|
||||
REPEAT ^D35, < ;LAST CASE DIFFERENT
|
||||
|
||||
ADR=ADR+1
|
||||
WW=WW-1
|
||||
XX=XX+XX
|
||||
ZZ=ZZ+1
|
||||
IFE XX,<ZZ=0>
|
||||
IFE XX,<XX=1>
|
||||
|
||||
;MULTIPLY 1010...1010 BY A FLOATING 1
|
||||
V1=N1
|
||||
V2=<N1_ZZ>!1B0
|
||||
IFE WW,<V2=0>
|
||||
IFL XX,<V3=N2+1>
|
||||
IFG XX,<V3=<<-1B<WW>>!<N1_<-WW>>>>
|
||||
MOP1 (\ADR,XX,0,V1,V3,V2)>
|
||||
|
||||
;MULTIPLY A 1010...1010 BY 400000,,0
|
||||
ADR=ADR+1
|
||||
XX=400000000000
|
||||
V1=525252525252
|
||||
V3=525252525252
|
||||
V2=400000000000
|
||||
|
||||
MOP1 (\ADR,XX,0,V1,V3,V2)
|
||||
LAST1: ;JRST BEGEND
|
||||
|
||||
END START
|
||||
318
apps/pdp10/diags/ka10/dakak/DAKAKM.MAC.txt
Normal file
318
apps/pdp10/diags/ka10/dakak/DAKAKM.MAC.txt
Normal file
|
|
@ -0,0 +1,318 @@
|
|||
SUBTTL DIAGNOSTIC SECTION
|
||||
|
||||
EXIT: DROPDV ;CLOSE LOGICAL OUTPUT FILE
|
||||
EXIT
|
||||
|
||||
PGMNAM: ASCIZ/
|
||||
PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (11) [DAKAK]
|
||||
/
|
||||
|
||||
;INITIALIZE
|
||||
|
||||
START: PGMINT
|
||||
MOVE [ASCIZ/AK/]
|
||||
MOVEM TLET ;INITIALIZE TEST LETTER
|
||||
|
||||
STARTA: JRST F00 ;GO PERFORM DIAGNOSTIC
|
||||
SUBTTL DIAGNOSTIC SECTION - MPY TEST - ZERO PRODUCT
|
||||
|
||||
ADR=3000
|
||||
AC=14
|
||||
E=<AC-2>&17
|
||||
|
||||
F00: SAVEAC (1,1)
|
||||
|
||||
;MULTIPLY 0 BY 0 TO GET PRODUCT OF 0
|
||||
MOP1 (\ADR,0,-1,0,0,0)
|
||||
|
||||
AC=13
|
||||
E=<AC-2>&17
|
||||
SAVEAC (1,1)
|
||||
XX=0
|
||||
|
||||
REPEAT ^D36, <
|
||||
ADR=ADR+1
|
||||
XX=XX+XX
|
||||
IFE XX,<XX=1>
|
||||
|
||||
;MULTIPLY RIPPLED 1 BY 0 TO GET PRODUCT OF 0
|
||||
MOP1 (\ADR,0,-1,XX,0,0)>
|
||||
AC=12
|
||||
E=<AC-2>&17
|
||||
SAVEAC (1,1)
|
||||
XX=0
|
||||
|
||||
REPEAT ^D36, <
|
||||
ADR=ADR+1
|
||||
XX=XX+XX+1
|
||||
IFE <XX-1>,<XX=-2>
|
||||
|
||||
;MULTIPLY RIPPLED 0 BY 0 TO GET PRODUCT OF 0
|
||||
MOP1 (\ADR,0,-1,XX,0,0)>
|
||||
ADR=ADR+1
|
||||
AC=14
|
||||
E=<AC-2>&17
|
||||
SAVEAC (1,1)
|
||||
|
||||
;MULTIPLY -1 BY 0 TO GET PRODUCT OF 0
|
||||
MOP1 (\ADR,0,-1,-1,0,0)
|
||||
SUBTTL DIAGNOSTIC SECTION - MULTIPLICATION ALGORITHM
|
||||
|
||||
AC=13
|
||||
E=<AC-2>&17
|
||||
SAVEAC (1,1)
|
||||
|
||||
XX=-1
|
||||
|
||||
;MULTIPLICAND=1
|
||||
REPEAT ^D16,<
|
||||
;TEST MULTIPLICATION ALGORITHM
|
||||
;VERIFY THAT (-MPY SHIFT) WORKS AS SPECIFIED IN THE
|
||||
;KI10 MULTIPLICATION ALGORITHM. I.E., THE TWO LEAST
|
||||
;SIGNIFICANT BITS OF THE MULTIPLIER (C(AC)) ARE
|
||||
;EXAMINED AND THEN THE MULTIPLICAND (C(E)) IS MULTIPLIED BY THEM.
|
||||
;THIS PROCESS IS REPEATED 18 TIMES IN ORDER
|
||||
;TO MULTIPLY ALL 36 BITS OF THE AC. THIS TEST IS
|
||||
;EXECUTED 16 TIMES WITH C(AC)=0,1,3,4,..., 17 AND
|
||||
;C(E)=1. IT IS EXECUTED ANOTHER 16 TIMES AS ABOVE
|
||||
;EXCEPT C(E)=-1 TO VERIFY THAT THE ALGORITHM IS INDEPENDENT
|
||||
;OF C(E).
|
||||
|
||||
ADR=ADR+1
|
||||
XX=XX+1
|
||||
|
||||
MOP1 (\ADR,XX,-1,1,0,XX)>
|
||||
AC=12
|
||||
E=<AC-2>&17
|
||||
SAVEAC (1,1)
|
||||
|
||||
XX=-1
|
||||
|
||||
;MULTIPLICAND=-1
|
||||
REPEAT ^D16,<
|
||||
;TEST MULTIPLICATION ALGORITHM
|
||||
;VERIFY THAT (-MPY SHIFT) WORKS AS SPECIFIED IN THE
|
||||
;KI10 MULTIPLICATION ALGORITHM, I.E., THE TWO LEAST
|
||||
;SIGNIFICANT BITS OF THE MULTIPLIER (C(AC)) ARE
|
||||
;EXAMINED AND THEN THE MULTIPLICAND (C(E)) IS MULTIPLIED BY THEM.
|
||||
;THIS PROCESS IS REPEATED 18 TIMES IN ORDER
|
||||
;TO MULTIPLY ALL 36 BITS OF THE AC. THIS TEST IS
|
||||
;EXECUTED 16 TIMES WITH C(AC)=0, 1,2,3,4, . . ., 17 AND
|
||||
;C(E)=1. IT IS EXECUTED ANOTHER 16 TIMES AS ABOVE
|
||||
;EXCEPT C(E)=-1 TO VERIFY THAT THE ALGORITHM IS INDEPENDENT
|
||||
;OF C(E).
|
||||
|
||||
ADR=ADR+1
|
||||
XX=XX+1
|
||||
MX=-XX
|
||||
IFE XX,<
|
||||
V1=-1
|
||||
V2=0>
|
||||
IFN XX,<
|
||||
V1=0
|
||||
V2=-1>
|
||||
MOP1 (\ADR,XX,V1,-1,V2,MX)>
|
||||
SUBTTL DIAGNOSTIC SECTION - MPY TEST - ZERO PRODUCT
|
||||
|
||||
AC=11
|
||||
E=<AC-2>&17
|
||||
SAVEAC (1,1)
|
||||
XX=0
|
||||
|
||||
REPEAT ^D36, <
|
||||
ADR=ADR+1
|
||||
XX=XX+XX
|
||||
IFE XX,<XX=1>
|
||||
|
||||
;MULTIPLY 0 BY RIPPLED 1 TO GET PRODUCT OF ZERO
|
||||
MOP1 (\ADR,XX,-1,0,0,0)>
|
||||
AC=10
|
||||
E=<AC-2>&17
|
||||
SAVEAC (1,1)
|
||||
XX=0
|
||||
|
||||
REPEAT ^D36,<
|
||||
ADR=ADR+1
|
||||
XX=XX+XX+1
|
||||
IFE <XX-1>,<XX=-2>
|
||||
|
||||
;MULTIPLY 0 BY RIPPLED 0 TO GET PRODUCT OF 0
|
||||
MOP1 (\ADR,XX,-1,0,0,0)>
|
||||
AC=7
|
||||
E=<AC-2>&17
|
||||
SAVEAC (1,1)
|
||||
ADR=ADR+1
|
||||
|
||||
;MULTIPLY 0 BY -1 TO GET PRODUCT OF 0
|
||||
MOP1 (\ADR,-1,-1,0,0,0)
|
||||
SUBTTL DIAGNOSTIC SECTION - MPY TEST - NON-ZERO PRODUCT
|
||||
|
||||
AC=6
|
||||
E=<AC-2>&17
|
||||
SAVEAC (1,1)
|
||||
|
||||
XX=0
|
||||
|
||||
REPEAT ^D36, <
|
||||
ADR=ADR+1
|
||||
XX=XX+XX
|
||||
IFE XX,<XX=1>
|
||||
|
||||
;MULTIPLY A RIPPLED 1 BY 1 TO GET A PRODUCT OF RIPPLED 1
|
||||
IFG XX,<V1=0>
|
||||
IFL XX,<V1=-1>
|
||||
MOP1 (\ADR,1,-1,XX,V1,XX)>
|
||||
AC=5
|
||||
E=<AC-2>&17
|
||||
SAVEAC (1,1)
|
||||
XX=0
|
||||
|
||||
REPEAT ^D35,< ;LAST CASE IS DIFFERENT
|
||||
ADR=ADR+1
|
||||
XX=XX+XX
|
||||
IFE XX,<XX=1>
|
||||
|
||||
;MULTIPLY A 1 BY A RIPPLED 1 TO GET PRODUCT OF RIPPLED 1
|
||||
IFG XX,<V1=0>
|
||||
IFL XX,<V1=-1>
|
||||
MOP1 (\ADR,XX,-1,1,V1,XX)>
|
||||
;MULTIPLY A 1 BY 400000,,0
|
||||
XX=400000000000
|
||||
ADR=ADR+1
|
||||
|
||||
MOP1 (\ADR,XX,-1,1,1,0)
|
||||
AC=4
|
||||
E=<AC-2>&17
|
||||
SAVEAC (1,1)
|
||||
XX=0
|
||||
|
||||
REPEAT ^D36,<
|
||||
ADR=ADR+1
|
||||
XX=XX+XX
|
||||
IFE XX,<XX=1>
|
||||
|
||||
;MULTIPLY A RIPPLED ONE BY -1
|
||||
IFG XX,<
|
||||
V1=-1
|
||||
V2=-XX>
|
||||
IFL XX,<
|
||||
V1=1
|
||||
V2=0>
|
||||
MOP1 (\ADR,-1,0,XX,V1,V2)>
|
||||
AC=3
|
||||
E=<AC-2>&17
|
||||
SAVEAC (1,1)
|
||||
XX=0
|
||||
|
||||
REPEAT ^D35,< ;LAST CASE IS DIFFERENT
|
||||
ADR=ADR+1
|
||||
XX=XX+XX
|
||||
IFE XX,<XX=1>
|
||||
|
||||
;MULTIPLY -1 BY A RIPPLED 1
|
||||
IFG XX,<
|
||||
V1=-1
|
||||
V2=-XX>
|
||||
IFL XX,<
|
||||
V1=1
|
||||
V2=0>
|
||||
MOP1 (\ADR,XX,0,-1,V1,V2)>
|
||||
;MULTIPLY A -1 BY 400000,,0
|
||||
ADR=ADR+1
|
||||
XX=400000000000
|
||||
|
||||
MOP1 (\ADR,XX,0,-1,-1,XX)
|
||||
AC=2
|
||||
E=<AC-2>&17
|
||||
SAVEAC (1,1)
|
||||
XX=0
|
||||
|
||||
REPEAT ^D36,<
|
||||
ADR=ADR+1
|
||||
XX=XX+XX+1
|
||||
IFE <XX-1>,<XX=-2>
|
||||
|
||||
;MULTIPLY RIPPLED 0 BY 1 TO GET PRODUCT OF RIPPLED 0
|
||||
IFL XX,<V1=-1>
|
||||
IFG XX,<V1=0>
|
||||
MOP1 (\ADR,1,0,XX,V1,XX)>
|
||||
AC=10
|
||||
E=<AC-2>&17
|
||||
SAVEAC (1,1)
|
||||
XX=0
|
||||
|
||||
REPEAT ^D36,<
|
||||
ADR=ADR+1
|
||||
XX=XX+XX+1
|
||||
IFE <XX-1>,<XX=-2>
|
||||
|
||||
;MULTIPLY 1 BY RIPPLED 0 TO GET PRODUCT OF RIPPLED 0
|
||||
IFL XX,<V1=-1>
|
||||
IFG XX,<V1=0>
|
||||
MOP1 (\ADR,XX,0,1,V1,XX)>
|
||||
AC=10
|
||||
E=<AC-2>&17
|
||||
SAVEAC (1,1)
|
||||
XX=0
|
||||
|
||||
REPEAT ^D36, <
|
||||
ADR=ADR+1
|
||||
XX=XX+XX+1
|
||||
IFE <XX-1>,<XX=-2>
|
||||
|
||||
;MULTIPLY A RIPPLED 0 BY -1
|
||||
MX=-XX
|
||||
IFL XX,<V1=0>
|
||||
IFG XX,<V1=-1>
|
||||
MOP1 (\ADR,-1,-1,XX,V1,MX)>
|
||||
AC=14
|
||||
E=<AC-2>&17
|
||||
SAVEAC (1,1)
|
||||
XX=0
|
||||
|
||||
REPEAT ^D36, <
|
||||
ADR=ADR+1
|
||||
XX=XX+XX+1
|
||||
IFE <XX-1>,<XX=-2>
|
||||
|
||||
;MULTIPLY -1 BY A RIPPLED 0
|
||||
MX=-XX
|
||||
IFL XX,<V1=0>
|
||||
IFG XX,<V1=-1>
|
||||
MOP1 (\ADR,XX,-1,-1,V1,MX)>
|
||||
N1=525252525252
|
||||
N2=252525252525
|
||||
AC=13
|
||||
E=<AC-2>&17
|
||||
SAVEAC (1,1)
|
||||
WW=^D36
|
||||
XX=0
|
||||
ZZ=0
|
||||
|
||||
REPEAT ^D35, < ;LAST CASE DIFFERENT
|
||||
|
||||
ADR=ADR+1
|
||||
WW=WW-1
|
||||
XX=XX+XX
|
||||
ZZ=ZZ+1
|
||||
IFE XX,<ZZ=0>
|
||||
IFE XX,<XX=1>
|
||||
|
||||
;MULTIPLY 1010...1010 BY A FLOATING 1
|
||||
V1=N1
|
||||
V2=<N1_ZZ>!1B0
|
||||
IFE WW,<V2=0>
|
||||
IFL XX,<V3=N2+1>
|
||||
IFG XX,<V3=<<-1B<WW>>!<N1_<-WW>>>>
|
||||
MOP1 (\ADR,XX,0,V1,V3,V2)>
|
||||
|
||||
;MULTIPLY A 1010...1010 BY 400000,,0
|
||||
ADR=ADR+1
|
||||
XX=400000000000
|
||||
V1=525252525252
|
||||
V3=525252525252
|
||||
V2=400000000000
|
||||
|
||||
MOP1 (\ADR,XX,0,V1,V3,V2)
|
||||
LAST1: JRST BEGEND
|
||||
|
||||
122
apps/pdp10/diags/ka10/dakak/DAKAKT.MAC.txt
Normal file
122
apps/pdp10/diags/ka10/dakak/DAKAKT.MAC.txt
Normal file
|
|
@ -0,0 +1,122 @@
|
|||
;DAKAK
|
||||
|
||||
MCNVER==0
|
||||
DECVER==2
|
||||
|
||||
|
||||
XLIST
|
||||
DEFINE NAME (MCNVER,DECVER)<
|
||||
|
||||
TITLE DAKAK PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (11) MCNVER,DECVER
|
||||
>
|
||||
LIST
|
||||
LALL
|
||||
|
||||
NAME \MCNVER,\DECVER
|
||||
|
||||
;(MULTIPY, INTERGER MULTIPLY, DIVIDE, INTERGER DIVIDE)
|
||||
|
||||
;COPYRIGHT 1975,1977
|
||||
;DIGITAL EQUIPMENT CORPORATION
|
||||
;MARLBORO, MASS. 01752
|
||||
|
||||
;JOHN R. KIRCHOFF
|
||||
|
||||
LOC 137
|
||||
MCNVER,,DECVER
|
||||
|
||||
NOSYM
|
||||
SUBTTL DIAGNOSTIC PARAMETERS
|
||||
|
||||
;OPERATOR DEFINITIONS
|
||||
|
||||
OPDEF ER1 [1B8]
|
||||
OPDEF ER2 [2B8]
|
||||
OPDEF ER3 [3B8]
|
||||
OPDEF ER4 [4B8]
|
||||
OPDEF ER5 [5B8]
|
||||
OPDEF ER6 [6B8]
|
||||
OPDEF ER7 [7B8]
|
||||
OPDEF ER10 [10B8]
|
||||
OPDEF ER11 [11B8]
|
||||
OPDEF ER12 [12B8]
|
||||
OPDEF ER13 [13B8]
|
||||
|
||||
LUUO1=ERRMES
|
||||
LUUO2=ERRMES
|
||||
LUUO3=ERRMES
|
||||
LUUO4=ERRMES
|
||||
LUUO5=ERRMES
|
||||
LUUO6=ERRMES
|
||||
LUUO7=ERRMES
|
||||
LUUO10=ERRMES
|
||||
LUUO11=ERRMES
|
||||
LUUO12=ERRMES
|
||||
LUUO13=ERRMES
|
||||
;SUBROUTINE ASSEMBLY DEFINITIONS
|
||||
|
||||
DEBUG=40
|
||||
EXCASB=1
|
||||
USRASB=1
|
||||
KI10=1
|
||||
KA10=1
|
||||
KLOLD==1
|
||||
PGMEND=1
|
||||
ERDIAG=1
|
||||
|
||||
;SPECIAL FEATURE DEFINITIONS
|
||||
|
||||
SADR1=BEGIN
|
||||
SADR2=BEGIN
|
||||
SADR3=BEGIN
|
||||
SADR4=BEGIN
|
||||
SADR5=JRST BEGIN
|
||||
SADR6=JRST BEGIN
|
||||
SADR7=JRST BEGIN
|
||||
SADR8=JRST BEGIN
|
||||
SADR9=JRST BEGIN
|
||||
SADR10=JRST BEGIN
|
||||
SADR11=JRST BEGIN
|
||||
|
||||
;SPECIAL FEATURE PARAMETERS
|
||||
|
||||
PAREA0=0
|
||||
PAREA1=0
|
||||
PAREA2=0
|
||||
PAREA3=SIXBIT/DAKAK/
|
||||
PAREA4=SIXBIT/TMP/
|
||||
PAREA5=0
|
||||
PAREA6=0
|
||||
ITERAT==1000
|
||||
|
||||
;MACROS
|
||||
|
||||
DEFINE SAVEAC (A,B)<
|
||||
MOVEI AC+2,. ;SAVE TEST PC
|
||||
MOVEM AC+2,TESTPC
|
||||
MOVEI AC+2,<AC+2>&17 ;INFORM ERROR ROUTINE WHICH
|
||||
MOVEM AC+2,ERRLOP# ;AC IS USED FOR ITERATION>
|
||||
DEFINE MOP1 (T,A1,A2,EE,R1,R2)<
|
||||
;THIS MACRO INITIALIZES AC,AC+1 AND E WITH [A1],[A2] AND
|
||||
;[EE] RESPECTIVELY, PERFORMS 'MUL AC,E' AND COMPARES AC,AC+1
|
||||
;AND E AGAINST [R1], [R2] AND [EE] RESPECTIVELY.
|
||||
;IF ANY OF THE ABOVE COMPARISONS FAIL, AN ERROR IS REPORTED
|
||||
|
||||
F'T'0: AA1=A1 ;INITIAL C(AC)
|
||||
MOVE AC,[A1] ;PRELOAD AC (MULTIPLIER)
|
||||
AA2=A2 ;INITIAL C(AC+1)
|
||||
MOVE AC+1,[A2] ;PRELOAD AC+1
|
||||
AEE=EE ;INITIAL C(E)
|
||||
MOVE E,[EE] ;PRELOAD E (MULTIPLICAND)
|
||||
MUL AC,E ;*MULTIPLY C(E) BY C(AC)
|
||||
AR1=R1 ;EXPECTED RESULT IN AC
|
||||
CAME AC,[R1] ;IS HIGH PRODUCT CORRECT?
|
||||
ER3 AC,T'1 ;HIGH PRODUCT FAILED
|
||||
AR2=R2 ;EXPECTED RESULT IN AC+1
|
||||
CAME AC+1,[R2] ;IS LOW PRODUCT CORRECT?
|
||||
ER4 AC+1,T'2 ;LOW PRODUCT FAILED
|
||||
AEE=EE ;INITIAL C(E)
|
||||
CAME E,[EE] ;WAS C(E) CLOBBERED?
|
||||
ER5 E,T'3 ;C(E) WAS CLOBBERED
|
||||
JUMPL AC+2,F'T'0 ;LOOP ON ERROR SWITCH>
|
||||
|
||||
445
apps/pdp10/diags/ka10/dakak/README.md
Normal file
445
apps/pdp10/diags/ka10/dakak/README.md
Normal file
|
|
@ -0,0 +1,445 @@
|
|||
---
|
||||
layout: page
|
||||
title: PDP-10 KA10 Basic Instruction Diagnostic #11
|
||||
permalink: /apps/pdp10/diags/ka10/dakak/
|
||||
machines:
|
||||
- id: testka10
|
||||
type: pdp10
|
||||
config: /devices/pdp10/machine/ka10/test/debugger/machine.xml
|
||||
debugger: true
|
||||
commands: a dakak.mac
|
||||
---
|
||||
|
||||
PDP-10 KA10 Basic Instruction Diagnostic #11
|
||||
--------------------------------------------
|
||||
|
||||
The *PDP-10 KA10 Basic Instruction Diagnostic #11* (MAINDEC-10-DAKAK) test code has been extracted from
|
||||
[DAKAKM.MAC](DAKAKM.MAC.txt) [[original](http://pdp-10.trailing-edge.com/klad_sources/01/klad.sources/dakakm.mac.html)] and
|
||||
[DAKAKT.MAC](DAKAKT.MAC.txt) [[original](http://pdp-10.trailing-edge.com/klad_sources/01/klad.sources/dakakt.mac.html)]
|
||||
for use with the [PDP-10 Test Machine with Debugger](/devices/pdp10/machine/ka10/test/debugger/) below.
|
||||
|
||||
This diagnostic "TESTS THE MULTIPLY INSTRUCTION AND THE MULTIPLY ALGORITHM."
|
||||
|
||||
Resources for this diagnostic include:
|
||||
|
||||
- [Instructions](#dakaktxt)
|
||||
- [History](#dakakhst)
|
||||
- [Source Code](#dakakmac)
|
||||
- [MACRO-10 Listing](DAKAK.LST.txt)
|
||||
- [Additional Information](http://archive.pcjs.org/apps/pdp10/diags/ka10/dakak/DAKAK.SEQ.txt)
|
||||
|
||||
{% include machine.html id="testka10" %}
|
||||
|
||||
The Debugger's assemble ("a") command can be used to test the new built-in
|
||||
[MACRO-10 Mini-Assembler](/modules/pdp10/lib/macro10.js), which supports a subset
|
||||
of the [MACRO-10](http://archive.pcjs.org/pubs/dec/pdp10/tops10/02_1973AsmRef_macro.pdf) assembly language.
|
||||
This command:
|
||||
|
||||
a DAKAK.MAC
|
||||
|
||||
will automatically read the [DAKAK.MAC](DAKAK.MAC.txt) source file (a slightly modified copy of [DAKAKM.MAC](DAKAKM.MAC.txt)),
|
||||
assemble it, and then load the binary image at the location specified in the file.
|
||||
|
||||
To assemble the diagnostic using the original DEC source files:
|
||||
|
||||
a 'dakakt.mac;../param.klm;../fixed.klm;dakakm.mac;../uuoerr.klm;../stor.klm'
|
||||
|
||||
The quotes (either single or double) are required to prevent the PDPjs Debugger from interpreting the filenames as
|
||||
separate commands, because a semicolon is the Debugger's normal command separator.
|
||||
|
||||
If you want a machine to automatically assemble and load those files on startup, you can add the following machine configuration
|
||||
setting in the page's Front Matter:
|
||||
|
||||
commands: a 'dakakt.mac;../param.klm;../fixed.klm;dakakm.mac;../uuoerr.klm;../stor.klm'
|
||||
|
||||
However, in this case, you *must* use `'` as the quoting sequence, because of the way these settings are encoded into
|
||||
JavaScript parameters; e.g.:
|
||||
|
||||
embedPDP10(...,'{commands:"a 'dakakt.mac;../param.klm;../fixed.klm;dakakm.mac;../uuoerr.klm;../stor.klm'"}');
|
||||
|
||||
---
|
||||
|
||||
DAKAK.TXT
|
||||
---------
|
||||
|
||||
```
|
||||
MAINDEC-10-DAKAK.TXT
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
IDENTIFICATION
|
||||
--------------
|
||||
|
||||
|
||||
PRODUCT CODE: MAINDEC-10-DAKAK-B-D
|
||||
|
||||
PRODUCT NAME: DECSYSTEM10 PDP-10 KA10 BASIC
|
||||
INSTRUCTION DIAGNOSTIC (11)
|
||||
|
||||
FUNCTION: MULTIPLY TEST
|
||||
|
||||
VERSION: 0.2
|
||||
|
||||
DATE RELEASED: JANUARY 1977
|
||||
|
||||
MAINTAINED BY: DIAGNOSTIC ENGINEERING GROUP
|
||||
|
||||
AUTHOR: JOHN R. KIRCHOFF
|
||||
|
||||
COPYRIGHT(C) 1976,1977
|
||||
DIGITAL EQUIPMENT CORPORATION
|
||||
MARLBORO, MASS. 01752
|
||||
|
||||
THIS SOFTWARE IS FURNISHED UNDER A LICENSE FOR USE ONLY
|
||||
ON A SINGLE COMPUTER SYSTEM AND MAY BE COPIED ONLY WITH
|
||||
THE INCLUSION OF THE ABOVE COPYRIGHT NOTICE. THIS SOFTWARE,
|
||||
OR ANY OTHER COPIES THEREOF, MAY NOT BE PROVIDED OR OTHERWISE
|
||||
MADE AVAILABLE TO ANY OTHER PERSON EXECPT FOR USE ON SUCH SYSTEM
|
||||
AND TO ONE WHO AGREES TO THESE LICENSE TERMS. TITLE TO AND
|
||||
OWNERSHIP OF THE SOFTWARE SHALL AT ALL TIMES REMAIN IN DEC.
|
||||
|
||||
THE INFORMATION IN THIS DOCUMENT IS SUBJECT TO CHANGE WITHOUT
|
||||
NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL
|
||||
EQUIPMENT CORPORATION.
|
||||
|
||||
DEC ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY OF ITS
|
||||
SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DEC.
|
||||
|
||||
MAINDEC-10-DAKAK.TXT
|
||||
PAGE 2
|
||||
|
||||
TABLE OF CONTENTS
|
||||
-----------------
|
||||
|
||||
1.0 ABSTRACT
|
||||
|
||||
2.0 REQUIREMENTS
|
||||
|
||||
2.1 EQUIPMENT
|
||||
|
||||
2.2 STORAGE
|
||||
|
||||
2.3 PRELIMINARY PROGRAMS
|
||||
|
||||
3.0 PROGRAM PROCEDURES
|
||||
|
||||
3.1 LOADING PROCEDURE
|
||||
|
||||
3.2 STARTING PROCEDURE
|
||||
|
||||
3.3 OPERATING PROCEDURE
|
||||
|
||||
4.0 DATA SWITCH FUNCTIONS
|
||||
|
||||
5.0 ERRORS
|
||||
|
||||
6.0 ITERATION COUNTER
|
||||
|
||||
7.0 CYCLE TIME
|
||||
|
||||
8.0 OPERATIONAL VARIATIONS
|
||||
|
||||
9.0 MISCELLANEOUS
|
||||
|
||||
10.0 LISTING
|
||||
|
||||
MAINDEC-10-DAKAK.TXT
|
||||
PAGE 3
|
||||
|
||||
1.0 ABSTRACT
|
||||
|
||||
THIS PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC IS THE
|
||||
ELEVENTH IN A SERIES OF PDP-10 KA10 PROCESSOR DIAGNOSTICS.
|
||||
THE DIAGNOSTIC TESTS THE MULTIPLY INSTRUCTION AND THE
|
||||
MULTIPLY ALGORITHM.
|
||||
|
||||
2.0 REQUIREMENTS
|
||||
|
||||
2.1 EQUIPMENT
|
||||
|
||||
A PDP-10 KA10 EQUIPPED WITH A MINIMUM OF 32K OF MEMORY
|
||||
|
||||
PAPER TAPE READER
|
||||
CONSOLE TELETYPE
|
||||
DECTAPE
|
||||
LINE PRINTER (OPTIONAL)
|
||||
|
||||
2.2 STORAGE
|
||||
|
||||
THE PROGRAM RUNS WITHIN 32K OF MEMORY.
|
||||
|
||||
2.3 PRELIMINARY PROGRAMS
|
||||
|
||||
PREVIOUS PROCESSOR DIAGNOSTICS
|
||||
|
||||
3.0 PROGRAM PROCEDURES
|
||||
|
||||
3.1 LOADING PROCEDURE
|
||||
|
||||
THIS DIAGNOSTIC REQUIRES THAT THE DECSYSTEM10 SUBROUTINE
|
||||
PROGRAM BE RESIDENT IN THE PDP-10.
|
||||
|
||||
PAPER TAPE - HARDWARE READ-IN (READER DEVICE CODE 104)
|
||||
DECTAPE - LOAD WITH DIAMON (DECTAPE DEVICE CODE 320)
|
||||
TIME SHARING - RUN UNDER DIAMON.
|
||||
|
||||
MAINDEC-10-DAKAK.TXT
|
||||
PAGE 4
|
||||
|
||||
3.2 STARTING PROCEDURE
|
||||
|
||||
A. SELECT OPERATIONAL CONSOLE DATA SWITCH SETTINGS (REFER TO
|
||||
4.0 DATA SWITCH FUNCTIONS).
|
||||
|
||||
B. EXEC MODE
|
||||
|
||||
STAND-ALONE STARTING ADDRESS IS 30000.
|
||||
|
||||
C. USER MODE
|
||||
|
||||
RUN UNDER "DIAMON".
|
||||
IN USER MODE THE FOLLOWING QUESTIONS WILL BE ASKED TO
|
||||
SELECT THE OPERATIONAL SWITCHES:
|
||||
|
||||
TELETYPE SWITCH CONTROL ? 0,S,Y OR N (CR) -
|
||||
|
||||
IF THE OPERATOR TYPES "N", THE ACTUAL CONSOLE
|
||||
SWITCHES ARE USED.
|
||||
|
||||
IF THE OPERATOR TYPES "Y", THE FOLLOWING QUESTIONS
|
||||
ARE ASKED AND THE OPERATOR RESPONDS BY TYPING
|
||||
THE ANSWER AS SIX OCTAL DIGITS REPRESENTING
|
||||
THE DESIRED SWITCH SETTINGS.
|
||||
|
||||
SPECIFY LH SWITCHES IN OCTAL-
|
||||
|
||||
SPECIFY RH SWITCHES IN OCTAL-
|
||||
|
||||
IF THE OPERATOR TYPES "0", ZERO'S ARE USED FOR
|
||||
THE SWITCH SETTINGS.
|
||||
|
||||
IF THE OPERATOR TYPES "S", PREVIOUSLY SET SWITCHES
|
||||
ARE USED. THIS IS ONLY VALID UPON RESTARTING
|
||||
OF AN INTERRUPTED PROGRAM.
|
||||
|
||||
MAINDEC-10-DAKAK.TXT
|
||||
PAGE 5
|
||||
|
||||
3.3 OPERATING PROCEDURE
|
||||
|
||||
A. TO THROUGHLY TEST ALL HARDWARE, ALL TEST CONTROL DATA
|
||||
SWITCHES SHOULD BE SET TO 0.
|
||||
|
||||
B. WHEN DEBUGGING HARDWARE, SET SWITCHES TO 0. ALLOW THE
|
||||
TELETYPE TO PRINT THE ERROR MESSAGES. THIS ALLOWS THE
|
||||
PROGRAM TO RUN A COMPLETE PASS AND THEN THE ERROR MESSAGES
|
||||
MAY BE CORRELATED TO QUICKLY DIAGNOSE THE FAILURE. IF A
|
||||
HARDWARE PROBLEM IS SUCH THAT THE ERROR MESSAGES, AFTER THE
|
||||
FIRST ONE, HAVE NO MEANING (FIRST ERROR CAUSES ALL FOLLOWING
|
||||
TESTS TO FAIL) SET THE LOOP ON ERROR SWITCH AND RESTART THE
|
||||
TEST FROM THE BEGINNING. THE FIRST FAILURE WILL THEN CAUSE
|
||||
THE PROGRAM TO ENTER A LOOP SUITABLE FOR SCOPING.
|
||||
|
||||
THE ERROR MESSAGE USED IN CONJUNCTION WITH THE LISTING AND
|
||||
SCOPING IF NECESSARY SHOULD ALLOW THE FAILING CONPONENT
|
||||
TO BE ISOLATED AND REPLACED AND/OR REPAIRED.
|
||||
|
||||
C. WHEN TAKING MARGINS, SET DATA SWITCHES 'NOPNT' AND 'DING'.
|
||||
THIS WILL INHIBIT PRINTOUT BUT WILL ALLOW THE TELETYPE
|
||||
BELL TO BE RUNG WHEN A ERROR OCCURS. IF THE MARGIN OBTAINED
|
||||
IS UNACCEPTABLE, THE OPERATOR MAY REVERT TO STANDARD SWITCH
|
||||
SETTINGS FOR DEBUGGING PURPOSES.
|
||||
|
||||
D. ERROR INFORMATION MAY BE OBTAINED QUICKLY BY PRINTING
|
||||
ERRORS ON THE LINE PRINTER.
|
||||
|
||||
E. IN THE EVENT OF A PRINT ROUTINE FAILURE THE 'NOPNT' SWITCH
|
||||
AND THE 'ERSTOP' SWITCH MAY BE SET TO INHIBIT PRINTOUT
|
||||
BUT HALT THE PROGRAM POINTING TO THE ERROR.
|
||||
|
||||
MAINDEC-10-DAKAK.TXT
|
||||
PAGE 6
|
||||
|
||||
4.0 DATA SWITCH FUNCTIONS
|
||||
|
||||
SWITCH STATE FUNCTION
|
||||
------ ----- --------
|
||||
|
||||
0 ABORT 0 NORMAL OPERATION
|
||||
1 ABORT AT END OF PASS
|
||||
|
||||
1 RSTART NOT USED
|
||||
|
||||
2 TOTALS NOT USED
|
||||
|
||||
3 NOPNT 0 NORMAL TYPEOUT
|
||||
1 INHIBIT ALL PRINT/TYPEOUT
|
||||
(EXCEPT FORCED)
|
||||
|
||||
4 PNTLPT 0 NORMAL OUTPUT TO TTY
|
||||
1 PRINT ALL DATA ON LPT
|
||||
(LOGICAL DEVICE, USER MODE)
|
||||
|
||||
5 DING 0 NO FUNCTION
|
||||
1 RING TTY BELL ON ERROR
|
||||
|
||||
6 LOOPER 0 PROCEED TO NEXT TEST
|
||||
1 ENTER SCOPE LOOP ON TEST ERROR
|
||||
|
||||
7 ERSTOP 0 NO FUNCTION
|
||||
1 HALT ON TEST ERROR
|
||||
|
||||
8 PALERS 0 PRINT ONLY FIRST ERROR WHEN LOOPING
|
||||
1 PRINT ALL ERRORS, EVEN IF SAME ERROR
|
||||
|
||||
9 RELIAB NOT USED
|
||||
|
||||
10 TXTINH 0 PRINT FULL ERROR MESSAGES.
|
||||
1 INHIBIT COMMENT PORTION OF
|
||||
ERROR MESSAGES.
|
||||
|
||||
11 INHPAG 0 ALLOW PAGING AND TRAP ENABLE
|
||||
1 INHIBIT PAGING AND TRAPPING
|
||||
|
||||
12 MODDVC NOT USED
|
||||
|
||||
13 INHCSH NOT USED
|
||||
|
||||
MAINDEC-10-DAKAK.TXT
|
||||
PAGE 7
|
||||
|
||||
5.0 ERRORS
|
||||
|
||||
ERRORS ARE PRINTED ON THE TTY OR LINE PRINTER. THE ERROR
|
||||
PRINTOUT CONTAINS THE TEST TITLE, THE PC OF THE FAILURE, ERROR
|
||||
NUMBER AND THE CONTENTS OF AN APPLICABLE AC.
|
||||
|
||||
THE PC VALUE IS USEFUL IN RELATING THE FAILURE TO THE LISTING.
|
||||
THE ERROR NUMBER IS PROVIDED SUCH THAT AN ERROR DICTIONARY MAY
|
||||
BE MADE AT SOME FUTURE DATE.
|
||||
|
||||
WHEN THE SCOPE LOOP MODE IS USED THE MI REGISTER WILL COUNT
|
||||
FOR EACH OCCURANCE OF AN ERROR. IF AN AUDIO INDICATION OF
|
||||
A CONTINUING ERROR IS DESIRED THE 'DING' SWITCH MAY BE SET.
|
||||
|
||||
6.0 ITERATION COUNTER
|
||||
|
||||
THE ITERATION COUNT OF THE PROGRAM IS DISPLAYED IN THE MEMORY
|
||||
INDICATORS (MI). THIS COUNT IS A DECREMENTING COUNT AND
|
||||
INITIALLY STARTS AT -1 IN STAND-ALONE OPERATION.
|
||||
|
||||
7.0 CYCLE TIME
|
||||
|
||||
THE CYCLE TIME OF THE PROGRAM IS IN THE MILLISECOND RANGE AND
|
||||
IS THEREFORE SUITABLE FOR TAKING MARGINS, VIBRATION TESTS,
|
||||
ETC.
|
||||
|
||||
MAINDEC-10-DAKAK.TXT
|
||||
PAGE 8
|
||||
|
||||
8.0 OPERATIONAL VARIATIONS
|
||||
|
||||
A. DIAGNOSTIC MONITOR
|
||||
|
||||
THE PROGRAM IS USABLE WITH THE DIAGNOSTIC MONITOR TO PROVIDE
|
||||
RELIABILITY TESTS, ACCEPTANCE TESTS, AND/OR TO PROVIDE A
|
||||
QUICK METHOD OF ISOLATION OF A FAULT TO A PARTICULAR AREA
|
||||
OF THE PROCESSOR. CERTAIN PROCEDURES ARE USED WHEN THE
|
||||
PROGRAM IS USED IN THIS MANNER. THEY ARE:
|
||||
|
||||
1. THE DIAGNOSTIC MONITOR TRANSFERS CONTROL TO THE PROGRAM
|
||||
AND STARTS IT AT LOCATION 30002.
|
||||
|
||||
2. MONCTL - LOCATION 30043 IS USED AS THE DIAGNOSTIC MONITOR
|
||||
CONTROL WORD.
|
||||
LH = 0, STAND-ALONE OPERATION
|
||||
-1, RUNNING UNDER DIAGNOSTIC MONITOR
|
||||
|
||||
RH = RIGHT HALF OF CONSOLE SWITCHES IF UNDER
|
||||
DIAGNOSTIC MONITOR CONTROL.
|
||||
|
||||
B. USER MODE
|
||||
|
||||
TO OUTPUT THE PRINTED ERROR MESSAGES TO A USER SPECIFIED
|
||||
DEVICE IN USER MODE, ASSIGN THE DESIRED OUTPUT DEVICE TO
|
||||
DEVICE NAME 'DEV' AND SET SWITCH 'PNTLPT'. THE PHYSICAL
|
||||
DEVICE USED CAN BE ANY DEVICE THAT CAN ACCEPT ASCII OUTPUT
|
||||
FORMAT SUCH AS LPT, DSK, DTA, ETC. THE CORRESPONDING
|
||||
OUTPUT FILE IS 'DAKAK.TMP'
|
||||
|
||||
EXAMPLE DEVICE ASSIGNMENT:
|
||||
|
||||
.ASSIGN DSK DEV
|
||||
|
||||
IN USER MODE THE PROGRAM WILL MAKE 1000(8) PASSES AND THEN
|
||||
RETURN TO DIAMON COMMAND MODE.
|
||||
|
||||
MAINDEC-10-DAKAK.TXT
|
||||
PAGE 9
|
||||
|
||||
8.0 OPERATIONAL VARIATIONS (CON'T)
|
||||
|
||||
THE OUTPUT FILE (IF USED) MAY THEN BE LISTED BY USING THE
|
||||
NORMAL MONITOR COMMANDS (PRINT, LIST, TYPE, PIP, ETC.).
|
||||
|
||||
IF THE PROGRAM IS ABORTED BEFORE COMPLETION (BY ^C, ETC.) THE
|
||||
OUTPUT FILE MAY BE CLOSED BY USING THE MONITOR 'REENTER'
|
||||
COMMAND.
|
||||
|
||||
C. SYSTEM EXERCISER
|
||||
|
||||
START ADDRESS IS 30003. DATA SWITCHES ARE PRESTORED IN
|
||||
'SWTEXR' LOC 30023.
|
||||
|
||||
9.0 MISCELLANEOUS
|
||||
|
||||
THE NON-EX-MEMORY AND PARITY STOP SWITCHES SHOULD BE RESET
|
||||
(0). THESE ERRORS, ILLEGAL UUO'S AND OTHER ERRORS OF THIS
|
||||
TYPE ARE HANDLED BY PRINTOUT ON THE TELETYPE.
|
||||
|
||||
10.0 LISTING
|
||||
```
|
||||
|
||||
DAKAK.HST
|
||||
---------
|
||||
|
||||
THIS IS A HISTORY OF THE DEVELOPMENT OF MAINDEC-10-DAKAK
|
||||
|
||||
************************************************************************
|
||||
|
||||
PRODUCT CODE: MAINDEC-10-DAKAK
|
||||
|
||||
PRODUCT NAME: BASIC INSTRUCTION DIAGNOSTIC #11
|
||||
|
||||
DATE RELEASED: JANUARY 1977
|
||||
|
||||
VERSION: 0.2
|
||||
|
||||
UPDATE AUTHOR: JOHN R. KIRCHOFF
|
||||
|
||||
CHANGES MADE:
|
||||
|
||||
1. UPGRADE TO ALLOW COMPATABILITY WITH THE SUBROUTINE PACKAGE.
|
||||
|
||||
************************************************************************
|
||||
|
||||
ORIGINAL VERSION: 0.1
|
||||
|
||||
ORIGINAL AUTHOR: RICHARD MALISKA
|
||||
|
||||
ORIGINAL RELEASE: 16-MAR-72
|
||||
|
||||
************************************************************************
|
||||
|
||||
DAKAK.MAC
|
||||
---------
|
||||
|
||||
[[Download](DAKAK.MAC.txt)]
|
||||
|
||||
{% highlight text %}
|
||||
{% include_relative DAKAK.MAC.txt %}
|
||||
{% endhighlight %}
|
||||
Loading…
Reference in a new issue