Saturday, April 21, 2012

Enhanced 6502 BASIC 2.22 for the Replica 1

In an earlier blog post  I mentioned Enhanced 6502 BASIC  by Lee Davison. This is a very powerful and extensive version of BASIC. A version of it was ported to the Replica 1.  This was version 1.10 back in 2005. I couldn't find a port of the most recent version 2.22, so I spent an evening and got it running on the Replica 1. All that is really needed to port it is to implement the routines for character input and output. I also had to adjust the start and end memory locations. I also made a few changes so it would compile with the cc65 assembler.

Startup Screen
You can get my port from here. As well as source there is a prebuilt Woz monitor binary you can use that runs from RAM. BASIC resides starting at address $5000 so you have about 20K of space available for programs if you accept the default and just press Enter when prompted for "Memory size?".

There are some known limitations: IRQ and NMI handling is not implemented because the vectors are in the Woz monitor ROM and cannot be changed. The SAVE and LOAD commands do nothing. I haven't done much testing so there could be bugs.

A Small Program Running
When I get my 16K EEPROM board running I'll try linking it in EEPROM instead of RAM and then all 32K RAM will be available for BASIC programs.

No comments: