From 29740f2d7e58d2e9ab557eec0b1e286e1b023d37 Mon Sep 17 00:00:00 2001 From: Jeff Date: Sat, 19 Nov 2016 10:14:49 -0800 Subject: [PATCH] Added more information about available DEC diagnostics --- apps/pdp11/README.md | 6 +- apps/pdp11/tapes/README.md | 8 +-- apps/pdp11/tapes/diags/README.md | 2 + disks/dec/rl02k/xxdp/README.md | 96 +++++++++++++++------------ disks/dec/rl02k/xxdp/ekbee1/README.md | 68 +++++++++++++++++++ 5 files changed, 131 insertions(+), 49 deletions(-) create mode 100644 disks/dec/rl02k/xxdp/ekbee1/README.md diff --git a/apps/pdp11/README.md b/apps/pdp11/README.md index 307cf13a1..754dc2777 100644 --- a/apps/pdp11/README.md +++ b/apps/pdp11/README.md @@ -10,4 +10,8 @@ PDP-11 Software We have archived the following selected PDP-11 software: - [Boot Software](boot/) -- [DEC PDP-11 Tapes](tapes/), including [Paper Tape Diagnostics](tapes/diags/) +- [DEC PDP-11 Paper Tapes](tapes/), including [Paper Tape Diagnostics](tapes/diags/) + +Additional DEC diagnostics are also available on disk, such as: + +- [XXDP+ Diagnostics](/disks/dec/rl02k/xxdp/) diff --git a/apps/pdp11/tapes/README.md b/apps/pdp11/tapes/README.md index f14297e0a..5c7e62bb8 100644 --- a/apps/pdp11/tapes/README.md +++ b/apps/pdp11/tapes/README.md @@ -1,13 +1,13 @@ --- layout: page -title: DEC PDP-11 Tape Images +title: DEC PDP-11 Paper Tape Images permalink: /apps/pdp11/tapes/ --- -DEC PDP-11 Tape Images ----------------------- +DEC PDP-11 Paper Tape Images +---------------------------- -To load any of the DEC PDP-11 tapes listed below, you will need to use a [PDPjs Machine](/devices/pdp11/machine/) +To load any of the DEC PDP-11 paper tapes listed below, you will need to use a [PDPjs Machine](/devices/pdp11/machine/) with a [PC11 High-Speed Paper Tape Reader/Punch](/devices/pdp11/pc11/), such as this [PDP-11/20](/devices/pdp11/machine/1120/basic/debugger), and then follow this three-step process: diff --git a/apps/pdp11/tapes/diags/README.md b/apps/pdp11/tapes/diags/README.md index 0fc9f7f95..72879b922 100644 --- a/apps/pdp11/tapes/diags/README.md +++ b/apps/pdp11/tapes/diags/README.md @@ -17,6 +17,8 @@ into RAM using the machine's "Load" button instead of "Attach", allowing you to loading the [Bootstrap Loader](/apps/pdp11/boot/bootstrap/) in order to load the [Absolute Loader](/apps/pdp11/tapes/absloader/) in order to load the desired tape. +Additional (non-paper tape) diagnostics are available on the [XXDP+ Diagnostics](/disks/dec/rl02k/xxdp/) disk. + [![MAINDEC-11-D0AA-PB (MAR/70): TEST 1 - BRANCH](MAINDEC-11-D0AA-PB.jpg)](#tests-1-12) [![MAINDEC-11-D0BA-PB (MAR/70): TEST 2 - CON BRANCH](MAINDEC-11-D0BA-PB.jpg)](#tests-1-12) [![MAINDEC-11-D0CA-PB (MAR/70): TEST 3 - UNARY](MAINDEC-11-D0CA-PB.jpg)](#tests-1-12) diff --git a/disks/dec/rl02k/xxdp/README.md b/disks/dec/rl02k/xxdp/README.md index 2c59d4e9d..06c21e942 100644 --- a/disks/dec/rl02k/xxdp/README.md +++ b/disks/dec/rl02k/xxdp/README.md @@ -1,41 +1,50 @@ --- layout: page -title: "DEC RL02K Disk Images: XXDP+" +title: "XXDP+ Diagnostics Disk" permalink: /disks/dec/rl02k/xxdp/ --- -DEC RL02K Disk Images: XXDP+ ----------------------------- +XXDP+ Diagnostics Disk +---------------------- -To boot the "XXDP+ Diagnostics" disk, start a [PDP-11/70](devices/pdp11/machine/1170/panel/debugger/) and select -the "XXDP+ Diagnostics" disk from the "Disk Drive Controls", click "Load", and wait for the message: +The XXDP+ Diagnostics disk described below contains a wealth of PDP-11 tests. Tests that PDPjs has exercised +include: + +- [EKBEE1: 11/70 MEMORY MANAGEMENT DIAGNOSTIC](ekbee1/) + +Running XXDP+ Diagnostics +------------------------- + +To boot the "XXDP+ Diagnostics" disk, start a [PDP-11/70](devices/pdp11/machine/1170/panel/debugger/) with an +[RL11 Disk Controller](/devices/pdp11/rl11/), select the "XXDP+ Diagnostics" disk from the "Disk Drive Controls", +click "Load", and wait for the message: Mounted disk "XXDP+ Diagnostics" in drive RL0 Then start the machine (click "Run") and make sure the following prompt has been displayed: PDP-11 MONITOR V1.0 - - BOOT> + + BOOT> At the prompt, type "BOOT RL0". The following text should appear: CHMDLD0 XXDP+ DL MONITOR BOOTED VIA UNIT 0 28K UNIBUS SYSTEM - - ENTER DATE (DD-MMM-YY): - + + ENTER DATE (DD-MMM-YY): + RESTART ADDR: 152010 THIS IS XXDP+. TYPE "H" OR "H/L" FOR HELP. - + . The "H" (HELP) command displays the following information: Monitor Commands ---------------- - + R run a program L load a program S start a program @@ -44,8 +53,8 @@ The "H" (HELP) command displays the following information: F set the terminal fill count E enable alternate system device H type help information - - + + DRS Commands ------------ Execution @@ -55,27 +64,27 @@ The "H" (HELP) command displays the following information: CONTINUE continue diagnostic at test that was interrupted by a ^C PROCEED continue from an error halt - + Units Under Test ---------------- ADD activate a unit for testing DROP deactivate a unit DISPLAY print a list of device information - + Flags ----- FLAGS print status of all flags ZFLAGS reset all flags - + Statistics ---------- PRINT print statistical information - + Exitting -------- EXIT return to XXDP+ runtime monitor - - + + DRS Command Switches -------------------- /TESTS:test-list execute only the tests specified @@ -84,11 +93,11 @@ The "H" (HELP) command displays the following information: /EOP:ddddd report end-of-pass after each ddddd passes (ddddd = 1 to 64000) /UNITS:unit-list command will affect only specified units - - + + DRS Flags --------- - + Flag Effect ---- ------ HOE halt on error - control is returned to runtime @@ -112,8 +121,8 @@ The "H" (HELP) command displays the following information: LOT loop on test EVL execute evaluation (on diagnostics which have evaluation support) - - + + UPD1 Commands ------------- CLR clear UPD1 program buffer @@ -125,8 +134,8 @@ The "H" (HELP) command displays the following information: DUMP dump a program image DEL delete a file BOOT bootstrap a device - - + + UPD2 Commands ------------- File Manipulation @@ -136,7 +145,7 @@ The "H" (HELP) command displays the following information: FILE transfer a file or files DEL delete a file or files REN rename a file - + File Modification ----------------- CLR clear UPD2 program buffer @@ -146,14 +155,14 @@ The "H" (HELP) command displays the following information: HICORE set upper memory limit for dump LOCORE set lower memory limit for dump DUMP dump a program image - + New Medium Creation ------------------- ZERO initialize a medium SAVM save a monitor on a disk SAVE save a monitor on a tape COPY copy entire medium - + Miscellaneous ------------- ASG assign a logical name to a device @@ -161,18 +170,18 @@ The "H" (HELP) command displays the following information: READ read a file to check validity EOT write end-of-tape mark DRIVER load a device driver - + Returning to Monitor -------------------- BOOT bootstrap a device EXIT return control to the runtime monitor - + Printing -------- PRINT print a file on the line printer TYPE type a file on the console terminal - - + + PATCH Commands -------------- BOOT Boot specified device @@ -185,8 +194,8 @@ The "H" (HELP) command displays the following information: PATCH Crreate patched file SAVP Save input table TYPE Print input table on terminal - - + + XTECO Non-edit Commands ----------------------- TEXT - create new text file @@ -196,23 +205,23 @@ The "H" (HELP) command displays the following information: PRINT - print a file on the line printer DIR - list directory of specified medium EXIT - return to monitor - - + + XTECO Edit Commands ------------------- - + Pointer Location ---------------- L - move the pointer line by line C - move the pointer character by character J - move the pointer to the beginning of text ZJ - move the pointer to the end of text - + Search ------ S - search for specified string in text now in memory N - search for specified string in remainder of text file - + Modify/Display Text ------------------- T - type text @@ -220,7 +229,7 @@ The "H" (HELP) command displays the following information: K - delete line(s) I - insert text A - append text to that currently in memory - + Terminating Edit Mode --------------------- EX - exit edit mode @@ -229,7 +238,7 @@ The "H" (HELP) command displays the following information: The "D" (DIRECTORY) command displays the following information: ENTRY# FILNAM.EXT DATE LENGTH START - + 1 MMDP .SAV 3-MAR-83C 17 000310 2 MTDP .SAV 3-MAR-83C 17 000331 3 HSAAD0.SYS 3-MAR-83 24 000352 @@ -1180,4 +1189,3 @@ The "D" (DIRECTORY) command displays the following information: 948 DXDPU .CMD 25-MAR-82 1 037331 949 SXDP26.BAK 25-MAR-82 1 037332 950 SXDP27.BAK 25-MAR-82 1 037333 - diff --git a/disks/dec/rl02k/xxdp/ekbee1/README.md b/disks/dec/rl02k/xxdp/ekbee1/README.md new file mode 100644 index 000000000..d44ff1ac7 --- /dev/null +++ b/disks/dec/rl02k/xxdp/ekbee1/README.md @@ -0,0 +1,68 @@ +--- +layout: page +title: "EKBEE1: 11/70 MEMORY MANAGEMENT DIAGNOSTIC" +permalink: /disks/dec/rl02k/xxdp/ekbee1/ +--- + +EKBEE1: 11/70 MEMORY MANAGEMENT DIAGNOSTIC +------------------------------------------ + +From the [PDP-11 Diagnostic Handbook (1988)](http://archive.pcjs.org/pubs/dec/pdp11/diags/PDP11_DiagnosticHandbook_1988.pdf), +p. 1-10: + + 11/70 MEMORY MANAGEMENT TEST + + ABSTRACT: + + This program was designed using a "BOTTOM UP" approach starting with the smallest segment of MEMORY MANAGEMMENT + logic and building up to cover all the logic. The program begins by testing some of the internal CPU data and + address path and address detection logic, then works outward through the MEM. MANAGEMENT registers. It is assumed + that both the CPU and the CACHE have been tested, or are known to be good. + + OPERATING PROCEDURES: + Set the switch register by + CON = xxxxxxWZ + (W = deposit xxxxxx into console switch register) + (R = read and type console switch settings / CON = R) + (Z = switch console terminal back to program) + + .R EKBEEI + + SWITCH SETTINGS + SW15 = 1 halt on error + SW14 = 1 loop on current test + SW13 = 1 inhibit all error typeouts + SW12 = 1 inhibit trace trapping + SW11 = 1 inhibit iterations + SW10 = 1 ring bell on error + SW09 = 1 loop on error + SW08 = 1 loop on test in SWR < 06:00> + SW07 = 1 inhibit multiple error typeouts + SW06 = 1 selects subtest + ... + +The closest we have to a source code listing of the EKBEE1 diagnostic comes from some +[scanned microfiche](http://archive.pcjs.org/pubs/dec/pdp11/diags/AC-7975E-MC_CEKBEE0_1170_MEM_MGMT_May80.pdf) +on [bitsavers.org](http://bitsavers.trailing-edge.com/pdf/dec/pdp11/microfiche/ftp.j-hoppe.de/bw/gh/) for: + + PRODUCT CODE: AC-7975E-MC + PRODUCT NAME: CEKBEE0 11/70 MEM MGMT + DATE CREATED: MAY, 1980 + MAINTAINER: DIAGNOSTIC ENGINEERING + +One of the last tests within the diagnostic to pass in PDPjs was "TEST 122: KT BEND", which appears on p. 208 of +the PDF (p. 199 of the source code listing): + + ;;*************************************************************** + ;*TEST 122 KT BEND + ;* + ;* THIS TEST ENSURES THAT TMCE KT BEND GOES LOW ON AN ODD + ;* ADDRESS ERROR, SL RED, AND NEXM. THIS IS DONE BY EXECUTING + ;* AN INSTRUCTION FOR EACH Of THESE THESE CASES THAT ALSO + ;* CAUSES A KT ABORT. THE ABORT SHOULD NOT BE HONORED. + ;* + ;* NOTE: ON A KB11-E OR KB11-EM THE KT ABORT SHOULD BE HONORED OVER A + ;* NEXM TRAP. IF THIS IS A KB11-E/EM THEN THIS FEATURE IS TESTED. + ;**************************************************************** + +