Worst Party

Discuss anything about the original Dungeon Master on any of the original platforms (Amiga, Atari, etc.).
This forum may contain spoilers.

Moderator: Ameena

Forum rules
Please read the Forum rules and policies before posting. You may Image to help finance the hosting costs of this forum.
Tom Hatfield
Ee Master
Posts: 688
Joined: Mon May 07, 2001 7:00 pm
Location: Indiana, USA
Contact:

Post by Tom Hatfield »

I don't know if this will help any, but the value of edx when the exception is thrown is F83000h (16265216). Obviously that won't crash the program, but maybe it will help you isolate what does. Since it's a WinXP problem, maybe if you showed me the original function (and any co-dependent functions) I could help you a little more.
User avatar
Paul Stevens
CSBwin Guru
Posts: 4322
Joined: Sun Apr 08, 2001 6:00 pm
Location: Madison, Wisconsin, USA

Post by Paul Stevens »

I think I found it. It was a close call. Some old
memory debugging code, modified for this particular
case, found a reference past the end of an allocated
buffer. The Atari didn't care, of course, because it
had no memory protection. XP and Win2K and so on
obviously allocate memory in slightly different ways
and on Win2k it just ran into another buffer. Reading
garbage did no harm.

I don't know how to fix it yet. Nor am I sure it is
the same problem!!!

The original function is TAG088b2. Nobody will figure
that out without a concerted effort.
User avatar
Paul Stevens
CSBwin Guru
Posts: 4322
Joined: Sun Apr 08, 2001 6:00 pm
Location: Madison, Wisconsin, USA

Post by Paul Stevens »

Tom's original information was sufficient to locate
a problem VERY MUCH LIKE the reported problem
I hope it is EXACTLY the same. I fixed the problem I
found. So....

Can a couple of you download CSBwin98v110.zip,
replace the CSBwin that came with the movie, and try
again? Please? You will get the 'Wrong Version' messages
but just proceed and say it is 'OK'. I have my fingers
crossed. Make sure you are playing with 9.8v110.
Tom Hatfield
Ee Master
Posts: 688
Joined: Mon May 07, 2001 7:00 pm
Location: Indiana, USA
Contact:

Post by Tom Hatfield »

Paul's name will be recorded in the great hall and remembered by the future generations he made possible.

The screen still blanks to white when the Grey Lord appears, but otherwise it works. No more crash. Great job.
User avatar
PadTheMad
Lo Master
Posts: 420
Joined: Thu Jul 15, 2004 12:22 pm
Location: Doncaster, UK

Post by PadTheMad »

Yep, fixed it for me too :)

Whiteout still occuring though, not sure what that is...
User avatar
Paul Stevens
CSBwin Guru
Posts: 4322
Joined: Sun Apr 08, 2001 6:00 pm
Location: Madison, Wisconsin, USA

Post by Paul Stevens »

OK. It works for me on an old, slow Intel, Win98 and on
a new, fast AMD, Win2k.

As I recall, the Fusion has:
-Chaos
-Big Explosion
-Order
-Chaos
-Order
-Chaos
-Big Explosion
-Grey Lord
-Text
-Text
-Text
-Champion Portraits

Can you tell me where the whiteout starts? Where it ends?

Does it cover:
Entire window including Title and menu?
Entire user area of window?
Only the 3-viewport?
Something else?

Is it the same for both of you?
User avatar
zoom
Grand Master
Posts: 1819
Joined: Tue Sep 23, 2003 1:27 am
Location: far away but close enough

Post by zoom »

I´ve seen Order (with big Fuse explosion; no fireball explosion)

and then white out(I think the whole screen)
pause?
and then the grey lord..text..and end..

second time, third time no whiteouts whatsoever..

I logged out and back into windows:
now I could see whiteout again.
chaos--fireball expl
order -- fuse expl max
whiteout 12 seconds..
greylord & first text

the next try no whiteout.

logged on and off: ok. whiteout( just ospeed title is readable, plain white window) just after lord Order gets max fused until the grey lord with text message.

Is it normal that the fuse battle with Chaos is slow as in real time?
User avatar
Paul Stevens
CSBwin Guru
Posts: 4322
Joined: Sun Apr 08, 2001 6:00 pm
Location: Madison, Wisconsin, USA

Post by Paul Stevens »

Is it normal that the fuse battle with Chaos is slow as in real time
Yes...if you look in the playfile.log you will see
the commands that speed it up and slow it down
again. You can fiddle with them and move them
around if you like.

Thanks for the detailed info. It gives me something
to go on.
Tom Hatfield
Ee Master
Posts: 688
Joined: Mon May 07, 2001 7:00 pm
Location: Indiana, USA
Contact:

Post by Tom Hatfield »

I think it's the big explosion that whites out the menus and visible region (but not title bar) for a few seconds, and then the Grey Lord appears and all is well. It basically freezes the program and prevents redraw. You'll get this sort of behavior with any loop that doesn't return control to the operating system every iteration. (That's why Visual basic has a DoEvents statement.) Perhaps there's an especially slow memcpy somewhere. (I assume you're not pulling data through the AGP bus . . . that would kill performance.)
User avatar
Paul Stevens
CSBwin Guru
Posts: 4322
Joined: Sun Apr 08, 2001 6:00 pm
Location: Madison, Wisconsin, USA

Post by Paul Stevens »

OK. Go get 98v111. See if that works better.
Perhaps XP erases the background whenever
I do a Sleep() and expects me to redraw the
window. Win98 and Win2k seem not to do
this. At any rate, while in Sleep I am not processing
messages and will not redraw the screen.

I replaced the Sleep()s with something a lot more
complicated (but more Window-friendly). Too bad.
See if it helps.
User avatar
PadTheMad
Lo Master
Posts: 420
Joined: Thu Jul 15, 2004 12:22 pm
Location: Doncaster, UK

Post by PadTheMad »

Brilliant, that one works perfect. No crashing and no whiteouts! Worked first time. You seem to have done it again :)
Post Reply