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.
It's coded up in 6502 assembly this time. Which is a pain, especially
if you are trying to operate on 16-bit values.
The sound routine is the famous
Electric Duet routine made by Paul Lutus.
Getting pretty sound of an Apple II is hard, as you are more or less
bitbanging a speaker from the CPU. No SID chip or programmable timer
The sound files are made with a custom tracker I made for my AY-3-8910
chiptune player (as you could get AY-3-8910 based soudcards for the
This is mostly a placeholder, but the source code can be found in my
dos33fsutils github repository. More to come hopefully.
Apple II Code/Disk Image
Will post an Apple II disk image eventually.
Full 6502 assembly code available in the git repository.
You'll need cc65 to build it.
There's a Linux version written in C that I used to prototype the
game, which is more or less the same as the Apple II version.
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
Sorry, this is a semi-autobiographical game and there are a lot of
inside jokes from my undergrad and high school years (roughly 1995-1998).
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 on a whiteboard, 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
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.