• Please review our updated Terms and Rules here

OS/8 running on a PDP-8/L with 8KW memory and a non-standard mass storage device.

daver2

10k Member
Joined
Jun 19, 2012
Messages
15,340
Location
UK - Worcester
Ok,

So, before I go off and re-invent the wheel (again); I thought I would post what I am planning to do so either (a) someone can tell me I am an idiot, (b) point me in the right direction at somewhere where this has been done or (c) at least come back and say it may be possible. So, here goes...

As you know - Marty and myself are constructing the wire-wrapped TTL computer known as the LD12. I have just developed a PCB to hold all of the IC's (this is currently away being fabricated). I am presently writing up the documentation...

Anyhow, I am on a business trip this week, and my thoughts got round to thinking about running OS/8 on it :)!

The machine I am building has 16 KW of SRAM - but (at the moment) no one has ever constructed a memory extension unit for it (so the machine is limited to 4 KW). I am part way through reconstructing the MC8-L circuitry from the PDP-8/L which would extend the memory capacity to 8 KW. I could add a further bit (pushing the total up to 16 KW) - but that will involve a few more SN7474 ICs - and I am trying to keep the IC count down to a minimum!

The LD12 had no facility for data break - so supporting a 'conventional' mass storage device is out of the question (e.g. TD8E or RK05). I was thinking about adding a simple 'polled' mass storage device of some description and writing my own (very simple) OS/8 device driver for it.

In people's opinion - would getting V3 of OS/8 running on an 8 KW machine that 'emulated' a PDP-8/L with a bespoke mass storage device be feasible?

I would imagine I would have to use the 'paper tape' distribution and write my own device driver to be added to the distribution to start with? The OS/8 documentation I have read for this aspect appears to be a bit scant though...

Any advice greatfully received.

Regards,

Dave
 
The RX8-E diskette controller for the RX01/RX02 diskette is a polled device. OS/8 can boot and run from it on an 8k machine.

Theoretically you could connect a DW8E-PC Omnibus Expansion Chassis to the Posibus on a PDP-8/L and put the RX8-E in the DW8E.

You could also boot and run OS/8 through a second serial port using a serial disk server emulating an RK05.
 
No good.

The interface uses single cycle data breaks to transfer the data to/from the PDP-8. The LD12 doesn't support data breaks, so the device driver will have to do that itself.

Dave
 
No good.

The interface uses single cycle data breaks to transfer the data to/from the PDP-8. The LD12 doesn't support data breaks, so the device driver will have to do that itself.

Dave

Not accurate. The RX8E/RX01 and RX28/RX02 use the same omnibus interface card M8357 which uses polling only. No data break (DMA) access is supported.

The interface card implements a pretty simple shift register design to send/receive data/commands to the physical drive. The OMNIBUS card has about 40 ICs total; the VT278 module does a similar interface in maybe half that many chips (does not require all the OMNIBUS transceivers as does the physical board).

I spend a lot of time with this implementing my RX02 emulator (which is a small interface card that attaches to an Arduino) so I can attest to its correctness.

Obviously the simplest approach would be just to add another serial port and use the serial disk software.

Don
 
Kyle,

I think that's the way to go... Need to add a second (fastish) serial port. Good job I left a spare 40 pin socket for a second UART!

Don,

I re-read the RK8E manual and I still read that it is talking about a single cycle break to perform (what I take to be) the actual sector transfer to/from core. Not had too much time tonight (I had to go out), but I will continue to read up more at the weekend.

Cheers guys,

Dave
 
I have just done a quick perusal of the OS/8 drivers before going to bed and see that they both use BSW - so I will have to modify that for my LD12 (emulating an 8/L instead of an 8/E).

Dave
 
Kyle,

I think that's the way to go... Need to add a second (fastish) serial port. Good job I left a spare 40 pin socket for a second UART!

Don,

I re-read the RK8E manual and I still read that it is talking about a single cycle break to perform (what I take to be) the actual sector transfer to/from core. Not had too much time tonight (I had to go out), but I will continue to read up more at the weekend.

Cheers guys,

Dave

Well, the RK8E (ie RK05 interface) IS a data-break aka DMA device. The RX8E/RX28 (ie, RX01/2 interface) IS NOT a data-break device, it is polled/interrupt driven data transfer.

So that would explain the confusion I suspect. RK and RX look very similar if you are speed reading...

That being said, using serialdisk to mimic an RK interface is probably the most efficient way to get a usable mass storage device on this project.
 
I have just done a quick perusal of the OS/8 drivers before going to bed and see that they both use BSW - so I will have to modify that for my LD12 (emulating an 8/L instead of an 8/E).

Interesting. We have an RX8E on the PDP-12 at the RICM, and it works OK. No BSW on the PDP-12 because it is really an 8/I.
 
Sorry,

I was referring to Kyle's serial disk drivers NOT the RK8E's drivers.

I'll checkout the RX interface when I get back from my business trip.

Dave
 
Does anyone know the whereabouts of the source code or listing file for the PDP-8/L 4K disc monitor program at all?

Google isn't my friend today :-(!

Dave
 
I'm WAY behind on this, but recently acquired the LD12-reimagined boards designed by Daver2. I'm trying to do as much pre-research as I can before committing to buy all the ICs and wirewrap sockets. The maintenance manual for the 8i (which the LD-12 is supposed to mimic) says memory can be extended to as much as 32k, non? ...16k for sure, but I thought my memory was 32k. Anyways, being able to run OS/8 would be a great end-goal for me and I was interested in knowing if it was already accomplished? If so, was the socket layout in Daver2's ReImagine-8 board sufficient to accommodate all the ICs?
 
I am still way behind as well. Still having to work for a living I am afraid. I was hoping to be retired by now and working on vintage stuff full time...

The LD12 does not have any ICs on it for the memory management necessary for anything over 4KW (yet). Although there is 16KW of SRAM fitted for that eventuality...

The two (2) address lines (A12 on pin 7 and A13 on pin 13) of the SRAM are bussed together and would be connected to 0V to give 4KW and then to the MMU logic to gain the extra fields by unwrapping one connection on each address line and re-wrapping.

I have added two (2) switches for both the DF and IF fields to the front panel for the future in the hope that we can host OS/8...

But that is another story...

I will add the necessary logic to my LOGISIM model to try it out (when I can get some time). I have sketched it out in my notebook. There should be sufficient spare DIL sites for the ICs on the PCB.

Dave
 
I have just refreshed my memory from my notes...

Rather than going mad, I was planning to add 8KW (1 extra 4KW to make 8KW in total).

There are no facility for adding data break devices to the LD12 (the logic is just not there) - so the plan was to use the second serial port as a 'mass storage' device.

Now the rub... OS/8 appears to support 8KW memory with a DECtape device and the 256 word ROM or 12KW memory.

Either way round - it will still require a modified bootstrap device driver.

I suppose the initial dumb question is "what is in the 256 words of ROM" and where does it live in the memory space? I assume it occupies part of the existing CORE memory space somewhere? I did find something about it a while ago - but that significant bit of information never made it into my notebook I am afraid. Otherwise I will have to go hunting again.

My initial thought was to get the 4KW DMS running without the memory extension, then work on the memory extension.

It would be good to add some EPROM to the machine as well, and a few other things - but that is the reason for the prototyping area; and the 'sea of DIL sockets' was to enable customisation - as per the original.

I will have to book some time off as leave and crack on with this...

Dave
 
Back
Top