Diamond Stealth 64 VRAM and OS/2 Warp

World         Australia | Europe | North America | Singapore
Europe Austria | Birmingham | Budapest | France | Italy | London | Switzerland | TeamOS/2 (Germany)
North America Berkeley | Chattanooga | Minnesota | Nova Scotia | Ontario | Pennsylvania | TeamOS/2
Last update: 6th August, 1995
Jon,

Due to non-video related problems I was forced to re-install Warp, and consequently had to bring myself up to date on the installation of video drivers for the Diamond Stealth 64 VRAM. Although I managed to get things working, the Diamond Stealth 64 VRAM (and apparently DRAM) situation re OS/2 is NOT a pretty picture!

I am very grateful to Glenn Drayton-Bright for his posting on The Warp Pharmacy titled "Using Diamond Stealth 64 with Warp Fullpack/Warp Connect" He describes two main problems, and it turns out that one of those two problems is also true for the Diamond Stealth 64 VRAM drivers installation for "Warp without Windows Included" (or whatever it's called). The installation for the VRAM card also patches the OS/2 kernel and then "updates" the system patch level from 3.0 to 2.1. I had discovered that my previous Warp 3.0 installation had somehow gotten changed to a 2.1 syslevel, but did not know how that had come about; now I know! In defense of Diamond Multi-Media, they do not claim that the drivers are for Warp: only for OS/2 2.1. It is possible to make them work with Warp, however, with certain limitations.

They work perfectly for me in 640x480x256, 800x600x256, 1280x1024x256, 640x480x65536, and 800x600x65536. They do NOT work for me at the selectable resolutions of 1024x768x256, 1024x768x65536, or 1152x864x256; with those choices it boots up to a black screen, although that was not the case with OS/2 2.1. Perhaps that is why IBM included the drivers with 2.1, but not with Warp. That probably also explains why they seem to work for some people but not for others. I had been using 1280x1024x256 for months without realizing that I would get a black screen if I attempted certain other resolutions.

You may remember that the original posting for "Using Diamond Stealth 64 with Warp" listed an ftp source for 964os1.zip and 964os2.zip, but that those files later disappeared from that site. You then updated the driver location to 964gxe.zip on hobbes.nmsu.edu. In preparation for my new installation I retrieved 964gxe.zip, but discovered that the included drivers were for various #9 brand S3 video cards. I don't know if they would have worked with my Diamond card or not, but since the instructions were for various models of #9 cards, and I didn't know which of them would be similar to my Diamond card, I went to ftp.diamondmm.com and retrieved 9OS2_A.EXE and 9OS2_B.EXE from the /pub/drivers/stl64.vrm directory. The included 9OS2_B.NFO file says:

------------------------------------------------------------------------------
|                       Diamond Computer Systems, Inc.                       |
|----------------------------------------------------------------------------|
|  Filename | 9OS2_B.EXE              || Comments: Updated Readme.S3 and     |
|  Product  | Stealth 64 VRAM         ||           S3INST.CMD                |
|  Usage    | OS2 v2.x Driver         ||           Please follow readme.1st  |
|  Version  | v 1.02       [2/2]      ||           before extracting.        |
|----------------------------------------------------------------------------|
|       1130 East Arques  Sunnyvale, CA  94086  Voice 408/736-2000        |
------------------------------------------------------------------------------

Diamond's updated Readme.S3 file contains some important information, including the notice that a "pre-defined monitor" must be selected when running their S64MODE.EXE because "Custom does not work properly under OS/2." In fact, their updated S64MODE.EXE does not even contain a "Custom" choice.

I followed Mr. Drayton-Bright's suggestion to edit the S3INST.CMD file to comment out the offending lines before running the installation, and also made the changes that were previously posted under "Using Diamond Stealth 64 with Warp," and which were originally provided to my by Jayant Murthy. (The modified S3INST.CMD, with both sets of changes incorporated, is attached.) I then installed the drivers to my new Warp installation, and took copious notes as I did so. The results of my experience follow, with the following caveats:

  1. This is for the Diamond Stealth 64 VRAM only: not the DRAM, and not the Video VRAM. Feedback tells me that it works for either 2 meg or 4 meg of VRAM, and either VL or PCI.
  2. This is for OS/2 Warp for Windows: not Warp "fullpack," and not Warp Connect. See also Using Diamond Stealth 64 with Warp Fullpack/Warp Connect" on the Warp Pharmacy.
  3. I could not make it work at 1024x768x256, 1024x768x65536, or 1152x864x256, although those resolutions worked for me with Warp 2.1 and the same drivers.
  4. Everything works fine for me in 640x480x256, 800x600x256, 1280x1024x256, 640x480x65536, and 800x600x65536. This includes OS/2, DOS, and Windows applications, fullscreen or windowed.
  5. Your mileage may vary.
Step by step instructions follow:

  1. ftp the files 9OS2_A.EXE and 9OS2_B.EXE from the /pub/drivers/stl64.vrm directory at ftp.diamondmm.com.
  2. Unzip each file to its own 1.44 floppy, and use the LABEL command to label the floppies S3 DRV1 and S3 DRV2.
  3. Run the S64MODE.exe command (which is on floppy #1), without parameters. Be sure to follow the instructions in Diamond's README.S3 to select a predefined monitor. I use an IBM 17P, which is not one of the choices, so I selected NEC 5FG.
  4. Edit the s3inst.cmd (which is on both floppies) to make it like the attached s3inst.cmd. This involves remarking out several lines, changing some references to \os2 to read \os2\boot, and correcting some typos in the original file.
  5. From within the os2 directory, execute the command:
       attrib /s -r -s -h screen0*.sys 
    
  6. Run the modified s3inst.cmd from floppy #1. Syntax is S3inst a: d: (where d is the os/2 boot drive).
  7. Reboot when prompted to do so.
  8. Open OS/2 System, System Setup, Selective Install (NOT Device Driver Install as readme.s3 says).
  9. At the selective install menu, click on Primary display, scroll to the top of the selections, and select 32 Bit S3 Display Drivers v2.4.
  10. Click on OK.
  11. At the next screen, click on OK again.
  12. At next screen, click on Install.
  13. Put the disk labeled S3 DRV1 in drive A:
  14. The next screen (for me) offers I:\os2image as default. Change that to read A:\ and click on install.
  15. Select "Install using Display Adapter Utility Program." (Per revised README.S3 instructions).
  16. When prompted for location of utility, type in: "a:\s64mode.exe monitor" (without the quotes). Yes, the ..exe is necessary.
  17. When prompted to "Insert the diskette with the following label into Drive A: "S3 Display Driver Diskette 2", insert the diskette that you previously labelled S3 DRV2, and click on OK.
  18. Insert MS Windows diskettes as prompted. This was 1, 5, and 6 for me.
  19. Reboot when prompted to do so.
  20. Open OS/2 System, System Setup, System, and select the Screen page of the settings notebook. You should now have a number of choices for screen resolution. For me, 640x480x256, 800x600x256, 1280x1024x256, 640x480x65536, and 800x600x65536 work fine. I could not make it work at 1024x768x256, 1024x768x65536, or 1152x864x256.
  21. Select desired resolution, close notebook, and reboot. I like 1280x1024x256 or 800x600x65536.

Bob Rayburn, Tacoma WA, USA
rayburn@eskimo.com

Modified s3inst.cmd follows.

IMPORTANT: To use this file change all instances of the string > into > before running this command.

@ECHO OFF
ECHO 
ECHO ************************************************************
ECHO *  OS/2 2.1 Display Driver Installation for S3             *
ECHO *  Modified for OS/2 3.0 Warp for Windows               *
ECHO ************************************************************
IF .%1. == .. GOTO USAGE
IF .%2. == .. GOTO USAGE
IF NOT EXIST %2\OS2\INSTALL GOTO USAGE
IF NOT EXIST %1\TOOLS GOTO DAMAGED
IF NOT EXIST %1\BUNDLE GOTO DAMAGED
IF NOT EXIST %1\UNPACK2 GOTO DAMAGED
IF NOT EXIST %1\UNPACK GOTO DAMAGED
ECHO.
ECHO ************************************************************
ECHO *  Please, read the README.S3 file on the diskette first.  *
ECHO ************************************************************
%2\OS2\UNPACK.EXE  %1\TESTVER  %2 >NUL
%2\OS2\INSTALL\TESTVER.EXE %2
IF ERRORLEVEL 1 GOTO END
DEL %2\OS2\INSTALL\TESTVER.EXE 1>NUL 2>NUL
IF NOT .%3. == .. GOTO SKIP
ECHO Press any key when ready or Ctrl-C to quit. . .
PAUSE >NUL
:SKIP
ECHO.
ECHO ************************************************************
ECHO *  Loading files, Please wait.....                         *
ECHO ************************************************************
ECHO.
ECHO S3 Installation log file for 16M >> %2\OS2\INSTALL\DISPLAY.LOG
%2\OS2\ATTRIB -R %2\OS2\*.* /S          1>NUL 2>NUL
%2\OS2\UNPACK.EXE  %1\UNPACK2 %2 >NUL
%2\OS2\UNPACK2.EXE %1\UNPACK %2 >NUL
:START
IF EXIST %2\OS2\boot\SVGA.SAV GOTO NEXT1
COPY %2\OS2\boot\SVGA.EXE %2\OS2\boot\SVGA.SAV >NUL
:NEXT1
IF EXIST %2\OS2\boot\SCREEN0?.SAV GOTO NEXT2
COPY %2\OS2\boot\SCREEN0?.SYS %2\OS2\boot\SCREEN0?.SAV >NUL
IF EXIST %2\OS2\boot\SCREEN01.SAV DEL %2\OS2\boot\SCREEN02.SYS 2>NUL
IF EXIST %2\OS2\boot\SCREEN02.SAV DEL %2\OS2\boot\SCREEN01.SYS 2>NUL
:NEXT2
IF EXIST %2\OS2\INSTALL\WINSUP.IAM GOTO NEXT4A
IF EXIST %2\OS2\INSTALL\DSPINSTL.SAV GOTO NEXT3
COPY %2\OS2\INSTALL\DSPINSTL.EXE %2\OS2\INSTALL\DSPINSTL.SAV >NUL
:NEXT3
IF EXIST %2\OS2\INSTALL\RSPDSPI.SAV GOTO NEXT4
COPY %2\OS2\INSTALL\RSPDSPI.EXE %2\OS2\INSTALL\RSPDSPI.SAV >NUL
:NEXT4
%2\OS2\UNPACK2 %1\TOOLS %2    >NUL
GOTO NEXT4B
:NEXT4A
rem %2\OS2\UNPACK2 %1\TOOLS %2 /n:MKSYSLVL.EXE    >NUL
rem %2\OS2\UNPACK2 %1\TOOLS %2 /n:S3PATCH.EXE     >NUL
rem %2\OS2\UNPACK2 %1\TOOLS %2 /n:OS2KRNL.RTP     >NUL
rem %2\OS2\UNPACK2 %1\TOOLS %2 /n:VWIN.RTP        >NUL
:NEXT4B
%2\OS2\UNPACK2 %1\BUNDLE %2   >NUL
%2\OS2\INSTALL\DDICO.EXE %2
DEL %2\OS2\INSTALL\DDICO.EXE 1>NUL 2>NUL
DEL %2\OS2\INSTALL\PSS3CID.DSC 1>NUL 2>NUL
IF .%3. == .. GOTO UPDATE
%2\OS2\UNPACK2 %1\CID  %2 >NUL
DEL %2\OS2\INSTALL\PSS3.DSC 1>NUL 2>NUL
:UPDATE
rem %2\OS2\INSTALL\MKSYSLVL %2\OS2\INSTALL\SYSLEVEL.OS2 XR02110 >NUL
rem ECHO Updated syslevel.os2 with XR02110 >> %2\OS2\INSTALL\DISPLAY.LOG
rem DEL %2\OS2\INSTALL\MKSYSLVL.EXE >NUL
rem %2\OS2\ATTRIB -R -S -H %2\OS2KRNL       1>NUL 2>NUL
rem ECHO Patching OS2KRNL >> %2\OS2\INSTALL\DISPLAY.LOG
rem %2\OS2\INSTALL\S3PATCH /NOP /NOS /Q  %2\  %2\OS2\INSTALL\OS2KRNL.RTP >> %2\OS2\INSTALL\DISPLAY.LOG 2>NUL
rem %2\OS2\ATTRIB +R +S +H %2\OS2KRNL       1>NUL 2>NUL
rem DEL %2\OS2\INSTALL\OS2KRNL.RTP  >NUL
rem ECHO Patching VWIN.SYS >> %2\OS2\INSTALL\DISPLAY.LOG
rem %2\OS2\INSTALL\S3PATCH /NOP /NOS /Q  %2\OS2\MDOS  %2\OS2\INSTALL\VWIN.RTP >> %2\OS2\INSTALL\DISPLAY.LOG 2>NUL
rem DEL %2\OS2\INSTALL\S3PATCH.EXE  >NUL
rem DEL %2\OS2\INSTALL\VWIN.RTP     >NUL
IF EXIST %2\OS2\INSTALL\DSPDRVS GOTO PRELOAD
GOTO INSERTDISK
:DISPLAYMESSAGE
ECHO ************************************************************
ECHO *   1) Perform a shutdown and restart the system.          *
ECHO *                                                          *
ECHO *   2) After the restart, open the OS/2 System folder,     *
ECHO *      then open the System Setup folder.  Open the        *
ECHO *      Display Driver Install object.  This will execute   *
ECHO *      the Display Driver Installation (DSPINSTL)utility   *
ECHO *      program.                                            *
ECHO *                                                          *
ECHO *   3) When DSPINSTL has completed, open the OS/2 System   *
ECHO *      folder, then open the System Setup folder.  Open    *
ECHO *      the System object and select the desired screen     *
ECHO *      resolution on the Screen page of the notebook.      *
ECHO *      Then close the System - Settings notebook.          *
ECHO *                                                          *
ECHO *   4) Perform a shutdown and restart the system.          *
ECHO ************************************************************
GOTO END
:DAMAGED
ECHO 
ECHO ************************************************************
ECHO * This diskette does not contain all necessary files.      *
ECHO ************************************************************
ECHO DAMAGED DISKETTE >> %2\OS2\INSTALL\DISPLAY.LOG
GOTO END
:USAGE
ECHO 
ECHO Usage: S3INST [INSTALLDRIVE:] [BOOTDRIVE:]
GOTO END
:INSERTDISK
ECHO ************************************************************
ECHO * Insert S3 Display Driver Diskette 2 With Label S3 DRV2   *
ECHO ************************************************************
pause
GOTO NEXT7
:PRELOAD
IF EXIST %2\OS2\INSTALL\PRELOAD\CONFIG.EXE GOTO COPYPRLDFILES
%2\OS2\UNPACK2.EXE S3PRF %2 >NUL
%2\OS2\INSTALL\S3PRF.EXE
DEL %2\OS2\INSTALL\S3PRF.EXE 1>NUL 2>NUL
GOTO DISPLAYMESSAGE
:COPYPRLDFILES
ECHO  Preloaded system configuration >> %2\OS2\INSTALL\DISPLAY.LOG
IF NOT EXIST %1\CONFIG GOTO DAMAGED
IF EXIST %2\OS2\INSTALL\WINSUP.IAM GOTO NEXT6
IF EXIST %2\OS2\INSTALL\PRELOAD\CONFIG.SAV GOTO NEXT5
COPY %2\OS2\INSTALL\PRELOAD\CONFIG.EXE %2\OS2\INSTALL\PRELOAD\CONFIG.SAV >NUL
:NEXT5
%2\OS2\UNPACK2 %1\CONFIG %2 >NUL
:NEXT6
IF NOT EXIST %1\S3WIN  GOTO INSERTDISK
:NEXT7
IF NOT EXIST %1\S3WIN.DSP GOTO DAMAGED
ECHO COPY %1\S3WIN       %2\OS2\INSTALL\DSPDRVS >NUL
ECHO COPY %1\S3WIN.DSP      %2\OS2\INSTALL\DSPDRVS >NUL
GOTO DISPLAYMESSAGE
:END
DEL %2\OS2\INSTALL\TESTVER.EXE 1>NUL 2>NUL

Chandler Howell (chandler@naftalab.bus.utexas.edu) writes (6th August, 1995):

Having a machine with an Stealth64 VRAM, and having had its syslevel changed by S3INST.CMD (and not realizing what had done it until reading this page, only that any attempt to install the Base OS CSD's would die horribly), I decided that, if the only solution was to re-install the OS, "risky" recovery methods could first be attempted <gr>.

Using TEDIT.EXE (from the DevCon 6 CD (#2, I think)), which handles both binary and text files, I edited C:\OS2\INSTALL\SYSLEVEL.OS2 and changed the SYSLEVEL from the 2.1 SysLevel back to WR03000 and saved it again. This completely fixed the SysLevel problem in 2 minutes, as opposed to a lengthy and frustrating re-install.

Note:Don't do this edit with the standard TEDIT.EXE supplied with Warp - you will corrupt the file. If you need a binary editor, try: HexEdit/2


The Warp Pharmacy | News | Hardware | Software | Symptoms | Procedures | References | Commerce | Search | More Help!!! ]