!pr0
A PAUSE Directive...................................Mike Laumer

Maybe your source code has outgrown even two disks and you need to know when to swap disks during assembly.  Maybe you're using a single-sheet printer and need to change pages.  Maybe you want to change typefaces on your letter-quality printer.  Maybe you want to check the address of a routine or variable, without having to constantly watch the screen until it comes along.  For whatever reason, you need to have the S-C Macro Assembler pause during assembly.  Here is a new .US directive to let you do just that!

With this directive, you can insert a line like this anywhere in your code:

     1300        .US SWAP SOURCE DISK

In each pass, when the assembler encounters this line it will pause, display "SWAP SOURCE DISK" in inverse text at the bottom of the screen, beep twice, and wait for a keypress.  You can take whatever action you need to, and press any key to resume assembly.

The listing is for the Language Card version of the assembler.  If you are using the main memory version, you don't need to worry about write-enabling and -protecting, so you can just delete lines 1220, 1230 and 1280.

The values for the .EQ statements in lines 1170-1180 depend on whether you are using the Main Memory or the Language Card assembler, and whether you have Version 1.0 or 1.1.  Here's a table of the values for US.VCTR and SC.CMNT:

!lm+10
           Main   Language
          Memory    Card    Version
          ------  --------  -------

US.VCTR   $100C    $D00C     Both

SC.CMNT   $1FD8    $E124     1.0
          $1FCA    $E0E4     1.1
!lm-10

That's all there is to it!  Now you don't have to constantly stare at the screen during those long assemblies.  Now you can sit back and wait for your Apple to call you when it needs you.
