VOGONS


First post, by myne

User metadata
Rank Member
Rank
Member

Most of you are probably already aware that intel wants to drop the legacy 16/32bit modes from future CPUs.
https://www.intel.com/content/www/us/en/devel … chitecture.html

I think this could mark a rare opportunity, if a community like Vogons makes a group submission to request intel to "enshrine" a 16/32bit machine on a PCIE card.

This is by no means a new idea.
PCs on a card have existed almost since the day dot. Apple Macs had addin cards with x86s on them, Sun workstations did too.
Sun: https://en.wikipedia.org/wiki/SunPCi
Apple: https://wiki.preterhuman.net/Apple_DOS_Compatibility_Card

Outside of the "dos/windows as an addon card" market, Single Board Computers have existed since forever too.
PC104 is one example: https://en.wikipedia.org/wiki/PC/104
PICMG is too https://en.wikipedia.org/wiki/PICMG
Here's an example of a P4 on a PICMG card https://adek.com/product/IB-820H

Anyway, you get that this isn't new.

What I am suggesting is that we collectively request intel to build a chip which would be basically a 100% end-to-end compatible 8/16/32bit computer for legacy applications including the requirements of Industrial SBCs and retro.
Ideally it would be 100% compatible with anything the gaming retro community, or industrial users need.
The production run of the... likely SOC would likely be over several years, possibly decades so it's important to get it right the first time.

Requirements
1) Intellectual property agreements.
2) Compatible with all versions of MSDOS and 32bit windows.
3) Hardware compatible with existing, often ancient drivers with minimal (preferably no) requirement for new drivers.
4) The broadest possible hardware compatibility - ie, the selected hardware must be compatible with all known software from the last Windows 10 32bit back to early DOS.
5) More or less "just take the existing chip designs and build a new System On Chip (SOC) with minimal reworking"

Other notes/ideals
* Modernish but not cutting edge process node (eg 14nm)
* Clock speeds "negotiable". ie, the clock speed of the original device is not likely to be a limit on a more modern process node.
* Accessible via the PCIE bus to main PC, but also has some external ports.
* Presumption is that Linux and other OSs would work too as long as the hardware supported all of the Windows variants.

1) Intellectual property
Intel has the majority of the hardware IP required to do this, but others would be required too.
For starters, this would go nowhere if Microsoft flat out refused to offer an "unsupported, but legal licence to run their 8/16/32bit back catalogue." I suspect they could be convinced for historical reasons.
Nvidia is the next big player. They hold the IP for Voodoo graphics, and of course their own GPUs.
Creative is likely required too. As far as I am aware, the SB16 is the only sound card with broad support across the generations albeit some modifications may be required for SBpro etc.
Possibly Winbond for full ISA support. Eg W83628F

CPU requirements:
* 32bit only (no 64)
* Gate A20 for 8bit (removed in 2008)
* Execute Disable bit for Win10 32bit
* Optional dual core

Chipset requirements
* Chipset with Windows 9x and up drivers
* 4gb ram capable
* AGP, PCI, ISA, IDE, SATA

CPU Suggestion: Pentium M Yonah core derivative.
https://ark.intel.com/content/www/us/en/ark/p … 33-mhz-fsb.html
Chipset suggestion: Intel "Springdale" i875P derivative + ICH5 derivative.
https://www.intel.com/content/dam/doc/datashe … t-datasheet.pdf
https://ark.intel.com/content/www/us/en/ark/p … controller.html
Special note: Chipset likely to require updating/or bridging to new DDR standard, eg DDR4.

Video requirements.
* Broad 2d compatibility (VESA modes?)
* Capable of early 3d games, and later 32bit games.
Suggestion: Hit Nvidia up for their Voodoo IP, and the Geforce 7 series.

Here is where I am a bit unclear and will need input.
Is the Voodoo3 the most compatible of the Voodoos? Ie, DOS+9x?
Would it be appropriate for the voodoo to hang off the "pci bus", and the GF7 off the "AGP" bus. (in quotes because ideally it would all be one single chip SOC).
Can Voodoos share main memory?
If you assume modern DDR, and AGP 8x is more or less just a bus protocol and not necessarily a clock standard, is there any reason not to share the main memory?

Sound requirements.
SB16?
The ICH5 has AC97, but I figure SB16 is more compatible.

Storage requirement:
ICH5 IDE > SDcard?

Other thoughts
I realise I said Intel here and haven't mentioned AMD. I figured it would be a bit easier for Intel to wrangle all the stakeholders.
I would imagine this to be a fairly small chip on a modern node.
The entire SOC in my mind would be about the size of an Atom SOC, and sit on a 1x PCIe lane's 75w comfortably.
I expect it would be compatible with every 8/16/32bit OS and existing drivers.
Again, clock speeds would be "negotiable" as it were. It wouldn't be unreasonable to expect a potential for 3ghz - which means things like the Geforce 7 derivative could probably be a lower end model clocked up.
Same goes for the Voodoo ?3?
This also means it should be possible to implement bios level "compatibility speeds" for speed sensitive software. eg, a real 4.7mhz equivalent mode (I wonder if it's possible for Virtual86 mode to trigger it automatically?).
IO ports... I haven't thought too much about, but I suppose the basics of HDMI, LAN, sound, and some sort of bios configurable(or automatic) emulation modes for USB ports would be possible. eg USB1=PS2 KB, USB2=PS2 mouse, USB3="gameport joystick", USB4="storage controller".
Theoretically, though this was designed as an add-in card, there's no logical reason it couldn't run standalone since it would have its own ports too.
I don't really know how the historical addin cards above got their IO to the host. I assume the host read/wrote its memory directly over DMA. I'd hope they didn't need drivers on the card to do it. Drivers on the host is fine.
Ideally the bios, or at least the modules would be open sourced.

Your thoughts?
Do you think it might be possible to get Intel to do it? They're pretty keen to make 64bit only cores.
Do you think Microsoft, Nvidia, Creative, and others would cheaply licence their IP?

Attachments

  • 32bit PC block diagram.jpg
    Filename
    32bit PC block diagram.jpg
    File size
    104.72 KiB
    Views
    1336 views
    File comment
    SOC block diagram
    File license
    Public domain

Things I built:
Mechwarrior 2 installer for Windows 10/11 Re: A comprehensive guide to install and play MechWarrior 2 on new versions on Windows.
Dos+Windows 3.11 auto-install iso template (for vmware)
Script to backup Win9x\ME drivers from a working install

Reply 3 of 34, by dionb

User metadata
Rank l33t++
Rank
l33t++
myne wrote on 2024-05-07, 08:58:
Most of you are probably already aware that intel wants to drop the legacy 16/32bit modes from future CPUs. https://www.intel.co […]
Show full quote

Most of you are probably already aware that intel wants to drop the legacy 16/32bit modes from future CPUs.
https://www.intel.com/content/www/us/en/devel … chitecture.html

I think this could mark a rare opportunity, if a community like Vogons makes a group submission to request intel to "enshrine" a 16/32bit machine on a PCIE card.
[...]

*huge list of requirements and work needed from multiple corporate parties*

Nice idea.

Now get real. The question to ask in law (and given all the IP stuff here, lawyers will be involved) is cui bono?. Who stands to gain from this? Or rather, what do the companies involved stand to gain?

You're proposing a very big ask in terms of giving things away, in particular with regards to IP, and that will involve a lot of work. Why would Intel do this? What do they stand to gain versus anything else that their engineers and lawyers could be doing with that time? And if someone has to pay them, who does? Also consider that the IP in a late 32b CPU is far more than just the x86 and IA-32 instruction set. A lot of that stuff is still in use in current designs, even if IA-32 is dropped.

The only recent parallel I can think of where something like this actually worked was the birth of the Raspberry Pi. That was an internal project at Broadcom, pushed by a couple of passionate employees who saw the company was sitting on a pile of unused SoCs from a failed Smartphone tender and proposed using their own time & effort to do something more useful than just binning them. It very specifically did not involve giving away any IP, with an all-new open designed PCB on the one hand and a big binary blob for all the custom code relating to the SoC's functions over and above a generic ARM core.

So compare the two:
- internal push vs external request
- no IP tranfer vs extensive IP transfer/licensing/waiver needed
- re-use of existing core hardware vs need to design new stuff ('updated to DDR4')
- really simple, legacy-free PCB vs complex, explicitly legacy-rich PCB
- strong emphasis on low cost, low risk vs kitchen-sink design
- single vendor/IP holder involved vs multiple (Intel, nVidia, Creative, Winbond etc...)

Now, reflect on that for a minute.

So, still want do do something here? Do it smart. First up is consider who else is using 16b/32b software and has a commercial need to continue doing so. Then consider how the enthousiast community (who does not have significant financial weight) could freeload on that. Also consider that a lot of what you ask already exists. There are standalone PCIe to PCI bridges available and purchasable on AliExpress, complete with three 32b PCI slots and brackets. There are also low-end Intel designs which will retain 32b support for the forseeable future. Also, there is competition: if Intel drops this market segment, it's likely someone else will do the same. AMD already did in the past, with their Elan series prolonging 486 for a decade. The only things that are missing are not CPU related:
- the Voodoo support you want. This is the biggest challenge but might be within FPGA reach
- some form of PCIe to AGP implementation. This
- PCI to ISA bridge with DMA support on a PCI card, with a few ISA slots to fit under an uATX board in a regular ATX case (i.e. just like those PCIe to PCI sets you can buy for a few tens of EUR). I'm very surprised no one has done this yet, as more complex community projects have already been done.
- on the software side, WDM drivers for the bridges involved (if not already available) and for the storage component. This is non-trivial, but given open-source Linux drivers exist, it can at least in theory be done with presently available documentation.

So instead of asking Intel to do something highly unlikely, I'd suggest focusing on the things we as a community can do ourselves.

Reply 4 of 34, by DoZator

User metadata
Rank Member
Rank
Member

It's about time. The faster Intel removes backward compatibility, the faster people will start moving to AMD processors. I've been thinking about this for a while, but so far there's been no major cause for concern. And maybe the next system will be just the same AMD.

However, if AMD follows Intel in the same way , then we will have to seriously consider solutions from the Middle Kingdom. The Chinese have made great progress in import substitution today. They are increasingly expanding their competencies in microelectronics and are already shipping significant volumes of new processors for corporate clients that are quite competitive, it is worth noting. Therefore, it is possible that some of the Chinese processors will be able to completely replace the Intel and AMD processors that are no longer needed in the future.

Reply 5 of 34, by BitWrangler

User metadata
Rank l33t++
Rank
l33t++

If you wanna do a proof of concept, you could drop a Next 186 FPGA core into one of these puppies FPGA found on PCI parallel card, possibilities??? ... which theoretically fits in the bare device, but not sure how much will be required to do the PCI interface.

Thing is... it all seems a bit pointless.

You can emulate in software. If it's a high performance mission critical 32bit app, it's likely been migrated to 64bit, if it's a low performance hunk of relict cretaceous era code, recent CPUs will be able to put it in a cycle accurate little sandbox. Doing things halfassed, like just a CPU on a card, give you all the disadvantages of emulation apart from raw CPU speed for basically in-cache code, and if you want it for old old stuff, you don't even need that.

Unicorn herding operations are proceeding, but all the totes of hens teeth and barrels of rocking horse poop give them plenty of hiding spots.

Reply 6 of 34, by BitWrangler

User metadata
Rank l33t++
Rank
l33t++
DoZator wrote on 2024-05-07, 14:11:

It's about time. The faster Intel removes backward compatibility, the faster people will start moving to AMD processors. I've been thinking about this for a while, but so far there's been no major cause for concern. And maybe the next system will be just the same AMD.

AMD already had their "go around" with this didn't they? Poor support in Zen 1 and 2 and brought it back with a vengeance in Zen 3... so they are customer responsive to such things.

Unicorn herding operations are proceeding, but all the totes of hens teeth and barrels of rocking horse poop give them plenty of hiding spots.

Reply 7 of 34, by myne

User metadata
Rank Member
Rank
Member

Despite the lack of positive feedback, I've updated the concept a little.
The CMI8330 is apparently more compatible than SB16.

Only 3 hardware IP vendors would be needed.
Intel, Nvidia, C-Media.

Estimated die area ~15mm2 (based on intel 14nm presentation 43,500,000T/mm2)

Attachments

Things I built:
Mechwarrior 2 installer for Windows 10/11 Re: A comprehensive guide to install and play MechWarrior 2 on new versions on Windows.
Dos+Windows 3.11 auto-install iso template (for vmware)
Script to backup Win9x\ME drivers from a working install

Reply 8 of 34, by MikeSG

User metadata
Rank Member
Rank
Member

What I've learned in life is if you really want something, but others may not, you have to make it yourself...

Select chips required, draw up schematics, make PCB, etc.

If you're afraid of "all 16/32bit cpus" disappearing, leaving all retro software unusable, there will always be older CPUs manufactured (new) to replace existing systems that cannot be changed/adapted.

Reply 9 of 34, by appiah4

User metadata
Rank l33t++
Rank
l33t++
MikeSG wrote on 2024-05-10, 08:16:

What I've learned in life is if you really want something, but others may not, you have to make it yourself...

Select chips required, draw up schematics, make PCB, etc.

If you're afraid of "all 16/32bit cpus" disappearing, leaving all retro software unusable, there will always be older CPUs manufactured (new) to replace existing systems that cannot be changed/adapted.

You do realize that there actually are ways to emulate 16/32 bit environments in software that make this seemingly outrageously expensive project rather pointless right?

Retronautics: A digital gallery of my retro computers, hardware and projects.

Reply 10 of 34, by douglar

User metadata
Rank Oldbie
Rank
Oldbie
appiah4 wrote on 2024-05-10, 08:50:

You do realize that there actually are ways to emulate 16/32 bit environments in software that make this seemingly outrageously expensive project rather pointless right?

And it's worth mentioning that with software virtualization, the bugs can get fixed in the next release and different legacy hardware quirks can be emulated with different switches.

With a hardware card? You just gave yourself a new set of legacy hardware quirks.

Reply 11 of 34, by DurplePurple

User metadata
Rank Newbie
Rank
Newbie

In regards to the IP around legacy x86 tech, aren't almost all of the licenses well and truly expired by now? As far as I know the "x86 license" stuff these days is mostly down to stuff like AMD64 and the modern instruction set extensions such as AVX and AVX2. Doesn't make a difference as far as modern processors go because even if another company had the capital and willingness to get into CPU design they're going to struggle without those kinds of features, but for folk like us that are focused only on the now-legacy features...well, obviously ask an actual IP lawyer first but in theory we should be fine to reverse engineer our own compatible designs to run on an FPGA or even figure out small volume production. (Which is surprisingly cheap for old nodes like between 130nm and 65nm which would be perfectly adequate for our use-case.)

Also, I'd suggest talking to AMD instead of nVidia for the graphics portion simply because the most important 3DFX IP (Glide API + Voodoo2 and Voodoo3 spec) was open sourced before the purchase and AMD already has everything else from the ATi purchase. (Keeping in mind apart from their own 2D chips ATi also purchased Tseng Labs in 1997) Not even getting into nVidia's general unwillingness to work with others even if they're profiting from the work from those others. (See also: Linux being huge in GPGPU and AIA but nVidia barely working with upstream.)

Reply 13 of 34, by VivienM

User metadata
Rank Oldbie
Rank
Oldbie
kingcake wrote on 2024-05-12, 03:20:

Even if they did kill 16/32 bit in modern CPUs, Intel will continue selling 32-bit x86 for embedded/industrial use until the bombs drop.

Could some of those somehow turn up in hobbyist retro projects?

Isn't that basically what those 'new' 386 laptops with that ALi SoC-type thing are doing?

Reply 14 of 34, by kingcake

User metadata
Rank Oldbie
Rank
Oldbie
VivienM wrote on 2024-05-12, 12:54:
kingcake wrote on 2024-05-12, 03:20:

Even if they did kill 16/32 bit in modern CPUs, Intel will continue selling 32-bit x86 for embedded/industrial use until the bombs drop.

Could some of those somehow turn up in hobbyist retro projects?

Isn't that basically what those 'new' 386 laptops with that ALi SoC-type thing are doing?

Intel has tried this several times, and hobbyists don't buy them. Intel had their Arduino competitor, the Galileo Development Boards. Which were based on Intel Quark SoCs. Quark is a P54c made using modern fabs. It was a massive failure.

https://en.wikipedia.org/wiki/Intel_Galileo

Reply 15 of 34, by VivienM

User metadata
Rank Oldbie
Rank
Oldbie
kingcake wrote on 2024-05-12, 15:30:
VivienM wrote on 2024-05-12, 12:54:
kingcake wrote on 2024-05-12, 03:20:

Even if they did kill 16/32 bit in modern CPUs, Intel will continue selling 32-bit x86 for embedded/industrial use until the bombs drop.

Could some of those somehow turn up in hobbyist retro projects?

Isn't that basically what those 'new' 386 laptops with that ALi SoC-type thing are doing?

Intel has tried this several times, and hobbyists don't buy them. Intel had their Arduino competitor, the Galileo Development Boards. Which were based on Intel Quark SoCs. Quark is a P54c made using modern fabs. It was a massive failure.

https://en.wikipedia.org/wiki/Intel_Galileo

Could you run 98SE with an ISA sound card on these? 😀

Reply 16 of 34, by kingcake

User metadata
Rank Oldbie
Rank
Oldbie
VivienM wrote on 2024-05-12, 16:38:
kingcake wrote on 2024-05-12, 15:30:
VivienM wrote on 2024-05-12, 12:54:

Could some of those somehow turn up in hobbyist retro projects?

Isn't that basically what those 'new' 386 laptops with that ALi SoC-type thing are doing?

Intel has tried this several times, and hobbyists don't buy them. Intel had their Arduino competitor, the Galileo Development Boards. Which were based on Intel Quark SoCs. Quark is a P54c made using modern fabs. It was a massive failure.

https://en.wikipedia.org/wiki/Intel_Galileo

Could you run 98SE with an ISA sound card on these? 😀

I don't know...but Quarks are pretty neat. 400MHz P54c with DDR3 and PCIe!

Reply 17 of 34, by BitWrangler

User metadata
Rank l33t++
Rank
l33t++

To my recollection, they cost more than Atom boards, which was a bit silly.

Unicorn herding operations are proceeding, but all the totes of hens teeth and barrels of rocking horse poop give them plenty of hiding spots.

Reply 18 of 34, by kingcake

User metadata
Rank Oldbie
Rank
Oldbie
BitWrangler wrote on 2024-05-12, 21:48:

To my recollection, they cost more than Atom boards, which was a bit silly.

Intel's market segment positioning was very bad.

A 400MHz p54c /w DDR3 RAM is crazy fast compared to the Arduino's 8/16MHz 8-bit Atmel 168/368, so Intel thought they could get Raspberry PI prices. However, they advertised them as being fully Arduino compatible with shields and code, so hobbyists thought they should be Arduino priced.

You can get Galileo boards NIB on ebay now for $20 all day long. If anyone is interested in embedded x86.

Reply 19 of 34, by Jo22

User metadata
Rank l33t++
Rank
l33t++

Sigh, I just wished intel would just leave the x86 market.
Just like Zilog had put the Z80 to rest after 50 years (production ended on an anniversary, essentially).

So it would be nice if Intel would let x86 rest in peace, at least. In dignity.
Making a clear cut and creating a new architecture under a new name would be wiser, more mature.

I mean, that's what the modernized "x86" actually is.
It's a Windows x64 only platform, with a bit of left over compatibility for running Win32 applications.
It's castrated, really. That's a term an intel developer of the original 8086 used to describe the 8088.

The irony is, that Windows x64 doesn't need it anymore, at all.
The x86 and x86-64 emulation component of Windows on ARM might be more elegant in the end.

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//