Well, let's face it! Users love Games. Me too.
I still have some really great childhood memories, playing with those lovely old games.
Do you remember trying to save the poor Lemmings? Damn, they do seem predestined to fall!
Or what about XWing? And Dangerous Dave (a blatant game
copy of inspired by Super Mario)? I still have nightmares with the Aliens from X-COM every once in a while !
Yes, they are not "Crysis V" but these games have some strange power to keep
people me sitting for hours in front of odd-ugly graphics.
Some of the best adventure games are from that era: Day of the Tentacle, the first Monkey Islands, Sam & Max...
You would probably face tons of issues if you try to run these old games (DOS games) directly in Windows or Linux unless you use an app called DosBOX. For those who don't know about it, it is a (software) BOX where you can run DOS games.It's free, opensource and downlodable through ReactOS Apps Manager(rapps) !
But, no, this is not about DOSBox but about ReactOS...
But what if...what if...ReactOS would be able to run aaaall these apps without forcing you to download, install and #"$%&!? configure DosBOX?
Imagine something as easy peasy as copying the game to ReactOS and double clicking to launch it?
Wouldn't that be...really awesome ?!!
Aleksander Andrejevic, Hermès Bélusca-Maïto and V are currently working to achieve exactly that, and they're progressing quite nicely. David Quintana and Grégory Macario Herbs were helping a little too!
These guys are coding an equivalent of Ntvdm.exe, the NT Virtual DOS machine, along with the Fast486 library for emulating a 486 CPU. I won't go into the technical details because the official Newsletters will (hopefully) do so. To sum it up: when you run the Game, somehow, and thanks to Black Vodoo tricks, Ntvdm.exe, Fast486 and several other parts of ReactOS (like the Console) join together and as a result the game runs: A-we-some.
A-we-some, because it is a "We" work, a team of devs working on a common goal, and also because it forced them to implement several Windows BIG undocumented functionalities and rework some others (don't miss this link to understand the heavy work behind it!). Speaking of which, I don't wanna miss the opportunity to thank V "The Testcaser". He's creating Testcases to prove that the implementation behaves
wrong well wrong well...whatever. Testcasers are invaluable. Btw, V is trying to find someone with an x486 computer around. So if you have one, please, visit our IRC, say "hello!" and help us !
This team keeps working daily on Ntvdm, Fast486 and Console fixes, so ReactOS is becoming moar and moar compatible with these games,and well, they were so far able to make a "complex" game, Dangerous Dave, work. Here's the proof:
There is a lot of work before Monkey Island and "big games" work in ReactOS, but ey! thanks to their work we're a little bit closer to enjoy them running in ReactOS. Some "Sound card" and "VGA" fixing is needed in order to increase the chances to running them. This development is not just about Games but also about Apps. DOS apps will be able to run in ReactOS too, and this is a big advantage compared to DosBox! A DOS app prefers to live in a native environment (aka ReactOS) than inside a "virtualizer" as DosBOX. I prefer to live in the Caribbean, but well, geek apps have their own odd preferences !
Some of the Demo DOS apps tested are XMAS(what a proper app! Jingle Bells!) and WIN_AT_HELL( Gore sense of humor).
Try to discover which is each one:
Right now all this development is being done in a branch, so you won't be able to enjoy it until they decide to move their work into ReactOS trunk. Sorry guys ! You'll have to wait (unless you ask for a way to test it...)
In the meantime, you can enjoy their progress through this JIRA ticket. As always, ReactOS is open to new contributors, so if this project moves something inside you (nostalgia), and you want to contribute(somehow) then please feel free to visit us in our IRC Freenode Headquarters: #ReactOS. There is always something to be done!
This blog post represents the personal opinion of the author and is not representative of the position of the ReactOS Project.