Building SuperBASIC itself: Difference between revisions
(Created page with "***Using the Git bash command, change the OS: `export OS=cygwin`.*** I had to add the make command by following the instructions here: https://gist.github.com/evanwill/0207876c3243bbb6863e65ec5dc3f058#make. From ezwinports, use the **make without guile** zip file. @mgr42 [said in Discord](https://discord.com/channels/691915291721990194/1028045613104910368/1191727753205129227) "*I was able to build superbasic from source using the following process:*" - Inst...") |
(Removed markdown code.) |
||
Line 1: | Line 1: | ||
= '''Building SuperBASIC from Scratch''' = | |||
If you are using Git bash for a command-line (on MS Windows), you need to tell bash that you're not a real Linux machine: | |||
export OS=cygwin | |||
I had to add the make command by following the instructions here: https://gist.github.com/evanwill/0207876c3243bbb6863e65ec5dc3f058#make. From ezwinports, use the '''make without guile''' zip file. | |||
@mgr42 [said in Discord](https://discord.com/channels/691915291721990194/1028045613104910368/1191727753205129227) "''I was able to build superbasic from source using the following process:''" | |||
* Install python-is-python3 on your Debian or Ubuntu machine | |||
* Install `64tass`. The version available in the Ubuntu repos compiles the source without errors. | |||
* Execute `git clone https://github.com/FoenixRetro/f256-superbasic.git` | |||
* Execute `git clone https://github.com/WartyMN/Foenix-F256JR-bootscreens.git` | |||
* Change into the directory `f256-superbasic/source` | |||
* Execute `make` | |||
* If this succeeds there will be an updated file called `basic.rom` in the directory `f256-superbasic/source/build` | |||
* Change into the directory `f256-superbasic/source/build` | |||
* Execute the command `python splitrom.py` | |||
* If this succeeds there will be 4 updated files called `sb01.bin`, `sb02.bin`, `sb03.bin` and `sb04.bin` which can be flashed to the F256 Jr./K | |||
The output of make: | The output of make: | ||
Line 20: | Line 21: | ||
I modified the 00start.asm file on line #30 to change the F256Header from "basic" to "sbasic", this way it shows up in the system commands as a separate command. | I modified the 00start.asm file on line #30 to change the F256Header from "basic" to "sbasic", this way it shows up in the system commands as a separate command. | ||
F256Header: | |||
.text $f2,$56 ; Signature | |||
.byte 4 ; 4 blocks | |||
.byte 4 ; mount at $8000 | |||
.word Boot ; Start here | |||
.byte 1 ; version | |||
.byte 0 ; reserved | |||
.byte 0 ; reserved | |||
.byte 0 ; reserved | |||
.text "sbasic",0 ; name of program. | |||
.text 0 ; arguments | |||
.text "The SuperBASIC environment.",0 ; description | |||
After splitting the ==basic.rom== into bins, I then flashed with this CSV: | After splitting the ==basic.rom== into bins, I then flashed with this CSV: | ||
08,sb01.bin | |||
08,sb01.bin | 09,sb02.bin | ||
09,sb02.bin | 0a,sb03.bin | ||
0a,sb03.bin | 0b,sb04.bin | ||
0b,sb04.bin | After reboot, type `/sbasic`. | ||
`` | |||
Type the following in the F256K in 'sbasic' | |||
print ?(8+4) | |||
This command is short for print peek(12). | |||
Result should be `'''72'''`. |
Revision as of 12:36, 22 November 2024
Building SuperBASIC from Scratch
If you are using Git bash for a command-line (on MS Windows), you need to tell bash that you're not a real Linux machine:
export OS=cygwin
I had to add the make command by following the instructions here: https://gist.github.com/evanwill/0207876c3243bbb6863e65ec5dc3f058#make. From ezwinports, use the make without guile zip file.
@mgr42 [said in Discord](https://discord.com/channels/691915291721990194/1028045613104910368/1191727753205129227) "I was able to build superbasic from source using the following process:"
- Install python-is-python3 on your Debian or Ubuntu machine
- Install `64tass`. The version available in the Ubuntu repos compiles the source without errors.
- Execute `git clone https://github.com/FoenixRetro/f256-superbasic.git`
- Execute `git clone https://github.com/WartyMN/Foenix-F256JR-bootscreens.git`
- Change into the directory `f256-superbasic/source`
- Execute `make`
- If this succeeds there will be an updated file called `basic.rom` in the directory `f256-superbasic/source/build`
- Change into the directory `f256-superbasic/source/build`
- Execute the command `python splitrom.py`
- If this succeeds there will be 4 updated files called `sb01.bin`, `sb02.bin`, `sb03.bin` and `sb04.bin` which can be flashed to the F256 Jr./K
The output of make:
I modified the 00start.asm file on line #30 to change the F256Header from "basic" to "sbasic", this way it shows up in the system commands as a separate command.
F256Header: .text $f2,$56 ; Signature .byte 4 ; 4 blocks .byte 4 ; mount at $8000 .word Boot ; Start here .byte 1 ; version .byte 0 ; reserved .byte 0 ; reserved .byte 0 ; reserved .text "sbasic",0 ; name of program. .text 0 ; arguments .text "The SuperBASIC environment.",0 ; description
After splitting the ==basic.rom== into bins, I then flashed with this CSV:
08,sb01.bin 09,sb02.bin 0a,sb03.bin 0b,sb04.bin
After reboot, type `/sbasic`.
Type the following in the F256K in 'sbasic'
print ?(8+4)
This command is short for print peek(12).
Result should be `72`.