WimBasic is an extension for CBM Basic V2 on the famous Commodore VIC20. It is built from the Extended Basic Level II extension that was published by Michael Krause and Andreas Dripke in 1982.
What began as simply patching the ROM-file, ended up as a nearly complete rewrite of this little gem. A lot of bugs and shortcomings were fixed and a lot of optimizations were done.
From ExBasic, the function DEC() was removed and the following was added:
In total, WimBasic adds 50 new commands and 14 new functions to your VIC20. It enhances existing commands and functions, such as RESTORE and RND().
All new functions and commands:
In addition to this, WimBasic delivers
The project is finished in the fall of 2012. I managed to optimize the original Extended Basic Level II by approximately 8% in size and then used around 550 bytes for the new and improved features.
WimBasic is now 8112 bytes in size and is built to run in BLK5, just like its predecessor.
Thanks to forum members on Denial for support and inspiration.
To download WimBasic, click here: wimbasic.zip
The ZIP-file contains two .ASM files, two .PRG files and two .CART files. The wimbasic.* files contain the 6502-version, whereas the wbc02.* files contain the 65C02 version. The 65C02 version is 185 bytes shorter and a little faster at some points (e.g. RENUM is 4% faster). Both versions have the same functionality.
The .PRGs and the .CARTs are padded with $ff. The .CART files do not have the load address prepended.
If you have RAM in BLK5: The .PRG must be loaded with ,<dev>,1 so that it ends up in $A000-$BFFF. After that, a SYS64802 must be performed so WimBasic will start automatically. The screen will look like this:
...with a blinking cursor of course ;-)...
If you do not have RAM in BLK5, make sure you burn an 8KB EPROM with the .CART file and hook it up. Or acquire a Final Expansion 3 or a MegaCart.
Some sample programs can be downloaded from: wb_samples.zip