Modifying Microsoft Flight Simulator 4 to run on three immersive monitors
tinmith.net
tinmith.net
Sigh, I still have drawers full of CDs of Flight Sim expansions etc. sitting around. Terribly sad that Microsoft canned the entire team and the project will not move forward any more, after so many decades. I still have really vivid memory of seeing FS1 run for the first time on an IBM PC monochromatic green screen - achieving the impossible even before graphic cards were a thing!
[1] https://en.wikipedia.org/wiki/History_of_Microsoft_Flight_Si...
I spent way too much time trying to get various games to work with SIMCGA. Not only did it cause a massive slowdown (single-digit fps - or worse - was common) as it copied writes to VGA addresses into Hercules address space, the conversion from (e.g.) 320x200@16 onto a display that only supported 720x348@1 created usually required dropping/doubling lines at non-integer ratios, skewing the aspect ratio, and other nasty hacks[1].
I was very happy, years later, when I finally upgrade to a Trident TVGA9000B.
[1] http://3.bp.blogspot.com/-To4gB6TtJJs/Uwa-qlr0_rI/AAAAAAAAA9...
Searching around I'm finding conflicting information on Flight Simulator 1's use of the black & white 640×200 CGA mode and support for a colour mode targeting NTSC composite output. Maybe the original release supported both?
I recall it being a BIG deal when FS ran on the old 80x25 green screen monitor. This was before even the Hercules display adapter that let you manipulate things at the pixel level. IIRC the Microsoft engineers were one of the first to do pixel level animation on essentially a text display system.
I may be remembering incorrectly, but I am fairly sure my recollection is right, as that was quite a defining moment in computing for me.
Whichever the reason - I know that it was a while before we saw a CGA version come through.
That said, maybe DTG will do something with it.
Gates stepped down from his day-to-day responsibilities at MS in June of 2008. The entire Flight Simulator team was laid off in January of 2009.
I miss all the Easter eggs in software. These days people just add the Konami code JS to their web site or app then pat themselves on the back for being original.
A fair number of them got positions elsewhere in the company, I ended up working with a few of them.
The story I was told about its cancellation are a bit more complex, but still nefarious.
Lockheed Martin licensed ESP from Microsoft and develops it as Prepar3D.
Anything that changed in the final dump, but didn't change in any of the previous dumps is likely to be what you are looking for.
Back in the 90s I used to do this with a tool called "Desktop Hacker" on RISC OS. http://www.doggysoft.co.uk/dh/compr.html
I've been wanting to do the same thing, but with the 1993 Star Wars: X-Wing game. Eventually I want to build a cockpit with a wrap-around screen and a specialized control panel with switches and indicator lights.
A few years ago, I used Cheat Engine on the Windows version of the game. I figured out the memory locations of some of the variables like shield and laser levels, but then I moved on to other projects.
It would be great if Disney were to release a modern update or sequel with the configuration options I need for this. It's good that they did release the original games on GOG.com.
To me the less detailed graphics are much more "readable" than the modern GPU powered stuff.
Most games (even AAA titles) have even worse problems with multi-monitor setups, often just staying with a basic rectilinear projection that makes the siides super stretched out.[2] We could do with better camera projection support in games in general.
[1] http://i.imgur.com/RQA43aV.jpg [2] http://i.imgur.com/laY2f4w.jpg
Man I'd love to try this. I played a lot of Flight Simulator 5.1 back in the day, which actually included the whole Flight Simulator 4 world as well - you could choose to load it in from one of the menus. The untextured terrain was so much harder to read though!
1/4 of the time was spent running GDB trying to find the memory locations and work out the encoding scheme.
1/4 of the time was spent getting familiar with DOSBox, building on Ubuntu, and syncing the data around via UDP.
1/4 of the time was spent trying to automate the start up so I didn't need to press a hundred keys manually to configure all the displays each time I restarted it.
1/4 of the remaining time was capturing nice videos and writing it all up :)
I've done hacks like this before ... back in 2000 I worked on the team that built ARQuake but we had source code http://www.tinmith.net/arquake/
I imagine with more studying of the memory locations, you could sync over the instruments too. Or if you really wanted to, you could just grab the video memory for the instruments on the master and blast that over the network too. Displays were so small back then that you could easily compress and send this.
Assuming you can't reposition a camera, you could try offsetting the ship position on one of the instances, but then you'd probably have issues with the simulation states diverging - I suspect a big part of why it can be made to work with Flight Simulator is that the state of the aircraft itself is more or less the only thing that's actually being simulated, so you can manipulate it to a fare-thee-well without affecting anything else. Contrariwise, if TIE fighter shots hit the ship in your left-eye instance, but miss the ship in your right-, that'a a much harder problem to solve.
Another project, perhaps? :)
It ran on the TRS-80 with 128x64 resolution:
(Don't mind me, though - I'm just letting my old flight-sim bug live vicariously for a while through your extremely impressive setup...)
Also, the hacks in the blog post won't work as well for anything newer than DOS, like Windows games, since there is an OS in the way and writing over memory locations gets a lot harder. You would need to approach the problem differently.
No I'm only joking, well done.
But I wanted to see if it was possible get the original FS4 working on this, because it seemed quite impossible.