!pr3

Some Small Patches..............................Bill Morgan

We've had several calls requesting the patch addresses for a couple of features in the S-C Macro Assemblers.


Ansert?

In Version 1.1 of the Macro Assembler, Bob changed the CTRL-I (Insert) command in the EDIT mode to CTRL-A (for ADD).  This was done because the Apple //e keyboard has the TAB key, which generates a CTRL-I code.  It didn't seem to make much sense to have the TAB key do an insert operation, so he added a clear- to-next-tab-stop function for CTRL-I.

Well, a lot of people don't have //e's, or don't much care about the TAB key.  A lot of us are used to CTRL-I for Insert, and would like to keep it that way.

The CTRL-A character ($81) is at $1C87 in the $1000 version, and at $DCB7 in the $D000 version.  Just change that byte to a $89, and you'll have your good old CTRL-I back.  If you want to keep the clear-to-tab-stop function, you can change the $89 at $1CC6 ($DCC6) to a $81.  That will make CTRL-A do the clear-to- tab.


.BS Filler Byte

The directive .BS <expr> skips over <expr> bytes when you are assembling to memory, and sends <expr> zero bytes to the target file when you are assembling to disk.  Several people have asked how to change the zero to some other value.

For example, a freshly-erased EPROM contains all $FF bytes.  When you burn data into the chip, you actually write in just the zero bits.  If you are assembling code to be written into an EPROM, you want any fill bytes to be $FF, so you can add patches later without having to erase and re-write the whole chip.

The following table shows the addresses of the zero byte in the various versions of the Macro Assembler.  Just change the indicated byte to the value you want to use for filler.

!lm+5
Version  1.0  |              1.1
              | 40-col   //e    Videx   STB
 $1000   2D43 |  2D62    2D48   2E37    2E60
 $D000   EE8F |  EE86    EE62   EF5A    EF83
