Talbot Fantasy 7

A sort of RPG for Apple II and Linux


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.


For some reason there is a faq.


Testing out the bird-riding interface:

The mode7 flying more or less works:

Prototype of the battle screen:


Demo showing updated speeds as well as some discussion of the optimizations used:

Demo of the Mode7 Flying code:

How it Works

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 here.

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 Appe II).


Apple II Code/Disk Image

Linux Code

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
ESC quits

Inside Jokes

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 Talbot Hall. 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.

Development Log

This project has gotten out of control. I thought it would take maybe a week or two like my previous Apple II games ([1] [2] [3]), but no, this is much more complicated.

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.

30 April 2017
Start work on project.

Other Apple2 Projects
Back to the VMW Software Productions Page