@dosnostalgic VAX/VMS circa 1978 used to boot with PDP-11 RSX-11M compatibility mode available and a fair chunk of the apps in the early VAX/VMS versions were RSX-11M apps running in compatibility mode.
The VAX-11 boxes supported PDP-11 instructions in hardware.
You could run your existing PDP-11 RSX-11M apps directly, too.
That all ended at VAX/VMS V4.0 (~1984), and with then-new VAX models after VAX 8600.
VAX 8600 was originally to be named VAX-11/790, but marketing marketed and dropped the -11 with the āarchitecture for the ā80sā.
PDP-11 RSX-11M compatibility mode became a separate product, and the PDP-11 instructions were emulated, and the -11 was dropped from VAX.
Technically, an LSI-11 console processor booted RT-11 from the 8ā console floppy which then booted the VAX-11/780 (organizationally within he hardware, the VAX was an enormous LSI-11 peripheral) which ran VAX and PDP-11 instructions and which could run simh emulator to emulate PDP-11 running RT-11. If the LSI-11 failedāas happened on a couple of occasionsāthe VAX could continue to run. Just not reboot.
The approach Apple used for migrations with Rosetta and Rosetta 2 was far smoother.
Yeah. Fun times. When it all worked.
There are shenanigans in newer boxes too, but theyāre usually somewhat better hidden.
#digitalequipmentcorporation #OpenVMS #VMS #VAX #PDP11 #RSX11 #RSX11M #RT11 #retrocomputers #retrocomputing #history
The approach Apple used for migrations with Rosetta and Rosetta 2 was far smoother.
NT had (16-bit) x86 emulation on non-x86 Windows version from the beginning (then DEC made 32-bit x86 support for NT Alpha). Nowadays ARM64 Windows runs both x86 and x64 programs.
@jernej__s @dosnostalgic Iām well aware of DECās FX!32. Running 32-bit apps built for cheaper 32-bit x86-32 hardware on pricy 64-bit hardware running 32-bit apps was a bravely doomed strategy, in retrospect. DEC couldnāt do 64-bit with FX!32 (joke: FX!64) because Microsoft couldnāt do 64-bit. (The 1999 Microsoft PDC in Denver describing how easy their planned 64-bit migration was to be was amusing, having then just gone through a 32- to 64-bit OS migration else-platform.)
DEC also had DECmigrate (VEST and TIE, and later AEST and TIE) for migrating apps from OpenVMS VAX to Alpha and from OpenVMS Alpha to Itanium. SimH (which Iāve coincidentally mentioned in a joke recently) works well, as does UTM.
Lots of other platforms gave have or have had emulators or translators.
Among its other weirdnesses, Itanium had a feedback-based translator for executables, which sorta-kinda fits here, to incorporate observed run-time behavior back into the existing executables. Basically, post-linking feedback tuning thst produced different executables. This as the compilers inherently lacked visibility into the run-time memory state and latencies of a particular Itanium processor, and had to guess. One name ror this stuff was OM, and its translatiin escaped me at the time.
Of what Iāve worked with for app (and not system) emulators, Rosetta was both the most transparent, and the most compatible.