News for hackers. Stuff that matters.
Re:Fully documented source code for Lander on the Acorn Arch... by mellosouls on Tuesday September 24, 2024 @11:12AM (#41637399)
One of the coolest things about BBC BASIC was the ability to slot inline assembly, and (I think?) reference the same variables in both modes as in the code on the op site.

[BASIC]

FOR I% = 1 TO (TILES_Z - 1) / 2

[

[ASSEMBLY]

  OPT    pass%

  EQUB   &E3, TILES_X               \ Tile row data (even)
  EQUB   &E4, TILES_X               \ Tile row data (odd)
]

[BASIC AGAIN]

NEXT

[

https://lander.bbcelite.com/source/all/lander_a.html#landsca...

Re:Fully documented source code for Lander on the Acorn Arch... by MarkMoxon on Tuesday September 24, 2024 @11:45AM (#41637805)
I love the BASIC assembler on the BBC Micro and Archimedes. It is a work of art.

Incidentally, the fully buildable Lander source code in the website's accompanying git repository is also in BBC BASIC format - as an attempt to imagine what the original source might have looked like.

A Python script converts it to vasm-compatible format for compiling, but you can also build it on a real Archimedes if you want to. See https://lander.bbcelite.com/about_site/building_lander.html for details.

Re:Fully documented source code for Lander on the Acorn Arch... by Sophira on Tuesday September 24, 2024 @12:17PM (#41638149)
To clarify for anyone else reading this: BBC BASIC had an assembler built in so that you could write in-line assembly language to be assembled at a given memory location, and the source is in the format used by the inline assembler.

It doesn't mean there's a port of the game written completely in BASIC!

Re:Fully documented source code for Lander on the Acorn Arch... by eschneider on Tuesday September 24, 2024 @05:55PM (#41641365)
Oh the envy. The rest of us shlubs on other platforms had to hand assemble and poke it into memory. Ugh.