Game Development Community

Windows 98 and TGB - Any luck launching?

by Kalle Wik · in Torque Game Builder · 03/27/2007 (2:59 pm) · 5 replies

We are deep in development on a game which has completely failed CAT lab testing on Windows 98.

With a variety of Nvidia and ATI cards, and 256 / 512 MB RAM the game wouldn't even launch.

So, I tried a back-way-out fix, created a blank project off stock TGB, with only an 800x600 graphic and a quit button. That application also would not launch in Win 98 at all.

It doesn't even write a console.log, so I can't provide it.

So my question is, has ANYONE successfully launched a TGB built game in Windows 98?

We are getting a lot of pressure to make the game run on the platform, since "casual gamers" have a lot of that spec.

Thanks,

K. Wik
CTO
Skunk Studios, Inc.

PS. Here is a probably-useless crash report:

BARREN caused an invalid page fault in
module BARREN.EXE at 0167:004fb6e8.
Registers:
EAX=0000000d CS=0167 EIP=004fb6e8 EFLGS=00010202 EBX=00000000 SS=016f ESP=00a1fba8 EBP=00a1fe38
ECX=04000019 DS=016f ESI=00000000 FS=31ff EDX=0000000d ES=016f EDI=8195d512 GS=0000 Bytes at CS:EIP:
80 3b 00 8b f3 74 71 55 8b 2d 08 e7 7d 00 57 56 Stack dump:
00000000 00910000 00501213 00000500 00000400 00000020 0046c20b 0046c62d 8195d512 00000000 00a1fe38 00a1fe28
006646f2 ffffffff 005005dd 00000001

#1
03/27/2007 (3:46 pm)
There have been a number of topics on Win98 support in the past, mostly with positive solutions (often involving Visual Studio 6 and the Windows 98 Unicode fixes) for TGB and TGE. Grimm's Hatchery and Puzzle Poker both work on 98, so it is definitely possible. Since I do not have a 98 machine around (or a windows compiler compatible with it at this point), I can't help much.
#2
03/27/2007 (6:13 pm)
I was not expecting to have to re-compile the TGB engine with these fixes just to get it to launch a bare application.

My take is that if TGB is claiming Win 98 support for playback, a barebones application needs to launch. Or, remove the claim from the product page.

K.
#3
03/28/2007 (7:43 am)
I have no idea about the particulars of the binary version of TGB. Most of the posts I mentioned were about TGE 1.3 and 1.4 and unicode support in Windows 98. TGB, being built upon those versions, had a number of the same issues quite a while back, but I believe they were resolved with TGE 1.4 or 1.5 (I cannot remember which). TGB has undergone a significant split from the TGE source, however, so I'm not sure where 9x testing lies. I do know that Amanda Fitch of Amaranth Games did some stress-testing of TGB on older machines and OS's and posted a number of results on the private forums to help others out.
#4
03/28/2007 (10:09 am)
Kalle,
What version of TGB binary are you using? As far as I know, TGB runs fine on 98 machines for the most part.

-Justin
#5
03/28/2007 (12:31 pm)
Using the latest posted, version 1.1.3, without any custom C++ modifications (stock).

I am working to get the Windows 98 dxdiag.txt files for you. I know they include beefy specs for Win 98 such as 3 Ghz processors and 512MB RAM with Nvidia graphics cards.

Besides Win 98 there have been problems with S3 graphics cards in XP, and issues with some of the ATi Radeon cards as well.

One question, I noticed that 'defaultPrefs.cs' does some funky things with card testing.

In that regard, and because some of the configs failing are listed in the case statement, I am wondering if the code here is legacy or has been tested with TGB recently:

( from defaultPrefs.cs )

// This logic would better be in a kind of database file
switch$( $PCI_VEN )
{
case "VEN_8086": // Intel
$pref::Video::displayDevice = "D3D";
$pref::Video::allowOpenGL = 0;

// Force fullscreen on the 810E and 815G
if( $PCI_DEV $= "DEV_1132" || $PCI_DEV $= "DEV_7125" )
$pref::Video::fullScreen = "1";

case "VEN_1039": // SIS
$pref::Video::allowOpenGL = 0;
$pref::Video::displayDevice = "D3D";

case "VEN_1106": // VIA
$pref::Video::allowOpenGL = 0;
$pref::Video::displayDevice = "D3D";

case "VEN_5333": // S3
$pref::Video::allowOpenGL = 0;
$pref::Video::displayDevice = "D3D";

case "VEN_1002": // ATI
$pref::Video::displayDevice = "OpenGL";

if( $PCI_DEV $= "DEV_5446" ) // Rage 128 Pro
{
$pref::Video::displayDevice = "D3D";
$pref::Video::allowOpenGL = 0;
}

case "VEN_10DE": // NVIDIA
$pref::Video::displayDevice = "OpenGL";
}

Thanks!

I should mention, TGB is a super-fresh engine, other than these troubling platform incompatibilties.

Kalle