Reply 100 of 178, by CoffeeOne
feipoa wrote on 2023-10-29, 13:36:CoffeeOne, are you able to share your VGA BIOS?
Sure.
feipoa wrote on 2023-10-29, 13:36:CoffeeOne, are you able to share your VGA BIOS?
Sure.
CoffeeOne wrote on 2023-10-29, 17:54:@mkarcher
I posted already an "ultra high resolution" picture here:
Re: 3 (+3 more) retro battle stations
you have 3 nice jumper footprints there JW1-3
https://github.com/raszpl/FIC-486-GAC-2-Cache-Module for AT&T Globalyst
https://github.com/raszpl/386RC-16 memory board
https://github.com/raszpl/440BX Reference Design adapted to Kicad
https://github.com/raszpl/Zenith_ZBIOS MFM-300 Monitor
CoffeeOne wrote on 2023-10-29, 17:54:@mkarcher
I posted already an "ultra high resolution" picture here:
Re: 3 (+3 more) retro battle stations
OK, on your card, memory clock is configured using JW1, JW2 and JW3 according to this table (C = closed, . = open):
1 2 3
. . . 50MHz
. . C 80 MHz
. C . 60 MHz (current configuration)
. C C 70 MHz
C . . 40 MHz
C . C 65 MHz
C C . 45 MHz
C C C 55 MHz (feipoa's starting configuration)
It seems JW1/JW2/JW3 can be replaced by a 3x2 pin header to make memory clock jumperable. The only interesting alternate configuration is 65MHz which should improve performance at 56Hz and enable proper display at 60Hz (at an equally bad performance as you have at 56Hz now). 70MHz would provide a sensible amount of margin regarding memory bandwidth, but as the NEC µPD424256C-70 provides a page mode cycle time of 45ns, which seems to allow a maximum memory clock of 44MHz, getting stable operation at 65MHz requires a lot of luck, and 70 feels just way too high.
rasz_pl wrote on 2023-10-29, 17:07:mkarcher wrote on 2023-10-29, 12:03:At 800x600 with 24bpp, the ARK chip can't fit more than ~2MPix/s, which equals 6MB/s
How is 24bit mode organized? I was under the impression most/all cards just did 32bits internally for simplicity making transfer efficiency even worse.
We obverse 32bpp for true-color modes on cards that have higher internal processing width than 8 bits. If the cards processes 16 or 32 bits at once, 24bpp pixels would be misaligned. If a graphics chip only provides an 8-bit DAC interface with the DAC combining 3 24-bit values into a single true-color pixel, a 24bpp layout is more natural, because it allows streaming the data to the DAC just as if it were a thrice-as-wide 256-color mode. Especially if the accelerator doesn't support anything specifically targetting 24 or 32 bpp, using a 24bpp layout makes a lot of sense. Both the ARK1000 and the CL-GD542x series work that way. Possibly the GD5429 even has some specific 24bpp acceleration features, I didn't read the data sheet thoroughly enough at moment.
VRAM-based cards that send complete 32-bit words from the VRAM directly to the DAC are a prime example of cards that can by design only run 32bpp, and can't provide a 24bpp mode.
I received my SOJ40 FPM DRAM today. They are commonly available on eBay. AS4C256K16F0-50JC
However, they all were stamped as 60 ns:
I then went to looking at the datasheet, and saw a curious statement indicating that 50 ns timings are also valid for 60 ns. Do we trust this?
The full datasheet is here:
Other than these "50 ns" modules, I have these 60 ns pieces from Siemens: hyb514171bj-60, datasheet:
Assuming the statement in the Alliance datasheet is correct, it looks like the Alliance modules are preferred over the Siemens.
Also, the datasheet for my 50 ns DIP DRAM nn514256P-50, is provided here:
Plan your life wisely, you'll be dead before you know it.
I didn't want to keep swapping the 0 ohm resistor, so I put on some headers. I just need to be careful not to knock them too hard, or there goes the pads.
With the "50 ns" SOJ FPM memory installed, I did quick tests in Win95 with MCLK at 70 MHz and 80 MHz. At 1280x1024x256c-60Hz, no distortion or artefacts were visible.
EDIT:
With my 50 ns DRAM in place, I was able to run 800x600x24bit at 60 Hz using the ARK Tools application from the Control Panel. Currently, I have MCLK set to 80 MHz, but it also worked at 65 MHz.
Plan your life wisely, you'll be dead before you know it.
feipoa wrote on 2023-11-01, 23:53:I then went to looking at the datasheet, and saw a curious statement indicating that 50 ns timings are also valid for 60 ns. Do we trust this?
I would trust it. Likely Alliance got production controlled well enough that all their chips conform to 50ns timing. On the other hand, a lot of products are specified to use "60ns" FPM RAM. If Alliance wouldn't offer chips marked as "-60", the manufacturers of those products either need to get a change approved, or they buy chips from the competition that are still marked "-60". Getting a change approved for a legacy product is a tedious task no manufacturer would like to do, so not offering "-60" chips is lost customer potential.
feipoa wrote on 2023-11-02, 07:43:I didn't want to keep swapping the 0 ohm resistor, so I put on some headers. I just need to be careful not to knock them to hard […]
I didn't want to keep swapping the 0 ohm resistor, so I put on some headers. I just need to be careful not to knock them to hard, or there goes the pads.
2themax_jumpered_MCLK.JPGWith the "50 ns" SOJ FPM memory installed, I did quick tests in Win95 with MCLK at 70 MHz and 80 MHz. At 1280x1024x256c-60Hz, no distortion or artefacts were visible.
EDIT:
With my 50 ns DRAM in place, I was able to run 800x600x24bit at 60 Hz using the ARK Tools application from the Control Panel. Currently, I have MCLK set to 80 MHz, but it also worked at 65 MHz.
800x600x24bit_ARK1000VL.jpg
Thanks for testing it. This means the small margin of 130MB/s (2*65) at 65MHz is enough to provide 120MB/s video data to the RAMDAC. Drawing performance will be atrocious at that configuration. This also means CoffeeOne may give 65MHz a shot for improved performance at 56Hz and to enable 60Hz. This also establishes that the MCLK limit is not imposed by the ARK1000 chip, but by the memory access time. 80MHz MCLK provides a lot of bandwidth.
I would be interested whether Doom or Quake scores change with 80MHz MCLK compared to 55MHz MCLK (your original configuration).
I do plan on running some Windows 95 and DOS tests shortly. For Windows 95, I was going to run Tom2D and WinTune98 at 800x600x24bit, 800x600x16bit, and 1280x1024x8bit. I'd start with 80 MHz, then try 65 MHz.
For DOS, I can run DOOM and Quake at 55 MHz MCLK and 80 MHz MCLK.
Anything else of interest?
Plan your life wisely, you'll be dead before you know it.
feipoa wrote on 2023-11-02, 09:56:I do plan on running some Windows 95 and DOS tests shortly. For Windows 95, I was going to run Tom2D and WinTune98 at 800x600x24bit, 800x600x16bit, and 1280x1024x8bit. I'd start with 80 MHz, then try 65 MHz.
For DOS, I can run DOOM and Quake at 55 MHz MCLK and 80 MHz MCLK.
Anything else of interest?
Something like this https://archive.org/details/win3_torque
might be interesting, though the fact that it is so dated might cause it to not be accurate or relevant.
EDIT : Some more context about it
https://books.google.com/books?id=cTwEAAAAMBA … g=PA38&lpg=PA38
AND
https://books.google.com/books?id=PTwEAAAAMBA … g=PA39&lpg=PA39
OK, I'll run Wintune98 and Torque for Windows 95.
I ran some DOS tests, which were unremarkable.
MCLK = 80 MHz
Doom = 963 realtics
Quake = 21.1 fps
3DBench2 = 118.5 fps
Topbench score = 514
Topbench VidMem 50 us (max value from the live readout)
MCLK = 55 MHz
Doom = 972 realtics
Quake = 21.1 fps
3DBench2 = 118.4 fps
Topbench score = 415
Topbench VidMem 76 us (max value from the live readout)
In games, only a slight edge in favour of 80 MHz. Topbench results added.
Plan your life wisely, you'll be dead before you know it.
Run TOPBENCH if you want to see some real difference in DOS.
I've added the topbench results.
I also decided to quickly run the Windows 95 tests. The Torque values largely paralleled the WinTune98 values. I can include them if anyone wants to see them.
WinTune98 Video Test
MCLK = 80 MHz
800x600x24 - 60 Hz
4.265 MPixels/s
800x600x24 - 56 Hz
4.686 MPixels/s
800x600x16 - 72 Hz
14.523 MPixels/s
800x600x16 - 60 Hz
14.243 MPixels/s
800x600x16 - 56 Hz
16.00 MPixels/s
1280x1024x8 - 60 Hz
24.019 MPixels/s
.
.
.
.
MCLK = 65 MHz
800x600x24 - 60 Hz
2.548 MPixels/s
800x600x24 - 56 Hz
3.131 MPixels/s
800x600x16 - 72 Hz
10.975 MPixels/s
800x600x16 - 60 Hz
12.897 MPixels/s
800x600x16 - 56 Hz
13.342 MPixels/s
1280x1024x8 - 60 Hz
18.036 MPixels/s
First off, when Windows 95, you can really feel the speed drop with 24-bit colour, which is more noticeable at 65 MHz compared to 80 MHz, tha tis, 2.6 MP/s vs. 4.3 MP/s. A similar trend was noticed for 56, 60, and 72 Hz. However, the lower the monitor's refresh rate, the faster the test results, e.g. 4.3 MP/s for 60 Hz vs. 4.7 MB/s for 60 Hz. Would it be best to stick with 56 Hz, that is, assuming an LCD is being used rather than a CRT?
The results for 1280x1024x8 were quite a bit better at 80 MHz (24 MP/s) compared to 65 MHz (18 MP/s).
The results for 1280x1024x8 were quite a bit faster than for 800x600x16, that is, 24 MP/s vs. 14.2 MP/s.
The results for 800x600x24 were about 3.5x worse than for for 800x600x16. Is this 24-bit mode worth it?
Should we try forcing 1024x768x16 at 56/60 Hz?
Plan your life wisely, you'll be dead before you know it.
To your last question - yes.
This is the most interesting mode.
feipoa wrote on 2023-11-01, 23:53:I received my SOJ40 FPM DRAM today. They are commonly available on eBay. AS4C256K16F0-50JC […]
I received my SOJ40 FPM DRAM today. They are commonly available on eBay. AS4C256K16F0-50JC
However, they all were stamped as 60 ns:
IMG_2664.JPGI then went to looking at the datasheet, and saw a curious statement indicating that 50 ns timings are also valid for 60 ns. Do we trust this?
AS4C256K16F0.pngThe full datasheet is here:
Memory-Alliance-FPM_SOJ40_AS4C256K16F0.PDFOther than these "50 ns" modules, I have these 60 ns pieces from Siemens: hyb514171bj-60, datasheet: Memory-HYB514171BJ-60.pdf
Assuming the statement in the Alliance datasheet is correct, it looks like the Alliance modules are preferred over the Siemens.
Also, the datasheet for my 50 ns DIP DRAM nn514256P-50, is provided here: Memory-NMB_NN514256P-45.pdf
Chips are not consistent (font and color of prints), indicative of chinese sellers. Where did you get these from, have the link?
Cheers,
Great Northern aka Canada.
feipoa wrote on 2023-11-02, 11:57:OK, I'll run Wintune98 and Torque for Windows 95. […]
OK, I'll run Wintune98 and Torque for Windows 95.
I ran some DOS tests, which were unremarkable.
MCLK = 80 MHz
Doom = 963 realtics
Quake = 21.1 fps
3DBench2 = 118.5 fps
Topbench score = 514
Topbench VidMem 76 us (max value from the live readout)MCLK = 55 MHz
Doom = 972 realtics
Quake = 21.1 fps
3DBench2 = 118.4 fps
Topbench score = 415
Topbench VidMem 50 us (max value from the live readout)In games, only a slight edge in favour of 80 MHz. Topbench results added.
I would have added under DOS Wolf3D: That one usually magnifies changes, probably not here though (?)
Also speedsys video throughput, which is not very meaningful, but a rough indication if something changed for the good.
You did already the windows bench runs, which for sure are much more dependant on the increased clock.
At what speed does your board run? 180 or 200MHz? 21.1 quake and 972 tics doom seems to be incredible fast.
pshipkov wrote on 2023-11-02, 14:06:To your last question - yes.
This is the most interesting mode.
I don't agree.
The mode would be interesting indeed, but we can already guess that the performance will be very bad - just referring what mkarcher wrote / found out. The Ark even has a performance hit at 800x600 when going from 256c to 64k c.
And as Feipoa already mentioned, 800x600 24 bit is also NOT interesting on the Ark, because is starts to get really slow.
So the only (for me) interesting mode is 1280x1024 256c @60Hz when using the second megabyte. If this is not going to be used, one can skip the "upgrade" to 2 MB.
The WinTune test is a good reference point, but at least i never felt constrained by hardware that stays above 2000-3000 kpixels/second, but yes - around that threshold you may start feeling it in certain ways.
Even if A1k slips to these numbers at 1024x768x16 it will still be the better option compared to 800x600x16bpp at 6000-7000 kpixels/second.
I don't know if you experimented with that stuff yourself, but if you do, you will see what i mean.
(btw, Feipoa listed his metrics in mpixels above, notice the Mega)
pshipkov wrote on 2023-11-02, 20:19:The WinTune test is a good reference point, but at least i never felt constrained by hardware that stays above 2000-3000 kpixels […]
The WinTune test is a good reference point, but at least i never felt constrained by hardware that stays above 2000-3000 kpixels/second, but yes - around that threshold you may start feeling it in certain ways.
Even if A1k slips to these numbers at 1024x768x16 it will still be the better option compared to 800x600x16bpp at 6000-7000 kpixels/second.
I don't know if you experimented with that stuff yourself, but if you do, you will see what i mean.
(btw, Feipoa listed his metrics in mpixels above, notice the Mega)
I understand.
But my Wintune 2.0 values were below 2MPixel/s for 800x600 24bit c @ 56Hz. So I assume it is worse at 1024x768 16bit c @60Hz.
But I did not increase the clk yet.
And I probably should search for Wintune 98, that sounds appropriate for Windows 98 😁
mkarcher wrote on 2023-11-02, 09:47:feipoa wrote on 2023-11-01, 23:53:I then went to looking at the datasheet, and saw a curious statement indicating that 50 ns timings are also valid for 60 ns. Do we trust this?
I would trust it. Likely Alliance got production controlled well enough that all their chips conform to 50ns timing. On the other hand, a lot of products are specified to use "60ns" FPM RAM. If Alliance wouldn't offer chips marked as "-60", the manufacturers of those products either need to get a change approved, or they buy chips from the competition that are still marked "-60". Getting a change approved for a legacy product is a tedious task no manufacturer would like to do, so not offering "-60" chips is lost customer potential.
Would you trust it for all datecodes, or just the datecodes from after that spec. sheet was produced? In my IC photo there are datecodes from 41-2000 to 50-2003. The date on that spec sheet is 11 April 2001. The memory with the white printing is from 2000, while the brown printing from 2002-2003.
pentiumspeed wrote on 2023-11-02, 18:47:Chips are not consistent (font and color of prints), indicative of chinese sellers. Where did you get these from, have the link?
Cheers,
They were from eBay and shipped from China. The white font units look authentic, as do the units with 0350 and 0311 datecodes. The unit with 0220 datecode has different font. I have been testing with the white font units with 0041 & 0048 datecodes.
pshipkov wrote on 2023-11-02, 14:06:To your last question - yes.
This is the most interesting mode.
Forcing 1024x768x16bit will require a modification to the BIOS. The chances of it working are slim, so not sure if mkarcher is still interested in providing this hack. I assume we'd need VCLK set to the max? 130 MHz.
CoffeeOne wrote on 2023-11-02, 20:35:I understand. But my Wintune 2.0 values were below 2MPixel/s for 800x600 24bit c @ 56Hz. So I assume it is worse at 1024x768 16b […]
I understand.
But my Wintune 2.0 values were below 2MPixel/s for 800x600 24bit c @ 56Hz. So I assume it is worse at 1024x768 16bit c @60Hz.
But I did not increase the clk yet.
And I probably should search for Wintune 98, that sounds appropriate for Windows 98 :D
How much worse would 1024x768x16bit be compared to 800x600x24? I could probably live with 5 MP/s w/80 MHz MCLK since I intended to use the Voodoo2 for Windows 3D.
COffeeOne, did you run into the issue whereby shutting down Windows 95 when using 800x600x24 caused a black screen? Maybe it is only an issue in w95? I suspect it is related to using the ARK Tools. Looks like this:
I also decided to run the tests with the 60 ns Siemens FPM at 80 MHz. 60 ns is not sufficient. This was what it looked like with 60 ns:
The best I could run with 60 ns was 70 MHz MCLK.
CoffeeOne wrote on 2023-11-02, 19:52:At what speed does your board run? 180 or 200MHz? 21.1 quake and 972 tics doom seems to be incredible fast.
Am5x86 at 180 MHz.
Plan your life wisely, you'll be dead before you know it.