Since DOSGuy said in the CPU collecting thread he's more of a hardware nerd, I thought I'd post this idea I have been thinking about to see what anyone else thinks of it.
Having seen the XTIDE device (an ISA card allowing you to connect IDE devices to an XT computer) it made me think how interesting it would be to create my own ISA card. Given the speed of modern embedded devices, it would be possible to create an entire embedded system running an OS like Linux, and stick it on an ISA card. You could then write programs and run them on the card, and your programs would be able to read and write data over the ISA bus to communicate with the PC it is plugged into.
This would allow the ISA card to appear as many different devices, depending on what program you were running on it. You could for instance, make it appear like a SB16 sound card so the PC thinks it is a real sound card, but capture the audio instead of playing it. Or you could write a program that "speaks" the EMS protocol so the card looks like a memory add-in board, making the card's own memory accessible to the target system. An XT with 64MB RAM would be very straightforward.
If the card had an external network connection, you could write software to make it appear like a video card for example, and stream the video over the network to some other system running a VLC client or similar. And since it was all done in hardware (from the target PC's perspective) this would let you access the POST, CMOS setup, etc. too. Since all ISA cards see all data including memory accesses, it would also be possible to snoop on the live system, inspect and change memory, etc. which could be quite interesting.
And of course there are the other more usual aspects - the card could appear as a hard drive, allowing access to boot an operating system and run games over the network, without requiring any drivers to stay in memory as the case is now.
I imagine like those POST diagnostic cards you could even put both an ISA and a PCI connector on the card, so it would be compatible with both slots.
Anyway, I think something like this could be pretty versatile, so I'm wondering whether anyone else thinks it would be useful?
Generic ISA/PCI card
-
- 8-bit mega nerd
- Posts: 293
- Joined: March 17th, 2007, 6:40 pm
- Location: Brisbane, Australia
- Contact:
- leilei
- File Contributor
- Posts: 465
- Joined: August 16th, 2007, 2:45 pm
Re: Generic ISA/PCI card
Bus transfer and voltage?
I know what you're getting at, an emulator card with a crapton of jumpers on it to enable functions (maybe have it used together with some switch device so you can turn the knob from Adlib to SB16) and set addresses
I know what you're getting at, an emulator card with a crapton of jumpers on it to enable functions (maybe have it used together with some switch device so you can turn the knob from Adlib to SB16) and set addresses
-
- 8-bit mega nerd
- Posts: 293
- Joined: March 17th, 2007, 6:40 pm
- Location: Brisbane, Australia
- Contact:
Re: Generic ISA/PCI card
Pretty much, but instead of jumpers it would all be handled by the software running on the card's CPU. A computer within a computer if you like.
The way the ISA and PCI buses work is that each memory read and write, and each IO port read and write, all come in on the same set of pins (address + data). So all you have to do is listen to these pins and just respond when data comes in to an address or IO port you want to react to. If these pins were wired into the SoC's GPIO ports or similar, software running on the card would be notified of every single memory and IO port access in the system, and it could choose to respond to any of interest.
The way the ISA and PCI buses work is that each memory read and write, and each IO port read and write, all come in on the same set of pins (address + data). So all you have to do is listen to these pins and just respond when data comes in to an address or IO port you want to react to. If these pins were wired into the SoC's GPIO ports or similar, software running on the card would be notified of every single memory and IO port access in the system, and it could choose to respond to any of interest.
- DOSGuy
- Website Administrator
- Posts: 1063
- Joined: September 2nd, 2005, 8:28 pm
- Contact:
Re: Generic ISA/PCI card
ISA was great for stuff like this. I have a Z80 card for Apple II computers to let them run CP/M, and I know that Apple marketed x86 add-in cards for Macs, turning your Mac into a PC. The "computer within a computer" concept isn't new, and also isn't dead! The upcoming Xeon Phi cards are a computer within a computer that internally run Linux!
Today entirely the maniac there is no excuse with the article.