First step was the full reverse to assembler, second step is to convert the assembler to binary equal compiled C code, all this still on DOS until no assembler code is left, then the porting to Linux,Windows will start
Reversing tends to bring in new bugs and its not easy to find all bugs in such old and reversed code - but so far everything seems to work
try finding open bugs if you got version 451.03 of F-15 around combined with Dosbox or a real DOS
the f15_se2-*.zip file contains the replacement executables for the DOS game
The airforce needs YOU!
snerbles 22 hours ago [-]
USAF veteran here. I grew up on F-15 Strike Eagle II, and unfortunately my copy has long since degraded. I am elated to see this project.
I do have one teeny, tiny, personal pedantic grumble that is sure to bring other the branches out of the woodwork to point out how much I love chairs.
Air Force. Two words. Thanks.
ixp_ninja 22 hours ago [-]
Fixed (might need a Shift-Ctrl-R reload). Apologies, English is not my first language.
snerbles 22 hours ago [-]
No worries, in some languages it is indeed one word - like Luftwaffe.
I've seen many native English speakers routinely bang out "airforce", so it's not just an ESL thing.
irishcoffee 4 hours ago [-]
You spelled chair force wrong!
yepyoukno 1 days ago [-]
Nice work!
I’m not sure you should beat yourself up too much for a Linix* port, emulators are so well supported and ubiquitous, if it works there (not everything does), call it a win!
I can see your a “low level mahn” and this may be more of a quest for you than playing a cool retro game.
Any which way, GREAT WORK!!!!
LowLevelMahn 1 days ago [-]
its mostly the combined work of AJenbo, neuviemeporte and others - my part is very small, fixing some compilation problems with newer compilers and spreading the news
C source needs to get compiled on every platform reachable - that is a must :)
skerit 1 days ago [-]
I'm currently reverse engineering a few games too. It's quite easy with AI now. But I'm worried about the legality of it all. Any thoughts on this?
qmr 19 hours ago [-]
Worry about it when you get a C&D.
unixhero 19 hours ago [-]
Many of the games have bo copyright owners any longer. They are literally abandoned.
Somehow I’m not that concerned. I haven’t heard of any company but Nintendo trying to assert rights to 1980s game IP, and that’s because they’re still selling those literal ROMs as part of a subscription service.
Would I port such a game and then sell it? No, because that kind of puts a target on your back. Keeping it open source and also noncommercial, I don’t think it’s ever gonna matter.
(Obligatory I’m not a lawyer disclaimer - this is a vibes based comment not legal advice. Obviously copyright is nearly infinite, in theory)
qmr 19 hours ago [-]
It's not because they're selling ROMs, that only accounts for a small fraction of their back library.
It's because they're assholes.
wbl 2 hours ago [-]
Many of their franchises date back to that era and are incredibly valuable. It's like Disney caring about Steamboat Willey all those years.
xp84 19 hours ago [-]
No argument on the latter, but I feel like they also have a 'practical' concern that if they very openly ignored 8-bit and 16-bit 'piracy,' it's conceivable that devices like the Anbernic and Powkiddy ones (that already exist in our timeline) would get sold more in the open and be even easier to get started with. Maybe some parents (say, millennials who want our kids to learn the kind of gaming we grew up on) would rather buy those than a $349 Switch with the $10/month subscription they sell to the selection of 80s and 90s games in Switch Online.
In our timeline of course, those are already easy to get, but those companies cater to the kinds of nerds who flash a new OS to SD cards and download collections of ROMs.
Now, do I think Nintendo actually makes that much money on Switch Online from people who (A) are only there for the retro games and (B) would jump on some "more mainstream" and easier version of retro piracy handheld? Mehhhhhh not really. But someone probably espouses that viewpoint at Nintendo HQ.
rhplus 1 days ago [-]
Images, music, video, and text would all be under copyright, while characters and logos may be registered trademarks.
skerit 24 hours ago [-]
Oh yes, of course. I was talking about reverse engineering the code only. Requiring the official assets is a no-brainer.
You could do “clean room engineering” approach where the reversing agent generates a specification from its findings, and then have a separate agent reimplement the code without seeing the original binaries/code.
You’d just have to make sure the specification doesn’t include actual source snippets (the AI will try this if you don’t specify). Pseudo code would be sufficient I guess where necessary.
alberto-m 1 days ago [-]
Unless you develop your AI agent from scratch or you clone a never-released game, it would be extremely easy for the rightholders to claim that both agents have most certainly ingested the binary during their training phase, since it's well known that the hyperscalers have pirated everything that could be pirated to train their LLMs. Which is why malus.sh is a parody, not a real service.
One should be honest about what one builds. The F-15 project does that: the aim is the reconstruction of the original game, down to the opcodes; on the other hands it requires the user to provide the original game assets.
gmerc 11 hours ago [-]
Reality would disagree. If the models are large enough few legal consequences are to be expected because governments don’t want to lose out on AI investments. And in the US the industry owns the executive, legislative and well, thoughts and prayers.
This creates an interesting problem via the normative power of the present - only people willing to accept the erosion of copyright can partake in the AI economy and since the AI economy has become essentially all growth, money and power rapidly concentrates on these people.
There won’t be a legal reckoning because the regulatory capture is complete - these models are “national security level” too big to fail now.
skerit 24 hours ago [-]
> it would be extremely easy for the rightholders to claim that both agents have most certainly ingested the binary during their training phase
Ingested the binary?
justinclift 13 hours ago [-]
> ingested the binary during their training phase
That's extremely unlikely. The pirating seems to have been of eBooks, which were first converted to text, losing graphics and such too.
That's my understanding anyway, from reading a few reports. :)
habagav 24 hours ago [-]
If they try to claim that then they need proof, right? Good luck getting that.
luckydata 23 hours ago [-]
Just no, this isn't a thing at all.
skerit 24 hours ago [-]
Yeah, that approach makes the most sense.
taffydavid 22 hours ago [-]
Noob question. I really hope this doesn't come across as negativity.
I love that people spend time on making old games work, but why do people decompile games that can be emulated by DOSbox or the like? Surely a game this old runs absolutely fine on even very low end hardware?
ixp_ninja 22 hours ago [-]
It's not about running the game, it's about having it open for modification. Patching a game in binary form is ridiculously hard, anything than simple bugfixes is mostly a no-go. With the source code available we can add entire features, port it to Windows 10, implement 4K HDR, textures, new models, new missions... the sky's the limit.
Additionally, it's really hard to analyze the game from assembly opcodes with hardcoded data offsets. With C code either we can read what it does directly, or add instrumentation or debugging code to it to figure it out.
taffydavid 11 hours ago [-]
Ok but - and again I'm trying not to be negative, simply trying to understand - if you want a flight sim that works on Windows 10 and supports 4k HDR, wouldn't it be a lot easier to just build it from scratch, rather than trying to decompile a game from 1989 that came on 5¼ inch floppies? I mean, even if someone just _gave_ you the source code of the 1989 game it would be more work to port it to Windows or as a feature than it would be to just build your own 90s era air combat game in c++ without any baggage.
Is it simply about squeezing more out of a classic game we love?
LowLevelMahn 9 hours ago [-]
be negative, no problem - the goal is different - we are foremost developers that like the challenge to get the game back into its source state - its interesting to see on an algorithmic level how the devs got it working at that time with all this hardcore constrains (It's like the joy of an archaeologist unearthing an old wooden tool.) - for many developers gaming was the startpoint of interest in software development, and reversing is the gold-class, all your life long expirience needs to be on point to be able to reach such a goal, maybe hard to understand for non-developers - and only a few people on the world are able to do that (even with LLMs) and developers praise these ones :)
bonzini 9 hours ago [-]
For an example of what a "finished" product of this work looks like, check out Cannonball at https://github.com/djyt/cannonball/wiki, an Out Run remake preserving the original game logic.
skywal_l 13 hours ago [-]
And personally, I prefer doing ./game, rather than having to install a bunch of stuff and see my system cluttered by hidden folders.
khedoros1 15 hours ago [-]
I had a few reasons, when I tried tackling RE of a DOS-era game a number of years ago. I wanted to document the file formats, look through the data and find unused media, identify and fix some of the more egregious bugs in the game, build modding tools for it, understand the techniques used to build something that was memorable from my childhood, reduce the friction of running it on a modern system, make available optional improvements like higher resolution, texture replacement, and so on.
It ended up being more than I had the patience to finish. It might be doable for me now.
snerbles 22 hours ago [-]
A lot of floppy-based games have on-disk copy protection patterns that take advantage of undocumented behavior of disk drives at the time. So much so that tools like Greaseweazle [0] are necessary to compose full magnetic flux maps of archived floppies.
Another thing is that these games are often made to run on a wide variety of graphics and sound hardware, and effectively have drivers compiled into them.
Oh, this was one that I played a lot as a kid! (Alongside F-19 Stealth Fighter, F-117A Nighthawk Stealth Fighter - the two that apparently came before and after this game - TIL, and to a lesser extent F-14 Tomcat)
I think, this needs the original game files to run, if I read things correctly. So probably just gonna read the dev journals, rather than fly this particular bird again...
raddan 21 hours ago [-]
F-19 is a great game and one of my favorite Sid Meier titles ever. I remember buying it from Electronics Boutique in the late 1980s and playing it on our Packard Bell 286. The game's copy protection mechanism required you to look up aircraft in the manual and identify them. The consequence was that I memorized the entire set of aircraft in the game. I even bought a Gravis Analog joystick to play the game and I still have the keyboard overlay.
I would love a modern reboot of this game...
EdwardDiego 20 hours ago [-]
I can still remember the intro music for F-19 as played through the built-in PC speaker, the harsh tinniness just made it more of a banger.
And yep, that copy protection is why I can tell my Floggers from my Backfires at the limits of FLIR range lol.
EdwardDiego 20 hours ago [-]
Was this the one that you could play co-op with a friend in a front seat / back seat role? Or was it III? I spent so long ringing my friend on the landline to help set up his modem configuration,then having him dial in again, starting the game, him disconnecting again, me ringing him to see what had happened that time etc. etc. When we finally got it working, we played it so incessantly that his Mum banned him from playing it over the modem as we were tying up the sole phone line for hours.
I would love to find similar multiplayer in other flight sims, or space sims. I also really want to get this game working again and see if I can nostalgia bait my friend.
alberto-m 1 days ago [-]
The dev blog is one of the best retro-reversing journals you can find. Happy reading!
sourcegrift 1 days ago [-]
Aren't these names trademarked? I can imagine lockheed selling the rights for a side income lol
tecleandor 22 hours ago [-]
The F-19 denomination was never used, they skipped from F-18 to F-20. The game was based on what they believed that the stealth fighter (F-117) was going to be before it was publicly acknowledged. So maybe it wasn't trademarked. (Or maybe they trademarked everything just in case...)
Vaguely similar to the F-29 Retaliator game, that was based in the X-29 experimental fighter, but not in an existing F-29 of any kind.
rzzzt 8 hours ago [-]
What about the Su-27 and Eurofighter games (from a bit later)?
swiftcoder 1 days ago [-]
Same as for any game that uses real car brands or gun manufacturers, quite a few of these companies are willing to license for certain types of game
This is cool! Is there an index of these ported games / OSS ports?
aiponzischeme 1 days ago [-]
[flagged]
gmerc 1 days ago [-]
Calm down babe, I’ve been doing game disassembly, emulation and ports for a few decades by now. It’s just a fact that it has become ridiculously easy with top end models, because they locate every know piece of information out there. Can’t deny it.
Waterluvian 1 days ago [-]
Does AI fit well in trying to reason about the structure of a decompiled project when you lack symbol names?
This isn’t my wheelhouse but I was surprised just how well AI could figure out the intent of the structure of some JavaScript where I had no source maps.
kriztw 20 hours ago [-]
AI is superhuman at reading and understanding assembly, it doesn't care much about if it's decompiled or has symbols, that just makes it a bit slower. In some cases it can even understand heavily obfuscated control flow directly without using tools.
Communities for these old games do an incredible job securing the four freedoms for their favourite titles, and it's truly inspiring. Great work.
CalChris 19 hours ago [-]
I have a friend who flew F15s. I’ve sent him this.
shdh 1 days ago [-]
I never played this, but I did play Janes F/A-18, was a great game
peregrinus_13 22 hours ago [-]
Oi! And Jane's USAF!
MajorTakeaway 16 hours ago [-]
I played US Navy Fighters and that reminded me of this game, shortly after playing it for a year I had received Jane's F-16 as a 13th birthday present.
howard941 1 days ago [-]
Many hours expended on building up doppler maps in flight to use to shoot SLAMs with. An excellent sim along with Digital Integrations' Tornado which really needs a reboot.
smrtinsert 1 days ago [-]
Man I loved this game. My friend and I would split responsibility and share the keyboard. One did the firing other the navigating
EdwardDiego 20 hours ago [-]
A friend and I did this with Privateer II (the one with incessant FMV starring a young Clive Owen) - pilot on the gamepad, navigator / weapons officer on the keyboard.
louwrentius 1 days ago [-]
I've played this game so much on a Laser (Dutch computer brand) 286 with VGA monochrome screen, in the early '90s.
bigmattystyles 1 days ago [-]
If it's the game I'm thinking of, floppy copies were going around my middle school in France at the time but this was a game that without the manual, good luck even getting the plane off the ground. I seem to recall a mode where you started out in the air. Fun times.
EdwardDiego 20 hours ago [-]
That reminds me of when a friend convinced me to try to get into Falcon BMS. The community has created thousands of pages of documentation on flying the Falcon, operating the various weapon systems, as well as things like energy management, formation flying techniques etc. etc.
It's really impressive, but I did not have the time to put into learning it.
raddan 21 hours ago [-]
You definitely needed the manual. But an 8-year old version of me mastered the game so it couldn't have been that hard.
FWIW, the manual is a masterpiece. I really miss all the ancillaries that came with early computer games.
tecleandor 22 hours ago [-]
That happened to me, at least, with F-29 Retaliator. Your best bet was starting a mission already in the air, as the game (IIRC) didn't include any tutorials.
rzzzt 8 hours ago [-]
The mission scenario descriptions were circulating both as a text file and in the hint section of a computer magazine we had, but I didn't get either for a long time. "Zulu alert" mode lets you take as many enemies off the sky as you can, with infinite ammo.
Edit: I now remember that the first training mission is something like "shoot two target practice boards in sector E5". You have to be very meticulous to find those just by flying around!
mikerg87 1 days ago [-]
I posted this to twosopbts.com so that one more retro gaming community will know of the call
First step was the full reverse to assembler, second step is to convert the assembler to binary equal compiled C code, all this still on DOS until no assembler code is left, then the porting to Linux,Windows will start
Reversing tends to bring in new bugs and its not easy to find all bugs in such old and reversed code - but so far everything seems to work
try finding open bugs if you got version 451.03 of F-15 around combined with Dosbox or a real DOS
find latest DOS release here: https://github.com/neuviemeporte/f15se2-re/releases
the f15_se2-*.zip file contains the replacement executables for the DOS game
The airforce needs YOU!
I do have one teeny, tiny, personal pedantic grumble that is sure to bring other the branches out of the woodwork to point out how much I love chairs.
Air Force. Two words. Thanks.
I've seen many native English speakers routinely bang out "airforce", so it's not just an ESL thing.
I’m not sure you should beat yourself up too much for a Linix* port, emulators are so well supported and ubiquitous, if it works there (not everything does), call it a win!
I use Lutris (https://lutris.net/) for its ease of use.
I can see your a “low level mahn” and this may be more of a quest for you than playing a cool retro game.
Any which way, GREAT WORK!!!!
C source needs to get compiled on every platform reachable - that is a must :)
Would I port such a game and then sell it? No, because that kind of puts a target on your back. Keeping it open source and also noncommercial, I don’t think it’s ever gonna matter.
(Obligatory I’m not a lawyer disclaimer - this is a vibes based comment not legal advice. Obviously copyright is nearly infinite, in theory)
It's because they're assholes.
In our timeline of course, those are already easy to get, but those companies cater to the kinds of nerds who flash a new OS to SD cards and download collections of ROMs.
Now, do I think Nintendo actually makes that much money on Switch Online from people who (A) are only there for the retro games and (B) would jump on some "more mainstream" and easier version of retro piracy handheld? Mehhhhhh not really. But someone probably espouses that viewpoint at Nintendo HQ.
You’d just have to make sure the specification doesn’t include actual source snippets (the AI will try this if you don’t specify). Pseudo code would be sufficient I guess where necessary.
One should be honest about what one builds. The F-15 project does that: the aim is the reconstruction of the original game, down to the opcodes; on the other hands it requires the user to provide the original game assets.
This creates an interesting problem via the normative power of the present - only people willing to accept the erosion of copyright can partake in the AI economy and since the AI economy has become essentially all growth, money and power rapidly concentrates on these people.
There won’t be a legal reckoning because the regulatory capture is complete - these models are “national security level” too big to fail now.
Ingested the binary?
That's extremely unlikely. The pirating seems to have been of eBooks, which were first converted to text, losing graphics and such too.
That's my understanding anyway, from reading a few reports. :)
I love that people spend time on making old games work, but why do people decompile games that can be emulated by DOSbox or the like? Surely a game this old runs absolutely fine on even very low end hardware?
Is it simply about squeezing more out of a classic game we love?
It ended up being more than I had the patience to finish. It might be doable for me now.
Another thing is that these games are often made to run on a wide variety of graphics and sound hardware, and effectively have drivers compiled into them.
[0] https://github.com/keirf/greaseweazle
I think, this needs the original game files to run, if I read things correctly. So probably just gonna read the dev journals, rather than fly this particular bird again...
I would love a modern reboot of this game...
And yep, that copy protection is why I can tell my Floggers from my Backfires at the limits of FLIR range lol.
I would love to find similar multiplayer in other flight sims, or space sims. I also really want to get this game working again and see if I can nostalgia bait my friend.
Vaguely similar to the F-29 Retaliator game, that was based in the X-29 experimental fighter, but not in an existing F-29 of any kind.
https://robin.tooclever.org took less than a day in API time
This isn’t my wheelhouse but I was surprised just how well AI could figure out the intent of the structure of some JavaScript where I had no source maps.
https://wiki.falcon-bms.com/en/manuals
It's really impressive, but I did not have the time to put into learning it.
FWIW, the manual is a masterpiece. I really miss all the ancillaries that came with early computer games.
Edit: I now remember that the first training mission is something like "shoot two target practice boards in sector E5". You have to be very meticulous to find those just by flying around!
I'm not getting DNS NX results.