VOGONS


First post, by Spyd

User metadata
Rank Newbie
Rank
Newbie

Some time ago, after some discussion with people about custom-made ISA cards for industrial machinery control, MS-DOS and solutions to replace those computers that are failing, I had an idea, but I don't know how much about its feasibility. So I'm going to throw it here and see what do you think about it.

The gist of it is making a PCB the size of a full-ATX motherboard, minus the size of an mini-ITX motherboard. If it's not clear enough, picture a PCB, with the size of an ATX motherboard but there's a "hole" in the size (and position) of an ITX motherboard.

On this new board, there would be PCI and 16bit ISA slots, ATX mounting holes, an ATX power connector, and a flex ribbon ending with a male PCIe connector.
You would install this PCB on an ATX case with a mini-ITX motherboard, and the flex cable would connect both boards.
On the PCB would be two chipsets and it's supporting passive components: a PCIe to PCI bridge (for example an ITE IT8892E or ITE IT8893E) to power the PCI slots, and a PCI to ISA bridge (for example the ITE IT8888F) to power the ISA slots.

The resulting contraption would be a modern computer with some PCI and ISA slots available. The ISA or PCI cards would install as if the motherboard had the slots itself, without the need for an external enclosure or risers or other inelegant solutions. Also, if the computer dies or you want to upgrade it, you can replace the mini-ITX motherboard, the rest of the PCI and ISA cards you can keep. The ITX motherboard doesn't have to have anything special, no TPM module connector, only a PCIe slot.

Windows (almost all versions) would not have any problems with the bridge chips, as (as far as I know) it has built-in drivers for both of them, so for compatibility, the problems would arise from not having drivers in the most modern versions of Windows for old PCI or ISA cards, but this is outside of the goal for this project. If the card shows on the device manager, it works. You have to provide the correct drivers for the card on your Windows version (if they exist). Also this being a software problem, I'm sure there would be people willing to "port" drivers for old cards to the latest Windows versions.

But from the perspective of trying to make this run on old OSs, specifically MS-DOS and "derivatives" (Win9x) there is where I have the most questions about feasibility.
First and foremost, if the motherboard doesn't have CSM, forget about it. If the motherboard has CSM and it's enabled, you can install MS-DOS. But then, would MS-DOS see or understand the bridges so it can "talk" to the ISA and PCI devices? Would programs that talk directly to the hardware see it too?

I'm sure there's also a million of other stuff that I'm not taking into account, but... does it look feasible or it's not even worth trying? Also, does this look like a project people would be interested in if the boards would be available to order at a board manufacturer?

Reply 2 of 10, by Matchstick

User metadata
Rank Newbie
Rank
Newbie
douglar wrote on 2024-07-10, 18:28:
Here are some products on the market today that seem to fill a similar need: […]
Show full quote

Here are some products on the market today that seem to fill a similar need:

-- one ISA card
https://arstech.com/usb2-products/25-usb2isa-r.html
-- Many ISA cards
https://arstech.com/usb2-products/43-usb2isa-sl.html

Wow those are pricey for what it is.
I bet the manufacturing BOM on that is less than $20 USD per unit.
Looks like that is the premium markup for industrial use, cause of requirement of needing to retain ISA HW for industrial machines on modem systems.

Reply 4 of 10, by Spyd

User metadata
Rank Newbie
Rank
Newbie
Shponglefan wrote on 2024-07-10, 20:51:

Outside of industrial applications, what is the use case for retaining ISA support on a modern computer?

Basically tinkerers that want to keep using their Sound Blaster AWE64 on a current computer.

Reply 5 of 10, by Spyd

User metadata
Rank Newbie
Rank
Newbie
douglar wrote on 2024-07-10, 18:28:
Here are some products on the market today that seem to fill a similar need: […]
Show full quote

Here are some products on the market today that seem to fill a similar need:

-- one ISA card
https://arstech.com/usb2-products/25-usb2isa-r.html
-- Many ISA cards
https://arstech.com/usb2-products/43-usb2isa-sl.html

It looks as a solution for using on modern OSs, but I doubt this works on MS-DOS.

Reply 6 of 10, by The Serpent Rider

User metadata
Rank l33t++
Rank
l33t++
Spyd wrote on 2024-07-11, 11:40:

Basically tinkerers that want to keep using their Sound Blaster AWE64 on a current computer.

Which is not possible without DMA support. And most modern chipsets apparently removed any remains of ISA support.

I must be some kind of standard: the anonymous gangbanger of the 21st century.

Reply 7 of 10, by Shponglefan

User metadata
Rank l33t
Rank
l33t
Spyd wrote on 2024-07-11, 11:40:
Shponglefan wrote on 2024-07-10, 20:51:

Outside of industrial applications, what is the use case for retaining ISA support on a modern computer?

Basically tinkerers that want to keep using their Sound Blaster AWE64 on a current computer.

To what end?

Don't get me wrong, I'm all about ISA sound cards. I've just found that when one moves further away from the DOS era, the more incompatibility issues one runs into.

Tinkering and proof-of-concept stuff is fine, but are there any practical use cases here?

Pentium 4 Multi-OS Build
486 DX4-100 with 6 sound cards
486 DX-33 with 5 sound cards

Reply 8 of 10, by douglar

User metadata
Rank l33t
Rank
l33t
The Serpent Rider wrote on 2024-07-11, 11:58:
Spyd wrote on 2024-07-11, 11:40:

Basically tinkerers that want to keep using their Sound Blaster AWE64 on a current computer.

Which is not possible without DMA support. And most modern chipsets apparently removed any remains of ISA support.

Quite true. The amount of work necessary to replicate or emulate ISA DMA under modern motherboard chipsets really ups the difficulty of the project, yes. Been a long time since they acted like an Intel 8237 chip.

Reply 9 of 10, by LSS10999

User metadata
Rank Oldbie
Rank
Oldbie
Spyd wrote on 2024-07-10, 15:51:

On the PCB would be two chipsets and it's supporting passive components: a PCIe to PCI bridge (for example an ITE IT8892E or ITE IT8893E) to power the PCI slots, and a PCI to ISA bridge (for example the ITE IT8888F) to power the ISA slots.

The resulting contraption would be a modern computer with some PCI and ISA slots available. The ISA or PCI cards would install as if the motherboard had the slots itself, without the need for an external enclosure or risers or other inelegant solutions. Also, if the computer dies or you want to upgrade it, you can replace the mini-ITX motherboard, the rest of the PCI and ISA cards you can keep. The ITX motherboard doesn't have to have anything special, no TPM module connector, only a PCIe slot.

Most ISA-enabled modern industrial motherboards I've seen online already utilized this kind of solutions. PCI-ISA, or coupled with a PCIe-PCI if the chipset is too new to have native PCI. This should satisfy most industrial use cases, which rarely involved DMA.

I recall there were some PCI expansion cards for ISA slots from Costronic, also utilizing PCI-ISA bridges, though I don't know if they're still available now.

Spyd wrote on 2024-07-10, 15:51:

But from the perspective of trying to make this run on old OSs, specifically MS-DOS and "derivatives" (Win9x) there is where I have the most questions about feasibility.
First and foremost, if the motherboard doesn't have CSM, forget about it. If the motherboard has CSM and it's enabled, you can install MS-DOS. But then, would MS-DOS see or understand the bridges so it can "talk" to the ISA and PCI devices? Would programs that talk directly to the hardware see it too?

I think BIOS needs to set up necessary registers for the chipset, and in some cases maybe the bridge also, before ISA cards can function. If BIOS didn't configure it, or configured it incorrectly, you can do it while in DOS where you can access almost everything directly.

After proper configurations the bridge should function transparently as long as the OS has necessary drivers for ISA bus as well as the devices one wants to use.

Reply 10 of 10, by digger

User metadata
Rank Oldbie
Rank
Oldbie

Adding to arguments why practical use cases for this are diminishing:

  • Since 2020 or so, all new motherboards ship with UEFI BIOSes that lack a Compatibility Support Module (CSM), which means that they can no longer natively boot DOS anyway. (Although TK Chia's muefircate project, f.k.a. biefircate, aims to restore native DOS compatibility in UEFI systems lacking a CSM.)
  • Intel's upcoming x86S architecture specification does away with Real Mode, V8086 Mode and Protected Mode (known collectively as "Legacy modes") entirely, which means that future Intel and AMD CPUs will no longer be compatible with native DOS at the CPU level. Not even something like muefircate could work anymore on such CPUs.

For post-ISA systems that can still boot DOS natively, solutions such as SBEMU and VSBHDA are viable medium term solutions for getting proper sound support in DOS games.

The dISAppointment (LPC to ISA) adapter could also be a solution for such systems.

In the longer term, full software emulation solutions, such as DOSBox and 86Box, are the only way to go in terms of full DOS compatibility with proper sound and graphics support. And modern PCs are fast enough to fully emulate DOS-era PCs in software anyway, at least up to the Pentium II. There are no DOS games that need anything faster than that.

If it's just the fact that you want to use certain ISA cards in modern systems, there is apparently a modified version of DOSBox that has support for those USB2ISA adapters from ARStech. Not sure if they ever got the GPL violation sorted out and actually shared the source code of these patches. Others here might be able to shed some light on that. I'm actually interested in that myself, since I'd like to get a Hercules Graphics Card clone to work in a modern system, so I can get it to output video on an old IBM 5151 monochrome monitor, since to my knowledge there are no PCI graphics cards that can drive TTL monitors. 🙂