• We have updated our Community Code of Conduct. Please read through the new rules for the forum that are an integral part of Paradox Interactive’s User Agreement.

jpd

Entil'Zha Anla'Shok
Moderator
42 Badges
Apr 19, 2001
8.395
1.912
  • Stellaris: Apocalypse
  • Hearts of Iron 4: Arms Against Tyranny
  • Hearts of Iron IV: No Step Back
  • Hearts of Iron IV: By Blood Alone
  • Battle for Bosporus
  • Stellaris: Ancient Relics
  • Hearts of Iron IV: Expansion Pass
  • Stellaris: Distant Stars
  • Stellaris - Path to Destruction bundle
  • Hearts of Iron II: Beta
  • Europa Universalis IV
  • Arsenal of Democracy
  • Hearts of Iron IV: Field Marshal
  • Hearts of Iron IV: Colonel
  • Hearts of Iron IV: Cadet
  • Hearts of Iron IV: Death or Dishonor
  • Hearts of Iron IV: Expansion Pass
  • Hearts of Iron IV: La Resistance
Hi,

I have reported on this issue many times in the past. It concerns the fact that in some (but not all) cases, terminating EU2 (or HoI, and possibly Vicky, I haven't been able to acquire that) results in DirectX not shutting down properly.

Symptoms:
- Desktop returns in resolution of final EU2 screen (800x600), while desktop icon and taskbar organisation thinks it's on the regular resolution (which in my case is 1280x960). You need to reset the screen resolution though the properties to restore it.
- Screen remains black (but still in last resolution of EU2, ie 800x600). There is no way of retrieving normal desktop. Only way out is a power cycle or hard reset.
- Upon shutdown, EU2 generates an error inside DDRAW or one of it's helper DLL's.

In all cases, DirectX is left in a state of limbo, and cannot be used again until the PC has been rebooted. Not only EU2 or HoI cannot be started again, it applies equally to every single application that uses DirectX.

Since the introduction of DirectX 9, I have been less troubled by this problem(in HoI it's only present when I have multi playered, and there it's 100%), although it also can have something to do with the EU2 beta's, since this coincided. I also want to note that I never experienced this problem with EU2 1.00, but conditions were different then. EU2 1.00 required DirectX 8.0, while the EU2 1.04 (Ubisoft version) and up required DirectX 8.1. So, something must have changed in the versions between 1.00 and 1.04. And I do mean really changed, as 1.04 running on top of DirectX 8.0 was a heck of a lot more prone to CtD's when compared to running on top of DirectX 8.1

Also, my video boards have undergone some upgrades over time, from an NVidia TNT, via an NVidia GeForce 2 to an NVidia GeForce4. One thing remained though. All the time I have never used anything but NVidia reference drivers.

Also, only the Paradox games exhibit these problems. Not a single other game I own (and I own dozens) have these problems. If they had, one could plausibly blame the NVidia reference drivers, my hardware or my DirectX installation. But since it's only Paradox games, it must be in the (library) code of these games. For completeness, DxDiag doesn't (and has never in the past) reported any DirectX installation problems.

Ok. So much for history. Now for my latest observations.

I have recently acquired a 17" LCD screen (IIyama), which is now installed parallel to the 19" CRT (also IIyama). The CRT runs off the primary VGA connector of the GeForce, the LCD is connected to the secondary DVI port.

The NVidia reference driver now gives me 2 choices for the video subsystem. I can either activate TwinView and run a large desktop on two monitors, or I can keep the single monitor desktop size, and choose how and where the monitor signal ends up. Three choises here, selectable in the display properties: 1 - clone image on both screens, 2 - use only DVI connector output, 3 - use only VGA connector output.

I have experimented with the latter two options, as the dual monitor option defaults to option 3 when running DirectX. Note, I only switch monitor signal output, I don't change my desktop resolution or color depth.

The very, very strange phenomenon I am seeing (but cannot explain logically), is that when EU2 or HoI are run on the CRT output, EU2 and HoI have trouble shutting down DirectX properly, and leave my DirectX in a runtime corrupted state. When I run them on the LCD output, the trouble (to date) has disapeared completely. Just to check my thesis, I have run HoI yesterday evening on my CRT output (multi player game), and sure enough, DirectX wasn't closed down properly.

I have done nothing else but using the display properties to select the active monitor connector. Nothing else changes, and not even a reboot is needed to switch. EU2 and HoI must be doing something very peculiar when shutting down and releasing DirectX.

The next experiments I will try over the next days is what happens as I switch the monitor connectors, ie. CRT on secondary (using a special DVI to VGA connector, which I now use to connect the LCD), and LCD on the primary. If it's in any way related to monitor type, then the problem should migrate too. I'll report back when I have some conclusions regarding this.

Jan Peter
 
Interesting.
So you think it may be an interaction with the monitor drivers rather than the card drivers. or maybe a combination of the two. That would explain why so few people experiance this anymore.
 
Well, not so much monitor driver. There aren't any monitor drivers, and there never were. What you do have is a monitor capabilities profile, which is combined with the capabilities of the video board. During bootup, Windows reads the monitor stats from the BIOS, which in turn has received it through the VGA connector during boot. I have observed, though, that Windows retrieves this info again when it initialises it's own video driver. If you power up your monitor after Windows has initialised it's driver, it defaults to an 800x600, 60 Hz desktop, while normally I run an 1280x960, 85 Hz desktop.

And here I have a striking difference between the LCD 17" and the CRT 19". You can throw a lot more at the CRT than the LCD. The latter doesn't go higher than 1280x1024, and has a max signal bandwidth of 135 MHz. My CRT goes way beyond that, weighing in at 1600x1200 (at least) with a max. signal bandwidth of 350 MHz (same as the RAMDAC of the GeForce 4).

The info retrieved during boot is stored by Windows. It is used, amongst other things, to limit the possible choices you can pick for resolution, color depth and refresh rates in the desktop properties.

Well, one of the key differences right now between my CRT and LCD monitor settings (desktop wise, of course :D) is the refresh rate. My LCD is not capable of doing 85 Hz, the rate my CRT is using. The LCD is run at something like 60 Hz. Mind you, this isn't a bad thing, as the vertical refresh rate is irrelevant for LCD screens anyway.

Usually, when you run DirectX, the refresh rate is not kept the same as what you have selected for your desktop. Typically, it will default to 60 or 72/75 Hz. This means that shutting down DirectX not only means switching back to the original desktop resolution and color depth, but also the refresh rate. Well, since my LCD is running more or less on the same refresh rate as the various DirectX resolutions used by the games, it requires less signal switching and settling time.

If all is programmed as it should, then the video driver and DirectX take care of all this correctly, taking timing issues and necesary delays during the switch into account. If something is messed up (as is probably the case in the closedown code of both HoI and EU2), then you can get into trouble.

The description above does give me a second set of parameters to test, namely varying the refresh rate at which my CRT is driven while in regular desktop mode. It would be interesting to know if the problem would also disapear if I scale down my desktop refresh rate to what is common for DirectX video modes (aka 72/75 Hz). If that were the case, then I guess Johan has some reading to do in the documentation of the DirectX SDK. :p

Jan Peter
 
I am sure he will be thrilled at the additional reading. :D
I will alert him to this thread after the holidays.
 
Just one extra note (I can't believe I forgot to mention this to date)

Failure to restore proper desktop settings only happens upon quiting EU2 or HoI. If I use any of the available hotkey combinations to switch out of the game to the desktop and back again, it nevers fails. Under these conditions, naturally, DirextX remains fully active and no shutdown/closedown of any of it's subsystems has been initiated.

Windows itself therefore knows perfectly well what my desktop settings are, and how to switch back and forth between my desktop settings and the DirectX imposed video mode.

It even properly deactivates/reactivates the secondary video connector (in case I run TwinView enabled) when hotkeying between the game and the desktop.

Jan Peter
 
The more info the better, thanks as usual jpd.
 
If you'd like, try going into Dxdiag - More Help - Override, and try some different refresh rates, see if they change the behaviour.
 
I never knew one could alter the refresh rates for DirectX screen resolutions. Just shows that there are always things to learn :D

Anyway, I'll take this for a spin next time I run a multiplayer HoI session, as that is currently the only way to guarantee the shutdown failure on my system, when active on the CRT. With EU2 it´s always a gamble when it goes into failure mode, although the chance increases when the play session is longer.

Jan Peter
 
I did not know about that one either.
So I guess the best course is to set them both the same.
 
Just one update. I thought that my switching to the LCD display had eliminated this problem. Alas, it did not. Yesterday, late in the afternoon after a long SP session as the Ottomans, it happened again. Desktop resolution was left in 800x600, the resolution of the final screen of EU2.

Still, it happens a lot less when compared to running on my CRT, so monitor type and/or refresh rate definately has some influence on this problem cropping up.

Jan Peter
 
A further update, coming from a totally different angle.

Last week I was attending a LAN party. The name of the game was Age of Mythology, the Titans expansion. Well, since my own game rig cannot handle that game smoothly (intermittent 1-2 second pauses every 5-10 seconds, go figure), another rig was provided.

My own rig consists of a VIA chipset and an Athlon XP 1600+. The one provided was also a VIA chipset, but with an Athlon XP2400+. Here the similarities end, as my own rig uses a GeForce 4. The rig on loan had an Ati 9600.

Now for the funny part. The loan rig had been pre-tested for a period of no less than two hours, to root out any possible problems. It passed that test. On the LAN party day itself, I hooked up my LCD screen on the DVI port, and started the game. It crashed within minutes, while the sound had already disapeared after something like 10 seconds. Rebooted the lot, tried again with the same results.

Then had the bright idea of hooking the LCD panel up to the VGA connector instead of the DVI (after all, the rig had been tested with a 17" CRT screen on the VGA connector). And to amazement of all attending players, the rig had regained it's stability, by no other change than hooking up the LCD monitor to the VGA connector instead of the DVI.

This is the exact opposite of my EU2/HoI experience regarding the DirectX shutdown problems. But it does, unmistakenly, show one thing. The system's stability is definately influenced by the video connector used on a modern video board. Although a plausible explanation escapes me right now.

Jan Peter
 
Out of cuiosity do you connect with the same cable or does the cable used depend on what port you connect to?
 
The same cable, but with an adapter part, provided by Asus with my GeForce card. It allows for connecting a CRT to the DVI port, or vice versa. In said example I used it in vice versa modus ;)

The LCD monitor did know the difference, though. It reported correctly 'digital' when hooked up to DVI directly, and 'analog' when connected through the adapter to the VGA output.

Jan Peter
 
Maybe it is something in the translation from analog to digital or vica versa.
Or how they are proccessed by the video card.
 
Yup. That probably has something to do with it.

The amazing part about this is, that some internal workings of an AGP video board (which OUTPUT connector to use), can cause a sound card to fail, and subsequently can cause a game to crash/lockup. Right now I am going with the assumption that Age of Titans crashed due to the soundcard failing, which in turn was caused by hooking up the monitor to thr DVI connector.

It just shows you that modern PC's are very delicate, and that crashes can be caused by seemingly unrelated things. For our games here it means simply this: If a Paradox game has a higher rate of crashes on a particular user's PC that is considered 'normal', it's worth the effort to try to run it on the other video connector, assuming that PC is equipped with a modern AGP board that has both DVI and VGA connectors.

Jan Peter
 
Just had to hit that 3000 mark eh!
 
Actually I think its quite interresting you can change the refresh rate with dxdiag, I had a lot of problems with some games running on my TV. I also own a Geforce card but just recently bought a ATI card. Since I couldn't get it to work. Hence I want to test if this solves it.

Reaching 3000 posts was a secondary objective. ;)
 
Last edited:
I'll take your word for it. :)
I will note that this thread has been around for more than 6 months though. ;)
 
hehe well you guys did take a long break in it. from 12-01-2004, to 04-07-2004. I only discovered it last day when I came home from the roskilde festival. And I really don't post about/look for solutions, to bugs in the tv-out feature of my geforce4400 card on this forum, when playing xvid or games on my tv ;)