Anyone still running Win9x? (compatibility problem)

G

Guest

Guest
Archived from groups: rec.games.roguelike.development (More info?)

Someone reported that the current release of my game (Tower of Doom) crashes
on Win9x right at the beginning when you choose "New game". I guessed that
MinGW may build Win2000/XP-only binaries by default so I tried to fix that
by rebuilding everything with -DWINVER=0x0400 -D_WIN32_WINNT=0x0400 -
However I've just recieved an email from the player that the new binaries
don't work either.
I've not the slightest idea why! I use only plain ANSI C + pdcurses 2.6 +
lua 5.0.2 + one Windows-specific delay function that looks like this:

void sec_sleep(unsigned int d)
{
Sleep(d * 1000);
FlushConsoleInputBuffer(GetStdHandle(STD_INPUT_HANDLE));
}

Do you have any idea why my game works fine on Windows XP but not on Win9x?
Also if anyone still has a Win9x-system running could you please download
the current version of my game and check if it works (I don't even have a
copy of Win9x anymore).

copx
 
Archived from groups: rec.games.roguelike.development (More info?)

On Mon, 11 Jul 2005 12:09:19 +0200, copx wrote:

>Someone reported that the current release of my game (Tower of Doom) crashes
>on Win9x right at the beginning when you choose "New game". I guessed that
>MinGW may build Win2000/XP-only binaries by default so I tried to fix that
>by rebuilding everything with -DWINVER=0x0400 -D_WIN32_WINNT=0x0400 -
>However I've just recieved an email from the player that the new binaries
>don't work either.
>I've not the slightest idea why! I use only plain ANSI C + pdcurses 2.6 +
>lua 5.0.2 + one Windows-specific delay function that looks like this:
>
>void sec_sleep(unsigned int d)
>{
> Sleep(d * 1000);
> FlushConsoleInputBuffer(GetStdHandle(STD_INPUT_HANDLE));
>}
>
>Do you have any idea why my game works fine on Windows XP but not on Win9x?
>Also if anyone still has a Win9x-system running could you please download
>the current version of my game and check if it works (I don't even have a
>copy of Win9x anymore).
>
>copx

Under Win95b (aka OSR2 - version is 4.00.1111) under Virtual PC, I'm
able to start the game, run through the first level, and kill some rats.
I can't quit except via Ctrl+Break (although it may just be that I don't
know the magic key combination).

Most importantly, it spews out an Invalid Page Fault error when I try to
load a game after quitting via Ctrl+Break (or force-closing the window).
The one time I tried to repeat the error with Dr. Watson loaded, it
instead caused Windows to lock up so tight I couldn't do the 3-finger
salute. Starting a new game does *not* reproduce this error.

Caveat: I don't have modern MSVC runtime files - notably MSVCRT.DLL -
installed on that particular Win95 install; I copied them from my
Win2k\system32 folder into the TOD folder. And remember, it's Virtual
PC; things aren't quite "typical".
--
auric underscore underscore at hotmail dot com
*****
Microsoft - because God hates us.
 
Archived from groups: rec.games.roguelike.development (More info?)

copx wrote:
> Someone reported that the current release of my game (Tower of Doom)
> crashes on Win9x right at the beginning when you choose "New game".

True. I tried it on Win98. Title screen shows ok, but new game crashes
the program.

> I've not the slightest idea why!

You must be doing something wrong in the new game procedures.
Lua? Curses?:)
 
Archived from groups: rec.games.roguelike.development (More info?)

"Krice" <paulkp@mbnet.fi> schrieb im Newsbeitrag
news:1121100666.390989.109780@f14g2000cwb.googlegroups.com...
> copx wrote:
>> Someone reported that the current release of my game (Tower of Doom)
>> crashes on Win9x right at the beginning when you choose "New game".
>
> True. I tried it on Win98. Title screen shows ok, but new game crashes
> the program.
>
>> I've not the slightest idea why!
>
> You must be doing something wrong in the new game procedures.
> Lua? Curses?:)

The game works perfectly fine on WinXP, Linux and DOS. The DOS version also
works on Win9x - only the Windows version crashes on Win9x?! It makes no
sense at all!
I hate these moments in programming..

copx
 
Archived from groups: rec.games.roguelike.development (More info?)

"Auric__" <not.my.real@email.address> schrieb im Newsbeitrag
news:esl4d1tg2jl0n5b793veqip35s03gingq1@4ax.com...
[snip]
> Under Win95b (aka OSR2 - version is 4.00.1111) under Virtual PC, I'm
> able to start the game, run through the first level, and kill some rats.
> I can't quit except via Ctrl+Break (although it may just be that I don't
> know the magic key combination).
>
> Most importantly, it spews out an Invalid Page Fault error when I try to
> load a game after quitting via Ctrl+Break (or force-closing the window).
> The one time I tried to repeat the error with Dr. Watson loaded, it
> instead caused Windows to lock up so tight I couldn't do the 3-finger
> salute. Starting a new game does *not* reproduce this error.
>
> Caveat: I don't have modern MSVC runtime files - notably MSVCRT.DLL -
> installed on that particular Win95 install; I copied them from my
> Win2k\system32 folder into the TOD folder. And remember, it's Virtual
> PC; things aren't quite "typical".

Thank you and Krice for trying. Win9x seems to hate me..

copx
 
Archived from groups: rec.games.roguelike.development (More info?)

copx <invalid@invalid.com> wrote:
> Thank you and Krice for trying. Win9x seems to hate me..

I think it hates us as much as we all hate it. My experience generally
concurs with that of someone else posting in this thread; DOS compiles
tend to be more stable under Windozes.
If the code runs fine under Linux, DOS and modern Windozes, I wouldn't
worry too much about the intermediate unstable OSs. The fact that most
of us had to dig out an old Win9x install to test this verifies the lack
of necessity.
Still, I can understand the frustration such seemingly illogical errors
cause, and if you want it fixed, best of luck.

--jude hungerford.
 
Archived from groups: rec.games.roguelike.development (More info?)

On Tue, 12 Jul 2005 13:02:48 GMT, <edward@lore.net> tried to confuse
everyone with this message:

>tend to be more stable under Windozes.
>If the code runs fine under Linux, DOS and modern Windozes, I wouldn't
>worry too much about the intermediate unstable OSs.

Don't diss Win9x. Win98SE is extremely stable, I'm using it for more
than 5 years and I see no reason to update to virus-prone and bloated
XP.

--
|a\o/r|,-------------.,---------- Timofei Shatrov aka Grue ------------.
| m"a ||FC AMKAR PERM|| mail: grue at mail.ru http://grue3.tripod.com |
| k || PWNZ J00 || Kingdom of Loathing: Grue3 lvl 18 Seal Clubber |
`-----'`-------------'`-------------------------------------------[4*72]
 
Archived from groups: rec.games.roguelike.development (More info?)

On Tue, 12 Jul 2005 15:27:12 GMT, Timofei Shatrov wrote:

>On Tue, 12 Jul 2005 13:02:48 GMT, <edward@lore.net> tried to confuse
>everyone with this message:
>
>>tend to be more stable under Windozes.
>>If the code runs fine under Linux, DOS and modern Windozes, I wouldn't
>>worry too much about the intermediate unstable OSs.
>
>Don't diss Win9x. Win98SE is extremely stable, I'm using it for more
>than 5 years and I see no reason to update to virus-prone and bloated
>XP.

Well... I could argue the "extremely stable" part - but 98 was my main
OS for about 2 years - that is, until I got Win2k, which is the Windows
version I'm sticking with. (I hate XP. Don't know why. Probably
something to do with "integrated .Net".) I usually keep a Win98SE
install on my C: drive, and when I compile my apps, I do it there, so
that I *know* they'll run under 9x.

If^H^H*when* I upgrade to 64-bit computing, it'll be a POSIX system -
probably Linux.
--
auric underscore underscore at hotmail dot com
*****
Enemies strengthen you. Allies weaken.
-- Frank Herbert
 
Archived from groups: rec.games.roguelike.development (More info?)

copx wrote:
> The DOS version also works on Win9x - only the Windows version crashes
> on Win9x?! It makes no sense at all!

How about just calling the Windows version the "Windows NT" version then
and calling the DOS version the "Win9x/DOS" version?

Since, if it works in that way, there's no point looking for an error in
the code; different kernels do warrant different code.

Which is also why it makes sense - your Windows code does something only
permissible on the NT-based Windowses. Win9x/ME use DOS as a kernel,
whereas the modern Windowses use the NT kernel.
 
Archived from groups: rec.games.roguelike.development (More info?)

On Tue, 12 Jul 2005 19:44:05 +0300, Deewiant wrote:

>copx wrote:
>> The DOS version also works on Win9x - only the Windows version crashes
>> on Win9x?! It makes no sense at all!
>
>How about just calling the Windows version the "Windows NT" version then
>and calling the DOS version the "Win9x/DOS" version?
>
>Since, if it works in that way, there's no point looking for an error in
>the code; different kernels do warrant different code.
>
>Which is also why it makes sense - your Windows code does something only
>permissible on the NT-based Windowses. Win9x/ME use DOS as a kernel,
>whereas the modern Windowses use the NT kernel.

That's what I would do.

copx: I have a set of functions called IsWinnt (stolen from the www)
that determines whether the app's running under 9x or NT, so my apps can
run OS-specific functions without worrying about accidentally breaking
under the "wrong" OS. If I were you, I would drop those functions (or
something similar) into your app and then, if 9x is detected, print an
explanation and exit. (That'll stop the "it don't work" emails.)
--
auric underscore underscore at hotmail dot com
*****
It's nice to know you've overcome your fears...
Now try overcoming the gaping hole in your head.
 
Archived from groups: rec.games.roguelike.development (More info?)

On Tue, 12 Jul 2005 15:27:12 GMT, grue@mail.ru (Timofei Shatrov) wrote:

>On Tue, 12 Jul 2005 13:02:48 GMT, <edward@lore.net> tried to confuse
>everyone with this message:
>
>>tend to be more stable under Windozes.
>>If the code runs fine under Linux, DOS and modern Windozes, I wouldn't
>>worry too much about the intermediate unstable OSs.
>
>Don't diss Win9x. Win98SE is extremely stable,

Win98 has a limit on the number of Window handles based on a 16-bit
integer. While this seems okay at first, a window handle also includes
individual widgets.

When the limit is reached, the system becames unstable. And you will reach
it if you have moderator access on Slashdot.

> I'm using it for more
>than 5 years and I see no reason to update to virus-prone and bloated
>XP.

Any viruses that appear under XP can just as easily appear under Windown
95/98.

While bloat may be a problem, it's negated by turning off the fisher-price
interface, by keeping your system clean, and by having enough RAM (256MB
minimum).

At the time, Win95/98 were expanding to fill all available RAM anyway.
 
Archived from groups: rec.games.roguelike.development (More info?)

"copx" <invalid@invalid.com> schrieb im Newsbeitrag
news:datggh$ilp$01$1@news.t-online.com...
[snip]

I've found the problem: pdcurses (2.6).
After switching back to my own hand-rolled IO routines it suddenly worked. I
wonder if pdcurses 2.6 is actually Win9x incompatible or if I've some broken
curses code somewhere and Win2000/XP & Linux just ignore that code..
Whatever I'll switch back to the old IO routines and investigate this
problem futher once I manage to set up a Win9x system.

copx
 
Archived from groups: rec.games.roguelike.development (More info?)

On Wed, 13 Jul 2005 06:43:03 +0200, copx wrote:

>
>"copx" <invalid@invalid.com> schrieb im Newsbeitrag
>news:datggh$ilp$01$1@news.t-online.com...
>[snip]
>
>I've found the problem: pdcurses (2.6).
>After switching back to my own hand-rolled IO routines it suddenly worked. I
>wonder if pdcurses 2.6 is actually Win9x incompatible or if I've some broken
>curses code somewhere and Win2000/XP & Linux just ignore that code..
>Whatever I'll switch back to the old IO routines and investigate this
>problem futher once I manage to set up a Win9x system.

That's... weird. I've never used pdcurses myself - and in fact, I was
unable to build it under Cygwin earlier today (I was attempting to
recompile TOD in Win95 - no luck with pdcurses = no luck with TOD).
--
auric underscore underscore at hotmail dot com
*****
Hi, Carson, happy to be here again before my fifteen minutes of fame are up.
 
Archived from groups: rec.games.roguelike.development (More info?)

Congrats on tracking down the error to pdcurses, and finding a fix, no
less!

Timofei Shatrov <grue@mail.ru> wrote:
> Don't diss Win9x. Win98SE is extremely stable, I'm using it for more
> than 5 years and I see no reason to update to virus-prone and bloated
> XP.

<OFFTOPIC>
At the risk of being horribly offtopic:
I agree that Win9x is more attractive to me than XP or 2000. Having a
EULA which posits that M$oft can change / update your OS without telling
you about it does not appeal, even if in most cases they choose to offer
you the option.
I'm still going to disrespect Windoze in all forms until / unless they
GPL/BSD it and allow the 10x larger base of talented OSS programmers to
fix its faults.
And I do think some would bother to do so. Wouldn't you love to have a
Win9x with some feature bloat stripped out and extra stability? I would
make space for it then. There are many RLs which I would love to try,
(Guild!) but at this stage haven't because switching my multitude of
free 1.2 GB Quantum Fireballs around is too much effort for an OS which
I'll use for half an hour per month.
But this is offtopic, so I'll end my petty little rant there.
</OFFTOPIC>

--jude hungerford.
 

TRENDING THREADS