VOGONS


Intrest in new ISA cards?

Topic actions

First post, by dkarguth

User metadata
Rank Member
Rank
Member

I was pondering the idea of designing a brand new line of ISA cards to retrofit into old PCs.
Things along the lines of:
- A video card that used an FPGA to emulate VGA/EGA/CGA/MDA graphics, settable either by dipswitches on the card or a software utility, that has an HDMI output rather than a VGA. Since an FPGA would essentially completely replicate the functionality of the original VGA/MDA/CGA/EGA cards, it would be able to be 100% compatible with the video cards of the era.
- An 8 bit USB controller that supports hot-pluggable USB mass storage devices such as flash drives, and possibly includes a virtual COM port so that a USB mouse would appear as a generic microsoft serial mouse to DOS.
- A modern network card with integrated wifi
- A card that emulates a Gameport, but connects to Xbox/PS4/Bluetooth controllers to provide wireless controllers
- A card that uses an FPGA to completely emulate a Commodore 64 and use the PC keyboard and display. Onboard SID chip with audio pass-thru, a commodore serial port on the back to connect authentic commodore accessories, and a simulated serial link in between the PC and the Commodore to facilitate file transfers.
- A standalone commodore serial card that lets DOS treat the commodore disk drives as a normal floppy drive, or use a commodore printer as a normal printer.

I am not planning on any PCI cards at the moment, mostly because many of these things already exist on PCI cards. These are some things that were never available on ISA cards.
None of them have been designed yet, these are just general ideas.

If anyone feels like suggesting something that they would like to see in a new ISA card, that would be well received as well.

Note: Mods, if this comes off as too close to advertising, just message me and I'll happily remove it. That is not my intention. I'm not trying to sell anything, I am just curious to see if there would be any interest in this area.

"And remember, this fix is only temporary, unless it works." -Red Green

Reply 1 of 89, by RetroLizard

User metadata
Rank Member
Rank
Member

Interesting concept, though I wonder how the whole controller to gameport/joystick idea would work. I could be entirely wrong about this, but I don't think modern controllers use axis' anymore?

Either way, I like the idea. 😀

Reply 2 of 89, by dkarguth

User metadata
Rank Member
Rank
Member

The entire thing could be done in a small FPGA rather easily. If you don't know what an FPGA is, think of it as a chip that you can reprogram to emulate any other chip. You can even get FPGAs large enough to emulate an entire 486 computer if you wanted to.
Basically you would get a small FPGA that connects to the ISA bus, and it would emulate a gameport controller card from the PC's perspective. Then it would recieve the bluetooth signal from a bluetooth tranciever with the data from the controller, and feed it into the virtual gameport.
The PC would interact with the card exactly as it would a gameport, and software would see it as a gameport, but rather than being a physical gameport with a bluetooth adapter, it would be a self contained emulated gameport that interfaces directly with the bluetooth controller through an FPGA. There would be no analog per se, but it would act just like the analog axis to the computer.

"And remember, this fix is only temporary, unless it works." -Red Green

Reply 4 of 89, by Tiido

User metadata
Rank l33t
Rank
l33t

I am slowly working on a device that fits most of these things, but time and money are the limiting factors right now.

Other things of interest might be EMS support and perhaps including SD cards to the mass storage side of things, they'll be far easier on the MCU compared to USB. For storage you'll need a boot ROM aswell so that you can hook into int13.
I would up the MCU to a proper 32bit ARM, it'll make your life much easier while having little change in the cost, especially when it allows to use a smaller FPGA in the process.
As far as HDMI and DVI go, there's the problem of transmitter chips, I have yet to find one that actually has documentation around and won't require you to have a HDMI license. Have you already found something suitable ? Or you're thinking of using an FPGA with gigabit transceivers and bitbang HDMI out of it ?

T-04YBSC, a new YMF71x based sound card & Official VOGONS thread about it
Newly made 4MB 60ns 30pin SIMMs ~
mida sa loed ? nagunii aru ei saa 😜

Reply 5 of 89, by dkarguth

User metadata
Rank Member
Rank
Member

I honestly just came up with the idea today. I haven't ever done anything with HDMI before, I had no idea you have to have a license to use it. Seems kinda dumb to me.
I could do SD support, but the reason that I was thinking about USB is because there are already multiple adapters out there to use SD cards with ISA. (e.g. XT IDE and IDE to SD adapter) I was more thinking like a hot-pluggable drive that would appear to DOS to be more like a Zip drive type thing, but it would be able to use a standard USB flash drive.
I am by no means a professional digital designer, I am more learning as I go, but it seems like ISA is a good starting place to learn how to design this type of stuff.

"And remember, this fix is only temporary, unless it works." -Red Green

Reply 6 of 89, by dkarguth

User metadata
Rank Member
Rank
Member

HOLY CRAP!
I just looked up the licensing fees for HDMI. Talk about stupidly insane. Not only do they charge a $5,000 per year base fee, but they also take 1 more dollar for each device you sell! And that's only if you produce under 10,000 units per year!
Haha, that's a big NOPE.EXE from me. Maybe displayport? If I understand correctly displayport is compatible with not only HDMI, but VGA and DVI as well.

"And remember, this fix is only temporary, unless it works." -Red Green

Reply 7 of 89, by novasilisko

User metadata
Rank Newbie
Rank
Newbie

That universal video card, if able to be reasonably priced, would be very interesting to see happen. I'd say it'd be best to have a VGA output alongside HDMI (or displayport, since displayport's license isn't insane I think, and has a much more satisfying connector if you ask me 😊, plus you can easily get HDMI/DP adapters), to cover a very wide swath of displays. I guess you can always adapt things back to VGA, though.

I'm surprised nobody's done a USB ISA card yet. A silly idea I had was to effectively spoof a network connection, on a card, so that it thinks a USB flash drive is a remote file server to download things off of. I have no idea how practical or even possible that would be.

I have had a few other ideas of my own, but mostly they're silly one-off things that would be for my own projects; very much not of wide interest. That being said, I would be genuinely interested to learn how to actually create and interface with custom ISA cards... from what I've seen so far it seems like it's just simple enough to be accessible to this sort of homebrew sphere, which is awfully tantalizing.

Phoenix / The Disasterpiece
Processor: Am386DX-40 | Memory: 20 MB | Graphics: Trident TVGA9000B | Sound: TBD | Era: No

Reply 8 of 89, by dkarguth

User metadata
Rank Member
Rank
Member

You could do the USB drive like a file server, but I more envisioned it to behave more like a ZIP drive. It would create a drive letter that would always appear in DOS, and you could use it like a normal drive. However, if you were to disconnect the USB drive, it would just give back a "Drive not ready" message if you tried to access it.
ISA is a pretty easy bus to interface with. It's actually pretty ingenious the way the sockets are laid out. You might think that each slot is accessed independently, but it isn't like that. All the ports are connected together, and the cards just basically take turns using the bus. The neat thing is that you could technically get an ISA backplane (It's just a passive board with 8 or 10 isa slots on it) and link it to a normal motherboard and give yourself 9 more ISA slots.
Another idea that I had was to make an ISA card that basically provided a massive amount of IO (say like 30 pins) on the back of the case that you could break out to a breadboard and use your PC to control stuff. Think of it like the IO cable on a raspberry pi. But like 10x slower. Then you could adapt your PC to do all kinds of cool stuff.
Honestly, I should probably make a thread here that documents my process as I'm designing and building these cards so that others might follow along and learn how to make their own expansion cards.
Another one of my ideas was a USB adapter for 5.25 inch floppy drives. I haven't ever seen a single one in my entire time searching for it on the internet. It strikes me as odd as USB 3.5 inch drives are a dime a dozen but nobody seems to have ever made a 5.25 inch USB drive.

"And remember, this fix is only temporary, unless it works." -Red Green

Reply 9 of 89, by novasilisko

User metadata
Rank Newbie
Rank
Newbie
dkarguth wrote:

Another idea that I had was to make an ISA card that basically provided a massive amount of IO (say like 30 pins) on the back of the case that you could break out to a breadboard and use your PC to control stuff. Think of it like the IO cable on a raspberry pi. But like 10x slower. Then you could adapt your PC to do all kinds of cool stuff.

I was just coming in here to suggest that!

Phoenix / The Disasterpiece
Processor: Am386DX-40 | Memory: 20 MB | Graphics: Trident TVGA9000B | Sound: TBD | Era: No

Reply 10 of 89, by rasz_pl

User metadata
Rank l33t
Rank
l33t
dkarguth wrote:

- A video card that used an FPGA to emulate VGA/EGA/CGA/MDA graphics, settable either by dipswitches on the card or a software utility, that has an HDMI output rather than a VGA. Since an FPGA would essentially completely replicate the functionality of the original VGA/MDA/CGA/EGA cards, it would be able to be 100% compatible with the video cards of the era.

Video cards of the era, even supporting same standard, were not 100% compatible with each other.
This could be interesting in an academic sort of way, a project aiming to build the best/fastest/quirky ISA VGA card for example. Good way of getting familiar with FPGA for the author.

dkarguth wrote:

- An 8 bit USB controller that supports hot-pluggable USB mass storage devices such as flash drives

http://www.vcfed.org/forum/showthread.php?487 … ard-in-IBM-5160!
$3 https://www.ebay.com/sch/i.html?_from=R40&_nkw=ch375

dkarguth wrote:

and possibly includes a virtual COM port so that a USB mouse would appear as a generic microsoft serial mouse to DOS.

https://hackaday.io/project/27575-ps2-to-rs23 … mouse-converter

dkarguth wrote:

- A modern network card with integrated wifi

$20 AP connected to ordinary network card
esp8266 emulating modem over serial is more era appropriate https://hackaday.com/2017/06/17/bbsing-with-the-esp8266/

dkarguth wrote:

- A card that emulates a Gameport, but connects to Xbox/PS4/Bluetooth controllers to provide wireless controllers

so hdmi lcd, wireless lan, usb mouse and modern joypads? might as well run on emulator at this point 😀

dkarguth wrote:

- A card that uses an FPGA to completely emulate a Commodore 64 and use the PC keyboard and display. Onboard SID chip with audio pass-thru, a commodore serial port on the back to connect authentic commodore accessories, and a simulated serial link in between the PC and the Commodore to facilitate file transfers.

even more niche 😮 why exactly would anyone want to emulate c64 on IBM XT in the first place?

dkarguth wrote:

- A standalone commodore serial card that lets DOS treat the commodore disk drives as a normal floppy drive, or use a commodore printer as a normal printer.

XE1541/XM1541/XU1541 cables exist. What lacks is a driver, not hardware.

Tiido wrote:

Other things of interest might be EMS support and perhaps including SD cards to the mass storage side of things, they'll be far easier on the MCU compared to USB. For storage you'll need a boot ROM aswell so that you can hook into int13.
I would up the MCU to a proper 32bit ARM, it'll make your life much easier while having little change in the cost, especially when it allows to use a smaller FPGA in the process.
As far as HDMI and DVI go, there's the problem of transmitter chips, I have yet to find one that actually has documentation around and won't require you to have a HDMI license. Have you already found something suitable ? Or you're thinking of using an FPGA with gigabit transceivers and bitbang HDMI out of it ?

this http://www.smbaker.com/raspberry-pi-virtual-f … -xtat-computers
could do all of the things you mention with some modifications

Open Source AT&T Globalyst/NCR/FIC 486-GAC-2 proprietary Cache Module reproduction

Reply 11 of 89, by dkarguth

User metadata
Rank Member
Rank
Member

Edit: accidental post, can't figure out how to delete

Last edited by dkarguth on 2019-02-07, 20:48. Edited 1 time in total.

"And remember, this fix is only temporary, unless it works." -Red Green

Reply 12 of 89, by SirNickity

User metadata
Rank Oldbie
Rank
Oldbie

I spent a while looking at RGB-to-digital conversion chipsets and display driver ICs, and arrived at the same conclusion re: video. HDMI is designed to be impenetrable by the unwashed masses. The licensing is a revenue source for one, and they also have a vested interest in keeping the HDCP information within a small, closed community. So, hobbyiest HDMI is not, and likely won't ever be, on the table.

However.... DVI is. And so, there are a great many hobby devices that use a peculiar "DVI" port that just happens to allow an HDMI cable to plug into it. 😉 The degree to which this "decidedly NOT HDMI" port behaves more like DVI or more like HDMI depends on the FPGA IP and the brashness of its author. Suffice to say, if you want compatibility with HDMI displays, there's nothing really stopping you from doing it by brute force, but you can pretty much forget having a legitimate Silicon Image IC driving it. (Thanks, consumer electronics industry.)

Reply 13 of 89, by brostenen

User metadata
Rank l33t++
Rank
l33t++

Not to kill the party. But there have been 8088/86 kits avaliable for a couple of years now.

https://youtu.be/MW5lApN0gWc

Don't eat stuff off a 15 year old never cleaned cpu cooler.
Those cakes make you sick....

My blog: http://to9xct.blogspot.dk
My YouTube: https://www.youtube.com/user/brostenen

001100 010010 011110 100001 101101 110011

Reply 14 of 89, by SirNickity

User metadata
Rank Oldbie
Rank
Oldbie

Oh BTW, while we're talking about new designs.... One of the unfortunate consequences of the PC evolution is that audio and video grew up as distinct products. This is in contrast to the AV world, where they've been intimately linked. Specifically, a common clock. In the analog domain, this wasn't terribly important, except that you wouldn't be able to time audio events to V-sync as easily. But, in the digital domain, this can be a problem when the audio and video sink is the same device (e.g., a TV), or when you want to play synchronized video (e.g., HTPC or console emulators).

So, one thing that would be nice is to have an ISA video card + Sound Blaster DSP in one card. That way, the VGA (or whatever) refresh can be locked at 60Hz, and the audio can be derived from the same clock, and you won't end up with sync issues or "audio only when there's video" like you do when using VGA+audio -> HDMI conversion boxes.

Reply 15 of 89, by brostenen

User metadata
Rank l33t++
Rank
l33t++

Regarding game port. Yes, a USB connection for joyaticks would be nice, yet playing dos games with controllers (or joypads as they were known as back then) is perhaps not a choice that many gamers want. And besides, the PC had mostly analog joysticks. Digital were a thing of consoles and non Pc/Mac computers. (ZX Spectrum, C64 and so on)

Don't eat stuff off a 15 year old never cleaned cpu cooler.
Those cakes make you sick....

My blog: http://to9xct.blogspot.dk
My YouTube: https://www.youtube.com/user/brostenen

001100 010010 011110 100001 101101 110011

Reply 16 of 89, by brostenen

User metadata
Rank l33t++
Rank
l33t++
SirNickity wrote:

Oh BTW, while we're talking about new designs.... One of the unfortunate consequences of the PC evolution is that audio and video grew up as distinct products. This is in contrast to the AV world, where they've been intimately linked. Specifically, a common clock. In the analog domain, this wasn't terribly important, except that you wouldn't be able to time audio events to V-sync as easily. But, in the digital domain, this can be a problem when the audio and video sink is the same device (e.g., a TV), or when you want to play synchronized video (e.g., HTPC or console emulators).

So, one thing that would be nice is to have an ISA video card + Sound Blaster DSP in one card. That way, the VGA (or whatever) refresh can be locked at 60Hz, and the audio can be derived from the same clock, and you won't end up with sync issues or "audio only when there's video" like you do when using VGA+audio -> HDMI conversion boxes.

If a game is designed to have smooth scrolling on 50hz, then it will be choppy in motions, when forced to run at 60hz. It is one of many headaches in the various Nintendo/Sega/Commodore camps of retro gaming.

Don't eat stuff off a 15 year old never cleaned cpu cooler.
Those cakes make you sick....

My blog: http://to9xct.blogspot.dk
My YouTube: https://www.youtube.com/user/brostenen

001100 010010 011110 100001 101101 110011

Reply 17 of 89, by dkarguth

User metadata
Rank Member
Rank
Member
rasz_pl wrote:
Video cards of the era, even supporting same standard, were not 100% compatible with each other. This could be interesting in an […]
Show full quote
dkarguth wrote:

- A video card that used an FPGA to emulate VGA/EGA/CGA/MDA graphics, settable either by dipswitches on the card or a software utility, that has an HDMI output rather than a VGA. Since an FPGA would essentially completely replicate the functionality of the original VGA/MDA/CGA/EGA cards, it would be able to be 100% compatible with the video cards of the era.

Video cards of the era, even supporting same standard, were not 100% compatible with each other.
This could be interesting in an academic sort of way, a project aiming to build the best/fastest/quirky ISA VGA card for example. Good way of getting familiar with FPGA for the author.

dkarguth wrote:

- An 8 bit USB controller that supports hot-pluggable USB mass storage devices such as flash drives

http://www.vcfed.org/forum/showthread.php?487 … ard-in-IBM-5160!
$3 https://www.ebay.com/sch/i.html?_from=R40&_nkw=ch375

dkarguth wrote:

and possibly includes a virtual COM port so that a USB mouse would appear as a generic microsoft serial mouse to DOS.

https://hackaday.io/project/27575-ps2-to-rs23 … mouse-converter

dkarguth wrote:

- A modern network card with integrated wifi

$20 AP connected to ordinary network card
esp8266 emulating modem over serial is more era appropriate https://hackaday.com/2017/06/17/bbsing-with-the-esp8266/

dkarguth wrote:

- A card that emulates a Gameport, but connects to Xbox/PS4/Bluetooth controllers to provide wireless controllers

so hdmi lcd, wireless lan, usb mouse and modern joypads? might as well run on emulator at this point 😀

dkarguth wrote:

- A card that uses an FPGA to completely emulate a Commodore 64 and use the PC keyboard and display. Onboard SID chip with audio pass-thru, a commodore serial port on the back to connect authentic commodore accessories, and a simulated serial link in between the PC and the Commodore to facilitate file transfers.

even more niche 😮 why exactly would anyone want to emulate c64 on IBM XT in the first place?

dkarguth wrote:

- A standalone commodore serial card that lets DOS treat the commodore disk drives as a normal floppy drive, or use a commodore printer as a normal printer.

XE1541/XM1541/XU1541 cables exist. What lacks is a driver, not hardware.

Tiido wrote:

Other things of interest might be EMS support and perhaps including SD cards to the mass storage side of things, they'll be far easier on the MCU compared to USB. For storage you'll need a boot ROM aswell so that you can hook into int13.
I would up the MCU to a proper 32bit ARM, it'll make your life much easier while having little change in the cost, especially when it allows to use a smaller FPGA in the process.
As far as HDMI and DVI go, there's the problem of transmitter chips, I have yet to find one that actually has documentation around and won't require you to have a HDMI license. Have you already found something suitable ? Or you're thinking of using an FPGA with gigabit transceivers and bitbang HDMI out of it ?

this http://www.smbaker.com/raspberry-pi-virtual-f … -xtat-computers
could do all of the things you mention with some modifications

Most of these things you mention get the job done in one way or another, but not exactly cleanly. Personally, I would much rather have an internal ISA card than 15 adapter dongles hanging off the back of my PC to be able to connect a few things. The point of the idea is to create a clean solution that requires minimal setup or complexity to get to work. When you present these modern devices as an actual floppy drive/hard drive/com port/gameport, the system handles it better and you have almost 100% compatibility with existing software. I can see where you're coming from though, nothing that I have suggested is entirely a unique and new idea, I was just suggesting that rather than adapting existing hardware with messy adapters, an internal card could be designed to simplify the process.

"And remember, this fix is only temporary, unless it works." -Red Green

Reply 18 of 89, by dkarguth

User metadata
Rank Member
Rank
Member

Also, I've never seen a card that allows you to connect a 1541 drive to a PC and have it accessible like a normal floppy drive. No extra drivers needed, it just works.

"And remember, this fix is only temporary, unless it works." -Red Green

Reply 19 of 89, by rasz_pl

User metadata
Rank l33t
Rank
l33t
dkarguth wrote:

Also, I've never seen a card that allows you to connect a 1541 drive to a PC and have it accessible like a normal floppy drive. No extra drivers needed, it just works.

you dont need a card for that, you need a dos driver

Open Source AT&T Globalyst/NCR/FIC 486-GAC-2 proprietary Cache Module reproduction