5 ms·
That approach uses DEBUG to do the assembly, and then you generate a string in QBASIC containing the assembled bytes. BBC BASIC had the assembler built in, so y
by tom_ 3y ago
That approach uses DEBUG to do the assembly, and then you generate a string in QBASIC containing the assembled bytes. BBC BASIC had the assembler built in, so you'd put the mnemonics in the program code and the interpreter would generate code for you.
One of the built-in variables dictated where the generated code would go, and there was a mechanism for doing 2-pass assembly to resolve forward references. Original manual section for this feature: https://archive.org/details/BBCUG/page/n439/mode/2up https://archive.org/details/BBCUG/page/n439/mode/2up
The facility was a bit primitive, even by the standards of the time, chiefly because code and output and symbols all had to live in memory at once, so you'd inevitably need some form of multi-part setup. But you could (and many did) use it to actually write decent-sized programs, even if it probably was a bit annoying: https://www.bbcelite.com/about_site/about_this_project.html https://www.bbcelite.com/about_site/about_this_project.html