Written in 1976, Microsoft BASIC for the 8 bit MOS 6502 has been available for virtually every 6502-based computer. Also for the SBC’s on this site: KIM-1, SYM-1, AIM 65 and as a port of Applesoft on the Apple 1.
Binary versions and manuals are on the pages dedicated to these machines:
Sources of early Microsoft Basic on 6502 are available on pagetable blog by Michael Steil
- Original source for a cross assembler on a PDP-10
- Disassembled from dumped binaries, commented and assembled and linked to 100% original binaries
Build binaries from source on a Linux system (Raspberry PI OS)
First install CC65 package, the assembler and linker are required.
You need the CC65 package, a C and Macro assembler and linker for the 6502.
https://github.com/cc65/wiki/wiki is broken, https://cc65.github.io/getting-started.html is fine.
git clone https://github.com/cc65/cc65.git cd cc65 make sudo make avail
Now get the MS Basic source and assemble the binaries
https://github.com/mist64/msbasic git clone https://github.com/mist64/msbasic cd msbasic ./make.sh cd tmp ls
and you will see a directory of binaries (.bin), symbol table (.lbl) and object files (.o)
Compare the binary files with the binary files in the msbasic/orig folder and you will see hopefullyy they are identical!
It is not only nice to see the source, now you are able to customize a Microsoft Basic to your likings.
Steps as advised in the pagetable description:
1. Create a
2. Adapt the make file for the new target.
3. Change the platform specific source files
and assemble again.
For example, the KB9 Basic can be changed:
- Character in//out to a serial device
- Control-C handler update
- Remove the ROR workaround
- Save/load to another storage device
- See the KIM Kenner articles for patches on KB9 Basic
An example is this post by Gordon Henderson who made a serial interfaced Commodore Basic by creating a new variant and tweaking some conditionals, replacing the screen editor with the line editing interface of older versions.
KB-9 stands for Microsoft Basic V1.1 for the KIM-1 with 9 digits precision. .
The original KIM-1 KB9 Microsoft Basic V1.1, audio wave, binary and papertape format