VOGONS


Reply 80 of 178, by WJG6260

User metadata
Rank Member
Rank
Member
Anonymous Coward wrote on 2023-10-01, 08:37:
mkarcher wrote on 2023-10-01, 05:57:

Which you do. Unless you use the patched BIOS, you just install the missing memory, and you get access to 1280x1024x256c (albeit interlaced). On the other hand, the manual does not claim that the PCBs for the 80MHz and the 110MHz version is identical. I see that you compared your card with the 110 MHz Bali card, and those cards were identical - but this doesn't necessarily mean that the Bali card actually makes use of the 110MHz DAC (although buying the high speed DAC and running it at lower speed only would seem strange). The DAC is no user-servicable part, so the manual doesn't need to contain the instructions required to adapt the card to a DAC of a different speed.

Is the user's manual for the Bali32 available?

I can scan the entire manual, if anyone so desires. It may take a little, but I don't mind. I also have images of the original driver diskettes for the Bali32. Would that be of any help in this endeavor? I know Feipoa attached the info about the video modes and the rest is standard manual stuff, but maybe there's something that would be useful?

-Live Long and Prosper-

Feel free to check out my YouTube and Twitter!

Reply 81 of 178, by feipoa

User metadata
Rank l33t++
Rank
l33t++

WJG, if you do scan it, are you able to do it in 1-bit so that the PDF is small enough to attach and so that it will print well? 300-400 dpi is probably sufficient. See the example I included earlier.

mkarcher, I received a PM about trying to force this ARK1000VL card into 1024x768x64K mode at 56-60 Hz. Do you think it is possible to accomplish this if running VCLK at 130 MHz (the max the PLL can output), increasing MCLK, and altering the VGA BIOS?

Plan your life wisely, you'll be dead before you know it.

Reply 82 of 178, by WJG6260

User metadata
Rank Member
Rank
Member
feipoa wrote on 2023-10-09, 00:20:

WJG, if you do scan it, are you able to do it in 1-bit so that the PDF is small enough to attach and so that it will print well? 300-400 dpi is probably sufficient. See the example I included earlier.

I think so. I don’t have a good flat-top scanner anymore, unfortunately, but I have access to a couple of HP all-in-ones with good scanning features and I’m pretty certain I can set the DPI to 300-ish.

I’ll take a look tomorrow afternoon. The manual isn’t too long, so it should be easy enough 😀

-Live Long and Prosper-

Feel free to check out my YouTube and Twitter!

Reply 83 of 178, by Anonymous Coward

User metadata
Rank l33t
Rank
l33t

Damn. I miss my Umax SCSI flatbed scanner.
Yes, I think it would be nice to have a full scan of the manual. Include the front and back covers of the book too if possible.
Is there anything interesting on the original diskettes that's not included in the barebones version?
Disk images would probably be nice to have anyway.
It's hard to say when the next opportunity will come along to have this stuff preserved, and we don't want it to get lost like many other things.

"Will the highways on the internets become more few?" -Gee Dubya
V'Ger XT|Upgraded AT|Ultimate 386|Super VL/EISA 486|SMP VL/EISA Pentium

Reply 84 of 178, by feipoa

User metadata
Rank l33t++
Rank
l33t++

My Umax Astra 600S was the best scanner I ever had. It was SCSI and kept working up until about 5 years ago.

WJG, just make sure that text-only pages are scanned in 1-bit, or black/white (not greyscale). You might need to play with the threshold in the beginning to get it just right.

Is there any interest in the 2themax manual? I can scan it as well, however I found the Bali manual to contain more information on operating modes.

Plan your life wisely, you'll be dead before you know it.

Reply 85 of 178, by mkarcher

User metadata
Rank l33t
Rank
l33t
feipoa wrote on 2023-10-09, 00:20:

mkarcher, I received a PM about trying to force this ARK1000VL card into 1024x768x64K mode at 56-60 Hz. Do you think it is possible to accomplish this if running VCLK at 130 MHz (the max the PLL can output), increasing MCLK, and altering the VGA BIOS?

Obviously this will overclock the CRTC / Shift Register engine in the ARK1000 and it will overclock the 8-bit pixel bus between the ARK and the DAC. The analog part oft the DAC will run at 65MHz, which is fine, so there will be no image sharpness issues (like what you observed with the 80MHz DAC at 110MHz)

Apart from overclocking, this mode would require 130MB/s sustained data rate from memory to the ARK1000 chip. You remember that we already had issues at 110MB/s and required to increase MCLK to sustain that data rate at the FIFO configuration set by the BIOS for that mode.

I expect (but can't guarantee) that 1024x768x64K non-interlaced will work with a modified BIOS, at least in constrained circumstances like the chips being cold and sufficiently fast RAM used at a suitable MCLK.

Reply 86 of 178, by darry

User metadata
Rank l33t++
Rank
l33t++

I unfortunately don't have anything to contribute to this interesting thread, except to say that it reminds me of the time about 25 years ago where I tried to and somewhat succeeded in running an S3 Virge 325 at 1024x768 in 24-bit color at just about 60Hz, by tweaking memory and CRTC timings with PowerStrip just right. It worked great for a bit, then it either crashed or sync got lost (maybe both in alternation, it has been a while), so reboot and repeat until I got tired of it and accepted to live with 16-bit color.

Best of luck with getting the most out of that Ark chip.

Reply 87 of 178, by feipoa

User metadata
Rank l33t++
Rank
l33t++

mkarcher, your response sheds a glimmer of hope. Would you be interested in working on such a VGA BIOS hack? I don't think many users here, myself included, would have to know-how for this sort of modification. I'd be able to do the testing once my 50 ns SOJ FPM DRAM arrives.

Plan your life wisely, you'll be dead before you know it.

Reply 88 of 178, by mkarcher

User metadata
Rank l33t
Rank
l33t
feipoa wrote on 2023-10-10, 07:28:

mkarcher, your response sheds a glimmer of hope. Would you be interested in working on such a VGA BIOS hack?

I can try to prepare a patch that replaces the 1024x768x64k interlaced mode by an overclocked non-interlaced mode. Please don't hold your breath, though. If that patch is successfully, I might have a deeper look whether it seems possible to re-use the refresh setting for the 256 color mode in the hi-color mode, too, so the (DOS) user gets the choice to use interlaced or NI, but the Windows NT user will not be able to use that mode, because the NT driver wouldn't know how to map the refresh rate setting to configuration bits.

Reply 89 of 178, by CoffeeOne

User metadata
Rank Oldbie
Rank
Oldbie

Since I have an Ark 1000 VL card, too, I followed this thread. I have the Octec one.

I re-inserted the second megabyte of dram and programmed the bios that was attached by Feipoa.
No hardware modifications, except bios change.
So the card works.
Then I loaded up Windows 98SE, and installed the 1.29_newer driver again (from Vogonsdrivers).
I wanted to try 800x600 true colour.

First it did not let me select it, 24bit was only available for 640x480.
But the "Ark tools" did it.
Reboot was necessary, AND:
800x600 24 bit was displayed. 60Hz refresh rate.
See the picture.

Attachments

  • ark1000-true.jpg
    Filename
    ark1000-true.jpg
    File size
    1.92 MiB
    Views
    2045 views
    File license
    Fair use/fair dealing exception

Reply 90 of 178, by feipoa

User metadata
Rank l33t++
Rank
l33t++

You got further than I did with 800x600x24-bit. What speed RAM do you have on your card? I'm still waiting for my 50 ns FPM SOJ RAM to arrive.

Do you plan in increasing your MCLK to try 1280x1024x256c?

Plan your life wisely, you'll be dead before you know it.

Reply 91 of 178, by CoffeeOne

User metadata
Rank Oldbie
Rank
Oldbie
feipoa wrote on 2023-10-29, 03:15:

You got further than I did with 800x600x24-bit. What speed RAM do you have on your card? I'm still waiting for my 50 ns FPM SOJ RAM to arrive.

Do you plan in increasing your MCLK to try 1280x1024x256c?

mkarcher wrote (I overlooked that)
"
With the 110MHz RAMDAC, the 800x600x16M mode is available at 56Hz (110MB/s) or 60Hz (120MB/s, again overclocking the DAC).
"
So probably I should try 56Hz.
It is possible via the Ark Tools. Windows display manager still shows 640x480 24 bit, but it is really 800x600 24bit.
It seems to work, but the screen flickers every 5 or 10 seconds randomly. I guess it is a borderline mode for my card.
The monitor's OSD show 55Hz. Maybe your TFT isn't able to output 55/56Hz, mine is.
Re: 3 (+3 more) retro battle stations

I don't know how to increase MCLK, maybe I should read the whole thread again.

Attachments

Reply 92 of 178, by CoffeeOne

User metadata
Rank Oldbie
Rank
Oldbie

UPDATE:
I ran Wintune 2.0 with 800x600 24bit 56Hz.
It gives about ~1950kPixel/sec. That is super slow.
With 800x600 16bit 72Hz it is ~6700kPixel/sec.

I yesterday run 800x600 32bit 60Hz on the PVI with the Ati Rage Pro PCI, and it has ~11100kPixel/sec.

I am aware that the Ark card is not a great performer under Windows with higher resolutions or higher colour depths.
But still: If I would get this mode running stable without flickering, it is not very interesting for me.

Reply 93 of 178, by feipoa

User metadata
Rank l33t++
Rank
l33t++

It is interesting that you could do 800x600x24bit at 56 Hz. The manual for one of my TFT's states that it can handle vertical scan frequencies between 56 - 85Hz. The other TFT manual states it suporrts 800x600 at 55-75 Hz. I tried both monitors previously, but both show black screen at 800x600x24bit.

For my purposes, the allure of the ARK1000VL is for its DOS speed, with 3D graphics being handled by a Voodoo2. I still would like a working Windows desktop resolution of 1024x768x65K. I was going to live with 1280x1024x256c, but I am getting application errors stating that it needs 16-bit colour to run. Thus, I have to switch resolutions to 800x600x65k to run certain apps. It is a little bothersome.

Plan your life wisely, you'll be dead before you know it.

Reply 94 of 178, by mkarcher

User metadata
Rank l33t
Rank
l33t
CoffeeOne wrote on 2023-10-29, 08:22:
UPDATE: I ran Wintune 2.0 with 800x600 24bit 56Hz. It gives about ~1950kPixel/sec. That is super slow. With 800x600 16bit 72Hz i […]
Show full quote

UPDATE:
I ran Wintune 2.0 with 800x600 24bit 56Hz.
It gives about ~1950kPixel/sec. That is super slow.
With 800x600 16bit 72Hz it is ~6700kPixel/sec.

This shows that the memory interface of the ARK1000 is at its limit:

800x600 24 bit at 56Hz requires 110MB/s sustained transfer rate. 800x600 16 bit at 72Hz requires just 94.5 MB/s. At 110MB/s, there is nearly no bandwidth left for the CPU to draw pixels. The 60Hz mode requires 120MB/s, and as you screenshot shows, the card is unable to reliably provide that data rate at all, even if no drawing operations take place.

To increase the memory bandwidth of the ARK1000, you need to increase the memory clock. I suspect the fast page-mode burst rate of the ARK1000 is 2 cycles per 32-bit word. At a clock of 55 MHz (the original clock of feipoa's card, IIRC), this would be 110MB/s theoretical maximum, which explains why this is insufficient for 1280x1024 @ 60Hz, which requires 110MB/s continous practical throughput. As your card is able to just deliver 110MB/s, but fails at 120 MB/s, I assume your card uses a memory clock of 60MHz or 65MHz.

The issues we are facing at 800x600x24 and 1280x1024x8 NI are not due to sloppy programming that can "just be fixed" by fixing the BIOS or graphics driver, but this is at the very limit of the hardware limits of the ARK1000 architecture.

The ARK2000 has much more capacity than the ARK1000: It has a 64 bit memory interface, instantly doubling the throughput, and as the product brief indicates, it has specific EDO support, which might provide 1 cycle per 64-bit word instead of 2 cycles per 64-bit word. I don't know whether this is actually true for the ARK chips, but I know for sure that S3 introduced a "single cycle EDO mode" with the Trio64 or Trio64V+, so it is likely the competition did alike.
[/quote]

CoffeeOne wrote on 2023-10-29, 08:22:

But still: If I would get this mode running stable without flickering, it is not very interesting for me.

The flickering is most likely not due to the graphics card, but due to your monitor, deciding that there is "no signal" if the vertical frequency is below 56Hz, and you just hit the limit of that monitor. Check whether you have any kind of SVGA CRT (standard VGA is not meant to synchronize to 35kHz), and whether you can reproduce the flickering there. If the mode works fine on a CRT, but flickers on your CRT, a BIOS patch that reduces the blanking time will help. With reduced blanking, you will get slightly higher refresh rate at the same dot clock / data transfer rate.

Reply 95 of 178, by CoffeeOne

User metadata
Rank Oldbie
Rank
Oldbie
mkarcher wrote on 2023-10-29, 10:39:
This shows that the memory interface of the ARK1000 is at its limit: […]
Show full quote
CoffeeOne wrote on 2023-10-29, 08:22:
UPDATE: I ran Wintune 2.0 with 800x600 24bit 56Hz. It gives about ~1950kPixel/sec. That is super slow. With 800x600 16bit 72Hz i […]
Show full quote

UPDATE:
I ran Wintune 2.0 with 800x600 24bit 56Hz.
It gives about ~1950kPixel/sec. That is super slow.
With 800x600 16bit 72Hz it is ~6700kPixel/sec.

This shows that the memory interface of the ARK1000 is at its limit:

800x600 24 bit at 56Hz requires 110MB/s sustained transfer rate. 800x600 16 bit at 72Hz requires just 94.5 MB/s. At 110MB/s, there is nearly no bandwidth left for the CPU to draw pixels. The 60Hz mode requires 120MB/s, and as you screenshot shows, the card is unable to reliably provide that data rate at all, even if no drawing operations take place.

To increase the memory bandwidth of the ARK1000, you need to increase the memory clock. I suspect the fast page-mode burst rate of the ARK1000 is 2 cycles per 32-bit word. At a clock of 55 MHz (the original clock of feipoa's card, IIRC), this would be 110MB/s theoretical maximum, which explains why this is insufficient for 1280x1024 @ 60Hz, which requires 110MB/s continous practical throughput. As your card is able to just deliver 110MB/s, but fails at 120 MB/s, I assume your card uses a memory clock of 60MHz or 65MHz.

The issues we are facing at 800x600x24 and 1280x1024x8 NI are not due to sloppy programming that can "just be fixed" by fixing the BIOS or graphics driver, but this is at the very limit of the hardware limits of the ARK1000 architecture.

The ARK2000 has much more capacity than the ARK1000: It has a 64 bit memory interface, instantly doubling the throughput, and as the product brief indicates, it has specific EDO support, which might provide 1 cycle per 64-bit word instead of 2 cycles per 64-bit word. I don't know whether this is actually true for the ARK chips, but I know for sure that S3 introduced a "single cycle EDO mode" with the Trio64 or Trio64V+, so it is likely the competition did alike.

CoffeeOne wrote on 2023-10-29, 08:22:

But still: If I would get this mode running stable without flickering, it is not very interesting for me.

The flickering is most likely not due to the graphics card, but due to your monitor, deciding that there is "no signal" if the vertical frequency is below 56Hz, and you just hit the limit of that monitor. Check whether you have any kind of SVGA CRT (standard VGA is not meant to synchronize to 35kHz), and whether you can reproduce the flickering there. If the mode works fine on a CRT, but flickers on your CRT, a BIOS patch that reduces the blanking time will help. With reduced blanking, you will get slightly higher refresh rate at the same dot clock / data transfer rate.
[/quote]

Thank you for the explanantions.
I do have a CRT, which I did not run for a long time, but anyway I don't want to be Windows run in a slow motion mode, so that is not a good option.
Just the be sure, you wrote "At 110MB/s, there is nearly no bandwidth left for the CPU to draw pixels"
With "CPU" you mean the Ark1000 chip, is it correct?
So I could try to increase the memory clock, but as I said, I have no clue how to do it.
Also the main (first) memory is soldered 70ns FPM and I am not going to desolder it, it is too cumbersome for me.
So chances are low, that I can gain something.

Reply 96 of 178, by mkarcher

User metadata
Rank l33t
Rank
l33t
CoffeeOne wrote on 2023-10-29, 11:23:

Just the be sure, you wrote "At 110MB/s, there is nearly no bandwidth left for the CPU to draw pixels"
With "CPU" you mean the Ark1000 chip, is it correct?

No, I was acutally thinking about the 486 processor, that communicates through the VL bus (or PCI bus, there are ARK1000 PCI cards) to the ARK1000 chip, that needs to write the data received from the CPU into the graphics memory. This competes with the ARK1000 chip reading data from memory to output the pixels to the monitor (via the RAMDAC chips). At 110MB/s, the process of reading video data for displaying is neary occupying the maximum bandwidth the memory interface can handle. The speed indicated by Wintune seems to be how fast the 486 processor can write into video memory. The ARK1000 chip has a buffer that can store some write requests, and likely combine subsequent writes into the same "page" into fast page mode write cycles. When this buffer is full, the ARK1000 throttles the 486 CPU by delaying the response on the VL bus until there is space again. At 800x600 with 24bpp, the ARK chip can't fit more than ~2MPix/s, which equals 6MB/s, into the remaining bandwidth.

CoffeeOne wrote on 2023-10-29, 11:23:

So I could try to increase the memory clock, but as I said, I have no clue how to do it.

You need to add or remove some configuration resistors on the card. The memory clock is fixed during card production, it is not programmable by the Windows driver or the BIOS. On feipoas card shown in the OP, all of R35, R36 and R37 are installed, which results in 55MHz. To get 1280x1024 8bpp working, feipoa has removed R37, which increased the memory clock to 65MHz. If you post a good photo of the area around the clock chip (CH9294G or ARK1294A), I can likely find out what changes are required to get to a higher MCLK that might allow 60Hz and increase performance.

CoffeeOne wrote on 2023-10-29, 11:23:

Also the main (first) memory is soldered 70ns FPM and I am not going to desolder it, it is too cumbersome for me.
So chances are low, that I can gain something.

70ns FPM doesn't sound like promising for running with an increased memory clock. I checked the datasheet of the 70ns FPM chips soldered to feipoas card, and there official specifcation is a minimum page mode cycle time of 40ns (minimum page mode cycle time slightly higher that the RAS access time, that's how the chips are classified, is usual). Assuming a 2-cycle access pattern, a maximum cycle time of 40ns translates to a maximum in-spec MCLK of 50MHz. So it's not surprising at all that these chips failed to operate properly at 70MHz.

The raw maths is: At 40ns page mode cycle time, each of these chips can perform 25 million reads per second. As the ARK1000 does not do bank interleaving (that's where the ET4000/W32i shines), it will only make use of a single bank at a time. A single bank consists of enough memory chips to provide 32 bits (likely 8 chips of 4 bits each or 2 chips of 16 bits each). As 32 bits are 4 bytes, the maximum in-spec rate at a 40ns cycle time would be 4bytes/read * 25M read/s = 100MB/s. Unless you have 70ns RAM that allows unusual fast FPM timing, the memory is already overclocked at the current configuration. Except for the knowledge that the ARK1000 doesn't do bank interleaving, this calculation does not use any properties of your video card, just the properties of the memory chips, so whatever the ARK1000 does to get 110MB/s out of these chips has to be violating the datasheet timing requirements, which doesn't inspire much hope for remaining margin for higher MCLKs. I'm afraid your judgement that your chances are low to improve the 60Hz mode is correct.

Reply 98 of 178, by rasz_pl

User metadata
Rank l33t
Rank
l33t
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.

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