VOGONS


First post, by Jo22

User metadata
Rank l33t++
Rank
l33t++

Hi everyone,

I've got a strange idea this morning and wonder if it would be possible..
Since some of my thin clients (wyse models) are very buggy and contain hostile BIOSes,
I wondered if it would be possible to design an EMS board that connects to the IDE connector instead of ISA.

Before you say "no", please let me point out that EPROM programmers with IDE interfaces did exist. 😉
However, these don't require as much logic and/or data/control lines, I suppose. 😐

Any idea welcome.

Best regards,
Jo22

"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//

Reply 1 of 7, by root42

User metadata
Rank l33t
Rank
l33t

Can you outline the differences between ISA and IDE? Is the latter simply a subset of the former? I.e. mostly data and address lines, no DRQ, IRQ? Never thought about that.

YouTube and Bonus
80486DX@33 MHz, 16 MiB RAM, Tseng ET4000 1 MiB, SnarkBarker & GUSar Lite, PC MIDI Card+X2+SC55+MT32, OSSC

Reply 2 of 7, by Zup

User metadata
Rank Oldbie
Rank
Oldbie

Interesting but unpractical idea.

Standard approach: EMS pages must appear as RAM in HMA, so the CPU can access it. IDE ports can only be accessed via I/O. So it wouldn't be possible.

Complicated approach: Creating a RAM device that could be connected to an IDE port may be easy, but you'll have to write a driver that:
- Reserves some space in HMA for EMS transfers.
- In the event of a EMS page change, it must copy the actual contents from the EMS frame to the IDE device, and then copy the contents from the new page (on IDE device) to RAM.
- And, of course, follow both the IDE specs and the EMS BIOS calls.

It can be done, but I guess the "standard" approach using ISA devices is simpler and faster.

I have traveled across the universe and through the years to find Her.
Sometimes going all the way is just a start...

I'm selling some stuff!

Reply 3 of 7, by Jo22

User metadata
Rank l33t++
Rank
l33t++
root42 wrote:

Can you outline the differences between ISA and IDE? Is the latter simply a subset of the former? I.e. mostly data and address lines, no DRQ, IRQ? Never thought about that.

Well, I guess so. 😐 IDE/ATA is based on PC/AT-Bus or ISA,
but hardcoded to a single I/O port each (0x01F0-0x01F7 primary, 0x0170-0x0177 secondary).
So in case of EMS, this shouldn't be a big problem, I assume, since the EMS manager is the only
piece of software that would require "physical" access and the user applications need no further modification.
Anyway, I'm speaking under correction.
Here's a link to a manual of an "IDE-Flasher" device that connects to IDE.

"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//

Reply 4 of 7, by Jo22

User metadata
Rank l33t++
Rank
l33t++
Zup wrote:

It can be done, but I guess the "standard" approach using ISA devices is simpler and faster.

Thanks for you reply, Zup! 😀

The problem is, that most cheap thin clients have enough power for most DOS/Win3.x applications,
but the smaller ones often have no expansion ports. All they have is a RAM socket and a 44pin IDE port.

And to make things worse, their BIOSes are really weird and hostile. They don't allow EMM386, UMBPCI or QEMM to function,
so you'll be short on memory in DOS quite soon, despite the machine having 128MiB or more.

The machine I'm talking about in particular is a Wyse WinTerm S10 (SX0).
In fact, it's so evil to even blocks the IDE port once you boot off USB. 😁

Real-Mode DOS (MS-DOS 6.22) runs fine, however, so do old applications.
Well, aslong as you don't mess with reserved RAM regions in UMA.

This triggers a reset or crashes the typical memory managers except Himem.
- EMM286/EMS Magic also work, but have compatibility issues with certain EMS aware applications.

On the bright side, the Geode processor in itself is very compatible.

Edit: Some links.
https://www.parkytowers.me.uk/thin/wyse/s10/
https://www.parkytowers.me.uk/thin/wyse/s10/Linux.shtml

https://www.dell.com/support/article/de/de/de … -order?lang=enl

https://www.computerhope.com/forum/index.php?topic=164177.0
https://www.bios-mods.com/forum/Thread-Mod-a- … hin-client-BIOS

"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//

Reply 5 of 7, by Jo22

User metadata
Rank l33t++
Rank
l33t++

Any more ideas ? 😀

Would it be possible to make some sort of Lo-Tech EMS card, but for IDE/ATA ?
Or would it be possible to let a simple microcotroller or FPGA do the same work of an acient Expanded Memory Board (ISA) ?

Also, would it be possible to use DMA transfers of later PATA modes somehow ?
Thin Clients often have got PCI Bus Master stuff built-in, they're not stuck in a 286's IDE/ATA0 land. 😁

The 64KiB page frame could also be located below 640KiB if needed and speed is not the main issue.
- What I'm looking for (use case) isn't gaming only. Some old astronomy, CAD or BBS software may also find EMS useful.

Again, any ideas welcome. ^^

"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//

Reply 6 of 7, by cyclone3d

User metadata
Rank l33t++
Rank
l33t++

Ok, so here is an option that is available that will work:
1. Get a SATA RAM drive such as this:
https://www.amazon.com/ACARD-ANS-9010BA-Dynam … d/dp/B00VMS9ER4
http://www.hyperossystems.co.uk/07042003/products.htm
2. use a SATA to IDE adapter

3. Use a program to emulate LIM EMS/Expanded memory on that drive:
http://vogonsdrivers.com/getfile.php?fileid=851&menustate=0 (LIM EMS 3.2)

http://cd.textfiles.com/internetconnection/sysutil/
veum.zip (expanded memory)

http://ftp.lip6.fr/pub/pc/garbo/pc/memutil/
vram40.zip (expanded memory) - shareware version 128KB max - registered version can go up to 32MB.

Above Disc (expanded)
at Vetusware.

Turbo EMS (expanded)
v 4.01 at Vetusware.

Yamaha modified setupds and drivers
Yamaha XG repository
YMF7x4 Guide
Aopen AW744L II SB-LINK

Reply 7 of 7, by StefanPutureanu

User metadata
Rank Newbie
Rank
Newbie

I know this is old, but maybe there is someone else like me in here that needs this machine to work as a vintage game machine..
This WYSE thin clients use the VSA system. This means that your OS will run in a virtual machine made by this VSA that is loaded by the BIOS. All the hardware that your OS sees is provided by the VSA, it doesn't exist in real life, is all virtual. This is why the BIOS seems so strange. You can access the IDE DOM as the secondary drive, system being booted from the USB and vice versa.. there is a trick for that.

This Geode systems are very different from the x86 architecture that we all know. I have reverse engineered the Sx0-S50 BIOS, it took me over 4 months and I have putted all my work in this blog: https://wysereverseengineering.blogspot.com/?m=1
There is to much to tell about this machines to be covered in here.