VOGONS


Reply 100 of 163, by Agent of the BSoD

User metadata
Rank Member
Rank
Member
Jepael wrote:
elianda wrote:

Could you compile a small tool as well that allows to set the bit 'ON' and 'OFF' from plain DOS on the fly?

Here are two simple DOS .com programs to either turn the bit on or off, but I haven't tested these. I used NASM to compile these so I haven't tested them on S3 card. These are so simple you could just do these in debug and save them.

I just did a quick test with these on my GX2s and they all work great! The video output looks so much better. (although I wasn't able to test one card as it seems to have bitten the dust and won't POST anymore 😢)

Pentium MMX 233 | 64MB | FIC PA-2013 | Matrox Mystique 220 | SB Pro 2 | Music Quest MPU Clone | Windows 95B
MT-32 | SC-55mkII, 88Pro, 8820 | SB16 CT2230
3DFX Voodoo 1&2 | S3 ViRGE GX2 | PowerVR PCX1&2 | Rendition Vérité V1000 | ATI 3D Rage Pro

Reply 101 of 163, by feipoa

User metadata
Rank l33t++
Rank
l33t++

Is someone able to provide a walk-through as to exactly how to patch an affected card's BIOS to correct for the black level bug (that is, for those with an EEPROM programmer). What index to look at in the HEX code; what to change; what and how to recalculate the checksum; if any part of the BIOS needs to be disassembled or separated before the code can be altered (like you need to do with PC's BIOS before altering the code).

I have an S3 Trio3D 86C365 PCI card from EONTRONICS which has this bug that I would like to patch. Alternately, if someone has a 365 PCI BIOS which doesn't have the black level bug, could you share it?

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

Reply 102 of 163, by James-F

User metadata
Rank Oldbie
Rank
Oldbie
wbc wrote:
Just fiddled around my Trio64V2\DX and probably found the way to fix the brightness issue. Run DEBUG.EXE and type these commands […]
Show full quote

Just fiddled around my Trio64V2\DX and probably found the way to fix the brightness issue.
Run DEBUG.EXE and type these commands:

o 3c4 08
o 3c5 06
o 3c4 1a
i 3c5

You will get a 8-bit hexadecimal value, subtract 20h from it (i.e. you got 3F, (3F - 20 = 1F)), this will set 5th bit of this value to 0, then type

o 3c5 <resulting_value> (i.e. o 3c5 1f)
q

and voila! 😀

YES!!! It works!
Virge/DX PCI (BIOS v2.01.16)

Jepael wrote:
elianda wrote:

Could you compile a small tool as well that allows to set the bit 'ON' and 'OFF' from plain DOS on the fly?

Here are two simple DOS .com programs to either turn the bit on or off, but I haven't tested these. I used NASM to compile these so I haven't tested them on S3 card. These are so simple you could just do these in debug and save them.

Unfortunately this does not. 😢
Jepael, Can you try to compile this again?
Or is there a way to run the debug command with a batch file?
How can I create this with debug.exe and save into an executable?

Last edited by James-F on 2017-06-23, 08:05. Edited 1 time in total.


my important / useful posts are here

Reply 103 of 163, by James-F

User metadata
Rank Oldbie
Rank
Oldbie

This is an all-in-one (including debug.exe) directory with a batch file to disable or enable the pedestal switch (aka. brightness fix).
It's basically wbc blank pedestal debug commands in a batch file, just follow the instructions in README.TXT (or this thread) and run RUN.BAT.

You can run the content of run.bat in autoexec.bat to have this fix enabled at boot.
autoexec.bat line:

C:\S3BRIGHT\DEBUG.EXE < C:\S3BRIGHT\OFF.SCR > NUL

Attachments

  • Filename
    S3BRIGHT.zip
    File size
    15.67 KiB
    Downloads
    326 downloads
    File license
    Fair use/fair dealing exception


my important / useful posts are here

Reply 104 of 163, by Rawit

User metadata
Rank Oldbie
Rank
Oldbie

Can one of the DEBUG guru's explain to me how I can toggle/set to 25.175 or 28.322? I'm trying to get a Savage4 to display DOS in 720x400 by setting the DCLK to 28.322.

Attachments

  • Low.png
    Filename
    Low.png
    File size
    184.02 KiB
    Views
    3420 views
    File license
    Fair use/fair dealing exception
  • High.png
    Filename
    High.png
    File size
    142.52 KiB
    Views
    3420 views
    File license
    Fair use/fair dealing exception
  • Registers.png
    Filename
    Registers.png
    File size
    144.82 KiB
    Views
    3423 views
    File license
    Fair use/fair dealing exception

YouTube

Reply 105 of 163, by Jepael

User metadata
Rank Oldbie
Rank
Oldbie
Rawit wrote:

Can one of the DEBUG guru's explain to me how I can toggle/set to 25.175 or 28.322? I'm trying to get a Savage4 to display DOS in 720x400 by setting the DCLK to 28.322.

Sure, but just by changing these bits don't switch the mode to 720x400, it's still 640x400 but 12% faster, you need to change the horizontal stuff as well.
Which is a bit odd, since DOS text mode should be 720x400 to begin with, and all 400-line modes look identical to the monitor so actually the monitor does not know if it has 720 or 640 pixels wide signal.
Are you sure you know what you are doing?

in debug:

O 3c2 XX

where XX is the required bit pattern in hex. It's a write only register but current value should be readable from 3cc with

I 3cc

400-line modes need negative HS polarity and positive VS polarity.
Thus, the register bits should be 01XX0111. The latter X is 0 as per your datasheet, but I don't know what the first X (PGS bit) should be set to, as that's specific to your card and that page is missing.

Maybe XX = 47, so "O 3c2 47"

Reply 106 of 163, by Rawit

User metadata
Rank Oldbie
Rank
Oldbie
Jepael wrote:

Are you sure you know what you are doing?

No 😊 But thanks for your post!

I have this Savage4 card that shows everything from DOS text to Mode 13h/Mode Y in 640x480@60hz, except the BIOS menu. It's a Savage4 card with digital out and it seems to behave differently than another Savage4 I had. I was wondering if my displays sees the signal incorrectly with this card in some cases (640x400@70hz and 640x480@60hz have both a pixelclock of 25.175Mhz), or if the cards BIOS/digital flat panel section just forces it somehow. I'm pretty sure it's 640x480 as my TV and scaler show this. Other cards give me 740x400 in the same setup, also in Mode 13h.

Reading the HW register doc I saw the mention of the 640/720 clock registers and I remembered this thread, so I thought "well, that's try that". Seems it's even more complex than I thought.

Also a bit curious: Lotus: The Ultimate Challenge doesn't suffer from slowdown with this card. Normally when using digital or playing it on a vintage laptop, it slows down as it uses the video as a ticker.

http://vgamuseum.info/index.php/cards/item/do … 65630b5a5a92e62

Attachments

  • PGS.png
    Filename
    PGS.png
    File size
    114.02 KiB
    Views
    3406 views
    File license
    Fair use/fair dealing exception

YouTube

Reply 107 of 163, by Rawit

User metadata
Rank Oldbie
Rank
Oldbie

Any advice how I read/write to registers with an index? There are a lot of settings at address 3C5H, but it uses indexes.

Edit: Figured it out, had to write the index to 3C4H, then I can use 3C5H. Didn't solve my problem though, as the settings seem correct. After reading all the values, it seems the problem I'm having is that I can't change the hsync/vsync polarity.

YouTube

Reply 109 of 163, by keropi

User metadata
Rank l33t++
Rank
l33t++

time for a little request bump 😁

I have this Powercolor Virge/DX vga

dlR4KFGl.jpg

It has the bright pedestal issue BUT wbc's S3BRIGHT/S3BLACK do not fix the issue. This is not a hardware issue since I moved the BIOS IC to a Stealth3D 2000pro that does not have the brightness bug and with the POWERCOLOR BIOS it has it.
The "special" thing about the POWERCOLOR BIOS is that it does not need the SVGA Compatibility option in games like Commander Keen or Dangerous Dave (tested on the Stealth3D as well, with the powercolor bios it does not need it either) so I am attaching the POWERCOLOR BIOS in hopes it can be patched 😀
Thanks!

Attachments

  • Filename
    powercolor-86C375.zip
    File size
    32.79 KiB
    Downloads
    139 downloads
    File license
    Fair use/fair dealing exception

🎵 🎧 PCMIDI MPU , OrpheusII , Action Rewind , Megacard and 🎶GoldLib soundcard website

Reply 110 of 163, by amijim

User metadata
Rank Member
Rank
Member

Hey Keropi , when i get back i will give you one original diamond stealth 3d pro pci and one elsa winner s3 virge to test.

Iwill ZmaxDP
Arima4way
Tyan s2885
Iwill MPX2
Gigabyte GA-7DPXDW+
Compaq SP700
Compaq ml350

Reply 111 of 163, by wbc

User metadata
Rank Member
Rank
Member
keropi wrote:

I am attaching the POWERCOLOR BIOS in hopes it can be patched 😀
Thanks!

don't bother with patching, it's v.1.01.03, so flash more recent v.2.01.07 BIOS or try these DEBUG commands 😉

--wbcbz7

Reply 112 of 163, by keropi

User metadata
Rank l33t++
Rank
l33t++
wbc wrote:
keropi wrote:

I am attaching the POWERCOLOR BIOS in hopes it can be patched 😀
Thanks!

don't bother with patching, it's v.1.01.03, so flash more recent v.2.01.07 BIOS or try these DEBUG commands 😉

oh yeah! this worked perfectly and without patches needed... thanks!!!
Is there a reason that you linked v2.01.07 and not v2.01.16 that is also available?

Offtopic question: do you happen to know what happens if you use a stock S3 BIOS with a Diamond card? Does it break the Diamond-specific software tools compatibility?
I can see here that for the 3D-2000pro there is also a 3.04 BIOS but I can't find it anywhere to download. The v1.01 BIOS that my card comes with has the scrolling issues in games like Keen so it would be nice to upgrade.

🎵 🎧 PCMIDI MPU , OrpheusII , Action Rewind , Megacard and 🎶GoldLib soundcard website

Reply 113 of 163, by keropi

User metadata
Rank l33t++
Rank
l33t++

I'm gonna answer my question above, having the generic BIOS on the 3D2000pro does not work well. DOS is OK but the win3.1 driver chooses an invalid mode or something and my lcd says the mode is not supported - it is supposed to boot at 640x480/60hz after the driver gets installed so it's a screenmode conflict or something.
Putting back the original BIOS works fine with the win3.1 installation.

Also v2.01.16 has the brightness issue (and does not work with the Diamond driver as well)

🎵 🎧 PCMIDI MPU , OrpheusII , Action Rewind , Megacard and 🎶GoldLib soundcard website

Reply 114 of 163, by appiah4

User metadata
Rank l33t++
Rank
l33t++

Apologies for this thread necromancy but I seem to have gotten no answers in another thread I made about this matter.. I am trying to use S3BRIGHT on a DOS 6.22 PC, but I get incorrect MS-DOS version errors when I do so. Is this utility not written for MS-DOS?

Retronautics: A digital gallery of my retro computers, hardware and projects.

Reply 115 of 163, by Ozzuneoj

User metadata
Rank l33t
Rank
l33t
keropi wrote:
oh yeah! this worked perfectly and without patches needed... thanks!!! Is there a reason that you linked v2.01.07 and not v2.01 […]
Show full quote
wbc wrote:
keropi wrote:

I am attaching the POWERCOLOR BIOS in hopes it can be patched 😀
Thanks!

don't bother with patching, it's v.1.01.03, so flash more recent v.2.01.07 BIOS or try these DEBUG commands 😉

oh yeah! this worked perfectly and without patches needed... thanks!!!
Is there a reason that you linked v2.01.07 and not v2.01.16 that is also available?

Offtopic question: do you happen to know what happens if you use a stock S3 BIOS with a Diamond card? Does it break the Diamond-specific software tools compatibility?
I can see here that for the 3D-2000pro there is also a 3.04 BIOS but I can't find it anywhere to download. The v1.01 BIOS that my card comes with has the scrolling issues in games like Keen so it would be nice to upgrade.

I just checked the Stealth 3D 2000 Pro I have, and it actually has the 3.04 BIOS (its identical to this card, except 4 of the memory modules are in sockets). What is the easiest way to dump the BIOS from this card and upload it here? I prefer a method that can be done on a PC. I have a very old BIOS programmer but I've never used it and have zero experience with such devices... I also have no idea if it'd be compatible.

It is worth mentioning that my 3D 2000 Pro actually gave me graphical artifacts around the mouse cursor in Windows 98SE when I last used it. This was on an ASUS TUV4X ApolloPro 133T board I believe. I'll test it again (may have been a software or compatibility issue), but even if the card is defective I doubt the BIOS is affected. I'd gladly supply the v3.04 BIOS if someone can explain a quick way to dump it.

Now for some blitting from the back buffer.

Reply 116 of 163, by KCompRoom2000

User metadata
Rank Oldbie
Rank
Oldbie
Ozzuneoj wrote:

I just checked the Stealth 3D 2000 Pro I have, and it actually has the 3.04 BIOS (its identical to this card, except 4 of the memory modules are in sockets). What is the easiest way to dump the BIOS from this card and upload it here? I prefer a method that can be done on a PC. I have a very old BIOS programmer but I've never used it and have zero experience with such devices... I also have no idea if it'd be compatible.

NSSI (Navrátil Software System Information) can be used to dump your video card's BIOS directly onto your PC.

Reply 117 of 163, by Ozzuneoj

User metadata
Rank l33t
Rank
l33t
KCompRoom2000 wrote:
Ozzuneoj wrote:

I just checked the Stealth 3D 2000 Pro I have, and it actually has the 3.04 BIOS (its identical to this card, except 4 of the memory modules are in sockets). What is the easiest way to dump the BIOS from this card and upload it here? I prefer a method that can be done on a PC. I have a very old BIOS programmer but I've never used it and have zero experience with such devices... I also have no idea if it'd be compatible.

NSSI (Navrátil Software System Information) can be used to dump your video card's BIOS directly onto your PC.

Awesome! That is a fantastic utility... very easy to use once installed. Just FYI to others, the nssi060.exe program is actually a DOS based installer. Renaming the file seems to cause it to fail an integrity check, so do not rename it. When you run it it will basically dump all of the necessary files into the current folder, so I recommend moving it to its own directory before running it in DOS.

Anyway, I was able to save the v3.04 BIOS from my card to a .VBI file using this program. I have attached it to this post.

If I wanted to flash an image like this to another card or another BIOS ROM chip, how would I go about doing that? I have a feeling there aren't any methods as easy as dumping the BIOS.

Attachments

  • Filename
    3D2KV304.zip
    File size
    18.85 KiB
    Downloads
    118 downloads
    File license
    Fair use/fair dealing exception

Now for some blitting from the back buffer.

Reply 118 of 163, by lvader

User metadata
Rank Member
Rank
Member
appiah4 wrote:

Apologies for this thread necromancy but I seem to have gotten no answers in another thread I made about this matter.. I am trying to use S3BRIGHT on a DOS 6.22 PC, but I get incorrect MS-DOS version errors when I do so. Is this utility not written for MS-DOS?

Make sure you have setver loaded

Reply 119 of 163, by Nemo1985

User metadata
Rank Oldbie
Rank
Oldbie

Hello, sorry for the necropost.
I'm testing the whole batch of s3 cards I have and I noticed that one of my virge dx has the bug, during the post the screen has an empty parts I also noticed it has lower image quality in windows, I took some pictures, like a very noticeable banding , funny enough it is also the one with the highest core\memory speed (70mhz).
I also have a weird Trio64v2/DX with the same bug it also has the weird feature of having all the ram chip socketed, so they can be removed.
That being said, is it possible to flash the fixed bios without a programmer? I used nssi059 to extract the bios, now I just need to fix and flash it, does anybody know if it's possible?

https://imgur.com/a/pqPvMsa

Thank you in advance.