This was my first large assembly program, written in the summer of 1983 (at the age of 16)
The original program was written in BBC BASIC using the build-in assembler. Because the source has to be in memory to assemble, this limits the maximum size of any assembly program built using BBC BASIC. As work around I split the code into modules each chain-loaded as overlays.
This new version is the modern re-work of that original code. My ambition all those years ago was to turn my FORTH into a ROM image, sadly I never achieved this at the time.
The completed project is now available on github. (https://github.com/perfectconsulting/GSFORTH-ROM)
The performance gains over am indirect threaded model on a 6502 are substantial. GSFORTH is currently the only subroutine thread FORTH for the BBC Micro, and in most use cases is approximately twice as fast as Acorn FORTH or MultiFORTH.
Please forgive me if the code is a little messy in places...I have not written any BBC assembly for over 25 years.
If anyone want to try it, please let me know and I put together a getting started guide.
Got a programming project in mind? Tell everyone about it!
4 posts • Page 1 of 1
This is very interesting to see. My Forth skills are too rusty to give it a workout - not that they were all that great in the first place - but it's always nice to see new language implementations. Well done!