• Please review our updated Terms and Rules here

Front Panel Emulation for an 11/73?

Oldcoder

Member
Joined
Feb 28, 2021
Messages
49
I have an 11/73 but it is in the more modern normal MicroPDP 11 case with a boring power on/off and 4 button (Restart, Writeprotect fixed disk, Halt, Ready) and has a boot EPROM.

I would like to attach a Front Panel emulation such as that used on the Obsolescence Guaranteed PiDP11 emulation. This emulates a PDP-11/70 on a Raspberry Pi but has a 2/3 front panel switch assembly. Is there such a thing as a QBUS interface board to a Frontpanel switch and lamp assembly, that I could modify to add an 'old world' Unibus like front panel to a more modern QBUS system?

Thanks

Peter

https://obsolescence.wixsite.com/obsolescence/pidp-11

https://gunkies.org/wiki/PDP-11/73
 
You could consider to build Joerg Hoppes Qprobe. And if you built the Qbone, you can add a lot of devices. That includes a software switch register. That switch register can be useful when you want to run older software. So this is not exactly a front panel, but I think it comes very close...

Regards, Roland
 
I would like to attach a Front Panel

Nothing in the J11 processor supports access to the internal registers that the original 11/70 front panel requires.

Also, old PDP-11 front panels are now collectors items. 11/70 panels now sell for almost $1000
 
Can you define what you mean by 'emulate'?

You could use a DRV11-J 64-bit parallel interface card and wire a load of LEDs and switches up yourself to give you a 'front panel'.

However, there is no internal microcode or firmware that would permit the use of the front panel per-se. You would have to write a program to do that yourself and execute it within the 11/73 to 'drive' the operation of the front panel.

Once a 'real' operating system was up and running on the 11/73 (e.g. RT-11) - it would know nothing about the front panel. However, you could write a small device driver that was invoked by a clock interrupt to (once again) simulate the operation of the front panel.

This is all 'doable'.

By adding an EPROM module (e.g. an MRV11D) and by setting the 11/73 to autostart the code within the EPROM - the emulated panel would be 'alive' from power-up. You would obviously have to arrange a mass storage bootstrap yourself if you wanted to boot an operating system (e.g. RT-11).

Food for thought.

Dave
 
By emulate I was hoping to have a say 2/3rd replica of a front panel with switches and LEDS that could be used to toggle in a simple bootstrap 'old-world' style as one might have done in the days of an 11/45 without the boot roms.

The PiDP11 has a real minature front panel connected to a Raspberry Pi emulating an 11/70. I was hoping to hi-jack the connections to the Pi or use the Pi to generate an Front Panel emulation that could be connected to the Qbus and would support FP functions and use DMA to load memory locations and control the run halt and register reads.

My 11/73 boots RT11 or RSX11M from either RX50 floppy or the RD hard drive (actually a reformatted IBM MFM drive on the RQDX3 controller) from boot ROMS.

It was meant to be a 'fun activity' boot the 11 old-world!

So from the comments it looks unlikely that I can get an old-world front panel to work on my 11/73 and the very high price tag of a real front panel. That replica is unlikely to work - no micro code.

The nearest would be to write an FP control loader into the boot prom.

All my experience other than in my youth starting the 11/45 single user from the front panel to boot adventure has been with later 11s with built in boot rom, indeed even the 11/45 had roms for the disk pack but the adventure was loaded via paper tape.

I sort of assumed that the Front Panel hardware did DMA access to the memory to deposit the code into memory.

I presume that my 11/23 would be no better at using a front panel.

Thanks

Peter
 
Had a brief look at the Blinkenbone and QProbe projects.

As I understand it the Blinkenbone is like the PiDP-11 a physical replica of a front panel connected to a PDP-11 emulator.

The Qprobe has some interest for LED status o/p - I presume that there is an RSX11M driver mod available to run the display in the idle task.

Is there a means to detach the LED display and make it remote from the Qbus card? My card cage is at the back of the Micro-PDP and so the LEDS would only be visible with the cover off when doing diagnostics. I would like the Frontpanel on top of my Micro-PDP.

Peter
 
>>> I presume that my 11/23 would be no better at using a front panel.

Correct.

The basic problem (as Al has previously mentioned) is that the CPU registers are buried within the J11 chip and cannot be directly accessed by external hardware. They can, however, be accessed via 'trickery and deceit' - but this still involves a 'program' to perform this magic.

>>> I sort of assumed that the Front Panel hardware did DMA access to the memory to deposit the code into memory.

I am afraid not. The 11/45 (for example) uses its own microcode to drive the front panel separate from the execution of the instruction set.

You can produce a QBUS card to perform DMA to access memory - but this still doesn't gain access to the CPUs internal register set.

As I stated in my earlier post - you could use Oscar's PiDP-11 11/70 front panel and interface that to your 11/23, 11/73 (or whatever) using the DRV11-J parallel interface and then develop some firmware to drive it. It will give you the 'look and feel' of the vintage front panel interface - but with a real machine under the hood rather than a Pi.

Dave
 
Had a brief look at the Blinkenbone and QProbe projects.

As I understand it the Blinkenbone is like the PiDP-11 a physical replica of a front panel connected to a PDP-11 emulator.

The Qprobe has some interest for LED status o/p - I presume that there is an RSX11M driver mod available to run the display in the idle task.

Is there a means to detach the LED display and make it remote from the Qbus card? My card cage is at the back of the Micro-PDP and so the LEDS would only be visible with the cover off when doing diagnostics. I would like the Frontpanel on top of my Micro-PDP.

Peter

Peter,
I can provide some info on the QProbe and the RSX11M idle pattern. The QProbe does display
the RSX11M idle pattern on a 11/73 but not on an 11/83 or 11/93 because they access memory
either on the PMI bus or on the CPU board.

One interesting quirk on this QProbe behavior and the 11/73 is that the CPU cache must be
active. If cache is disabled, then the pattern is not visible, so I believe that the 11/53 that is a J11
with cache disabled would not display it. Also, I don't think an 11/23 would display it. A key
function of the QProbes CPLDs is to demultiplex the data and address lines and latch them
separately. I think the cache function allows the data to be displayed long enough to create
a visible pattern.

Joerg designed the QProbe as a hydrid between his earlier UniProbe and some ideas from
the Display-11 from QB Technology. The Display-11 card came from Al Kossow who had one
on EBay a while back. The Display-11 used TTL components and did not have a logic analyzer
interface like the UniProbe or QProbe. The serial number on that Display-11 was 100009A
so I think there were not many ever made (maybe 9?).

Joerg and I have talked about the possibility of a modified QProbe where a pair of 34 pin
ribbon cables would connect to headers on a modified QProbe (logic analyzer connections
not needed) then route to a front panel that fits in a 5 1/4" floppy disk bay on the front
of a BA23 or BA123. The front panel would have the mating 34 pin headers to bring
the 60 LED signals and some common ground or +5V power.

The Qprobe uses very small LEDs that have to be carefully fitted into a 3D printed
holder. This allows all signals to be displayed in a dual width Q bus Card. It is a great
diagnostic tool but can't be seen with the case closed.

A slightly larger front panel perhaps a full height 5 1/4" bay could hold the 60 LEDs
and still have room for labels and maybe big LEDs for disk drive activity lights from the
QBone.

Also, I would rather see LED Segment Bars commonly used in VU meter applications
that would fit in 20 pin DIP sockets to make assembly easy. The face plate could still
be made from a piece of circuit board that takes advantage of the small labeling and square
hole cutting available from PCB fabricators. Some spacing of functional sections of
the display could be accomplished by leaving some LED segments dark.

I like you would love to have LED panel displays for my QBus systems. I have reannimated
a couple real PDP-11/70 consoles (one blue & white and later a purple & pink one)
with Joerg's Blinkenbone boards. If you are lucky enough to have real PDP-11 consoles
with blinken lights this is much easier than it once was when you had to either wire wrap
or create custom ribbon cables to interface with teh 3 40 pin connectors.

Oscar's great PiDP-11/70 put PDP-8 and PDP-11 Blinken lights in reach for everyone
but it would still be great to have something like it for real Qbus systems.

Best,
Mark Matlock
 
In general, front panels are not using DMA. It would potentially make them unusable when the CPU is halted, since there is no guarantee that DMA is even possible on a halted machine.

The J11 specifically, is actually running a console ODT microcode when halted, so it's actually doing a lot of stuff when halted, which is not at all exposed to the outside world.
But, in case you had your own serial port implementation, that looks like a DL11, you could in fact make this work as a front panel thingy. But it would still not the same general feel as an old-fashioned front panel, since the display register and other information shown on the front panel cannot be gotten on a running system. But for a halted CPU, it would be possible to fake it good enough. Just give the serial commands that the uODT expects, and interpret the answers, and use that to drive the front panel.

And with all that said, the display register actually to exist on a J11 based machine, and the low six bits are actually usually shown on a 2 digit 7-segment display. But this is again rather different than the old front panels.
 
As I stated in my earlier post - you could use Oscar's PiDP-11 11/70 front panel and interface that to your 11/23, 11/73 (or whatever) using the DRV11-J parallel interface and then develop some firmware to drive it. It will give you the 'look and feel' of the vintage front panel interface - but with a real machine under the hood rather than a Pi.
Depending on how close you want to be to 100% emulation, you can get the address and data bits to display from the J11's external bus. The DCJ11 doesn't expose the current processor mode or I/D status on its external pins, so you'll be missing all of that status*. You could also translate front panel switch codes into ODT serial commands to get things like deposit/examine to work. Probably the biggest missing feature will be the switch/display register at 17777570 - you won't be able to read the front panel switches or display the contents of that register on the front panel. That means no "idle job" display patterns, etc.

* I suppose if you wanted to go completely nuts, you could perform instruction-perfect DCJ11 emulation in lockstep with the real CPU using a software emulator or a gate array and display the information from that emulator on the front panel. At some point you probably have to wonder why you're doing this and whether it is just better to go with an emulator-only implementation and leave the real 11/73 system alone.

Also, the 11/70 front panel is only partially applicable to other CPU models. This article: http://retrocmp.com/pdp-11/pdp11gui/1170-console-panel describes the issues and limitations of making an emulated 11/70 front panel work with an emulated 11/23, 11/44 or 11/73. Even with access to the emulated 11/73's internal state (which you can't get from a real DCJ11 chip). functionality is limited.
 
Depending on how close you want to be to 100% emulation, you can get the address and data bits to display from the J11's external bus. The DCJ11 doesn't expose the current processor mode or I/D status on its external pins, so you'll be missing all of that status*. You could also translate front panel switch codes into ODT serial commands to get things like deposit/examine to work. Probably the biggest missing feature will be the switch/display register at 17777570 - you won't be able to read the front panel switches or display the contents of that register on the front panel. That means no "idle job" display patterns, etc.

Terry, you do know that the idle pattern is usually not done through the display register on any OS (that I am aware of), right?
It's commonly done through the WAIT instruction, which exposes R0 on the data bus.

But totally true in that you would not be able to read the switch register, and even though the J11 based CPU boards do have a display register for output, they just do the 6 low bits on a 2 digit 7-segment display. Which isn't nearly as much fun as the full display register in binary.
 
Terry,

Thanks - At first glance the retrocomp front panel article looks interesting, I'll give it a detailed read.

My main interests were:
Toggle in the bootstrap 'old-world'
Display light patterns as per all the old Sci-fy movies.
Run / halt the processor.

Any additional functionality would be a bonus.
Using the PiDP11 or other replica plus a simple program to drive console ODT looks to be an interesting start.


Peter
 
Back
Top