DOS Game "F-15 Strike Eagle II" reversing project needs DOS test pilots
178 points
7 hours ago
| 14 comments
| neuviemeporte.github.io
| HN
LowLevelMahn
7 hours ago
[-]
Playable DOS version available

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!

reply
snerbles
2 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.

reply
ixp_ninja
2 hours ago
[-]
Fixed (might need a Shift-Ctrl-R reload). Apologies, English is not my first language.
reply
snerbles
2 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.

reply
yepyoukno
6 hours 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 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!!!!

reply
LowLevelMahn
6 hours 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 :)

reply
skerit
5 hours 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?
reply
rhplus
5 hours ago
[-]
Images, music, video, and text would all be under copyright, while characters and logos may be registered trademarks.
reply
skerit
4 hours ago
[-]
Oh yes, of course. I was talking about reverse engineering the code only. Requiring the official assets is a no-brainer.
reply
derac
3 hours ago
[-]
Largely it is legal, but it's complicated. https://www.eff.org/issues/coders/reverse-engineering-faq
reply
habagav
5 hours ago
[-]
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.

reply
alberto-m
5 hours 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.

reply
skerit
4 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?

reply
habagav
4 hours ago
[-]
If they try to claim that then they need proof, right? Good luck getting that.
reply
luckydata
2 hours ago
[-]
Just no, this isn't a thing at all.
reply
skerit
4 hours ago
[-]
Yeah, that approach makes the most sense.
reply
gmerc
5 hours ago
[-]
It’s ridiculously easy to port games now.

https://robin.tooclever.org took less than a day in API time

reply
npunt
2 hours ago
[-]
This is cool! Is there an index of these ported games / OSS ports?
reply
_jackdk_
38 minutes ago
[-]
Communities for these old games do an incredible job securing the four freedoms for their favourite titles, and it's truly inspiring. Great work.
reply
coolwulf
1 hour ago
[-]
This story is now on Youtube: https://youtu.be/aIPKkOpIiF8
reply
shdon
49 minutes ago
[-]
Cool video, though the AI voiceover is jarring.
reply
taffydavid
2 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?

reply
ixp_ninja
2 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.
reply
snerbles
2 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.

[0] https://github.com/keirf/greaseweazle

reply
imrehg
6 hours ago
[-]
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...

reply
EdwardDiego
28 minutes 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.

reply
raddan
1 hour 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...

reply
EdwardDiego
36 minutes 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.

reply
alberto-m
5 hours ago
[-]
The dev blog is one of the best retro-reversing journals you can find. Happy reading!
reply
sourcegrift
6 hours ago
[-]
Aren't these names trademarked? I can imagine lockheed selling the rights for a side income lol
reply
tecleandor
2 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.

reply
swiftcoder
4 hours 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
reply
Waterluvian
6 hours 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.

reply
AJenbo
6 hours ago
[-]
Yes it's very helpful
reply
howard941
4 hours 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.
reply
shdh
5 hours ago
[-]
I never played this, but I did play Janes F/A-18, was a great game
reply
peregrinus_13
2 hours ago
[-]
Oi! And Jane's USAF!
reply
smrtinsert
6 hours ago
[-]
Man I loved this game. My friend and I would split responsibility and share the keyboard. One did the firing other the navigating
reply
EdwardDiego
27 minutes 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.
reply
louwrentius
6 hours ago
[-]
I've played this game so much on a Laser (Dutch computer brand) 286 with VGA monochrome screen, in the early '90s.
reply
mikerg87
7 hours ago
[-]
I posted this to twosopbts.com so that one more retro gaming community will know of the call
reply
cf100clunk
6 hours ago
[-]
> twosopbts.com

I'm not getting DNS NX results.

reply
slater
6 hours ago
[-]
reply
bigmattystyles
5 hours 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.
reply
EdwardDiego
24 minutes 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.

https://wiki.falcon-bms.com/en/manuals

It's really impressive, but I did not have the time to put into learning it.

reply
raddan
1 hour 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.

reply
tecleandor
2 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.
reply
holoduke
4 hours ago
[-]
Is this game similar to retaliator?
reply
rasz
3 hours ago
[-]
Afaik Retaliator is more arcade.
reply