Anybody thought of a light port of Applesoft?

Discuss software for the Apple 1/replica 1

Postby cowgod » May Sat 10, 2008 3:32 am

Ok, time for another new build. Any files saved with the previous version may not work with this one, hopefully this will be the last time the token format changes.

This adds the CFFA check I wanted and puts back my crappy CLS clear-screen command. I was able to re-organize a few things to make enough space. If you disconnect your CFFA card and try to use LOAD, SAVE, or MENU, you should get a "?NO CFFA ERR" error.

I think this should be pretty much it as far as adding new code, now its just a matter of squashing any bugs. I do need to fix the parsing of the filenames for LOAD/SAVE. Right now you can't use any filenames which contain one of the BASIC tokens, for example try to "SAVE PRINT", you will get an error back from the CFFA. Not a big deal, but it should be a pretty easy fix.

Posts: 31
Joined: Sep Fri 14, 2007 9:38 pm
Location: New Jersey

Postby cowgod » May Wed 28, 2008 10:52 pm

Been busy with work the past couple of weeks, but I finally got a chance to pack up the source code. I'm not 100% happy with it, but it'll do for now.

I've been doing the builds using the ca65 assembler (from the cc65 package) under Linux. There's a makefile in the tarball which will build and link the binary image.

The source is split into a few files:

applesoft-lite.s is the main Applesoft code, with comments from the S-C DocuMentor. I didn't change these comments at all really, they're even still all in uppercase. Mainly the changes were just removing code. I did apply a few bug fixes/optimzations that are mentioned in the 'DocuMentor'.

cffa1.s is the new code to do CFFA1 I/O

io.s replaces the Apple II monitor GETLN/RDKEY routines used by Applesoft. Also has a few small I/O routines moved from the main code to save a little space.

zeropage.s is the zero page locations used by Applesoft. This file is .included by the other files.

wozmon.s is the monitor, no modifications here, just included to make building the ROM image easier.

macros.s contains macros (really just one macro, actually) used in the main code

Also, here's a binary built from the current source. There should be no functional changes since the last build. I actually haven't tested this one myself yet.

Comments/complains/suggestions/bug reports/etc welcome :)

Posts: 31
Joined: Sep Fri 14, 2007 9:38 pm
Location: New Jersey

Re: Anybody thought of a light port of Applesoft?

Postby jasonrp7743 » May Sun 29, 2016 9:00 pm

Hi All,
I've built applesoft-lite from the source code (v.4) Tom posted. I also downloaded all binaries for this version that he hosted on his site (a ROM one that replaces Integer BASIC and Krusader, from $E000-$FEFF, and one to load into RAM at $6000)

Using Pom1 emulator, the RAM version at $6000 works very nicely. However, I'd like to run this software directly out of ROM. The ROM versions I've seen (including the R1 version posted early in this thread) will not work using POM1, unless you use the starting address +$3, so for example $E003. Even when you do this (this must be warm start?) you get a prompt, but not a stable basic like the RAM version.. I've assembled from the source, and I get this same result.

I built a 65C02 based single board computer, quite similar to the Replica1, but with glue logic to address 2, 8K areas of a 32K EEPROM. One area is from $E000 to $FFFF, and one is from $8000 to $9FFF. In ROM currently, I have Integer BASIC, Krusader 65C02 version 1.3, and Woz monitor, in the standard places in $E000-$FFFF. I'd like to put the Applesoft BASIC in $8000.

Here's my question: Has anyone assembled Applesoft-lite v.4 from source, and gotten it to run in POM1 without the issues I list above? I plan to try it on my actual hardware, but I previously only had one ROM, and I need to order EEPROMs to try it on the real machine..
Posts: 22
Joined: Aug Fri 14, 2015 10:08 pm

Re: Anybody thought of a light port of Applesoft?

Postby jac_goudsmit » Jun Sat 04, 2016 1:36 am

Hey this could be fun. I don't know much about this "AppleSoft" thing but I'll learn.

I was able to run the "applesoft-r1.bin" and "applesoft-lite-0.4.bin" images on my L-Star project ( but only on the L-Star Plus version which has an SRAM chip to provide 32K (or even more) of RAM. On the standard L-Star with no SRAM chip (only the Propeller, EEPROM and 65C02) it doesn't work, probably because you have something hard-coded in there that expects memory between $4000 and $7FFF. The Propeller only has enough space to emulate 16K of RAM unless it gets help from the SRAM chip.

At least I don't have to burn an EPROM, I just rebuild and download the Propeller firmware :)

Screenshot 2016-06-03 23.25.44.png
Screenshot 2016-06-03 23.25.44.png (13.16 KiB) Viewed 32671 times

User avatar
Posts: 74
Joined: Jun Mon 14, 2010 3:22 pm
Location: Rancho Cucamonga, California

Re: Anybody thought of a light port of Applesoft?

Postby jasonrp7743 » Jun Mon 06, 2016 5:50 pm

That's really cool, Jac!

I think I'm going to read up on your L-Star project!
Posts: 22
Joined: Aug Fri 14, 2015 10:08 pm


Return to Software

Who is online

Users browsing this forum: No registered users and 1 guest