Slashdot Mirror


Breathing New Life Into Old DirectDraw Games

An anonymous reader writes "I bought a bunch of old Wing Commander games for Windows, but they use DirectDraw, which Microsoft has deprecated. They don't work too well under Windows 7, so I ended up reimplementing ddraw.dll using OpenGL to output the games' graphics. I wrote an article describing the process and all the fun workarounds I had to come up with, and released all related source code for others to hack on."

274 comments

  1. There were some damn fine games in that era... by Dexter+Herbivore · · Score: 4, Insightful

    and we didn't need gimmicks like motion controllers, photo-realistic graphics and high framerates to enjoy them.

    1. Re:There were some damn fine games in that era... by reverendbeer · · Score: 4, Funny

      and we didn't need gimmicks like motion controllers, photo-realistic graphics and high framerates to enjoy them.

      ...consarn it!

    2. Re:There were some damn fine games in that era... by LazLong · · Score: 4, Funny

      and we didn't need gimmicks like motion controllers, photo-realistic graphics and high framerates to enjoy them.

      In my day we didn't have fancy-schmancy graphics. We didn't have graphics all. All we had were alphanumeric characters to manipulate for our games. And that's how it was, and you liked it! Sound? You were lucky if you could get a single-toned beep from your computer. And don't get me started on those fancy motion controllers! All we had was the keyboard. We stabbed ADWS until our fingers bled. And games? We had great games like Lemonade Stand, Tic-Tac-Toe, SpaceWar!, Star Trek, Super Star Trek. And that's how it was, and you liked it! You loved it!

    3. Re:There were some damn fine games in that era... by Anonymous Coward · · Score: 0

      Neither have stone age sapiens needed any fancy stuff to enjoy from the sex.

    4. Re:There were some damn fine games in that era... by drewhk · · Score: 1

      Yeah, I just discovered Dwarf Fortress and almost missed a deadline :) That game is insane, still, it is just a bunch of ASCII on your sceen.

    5. Re:There were some damn fine games in that era... by cgenman · · Score: 1

      But man did we want them...

    6. Re:There were some damn fine games in that era... by Gr8Apes · · Score: 1

      You forgot Hack/NetHack

      --
      The cesspool just got a check and balance.
    7. Re:There were some damn fine games in that era... by Hatta · · Score: 1

      And we sure didn't need bilinear filtering. Why do people think bilinear filtering looks good? It just looks blurry.

      --
      Give me Classic Slashdot or give me death!
    8. Re:There were some damn fine games in that era... by groslyunderpaid · · Score: 1
    9. Re:There were some damn fine games in that era... by Lumpy · · Score: 1

      Actually Windows 7 wont work with MOST OpenGL games either. I tried running a couple of OSS games that used OpenGL on a really outdated Geforce 9800GT and a quad core i5 and it failed to run outside of software render mode.

      Granted BZFlag is a super high end game that makes Crysys look like Wolfenstine 3d (That everyone is sarcasim)

      If you are into gaming, dont use Windows 7 64 bit. It's incompatible as hell.

      --
      Do not look at laser with remaining good eye.
    10. Re:There were some damn fine games in that era... by stardaemon · · Score: 1

      Actually Windows 7 wont work with MOST OpenGL games either. I tried running a couple of OSS games that used OpenGL on a really outdated Geforce 9800GT and a quad core i5 and it failed to run outside of software render mode.

      Granted BZFlag is a super high end game that makes Crysys look like Wolfenstine 3d (That everyone is sarcasim)

      If you are into gaming, dont use Windows 7 64 bit. It's incompatible as hell.

      Really? BZFlag works fine for me... Granted, I've got a i7 920@3.48 GHz and a GTX 470...
      And yes, I run win7 64 bit as my windows OS.

      --
      The only way to stay sane in an insane world, is to be mad yourself...
    11. Re:There were some damn fine games in that era... by Anne_Nonymous · · Score: 1

      Judging by your user ID, I'm surprised you had games that used electricity.

    12. Re:There were some damn fine games in that era... by KDR_11k · · Score: 2, Informative

      Because more surface area is covered by texels that are part of one smooth surface than texels that are supposed to represent hard edges. Edges might look better with nearest-neighbor (provided the texture has no anti-aliasing) but smooth surfaces will show banding that doesn't belong there.

      --
      Justice is the sheep getting arrested while an impartial judge declares the vote void.
    13. Re:There were some damn fine games in that era... by beardz · · Score: 1

      Actually Windows 7 wont work with MOST OpenGL games either. I tried running a couple of OSS games that used OpenGL on a really outdated Geforce 9800GT and a quad core i5 and it failed to run outside of software render mode.

      Granted BZFlag is a super high end game that makes Crysys look like Wolfenstine 3d (That everyone is sarcasim)

      BZFlag works just fine here in OpenGL mode on Win 7 Ult x64 (w/ 8800GT and v258.96 drivers).

      If you are into gaming, dont use Windows 7 64 bit. It's incompatible as hell.

      Every single modern game I've tried has worked perfectly well on 7 x64, /shrug.

    14. Re:There were some damn fine games in that era... by Anonymous Coward · · Score: 0

      There still are, I guess you just don't play anymore like most people saying this kind of comment.

    15. Re:There were some damn fine games in that era... by autophile · · Score: 1

      Alphanumeric characters? Sheer luxury! We had to get up each day before we went to sleep, clean out the bit bucket on top of the rubbish tip we lived in, with our tongues, and then we had to flip switches to enter our movements in binary, and pay mill owner for the privilege, and when we got home our Dad and our mother would kill us and dance on our graves, singing Halleluia!

      But you try telling the young people that. They won't believe you!

      --
      Towards the Singularity.
    16. Re:There were some damn fine games in that era... by MobileTatsu-NJG · · Score: 2, Insightful

      ...and we didn't need gimmicks like motion controllers, photo-realistic graphics and high framerates to enjoy them.

      Oh please. Wing Commander was that game you played when you had just dumped a large sum of money into a new computer system and wanted to show it off. VGA graphics, expanded memory, Sound Blaster, megabytes of graphics, multi-media CD-ROM, FMV, etc. That was the one game you always had an optimized boot floppy around for. "Didn't need gimmicks*" my ass, I bet you bought the speech pack for it!

      The games were fun, but let's be realistic, none of the Wing Commander games were intended for modest machines.

      --

      "I like to lick butts!" by MobileTatsu-NJG (#32700246) (Score:5, Informative)

    17. Re:There were some damn fine games in that era... by Beelzebud · · Score: 1

      Back in my day we used to use tin cans and a string to play Doom on Dwango, and WE LIKED IT!

    18. Re:There were some damn fine games in that era... by Tetsujin · · Score: 1

      and we didn't need gimmicks like motion controllers, photo-realistic graphics and high framerates to enjoy them.

      Man, whatever. The way I remember it, half the fun of gaming in the late 80s and early 90s was looking forward to the next big step forward in hardware or software performance.

      --
      Bow-ties are cool.
    19. Re:There were some damn fine games in that era... by Anonymous Coward · · Score: 0

      Didn't "WASD" become popular with the mouse....

    20. Re:There were some damn fine games in that era... by Frogg · · Score: 1

      indeed - not only that, but bilinear/trilinear filtering (when applied to the whole screen, as opposed to filtering on when rendering out textured polys) are really techniques for really high-res screen displays - such fullscreen filtering is pretty quick and dirty but really helps take the hard edges off of polys/models.

      by comparison, on relatively low-res displays, the blur is just too much and simply causes an unwelcome loss of overall image quality.

    21. Re:There were some damn fine games in that era... by oliverthered · · Score: 1

      someone should have gotten you a chess set.

      --
      thank God the internet isn't a human right.
    22. Re:There were some damn fine games in that era... by rvw14 · · Score: 1

      I remember trying to get it to run on a 386sx. Good times.

    23. Re:There were some damn fine games in that era... by MobileTatsu-NJG · · Score: 1

      I remember emulating expanded memory on my 286 with a TSR that... well actually I don't know how it did it but it did make Wing Commander think it saw an extra meg of RAM. It worked but it was sllllllooooowwwwwwww. It was unplayable, but it was the first time I saw the hand moving the joystick around on the screen. (On a side note, despite my parents' protestations about playing games too much, things like that helped make me employable years later...)

      I never did understand why you needed to have a 386 processor to have 'expanded memory' and why 'extended memory' wouldn't cut it.

      --

      "I like to lick butts!" by MobileTatsu-NJG (#32700246) (Score:5, Informative)

    24. Re:There were some damn fine games in that era... by LazLong · · Score: 1

      We didn't! We had to mail our posts that were then hand copied and sent out by carrier pigeon to all of Slashdot's readers. And that's the way it was, and we liked it! We loved it!

      Actually, I read Slashdot for a good while before getting an ID.

    25. Re:There were some damn fine games in that era... by bretticus · · Score: 1

      I preferred a nice game of Global Thermonuclear War.

    26. Re:There were some damn fine games in that era... by cthulhu11 · · Score: 1

      Truly. I had a *lot* of fun playing Snipes back in teh_day

  2. Great! by Warma · · Score: 2

    I've been waiting for this, though not expecting to see it. In my understanding, this'll allow future generations to play at least MechWarrior 2 and Battlezone, which have sadly been destroyed by DirectX patching.

    1. Re:Great! by Aggrajag · · Score: 1

      There's a new port of Battlezone available although it is not ready yet:

      http://www.bzuniverse.com/forum/index.php?board=48.0

    2. Re:Great! by jaggeh · · Score: 0, Redundant

      O_O

      WANT!

      --
      I would give everything i own for a little bit more.
  3. WoW!! by Anonymous Coward · · Score: 1, Informative

    Fastest slashdotting *ever*

    1. Re:WoW!! by Kjella · · Score: 2, Informative

      Fastest slashdotting *ever*

      Ever since they started giving subscribers early peeks, the weakest sites have been slashdotted before the story hit the front page. Oh well...

      --
      Live today, because you never know what tomorrow brings
    2. Re:WoW!! by Abstrackt · · Score: 2, Informative

      If you happen to use Firefox and Greasemonkey here is a script that automatically appends Coral Cache links for Slashdot as well.

      --
      They say a little knowledge is a dangerous thing, but it's not one half so bad as a lot of ignorance. - Terry Pratchett
  4. Wine? by Ynot_82 · · Score: 4, Interesting

    I haven't read TFA yet
    but wouldn't this have been a prime use-case for Wine on Windows?

    1. Re:Wine? by Zixaphir · · Score: 2, Interesting

      I was going to place a statement in a similar vein. I hope he didn't have to replicate any work that Wine has already been successful in implementing.

      --
      "Now I am become Death, the destroyer of worlds"
    2. Re:Wine? by Anonymous Coward · · Score: 4, Interesting

      "Funny you should mention that..." I blew this morning trying to get some old PS2 hacking apps running on Wine. In the end I just installed w98 on a spare box. Wine is classic YMMV. It's a good, worthy project, but man, you just can't _count_ that's it's going to deal with even small old VB6 apps ahead of time. Use restraint for recommending it unless you've done exactly what's being discussed.

    3. Re:Wine? by advocate_one · · Score: 4, Insightful

      "Funny you should mention that..." I blew this morning trying to get some old PS2 hacking apps running on Wine. In the end I just installed w98 on a spare box. Wine is classic YMMV. It's a good, worthy project, but man, you just can't _count_ that's it's going to deal with even small old VB6 apps ahead of time. Use restraint for recommending it unless you've done exactly what's being discussed.

      what seriously pisses me off with WINE is that something works with one version of it, but breaks in the next... the database is almost useless with regards to being kept up to date and I'm too old for all this hassle now... and there's TOO much emphasis on having the very latest game running on it to the detriment of making sure other games don't become broken by changes made to support the latest and greatest...

      --
      Donald 'Duck' Dunn: We had a band powerful enough to turn goat piss into gasoline.
    4. Re:Wine? by Anonymous Coward · · Score: 0

      On a spare box? Why? What's wrong with running a VM? Get with the program man, this is 2010! The concept of "spare box" to run temporary installs of whatever OS is long gone.

    5. Re:Wine? by FuckingNickName · · Score: 0, Troll

      This isn't 2005. The concept of a VM software decently supporting old operating systems is long gone. They're now just a way of selling something to go with the "cloud" hype, a solution to a problem that shouldn't even exist were it not for awful security and installation policies on commodity operating systems: the need to run more than one instance of an operating system on a single piece of hardware.

      Specifically, go on and try various VM solutions and see how many get you a working and stable Windows 98 install. And by "stable" I mean at least as stable as you'd get from good 10 year old hardware. Now what happens if the choice you've already made for all your other VMs doesn't support Windows 98? You going to install two vendor's solutions on the same box and run them simultaneously? Good luck with that.

    6. Re:Wine? by bmcage · · Score: 4, Insightful

      Wingcommander ran great in wine last time I played it in 2008. I suppose windows developers don't follow linux development?

    7. Re:Wine? by TubeSteak · · Score: 2, Informative

      http://sol.gfxile.net.nyud.net/ddhack/
      Most of the pictures got loaded into the cache

      --
      [Fuck Beta]
      o0t!
    8. Re:Wine? by Anonymous Coward · · Score: 2, Insightful

      there's TOO much emphasis on having the very latest game running on it to the detriment of making sure other games don't become broken by changes made to support the latest and greatest...

      You aren't really proposing an alternative though... Automated testing is practically impossible and manual testing is a huge, huge job if it means play testing thousands of games before every release. just saying "don't make mistakes" is not useful.

    9. Re:Wine? by TheRaven64 · · Score: 1

      That was my first thought, but then I remembered what early DirectDraw actually did. It's basically little more than a bitblt operation, with some very primitive line drawing and image scaling support. Implementing it from scratch would probably take less time than factoring out WINE's DirectDraw DLL. I'm also not sure if WINE actually uses any acceleration for this kind of drawing. It's probably not worth it - it was done entirely on the CPU, back when the CPU was a 486, so doing it in software, even via a couple of bonus layers of indirection, on a modern machine is likely to be more than fast enough.

      These games would probably work fine under WINE, but there's not much point in using the WINE DLLs on Windows except where the Windows ones don't work properly, so he may as well use the real versions for everything else.

      The real question is why didn't he use DOSBox? He ran Wing Commander 1-4. The first three predate Windows 95, and so use DOS. The fourth had both DOS and Windows versions. Back then, they probably used a very simple set of wrappers around the VGA bitblt operation for DOS and the DirectDraw equivalent on Windows so that the game could use either.

      All four of the games he tried are already supported by DOSBox, so it seems like a solution in search of a problem. He probably learned a bit and had fun making it work, but missed the important lesson of making sure that a project actually needs doing before you start.

      --
      I am TheRaven on Soylent News
    10. Re:Wine? by mr_mischief · · Score: 5, Insightful

      Automated testing of all the applications is pretty much a nonstarter. However, automated regression testing to make sure function calls with the same arguments in the same context don't give different results just because you debugged a different set of arguments or in a different environment are easy to do with a proper test harness. The hard part is mapping the applications to test cases, but that's not impossible, just time consuming and somewhat difficult.

    11. Re:Wine? by Anonymous Coward · · Score: 0

      Well, they could start by just applying patches that fix things and can't really break anything instead of referring to some hypothetically better solution for over a year.
      See e.g. http://bugs.winehq.org/show_bug.cgi?id=8854
      They still wait on some X extensions that maybe, if we are lucky, will be in some distros in a year... or two... or never.

    12. Re:Wine? by Anonymous Coward · · Score: 0

      Because installing a whole nother application with its own problems and issues is a much better idea then replacing a single file and doing the work yourself and knowing its done right.

    13. Re:Wine? by Tapewolf · · Score: 1

      The real question is why didn't he use DOSBox? He ran Wing Commander 1-4. The first three predate Windows 95, and so use DOS.

      Apparently he had some weird collector's edition which was made up of later Windows ports - it may not have included the original DOS versions.

    14. Re:Wine? by gmthor · · Score: 2, Insightful

      The Problem with Wine is, that from the user point of view, it is extremely unstable. It tried it out a couple time with games that had Gold or Silver status. None of them worked with the version I tried.
      I think I would be really worth it, to stop developing more features for a while and add as many regression tests as possible to the project. So that the project gains stability. Since in the end, the real success is always determined by the end user.

      --
      How do I uncompress my MD5 archive?
    15. Re:Wine? by Josh04 · · Score: 2, Insightful

      You call that a ridiculous wine bug? No, this:

      http://bugs.winehq.org/show_bug.cgi?id=421

      is a ridiculous wine bug.

    16. Re:Wine? by dave420 · · Score: 3, Informative

      Of course you can install Windows 98 in a virtual machine, and it'll run just as stably as it did on the original hardware. It amazes me that you think otherwise, and feel the need to spew all over the discussion with your insanity.

    17. Re:Wine? by Chyeld · · Score: 0, Flamebait

      So you can run Wine in Windows now? How delightfully recursive.

      Oh wait, you meant that Wing Commander ran great in a different OS that most people don't install by default just to play ancient games. Thus attempting to insinuate that someone doing a hobby project to 'fix' it so Wing Commander ran well in the current version of Windows is somehow wasting their time.

      Man, glad you weren't around to advise Linus...

    18. Re:Wine? by Mr+EdgEy · · Score: 1

      I've never found a virtual machine solution that lets me play W98 games such as quake 3 (just an example, I know it runs on W7 still, how much longer though?)

    19. Re:Wine? by Anonymous Coward · · Score: 0

      I've actually had some luck running a couple of old VB5 apps. I had to do

      $ winetricks vb5run

      to install the necessary runtime. Did you try winetricks(http://www.kegel.com/wine/winetricks) with wine?

    20. Re:Wine? by FreonTrip · · Score: 1

      I agree with the general thrust of your argument, but you should give ioQuake3 a try if you haven't. It runs on basically everything, has a lot of nice bugfixes and feature improvements, and is still actively updated. Win7's cavalier dismissal of thousands of 8-bit DirectDraw apps feels more than a little cynical, I'll admit... I'm fortunate in that my productivity hasn't been shackled to The World's Favorite Software.

    21. Re:Wine? by Anonymous Coward · · Score: 0

      Pretty sure such a thing doesn't exist?

      Unless you mean running wine in a linux VM on windows ?

    22. Re:Wine? by Anonymous Coward · · Score: 0

      I have bought most of the WC games. The version in question is the Kiltrathi edition (which btw is worth about 130 bucks if you have it). They also gave I and II away on magazine CDs. Recently http://www.wcnews.com/ had some permission to give away a copy of wcI windows edition. They also have a huge amount of information on everything about wing commander. Think at one point they even had a set of beta source code for one of them.

      So it is not exactly some 'weird collectors edition'. It is a well known version in the WC groups. It is a 'little' on the rare side but they did sell pretty well too...

      Also what he did was semi cool (and in scope of the original directx). As that was the point of using a well defined interface (I remember it being one of the selling points of DirectX when it first came out).

    23. Re:Wine? by orasio · · Score: 1

      Use restraint for recommending it unless you've done exactly what's being discussed.

      This is about some guy who put a lot of work into an improved DLL for Wing Commander.
      Even if Wine didn't support his software out of the box, it could have been a better starting point, and the patches he shares would be more useful.

    24. Re:Wine? by cbiltcliffe · · Score: 1

      I don't know....a couple of weeks of programming, followed by six months of game playing sounds like a great job, if you ask me....

      "It's compatibility testing, boss. Honest!"

      --
      "City hall" in German is "Rathaus" Kinda explains a few things......
    25. Re:Wine? by Zaiff+Urgulbunger · · Score: 1

      Oh wait, you meant that Wing Commander ran great in a different OS that most people don't install by default just to play ancient games.

      Irony ahoy!!

    26. Re:Wine? by Urza9814 · · Score: 2, Insightful

      Have you ever tried to use Wine in Windows? Last time I attempted was a couple years ago, but I remember spending hours trying to get the damn thing to work, only to eventually just give up. Wine is great on Linux, but the processes to get it installed and to use it for Windows could be greatly improved.

    27. Re:Wine? by Anonymous Coward · · Score: 0

      Get ORF my directly Drawn Lawn !

    28. Re:Wine? by CarpetShark · · Score: 3, Interesting

      For a lot of API calls, you could probably build some automated tool that analyses running programs on windows, recording calls in/out of programs/apps, their arguments, results, and what ideal results would be/are. From that, testing against wine builds would be fairly straight forward.

    29. Re:Wine? by Jorl17 · · Score: 1

      My apps have worked great. Some times I debug it when it's not working. Unlike most other /.'ers, I've both contributed, complemented and helped the Wine project. I feel sorry that it didn't help you in your case, but it has worked in most of my cases -- in some occasions, applications that crashed in Windows didn't crash in Wine; and most of the time, nongfxintensive apps run faster due to having less Windows SHIT overhead.

      --
      Have you heard about SoylentNews?
    30. Re:Wine? by CarpetShark · · Score: 1

      It's true. Even the automated app installer scripts written by experts don't work well between different versions of wine. What hope do users have?

    31. Re:Wine? by wildstoo · · Score: 1

      Jesus tap-dancing christ. Sometimes I'm really glad I dual-boot.

    32. Re:Wine? by Hatta · · Score: 1

      What VM do you use to virtualize 98? What video drivers do you use that work well with the display device provided by the VM? I've never gotten virtualized Windows 98 to work at an acceptable speed (at least as fast as my P200). I'd love to know how you do it.

      --
      Give me Classic Slashdot or give me death!
    33. Re:Wine? by exallon · · Score: 1

      As long as WINE runs World of Warcraft I am ok with it..

    34. Re:Wine? by Anonymous Coward · · Score: 0

      actually I've been testing the WC games in wine for years, most work just tell wine to use win95 mode. works better than windows for wc 1/2, 3/4/ have movie issues on all platforms.

    35. Re:Wine? by plumby · · Score: 1

      just saying "don't make mistakes" is not useful.

      I've ranted about something similar on a different thread, but I'll go off on one again.

      Why isn't it useful? He's not vaguely saying "don't make mistakes". He's giving specific issues that he sees with the current process. He may not have an answer, but someone else who may not have even realised this was an issue may have an answer.

      Ignoring problems because you personally don't have the solution is a poor way of getting the problem resolved.

    36. Re:Wine? by Chaos+Incarnate · · Score: 1

      You're confusing "stability" with "3D hardware emulation".

      --
      Benford's Corollary to Clarke's Law: "Any technology distinguishable from magic is insufficiently advanced."
    37. Re:Wine? by Beelzebud · · Score: 1

      Using Wine for one solitary .dll file seems like total overkill to me. Why not just use the modified .dll? There is a dll mod for Fallout and Fallout 2, and it actually adds high resolution, and filtering options, to the menu. That right there is something Wine doesn't do.

    38. Re:Wine? by Beelzebud · · Score: 1

      Which at the end of the day is the crux of this whole debate. Telling a gamer to run Win98 in a VM, to play games that use 3d hardware, is a non-starter, and it's why some people still use old machines with outdated OS's on them. Sometimes emulation doesn't cut it.

    39. Re:Wine? by Xtifr · · Score: 1

      what seriously pisses me off with WINE is that something works with one version of it, but breaks in the next.

      So, it's just like Windows, in other words! :)

      (To be fair, it's surely for the same reason--applications depending on specific behaviors from undocumented APIs. And yes, MS is a little more rigorous in their backwards-compatibility testing than the WINE devs. Nevertheless....)

      You could always try keeping multiple copies around, and run the version that's known to work with the game you want to play when you want to play it. In fact, that may be the only possible solution if you have two different games that depend on two different, incompatible behaviors of the same undocumented API.

    40. Re:Wine? by Beelzebud · · Score: 1

      I'm calling bullshit on this. Unless you're the only person in the world with the video drivers to make it work correctly...

    41. Re:Wine? by bmcage · · Score: 2, Interesting

      Although you are now considered a flamebait, I'll answer anyway.
      When I switched to linux in 2000, I kept win 95 around so I could play wingcommander. By the time it was 2006, it became increasingly more difficult to run them on the latest windows version. A rerelease of the old games luckily allowed playing on Win XP. However, that meant I had to download a hacked version with a virus, no, I don't intend to rebuy things I bought before (my windows version was probably also illegal, I did not connect to the net so I did not care).
      Finally, by 2008, all ran great in wine.
      People who like old games run emulators all the time, so it is normal to use dosbox for wingcommander 1/2, and a win 95 reimplementation for wingcommander 3/4. To suggest otherwise means _you_ are the idiot.

    42. Re:Wine? by Chyeld · · Score: 1

      People who like old games run emulators and virtual machines all the time, yes. They do so primarily because the code those games rely on is either missing or no longer works the same way in today's version of OS, not because it's the 'better way to play them'.

      To suggest that someone putting forth effort to remake one of those missing portions of code such that you could play one of these games in a modern OS, rather than through an emulation or virtual machine, is somehow redundant or unnecessary is in itself idiotic.

      This isn't the "How to do things the conventional way because new is different and different is bad" blog. It's "News for Nerds, News that Matters", and someone making an open source implementation of DirectDraw and releasing the source code is news for nerds, regardless of how often someone says 'oh, you can do that just as easy in X'

      There were perfectly good alternatives to writing his own "Unix-like" OS back when Linus was first starting out too. That didn't make Linux any less awesome.

    43. Re:Wine? by Zixaphir · · Score: 1

      Yes, because having the source code available for something that's already been implemented is the same thing as installing all of Wine.

      --
      "Now I am become Death, the destroyer of worlds"
    44. Re:Wine? by bmcage · · Score: 1

      >

      There were perfectly good alternatives to writing his own "Unix-like" OS back when Linus was first starting out too. That didn't make Linux any less awesome.

      None where GPL licensed. If BSD was not in legal trouble, changes are big that linux would never have attracted this following.
      Wine is LGPL. I just finished a complete GPL undo/redo python stack for a text editor. I copied 90% and the ideas from a BSD project, and made the connections to make it work for my usecase. Big deal.

    45. Re:Wine? by Anonymous Coward · · Score: 0

      Of course you can install Windows 98 in a virtual machine, and it'll run just as stably as it did on the original hardware.

      As someone who used Win98 back in the day, I don't find that very impressive...

    46. Re:Wine? by Anonymous Coward · · Score: 0

      That does make me wonder why he did take necessary the dll from wine as the basis for his work. He says he looked and what he found wasn't suitable because they were mostly wrappers for the real ddraw.dll, which I'm sure wouldn't be the case for wine, and he doesn't mention wine at all. Maybe he overlooked it because he thought it wouldn't be useful on Windows.

    47. Re:Wine? by Ginger+Unicorn · · Score: 1

      I don't get it. Why is that ridiculous?

      --
      (1.21 gigawatts) / (88 miles per hour) = 30 757 874 newtons
    48. Re:Wine? by Josh04 · · Score: 1

      Basically,
      a. The bug is ancient
      b. The bug affects loads of things, some of which are important
      c. The bug has been fixed for some time by the guy named max, who has implimented a full DIB engine which hugely increases performance in certain situations and can be turned on and off, but it won't be committed by the wine approval people for cryptic reasons (this was the case about a year ago when I looked into it, might have changed now, but a scan of the comments suggests not)

    49. Re:Wine? by CarpetShark · · Score: 1

      They do so primarily because the code those games rely on is either missing

      Nope. Usually if the code (ROM, OS, or game code) was missing, it wouldn't be available in an emulator either.

      or no longer works the same way in today's version of OS

      This is an argument for emulators OR old machines, so it's irrelevant in distinguishing between them.

      not because it's the 'better way to play them'.

      Not so. I've always found emulators a better way to run games. Consider having to restart a level on a real console, vs. regularly pressing one key to snapshot your progress, and restoring with another key any time you make a mistake. Suddenly the gameplay of your favourite game becomes a LOT less tedious, and you can relive an old experience or catchup on a classic experience you missed very quickly. Same for applying cheat codes, boosting the graphics with interpolation from low to high res, etc. Emulators are generally MUCH better than the real thing, at least once the emulating machine can out-perform the original.

    50. Re:Wine? by Chyeld · · Score: 1

      We are talking about a Windows game, a Windows game that relied on libraries that Microsoft no longer distributes or supports.

      We are talking about a man who took the time and effort to reimplement one of those libraries and open source his solution.

      We are talking about someone then acting like an ass making as if this was a pointless endeavor because the game plays for HIM when he uses Wine in Linux.

      We are talking about me pointing this out and this person calling me an idiot because the 'norm' to him was using emulators to play the specific games in question, specifically because he couldn't play them normally without them.

      We are talking about me pointing out once again, that this didn't make his statement regarding the utility of this project any less false.

      I'm sorry, but where do your points have relevancy to that conversation?

    51. Re:Wine? by CarpetShark · · Score: 1

      I was talking in the context of your statements, and talking about their own merits or lack thereof, not whatever context you wrote them in.

  5. Or you could by Rosco+P.+Coltrane · · Score: 3, Insightful

    use an older version of Windows in a virtual machine.

    --
    "A door is what a dog is perpetually on the wrong side of" - Ogden Nash
    1. Re:Or you could by M.+D.+Kristopeit · · Score: 3, Insightful
      NOT INSIGHTFUL. virtual machines are NEVER the optimal solution. ddraw.dll has been reimplemented at the lowest level... given that, why would anyone choose to rather use a virtual machine?

      the only appeal of using a virtual machine was to a lazy developer WHO DIDN'T WANT TO DO IT RIGHT.

      thanks story submitter... glad someone out there still understands, and has some pride left.

    2. Re:Or you could by dintech · · Score: 4, Insightful

      But to run Wing Commander on modern hardware, it doesn't need to be optimal. 80/20 rule dude.

    3. Re:Or you could by Athrac · · Score: 1

      None of the DirectDraw games I've tried have worked correctly in VMWare (6.5). I know it's supposed to support DirectX, but in practice there are all sorts of graphical glitches and everything runs slow as hell.

    4. Re:Or you could by zblack_eagle · · Score: 1

      I tried that some time ago. Unfortunately it seems that some old games don't test the capabilities of the virtualized graphics "hardware" so much as compare it to some internal list of supported hardware, and thus refuse to run

    5. Re:Or you could by kinema · · Score: 5, Insightful

      What is learned by simply booting up a VM and loading a game? In the story submission he specifically mentioned "all the fun workarounds" that he had to come up with get everything to work on a modern system. Don't you think doing a cleanroom reimplementing a subsystem like DirectDraw presents a great learning experience?

      No, I wouldn't have done this if you had payed me; I have my own interests and passions. I'm not at all interested in graphics programming or for that matter video games, though, apparently someone is and I think it's great that he saw a problem and decided to attempt to find a solution for it.

      This is what being a geek is all about. Bravo.

    6. Re:Or you could by peppepz · · Score: 3, Interesting
      I think it's not a good idea to run software which was not designed to run on the version of the OS you're using. Besides using ddraw.dll, those games might also display funny behaviour which was not uncommon in those pre-NT, pre-UAC days, such as installing VxD device drivers, scribbling the registry and tossing DLLs all over the filesystem. A VM could spare you those worries.

      See for example DOSBox: it lets you run old games with near-perfect results, and running them in DOSBox is much, much, much easier than getting them to work on a real DOS machine was, back in the days.

    7. Re:Or you could by Zaphod+The+42nd · · Score: 1

      You misunderstand the word optimal. It doesn't just mean processing performance capability. Yeah, sure, even if not running most efficiently, a modern processor can easily run Wing Commander. However, running a Virtual Machine in order to accomplish this will entail many more things, WAY more hard drive space being use for one.

      --
      GCS/MU/P d- s:- a-- C++++$ UL++ P+ L++ E+ W++ N o K- w--- O M+ V- PS+++ PE Y+ PGP t+ 5- X R++ tv+ b++ DI++ D++ G+ e++ h-
    8. Re:Or you could by Hamsterdan · · Score: 1

      Tried running ST: Armada in 98SE (under Virtualbox), and it won't work properly either. So, I'm keeping an old machine for 98SE and DOS

      --
      I've got better things to do tonight than die.
    9. Re:Or you could by Your.Master · · Score: 5, Insightful

      It's only already done if the only ddraw game you want to play is Wing Commander 1-4 (Windows versions). And only with conventional monitor setups and only if you never want to capture the window content, due to the kludges involved. And if you can stand the known bugs he mentioned, eg. the blinking screen effect described in Wing Commander 4.

      So basically, it's only already done if you want a suboptimal experience. But you were just talking about how you wanted an optimal solution, and how a solution that basically works better than this is "never" the optimal solution. To be fair, it sounds like 1-3 work pretty well, but for 4 you have to put up with some crap. And any other ddraw game is unlikely to work all that well.

      This is a fun an interesting reverse engineering project. Stop being such a prick about it.

    10. Re:Or you could by Hieronymus+Howard · · Score: 1

      A virtual machine for old games would only require a tiny fraction of a modern hard drive.

      If you just want to run old games, then a VM is the way to go. If you want a pet programming project then do something like this.

    11. Re:Or you could by eharvill · · Score: 1

      Upgrading to 7.1 might help solve some of your issues. I know there were a several fixes in the 6.5.x versions revolving around DirectX. Assuming you are on 6.5, upgrading to 6.5.4 might be helpful.

      --
      At night I drink myself to sleep and pretend I don't care that you're not here with me
    12. Re:Or you could by hairyfeet · · Score: 2, Insightful

      While this is true, older computers are as cheap and plentiful as dirt, and have many other uses that a VM can't match. Have an older game that needs GPU acceleration? Last I checked VMs were still hit and miss about that, whereas you can get an old Nvidia or ATI card for around $10.

      Another good example is bad weather, even with battery backup I don't trust it enough to leave my quad plugged in when a bad one is pounding, but this old 1.8Ghz Sempron I got for less than $50 from a client? Who cares, I have a 2.2Ghz Athlon CPU and board sitting in the closet. Finally there are guests. If my nephews both want to surf I have a 1.4Ghz P4 with a 17 inch CRT set up in the corner I paid a whole $35 for that works great with XP for Youtube or basic surfing. And with a $20 Geforce 6200 in it my youngest nephew can even play his Lunia and Grand Chase MMOs on it just fine.

      So unless you live in a closet and don't have ANY space at all, having a spare or two has its uses. A four port KVM can be had for around $20 on Newegg, and you can find SFF late P3s early P4s all day long on Craigslist for Chump change, or even for free on Freecycle. So considering the many uses a spare box can have, from experimenting with multiple OSes to guest PC, and how the price is nothing, I say why the hell not?

      --
      ACs don't waste your time replying, your posts are never seen by me.
    13. Re:Or you could by m.alessandrini · · Score: 0

      Or... what about running Wine in Windows? Has someone ever done it?

    14. Re:Or you could by drinkypoo · · Score: 1

      NOT INSIGHTFUL. virtual machines are NEVER the optimal solution.

      What a ridiculous thing to say. If I have spare memory, disk bandwidth, and CPU time, then it costs me nothing to virtualize (well, unless I'm paying for licenses, but that's not the case when I own all the windows licenses I need and everything else I run is at least free if not Free) but it requires effort to develop software. The virtual machines continue to improve and computers continue to become more powerful so the cost indeed decreases over time. Many games work fine in a VM, at full speed, because they are so simple. I'm not going to port populous 2 to Linux, I'm going to fire up DOSBOX.

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    15. Re:Or you could by Nimey · · Score: 1

      "Fun" could have been sarcasm. Maybe not, but possible.

      --
      Hail Eris, full of mischief...

      E pluribus sanguinem
    16. Re:Or you could by VoidCrow · · Score: 2, Interesting

      For what it's worth, I have Q3 Arena running on XP in a VirtualBox VM, under 64-bit Fedora. It's all running on an Acer 5536 laptop with 4Gb ram and an ATI 3200 video chipset. It's not state of the art, not high-end, and it still runs fast and smoothly - far more so than the original hardware which introduced me to this game. I appreciate the merit of your comment, but draw your attention to Moore's Law.

    17. Re:Or you could by Anonymous Coward · · Score: 3, Funny

      Multiple spare boxes are a huge mess. Don't fall to this trap. You may end up on one of those hoarding shows. :(

    18. Re:Or you could by FreonTrip · · Score: 1

      I think ioQuake3 might be for you. By all means, keep the VM for other stuff, but there's literally no reason you shouldn't be running ioQ3 natively on your modern system.

    19. Re:Or you could by bwcbwc · · Score: 1

      Based on the developer blog, he didn't implement ddraw.dll. Just enough calls to get his WC collection working, along with some crazy hacks because he didn't want to do it right. But at least he documents his kludges.

      --
      We are the 198 proof..
    20. Re:Or you could by nine-times · · Score: 1

      Yes, that will work, but then you still need to install virtual machine software, have a Windows 98 disc (and technically license), and then you'll have to support and possibly troubleshoot a whole other environment.

      Imagine 100 years from now. Someone wants to play Wing Commander in order to experience an early example of the art form we know as "video games". They'll still need to dig up a Windows 98 install disk? That's kind of shitty.

    21. Re:Or you could by CarpetShark · · Score: 2, Insightful

      older computers are as cheap and plentiful as dirt

      You're kidding me. The effort to get an old computer, set it up, install the crappy old OS from slow floppies/CDs, mess around with limited memory and IRQs and realising at the last minute that you can't just transfer over wireless or USB... it'd be cheap if your time is worth nothing. Otherwise, running a VM (or just about any other method) is probably faster. I'd love another physical amiga, but I know I'd never use it, next to having a copy of UAE.

    22. Re:Or you could by Anonymous Coward · · Score: 0

      The "does not understand what it is to be a nerd rule" dude...

      A bunch of anti-nerds turned up for the Light Sabre story last week.

      Stop pissing on other peoples accomplishments.

    23. Re:Or you could by hapalibashi · · Score: 0, Offtopic

      Amen

    24. Re:Or you could by Lord+of+Hyphens · · Score: 1

      Could be dwarfy Fun too.

      --
      "I've spent my whole life figuring out crazy ways to do things. It'll work." -- Montgomery Scott, "Relics"
    25. Re:Or you could by Anonymous Coward · · Score: 0

      Oh, Christ! You can put multiple games in one VM. And hard drive space? Really? THAT'S what your complaining about?

    26. Re:Or you could by Lumpy · · Score: 1

      You did that just as an exercise right? Because it's far easier to simply run Q3 native in linux.

      --
      Do not look at laser with remaining good eye.
    27. Re:Or you could by wildstoo · · Score: 1

      I agree up to a point. VMs may not be the optimal solution in this case, but they can certainly be a lot more convenient and require a lot less work for a lot more payoff. Honestly, is it always "optimal" to code a hack that solves an API problem for one, or in this case 4, specific apps or use a VM to run the original software in its native environment? It totally depends on what you want to do and how broadly you want to do it.

      If this hack worked for every ddraw game, I'd understand, but it contains just enough to get the WC games working.

      Is that awesome? Yes.
      Is it the ultimate solution for running ddraw apps in Windows 7? Not yet.

      A VM can be a much more flexible solution that can work for many more apps. Sounds like you've just had a bad experience with virtualization... (which is underastandable, tbh :)

    28. Re:Or you could by Combatso · · Score: 1

      i'm the prick?

      yes, yes you are.

    29. Re:Or you could by Beelzebud · · Score: 1

      Beat me to it. I'm not sure what the point of running a game in a VM is, when there is a native Linux client available for it...

    30. Re:Or you could by JeffSpudrinski · · Score: 1

      A lot of folks seem to be missing two key points here:

      1) Some people really have a passion for figuring out how to make things work in ways that they weren't made to. This is a perfect example of tweaking the OS settings to make a classic (and excellent) game work on a system that is nearly 20 years newer than what it was intended to run on....very, very cool.
      2) Some people prefer to use "tried and true" methods (e.g. DOSBox, VMWare, XP Mode, etc...) and build on the excellent work of others who have already done the footwork. Getting good response and use of this type of solution is what keeps outstanding software and communities together...DOSBox is an excellent emulator which is a true "Labor of Love" for gamers who want to play classic games, but hate fiddling.

      For myself...it truly depends on what mood I'm in and whether or not I want to dig into technical stuff.

      If all I want to do is hop into the ol' starfighter and fry some Kilrathi furry butt, then DOSBox is the way to go. If I'm feeling particularly geeky and have a free weekend (and looking for some bragging rights), the technical fiddling is that way to go. Either way, you get a great sense of satisfaction.

      Please stop bashing the crap out of each other and just recognize that there's two really good solutions here. This actually makes us fortunate where this is concerned since Origin Systems is now pretty much gone and Sierra Online (who bought Origin Systems) was disbanding back in '03 or '04. We will probably never seen another chapter of this extremely nice game...so we have to get our kicks where we can.

      Just my $0.02.

      -JJS

    31. Re:Or you could by VoidCrow · · Score: 1

      It was mostly curiosity, but I was seriously impressed by the performance. I made the VM as a clean room for checking out viruses and trojans - also curiosity. I knew about ioQuake (and have tried it), but in general, my gaming environment is Windows 7. I've never owned a machine capable of running hardware virtualisation in the past, and my prior (sluggish) experience of VMs was confined to VMWare under various iterations of Windows, so this was uncharted territory.

    32. Re:Or you could by hairyfeet · · Score: 1

      Wow...you hadn't actually tried ANY of this before, have you? first of all we ain't talking about some 486, the lowest I'd touch would be a 1GHz. Second, you DO have a router, don't you? Even a 1GHz has install over the network, it really isn't hard at all to do. Finally, limited memory? A 1GHz will typically hold 512Mb of RAM, which is frankly huge for anything other than XP, and even XP when properly stripped down (Google "TinyXP Beast Edition" if you don't want to do the work and have an XP Pro key lying around.) will run just hunky dory.

      So sorry dude, we ain't talking about using stone age hardware here, we are talking about having a spare low enough on the totem pole to run most older software. I've found the "sweet spot" for that seems to be sub-2GHz with an IDE drive (as some software I've found don't like SATA) and an older Geforce or Radeon card. Like I said plentiful and cheap as dirt, and really easy if you just follow one of the million tutorials out there. Sadly I don't need no steenkin tutorials because I'm a hell of a lot older than that and still remember the DOS commands for installing win9x.

      --
      ACs don't waste your time replying, your posts are never seen by me.
    33. Re:Or you could by Anonymous Coward · · Score: 0

      VirtualBox does 3d acceleration quite nicely. If the game can work with DirectX9c it'll work in a Windows XP VM. I can now finally play decent semi-recent widows games on my linux laptop.

    34. Re:Or you could by Xtifr · · Score: 1

      use an older version of Windows in a virtual machine.

      If you still have that older version. How many copies of Windows came with nothing but a re-install disc that won't work on anything but the original (now dead) machine that it was delivered with? How many ancient Windows CDs have been sat on/lost/used as skeet? I've got a bunch of old games, but I don't think I could come up with a single old copy of Windows. And it's not like you can go to the store and buy those ancient versions. Or are you suggesting piracy? Some people may be uncomfortable with that.

    35. Re:Or you could by cheesybagel · · Score: 1
      1 GHz is too fast for some games which used hardcoded timers (I even had problems with some games playing too fast in my Pentium 100). An emulator can dynamically change the clockspeed to fit the game being emulated.

      I also remember running MS-DOS in the Pentium 100. Not fun. From manually configuring CONFIG.SYS and AUTOEXEC.BAT for each game, to figuring out the correct soundcard settings, it was hell. DOSBox is much easier. My Amiga was easier to configure than a PC, and I prefer to use the UAE emulator. For much the same reasons. Many games are hardcoded and require you to either downgrade your hardware via bootstrap ROM settings after a reboot, or just plain won't work at at all. You could own a copy of every Amiga model that every existed, but that is not a practical solution. An emulator takes no physical space, and if it is fast enough, it doesn't matter.

    36. Re:Or you could by hairyfeet · · Score: 1

      Oh, I see where the confusion is. You are talking about DOS games, which frankly nobody bothers keeping a box around for anymore thanks to DOSBox. Hell even Good Old Games uses custom DOSBox installers with their DOS games, it just isn't worth messing with an old machine when DOSBox...well rocks.

      What I was talking about was the older Win9x stuff that just won't run right on anything but win9x. take for example Mechwarrior 3, which has a severely irritating glitch that causes enemy tanks to "bounce" several miles in the air on XP. Makes it pretty much impossible to play the game, same with some of the more PITA Sony titles like FF VII. For those cases a 1-1.6Ghz PC with an IDE and an old Gefore 5xxx or Radeon X16xx works just great, and as a plus it is easy to set up as a dual boot with XP and have it for a guest PC.

      --
      ACs don't waste your time replying, your posts are never seen by me.
  6. Who says DirectDraw is going away? by Man+On+Pink+Corner · · Score: 4, Informative

    My own DirectDraw apps from 1996 work great in Windows 7. The API is deprecated in the sense that Microsoft no longer recommends using it, and who knows if they're still even shipping ddraw.h, for that matter. But as a COM component, runtime support for IDirectDraw isn't any more endangered than CreateWindow().

    1. Re:Who says DirectDraw is going away? by Suiggy · · Score: 5, Insightful

      Yes, DirectDraw still exists on Windows 7, ddraw.dll is still there, and the headers are still a part of the Windows SDK and DirectX SDK. The problem is that graphics card vendors no longer care to test that their drivers work properly with DirectDraw, so it's really hit or miss if you get support.

    2. Re:Who says DirectDraw is going away? by peppepz · · Score: 5, Informative

      But removing IDirectDraw would only break some games from the 90s, while removing CreateWindow (Ex) would kill every single Windows application ever coded.

    3. Re:Who says DirectDraw is going away? by Anonymous Coward · · Score: 0, Funny

      But removing IDirectDraw would only break some games from the 90s, while removing CreateWindow (Ex) would kill every single Windows application ever coded.

      And nothing of value was lost.

    4. Re:Who says DirectDraw is going away? by Xest · · Score: 4, Interesting

      Indeed, in fact, this was precisely one of the problems DirectX was always designed to solve from the start, it was designed to provide a multimedia API that could both move with the times and retain backwards compatibility.

      Issues with older games tend to come down to hardware specific optimisations, obsolete libraries such as Glide, or OS specific code.

      For the most part, stuff written with Microsoft's officially provided Windows APIs even back to Windows 95 (and sometimes even further back than that) tends to still run. It's the stuff that doesn't use those APIs that often causes the problems.

      For better or worse, backwards compatbility is one thing that Microsoft certainly does tend to get right most the time. It's just that companies often ignore backwards compatibility when building new apps and just build for the now. Sometimes this is excused, i.e. game companies doing low level optimisations to improve performance, other times it's some MBA falling hook line and sinker for the sales pitch of some fly by night company providing an obscure set of code libraries and mandating all his developers use it.

      I still have apps I wrote in C using the raw Win32 API back in 1995/1996 that work absolutely fine to this day.

      Chances are if a game doesn't run, DirectX version is the least of it's troubles.

    5. Re:Who says DirectDraw is going away? by El_Muerte_TDS · · Score: 2, Informative

      DirectX isn't as backwards compatible as advertised. A lot of old games don't run well with newer versions of DirectX, in most cases it's just small things that are an annoying and don't result in a real application crash. I've seen games create issues when a new DirectX version came out since the introduction of DirectX 7, a lot of games using 6.4 suddenly had missing sounds, in some cases certain parts of the input handling was broken. And on a rare occasional there were noticeable render artifacts. In quite some cases this could easily be solved by putting the dsound.dll or dinput.dll that came with the DirectX of the game in the directory of the game itself.

    6. Re:Who says DirectDraw is going away? by Anonymous Coward · · Score: 0

      There was an era of DOS-turned-Windows programmers who weren't used to pouring over inch+ plus thick documents just to get a pixel on the screen. These are the guys who wrote many of these games that have trouble today.

      Of course, when you read the actual API's, you kind of get the idea that Microsoft was trying to fsck with them as well.

    7. Re:Who says DirectDraw is going away? by TheRaven64 · · Score: 5, Informative

      Indeed, in fact, this was precisely one of the problems DirectX was always designed to solve from the start, it was designed to provide a multimedia API that could both move with the times and retain backwards compatibility.

      DirectX was designed to solve precisely one problem: that game developers wrote games for DOS and didn't regard Windows as a sufficiently capable platform for gaming. In its early iterations, it was a very low-level API. It basically gave you a way of bypassing Windows and talking almost directly to the graphics and sound cards.

      Remember that, at the time, graphics cards were very simple devices. A lot were just frame buffers - a blob of memory connected to a DAC that scanned its contents and generated an analogue signal for a monitor. Some supported double buffering (i.e. two frame buffers and a flag to tell the DAC which one to read). They quite often had a BitBlt operation, which would copy a rectangle onto the frame buffer from RAM (across the bus) or from a bit of reserved VRAM, typically with a mask. A very few of them could also do line drawing and scaling of images during the blits.

      DirectDraw provided functions that were very thin wrappers around the graphics card's capabilities. It was designed from the start to make porting DOS games to Windows easy. Most DOS game developers had a small library of functions that implemented a few primitive graphics routines like bitblt in software and would use accelerator functions if they were available. You might remember games like SimCity 2000 requiring you to select which graphics card you had. It would use accelerated line drawing and blits if they were available.

      DirectDraw just replaced these libraries, providing very thin wrappers around the hardware facilities and emulated versions when they were not present (e.g. using memcpy() for BitBlt). It wasn't designed as a high-level API, and directly exposed things like the palette modes in the hardware. The problem that old games are starting to experience comes from this fact. Modern GPUs don't support palette modes at all, but a lot of old games used them because they took less VRAM and let you do some animation effects. At the time, all cards supported palettes and a few also supported true colour - designing for a card that didn't support palettes seemed pointless.

      At the DirectDraw layer, all of this stuff is passed straight down to the driver and on slightly older cards they were then passed directly to the hardware. Companies like nVidia don't always bother properly implementing emulation paths in the driver for old software, so the games stop working.

      --
      I am TheRaven on Soylent News
    8. Re:Who says DirectDraw is going away? by drinkypoo · · Score: 1

      You might remember games like SimCity 2000 requiring you to select which graphics card you had. It would use accelerated line drawing and blits if they were available.

      By the time I got Simcity 2000 it was a normal Windows game and it didn't ask you anything of the sort. Further, most of the time they only asked this because they were too incompetent to guess, not because guessing wasn't possible. Indeed, Simcity peaked around 3000, although I do play 4, it is crashy on all platforms. Luckily it works on Wine if you tell it there is only one CPU. You need a pretty fast system to not have this compromise performance, though. Simcity 4 is crap at using multiple cores anyway, and on my Phenom II at 3.2GHz it barely makes any difference in performance to use one core or two.

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    9. Re:Who says DirectDraw is going away? by blackraven14250 · · Score: 1

      By the time I got Simcity 2000 it was a normal Windows game and it didn't ask you anything of the sort.

      That was released 2 years later, and called "SimCity 2000: Special Edition".

    10. Re:Who says DirectDraw is going away? by Sigma+7 · · Score: 1

      Further, most of the time they only asked this because they were too incompetent to guess, not because guessing wasn't possible.

      Simcity 2000 could guess that I was using a Trident SVGA card, but couldn't be sure if I was. If I said that it wasn't, it gave a list of other possible video cards. If you then said it was none of these or that you didn't know, it would default to the VESA SVGA standard even if that standard wasn't supported by your video card.

      Also, detecting video cards was probably as difficult as detecting audio cards, especially during a time where there was no "plug and play" standard that made them easily identifiable.
      The only reason most games detected sound cards was because of the "BLASTER" environment variable, which had to be set manually before the game launched - and it still didn't auto-detect things like General Midi, Roland sound cards, etc.

    11. Re:Who says DirectDraw is going away? by Ksevio · · Score: 1

      One nasty thing is if there's a directdraw game with a 256 color palette (like many games from the late 90's - starcraft and AOE included), then the windows explorer corrupts the color palette making the game horrible to look at. One solution is to kill explorer.exe once in the game, but Microsoft actually noticed this and put an obscure registry key with a handful of games listed for compatibility. There's some strange ID based of the exe and some flags that if you set correctly, fixes the color problems.

      That means they were completely aware this would be a problem, but made only a half-assed effort to fix it, and didn't bother to tell people how to do it themselves.

    12. Re:Who says DirectDraw is going away? by Anonymous Coward · · Score: 0

      You may have found the solution then...

    13. Re:Who says DirectDraw is going away? by Gothmolly · · Score: 1

      You say that like its a bad thing.

      --
      I want to delete my account but Slashdot doesn't allow it.
    14. Re:Who says DirectDraw is going away? by drsmithy · · Score: 1

      DirectX was designed to solve precisely one problem: that game developers wrote games for DOS and didn't regard Windows as a sufficiently capable platform for gaming.

      No, DirectX was designed to solve this problem:

      You might remember games like SimCity 2000 requiring you to select which graphics card you had. It would use accelerated line drawing and blits if they were available.

      People seem to forget that DirectX is a lot more than just an interface to your video card. It was created so game devs didn't have to write specific support for video cards, sound cards, input controllers, etc.

    15. Re:Who says DirectDraw is going away? by Anonymous Coward · · Score: 0

      Every Windows application apart from all of those fine programs using the console subsystem (or other subsystems besides "windows"). I can get work done with a Server Core install, the Platform SDK, Vim and a browser other then MSIE for the documentation (although it's not a pretty setup).

    16. Re:Who says DirectDraw is going away? by Xest · · Score: 1

      As I mentioned in my original post, ensuring backwards/forwards compatibility was one issue DirectX was designed to solve, you've pointed out another. The GP was wrong to assert it was designed to solve just that one problem he mentioned, it wasn't. DirectX was very much designed with the goal of solving quite a few problems at once, 3 of which have been discussed here.

    17. Re:Who says DirectDraw is going away? by Frogg · · Score: 1

      i was a commercial games programmer for both dos and windows during that era - i went to the first few years worth of directx conventions / developer days (when alex st.john was still the microsoft games-dev / dx evangelist, and kate-thingumy-bob was head(?) of the directx dev team - and well before the dx api was called / rebranded as 'directx')

      don't underestimate the gp poster's claim...!

      it was publicly stated (ok, maybe not publicly, but to rooms full of games devs) by microsoft a number of times that directx was designed because games programmers (like us) refused to program any games in windows 95 (using the sucky dib apis) -- microsoft knew that if they couldn't get games onto- and games programmers into- their win95 platform then their new 'multimedia' os wouldn't be able to take over the desktop in the way they intended it too. yes, this is pretty much what they said to us. really.

      back then to play games people would boot to dos (or, heh, just quit windows 95 - cos it just ran on top of dos of course! ;) even if the game did have a native win95 port/version (originally quite rare), and people still did this even though it was possible to run some dos games whilst still running win95 - because performance sucked if you ran stuff in a dos window in win95, and you'd sometimes/often run into problems as a programmer when hitting the hardware direct (for sound/video) when windows was still running.

      microsoft didn't want any of this users-running-dos lark, they were trying to kill dos and push their new whoop-de-doo multimedia 'rewrite' of win3/311, so they needed to address this problem. they said so themselves, repeatedly. i can't provide a citation, but i was there, and heard it myself from a lot of fairly high up microsoft developers/staff, often in (semi)public forums / seminars.

      i'm sure someone will correct me if i'm wrong, but the games-developer api / directx wasn't even part of the initial release of win95, it was a late addition and featured in a later in a release of win95 commonly known as win95 osr2 (which also bundled ie4 - but that's another sorry story)

      sure, i agree that dx (kind of) solved the problem of providing a common api to your hardware (and by enumerating your hardware devices, etc) but none of this was really the driving force behind dx, it was just how they had to implement it given the situation. it's just how any coder would go about it. although the early releases weren't as helpful / useful as they were meant to be.

      fwiw, their common api was pretty shitty up until dx3 or 5 (there was no dx4, it got ditched - i might be wrong, and it's aside to the main topic anyhow, but i think dx4 was due to be the release that included the joint project with sgi, to unite the opengl and directx 3d drivers/apis, although this potentially wonderous event never occurred - shame, because even back then we were rooting for opengl :) -- before the time of dx3/5(~ish) microsoft didn't always even provide software fallback implementations of missing-in-hardware-but-still-fairly-simple-in-software functionality in the dx software api implementation, /despite/ all the docs often implying that things should be otherwise (x/y flip when blitting comes to mind, but there were other things too) -- when they _did_ bother to provide such fallback functionality, it often performed so poorly you were better off using you own implementation straight to the frame buffer anyhow (which you already had laying around from the dos games, so no big deal for the games programmer of that era).

      of course before directx the game-devs already had libraries for supporting all the popular audio and video hardware - they'd either developed them themselves in-house or used an external library to provide that functionality (i forget the names of the ones we used - but if someone reminded me i'd know them). it wasn't really anything new - and because of the spotty dx fallback support we couldn't throw a big chunk of that code away

  7. The Kilrathi Saga by black3d · · Score: 2, Informative

    As its difficult to get through the Slashdotting (I can't reach the site), this would be "The Kilrathi Saga" versions of the games - almost as valuable as a WoW Vanilla Collector's Edition to WC fans - which were "upgraded" versions of the original DOS Watcom C games for Windows 95. I say "upgraded" because I was once speaking to one of the original programmers who were working on the Kilrathi Saga edition and said that they couldn't even convert WC1. He called the original source a "Goat-fuck-hack" demo which Roberts put together to get a job at Origin, so they instead tinkered with a DirectDraw-wrapped WC2 engine.

    The original DOS versions of the games, alternatively, work fine through DosBox.

    --
    "The true measure of a person is how they act when they know they won't get caught." - DSRilk
    1. Re:The Kilrathi Saga by sapphire+wyvern · · Score: 1

      this would be "The Kilrathi Saga" versions of the games - almost as valuable as a WoW Vanilla Collector's Edition to WC fans

      Sorry, does that mean they're highly in demand, or completely worthless? The data point you offer in comparison doesn't really mean anything to me.

    2. Re:The Kilrathi Saga by drsmithy · · Score: 1

      Sorry, does that mean they're highly in demand, or completely worthless? The data point you offer in comparison doesn't really mean anything to me.

      I can't speak for the WoW edition named, but a boxed copy of the Kilrathi Saga is worth quite a lot - far more than I can imagine anything WoW-related could be, given it's only a few years old.

    3. Re:The Kilrathi Saga by Anonymous Coward · · Score: 0

      I say "upgraded" because I was once speaking to one of the original programmers who were working on the Kilrathi Saga edition and said that they couldn't even convert WC1. He called the original source a "Goat-fuck-hack" demo which Roberts put together to get a job at Origin, so they instead tinkered with a DirectDraw-wrapped WC2 engine.

      This reminds me of blog post by one of the developers about the game's friendly exit message, "Thank you for playing Wing Commander". That was actually a hacked string from the game's memory manager which would consistently crash every time the game ended.

  8. heads up for combat soldiers' family and friends: by ChipMonk · · Score: 1, Offtopic

    In 1998, I bought a second-hand Wing Commander IV: The Price of Freedom for US$10. The gameplay and graphics quality were fantastic, and I was particularly impressed with the producers' investment in the game.

    But there was one thing I couldn't get past: the warzone aspect. At the time, a dear friend of mine was in the Bosnia combat zone, and every time I tried to play WC4, I couldn't help but think about her and what she was experiencing. I wanted to enjoy WC4, honestly, but after about 5 minutes I just couldn't, knowing that my friend was in mortal danger for real. It got to the point that I ejected the CD, wrote off the $10 as a bad investment, and flung it across the room.

  9. Re:BREAKING NEWS: GOD IS AN ATHIEST !! by Anonymous Coward · · Score: 0

    THINK about your BREATHING!

  10. I wonder about this by Sycraft-fu · · Score: 3, Informative

    The server has 'asploded so I can't read the article (note to people: don't submit your shit to /. if your server isn't ready for it) but I'm questioning the summary. Windows 7 does have DirectDraw. ddraw.dll is present in the Windows directory.

    As far as I know, compatibility is maintained for ALL versions of DirectX back to the beginning. Things stop being supported, but that just means they aren't included with the new APIs. So you can't use DirectDraw from DirectX 11 APIs, but if you have an old DirectX 6 game, it'll still work fine.

    As a practical matter the original Fallout runs, and it wants DirectX 3 to do its thing.

    I'm not claiming that the author didn't have to do something to make these games work, but I think he may be confused about the situation.

    I also wonder on his methods. Why would you use OpenGL to reimplement DirectDraw on Windows 7? DDraw's replacement is Direct2D, which is a native Windows API. OpenGL works fine on Windows, but only in the event that the company who makes the graphics card chooses to write an ICD for it. Direct2D is automatic for anything with WDDM 1.1 drivers.

    1. Re:I wonder about this by Anonymous Coward · · Score: 3, Informative

      Windows 7 does NOT support full backwards compatibility for older versions of directX. You can, however, install directX 9 (which then sits alongside directx11) and that fixes up many games. (Finding the correct install package that doesn't just say "Oh, you've got 11, I'll stop" is a chore, though.

      This situation isn't going to improve. Running through a virtual machine does work fairly well though.

    2. Re:I wonder about this by KiwiSurfer · · Score: 1

      Mod parent up. Installing DX9 is required to make Civilization 4 (and several other games) work on Windows 7. This is apparently due to missing DLLs which are not included with DX11 but are included with DX9. The whole concept of backward compatibility is a joke with DX.

    3. Re:I wonder about this by Suiggy · · Score: 1

      Wrong, the DLLs for the older versions of DirectX are still there on Windows 7, and the headers and libraries are still available in in the Windows SDK. The problem is that graphics card vendors don't test that their drivers work with the older versions of DirectDraw and Direct3D anymore because they just don't care. So you never know if you'll get support or not.

    4. Re:I wonder about this by Anonymous Coward · · Score: 0

      note to people: don't submit your shit to /. if your server isn't ready for it

      The majority of the time some dude found someone else's blog posting and submitted it to Slashdot, and the site owner has no control over that.

    5. Re:I wonder about this by kramulous · · Score: 1

      I can't answer your questions, nor can I read the article yet, but I can say that on Linux I'm doing a very similar thing.

      I'm programming (when I find the time) for a 9600x4800 pixel display and found that 3D graphics on that sort of size is absolute shite using current methods. I am using OpenGL to get the drawing contexts and find that using a glDrawPixel to get around a 100fps. But that is all it is good for. I am reimplementing the 3D point, line drawing myself on the cpu (my interactive datasets are > 10TB).

      I paint the canvas and copy across. Just like the grey beards used to do. My bottlenecks are network supply (10Gbps to five clients with dual network ports and jumbo frames not sufficient).

      --
      .
    6. Re:I wonder about this by Rogerborg · · Score: 4, Interesting

      Funny you should mention DX3. Microsoft actually removed some surface caps flags in the transition from DX3 to DX5, and silently flipped the orientation that .BMP files were loaded (i.e. loaded them 'right way up' rather than 'upside down' as they're stored in the file). I know that was like three ice ages ago in Dev Years, but it still hurts when I think about it.

      I realise that TheFineSummary talks about Windows 7, but there's still a fair number of XP boxen out there, for which Direct2D isn't an option. That said, I'd guess (as the article is down) that it's more of an ideological position, or - given that it's clearly a hobby project - just what the author is familiar with, or enjoys using. Given that we're talking about playing games here, I'd go with the latter explanation.

      I do intend to RTFA when it recovers, since I find replacing/subverting dlls quite fun. I kludged up some code a while back to create a shim dll that can be used as the basis for selectively replacing functions in dlls, while calling through to the 'real' one for the other functions, so you can easily hack some functionality without having to re-implement the whole thing.

      --
      If you were blocking sigs, you wouldn't have to read this.
    7. Re:I wonder about this by Tomun · · Score: 1

      Coral cache link to article http://sol.gfxile.net.nyud.net/ddhack/

    8. Re:I wonder about this by Anonymous Coward · · Score: 1, Interesting

      Two years ago I went through this process on Windows Vista, and I realized later you didn't need to install DX9. The root problem was that the default DX10 installation on Windows Vista was missing older DX components, including DirectDraw. DirectDraw could be installed by manually reinstalling the DX10 runtime. Is it the same on Windows 7?

    9. Re:I wonder about this by TheThiefMaster · · Score: 5, Informative

      Not 100% accurate. Windows 7 includes direct-x 9 itself (there's not much to it), but not all the different d3dX9_??.dll extension files. Those are what you have to install.

      The DX web setup will bring you up to date with all direct-x 9 onwards extension files, regardless of whether you're running XP or 7, x86 or x64, Home or Ultimate (just look at the comprehensive supported OSs list!).

      Any older versions of DX are supported, you shouldn't need to install anything for them.

    10. Re:I wonder about this by Achromatic1978 · · Score: 2, Insightful

      My bottlenecks are network supply (10Gbps to five clients with dual network ports and jumbo frames not sufficient).

      Well, yes, I'm not entirely surprised your system has trouble pushing tens of gigabits of data whilst reading from a ten TB dataset and live-rendering 3D on a bank of 3 x 3 3200x1600 screens. All this on a side project "when you find the time", too, impressive. To the best of my calculations you'd have what, 7 PCI-E slots?

    11. Re:I wonder about this by kramulous · · Score: 2, Interesting

      5 slaves, each rendering 1920x4800. Each machine is a single E5530; 2xFX1800; 4GB memory. Luckily, I have a totally excellent colleague who helps me with the networking/file server config (when he can find the time).

      We find it much better to compress the data prior to network transmission and perform a parallel decompress on arrival to the clients. Not exactly rocket science.

      Thanks man.

      --
      .
    12. Re:I wonder about this by Anonymous Coward · · Score: 0

      XP boxes have the option of installing old video drivers if the current vendor drivers have issues with DirectDraw support, which they shouldn't (but did anyway). So using Direct2D is a non-issue as everyone using this tool will be on Vista or 7, not XP. You'd be insane to use this hack when you can reliably roll back to proven drivers -- just thinking about the performance issues & graphical bugs it can cause makes me want to stay away.

    13. Re:I wonder about this by xded · · Score: 3, Interesting

      I kludged up some code a while back to create a shim dll that can be used as the basis for selectively replacing functions in dlls...

      A slightly more sophisticated solution would've been Detours.

      Or, if you didn't feel like coding, WinAPIOverride32.

    14. Re:I wonder about this by phaseri · · Score: 1

      The server had apache default 15 second keepalive turned on. Switching it to 0 pretty much solved the problem...

    15. Re:I wonder about this by Rogerborg · · Score: 1

      Thanks, those are good tools. I present my kludge merely as a novelty, to illustrate how trivial it is to produce a shim dll.

      --
      If you were blocking sigs, you wouldn't have to read this.
  11. Re:heads up for combat soldiers' family and friend by Anonymous Coward · · Score: 2, Funny

    Man that is pretty bad! I say we put Origin out of business for making such a hurtful game!

  12. Re:heads up for combat soldiers' family and friend by Anonymous Coward · · Score: 3, Informative

    Except the Bosnia war ended in 1995. so your friend could not be in combat zone.
    (I know. I was there. I still am.)

  13. Ya well by Sycraft-fu · · Score: 2, Informative

    Looks like this is some little personal site, perhaps run on a server in a broom closet (I run such a closet server at my house). I have no idea why the author thought it would be a good idea to submit that to Slashdot.

    Were there ever anything I wanted to submit, I wouldn't stick on my closet server, I'd stick it on my Pair server and link to it there. Slashdot people are very, very clickly. Anyone who submits to here ought to know that.

    1. Re:Ya well by Anonymous Coward · · Score: 2, Informative

      FYI: The hostname sol.gfxile.net resolves to 79.98.31.24, which belongs to a Lithuanian hosting company. Technically that doesn't rule out that the server is in a broom closet and talks to the internet via a home DSL line, but it's kinda unlikely.

      99% of all Slashdottings are due to overly complex or badly configured content management systems. I.e., the bottleneck is not the uplink but the server. A static web site (which is delivered statically, not through a CMS) with moderately sized files (1-2MB per page) is almost impossible to overload by accident, even in a shared hosting scenario.

    2. Re:Ya well by Anonymous Coward · · Score: 1, Informative

      or you could submit the link to a caching service instead directly the one of your closet server

    3. Re:Ya well by Sycraft-fu · · Score: 1

      Lithaunia doesn't have the kind of bandwidth everyone seems to assume it does. I know they show up high on the Speedtest rankings but this is because they have very few ISPs and all those ISPs run Speedtest servers. More or less they create a big WAN like you get on a university campus. They sell high bandwidth lines to customers but there's no bandwidth backing it up at the higher levels. So you get great speed tests, but not so great transfers to the world. I've tested their speed test sites from US locations with high bandwidth (like a company that runs a speed test server) and gotten 1-3mbit as the results.

      So while I don't disagree about the CMS possibility, it also could just be a hosting company with shit bandwidth.

    4. Re:Ya well by Nimey · · Score: 1

      And yet, nobody ever seems to RTFA. How's that work?

      --
      Hail Eris, full of mischief...

      E pluribus sanguinem
    5. Re:Ya well by Narishma · · Score: 1

      Easy, the people who RTFA don't comment because their questions are likely answered in the article.

      --
      Mada mada dane.
    6. Re:Ya well by phaseri · · Score: 1

      The server is in a hosting company that has bandwidth more than enough. Problem was with apache configuration..

    7. Re:Ya well by Anonymous Coward · · Score: 0

      FWIW, I use one of those ISPs, pay nearly 30$/mo for a 100 Mbit/s line, and get 20-70 Mb/s to foreign Speedtest servers like London, Paris or Madrid.

      (Somewhat fittingly, the captcha is "thefts".)

  14. Re:heads up for combat soldiers' family and friend by Anonymous Coward · · Score: 1, Insightful

    You must be a real hoot at parties.

  15. Fuckin A man by gagol · · Score: 1

    Seriously, thanks for the good work!

    --
    Tomorrow is another day...
  16. Coral Cache link by Rufus211 · · Score: 1, Informative

    The server's crashing, but coral cache managed to get the text:

    http://sol.gfxile.net.nyud.net/ddhack/

  17. C&C and Red Alert by Anonymous Coward · · Score: 0

    I've been trying to get Command & Conquer and Red Alert 1 working on Windows XP and upwards for quite a while now.

    Here's hoping this will work for these two DX6 games!

    1. Re:C&C and Red Alert by ledow · · Score: 1

      Run them in Windows 95 mode as the documentation suggests? I've not had a problem getting them to run at all on XP. If in doubt, download the free ISO's of Red Alert from http://www.commandandconquer.com/classic/ and follow their instructions (you might have to patch with a file that's on the ISO, I can't remember).

  18. Blood by spamdog · · Score: 1

    I sure do hope it runs Monolith's Blood! I tried it in VMWare recently and it ran like a hog - and not in VESA modes.

    1. Re:Blood by aiht · · Score: 1

      Are you talking about Blood 1? 'Cause that was a DOS game.
      I've had some success running that in DosBox, but I needed the [cpu] core=dynamic and [dosbox] machine=svga_s3 settings to get anything approaching a decent framerate.
      Apparently both are the default now, but they weren't when my dosbox.conf was first written.

    2. Re:Blood by Hodapp · · Score: 1

      It might be possible to run Blood in a source port of the BUILD engine. I know that Duke Nukem 3D can be run this way (and indeed my friend ran the icculus.org version on his Powerbook this way), but I don't know how well it works for the other BUILD-based games like Duke3D and Shadow Warrior.

  19. Re:BREAKING NEWS: GOD IS AN ATHIEST !! by Anonymous Coward · · Score: 0

    No, I am agnostic.

    Yours,
    God

  20. Re:heads up for combat soldiers' family and friend by Anonymous Coward · · Score: 0

    Perhaps he meant it in a "had been" way instead of a "was" sort of way. War's impact on someone you know doesn't become less real with time; if anything, anyone who has been through the process of helping a friend through the re-tellings, the emotional fallout, and the post-traumatic stress of it all can relate to the fact that, for many, the apparent impact of the war seems to only grow with time.

  21. Text, I think by Anonymous Coward · · Score: 5, Informative

    In the Beginning

    It all started about a month ago, when one friend of mine had decided to follow his dreams and was moving to the states, and he had to get rid of a lot of stuff. Among his discard pile was a bunch of Wing Commander games, which I bought off him, figuring they might be interesting research material, as I'm planning on a game with similar game play structure (as in story combined with game play, not a 3d space shooter).

    So, I found myself in the possession of Wing Commanders 1, 2, 3 and 4, all Windows versions - the Kilrathi Saga and WC4CD to be specific. I installed the first and tried it out. My Win7 switched to 256 colors at a 640x480 resolution, but the game ran.. with completely wrong palette.

    Bugged by this I played with the compatibility options, and got the game to almost work well, with the palette going wrong at some points.. so the game was sort of playable, but I hated the fact that Windows changed to 256 colors and I couldn't see my mailbox properly in the other screen, etc.

    I also tried WC2 and WC3, and they had similar - or worse - problems. I even learned the steps to get WC3 to work properly:

    1. Find the WC3W.EXE executable, turn on (basically) all the compatibility options.
    2. Start task manager.
    3. Find and kill all instances of explorer.exe. Your desktop will disappear, along with the task bar.
    4. Using task manager, launch WC3W.EXE

    Naturally the screen resolution and color mode will be 640x480 and 256 colors, but if you've bent backwards that much, you probably don't care all that much.

    Seeing that the games use DirectDraw, I decided to roll my own.

    Doing the Homework

    The first step is always to look for prior art. Maybe someone had written a new ddraw.dll already, and I could just use it. As it happens, lots of people have, but nothing that's useful for me. Most of the ddraw.dll hacks are actually wrappers - that get between the game and the real ddraw.dll, change something subtle, but let the real ddraw.dll do the heavy lifting.

    The point of these hacks is to fix small problems, like games that ignore surface pitch, require cleared surfaces or some such. In one case I found a forum thread claiming that deleting ddraw.dll from the game's directory fixes something, so in this case it's a hack gone wrong.

    After further searching I found a project which actually released sources, with a liberal license even. It was a wrapper project (meaning, again, that they just call the real ddraw.dll), only supported DirectDraw7 and only very small parts of it, but it showed me how to get going.

    I also dug up old DirectX SDK:s from my personal CD stack, as Microsoft has helpfully nuked all old DirectDraw documentation off the online MSDN. Thanks, dudes.

    Wing Commander 1

    Wing Commander 1 for Windows uses DirectDraw2. There's no real reason it couldn't just use DirectDraw1, considering that all it does is locking the front buffer and dumping a frame to it, along with some palette manipulation.

    Or well, that's not the whole truth. If the game can set a 320x200 mode, it does what I described above. If this fails, it tries to set up 640x400, and after that fails, 640x480. In the two higher resolution modes, the game allocates a software 320x200 buffer, and uses blt() to scale it up 2x, meaning that in 640x480 mode, black bars are introduced to the top and the bottom, and the aspect ratio is wrong.

    When playing WC1 it astonishes me just how much love has gone into the it when compared to later games. The later ones may be better in some ways, but the polish that can be experienced in WC1 is gone.

    Anyway, I started by writing a wrapper that just dumps out log about what calls are made with what parameters, and then went on to implement a hack dll that only implements those calls.

    The hack dll resizes the application's window to desktop resolution, sets up an OpenGL context, uploads

    1. Re:Text, I think by Anonymous Coward · · Score: 0

      Killing explorer is also a requirement to playing broodwar on win7.

    2. Re:Text, I think by Roman+Coder · · Score: 1

      Works for other older games too.

      --
      "The future can only affect the present if there is room to write its influence off as a mistake." - Yakir Aharonov
  22. Re:heads up for combat soldiers' family and friend by linguizic · · Score: 5, Funny

    I try to enjoy parties, but every time I can't help but feel bad for all those poor Indians who died in 1812 during the Boston Tea Party.

    --
    Does this sig remind you of Agatha Christie?
  23. This is great! by daid303 · · Score: 1

    While people can say that the old ddraw works fine in Win7, that's all nice and everything. But sometimes we want more then just the old school graphics and gameplay. In this case we can hack the ddraw layer to add extra features like a higher resolution, AA or HQ2x or something like that.

    I tried to do this with Direct3D7 for TheTypingOfTheDead, to run it at higher resolutions, but I failed. Maybe if I use this code as base I have a better shot at it.

  24. Funny that (eggy post follows) by Anonymous Coward · · Score: 2, Interesting

    Minecraft is the most fun I've had in a computer game for years, and practically everyone I have shown it to has downloaded it and become obsessed - yet the graphics are kind of shit - but even then, it requires a reasonably modern computer to run quickly (drawing millions of cubes is quite time consuming, I guess - does anyone know how he draws everything so efficiently? Does MC only render blocks that are unoccluded? If so, how does it figure that out? I'm really intrigued by the tech behind MC). I wonder if the game would be more fun if it had better graphics? I kinda think it would.

    1. Re:Funny that (eggy post follows) by Anonymous Coward · · Score: 0

      With raytracing, you could have millions of perfect spheres instead of cubes!

    2. Re:Funny that (eggy post follows) by Jarik+C-Bol · · Score: 1

      backside culling. (anything the camera cant see at that moment, does not get drawn) a very basic principle in rendering complex objects (or lots of objects) quickly.

      --
      I've decided to Diversify my Holdings. I've divided my cash between my left and right pockets, instead of all in one.
    3. Re:Funny that (eggy post follows) by KDR_11k · · Score: 1

      You probably want to store which faces are "inside" the terrain so you don't have to re-check that every frame, I think the AC was asking about that. What the GPU gets isn't millions of cubes, it's the subset that's on the outside of the terrain and maybe even a simplified form of the flat surfaces there.

      --
      Justice is the sheep getting arrested while an impartial judge declares the vote void.
    4. Re:Funny that (eggy post follows) by Frogg · · Score: 2, Interesting

      i'm not familiar with the ac's mentioned game, minecraft - but to expand on what you say, yes, for starters back-face culling is really cheap/quick for testing whether to send polys to the render pipeline - it's done after the final transform, and involves no additional maths beyond a compare of polygon vertex index numbers (ie, you use clockwise indexed polys for front-facing, if when you come to render a poly, vert[0] has an index number higher than vert[1], you skip sending the poly to the render pipe)

      like i say, i don't know minecraft, but if it's cube-based then you'll be can culling quads instead of tris which saves half the work again. you can probably take that a step further if they're always cubes, because you know that only 3 faces of a cube can be visible at any time.

      furthermore, if the game is based around a 2d or 3d matrix/grid of cubes, then it is only a small amount of maths to project the view frustrum over that space, because you're not really dealing with polygon-soup per se, as with more graphically complex games, you're merely dealing with a low-res coarse array of cells (which will eventually be rendered as your simple cube meshes) -- and if the cubes are 'fixed' in orientation to the grid then you can skip the transform for the model rotation, because it's simply not needed if all the cubes are guaranteed to be at angle (0,0,0) in relation to the world.

      also, if you're dealing with a strictly grid-based scene, with regular / fixed size cube models, then model/scenery occlusion is also a bit easier to deal with - because it's a regular grid of cubes you can make assumptions about visibility and take shortcuts that you can't do so simply when dealing with a scene that has arbitrary mesh shapes/sizes. (although i'm not sure whether occlusion of this kind is where the biggest work savings would be made in the pipeline? it might be feasible to just skip object occlusion after you've made the above performance tricks, depending on various factors - polys are often cheap to render (with a gpu), whereas the occlusion calculations might take extra time for no real gain - it depends where the bottleneck is in the pipeline after the above optimisations)

      strictly speaking, if it's a big 3d array of cubes it's basically a big voxel-based system, so all of those techniques are applicable - although, traditionally, voxel-based renderers use fuzzy-pixel-blobs (or apply a smoothing filter or somesuch, either at render time or to the resultant mesh before render time, depending on the effect required), whereas it sounds like minecraft could be treating the world as a more crisply rendered voxel mesh of cubes.

      like i say, i've not seen minecraft (and perhaps i should really have a quick google ^^) so i don't know if it's using voxels or polys and points, or something in between / a combination of both (perhaps a world-grid handled as a giant voxel, with the other meshes then thrown into the resultant scene)... and/but maybe i couldn't tell by looking anyhow :) -- but... if i were going to implement something like the ac describes / hints at: that's how i'd go about it! :)

      back in the day a lot of the great games on under-powered hardware (2d or 3d) relied on tricks like this (and/or other tricks depending on the game-engine style) to get that more-going-on-than-there-really-is kind of illusion - it still goes on now with newer games-engine tech, but it was much easier to understand when things were that simple. awesome stuff! :)

  25. Re:BREAKING NEWS: GOD IS AN ATHIEST !! by Anonymous Coward · · Score: 0

    Yes, God don't believe in a higher being!

  26. Magic Carpet I & II by w0mprat · · Score: 1

    Were damn fine games I'd love to play again.

    --
    After logging in slashdot still does not take you back to the page you were on. It's been that way for 20 years.
    1. Re:Magic Carpet I & II by PhilHibbs · · Score: 1

      MC1 runs fine under DosBox, I think I needed to install a Glide wrapper. I found all I needed through google, was really easy.

    2. Re:Magic Carpet I & II by Anonymous Coward · · Score: 0

      MC didn't have any 3d accelleration at all IIRC. It did support 320x200 and 640x480 though, which you could change between mid game.

  27. Re:heads up for combat soldiers' family and friend by Anonymous Coward · · Score: 0

    At the time,

  28. Re:heads up for combat soldiers' family and friend by couchslug · · Score: 2, Interesting

    Heads up for combat soldiers family and friends, get a grip. Stress is one thing, wigging out is another and helps no one.

    Plenty of combat soldiers/Marines/airmen game in-theater! Deployments have loooooong, boring stretches and gaming is a popular distraction.

    --
    "This post is an artistic work of fiction and falsehood. Only a fool would take anything posted here as fact."
  29. Re:BREAKING NEWS: GOD IS AN ATHIEST !! by Anonymous Coward · · Score: 0

    Why was I not consulted ? DEATH TO INFIDELS ! Except babies. No, babies too.

    M.

  30. Ya no kidding by Sycraft-fu · · Score: 3, Informative

    Virtualization has gotten really good these days, for those that don't keep up with it. You can virtualize modern OSes at near native speed. Running servers in VMs is getting real common. At work we have a few servers that we keep as physical boxes, like our SQL server, but the majority of our servers are virtual. Not only can that save on hardware costs (we have like 30 virtual servers on 4 physical servers) but it provides some amazing flexibility.

    Now when talking older OSes, it isn't as speedy. Not all of the modern tricks work as well, and there's often not client drivers to accelerate things... However there doesn't need to be. Consider that when Windows 95 was about a Pentium was as good as things got. Well when you are dealing with something that slow, you can incur a hell of a lot of overhead in your virtualization and still maintain good speed.

    As another posted mentioned, DOSBox is a good example. So are various console emulators.

    I AM a fan of old games, and have played around with this. For DOS games, DOSBox works great. For probably 99.9% of Windows games, they run natively on Windows 7 64-bit. The rest seem to run fine on Windows XP 32-bit which works real well in VMWare, Virtual Box, and even MS's own VM is you have professional or ultimate. I've not yet come across a game for which I'd need to get 95 or 98 and virtualize those. I have done it at work though, and 98 does function just fine.

    As you said, doesn't have to be optimal.

    1. Re:Ya no kidding by Hamsterdan · · Score: 1

      ST: Armada is one that won't run properly in XP.

      1- you have to disable Sound acceleration (otherwise it's all skippy)
      2- Mouse acceleration is somewhat broken (really really slow mouse)
      3- It *WILL* crash to the desktop.

      --
      I've got better things to do tonight than die.
    2. Re:Ya no kidding by NJRoadfan · · Score: 1

      There are quite a few games from the 1996-98 (some as late as 2000) period that simply don't work on modern versions of Windows. Quite a few of them are DirectDraw (many are software rendered 3D) or early Direct3D games developed for DirectX 3 or 5 runtimes. Heck, even old 3DFX GLide games don't run right anymore... even with GLide wrappers.

      Ironically, 32 bit Windows versions have remained more compatible with 16 bit Windows games (due to Win16 API and WoW subsystem development freezing) then native Win32. Anyone here remember the WinG subsystem on Windows 3.1x? It later evolved into DirectDraw.

    3. Re:Ya no kidding by wildstoo · · Score: 1

      I usually find after a little forum digging that someone, somewhere has found a way to get them working... whether that's natively with compatibility options, or with some kind of wrapper or even in an emulator or VM, it's almost always been done.

      There are some really good Glide wrappers out there now, and even ones that work with DOSBox (kinda). I've been on a retro game kick recently and there hasn't been a game yet that I haven't been able to run somehow.

      Having said that, I'm sure there are games that were so poorly coded back when they were released that getting them to run today would be a major headache.

    4. Re:Ya no kidding by Beelzebud · · Score: 1

      If you ignore 3d acceleration completely, then I agree... Add 3d acceleration into the mix, and you're wrong about VM's being good for gaming.

      You described the amazing thing VM's bring to the table. 30 servers running on 4 machines. That's awesome. It's also got nothing to do with running games. If a VM can't do 3d acceleration, it's useless for a gamer.

    5. Re:Ya no kidding by tepples · · Score: 1

      or with some kind of wrapper or even in an emulator or VM

      But then you would need to purchase and install a copy of the old operating system that the old game expects.

    6. Re:Ya no kidding by cheesybagel · · Score: 1

      Virtualization speed has got good enough I do not dual boot anymore. Unfortunately 3D support inside the virtual machine sucks. I cannot even run glxgears inside VirtualBox without getting warnings. If 3D was good, I would boot into Linux, running Windows inside a VM. Because 3D sucks I boot into Windows, run Linux inside a VM. The interesting thing is I use Windows as a game console. I do all my work inside the Linux VM...

    7. Re:Ya no kidding by NJRoadfan · · Score: 1

      I actually own legit copies of Windows 98 and 98SE from being a beta tester.

  31. Re:heads up for combat soldiers' family and friend by Anonymous Coward · · Score: 1, Insightful

    He said "At the time", and since he bought it in 1998 - at the time means that his friend was in war in 1998 ... so your explanation is very improbable ...
    It doesn't matter. Reason of my posting is to correct the prejudice about my country. In 1998 there were no combat zones in Bosnia and his friend could not be in danger in any way that could be presented in a game about war.

  32. Re:heads up for combat soldiers' family and friend by Anonymous Coward · · Score: 1, Informative

    Having been clipped in the calf muscle by an RPG while serving with IFOR in Sarajevo in 2002, I can personally tell you that even though the war ended, it was most certainly still a combat zone for many years.

  33. Re: Characters by TaoPhoenix · · Score: 1

    Keypunch Software, is that you? (Commodore)

    --
    My first Journal Entry ever, in 8 years! http://slashdot.org/journal/365947/aphelion-scifi-fantasy-horror-poetry-webzine
  34. Direct2D is useless for this by Anonymous Coward · · Score: 1, Insightful

    Maybe you should take a look at what Direct2D and DirectDraw does before making some silly assumption that Direct2D is more suitable for simulating DirectDraw behavior.

    Direct2D effectively acts as a hardware acclerated scanline renderer, so it is more comparable to GDI than DirectDraw. DirectDraw surfaces are actually much closer in design to Direct3D and OpenGL textures. So your real question should be why he didn't chose Direct3D instead. My guess is that he liked OpenGL's API better and this is about fun after all - nobody was paying him.

  35. Re:heads up for combat soldiers' family and friend by tehcyder · · Score: 2, Insightful

    Did you not know that it was a space combat game?

    --
    To have a right to do a thing is not at all the same as to be right in doing it
  36. umm emulation by luther349 · · Score: 1

    all the wing commander games where available from the snes to ps1. you could have played them on your favorite emulator and not had to do all the hacks to make them work on a windows 7 box.

    1. Re:umm emulation by Hatta · · Score: 1

      Why would you want to emulate a console port when you could play the real thing?

      --
      Give me Classic Slashdot or give me death!
    2. Re:umm emulation by Narishma · · Score: 1

      Except when you only have the Windows version of the games like the author.

      --
      Mada mada dane.
  37. Oh stop by Sycraft-fu · · Score: 5, Insightful

    The "Back in the day things were so much better," stuff gets annoying no matter what it is about and games are no exception. Were there good games back in the day? Sure were. Guess what? There were also bad ones, you just don't remember them as well. This is in part because our memory tends to deliberately filter out bad experience, but mainly because good games you played a ton, bad games got set aside.

    Know what else? There are good games now. The modern graphics and so on have not stopped people form being able to make good games.

    Also I don't like this elitist "purist" thing that people pretend to of "Oh I don't even like the graphics, I just want good gameplay." Guess what? The graphics and sound can well be a part of that. When games are visually appealing it can add to the immersivness. It is easier to lose yourself in a convincing world.

    So stop getting all "Get off my lawn," about games. There are great old games and you can still enjoy them with the help of emulators. However don't hate on new games just because they look better. That is not a bad thing, it is a good thing.

    1. Re:Oh stop by cbiltcliffe · · Score: 3, Interesting

      Also I don't like this elitist "purist" thing that people pretend to of "Oh I don't even like the graphics, I just want good gameplay." Guess what? The graphics and sound can well be a part of that. When games are visually appealing it can add to the immersivness. It is easier to lose yourself in a convincing world.

      I agree with this completely. I've recently been playing a fair amount of STALKER -Shadow of Chernobyl, and -Clear Sky lately.

      The realism of the gameplay is partly due to realism in graphics and sound. Although at the same time, the world you are in is so open, and you are free to explore as you want/need to.
      You are, after all, in a real place that actually exists. If you've seen pictures of the area around Chernobyl since the accident, then you'll recognize a lot of places as you play through the game. You'll be walking around, stop to chat to someone, hear a dog bark in the distance, a crack of thunder and it will start raining...then a radioactive mutant will be trying to rip your head off.

      Many FPS games guide - or force - you to the next objective, so you don't have the opportunity to look around, find interesting places, and interact with many different characters in the game world.
      This game is completely different. You can spend days walking, exploring, collecting goodies, not do a single mission, and it doesn't leave you thinking "I've not progressed any in this game."

      I guess what I'm getting at is, good graphics and sound can certainly enhance a good game. But at the same time, no matter how good the graphics are, a crappy game is still going to be crappy.

      --
      "City hall" in German is "Rathaus" Kinda explains a few things......
    2. Re:Oh stop by Anonymous Coward · · Score: 0

      However, just because you added some flashy graphics doesn't make the tired old scenarios and gameplay any better.

      The difference is that most of today's stuff looks the same. Sure, it's pretty to look at, but boring. Developers don't spend the effort doing something different because now everything is just big business and no one wants to take the jump to try something new. When games were first developed, not only were the programmers of greater skill (because it wasn't a bunch of plug-this-into-that libraries), but the world was wide open.

      I will give you a food analogy: Nowadays it's like you can have whatever you want -- so long as you want a hamburger. So we get Wendy's and McDonald's and Burger King, but no one does a Pizza Hut or heaven forbid a Taco Bell.

      I'm waiting for this gaming monotony to end.

      And yes, I'm anon because of the rabid gamers I'm sure to piss off -- most of which are too young to be my children. So GTFO my lawn.

    3. Re:Oh stop by RyuuzakiTetsuya · · Score: 1

      I completely agree.

      Everyone should have.1998ish spec machine around to remind themselves about Daikatana so we don't forget history.

      --
      Non impediti ratione cogitationus.
    4. Re:Oh stop by Antisyzygy · · Score: 1

      There are people that don't care as much about graphics. I am one of them. That doesn't mean I don't like better graphics, it just means its not as important. For example, I play alot of Mount and Blade : Warband online simply because it has awesome gameplay. Its a dated game graphically.

      --
      That brings me to an interesting point, / . is just "the ramblings of socially-inept, technology-literate news-mongers".
    5. Re:Oh stop by Abstrackt · · Score: 1

      Overrated? Someone who disagrees with you must have mod points. ;)

      I had a similar discussion about music. It came down to the theory that the majority of a generation always seems to hate the games/music/media of the generation after for the reasons you described. There are always going to be abuses of advances in technology, sometimes to the point of obscenity, but it will eventually level off. In the worst case, we still have damn addicting flash games.

      --
      They say a little knowledge is a dangerous thing, but it's not one half so bad as a lot of ignorance. - Terry Pratchett
    6. Re:Oh stop by saboola · · Score: 1

      I remember, as a lad, really enjoying the Legend of Zelda cartoon from the 80s. Do yourself a favor, and do not watch it again. I unfortunately no longer have that 80s memory to cling to.

    7. Re:Oh stop by KDR_11k · · Score: 1

      I'd list ArmA2 as one of the games that needs its graphics, without all the foliage it would be much easier to see people and making sure you aren't seen too easily is a big part of the game.

      --
      Justice is the sheep getting arrested while an impartial judge declares the vote void.
    8. Re:Oh stop by HaZardman27 · · Score: 1

      Your statement would be interesting if it were true. Most people and most companies do relatively the same thing. This has been true in every industry since such industries began. Revolutionary products are always going to be few and far between, otherwise they wouldn't be revolutionary.

      --
      Apparently wizard is not a legitimate career path, so I chose programmer instead.
    9. Re:Oh stop by Altrag · · Score: 1

      Well, not having any data to back this up, I'll say with full /. rigor that there are likely some reasons why the video game industry in particular probably DOES have a slightly higher than average "back in the day" factor:

      1- There's a lot of games nowadays that are released purely on their prettiness factor, with no regard to story line. Its like comparing hardcore porn to a NC-17 movie. Sure the porn has more skin and sex, but once you're done with your wank you may as well turn it off.. the movie will have other layers of interest to keep you watching. Of course there are also bad NC-17 movies, but its a pretty rare gem to find a porn with an involving storyline.

      2- Video games are a "big market" now. Meaning there's a lot more people willing to risk their time and money in an attempt to get a piece of that market.

      3- Perhaps a smaller factor, but internet distribution means that there's also a lot more on the other end of the scale -- people who don't have much financial backing releasing loads of indy games that simply wouldn't have been able to find players in the pre-internet days due to lack of shelf space and marketing power to take some shelf space away from the big names.

      Yes, there are good games released today.. probably (on average) as many as there were "back in the day". But I believe the S/N ratio gets skewed not by the number of good games going down, but by the number of available bad games increasing greatly.

      I'm also going to suggest that this phenomena has pretty much leveled out by now since its unlikely we're going to see another distribution revolution on the scale of the internet, and 3D graphics is up to a point where improvements are incremental rather than fundamental. The only near-term revolution I can see happening is if stereo displays in the home take off, but even that is a rather minor improvement compared to the shift from 2D to 3D or even the shift from software 3D to hardware 3D.

      Of course as I noted at the top, I don't have any real data to back this up, so there may well be a factor or two that I'm unaware of when it comes to predicting the future and (lack of) fundamental changes.. but even so, it would only shift my argument by a few years but not really invalidate it.

    10. Re:Oh stop by Anonymous Coward · · Score: 0

      You are, after all, in a real place that actually exists... you'll recognize a lot of places... stop to chat to someone, hear a dog bark in the distance... then a radioactive mutant will be trying to rip your head off.

      I know where I'm taking my next vacation!

    11. Re:Oh stop by vegiVamp · · Score: 1

      I mostly agree, although as a long-time reader, I would argue that the most convincing environment is the one you create in your head. Unfortunately, that requires the use of imagination, and it looks like that's being killed off at an alarming rate by hollywood and the like.

      --
      What a depressingly stupid machine.
  38. Re:heads up for combat soldiers' family and friend by Anonymous Coward · · Score: 0

    Except the Boston Tea Party occurred in 1773...

  39. Re:heads up for combat soldiers' family and friend by hedwards · · Score: 1

    Beyond that, people tend to not realize how unstressful life threatening incidents can be. If you're properly trained and not under the illusion that you live forever, it's not universally stressful as people seem to assume. I've personally had more than my fair share of near death scrapes just as a civilian. What is stressful though is when you go through long periods of boredom knowing that at any moment something might happen. The incidents themselves according to pretty much everybody I've ever talked to seem to mirror my experience in that they're not where the stress comes from. But, it really depends on the person and YMMV.

  40. Similar problems with Starcraft... by CAIMLAS · · Score: 1

    I've seen similar problems with Starcraft ('wrong screen color settings' regardless of which is tried) and notice that Starcraft is listed on the site "with sluggishness".

    This is interesting, because I found a work-around purely by happenstance in Windows 7, at least for SC. Leave your video settings as they are and just open the Display Properties dialog. THen start the game: it'll play flawlessly.

    You have to wonder if, indeed, the incompatibility is intentional. I can see no other reason why SC would work 100% fine with the Display Properties window open, but not in every other scenario, compatibility modes and pre-set resolutions included. The functionality to play the game is evidently still there, so why doesn't it work?

    --
    ~/ssh slashdot.org ssh: connect to host slashdot.org port 22: too many beers
    1. Re:Similar problems with Starcraft... by Ksevio · · Score: 2, Informative

      You can also create a registry key that solves the problem more permanently.

      There are details here: http://go.hopx.net/2010/05/256-color-issues-with-directdraw-and.html

  41. Re:heads up for combat soldiers' family and friend by Anonymous Coward · · Score: 1, Interesting

    ... yet for some, it still continues today. You never get over seeing that much tea, man.

    I know, I was there and it haunts me every day.

  42. Pyro II by gr8_phk · · Score: 1

    All text, but sort of an action-puzzle-mayhem game for DOS. Great fun.

  43. Re:Oh SNAP! by pandaman9000 · · Score: 3, Insightful

    You are in with the old crowd here. S.T.A.L.K.E.R. is a few years old, except for Pripyat, and even then the graphics are the most dated part of the game.

    And, yes, gameplay is what really matters. I still break out M.U.L.E. occasionally, and, guess who joins? My hardcore gaming kids, aged 8, 12, and 14.

    Read that again: Game play IS the top priority in a game's longevity.

    M.U.L.E.
    Age of Empires
    Age of Mythology
    DOOM/DOOM2
    Freelancer
    Serious Sam
    Oblivion
    Rainbow Six 3: Raven Shield
    Counter Strike (Half-Life1 AND 2 versions)
    Quake, Quake2 CTF

    These are just a few that drive home the "game play matters" idea. Notice how almost all of those are over 5 years old? My guess is that it is that we are in the era of "Milk the online play", and past the "Make it worthy of replay" era.

  44. Which is it -- 80 or 20? by CarpetShark · · Score: 4, Funny

    But to run Wing Commander on modern hardware, it doesn't need to be optimal. 80/20 rule dude.

    But does the 80% go to the rear shields, or the front?

  45. Graphics are often limited by msobkow · · Score: 1

    I've yet to see a VM implementation that properly supported hardware-accelerated graphics. While there has been some good work done on sharing disk, memory, and network resources in a VM, the general assumption is that a VM doesn't need accelerated graphics or sound. The result is that performance of such applications is absolutely abysmal.

    --
    I do not fail; I succeed at finding out what does not work.
  46. Thief 1 & 2 problems on newer hardware by PPalmgren · · Score: 1

    This sounds different from what was done for Thief 1 & 2. I recall their problems being related to newer graphics hardware architecture, specifically shaders I believe. If you tried to play the games, everything would be a greenish tint, and the shadows (which is a major gameplay element) were pitch black and unusable. I recall someone modding the game to run all the graphics through the CPU rather than GPU to avoid this issue.

    Would someone care to explain the difference between what I just described and what they did for WC?

  47. You forgot this one... by Starfleet+Command · · Score: 2, Informative

    LHX : Attack Chopper. Lost many many hours to that one in the early 90's

    1. Re:You forgot this one... by HeckRuler · · Score: 1

      I always liked the crap-shoot that was landing behind enemy lines.

    2. Re:You forgot this one... by Starfleet+Command · · Score: 1

      LOL, Yeah. It was a fun game. I lost my copy of it when the floppy (the whole game...one floppy) when tits up. Still, many good times were hand.

  48. Starcraft by TerranFury · · Score: 1

    This might be useful for Starcraft. On Windows 7, the palette used for 256-color mode is all messed up. Strangely, it does work on Vista.

  49. Re:Oh SNAP! by Antisyzygy · · Score: 1

    What about Postal? I still love that game.

    --
    That brings me to an interesting point, / . is just "the ramblings of socially-inept, technology-literate news-mongers".
  50. What I don't get by ByteSlicer · · Score: 1

    What I don't understand is: why did he implement the wrapper on top of OpenGL?
    I'm not trying to start another DirectX/3D versus OpenGL war, but I think it would have been so much easier to implement the missing pieces using the latest DirectX.
    Also, OpenGL support on Win7 is not so great.

    1. Re:What I don't get by Narishma · · Score: 1

      He probably knew OpenGL and didn't want to learn DirectX just for this? Or maybe he's just more familiar with OpenGL. And it's not like DirectDraw has much to do with Direct3D anyway. It would require the same effort to do what he did with Direct3D instead of OpenGL.

      --
      Mada mada dane.
    2. Re:What I don't get by ByteSlicer · · Score: 1

      And it's not like DirectDraw has much to do with Direct3D anyway

      That's what Direct2D is for. Anyhow, it seems like he just wanted to do some quick & dirty development to get Wing Commander running.
      At the end he stated:

      Next up would have been WC4DVD version, but that adds MCI, DirectShow, mpeg2, DirectDraw7, and all sorts of headaches to the mix, so I figured it's time for this project to end

      He would have gotten all the DirectX stuff for free if he used that to start with. I think it would be simpler to implement a wrapper that passes through all calls that are still supported by the current DirectX and intercept calls to the old API.

      But I guess the real question is, why this is a main /. story.

  51. And at Big Corp HQ... by Anonymous Coward · · Score: 0

    -- You know, I've been thinking about that THX movie you spoke about the other day...
    -- Yep, what's it?
    -- Maybe we can lobby to make it illegal the entire thinking thing...
    -- I don't think we have enough jail space for all those GPL maniacs.
    -- Who said I want to keep them imprisoned?
    -- Hmm, that could have some negative PR effects...
    -- Well, you can't make an omelet...
    -- True.

  52. Re:Oh SNAP! by Anonymous Coward · · Score: 0

    Well of course all those games are over 5 years old. You only picked games that were over 5 years old. What were your criteria here? Games you liked? While I'll agree that all of the games there that I've played were really good, I don't play any of them any more (or know anyone who does) so its not a longevity thing...

    Please elaborate and tell me, for example, why Quake2 CTF is *better* than Team Fortress 2, or why Age of Empire is *better* than Starcraft 2. I'm not saying the old games still can't be fun to play, I want to know in what way games have suffered from the progress of technology.

  53. Re:Oh SNAP! by zach_the_lizard · · Score: 1

    I can't speak for AoE, but I can speak for StarCraft vs StarCraft 2. SC2 does have some welcome improvements, such as an enhanced ability to command your units (no 12 units only limit) and better pathfinding/targetting/etc. AI, but with those upgrades comes the flaws. Balance is one of them; the game hasn't had the many years of refinement that SC1 has had. There are a few balance issues to be ironed out (mostly around Terran and Zerg, IIRC). Also, the storyline for StarCraft and SC:BW was far, far better than for SC2. The voice acting was better, too, from what I remember, especially for the Protoss.

    --
    SSC
  54. Re:Oh SNAP! by Apocryphos · · Score: 1

    What isn't balanced? I've played many matches and I haven't found any balance problems. Personally, I was extremely impressed with how balanced the game was at release.

    Agreed on the voice acting and storyline.

  55. Where is Microsoft? by hey · · Score: 1

    I thought tons of backwards compatibility was the main point of using Windows!
    Where was Microsoft on this?

    1. Re:Where is Microsoft? by cheesybagel · · Score: 1

      Microsoft seemingly stopped bothering with application backwards compatibility when Windows Vista was released. It got worse with Windows 7. Windows 7 Professional reached the ridicule of coming with an optionally installable VM running Windows XP (Windows XP Mode) so the user can run his old applications. You can run MS-DOS applications in a more compatible fashion in DOSBox than Windows. I would not be surprised if in a couple of years WINE had better backwards compatibility than the latest Windows version.

  56. Re:Oh SNAP! by HaZardman27 · · Score: 1

    I haven't noticed anything major as far as balance issues in TvZ; most of the reported balance issues are only noticeable if you play at a very high level.

    --
    Apparently wizard is not a legitimate career path, so I chose programmer instead.
  57. hq2x by Anonymous Coward · · Score: 0

    For games at such low resolutions, it's probably better to use something like hq2x http://wikipedia.org/wiki/Hq2x than OpenGL's bilinear filtering.

  58. Re:Oh SNAP! by RyuuzakiTetsuya · · Score: 1

    Quake2 CTF doesn't completely gimp you if you're new or don't devote thousands of man hours to murdering red or blue wearing people.

    That being said though, Team Fortress 2's unlock system isn't the result of being new it's the result of poor design. The unlock system was the fucking worst thing ever for newbies. TF2's strength over Q2CTF is that TF2 isn't just CTF, it's territory control and other variants(I'm not even sure what the hell i'd call Payload Race).

    --
    Non impediti ratione cogitationus.
  59. Re:Oh SNAP! by zach_the_lizard · · Score: 1

    It's true it's nothing major, but it's still a tiny bit off.

    --
    SSC
  60. is no good by masini · · Score: 0

    That is because a standardization is not done in the online field. Should compel them to make products that can be used on any platform.auto second hand

  61. Glide Wrapper by beowulf01 · · Score: 0

    I'll have to try the DD hack - I haven't played WC1 and WC2 in a heck of a long time. I loved the whole series. For especially WC Prophecy, I play in all its Glide API glory via zeckensack's Glide wrapper http://www.zeckensack.de/glide/index.html and a bunch of patches and high resolution fixes from http://www.wcnews.com/index.shtml using WinXP. I switched to the glide wrapper when my antique Voodoo 12MB 3D pass through card bit the dust. At the time I used a AMD Athlon slot A 800Mhz and Geforce256 DDR and the glide wrapper was a life saver for my Glide games.