What you've always wanted, a poorly done FF7 clone for the Apple II.
Yes, I'm using the 40x40 15-color Low-resolution graphics mode of the Apple II.
This means the game could in theory run on the original Apple II released
in 1977 (if you had been fabulously rich enough to populate all 48k of RAM).
Again, this is more of a demo than a game. I was putting together
ym5 music files for my
chiptune player and came across some
FF7 sheet music for "Highwind Takes to the Skies" and "Still More Fighting".
And as often happens, one thing leads to another.
Be sure you have SDL-1.2-devel installed.
On Debian something like apt-get install libsdl1.2-dev
cd into the gr-sim directory, run make,
then run ./tfv
Directions / Key Bindings
Press "H" for help.
Arrows and W/A/S/D move you.
Z/X speed up / slow down when flying.
Space is emergency brake.
Return (Enter) for action (landing, activating, entering)
M brings up the world map
I brings up the inventory
B will enter battle mode
Sorry, this is a semi-autobiographical game and there are a lot of
inside jokes from my undergrad and high school years (roughly 1995-1999).
Many many years ago, a group of us lived deep in the basement of
One of the roommates (who is now fairly prominent at Firaxis) was not
an Engineering/CS major and thus had time to play video games. So we lived
vicariously through him as he played through FF7. A
picture of me as a FF7 character
was drawn, and that got scanned in and is the basis
for the character in this particular version.
This project has gotten out of control. I thought it would take maybe
a week or two like my previous Apple II games
but no, this is much
11 February 2021 -- v007
This was mostly about getting the "info" screen printing when you press I
on the world map.
Also the name selection screen works.
2 February 2021 -- v006
I guess I can make another release, though mostly I wasted a lot of time
trying to get a hi-res version of the "story" for some reason.
You can in theory select "New Game" but the name selection still isn't
19 January 2021 -- v005
Got the battle interface, including mockingboard music, working.
Still should tune in a bit but most of the features there.
I wrote a lot of this code a few years ago, but in C, so I'm converting
to 6502 assembly and using all the tricks I've learned since then.
11 January 2021
Working on things again. Mostly updating the code based on my various
demakes, plus working on the battle scenes.
15 July 2018
Desperately trying to get at least the prototype done before Kansasfest.
The boss battle is the primary last holdup. Keep having to resist
the urge to add more features.
3 July 2018
Released the trailer! Will be discussing this at my talk at Kansasfest
in two weeks. Will optimistically be trying to get as much of the
game functional as possible.
2 July 2018
Have spent the summer working on the Linux/C version. It is nearing
playability, need to start backporting the code the 6502 assembly.
20 March 2018
Got distracted making some demoscene demos out of some of the
code from this project:Apple II Mode7 Demo
26 November 2017
Took the Mode7 code to 40x40 graphics. This killed the framerate.
With much heroic action, including a lot of self-modifying code, I got
it back up to 5fps again.
25 November 2017
Optimized the Mode7 code from 5fps to 9fps.
Most of the pain was using an optimized multiply routine that sped up
16-bit x 16-bit multiplies from 700cycles to 200 cycles.
18 November 2017
Got the worldmap code going in the Apple assembly code.
9 October 2017
Got the Mode7 code going well enough to record a demo.
We won't talk about the mess trying to get both kdenlive, vokoscreen,
and wine32 installed and working on Debian Sid. Did get that sorted
but then libreoffice had stopped working.
7 September 2017
Was stuck the last 2 weeks trying to get a signed 16x16 multiply
working. May have finally got it going.
23 August 2017
Have the mode7 flying and graphics more or less acceptable.
I'm not sure how it will translate to 6502. Need to put together
some fixed point math routines.
17 August 2017
More or less got simple Mode7 type flying going.
16 August 2017
Start making the code use page flipping on Apple II. A big pain.
12 August 2017
Start moving the C code to use page flipping.
11 August 2017
Add collision detection on world map. Doesn't work very well.
22 July 2017
Info screen with stats now works.
20 July 2017
Add menu support.
25 June 2017
Port opener to 6502 assembly. Flickers, need to make it use
page flipping. Also slower framerate than I would have hoped.
17 May 2017
Added text mode support to emulator.
12 May 2017
6502 sprite routines sort of working.
6 May 2017
RLE low-res graphics loaded. Properly skips the address windows
in the graphics/text display address maps.