Facilitate cross compilation, and simplify own makefile
- 18 Jan, 2023 4 commits
-
-
Ben Avison authored
-
Ben Avison authored
Also strip dependencies in `!MkClean` now that we create some, and set up `.gitignore` appropriately. Requires RiscOS/BuildSys!32
03217a51 -
Ben Avison authored
This prevents Squish from outputting an initial line containing `REM>` and the output filename - in other words, the default pathname for the `SAVE` statement. This is useful for a number of reasons: * It is arguably a waste of space, since a Squished version of a program should ideally never be hand-edited. * The output pathname used in ROM builds bears no relationship to anything on the target device (currently, the installed version of the Alarm and Chars programs both start with `REM>Resources.!RunImage` which relates to the layout of the source component directory tree). * It is desirable for cross-compilation and native builds to be binary identical, so having a host pathname embedded in the output is unhelpful. We could have added an option to override the pathname used, to ensure consistency, but it's easier simply to omit the relevant line.
96fc4bfd -
Ben Avison authored
Detail: * Memory allocation is done using `DIM` instead of assembler * Token lookup is achieved using hard-coded `DATA` statements rather than calling the interpreter * Linked-list assembly code reimplemented in BASIC * Detect interpreter by scanning `REPORT$` on entry * When running on Brandy: + Arguments are fetched from `ARGV$()` rather than SWI `OS_GetEnv` + Numbers are parsed from `swis.h` using `EVAL` rather than SWI `OS_ReadUnsigned` Admin: Requires Matrix Brandy 1.22.10 or later
521826c4
-
- 17 Sep, 2020 3 commits
-
-
Ben Avison authored
Also correct the comments describing the meaning of `adr` and `fadr`
23071f4f -
Ben Avison authored
When the `-literal` switch was not given, one `IF` statement would attempt to evaluate `PTR#0` (i.e. the pointer of an invalid file handle). This is reported as an error when running under Brandy BASIC.
b962b9e7 -
Ben Avison authored
The source code had erroneous space characters before the `#` character. This was removed during the `CRUNCH` that happened during the build process, but this meant that the behaviour of the raw source code could not be compared because it could not be run.
6aef156c
-