VOGONS


First post, by severinmazarin

User metadata
Rank Newbie
Rank
Newbie

First some background.

I managed to design and wire up a prototype memory expansion card for my IBM 5170. Despite the mess of wires, it actually works just fine! Since making custom cards is completely new to me, I decided to start by making an 8-bit card. Would like to try designing a 16-bit card later.

So the current memory configuration is 512 kb on the motherboard, and 128 kb on the expansion card. If I understand things correctly, RAM speed should be half on the expansion card compared to the motherboard (16 vs 8 bit data bus). But I would still like to test this. Haven't yet found a way to do so.

Ideally I would like a utility where I can point to and test read and write speed for a certain range in memory, like 80000h - A0000h (512 - 640 kb), to be able to compare it to the lower segments. So far all utilities I've tried to use, requires a 386 or newer. Have no idea if they can even do what I want. I have also dabbled a bit in DEBUG, but have only gotten as far as dumping the contents of memory. Another idea was to create a ramdrive, but I am not sure if there is a way to choose where in memory it should be placed.

Any ideas? Thanks!

Reply 1 of 8, by bakemono

User metadata
Rank Oldbie
Rank
Oldbie

It will be less than half speed, because 8-bit memory cycles have additional wait states. (16-bit cycle is normally 3 clocks. 8-bit is 6 clocks, to make it closer to XT speed.) I think I have a speed test utility, I can look for it later.

GBAJAM 2024 submission on itch: https://90soft90.itch.io/wreckage

Reply 2 of 8, by rmay635703

User metadata
Rank Oldbie
Rank
Oldbie
bakemono wrote on 2025-09-09, 09:04:

It will be less than half speed, because 8-bit memory cycles have additional wait states. (16-bit cycle is normally 3 clocks. 8-bit is 6 clocks, to make it closer to XT speed.) I think I have a speed test utility, I can look for it later.

Can’t an 8 bit memory card be wired to force 0 wait state like a 16 bypassing that or is the original AT always inserting them.

Next there is a utility that measures the speed of every kb of ram to test cache speeds (somewhere, everyone here screenshots it). I think it works on 286.

Last edited by rmay635703 on 2025-09-09, 21:17. Edited 1 time in total.

Reply 3 of 8, by Jo22

User metadata
Rank l33t++
Rank
l33t++
rmay635703 wrote on 2025-09-09, 19:53:

Can’t an 8 bit memory card be wired to force 0 wait state like a 16 bypassing that or is the original AT always inserting them.

8-Bit memory boards in an AT bus slot can do that, I think.
There's an 0WS pin on the 8-Bit portion. Pin B8, I think.

On PC/XT systems, the pin had a different purpose (related to slot 8).

More information:
https://www.lo-tech.co.uk/wiki/IBM_Personal_C … em_Board_Slot_8

"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 8, by rmay635703

User metadata
Rank Oldbie
Rank
Oldbie
Jo22 wrote on 2025-09-09, 20:48:
8-Bit memory boards in an AT bus slot can do that, I think. There's an 0WS pin on the 8-Bit portion. Pin B8, I think. […]
Show full quote
rmay635703 wrote on 2025-09-09, 19:53:

Can’t an 8 bit memory card be wired to force 0 wait state like a 16 bypassing that or is the original AT always inserting them.

8-Bit memory boards in an AT bus slot can do that, I think.
There's an 0WS pin on the 8-Bit portion. Pin B8, I think.

On PC/XT systems, the pin had a different purpose (related to slot 😎.

More information:
https://www.lo-tech.co.uk/wiki/IBM_Personal_C … em_Board_Slot_8

Since zero wait states on an ISA device is sort of a “when other stuff is ready “ “as fast as I can go boss” scenario it would be somewhat interesting to compare a 0ws 8bit to 16 bit ISA memory device to see if any other collisions make it worse.

If I remember correctly 16 bit reads and writes to an 8 bit peripheral have other horrifying bottlenecks
but with zero wait states 8 bit ISA theoretically Should be able to move nibbles and byte sized data faster than the onboard very slow 16 bit ram with its hard coded wait states.

Always felt funny that a true IBM 5170 could technically use properly designed 0ws 16bit ISA ram faster than its own onboard stuff in most circumstances.

Reply 5 of 8, by Jo22

User metadata
Rank l33t++
Rank
l33t++
rmay635703 wrote on 2025-09-09, 21:26:

Always felt funny that a true IBM 5170 could technically use properly designed 0ws 16bit ISA ram faster than its own onboard stuff in most circumstances.

Hi! That reminds me of the XT/286 model. If memory serves, didn’t it have 0WS memory?
This is so odd, it basically was the highest end model in an "antique" PC/XT chassis! 🤣

"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 8, by Pickle

User metadata
Rank Member
Rank
Member
rmay635703 wrote on 2025-09-09, 19:53:

Next there is a utility that measures the speed of every kb of ram to test cache speeds (somewhere, everyone here screenshots it). I think it works on 286.

i think your thinking about speedsys (show graph) there also cachechk which shows the usec for every address
both are included in phls computer lab benchmark pack.

checkit has a memory tester but does nothing about speed.

Reply 7 of 8, by Jo22

User metadata
Rank l33t++
Rank
l33t++

Syschk has some benchmarks, but I don't know how detailed it is.

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