• Please review our updated Terms and Rules here

Using embedded micros for emulation/replacement of various I/O of classic computers

Dwight Elvey

Veteran Member
Joined
Jun 21, 2003
Messages
4,991
Location
Santa Cruz
Going Forth from the C of compile/load/debug cycles.

Say you want to run a PDP11 from your iPhone or what ever.
The ESP32 with WIFI can be a fun way to deal with such things. At the Maker Faire, Dr. Ting will run a workshop using the ESP32. It is not specific to classic computers but with a little imagination one can create various uses to be used with our clasic machines. If your going to the Maker Faire here in the Bay Area, this should be an interesting workshop.

Sunday 1:30 - 3:00pm - Zone 3
ESP32 WiFi Microcontroller Workshop
Chen-Hanson Ting
https://makerfaire.com/maker/entry/70167

Register at: $20
https://www.eventbrite.com/e/esp32-...-faire-bay-area-2019-registration-60628075205
 
The trend nowadays is using another and far more powerful processor as an I/O processor to the classic processors. I personally was not comfortable with this approach because now I have to write software for two different processors and debug the complex interactions between them. It seems unnecessarily complex. The other discomfort is explaining that approach to newbie (like my son) who wondered why handicapping a powerful modern processor to serve an old/slow processor, when the job can be done simpler and faster with the powerful modern processor alone. Newbie has no love for the classic processors so wouldn't understand the passions in resurrecting old processors, but I also can see the paradox of crippling a powerful modern processor to assist an old processor resulting in a complex, lower performing dual processor system. It does seem like a quixotic quest.
Bill
 
Most post-minicomputer stuff isn't terribly interesting. I can see how a young one might get bored.

Try emulating some of the really old hardware, say, an IBM 650 or 1620. That might tickle his curiosity.
 
Most post-minicomputer stuff isn't terribly interesting. I can see how a young one might get bored.

Try emulating some of the really old hardware, say, an IBM 650 or 1620. That might tickle his curiosity.

Why on an phone. Old machines were BIG. I want switches and lights. Done the SSEM/Baby in FPGA with real switches but VGA Display for CRT so I can carry it....

https://hackaday.com/2016/01/06/babybaby-a-1948-computer-on-an-fpga/

I would like to do a Ferranti Pegasus next.....

Pegasus_computer_front_console.jpg
 
It's not just the physical stuff. The thinking about instruction sets and representation was still evolving.

On the 1620, there's only one instruction format--and the representation is decimal. Very friendly stuff, once you get used to it. There are shortcomings that might be surprising--one of the reasons that Dijkstra hated the machine.
 
It's not just the physical stuff. The thinking about instruction sets and representation was still evolving.

On the 1620, there's only one instruction format--and the representation is decimal. Very friendly stuff, once you get used to it. There are shortcomings that might be surprising--one of the reasons that Dijkstra hated the machine.

I only every programmed a 1620 in Fortran, when I was 17/18 and was at college school. We did get to visit it once a term/semester and I was interested in an emulation. Trouble is you really need a real typewrite. I have a selectric io writer (not working too well) but was saving that for an 1130.

The Pegasus machine code is interesting. It was designed to be programmer friendly.
 
the paradox of crippling a powerful modern processor to assist an old processor resulting in a complex, lower performing dual processor system. It does seem like a quixotic quest.

I don't understand why there is almost no new software being written for older processors, after going to all of the trouble of getting them running again.

With all of the people hacking on PDP-11s, there are no new operating systems for it.
I would think after 20 years of people complaining that DEC OSs are encumbered, someone would just write a work-alike for RT-11, RSX or RSTS.
 
I only every programmed a 1620 in Fortran, when I was 17/18 and was at college school. We did get to visit it once a term/semester and I was interested in an emulation. Trouble is you really need a real typewrite. I have a selectric io writer (not working too well) but was saving that for an 1130.

Learning on the 1620 and other machines of the era usually started with machine code--IBM even had coding forms for that. Assembly/Autocoder/SPS was the next step; finally, you got to a higher-level language such as FORTRAN.

On the 1620 systems that I used, the typewriter was there, and could be handy, but programming was done with punched cards. Same with the 1130/1800 systems that I used. By the time you got to 7090 or S/360, you started with assembly of some sort, not absolute machine code.

That might seem quaint to a young person, whose first language is probably BASIC or C (or Python, or....)
 
I don't understand why there is almost no new software being written for older processors, after going to all of the trouble of getting them running again.

With all of the people hacking on PDP-11s, there are no new operating systems for it.
I would think after 20 years of people complaining that DEC OSs are encumbered, someone would just write a work-alike for RT-11, RSX or RSTS.

That is odd! especially when compared for the IBM/370 were lots of extra stuff has been written to try and add features present in VM/SP which is licenced and un-obtainable to the older VM370 which is Freeware yet all has to be done on emulation
 
I don't understand why there is almost no new software being written for older processors, after going to all of the trouble of getting them running again.

With all of the people hacking on PDP-11s, there are no new operating systems for it.
I would think after 20 years of people complaining that DEC OSs are encumbered, someone would just write a work-alike for RT-11, RSX or RSTS.

A new OS is no big deal, but getting absolute API compatibility with old applications is, particularly when said applications either lack source code or have undocumented "features". Consider the case with NT emulating MSDOS or Linux WINE emulating Windows. It's never 100%, In fact, software ISA emulators are far more successful at this--they simply emulate whatever hardware interface is needed and host the native OS.

Of course, you can write your own applications and use whatever API you like. Unix did this--and early Unix was no great shucks--it took years before a usable set of applications made it fit for general use.
 
With all of the people hacking on PDP-11s, there are no new operating systems for it..

Wouldn't Alan Cox' Fuzix qualify? There is at least a stub for a cpu-pdp11 in git.
https://github.com/EtchedPixels/FUZIX

But it does seem like most people running old iron seem to want to relive the glory days and run old software instead of doing something new.

A FreeRTOS port might be interesting, and should fit easily enough, since it can run on the AVR platform, which is essentially the same horsepower as at least a portion of the range of the 11.
 
Last edited:
The libraries build but it broke gcc and gnu binutils too much to proceed further. gcc appears to have been fixed but not yet binutils. In many ways it is not a good fit for the PDP anyway. One of the core assumptions Fuzix makes right now is that storage controllers are dumb. For home micros and retrobrew stuff this works well. None of them are capable of doing any meaningful work while doing hard disk I/O.

For most minis it's a bit of different story.
 
I am now pursuing this for the HP 98x5 series of computers after I was not able to get my 98035A clock interface to an operational state after the battery had leaked on it years before I got it. The problem with getting the 98035A working is the the clock chip used by HP appears to be repackaged TI watch chip with no datasheet available. It seems to have been damaged and will no longer drive the 32768 Hz crystal oscillator into oscillation, nor does it respond to the nanoprocessor "pressing" the buttons.

So rather than run through a series of old 98035A interfaces that may have suffered the same fate, I'm looking at using a Diligent Cora Z7 Zynq development board mounted on an interface board to the 98x5 I/O bus. The Arm processor can run Linux and theoretically emulate any of the processors, as well as new ones, with the FGPA handling the low level details of acting as a peripheral or even a bus snooper.
 
Back
Top