PDP-11 MUD – Building the production box

Initially I have decided to run the MUD on a microPDP-11/73 running BSD 2.11 Unix.

The chassis was fitted with a 4MB memory card, a third party eight channel DZV-11, a ethernet card and a CMD CQD-220 SCSI controller with a 18GB SCSI disk in an external case.

To get BSD onto the disk, I hooked it up to a PC running simh and prepared a suitable disk image.

One problem I encountered was that the standard MSCP driver wasn’t fully compatible with the CMD CQD-220 controller. To resolve this it is necessary to compile a patched boot block. This can be found here:  rauboot.s (original site).

To install, I fired up the disk image I was planning on using in SIMH and performed the following steps:

  • cd /usr/src/sys/mdec/
  • mv rauboot.s rauboot.s.orig
  • vi rauboot.s
  • i (For insert)
  • pasted in above copy of rauboot.s
  • after the paste completed, ESC :wq!  (write and quite)
  • make    (rebuilds the mdec files)
  • cp rauboot /mdec
  • dd if=/mdec/rauboot of=/rra0a count=1

Once the disk image was prepared and working, the SCSI disk was hooked up to the SIMH box (running under linux) and the ‘dd’ command used to copy the disk image onto the disk.

Having done that, the disk was reconnected to the PDP and booted up into BSD 2.11. The ethernet was connected up to my office network (via a AUI transceiver). The /etc/netstart and /etc/hosts files were tweaked to assign the box an IP, subnet and gateway on the local network and /etc/inetd.conf modified to enable the FTP server. The PDP was then rebooted into multiuser mode and the network confirmed to be workin


PDP-11 MUD

I’ve frequently been questioned as to why I collect old computers and what they actual do. This has traditionally been a hard question to answer although this is equally true of most collecting hobbies (why do people preserve Model-T fords when a modern car does the job so much better!).

However it has left me with a desire to find an interesting practical use for my machines. One of my earliest computing experiences and fondest memories was playing Essex MUD via the JANET network and so I’ve decided to write a MUD for the PDP-11 and use a mixture of terminals and micros to provide user access and to control non-player characters.

The game will be written in C under BSD 2.11 with DZ11’s providing shell access. The game itself will run as a single process, non-blocking daemon accessed via sockets. This has the advantage of providing serial and network (using telnet) access to the game.

Initially I will develop the game under SIMH, with a uPDP-11/73 with an RD54 used as the production machine. Ultimately I hope to move it all over to a UNIBUS machine, either an 11/40 or one of my 11/70s, but I’ll start simple to begin with.

Non player characters will be implemented on BBC micros in BASIC. The BBCs will interact with the PDP via serial.

I expect development to take 2-3 months of evenings and I’ll report back here regularly on how things are progressing. Once something is working I’ll put a simh version online for people to play with.


Inventory: Flipchips

This is an inventory of flipchips in my collection:

  • M050 – 50mA indicator and relay driver
  • M100 x 2 – Bus data interface
  • M107 x 6 – Device selector PDP-8, Non Omnibus
  • M113 x 15 – 2-input NAND gates (x10)
  • M137 x 4 – high speed 4-input power NAND Gates
  • M139 x 4 – 8-input NAND gate (x3) (pinout different from M119)
  • M141 x4 – AND/NOR gates
  • M155 x4 – 4-line to 16-line Decoder
  • M159 – Arithmetric/logic unit
  • M160 x5 – AND/NOR Gate module
  • M161 x4 – Binary to Octal/Decimal Decoder
  • M169 x4 – Gating Module
  • M178 x8 – 8×6 data mixer
  • M190 x4 – ?
  • M191 – ALU Look-Ahead Logic
  • M202 x4 – J-K flip flop module
  • M203 – eight Set-Reset flip flop module
  • M204 x3 – General purpose buffer and counter module
  • M205 x4 – five -"D" FLIP FLOPS
  • M206 x4 – Six General purpose flip-flops
  • M207 x2 – Six General purpose flip-flops
  • M211 x2 – Binary up/down counter (6 bits wide)
  • M212 x4 – 6-Bit L-R Shift Register
  • M214 x2 – ?
  • M216 x5 – Six flop-flops
  • M217 x4 – Clock Register
  • M238 x4 – Dual 4-bit binary synchronous up/down counter
  • M245 x4 – Dual 4-bit shift register
  • M304 x4 – One-shot delay (PC15)
  • M307 x4 – Integrating one-shot module
  • M310 x4 – Delay line
  • M360 x2 – Variable delay
  • M401 x4 – Variable clock
  • M405 x3 – Crystal clock
  • M452 x4 – Variable (TTY) clock (for PC15)
  • M501 – Schmitt trigger
  • M503 x4 – Schmitt Trigger
  • M506 x4 – Negative input converter
  • M508 x4 – Bus converter
  • M510 – Positive bus receiver (for PC15)
  • M516 x8 – Positive bus receiver
  • M514 – Bus transceiver
  • M602 x2 – Pulse Generator (amplifier)
  • M606 x5 – Pulse Generator (for PC15)
  • M611 x4 – high speed Power inverter
  • M617 x5 – 4-input NOR buffers (x6)
  • M622 – Positive Pulse Receiver (for PC15)
  • M623 x 2 – Bus driver
  • M627 x4 – Power amplifier module
  • M640 – ?
  • M650 x4 – Negative output converter
  • M660 x5 – Positive level cable driver
  • M661 x9 – Positive level driver
  • M712 x2 – ?
  • M719 x2 – KW-12 Clock Input Synchronizer
  • M720 x4 – Memory detection
  • M870 – Simple Clock
  • M906 x3 – Cable terminator
  • M921 – Device code jumper select
  • M939×2 – ?

Inventory: My Module Spares

This is a list of spare modules I have in my collection:

G7273 X 10 – U – Bus Grant & Non-processor grant
M105 X 8 – Q -Device selector for PDP-11
M4002 – U – KWV11-C Programmable Real-Time Clock
M7390 – Unknown
M7513 – Q – RQDX extender for RQDX1
M7555 X 20 – Q – RQDX3 MFM Winchester and floppy disk controller
M7559 – Q – TQK70 TMSCP controller for TK70
M7680 – ? – RK05
M780 – U – KL11 Teletype transmitter & receiver for KL11, 110 baud
M7800 X 3 – U – DL11 Async transmitter & receiver
M7816 – U – DQ11-AB Bus selectors and block check
M7820 – U – KW11 Interrupt control, 7-bits, 1 per PDP11 peripheral
M7822 – U – DU11 Synchronous serial line interface.
M7823 – U – KW11-W Watchdog timer module
M7846 X 3 – U – RX11 RX01 floppy disk controller
M7860 X 2 – U – DR11-C M786+M105+M7821; general device interface to PDP11
M7864 – U – DR11-L DR11-L, 2 word unibus input interface
M7946 – Q – RXV11 RX01 8″ floppy disk controller
M8020 – Q – DPV11-M Single-line serial EIA sync interface
M8300 – O – KK8E Major registers
M8310 – O – KK8E Major register control
M848 X 2 – O – KP8E Power fail and auto-restart
M8554 – U – DTE20 (Unibus Interrupt Control) [ KL-10D ]
M8946 – Unknown
M8951 – Unknown
M920 – U – UNIBUS connector
M930 X 5 – U – Bus terminator
M9312 – U – Bootstrap terminator
M9396 – Unknown
M935 X 2 – OMNIBUS bridge
M981 – Unknown
M9970 – U – M997, H854 Facing Edge


microRSX-11 RX50 distribution

microRSX-11 is a expanded subset of RSX-11/M plus and was targetted at the microPDP-11 family of machines. Here is an archive of a distribution set of RX50 floppies I was recently given:

Image Name Label Description
URSX1INS.DSK MICRO/RSX V1 RX50 INSTALL (BL-Z022A-BC)
URSX1OS1.DSK MICRO/RSX V1 RX50 1/6 (BL-Z023A-BC)
URSX1OS2.DSK MICRO/RSX V1 RX50 2/6 (BL-Z024A-BC)
URSX1OS3.DSK MICRO/RSX V1 RX50 3/6 (BL-Z025A-BC)
URSX1OS4.DSK MICRO/RSX V1 RX50 4/6 (BL-Z026A-BC)
URSX1OS5.DSK MICRO/RSX V1 RX50 5/6 (BL-Z027A-BC)
URSX1OS6.DSK MICRO/RSX V1 RX50 6/6 (BL-Z028A-BC)
URSX1HEL.DSK MICRO/RSX V1 RX50 HELP (BL-Z029A-BC)
URSX1ERL.DSK MICRO/RSX V1 RX50 ERROR LOGGING (BL-Z030A-BC)
URSX1AP1.DSK MICRO/RSX ADV PRG V1 RX50 1/5 (BL-Z031A-BC)
URSX1AP2.DSK MICRO/RSX ADV PRG V1 RX50 2/5 (BL-Z032A-BC)
URSX1AP3.DSK MICRO/RSX ADV PRG V1 RX50 3/5 (BL-Z033A-BC)
URSX1AP4.DSK MICRO/RSX ADV PRG V1 RX50 4/5 (BL-Z034A-BC)
URSX1AP5.DSK MICRO/RSX ADV PRG V1 RX50 5/5 (BL-Z034A-BC)

RT-11 RX50 Disk Images

In my missing to archive all software I have for my PDP-11, I’ve spent some time working through my RX50 disks. Here are the results of my labours

I archived them using John Wilsons excellent PUTR utility using a PC fitted with a 5.25″ floppy drive (as drive B:). Here is the process I used:

  • Start up PUTR
  • Mount the RX50 in foreign mode with:MOUNT B: /FOREIGN /RX50
  • Then for each floppy:COPY/DEV/FILE B: [imagename]

Here are the initial set of disk images I have created. I’ve not had a chance to look at them in detail, but there looks like there is plenty of stuff that is of interested to the general community:

Image Name Label Description
KERMIT.DSK RT11 KERMIT
RT11-XM.DSK BOOTABLE RTXM WITHOUT PM
CZFNAG0.DSK CZFNAG0 Micro-11 formtr RX50
MINC-FOR.DSK MINC FORTRAN
LANGUAGES.DSK LANGUAGES MASTER – 2-MAR-89
FORTRAN.DSK FORTRAN IV KIT
FORTOTS.DSK FORTRAN IV OTS KIT
DUNGEON1.DSK DUNGEON 1/2
DUNGEON2.DSK DUNGEON 2/2
CAVE.DSK CAVE
CAVE2.DSK CAVE (prob a copy of CAVE.DSK)
FLGHTSIM.DSK REGIS FLIGHT SIM
GAMES01.DSK GAMES .SAV(CHESS) .BAS
GAMES02.DSK BAS/FOR GAMES
GAMES03.DSK BASIC GAMES 1
GAMES04.DSK GAMES – SPACE INV., AIRCRAFT, CHESS
GAMES05.DSK GAMES – BACKUP 1
GAMES06.DSK GAMES – BACKUP 2
GAMES07.DSK BASIC GAMES
GAMES08.DSK BASIC GAMES (bad blocks during copy)
GAMES09.DSK WORKING GAMES
DECODE.DSK DECODE – .SAV FILE DISSEMBLER
TXTWRT.DSK TXTWRT – SCREEN OUTPUT EDITOR
RUNOFF.DSK RTCALL, RUNOFF
DD-DRV.DSK V5.4 DD DRIVER
MONITOR.DSK MONTOR UTILITIES – LOGICA, RMOM, TABLES
VARIOUS0.DSK CLOCK, FOCAL, SHEET
INDSUBDR.DSK IND_SUBDIR
MJCLOK.DSK MJCLOK
SHEET.DSK SHEET 3.0
TAG.DSK TAG
CACHE.DSK CACHE
UCLPLUS.DSK UCL+
LDUSR.DSK LD USER
SPELL.DSK SPELL
ASC.DSK ASC
SHEET2.DSK SHEET
SUBDIR.DSK SUBDIR
VARIOUS1.DSK FIND,SDIR
FONT.DSK FONT

Software Archiving

One of my main fears with my collection is loosing software over time as disks slowly decay. DEC media has proven amazingly resilient with many of my disks well over 30 years old. The reality is though that they won’t last forever and so I’ve decided now is the time to start a program of archiving them all to modern media.

I have the following to work my way through:

  • 40 RL02 packs
  • 24 RL01 packs
  • ~250 RX01 and RX02 floppies
  • ~100 RX50s
  • 24 TU56 tapes
  • ~100 TU58 tapes
  • 28 RK05 packs

Software wise, these will yield a mixture of XXDP, RT-11, RSX-11/M, RSX-11/M PLUS, and Unix software. As I complete them I will put any useful finds online to download for others to use.


DECWriter III Rebuild

00001.jpgTo give a nice period console to my 11’s I decided to have a crack at rebuilding the DECWriter III that has sat forgotten in the corner of my office for the last few months. The terminal was in a pretty mucky state, so I started with a deep clean using solvent based cleaning fluids. This quickly took of the layers of muck that had built up and revealed a very clean terminal.

The lid was then removed and the innards cleaned out. All the sound proofing foam was removed as it had started to turn to mush. A couple of the mounting pillars which hold the lid to the case have sheered off and so these will need to be glued back into place.

With the terminal cleaned, power was cautiously applied and the voltages confirmed to be correct.

Having confirmed the power was ok, paper was loaded and a serial loop back plugged into the serial port and the terminal was powered back on. Typing on the keyboard resulted in activity from the print head although no actual print (the ribbon was dried out). I then help SETUP and T together to put the console into test print mode and the head went into over overdrive and slowly but surely the ribbon started to deliver ink. The print quality is fairly good, although the first row appears to be dead.

Next on the todo list is to fit a new ribbon (I have 4 on the way) and see if I can restore line 1 to life.


New Arrivals: TC11 + TU56, TU55s and an 11/40

Some highly treasured items have just joined my collection, a TC11 and TU56 together with a further 3 TU55 drives and parts to build up a second 11/40.

I plan to use the TC11 and TU56 on my forthcoming 11/40 rebuild.

TC11

TC11

TU55

TU55

TU55

TU55

TU55

TU55


Adventures in LSI land

Over the last couple of weeks I have spent most of my available ‘PDP’ time bringing rebuilding as many of my QBUS machines as I can.

This has largely been a painless process, largely aided by the set of LSI-11 maintenance manuals I recently got hold of. Compared with their large UNIBUS brothers, the QBUS family of machines are relatively easy to rebuild as the backplanes are much simpler with no wirewrap and much more generalistic (there are no slots dedicated to a particular peripheral). Often its just a case of planning the board layout using a simple set of rules to determine their placement and all fires up well. When it doesn’t it is often just a case of reducing the setup to a simple working configuration and building it back up from there.

For anyone attempting to rebuild a QBUS machines, here are my tips:

  1. If you machine is already populated with boards, carefully take note of the locations of each board in your system and then strip all the boards out.
  2. Carefully clean/vacuum the chassis to remove any crud/hair/dust that has built up within it
  3. Apply power to the empty chassis, for 5 seconds, 10 seconds, 30 seconds, 1 minute to confirm the power supply is working. Check the fans are all spinning whilst doing this.
  4. With a multimeter, check all the DC voltages coming from the PSU
  5. If all is well, start with a simple setup of a CPU, memory, SLU and bootstrap. If you are lucky you may have a CPU board with onboard bootstrap and SLU (KDF-11B or KDJ-11B), in which case you will just have to insert 2 cards.
  6. Hook up a console and setup it to the appropriate baud rate for your SLU (9600 baud is the most common if you don’t know this), set your HALT switch to the down (halt) position.
  7. Power on the machine. If all goes well you should see:173000
    @
  8. This is an ODT prompt, an interactive utility that allows you to toggle code into memory and start the CPU running.
  9. Confirm you can write to memory by depositing some values and reading them back. For example:@1000/ 0000000 123123
    @1000/ 123123

    In the above, the bolder characters are what you need to type. This deposited the value 123123 into location 1000 and then read it back (confirming that the value we had deposited had correctly been stored into memory). Try it for a few locations

  10. If all is well, move the HALT switch to the up position (non-HALTED) and hit restart. If all is well, the machine should now start its bootstrap. If you have a bootstrap board or a KDF-11B you should see a "START ?" prompt. If you have a KDJ-11B, you should see a countdown as it steps through its diagnostics before giving you a menu of options.
  11. If this fails, then you need to look at the status LEDs on your various boards to get clues as to the nature of the failure. These vary from CPU to CPU:
    • KDJ-11B: This has the best diagnostic output in the form of a seven segment display. This should give you a hex number detailing the nature of the problem. If you refer to uPDP-11 documention you should find a table of codes detailing the nature of the fault.
    • KDJ-11A: 4 LEDs on the CPU card should give you a rough indication of the fault
    • KDF-11B: 4 LEDS on CPU

Latest Arrivals

A few more new machines arrived this week and some might fine additions they were two:

  • PDP-11/70 in H960, alas no memory at present
  • PDP-11/70 in a tallboy corporate cabinet
  • PDP-8/E, OEM branded
  • Dec Professional 380
  • 2 x Decmate IIIs
  • TSZ07 SCSI Mag tape drive
  • PDP-11/05 (5.25″ version), missing its front graphics (I guess swiped by a trophy hunter)

HOWTO: Create a MSCP MAP in RT-11

RT-11 is restricted to each devices is limited to 32MB of usable space. This is due to the filesystem using a 16-bit field to represent blocks, giving a maximum of 65535 x 512 byte blocks.

For larger MSCP disks, such as RD53, RD54, RA series and third party disks, all is not lost. Within RT-11 a mechanism exists to partition the disk into multiple logical drives allowing you to access the remaining disk space.

To achieve this, issue the commands:

SET DU[id] DEVICE=[unit]
SET DU[id] PART=[part]
SET DU[id] PORT=[port]

Where:

  • id is the numerical number of the DU devices you wish to map onto your device. This is in the range 0-7 on versions of RT-11 prior to 5.4
  • unit is the unit number of the device you wish to map onto the DU device.
  • part is the ‘partition’ number within the device you wish to map. So PART-0 would be the first 32MB of the disk, PART=1 would be the next 32MB and so on
  • port is the MSCP device number. If you only have a single MSCP controller on you machine this would be PORT=0

So for example, if you have  an RD54 currently on DU0, you could access the remaining space with the commands:

SET DU1 PORT=0
SET DU1 DEVICE=0
SET DU1 PART=1

SET DU2 PORT=0
SET DU2 DEVICE=0
SET DU2 PART=2

SET DU3 PORT=0
SET DU2 DEVICE=0
SET DU2 PART=3

You will now have 4 devices, DU0,1,2,3 each with 32MB of space.

Whilst this is very useful, there is a bit of a sting in the tail in that the DU id range is only 0-7 on all but the most recent versions of RT-11. This limits you to a maximum of 8 32MB devices, which whilst a huge amount of space by PDP-11 standards, still doesn’t allow you to access all of the space on some of the more modern disks.


HOWTO: Create Logical Disks under RT-11

Logical disks are a convenient way of getting round the lack of a directory structure in RT-11. A logical disk is a file which can be mounted as a virtual storage device.

To make a logical disk:

  1. Create an empty file to act as your logical disk:

    CREATE [filename]/ALLOCATE:[number of blocks]

    For example:
    CREATE GAMES.DSK/ALLOCATE:500

  2. Mount the file as a logic disk:

    MOUNT LD[number]: [filename]

    For example:
    MOUNT LD0: GAMES.DSK

  3. Initialize the new logical disk:

    INITIALIZE LD[number]:

    For example:
    INITIALIZE LD0:

  4. You should now have a working logical disk. Try typing DIR LD[number]: to confirm. You can now subsequently remount this disk at any time using the MOUNT command from step 2.

uPDP-11/83 rebuild begins

For some light relief from rebuilding the more complicated UNIBUS machines, I decided to take a break and tackle something a bit simpler, a QBUS based uPDP-11. I have a few uPDP (BA-23) chassis lying around so I picked one of these as the basis for the machine.

As the machine had only left service a mere 5 years ago, I thought I would take a chance and test the power supply the evil way. With all the boards removed, I powered on. All started up well and I confirmed the correct voltages with a multimeter. So far so good

Before I started installing cards I took a break to download the required manuals from Bitsavers (http://www.bitsavers.org) and was deeply engrossed when my nose picked up the first warning signs that all was not as it should be. Sure enough, I looked up to find smoke streaming out of the back of the PSU.

I quickly removed the power and confirmed there wasn’t an actual fire inside the machine. After airing the machine for 10 minutes to rid it of the worsed of the smell, I removed the power supply and opened it up. I was met with an impressive scene of fluff, grease and a variety of insect remains but surprisingly no signs of damage or exploded capacitors.

After a thorough clean, I returned the power supply to the chassis and tentatively put the power cable back into the chassis. With fire extinguisher on hand I waited to see if the smoke returned. After 10 minutes and no smoke, I decided to risk a power on and eureka, all came up well and voltages were still as they should be.

So I was really rather lucky here, but I guess the moral of the story is never power on an old machine without first thoroughly inspecting it.


The collection gets a new home

00002.jpgFor the last couple of years my collection of old computers has had to be stored in a barn (thankfully a dry one). Now my children are finally starting to grow up (they are now 5 and 3) and my business is running smoothly, I can finally turn my attentions back to my beloved old iron.

I’ve therefore taken the plunge and set aside a spare room I have at my office to housing the collection. The challenge now is to move everything over (and there is a lot) and start to catalogue the contents of the numerous boxes of parts I’ve accumlated over the last few years.

My aims for the new home are to:

  • Provide room for 8 racks work of equipment
  • Have two desks, one for repair/renovation work and another to house terminals for accessing the machines
  • Have racking sufficient to store all of my spare parts and software media.
  • Keep it all neat and tidy!

The rooms is roughly 300 sqr ft so fitting in the 8 racks shouldn’t be a problem. I’ve decided to place a row of 4 against the back wall with no rear access and a further row of 4 in the main body of the room . I suspect I will come to regret the lack of rear access on the first row but the room is too small to allow it. The saving grace should be that the racks are all on casters and so I can wheel them out to gain rear access when needed.

The storage racking is heavy duty racking that I purchased from Big Dug (http://www.bigdug.co.uk)
. I’m a big fan of their racking having previously used it to store large Dell servers used by my business. Their budget shelving units can take between up to 150kg per shelf, are easy to assemble (boltless), and are a great price. Blows away anything you can get from the local DIY store.

I retrieved all of the machines and parts from my barn in a LWB Transit. To save my back from taking too much damage, I got hold of a set of ramps from my neighbours business (http://www.rampco.co.uk). These proved invaluable as racks could be simply pushed up the ramps straight onto the van. Previously I have had to tilt the racks over and slide them onto the van which leads to damage to the myself and the machines.

Once everything was transported to its new home, I sorted all the loosely defined boxes of parts. This was a most satisfying process as to be frank I had no idea of what I actually had and lots of exciting goodies turned up.

So now its all in its new home and sorted, I have no excuse any more to put of restoring everything to working order.


The 11/05 returns to life

Over the last few days I’ve returned one of my PDP-11/05s to life.

These are the steps I went through to get it back to the land of the living.

A general clean of the interior which had become full of the remains of its foam sound insulation. I removed this with a combination of gentle brushing, a vacuum cleaner and an air gun.

As the machine had been powered successfully within the last few years I decided to take the risk of not reforming the capacitors and powered it up. Thankfully this paid off and the machine sprang back into life.

Fairly quickly it became obvious that neither of the fans were in particuarly good shape, one being completely stalled and giving of a loud electrical hum and the other requiring jump starting with a pencils to get going. I removed both of these and replaced them with spares I had lying around. I intent to replace these with some brand new ones from Farnell

Now when powered up, all sounds well. I checked voltage levels with a multimeter and everything was spot on.

Next up I confirmed that memory was working by depositing all 0’s and all 1’s into various memory locations and read them back to confirm all was as it should be.

Having confirmed the memory was correctly functioning, I toggled in a test program to output a stream of characters to the console, hooked up a terminal and hit run. A stream of characters flowed onto the terminal screen confirming that the CPU was correctly operating.

Next up will be to hook up an RX01 and boot into RT-11.


Inventory: 3rd party QBUS cards

I have the following 3rd part QBUS controllers:

  • Emulex QT13 – Tape controller
  • Emulex QD21 (4 off) – ESDI disk controller – Emulates MSCP
  • Emulex QD32 – SMB-E controller – Emulates MSCP
  • Emulex CS09 – 16 port serial – emulates DHV11
  • Emulex SC03 – SMD controller – emulates RM11/RM03
  • Emulex TC02 – Tape controller (Pertec) emulates TS11
  • Emulex CS02 – 16 line RS422 controller – emulates DHV11
  • Spectra Logic 15/25 – SMB controller
  • Dilog DQ3256 – SMB controller
  • Dilog DQ130 – Pertec tape (TS11 emulation)
  • Dilog DQ132 – Pertec tape (TS11 emulation)
  • Dilog DQ142 – Pertec tape (TS11 emulation)
  • SCD-RQD11/EC – Unknown poss ESDI

Building an RT-11 tape for a TU58 emulator

Having successfully compiled up the TU58 emulator (see my earlier post) and booted it into XXDP on my PDP11/23+, the next step is to build up a RT11 tape.

After a read through of Will Kranz’s article I decided to opt for an oversized tape image (10MB) using Will’s modified TU58 (dd.sys) driver. The standard TU58 is only 256KB is size and this larger capacity should give plenty of space for applications.

Read the full article »


Compiling up a TU58 emulator under Linux

As part of my mission to build a general purpose storage server to allow diskless PDP’s to once again run real software, I have initially been concentrating on compiling up a TU58 emulator.

The TU58 is an ideal first device to emulate as its only requirement of the PDP-11 is a spare serial port which the vast majority of machines should be able to offer.

Read the full article »


Inventory: QBUS Cards

I have the following spare QBUS cards in my collection:

  • M3104 (10 off) – DHV11
  • M3106 (4 off) – DZQ11-M 4 line serial
  • M3107 -(6 off) – DHQ11-M 8 line serial
  • M7193 (2 off) – DRQ11-CA DMA interface, 16-bit
  • M7164 – KDA50 – Qbus SDI disk adapter, Q22 (1 of 2)
  • M7165 – KDA50 – Qbus SDI disk adapter, Q22 (2 of 2)
  • M7500 (2 off) – KMV1A-M Programmable Communications Controller
  • M7504 – DEQNA-M Ethernet
  • M7513 (4 off) – RQDX extender for RQDX2/3
  • M7516 – DELQA-M Ethernet interface
  • M7546 (2 off) – TQK50 TK50 controller
  • M7549 (2 off) – Alternate buffer DMA interface for Q22 bus
  • M7555 (9 off) – RQDX3 controller
  • M7692 – Unknown – looks like a video card of some sort
  • M7651 – DRV11 18/22-bit DMA general purpose parallel interface
  • M7769 – KFQSA-S Storage Adapter (DSSI Disk Interface)
  • M7946 – RXV11 – RX01 controller
  • M7948 – DRV11-P foundation module
  • M7957 (2 off) – DZV11-M 4-line double-buffered async EIA MUX
  • M8012 (2 off) – BDV11 – Bootstrap terminator
  • M8013 – RLV11 1/2 – RL01 controller
  • M8014 – RLV11 2/2 – RL01 controller
  • M8017 – DLV11-E/EC Single-line async control module
  • M8020 – DPV11-M Single-line serial EIA sync interface
  • M8027 – LPV11 Printer controller
  • M8029 (2 off)- RXV21 RX02 Controller
  • M8043 (10 off) – DLV11-J quad serial
  • M8047 – MXV11-AC – 2xSLUs, 16KW memory, Boot ROMs
  • M8061 (4 off) – RLV21 RL01/02 controller
  • M8067 (2 off) – MSV11-PL – 512KB MOS memory
  • M8186 (4 off) – KDF11 11/23 CPU
  • M8189 – KDF11 11/23+ CPU
  • M8190 (3 off) – KDJ11-BB 11/73 CPU
  • M8192 (3 off) – KDJ11 11/73 CPU
  • M8578 – MRV11-D Bootstrap
  • M8639-YB (6 off) – RQDX2 controller
  • M9047 (2 off) – Grant continuity
  • M9058 (5 off) – Distribution/adapter/buffer board for RQDX1/2/3
  • M9400-YB – Terminator (TEV11)
  • M9404 (4 off) – Cable connector for expansion box
  • M9405 (3 off) – Cable connector for expansion box

As ever, contact me if you want to trade any of these with me.