Fixed a couple of PDP-10 opcode emulation bugs (AOBJN, AOBJP, and CMP), and rounded out the set of DEC's basic instruction diagnostics
This commit is contained in:
parent
dd24f4bb61
commit
2a8c2a74d2
21 changed files with 29570 additions and 84 deletions
|
|
@ -11,4 +11,6 @@ PCjs has archived selected files from
|
|||
[PDP-10 KLAD Diagnostics Sources](http://pdp-10.trailing-edge.com/klad_sources/index.html), including:
|
||||
|
||||
- [KA10 Basic Instruction Diagnostic #1 (MAINDEC-10-DAKAA-B-D)](dakaa/)
|
||||
- [KA10 Basic Instruction Diagnostic #2 (MAINDEC-10-DAKAB-B-D)](dakab/)
|
||||
- [KA10 Basic Instruction Diagnostic #3 (MAINDEC-10-DAKAC-B-D)](dakac/)
|
||||
- [KA10 Basic Instruction Diagnostic #4 (MAINDEC-10-DAKAD-B-D)](dakad/)
|
||||
|
|
|
|||
|
|
@ -1,15 +1,27 @@
|
|||
;MACROS
|
||||
|
||||
; STOP - USED FOR SCOPE LOOP, IF INSTRUCTION FAILS, CHANGE (JUMPA .+1)
|
||||
; TO A (JUMPA X) TO CYCLE ON FAILING INSTRUCTION
|
||||
|
||||
DEFINE STOP (A)<
|
||||
HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
||||
JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1)
|
||||
;TO JUMPA X(X IS THE ADDRESS OF THE FIRST
|
||||
;INSTRUCTION IN THE SUBTEST) TO LOOP ON ERROR
|
||||
;AND CHANGE HALT INSTRUCTION TO JUMPA .+1>
|
||||
|
||||
SUBTTL DIAGNOSTIC SECTION
|
||||
|
||||
START: SETZM USER# ;CLEAR USER CONTROL WORD
|
||||
JSP 0,.+1 ;GET FLAGS
|
||||
TLNE USERF ;IN USER MODE?
|
||||
SETOM USER ;YES, SET USER CONTROL WORD
|
||||
SKIPN MONFLG ;SPECIAL USER MODE?
|
||||
SETZM USER ;YES, CLEAR USER CONTROL WORD
|
||||
SKIPN USER
|
||||
JRST STARTA
|
||||
SKIPL MONCTL
|
||||
TTCALL 3,PGMNAM ;MENTION OUR NAME
|
||||
START: ;SETZM USER# ;CLEAR USER CONTROL WORD
|
||||
;JSP 0,.+1 ;GET FLAGS
|
||||
;TLNE USERF ;IN USER MODE?
|
||||
;SETOM USER ;YES, SET USER CONTROL WORD
|
||||
;SKIPN MONFLG ;SPECIAL USER MODE?
|
||||
;SETZM USER ;YES, CLEAR USER CONTROL WORD
|
||||
;SKIPN USER
|
||||
;JRST STARTA
|
||||
;SKIPL MONCTL
|
||||
;TTCALL 3,PGMNAM ;MENTION OUR NAME
|
||||
JRST STARTA
|
||||
|
||||
PGMNAM: ASCIZ/
|
||||
|
|
@ -1037,6 +1049,5 @@ SN=SN+1
|
|||
|
||||
;**********
|
||||
>
|
||||
ENDXX: JRST BEGEND ;LOOP PROGRAM
|
||||
|
||||
|
||||
ENDXX:
|
||||
;JRST BEGEND ;LOOP PROGRAM
|
||||
|
|
|
|||
|
|
@ -1,27 +1,15 @@
|
|||
;MACROS
|
||||
|
||||
; STOP - USED FOR SCOPE LOOP, IF INSTRUCTION FAILS, CHANGE (JUMPA .+1)
|
||||
; TO A (JUMPA X) TO CYCLE ON FAILING INSTRUCTION
|
||||
|
||||
DEFINE STOP (A)<
|
||||
HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
|
||||
JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1)
|
||||
;TO JUMPA X(X IS THE ADDRESS OF THE FIRST
|
||||
;INSTRUCTION IN THE SUBTEST) TO LOOP ON ERROR
|
||||
;AND CHANGE HALT INSTRUCTION TO JUMPA .+1>
|
||||
|
||||
SUBTTL DIAGNOSTIC SECTION
|
||||
|
||||
START: ;SETZM USER# ;CLEAR USER CONTROL WORD
|
||||
;JSP 0,.+1 ;GET FLAGS
|
||||
;TLNE USERF ;IN USER MODE?
|
||||
;SETOM USER ;YES, SET USER CONTROL WORD
|
||||
;SKIPN MONFLG ;SPECIAL USER MODE?
|
||||
;SETZM USER ;YES, CLEAR USER CONTROL WORD
|
||||
;SKIPN USER
|
||||
;JRST STARTA
|
||||
;SKIPL MONCTL
|
||||
;TTCALL 3,PGMNAM ;MENTION OUR NAME
|
||||
START: SETZM USER# ;CLEAR USER CONTROL WORD
|
||||
JSP 0,.+1 ;GET FLAGS
|
||||
TLNE USERF ;IN USER MODE?
|
||||
SETOM USER ;YES, SET USER CONTROL WORD
|
||||
SKIPN MONFLG ;SPECIAL USER MODE?
|
||||
SETZM USER ;YES, CLEAR USER CONTROL WORD
|
||||
SKIPN USER
|
||||
JRST STARTA
|
||||
SKIPL MONCTL
|
||||
TTCALL 3,PGMNAM ;MENTION OUR NAME
|
||||
JRST STARTA
|
||||
|
||||
PGMNAM: ASCIZ/
|
||||
|
|
@ -1049,5 +1037,6 @@ SN=SN+1
|
|||
|
||||
;**********
|
||||
>
|
||||
ENDXX:
|
||||
; JRST BEGEND ;LOOP PROGRAM
|
||||
ENDXX: JRST BEGEND ;LOOP PROGRAM
|
||||
|
||||
|
||||
|
|
@ -7,14 +7,14 @@ machines:
|
|||
type: pdp10
|
||||
config: /devices/pdp10/machine/ka10/test/debugger/machine.xml
|
||||
debugger: true
|
||||
commands: a 30724 MYDAKAA.MAC
|
||||
commands: a 30724 DAKAA.MAC
|
||||
---
|
||||
|
||||
PDP-10 KA10 Basic Instruction Diagnostic #1
|
||||
-------------------------------------------
|
||||
|
||||
The *PDP-10 KA10 Basic Instruction Diagnostic #1* (MAINDEC-10-DAKAA-B-D) test code has been extracted from
|
||||
[DAKAA.MAC](DAKAA.MAC.txt) [[original](http://pdp-10.trailing-edge.com/klad_sources/01/klad.sources/dakaam.mac.html)]
|
||||
[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.
|
||||
|
||||
Resources for this test include:
|
||||
|
|
@ -32,9 +32,9 @@ The Debugger's assemble ("a") command can be used to test the new built-in
|
|||
of the [MACRO-10](http://archive.pcjs.org/pubs/dec/pdp10/tops10/02_1973AsmRef_macro.pdf) assembly language.
|
||||
This command:
|
||||
|
||||
a 30724 MYDAKAA.MAC
|
||||
a 30724 DAKAA.MAC
|
||||
|
||||
will automatically read the [MYDAKAA.MAC](MYDAKAA.MAC.txt) source file (a slightly modified copy of [DAKAA.MAC](DAKAA.MAC.txt)),
|
||||
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.
|
||||
|
||||
---
|
||||
|
|
|
|||
12231
apps/pdp10/diags/klad/dakab/DAKAB.LST.txt
Normal file
12231
apps/pdp10/diags/klad/dakab/DAKAB.LST.txt
Normal file
File diff suppressed because it is too large
Load diff
1782
apps/pdp10/diags/klad/dakab/DAKAB.MAC.txt
Normal file
1782
apps/pdp10/diags/klad/dakab/DAKAB.MAC.txt
Normal file
File diff suppressed because it is too large
Load diff
1770
apps/pdp10/diags/klad/dakab/DAKABM.MAC.txt
Normal file
1770
apps/pdp10/diags/klad/dakab/DAKABM.MAC.txt
Normal file
File diff suppressed because it is too large
Load diff
274
apps/pdp10/diags/klad/dakab/README.md
Normal file
274
apps/pdp10/diags/klad/dakab/README.md
Normal file
|
|
@ -0,0 +1,274 @@
|
|||
---
|
||||
layout: page
|
||||
title: PDP-10 KA10 Basic Instruction Diagnostic #2
|
||||
permalink: /apps/pdp10/diags/klad/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-B-D) 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.
|
||||
|
||||
Resources for this test include:
|
||||
|
||||
- [Instructions](#dakabtxt)
|
||||
- [History](#dakabhst)
|
||||
- [Source Code](#dakabmac)
|
||||
- [MACRO-10 Listing](DAKAB.LST.txt)
|
||||
- [Additional Information](http://archive.pcjs.org/apps/pdp10/diags/klad/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/klad/dakac/DAKAC.LST.txt
Normal file
7750
apps/pdp10/diags/klad/dakac/DAKAC.LST.txt
Normal file
File diff suppressed because it is too large
Load diff
2652
apps/pdp10/diags/klad/dakac/DAKAC.MAC.txt
Normal file
2652
apps/pdp10/diags/klad/dakac/DAKAC.MAC.txt
Normal file
File diff suppressed because it is too large
Load diff
2652
apps/pdp10/diags/klad/dakac/DAKACM.MAC.txt
Normal file
2652
apps/pdp10/diags/klad/dakac/DAKACM.MAC.txt
Normal file
File diff suppressed because it is too large
Load diff
273
apps/pdp10/diags/klad/dakac/README.md
Normal file
273
apps/pdp10/diags/klad/dakac/README.md
Normal file
|
|
@ -0,0 +1,273 @@
|
|||
---
|
||||
layout: page
|
||||
title: PDP-10 KA10 Basic Instruction Diagnostic #3
|
||||
permalink: /apps/pdp10/diags/klad/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-B-D) 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.
|
||||
|
||||
Resources for this test include:
|
||||
|
||||
- [Instructions](#dakactxt)
|
||||
- [History](#dakachst)
|
||||
- [Source Code](#dakacmac)
|
||||
- [MACRO-10 Listing](DAKAC.LST.txt)
|
||||
- [Additional Information](http://archive.pcjs.org/apps/pdp10/diags/klad/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 %}
|
||||
|
|
@ -35,16 +35,16 @@ DEFINE SFLAG (A)<
|
|||
JRST 2,.+1(1) ;SET A FLAG>
|
||||
SUBTTL DIAGNOSTIC SECTION
|
||||
|
||||
START: SETZM USER# ;CLEAR USER CONTROL WORD
|
||||
JSP 0,.+1 ;GET FLAGS
|
||||
TLNE USERF ;IN USER MODE?
|
||||
SETOM USER ;YES, SET USER CONTROL WORD
|
||||
SKIPN MONFLG ;SPECIAL USER MODE?
|
||||
SETZM USER ;YES, CLEAR USER CONTROL WORD
|
||||
SKIPN USER
|
||||
JRST C00
|
||||
SKIPL MONCTL
|
||||
TTCALL 3,PGMNAM ;MENTION OUR NAME
|
||||
START: ;SETZM USER# ;CLEAR USER CONTROL WORD
|
||||
;JSP 0,.+1 ;GET FLAGS
|
||||
;TLNE USERF ;IN USER MODE?
|
||||
;SETOM USER ;YES, SET USER CONTROL WORD
|
||||
;SKIPN MONFLG ;SPECIAL USER MODE?
|
||||
;SETZM USER ;YES, CLEAR USER CONTROL WORD
|
||||
;SKIPN USER
|
||||
;JRST C00
|
||||
;SKIPL MONCTL
|
||||
;TTCALL 3,PGMNAM ;MENTION OUR NAME
|
||||
JRST STARTA
|
||||
|
||||
PGMNAM: ASCIZ/
|
||||
|
|
@ -2051,4 +2051,4 @@ C22700: SETZM 2 ;INITIALIZE AC
|
|||
|
||||
;**********
|
||||
|
||||
JRST BEGEND
|
||||
;JRST BEGEND
|
||||
|
|
|
|||
|
|
@ -35,16 +35,16 @@ DEFINE SFLAG (A)<
|
|||
JRST 2,.+1(1) ;SET A FLAG>
|
||||
SUBTTL DIAGNOSTIC SECTION
|
||||
|
||||
START: ;SETZM USER# ;CLEAR USER CONTROL WORD
|
||||
;JSP 0,.+1 ;GET FLAGS
|
||||
;TLNE USERF ;IN USER MODE?
|
||||
;SETOM USER ;YES, SET USER CONTROL WORD
|
||||
;SKIPN MONFLG ;SPECIAL USER MODE?
|
||||
;SETZM USER ;YES, CLEAR USER CONTROL WORD
|
||||
;SKIPN USER
|
||||
;JRST C00
|
||||
;SKIPL MONCTL
|
||||
;TTCALL 3,PGMNAM ;MENTION OUR NAME
|
||||
START: SETZM USER# ;CLEAR USER CONTROL WORD
|
||||
JSP 0,.+1 ;GET FLAGS
|
||||
TLNE USERF ;IN USER MODE?
|
||||
SETOM USER ;YES, SET USER CONTROL WORD
|
||||
SKIPN MONFLG ;SPECIAL USER MODE?
|
||||
SETZM USER ;YES, CLEAR USER CONTROL WORD
|
||||
SKIPN USER
|
||||
JRST C00
|
||||
SKIPL MONCTL
|
||||
TTCALL 3,PGMNAM ;MENTION OUR NAME
|
||||
JRST STARTA
|
||||
|
||||
PGMNAM: ASCIZ/
|
||||
|
|
@ -2051,4 +2051,4 @@ C22700: SETZM 2 ;INITIALIZE AC
|
|||
|
||||
;**********
|
||||
|
||||
; JRST BEGEND
|
||||
JRST BEGEND
|
||||
|
|
@ -7,14 +7,14 @@ machines:
|
|||
type: pdp10
|
||||
config: /devices/pdp10/machine/ka10/test/debugger/machine.xml
|
||||
debugger: true
|
||||
commands: a 30724 MYDAKAD.MAC
|
||||
commands: a 30724 DAKAD.MAC
|
||||
---
|
||||
|
||||
PDP-10 KA10 Basic Instruction Diagnostic #4
|
||||
-------------------------------------------
|
||||
|
||||
The *PDP-10 KA10 Basic Instruction Diagnostic #4* (MAINDEC-10-DAKAD-B-D) test code has been extracted from
|
||||
[DAKAD.MAC](DAKAD.MAC.txt) [[original](http://pdp-10.trailing-edge.com/klad_sources/01/klad.sources/dakadm.mac.html)]
|
||||
[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.
|
||||
|
||||
Resources for this test include:
|
||||
|
|
@ -32,9 +32,9 @@ The Debugger's assemble ("a") command can be used to test the new built-in
|
|||
of the [MACRO-10](http://archive.pcjs.org/pubs/dec/pdp10/tops10/02_1973AsmRef_macro.pdf) assembly language.
|
||||
This command:
|
||||
|
||||
a 30724 MYDAKAD.MAC
|
||||
a 30724 DAKAD.MAC
|
||||
|
||||
will automatically read the [MYDAKAD.MAC](MYDAKAD.MAC.txt) source file (a slightly modified copy of [DAKAD.MAC](DAKAD.MAC.txt)),
|
||||
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:
|
||||
|
||||
|
|
@ -246,7 +246,6 @@ SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DEC.
|
|||
NONE
|
||||
|
||||
9.0 LISTING
|
||||
|
||||
```
|
||||
|
||||
DAKAD.HST
|
||||
|
|
|
|||
12
apps/pdp10/tests/opcodes/OPTEST02.simh
Normal file
12
apps/pdp10/tests/opcodes/OPTEST02.simh
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
dep 100 JFCL 17,101
|
||||
dep 101 MOVEI 1,1
|
||||
dep 102 SUBI 1,1
|
||||
dep 103 JFCL 17,104
|
||||
dep 104 SUBI 1,1
|
||||
dep 105 MOVSI 1,400000
|
||||
dep 106 ADDI 1,1
|
||||
dep 107 SUBI 1,1
|
||||
dep 110 JFCL 17,111
|
||||
dep 111 SUBI 1,1
|
||||
dep pc 100
|
||||
do t
|
||||
11
apps/pdp10/tests/opcodes/OPTEST02.txt
Normal file
11
apps/pdp10/tests/opcodes/OPTEST02.txt
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
A 100;
|
||||
JFCL 17,101;
|
||||
MOVEI 1,1;
|
||||
SUBI 1,1;
|
||||
JFCL 17,104;
|
||||
SUBI 1,1;
|
||||
MOVSI 1,400000;
|
||||
ADDI 1,1;
|
||||
SUBI 1,1;
|
||||
JFCL 17,111;
|
||||
SUBI 1,1;
|
||||
Loading…
Reference in a new issue