VOGONS


First post, by Maktaka

User metadata
Rank Newbie
Rank
Newbie

Ever since the release of DOSBox 0.65 Dark Forces has been incessantly crashing on two levels. DOSBox 0.63 continues to work fine, but it is far less efficient so I'd much rather get it working in 0.71. I've tried various sound combinations, reinstalling Dark Forces, and any other tweaks I know of, but I always get crashes at the following locations:

Detention Level:
* Point of arrival for the wedge-shaped lift platform a couple minutes into the level. Walk toward the rack of blaster rifles and the game crashes. Works 9 times out of 10.
* Barring that, the game will crash elsewhere in the level, although I so rarely get further than the platform launch point that I couldn't tell you where.

Fuel Station:
* Right at the level start, walk around the Moldy Crow to the set of fuel barrels. Blow them up, collect the goodies, then walk back around the nose of the Moldy Crow. Half the time, the game will crash as you move back around the nose of the ship.
* Walk along either of the curved staircases in the level (one near level start, one on the other side of the station). Works 9 times out of 10.

On all crashes, I get the exact same one line message in the DOSBox window:

Exit to error: IRET: Illegal descriptor type 0.

System specs:
A8N-SLI standard
Athlon 64 3700+
2GB PC3200 RAM
Geforce 7600 GT
Windows XP

Reply 2 of 17, by MiniMax

User metadata
Rank Moderator
Rank
Moderator

Various combinations? Does that include different CPU cores (normal, simple ,dynamic, auto)?

DOSBox 60 seconds guide | How to ask questions
_________________
Lenovo M58p | Core 2 Quad Q8400 @ 2.66 GHz | Radeon R7 240 | LG HL-DT-ST DVDRAM GH40N | Fedora 32

Reply 3 of 17, by Maktaka

User metadata
Rank Newbie
Rank
Newbie

Tried normal core instead of auto. Worse performance and unfortunately the problem persisted.

By various sound combinations, I meant only that. Change what sound card DOSBox emulates (SB16, SBPro, SB2, Gravis Ultrasound) and the sound card Dark Forces uses to match. Also tried letting Dark Forces treat the default-emulated SB16 as an SBPro (which is what the autodetect thinks it is). No luck.

Testing out possibilities is rather slow since the problem isn't entirely consistent. And of course when it DOESN'T happen it makes me feel like the problem is gone and less enthusiastic to keep playing those same two levels over and over (as good as the game is).

Reply 4 of 17, by DosFreak

User metadata
Rank l33t++
Rank
l33t++

Can you attach the save games for these levels or know of a quick way to get there via cheat code?

How To Ask Questions The Smart Way
Make your games work offline

Reply 5 of 17, by ChickenLover

User metadata
Rank Newbie
Rank
Newbie

I know it crashes in two different locations on the last level, The Arc Hammer. One is towards the start of the level. Right here:
darkforcescrash1.jpg
From what I can tell it depends on how you are facing when you go to enter that hallway up ahead. The crashes always seem to be in the same spot, while facing the same direction. I can get around that crash by changing the direction I am looking while going through the level.

The second crash I'm not going to get a picture of because there are Dark Trooper phase 2's in the area and it is too dangerous. =P That one happens very shortly after you have planted the third explosive charge and you are heading out of the ship. You go down the elevator and you enter a huge room with Dark Troopers.

I've had it crash on me before in another level but I can't remember which one.

Anyways, to get to the level to test it, you can use the cheat codes.
LAARC - Will send you to the last level, The Arc Hammer.
LAIMLAME - For invincibility so you don't have to worry about dieing while testing.
LAMAXOUT - For full ammo and weapons.

Reply 6 of 17, by Maktaka

User metadata
Rank Newbie
Rank
Newbie

Thanks ChickenLover, nice to know my install isn't the only one being quirky. That's the same problem I have. Thanks, too, for following up on this DosFreak.

The Cheat Codes for the two levels I've had issues on are LADTENTION and LAFUELSTAT. I play on Hard difficulty, no active cheat codes (invincibility, wallclimb, supercharge, etc). To use a cheat, just load any level and type it in.

Also of note, the game creates a save for the following level when you complete and exit the previous level. So whenever I finish the Gromas Mines level (LAGROMAS, the one before the Detention Level) the game creates a brand new savegame for the start of the Detention Level. The same for completing Coruscant (LAIMPCITY) for the Fuel Station savegame. If you want to get a new savegame for one of the problematic levels, load the previous one and use LASKIP to automatically beat it and go to the next level (creating a new savegame for the next level in the process).

ChickenLover: If you can give me some more detail on where exactly in that room (the one with 4 or so DTmk2s and the final boss, right?) you get your crash, I can see if I can get a screenshot of the location. As many times as I've played the game, I've become quite good at making Dark Troopers my bitch.

Reply 7 of 17, by red_avatar

User metadata
Rank Oldbie
Rank
Oldbie

If it involves looking in a certain direction, it sounds like some sprite or code causes a crash - something which would only get loaded when it's in view.

Neither of you have said where you got Dark Forces though. Do you have the original CD or did you download the ripped version? This is essential to know if the problem is really with the game or may be the result of a crack or ripped data.

Reply 9 of 17, by ChickenLover

User metadata
Rank Newbie
Rank
Newbie

Mine is an .iso from my original disk. I don't even know where my disc is anymore.

By the way, I recall crashing around the nose of the Moldy Crow as well now that I think about it.

Oh and I'll try to get a picture of the other room. I was so frustrated last night after that happened. I had four lives and almost full health after killing the Dark Trooper phase 2 in there. 😢

Reply 10 of 17, by Maktaka

User metadata
Rank Newbie
Rank
Newbie

Thought I'd update this with new info. The problem seems to be sound related. For all releases of DOSBox since 0.65, I'd never been able to get the auto-detect sound options to correctly identify the SB16. DF's setup utility always thought I had a Gravis Ultrasound. Having run out of options, I figured why not and tried the autodetect with 0.71 and lo and behold, it worked. Haven't had any crashes since.

0.72 comes along and broke it again. I ran the autodetect and once again it was picking up a Gravis Ultrasound. Acting smart this time, I disabled the gravis in the DOSBox config file. Ran the autodetect in the DF setup utility again and got SB16 this time. Ran through a couple tests at the beginning of that oh-so-troublesome Detention Level and had no crashes.

So the problem would seem to be Dark Forces' sound drivers. They go nuts when there are multiple sound cards and the 'top' card is not the one used. Disable the gravis, run the autodetect, and you should be fine.

Reply 11 of 17, by DosFreak

User metadata
Rank l33t++
Rank
l33t++

Autodetect in setups were known to be flaky back in the day. It's best just to manually configure. They'd probably be more problamatic in DOSBox with people using max cycles in dosbox.conf while the setup software is run.

How To Ask Questions The Smart Way
Make your games work offline

Reply 12 of 17, by Maktaka

User metadata
Rank Newbie
Rank
Newbie

I have the same problems when manually setting the card as well. Even manually setting the card in 0.71 to SB16 continued to cause crashes, only letting the autodetect choose SB16 made things stable. Same thing with 0.72. Disabling the Gravis and letting the autodetect choose SB16 is the only thing that has been successful for me.

Reply 13 of 17, by darkgamorck

User metadata
Rank Member
Rank
Member

Autodetect isn't magic. If autodetect and manually setting it work differently for you in 0.71, it's because you are manually setting it wrong. Post your dosbox.conf and tell us how you setup the card manually in 0.72.

Reply 14 of 17, by ADDiCT

User metadata
Rank Oldbie
Rank
Oldbie

Autodetect isn't magic. If autodetect and manually setting it work differently for you in 0.71, it's because you are manually setting it wrong.

My thoughts exactly.

Reply 16 of 17, by Maktaka

User metadata
Rank Newbie
Rank
Newbie

Dark Forces does not allow you to use the SB16 without autodetecting the IRQ and DMA channels, there is no option to set these manually even if you manually selected an SB16 sound card. Moreover, during most of the time from 0.65 to 0.71 the autodetect would think the SB16 that DOSBox emulates by default, and that I never changed, was in fact an SBPro. And again, you can't use the SB16 without using autodetect to some degree. 0.71 was the first time the autodetect would accurately detect an SB16 present rather than an SBPro.

Choosing SBPro as the emulated card in the config file and letting the autodetect find that or manually setting the SBPro myself in the setup utility never proved successful for me, so I just stopped trying that after several releases.

Reply 17 of 17, by ADDiCT

User metadata
Rank Oldbie
Rank
Oldbie

Hmm... This sounds complicated. I don't remember exactly how the installation of DF went in DOSBox, but i'm totally sure that i didn't have any problems setting the sound devices (that was in DOSBox 0.69 or 0.70). I think DF tries to determine the IRQ and DMA setting from the "BLASTER"-variable that is set automatically by DOSBox, based on the values in dosbox.conf.

Disabling the soundcards you're not going to use (via dosbox.conf) is a good idea in general, i think. For gaming purposes, it wasn't very common to have more than one soundcard in a DOS machine, so most setup progs will assume a single card (maybe with a wavetable addon card, but that would still be "one soundcard").