<< Previous Message Main Index Next Message >>
<< Previous Message in Thread This Month Next Message in Thread >>
Date   : Wed, 16 Nov 2011 00:19:23 +0000 (WET)
From   : BBCMICRO@... (Peter Coghlan)
Subject: Assembling large files

>>
>> See http://mdfs.net/Software/HADFS/Source/ for a
>> sample large project.
>>
>> JGH
>
>This leads to my second question - given that you are assembling outside 
>of BASIC's usual method, plus the ability to include other files 
>(nifty!), how do you resolve memory references so labels point to the 
>correct address?
>
>I was surprised, actually, by how small the ASSEM program is.
>

Not answering the question but on the subject of assembling large files:

Back in the day, I wrote a paged rom assembler specifically to be able to
assemble the source for a 16K paged rom on a model B with reasonable speed.
It borrowed heavily from BBC Basic but in the way that BBC Basic was Basic with
an assembler tacked on, this was supposed to be an assembler with bits of Basic
tacked on. It uses tokenised source and can do include files (even nested I
think). Editing is functionally similar to editing a Basic program except that
line numbers are not stored and are just provided to identify lines while
editing. Inserting or deleting lines is much faster than BBC Basic and blocks
of lines can be quickly moved, copied or deleted and there are find and change
commands. Error reporting is somewhat better than the Basic assembler.

Like a lot of things, it never quite got finished. However, there is enough
functionality there to assemble itself and to assemble a disassembled copy of
the OS. (There's even a command to generate labels for disassembled code!)

Regards,
Peter Coghlan.
<< Previous Message Main Index Next Message >>
<< Previous Message in Thread This Month Next Message in Thread >>