VOGONS


First post, by dolligan

User metadata
Rank Newbie
Rank
Newbie

I am having trouble getting the old readysoft game "wrath of the demon" working in dosbox. the intro plays fine up to the screen with the pic of the king on the throne, then the program just totally quits back to the desktop and dosbox closes with no error message.

i don't know a lot about dosbox, are there some settings i need to alter?
anyone else got this game running, or know another emulator that can run it?

i have a athlon 2000, gforce 4 graphics, win xp and the latest version of dosbox (just downloaded). i have got plenty of other dos games working fine.

Thanks.

Reply 1 of 11, by Mr_Blastman

User metadata
Rank Member
Rank
Member

I too have the same problem in 0.63 - I get to the king screen and it locks up. If I run the game under a standard Windows XP Dos Box, the game runs perfect and gets past this screen without lockup or any problems - minus the sound... We need a working dosbox to fix this... I think it has something to do with how the game addresses video memory etc since this is a very video intensive game, or was for the time. It was one of the first DOS games in VGA to have what I think was 16 levels of Parallax Scrolling - very beautiful to watch and play.

Reply 5 of 11, by Kippesoep

User metadata
Rank Oldbie
Rank
Oldbie

When running my own builds (with debugging enabled), I get different results depending on the core selected. On the normal core, I get an "illegal call 7". Other cores give things such as "invalid opcode" or "write to rom". All of that would seem to indicate that either an instruction has been decoded incorrectly or a jump was taken incorrectly, throwing the instructions after it out of whack.

My site: Ramblings on mostly tech stuff.

Reply 8 of 11, by Kippesoep

User metadata
Rank Oldbie
Rank
Oldbie

So it does. If I interpret that code (found in VGADRV.OVL) properly, it is the equivalent of the C function realloc, first attempting to resize a memory block and failing that, releasing and reallocating. C's realloc works like malloc if the pointer passed into it is NULL, which appears to be the case here.

Real DOS gives an error when attempting to resize a memory control block that is not part of the chain. DOSBox should do this, too. The current behaviour is particularly nasty (it "resizes" segment 0 [the interrupt vector table] by writing invalid values into segment FFFF [rom area]). I've posted a patch for this on SourceForge.

My site: Ramblings on mostly tech stuff.

Reply 10 of 11, by Kippesoep

User metadata
Rank Oldbie
Rank
Oldbie

No need, wd, they're identical except for the error code (yours is correct). Somehow it takes a while for CVS commits to be visible to the general public (one or two days).

My site: Ramblings on mostly tech stuff.