Bad idea: build a captcha library that embeds DOSBox so it can make you beat levels/puzzles from DOS games to continue.
-
@whitequark @foone fwiw, as someone who once loved hex-rays, (a) this is ghidra output and I'm fairly confident it's spewing more casts than hex-rays would on this code, and (b) my primary interaction is iteratively adding and refining type information that removes the typecasts – they don't get filtered in my mind, they're more of a to-do list.
-
@foone in the middle od the night your thread here was my entire feed.
Wilde! -
@MedeaVanamonde that "foone" punk posts a LOT
-
@dougall @whitequark yeah this is early decompilation. I haven't told it of types yet, so it's rougher than it'll be once I clean it up
-
I like that this program using overlays is only 209kb.
"oh no, we can't fit all 209 kilobytes of our program into RAM! better use our compiler's overlay system"
TWO HUNDRED KILOBYTES
-
oh hey, there is a 32bit windows version of this game? that might be way easier to reverse engineer
-
you know, because of pointers that actually point
-
I can't play it because MIDI doesn't work on Windows 10
-
sticking a zero byte file at C:\Windows\SysWOW64\midimap.cfg fixed that. It runs. I kinda hate it, but that's to be expected.
-
if there's a game you grew up with and love on platform X, never play a cheap 90s port of that game to platform Y. it never ends well
-
@foone oh its so true C&C did not play well on PS1.
-
@dashasierra has an RTS EVER played well on a console?
Maybe an FPS-RTS hybrid, but RTS games are such a mouse-based genre!
-
@foone ten year old Finale Notepad will still output midi synth on my Windows 11 PC but I'm assuming this is much, much older, yes?
-
@tess 1997 port of a 1993 game, so yeah
-
wait, ghidra autodetects the 32bit version as being DELPHI?!
The DOS one is definitely C++.
Did these fuckers rewrite the whole game in Delphi so it'd run on Win32? -
maybe they compiled the games into DLLs and had a delphi shell around it?
-
I think that's exactly what they did.
on the CD there's a bunch of DAT files in SSGWINCD, and they mysteriously all start with the bytes MZ, like a DLL/EXE
-
loadLibrary()ing a .DAT file? naughty naughty.
-
Language ID: x86:LE:16:Protected Mode (2.13)
what do you mean 16bit protected mode? the one used for, like, Xenix? the 286 one that was an evolutionary dead end? YOU'RE RUNNING THAT IN DLLs?
-
that can't be right. I'm on a 64bit system. those DLLs shouldn't even load.