VOGONS


First post, by retardware

User metadata
Rank Oldbie
Rank
Oldbie

Hello,
I have a crazy idea and need your advice.

My idea is making a pure-real-mode freely-clockable DOS PC that can run very old software from Zaxxon (for 8088 PC) up to software that works fine up to 486s.
(Ideally in the end finely adjustable by a steampunk potentiometer and an giant analog instrument as throttle display.
With various marks from PC 4.77 to 486/33. So I can just "tune" the speed I want/need 😉 )

+ The computer clock should be controllable externally.
(i.e. no clockgen chip, but just unsolder XTAL osc and connect external TTL signal).
+ With real mode, no EMM386 etc can be used.
So the mobo has to be able to map RAM into the UMB range.
+ Obviously the mobo also must do hardware EMS mapping.
+ Furthermore, the mobo must have a good memory interface and ideally be cacheless.
This is necessary to even out all these undeterministic execution speed problems introduced by caches.

The Headland/LSI HT340 chipset is very suitable for this purpose, as it offers all these things.
I was looking around a while for a HT340 mobo and finally found one on the local bay:

s-l1600.jpg

However there are some issues:

1. I noticed after buying, but before paying, that the battery is missing.
Not sure whether what I see where the battery belongs is acceptable.
Is the board likely damaged? What do you think?

2. Is it at all realistic to just lower the clock input into regions down to 1 or 2 MHz?

Regarding the DRAM refresh cycle length: it would increase but I think this is not really critical, as the chipset supports ECC and thus can detect unreliable RAM behavior.
Experiments have shown that many DRAM types can sustain grossly increased refresh times. So I guess it might possible to increase from 4ms to maybe 50ms or even more.
The chipset itself is fully static.

So, what worries me:
Are there other dynamic circuitry that possibly could fail at too low clock rates? What do you think?

For example, the processor?
Do you know which non-overdriven 486 variants are dynamic and thus should be avoided for this build?
And which ones are static and thus recommendable?

Reply 1 of 7, by cyclone3d

User metadata
Rank l33t++
Rank
l33t++

The battery area looks fine to me. There is just a glob of old hot glue that was helping hold the battery in place.

Instead of putting a new battery there, just use the external battery header that is near the bottom left in that picture.

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

Reply 3 of 7, by rasz_pl

User metadata
Rank l33t
Rank
l33t
retardware wrote:

ideally be cacheless.
This is necessary to even out all these undeterministic execution speed problems introduced by caches.

wait, what?

retardware wrote:

The Headland/LSI HT340 chipset

seriously budget 386 motherboard dressed to accept 486 cpus

retardware wrote:
However there are some issues: […]
Show full quote

However there are some issues:

1. I noticed after buying, but before paying, that the battery is missing.
Not sure whether what I see where the battery belongs is acceptable.
Is the board likely damaged? What do you think?

looks good, was saved from spillage

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

Reply 4 of 7, by alvaro84

User metadata
Rank Member
Rank
Member
retardware wrote:

2. Is it at all realistic to just lower the clock input into regions down to 1 or 2 MHz?

Well, I have a FIC 486GIO-VT board with VLB and VIA chipset that has a VT8225N clock generator that can output quite crazy clocks (at least crazy for a 486).
On paper, it goes down to 2MHz, in reality I could boot it at 8MHz but even at that relatively high frequency it just forgot how to write on a PATA device. So the built-in I/O gave up there. Unfortunately I stopped there and didn't try it with an ISA I/O card, nor did I go for working 4 or 2MHz. But I can tell you it was mighty slow - something you seem to aim for, and beyond.

It runs fine at 16MHz, though - apparently too fast for your project.

Shame on us, doomed from the start
May God have mercy on our dirty little hearts

Reply 5 of 7, by retardware

User metadata
Rank Oldbie
Rank
Oldbie
alvaro84 wrote:

On paper, it goes down to 2MHz, in reality I could boot it at 8MHz but even at that relatively high frequency it just forgot how to write on a PATA device. So the built-in I/O gave up there.

Very interesting! Exactly this kind of problems I am expecting. I guess I'll have to experiment which hardware supports what, respective how tolerant it is against underclocking.

The problem with these clock chips is their granularity. To "tune" finely to about 4.77 MHz PC speed there would be needed either a clock chip with a resolution of 100kHz or smaller.
What I am thinking of is an "analog" controller like a potentiometer. (Does not need to be analog, can be actually an encoder)
And this ranging from speed equivalent of 4.77 PC to 33MHz full speed (no overclocking, I don't do that)
The actual design of the custom clock generator is open yet, I first have to make sure that it actually is possible to get mobo work at low speed.
For this reason I have a set of xtal oscillators, maybe adding one or two 74(L)S74 as divider, with which I can create a number of frequencies.

I will report back when I got the mobo and after experimenting know how slowly it can go withot falling 😀

rasz_pl wrote:

seriously budget 386 motherboard dressed to accept 486 cpus

it is even more serious 😉

the HT340 was inspired by the HT12 286 chipset (link to VogonsWiki page)
Leaving out the cache was still an option at these low clock rates.
The effect was that it removed one level/stage in memory access, and this together with optimized RAM access led to comparable performance to cache-using mobo chipsets.

Reply 6 of 7, by rasz_pl

User metadata
Rank l33t
Rank
l33t
retardware wrote:
The problem with these clock chips is their granularity. To "tune" finely to about 4.77 MHz PC speed there would be needed eithe […]
Show full quote

The problem with these clock chips is their granularity. To "tune" finely to about 4.77 MHz PC speed there would be needed either a clock chip with a resolution of 100kHz or smaller.
What I am thinking of is an "analog" controller like a potentiometer. (Does not need to be analog, can be actually an encoder)
And this ranging from speed equivalent of 4.77 PC to 33MHz full speed (no overclocking, I don't do that)
The actual design of the custom clock generator is open yet, I first have to make sure that it actually is possible to get mobo work at low speed.
For this reason I have a set of xtal oscillators, maybe adding one or two 74(L)S74 as divider, with which I can create a number of frequencies.

I wont pretend to understand reasons behind your experiment 😀 but I can at least help you with the clock generator
$4 Si5351A dev board https://www.ebay.com/itm/Si5351A-I2C-25MHZ-Cl … R4/173636246022
$2 bluepill stm32 arduino compatible board https://www.ebay.com/itm/STM32F103C8T6-Minimu … no/323633385054
$1 Rotary Encoder
$2 Oled I2C display, or old fashioned 8 segment LED ones

3V clock signal should work with 5V ttl chips on the motherboard, worst case scenario you will need a buffer chip like $2 NB3L553

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

Reply 7 of 7, by retardware

User metadata
Rank Oldbie
Rank
Oldbie
rasz_pl wrote:

Great! Looks very sweet! I think this could be what I need! Thank you very much!

For the rest I tend to using parts already present here, old arduino with touchscreen, some nice pot taken from old radio (read by adc), level shifters, cute monster milliamperemeter, etc.

But first I have to find out how slow this mobo can clock at all...

rasz_pl wrote:

I wont pretend to understand reasons behind your experiment 😀

The idea behind that is that many games work well only up to a particular processor speed, before issues appear. There is some big thread on Vogons only for compatibility matrix for DOS games vs. processor speed, and a very informative lookup spreadsheet table (will enter link here when I find it)
So I want one single "playstation" which can be adjusted to the processor speed "sweet spot" of the every game I want to play, instead of having several PCs of different generations only for accommodating for every generations' processor speed.