changeset 2024:e396d4f24b27

Ran each file through pretty print
author boisy
date Tue, 14 Mar 2006 12:20:57 +0000
parents dbaeafb56535
children c03acf76ace5
files defs/os9defs defs/pipedefs defs/rbfdefs defs/scfdefs defs/systype defs/vdgdefs defs/vtiodefs defs/vtiodefs_cc3
diffstat 8 files changed, 2286 insertions(+), 2295 deletions(-) [+]
line wrap: on
line diff
--- a/defs/os9defs	Tue Mar 14 04:09:31 2006 +0000
+++ b/defs/os9defs	Tue Mar 14 12:20:57 2006 +0000
@@ -1,6 +1,6 @@
-         IFNE  OS9DEFS-1
+               IFNE      OS9DEFS-1
 
-OS9DEFS  set   1
+OS9DEFS        SET       1
 
 ********************************************************************
 * OS9Defs - NitrOS-9 System Definitions
@@ -59,720 +59,720 @@
 *          2003/11/05  Robert Gault
 * Fixed MouseInf. Made it rmb 2 as it should be. Also changes to init and cc3io.
 *
-*	   2005/11/02  P.Harvey-Smith
+*	       2005/11/02  P.Harvey-Smith
 * Added definitions for boot areas on Dragon computers.
 *
-*	   2006/03/03  Boisy G. Pitre
+*	       2006/03/03  Boisy G. Pitre
 * Added F$Debug and D.DbgMem areas, common to all levels of NitrOS-9
 
-         nam   OS9Defs
-         IFEQ  Level-1
-         ttl   NitrOS-9 Level 1 System Symbol Definitions
-         ELSE
-         IFEQ  Level-2
-         ttl   NitrOS-9 Level 2 System Symbol Definitions
-         ELSE
-         ttl   NitrOS-9 Level 3 System Symbol Definitions
-         ENDC
-         ENDC
+               NAM       OS9Defs
+               IFEQ      Level-1
+               TTL       NitrOS-9 Level 1 System Symbol Definitions
+               ELSE      
+               IFEQ      Level-2
+               TTL       NitrOS-9 Level 2 System Symbol Definitions
+               ELSE      
+               TTL       NitrOS-9 Level 3 System Symbol Definitions
+               ENDC      
+               ENDC      
 
 * Common definitions
-true     equ   1          useful name
-false    equ   0          useful name
+true           EQU       1                   useful name
+false          EQU       0                   useful name
 
-         pag
+               PAG       
 *****************************************
 * System Service Request Code Definitions
 *
-         org   0
-F$Link   rmb   1          Link to Module
-F$Load   rmb   1          Load Module from File
-F$UnLink rmb   1          Unlink Module
-F$Fork   rmb   1          Start New Process
-F$Wait   rmb   1          Wait for Child Process to Die
-F$Chain  rmb   1          Chain Process to New Module
-F$Exit   rmb   1          Terminate Process
-F$Mem    rmb   1          Set Memory Size
-F$Send   rmb   1          Send Signal to Process
-F$Icpt   rmb   1          Set Signal Intercept
-F$Sleep  rmb   1          Suspend Process
-F$SSpd   rmb   1          Suspend Process
-F$ID     rmb   1          Return Process ID
-F$SPrior rmb   1          Set Process Priority
-F$SSWI   rmb   1          Set Software Interrupt
-F$PErr   rmb   1          Print Error
-F$PrsNam rmb   1          Parse Pathlist Name
-F$CmpNam rmb   1          Compare Two Names
-F$SchBit rmb   1          Search Bit Map
-F$AllBit rmb   1          Allocate in Bit Map
-F$DelBit rmb   1          Deallocate in Bit Map
-F$Time   rmb   1          Get Current Time
-F$STime  rmb   1          Set Current Time
-F$CRC    rmb   1          Generate CRC ($17)
+               ORG       0
+F$Link         RMB       1                   Link to Module
+F$Load         RMB       1                   Load Module from File
+F$UnLink       RMB       1                   Unlink Module
+F$Fork         RMB       1                   Start New Process
+F$Wait         RMB       1                   Wait for Child Process to Die
+F$Chain        RMB       1                   Chain Process to New Module
+F$Exit         RMB       1                   Terminate Process
+F$Mem          RMB       1                   Set Memory Size
+F$Send         RMB       1                   Send Signal to Process
+F$Icpt         RMB       1                   Set Signal Intercept
+F$Sleep        RMB       1                   Suspend Process
+F$SSpd         RMB       1                   Suspend Process
+F$ID           RMB       1                   Return Process ID
+F$SPrior       RMB       1                   Set Process Priority
+F$SSWI         RMB       1                   Set Software Interrupt
+F$PErr         RMB       1                   Print Error
+F$PrsNam       RMB       1                   Parse Pathlist Name
+F$CmpNam       RMB       1                   Compare Two Names
+F$SchBit       RMB       1                   Search Bit Map
+F$AllBit       RMB       1                   Allocate in Bit Map
+F$DelBit       RMB       1                   Deallocate in Bit Map
+F$Time         RMB       1                   Get Current Time
+F$STime        RMB       1                   Set Current Time
+F$CRC          RMB       1                   Generate CRC ($17)
 
-         IFGT  Level-1
+               IFGT      Level-1
 
 * NitrOS-9 Level 2 system calls
-F$GPrDsc rmb   1          Get Process Descriptor copy ($18)
-F$GBlkMp rmb   1          Get System Block Map copy ($19)
-F$GModDr rmb   1          Get Module Directory copy ($1A)
-F$CpyMem rmb   1          Copy External Memory ($1B)
-F$SUser  rmb   1          Set User ID number ($1C)
-F$UnLoad rmb   1          Unlink Module by name ($1D)
-F$Alarm  rmb   1          Color Computer 3 Alarm Call ($1E)
-         rmb   2          Reserved - For overlap of other systems ($1F)
-F$NMLink rmb   1          Color Computer 3 Non-Mapping Link ($21)
-F$NMLoad rmb   1          Color Computer 3 Non-Mapping Load ($22)
+F$GPrDsc       RMB       1                   Get Process Descriptor copy ($18)
+F$GBlkMp       RMB       1                   Get System Block Map copy ($19)
+F$GModDr       RMB       1                   Get Module Directory copy ($1A)
+F$CpyMem       RMB       1                   Copy External Memory ($1B)
+F$SUser        RMB       1                   Set User ID number ($1C)
+F$UnLoad       RMB       1                   Unlink Module by name ($1D)
+F$Alarm        RMB       1                   Color Computer 3 Alarm Call ($1E)
+               RMB       2                   Reserved - For overlap of other systems ($1F)
+F$NMLink       RMB       1                   Color Computer 3 Non-Mapping Link ($21)
+F$NMLoad       RMB       1                   Color Computer 3 Non-Mapping Load ($22)
 
-         ELSE
+               ELSE      
 
 * NitrOS-9 Level 1 system call padding
-         rmb   11
-         
-         ENDC
-         
-F$Debug  rmb   1          Drop the system into the debugger ($23)
+               RMB       11
+
+               ENDC      
+
+F$Debug        RMB       1                   Drop the system into the debugger ($23)
+
+               IFGT      Level-1
 
-         IFGT  Level-1
-         
-         org   $25
-F$TPS    rmb   1          Return System's Ticks Per Second
-F$TimAlm rmb   1          CoCo individual process alarm call
+               ORG       $25
+F$TPS          RMB       1                   Return System's Ticks Per Second
+F$TimAlm       RMB       1                   CoCo individual process alarm call
 
-         ENDC
+               ENDC      
 
-         org   $27        Beginning of System Reserved Calls
+               ORG       $27                 Beginning of System Reserved Calls
 * NitrOS-9 common system calls
-F$VIRQ   rmb   1          Install/Delete Virtual IRQ
-F$SRqMem rmb   1          System Memory Request
-F$SRtMem rmb   1          System Memory Return
-F$IRQ    rmb   1          Enter IRQ Polling Table
-F$IOQu   rmb   1          Enter I/O Queue
-F$AProc  rmb   1          Enter Active Process Queue
-F$NProc  rmb   1          Start Next Process
-F$VModul rmb   1          Validate Module
-F$Find64 rmb   1          Find Process/Path Descriptor
-F$All64  rmb   1          Allocate Process/Path Descriptor
-F$Ret64  rmb   1          Return Process/Path Descriptor
-F$SSvc   rmb   1          Service Request Table Initialization
-F$IODel  rmb   1          Delete I/O Module
+F$VIRQ         RMB       1                   Install/Delete Virtual IRQ
+F$SRqMem       RMB       1                   System Memory Request
+F$SRtMem       RMB       1                   System Memory Return
+F$IRQ          RMB       1                   Enter IRQ Polling Table
+F$IOQu         RMB       1                   Enter I/O Queue
+F$AProc        RMB       1                   Enter Active Process Queue
+F$NProc        RMB       1                   Start Next Process
+F$VModul       RMB       1                   Validate Module
+F$Find64       RMB       1                   Find Process/Path Descriptor
+F$All64        RMB       1                   Allocate Process/Path Descriptor
+F$Ret64        RMB       1                   Return Process/Path Descriptor
+F$SSvc         RMB       1                   Service Request Table Initialization
+F$IODel        RMB       1                   Delete I/O Module
 
-         IFGT  Level-1
+               IFGT      Level-1
 
-F$SLink  rmb   1          System Link
-F$Boot   rmb   1          Bootstrap System
-F$BtMem  rmb   1          Bootstrap Memory Request
-F$GProcP rmb   1          Get Process ptr
-F$Move   rmb   1          Move Data (low bound first)
-F$AllRAM rmb   1          Allocate RAM blocks
-F$AllImg rmb   1          Allocate Image RAM blocks
-F$DelImg rmb   1          Deallocate Image RAM blocks
-F$SetImg rmb   1          Set Process DAT Image
-F$FreeLB rmb   1          Get Free Low Block
-F$FreeHB rmb   1          Get Free High Block
-F$AllTsk rmb   1          Allocate Process Task number
-F$DelTsk rmb   1          Deallocate Process Task number
-F$SetTsk rmb   1          Set Process Task DAT registers
-F$ResTsk rmb   1          Reserve Task number
-F$RelTsk rmb   1          Release Task number
-F$DATLog rmb   1          Convert DAT Block/Offset to Logical
-F$DATTmp rmb   1          Make temporary DAT image (Obsolete)
-F$LDAXY  rmb   1          Load A [X,[Y]]
-F$LDAXYP rmb   1          Load A [X+,[Y]]
-F$LDDDXY rmb   1          Load D [D+X,[Y]]
-F$LDABX  rmb   1          Load A from 0,X in task B
-F$STABX  rmb   1          Store A at 0,X in task B
-F$AllPrc rmb   1          Allocate Process Descriptor
-F$DelPrc rmb   1          Deallocate Process Descriptor
-F$ELink  rmb   1          Link using Module Directory Entry
-F$FModul rmb   1          Find Module Directory Entry
-F$MapBlk rmb   1          Map Specific Block
-F$ClrBlk rmb   1          Clear Specific Block
-F$DelRAM rmb   1          Deallocate RAM blocks
-F$GCMDir rmb   1          Pack module directory
-F$AlHRAM rmb   1          Allocate HIGH RAM Blocks
+F$SLink        RMB       1                   System Link
+F$Boot         RMB       1                   Bootstrap System
+F$BtMem        RMB       1                   Bootstrap Memory Request
+F$GProcP       RMB       1                   Get Process ptr
+F$Move         RMB       1                   Move Data (low bound first)
+F$AllRAM       RMB       1                   Allocate RAM blocks
+F$AllImg       RMB       1                   Allocate Image RAM blocks
+F$DelImg       RMB       1                   Deallocate Image RAM blocks
+F$SetImg       RMB       1                   Set Process DAT Image
+F$FreeLB       RMB       1                   Get Free Low Block
+F$FreeHB       RMB       1                   Get Free High Block
+F$AllTsk       RMB       1                   Allocate Process Task number
+F$DelTsk       RMB       1                   Deallocate Process Task number
+F$SetTsk       RMB       1                   Set Process Task DAT registers
+F$ResTsk       RMB       1                   Reserve Task number
+F$RelTsk       RMB       1                   Release Task number
+F$DATLog       RMB       1                   Convert DAT Block/Offset to Logical
+F$DATTmp       RMB       1                   Make temporary DAT image (Obsolete)
+F$LDAXY        RMB       1                   Load A [X,[Y]]
+F$LDAXYP       RMB       1                   Load A [X+,[Y]]
+F$LDDDXY       RMB       1                   Load D [D+X,[Y]]
+F$LDABX        RMB       1                   Load A from 0,X in task B
+F$STABX        RMB       1                   Store A at 0,X in task B
+F$AllPrc       RMB       1                   Allocate Process Descriptor
+F$DelPrc       RMB       1                   Deallocate Process Descriptor
+F$ELink        RMB       1                   Link using Module Directory Entry
+F$FModul       RMB       1                   Find Module Directory Entry
+F$MapBlk       RMB       1                   Map Specific Block
+F$ClrBlk       RMB       1                   Clear Specific Block
+F$DelRAM       RMB       1                   Deallocate RAM blocks
+F$GCMDir       RMB       1                   Pack module directory
+F$AlHRAM       RMB       1                   Allocate HIGH RAM Blocks
 
 * Alan DeKok additions
-F$ReBoot rmb   1          Reboot machine (reload OS9Boot) or drop to RSDOS
-F$CRCMod rmb   1          CRC mode, toggle or report current status
-F$XTime  rmb   1          Get Extended time packet from RTC (fractions of second)
-F$VBlock rmb   1          Verify modules in a block of memory, add to module directory
+F$ReBoot       RMB       1                   Reboot machine (reload OS9Boot) or drop to RSDOS
+F$CRCMod       RMB       1                   CRC mode, toggle or report current status
+F$XTime        RMB       1                   Get Extended time packet from RTC (fractions of second)
+F$VBlock       RMB       1                   Verify modules in a block of memory, add to module directory
 
-         ENDC
+               ENDC      
 
 *
 * Numbers $70 through $7F are reserved for user definitions
 *
-         org   $70
+               ORG       $70
 
-	     IFEQ  Level-1
+               IFEQ      Level-1
 
-         rmb   16         Reserved for user definition
+               RMB       16                  Reserved for user definition
 
-         ELSE
+               ELSE      
 
-F$RegDmp rmb   1          Ron Lammardo's debugging register dump
-F$NVRAM  rmb   1          Non Volatile RAM (RTC battery backed static) read/write
+F$RegDmp       RMB       1                   Ron Lammardo's debugging register dump
+F$NVRAM        RMB       1                   Non Volatile RAM (RTC battery backed static) read/write
 
-         rmb   $80-.      Reserved for user definitions
-         ENDC
+               RMB       $80-.               Reserved for user definitions
+               ENDC      
 
-         pag
+               PAG       
 **************************************
 * I/O Service Request Code Definitions
 *
-         org   $80
-I$Attach rmb   1          Attach I/O Device
-I$Detach rmb   1          Detach I/O Device
-I$Dup    rmb   1          Duplicate Path
-I$Create rmb   1          Create New File
-I$Open   rmb   1          Open Existing File
-I$MakDir rmb   1          Make Directory File
-I$ChgDir rmb   1          Change Default Directory
-I$Delete rmb   1          Delete File
-I$Seek   rmb   1          Change Current Position
-I$Read   rmb   1          Read Data
-I$Write  rmb   1          Write Data
-I$ReadLn rmb   1          Read Line of ASCII Data
-I$WritLn rmb   1          Write Line of ASCII Data
-I$GetStt rmb   1          Get Path Status
-I$SetStt rmb   1          Set Path Status
-I$Close  rmb   1          Close Path
-I$DeletX rmb   1          Delete from current exec dir
+               ORG       $80
+I$Attach       RMB       1                   Attach I/O Device
+I$Detach       RMB       1                   Detach I/O Device
+I$Dup          RMB       1                   Duplicate Path
+I$Create       RMB       1                   Create New File
+I$Open         RMB       1                   Open Existing File
+I$MakDir       RMB       1                   Make Directory File
+I$ChgDir       RMB       1                   Change Default Directory
+I$Delete       RMB       1                   Delete File
+I$Seek         RMB       1                   Change Current Position
+I$Read         RMB       1                   Read Data
+I$Write        RMB       1                   Write Data
+I$ReadLn       RMB       1                   Read Line of ASCII Data
+I$WritLn       RMB       1                   Write Line of ASCII Data
+I$GetStt       RMB       1                   Get Path Status
+I$SetStt       RMB       1                   Set Path Status
+I$Close        RMB       1                   Close Path
+I$DeletX       RMB       1                   Delete from current exec dir
 
 *******************
 * File Access Modes
 *
-READ.    equ   %00000001
-WRITE.   equ   %00000010
-UPDAT.   equ   READ.+WRITE.
-EXEC.    equ   %00000100
-PREAD.   equ   %00001000
-PWRIT.   equ   %00010000
-PEXEC.   equ   %00100000
-SHARE.   equ   %01000000
-DIR.     equ   %10000000
-ISIZ.    equ   %00100000
+READ.          EQU       %00000001
+WRITE.         EQU       %00000010
+UPDAT.         EQU       READ.+WRITE.
+EXEC.          EQU       %00000100
+PREAD.         EQU       %00001000
+PWRIT.         EQU       %00010000
+PEXEC.         EQU       %00100000
+SHARE.         EQU       %01000000
+DIR.           EQU       %10000000
+ISIZ.          EQU       %00100000
 
 **************
 * Signal Codes
 *
-         org   0
-S$Kill   rmb   1          Non-Interceptable Abort
-S$Wake   rmb   1          Wake-up Sleeping Process
-S$Abort  rmb   1          Keyboard Abort
-S$Intrpt rmb   1          Keyboard Interrupt
-S$Window rmb   1          Window Change
-S$Alarm  rmb   1          CoCo individual process' alarm signal
+               ORG       0
+S$Kill         RMB       1                   Non-Interceptable Abort
+S$Wake         RMB       1                   Wake-up Sleeping Process
+S$Abort        RMB       1                   Keyboard Abort
+S$Intrpt       RMB       1                   Keyboard Interrupt
+S$Window       RMB       1                   Window Change
+S$Alarm        RMB       1                   CoCo individual process' alarm signal
 
-         pag
+               PAG       
 **********************************
 * Status Codes for GetStat/GetStat
 *
-         org   0
-SS.Opt   rmb   1          Read/Write PD Options
-SS.Ready rmb   1          Check for Device Ready
-SS.Size  rmb   1          Read/Write File Size
-SS.Reset rmb   1          Device Restore
-SS.WTrk  rmb   1          Device Write Track
-SS.Pos   rmb   1          Get File Current Position
-SS.EOF   rmb   1          Test for End of File
-SS.Link  rmb   1          Link to Status routines
-SS.ULink rmb   1          Unlink Status routines
-SS.Feed  rmb   1          Issue form feed
-SS.Frz   rmb   1          Freeze DD. information
-SS.SPT   rmb   1          Set DD.TKS to given value
-SS.SQD   rmb   1          Sequence down hard disk
-SS.DCmd  rmb   1          Send direct command to disk
-SS.DevNm rmb   1          Return Device name (32-bytes at [X])
-SS.FD    rmb   1          Return File Descriptor (Y-bytes at [X])
-SS.Ticks rmb   1          Set Lockout honor duration
-SS.Lock  rmb   1          Lock/Release record
-SS.DStat rmb   1          Return Display Status (CoCo)
-SS.Joy   rmb   1          Return Joystick Value (CoCo)
-SS.BlkRd rmb   1          Block Read
-SS.BlkWr rmb   1          Block Write
-SS.Reten rmb   1          Retension cycle
-SS.WFM   rmb   1          Write File Mark
-SS.RFM   rmb   1          Read past File Mark
-SS.ELog  rmb   1          Read Error Log
-SS.SSig  rmb   1          Send signal on data ready
-SS.Relea rmb   1          Release device
-SS.AlfaS rmb   1          Return Alfa Display Status (CoCo, SCF/GetStat)
-SS.Attr  equ   SS.AlfaS   To serve 68K/RBF/SetStat only, thru NET
-SS.Break rmb   1          Send break signal out acia
-SS.RsBit rmb   1          Reserve bitmap sector (do not allocate in) LSB(X)=sct#
-         rmb   1          Reserved
-SS.FDInf equ   $20        To serve 68K/RBF/GetStat only, thru NET
-         rmb   4          Reserve $20-$23 for Japanese version (Hoshi)
-SS.SetMF rmb   1          Reserve $24 for Gimix G68 (Flex compatability?)
-SS.Cursr rmb   1          Cursor information for COCO
-SS.ScSiz rmb   1          Return screen size for COCO
-SS.KySns rmb   1          Getstat/SetStat for COCO keyboard
-SS.ComSt rmb   1          Getstat/SetStat for Baud/Parity
-SS.Open  rmb   1          SetStat to tell driver a path was opened
-SS.Close rmb   1          SetStat to tell driver a path was closed
-SS.HngUp rmb   1          SetStat to tell driver to hangup phone
-SS.FSig  rmb   1          New signal for temp locked files
-SS.DSize equ   SS.ScSiz   Return disk size (RBF GetStat)
-SS.VarSect equ SS.DStat   Variable Sector Size (RBF GetStat)
+               ORG       0
+SS.Opt         RMB       1                   Read/Write PD Options
+SS.Ready       RMB       1                   Check for Device Ready
+SS.Size        RMB       1                   Read/Write File Size
+SS.Reset       RMB       1                   Device Restore
+SS.WTrk        RMB       1                   Device Write Track
+SS.Pos         RMB       1                   Get File Current Position
+SS.EOF         RMB       1                   Test for End of File
+SS.Link        RMB       1                   Link to Status routines
+SS.ULink       RMB       1                   Unlink Status routines
+SS.Feed        RMB       1                   Issue form feed
+SS.Frz         RMB       1                   Freeze DD. information
+SS.SPT         RMB       1                   Set DD.TKS to given value
+SS.SQD         RMB       1                   Sequence down hard disk
+SS.DCmd        RMB       1                   Send direct command to disk
+SS.DevNm       RMB       1                   Return Device name (32-bytes at [X])
+SS.FD          RMB       1                   Return File Descriptor (Y-bytes at [X])
+SS.Ticks       RMB       1                   Set Lockout honor duration
+SS.Lock        RMB       1                   Lock/Release record
+SS.DStat       RMB       1                   Return Display Status (CoCo)
+SS.Joy         RMB       1                   Return Joystick Value (CoCo)
+SS.BlkRd       RMB       1                   Block Read
+SS.BlkWr       RMB       1                   Block Write
+SS.Reten       RMB       1                   Retension cycle
+SS.WFM         RMB       1                   Write File Mark
+SS.RFM         RMB       1                   Read past File Mark
+SS.ELog        RMB       1                   Read Error Log
+SS.SSig        RMB       1                   Send signal on data ready
+SS.Relea       RMB       1                   Release device
+SS.AlfaS       RMB       1                   Return Alfa Display Status (CoCo, SCF/GetStat)
+SS.Attr        EQU       SS.AlfaS            To serve 68K/RBF/SetStat only, thru NET
+SS.Break       RMB       1                   Send break signal out acia
+SS.RsBit       RMB       1                   Reserve bitmap sector (do not allocate in) LSB(X)=sct#
+               RMB       1                   Reserved
+SS.FDInf       EQU       $20                 To serve 68K/RBF/GetStat only, thru NET
+               RMB       4                   Reserve $20-$23 for Japanese version (Hoshi)
+SS.SetMF       RMB       1                   Reserve $24 for Gimix G68 (Flex compatability?)
+SS.Cursr       RMB       1                   Cursor information for COCO
+SS.ScSiz       RMB       1                   Return screen size for COCO
+SS.KySns       RMB       1                   Getstat/SetStat for COCO keyboard
+SS.ComSt       RMB       1                   Getstat/SetStat for Baud/Parity
+SS.Open        RMB       1                   SetStat to tell driver a path was opened
+SS.Close       RMB       1                   SetStat to tell driver a path was closed
+SS.HngUp       RMB       1                   SetStat to tell driver to hangup phone
+SS.FSig        RMB       1                   New signal for temp locked files
+SS.DSize       EQU       SS.ScSiz            Return disk size (RBF GetStat)
+SS.VarSect     EQU       SS.DStat            Variable Sector Size (RBF GetStat)
 
 * System Specific and User defined codes above $80
-         org   $80
-SS.AAGBf rmb   1          SetStat to Allocate Additional Graphic Buffer
-SS.SLGBf rmb   1          SetStat to Select a different Graphic Buffer
-SS.Mount rmb   1          Network 4 Mount Setstat
-SS.RdNet rmb   1          Read Raw Sector from Network 4 Omnidrive
-SS.MpGPB rmb   1          SetStat to request a Get/Put Buffer be mapped in workspace
-SS.Slots rmb   1          Network 4 slots? getstat
+               ORG       $80
+SS.AAGBf       RMB       1                   SetStat to Allocate Additional Graphic Buffer
+SS.SLGBf       RMB       1                   SetStat to Select a different Graphic Buffer
+SS.Mount       RMB       1                   Network 4 Mount Setstat
+SS.RdNet       RMB       1                   Read Raw Sector from Network 4 Omnidrive
+SS.MpGPB       RMB       1                   SetStat to request a Get/Put Buffer be mapped in workspace
+SS.Slots       RMB       1                   Network 4 slots? getstat
 
-         IFGT  Level-1
+               IFGT      Level-1
 
 * Level 2 Windowing
-SS.WnSet rmb   1          Set up High Level Windowing Information
-SS.MnSel rmb   1          Request High level Menu Handler take determine next event
-SS.SBar  rmb   1          SetStat to set position block on Window scroll bars
-SS.Mouse rmb   1          Return Mouse information packet (COCO)
-SS.MsSig rmb   1          SetStat to tell driver to send signal on mouse event
-SS.AScrn rmb   1          Allocate a screen for application poking
-SS.DScrn rmb   1          Display a screen allocated by SS.AScrn
-SS.FScrn rmb   1          Free a screen allocated by SS.AScrn
-SS.PScrn rmb   1          Polymorph Screen into different screen type
-SS.ScInf rmb   1          Get Current screen info for direct writes
-         rmb   1          Reserved
-SS.Palet rmb   1          Return palette information
-SS.Montr rmb   1          Get and Set Monitor Type
-SS.ScTyp rmb   1          Get screen type information
-SS.GIP   rmb   1          Global Input Parameters (SetStat)
-SS.UMBar rmb   1          update menu bar (SetStat)
-SS.FBRgs rmb   1          return color registers (GetStat)
-SS.DfPal rmb   1          set/return default palette registers (Getstat/Setstat)
-SS.Tone  rmb   1          Generate a tone using 6 bit sound
-SS.GIP2  rmb   1          Global Input Params #2 (L2V3)
-SS.AnPal rmb   1          Animate palettes (L2V3)
-SS.FndBf rmb   1          Find named buffer (L2V3)
+SS.WnSet       RMB       1                   Set up High Level Windowing Information
+SS.MnSel       RMB       1                   Request High level Menu Handler take determine next event
+SS.SBar        RMB       1                   SetStat to set position block on Window scroll bars
+SS.Mouse       RMB       1                   Return Mouse information packet (COCO)
+SS.MsSig       RMB       1                   SetStat to tell driver to send signal on mouse event
+SS.AScrn       RMB       1                   Allocate a screen for application poking
+SS.DScrn       RMB       1                   Display a screen allocated by SS.AScrn
+SS.FScrn       RMB       1                   Free a screen allocated by SS.AScrn
+SS.PScrn       RMB       1                   Polymorph Screen into different screen type
+SS.ScInf       RMB       1                   Get Current screen info for direct writes
+               RMB       1                   Reserved
+SS.Palet       RMB       1                   Return palette information
+SS.Montr       RMB       1                   Get and Set Monitor Type
+SS.ScTyp       RMB       1                   Get screen type information
+SS.GIP         RMB       1                   Global Input Parameters (SetStat)
+SS.UMBar       RMB       1                   update menu bar (SetStat)
+SS.FBRgs       RMB       1                   return color registers (GetStat)
+SS.DfPal       RMB       1                   set/return default palette registers (Getstat/Setstat)
+SS.Tone        RMB       1                   Generate a tone using 6 bit sound
+SS.GIP2        RMB       1                   Global Input Params #2 (L2V3)
+SS.AnPal       RMB       1                   Animate palettes (L2V3)
+SS.FndBf       RMB       1                   Find named buffer (L2V3)
 
 * sc6551 defined
-SS.CDSta equ   SS.GIP2
-SS.CDSig equ   SS.AnPal
-SS.CDRel equ   SS.FndBf
-         ELSE
+SS.CDSta       EQU       SS.GIP2
+SS.CDSig       EQU       SS.AnPal
+SS.CDRel       EQU       SS.FndBf
+               ELSE      
 * These are wide open in Level 1
-         rmb    19
+               RMB       19
 
 * sc6551 defined
-SS.CDSta rmb   1
-SS.CDSig rmb   1
-SS.CDRel rmb   1
-         ENDC
+SS.CDSta       RMB       1
+SS.CDSig       RMB       1
+SS.CDRel       RMB       1
+               ENDC      
 
 
 
-         org   $A0
+               ORG       $A0
 *
 * New Default SCF input buffer Set status call
-SS.Fill  rmb   1          Pre-load SCF device input buffer
-SS.Hist  rmb   1          Enable command-line history easily
+SS.Fill        RMB       1                   Pre-load SCF device input buffer
+SS.Hist        RMB       1                   Enable command-line history easily
 
 
-         org   $B0
+               ORG       $B0
 *
 * New WDDisk get/set status calls
-SS.ECC   rmb   1          ECC corrected data error enable/disable (GetStat/SetStat)
+SS.ECC         RMB       1                   ECC corrected data error enable/disable (GetStat/SetStat)
 
 *
-         IFGT  Level-1
+               IFGT      Level-1
 
 * VRN get/set status calls.  Named by Alan DeKok.
-SS.VCtr  equ  $80         Return FS2 total VIRQ counter
-SS.VSig  equ  $81         Return FS2 number of signals sent
+SS.VCtr        EQU       $80                 Return FS2 total VIRQ counter
+SS.VSig        EQU       $81                 Return FS2 number of signals sent
 
-SS.FClr  equ  $81         Set/clear FS2 VIRQ
-SS.FSet  equ  $C7         Set FS2+ VIRQ
-SS.KSet  equ  $C8         Set KQ3 VIRQ
-SS.KClr  equ  $C9         Clr KQ3 VIRQ
-SS.ARAM  equ  $CA         Allocate RAM blocks
-SS.DRAM  equ  $CB         De-allocate RAM blocks
+SS.FClr        EQU       $81                 Set/clear FS2 VIRQ
+SS.FSet        EQU       $C7                 Set FS2+ VIRQ
+SS.KSet        EQU       $C8                 Set KQ3 VIRQ
+SS.KClr        EQU       $C9                 Clr KQ3 VIRQ
+SS.ARAM        EQU       $CA                 Allocate RAM blocks
+SS.DRAM        EQU       $CB                 De-allocate RAM blocks
 
 * SDisk 3 Definition Equates
-SS.DRead equ SS.AAGBf     SDisk3 Direct Sector Read ($80)
-SS.DWrit equ SS.DRead     SDisk3 Direct sector Write ($80)
-SS.UnFrz equ SS.SLGBf     SDisk3 UNFreeze DD info ($81)
-SS.MOFF  equ SS.Mount     SDisk3 fast motor off call ($82)
-SS.MoTim equ SS.RdNet     SDisk3 Set motor shut off time ($83)
-SS.SDRD  equ SS.MpGPB     SDisk3 System direct read ($84)
-SS.SDWRT equ SS.SDRD      SDisk3 System direct writes ($84)
-SS.Sleep equ SS.Slots     SDisk3 (DMC ONLY) Enable/disable F$Sleep calls in read/write 1773 I/O ($85)
-SS.DrvCh equ SS.WnSet     SDisk3 (DMC ONLY) Set drive number to cache, or return drive number being cached ($86)
+SS.DRead       EQU       SS.AAGBf            SDisk3 Direct Sector Read ($80)
+SS.DWrit       EQU       SS.DRead            SDisk3 Direct sector Write ($80)
+SS.UnFrz       EQU       SS.SLGBf            SDisk3 UNFreeze DD info ($81)
+SS.MOFF        EQU       SS.Mount            SDisk3 fast motor off call ($82)
+SS.MoTim       EQU       SS.RdNet            SDisk3 Set motor shut off time ($83)
+SS.SDRD        EQU       SS.MpGPB            SDisk3 System direct read ($84)
+SS.SDWRT       EQU       SS.SDRD             SDisk3 System direct writes ($84)
+SS.Sleep       EQU       SS.Slots            SDisk3 (DMC ONLY) Enable/disable F$Sleep calls in read/write 1773 I/O ($85)
+SS.DrvCh       EQU       SS.WnSet            SDisk3 (DMC ONLY) Set drive number to cache, or return drive number being cached ($86)
 
-         ENDC
+               ENDC      
 
-	 ttl   Direct Page Definitions
-         pag
+               TTL       Direct Page Definitions
+               PAG       
 
 **********************************
 * Direct Page Variable Definitions
 *
-         org   $00
-D.WDAddr rmb   2          FHL/Isted WD1002-05 interface base address
-D.WDBtDr rmb   1          FHL/Isted WD1002-05 boot physical device drive num.
-D.SWPage rmb   1          SmartWatch page # (see clock2_smart)
-         rmb   5
-D.COCOXT rmb   1          Busy flag for CoCo-XT driver (one drive at a time)
-D.DbgMem rmb   2          Debug memory pointer
+               ORG       $00
+D.WDAddr       RMB       2                   FHL/Isted WD1002-05 interface base address
+D.WDBtDr       RMB       1                   FHL/Isted WD1002-05 boot physical device drive num.
+D.SWPage       RMB       1                   SmartWatch page # (see clock2_smart)
+               RMB       5
+D.COCOXT       RMB       1                   Busy flag for CoCo-XT driver (one drive at a time)
+D.DbgMem       RMB       2                   Debug memory pointer
 
-         org   $20
+               ORG       $20
 
-         IFEQ  Level-1
-         
+               IFEQ      Level-1
+
 * Level 1 DP vars
-D.FMBM   rmb   4          Free memory bit map pointers
-D.MLIM   rmb   2          Memory limit $24
-D.ModDir rmb   4          Module directory $26
-D.Init   rmb   2          Rom base address $2A
-D.SWI3   rmb   2          Swi3 vector $2C
-D.SWI2   rmb   2          Swi2 vector $2E
-D.FIRQ   rmb   2          Firq vector $30
-D.IRQ    rmb   2          Irq vector $32
-D.SWI    rmb   2          Swi vector $34
-D.NMI    rmb   2          Nmi vector $36
-D.SvcIRQ rmb   2          Interrupt service entry $38
-D.Poll   rmb   2          Interrupt polling routine $3A
-D.UsrIRQ rmb   2          User irq routine $3C
-D.SysIRQ rmb   2          System irq routine $3E
-D.UsrSvc rmb   2          User service request routine $40
-D.SysSvc rmb   2          System service request routine $42
-D.UsrDis rmb   2          User service request dispatch table
-D.SysDis rmb   2          System service reuest dispatch table
-D.Slice  rmb   1          Process time slice count $48
-D.PrcDBT rmb   2          Process descriptor block address  $49
-D.Proc   rmb   2          Process descriptor address $4B
-D.AProcQ rmb   2          Active process queue $4D
-D.WProcQ rmb   2          Waiting process queue $4F
-D.SProcQ rmb   2          Sleeping process queue $51
-D.Time   equ   .          Time
-D.Year   rmb   1          $53
-D.Month  rmb   1          $54
-D.Day    rmb   1          $55
-D.Hour   rmb   1          $56
-D.Min    rmb   1          $57
-D.Sec    rmb   1          $58
-D.Tick   rmb   1          $59
-D.TSec   rmb   1          Ticks / second $5A
-D.TSlice rmb   1          Ticks / time-slice $5B
-D.IOML   rmb   2          I/O mgr free memory low bound $5C
-D.IOMH   rmb   2          I/O mgr free memory hi  bound $5E
-D.DevTbl rmb   2          Device driver table addr $60
-D.PolTbl rmb   2          Irq polling table addr $62
-D.PthDBT rmb   2          Path descriptor block table addr $64
-D.BTLO   rmb   2          Bootstrap low address $66
-D.BTHI   rmb   2          Bootstrap hi address $68
-D.DMAReq rmb   1          DMA in use flag $6A
-D.AltIRQ rmb   2          Alternate IRQ vector (CC) $6B
-D.KbdSta rmb   2          Keyboard scanner static storage (CC) $6D
-D.DskTmr rmb   2          Disk Motor Timer (CC) $6F
-D.CBStrt rmb   16         reserved for CC warmstart ($71)
-D.Clock  rmb   2          Address of Clock Tick Routine (CC) $81
-D.Boot   rmb   1          Bootstrap attempted flag
-D.URtoSs rmb   2          address of user to system routine (VIRQ) $84
-D.CLTb   rmb   2          Pointer to clock interrupt table (VIRQ) $86
-D.MDREG  rmb   1          6309 MD (mode) shadow register $88 (added in V2.01.00)
-D.CRC    rmb   1          CRC checking mode flag $89 (added in V2.01.00)
-D.Clock2 rmb   2          CC Clock2 entry address
+D.FMBM         RMB       4                   Free memory bit map pointers
+D.MLIM         RMB       2                   Memory limit $24
+D.ModDir       RMB       4                   Module directory $26
+D.Init         RMB       2                   Rom base address $2A
+D.SWI3         RMB       2                   Swi3 vector $2C
+D.SWI2         RMB       2                   Swi2 vector $2E
+D.FIRQ         RMB       2                   Firq vector $30
+D.IRQ          RMB       2                   Irq vector $32
+D.SWI          RMB       2                   Swi vector $34
+D.NMI          RMB       2                   Nmi vector $36
+D.SvcIRQ       RMB       2                   Interrupt service entry $38
+D.Poll         RMB       2                   Interrupt polling routine $3A
+D.UsrIRQ       RMB       2                   User irq routine $3C
+D.SysIRQ       RMB       2                   System irq routine $3E
+D.UsrSvc       RMB       2                   User service request routine $40
+D.SysSvc       RMB       2                   System service request routine $42
+D.UsrDis       RMB       2                   User service request dispatch table
+D.SysDis       RMB       2                   System service reuest dispatch table
+D.Slice        RMB       1                   Process time slice count $48
+D.PrcDBT       RMB       2                   Process descriptor block address  $49
+D.Proc         RMB       2                   Process descriptor address $4B
+D.AProcQ       RMB       2                   Active process queue $4D
+D.WProcQ       RMB       2                   Waiting process queue $4F
+D.SProcQ       RMB       2                   Sleeping process queue $51
+D.Time         EQU       .                   Time
+D.Year         RMB       1                   $53
+D.Month        RMB       1                   $54
+D.Day          RMB       1                   $55
+D.Hour         RMB       1                   $56
+D.Min          RMB       1                   $57
+D.Sec          RMB       1                   $58
+D.Tick         RMB       1                   $59
+D.TSec         RMB       1                   Ticks / second $5A
+D.TSlice       RMB       1                   Ticks / time-slice $5B
+D.IOML         RMB       2                   I/O mgr free memory low bound $5C
+D.IOMH         RMB       2                   I/O mgr free memory hi  bound $5E
+D.DevTbl       RMB       2                   Device driver table addr $60
+D.PolTbl       RMB       2                   Irq polling table addr $62
+D.PthDBT       RMB       2                   Path descriptor block table addr $64
+D.BTLO         RMB       2                   Bootstrap low address $66
+D.BTHI         RMB       2                   Bootstrap hi address $68
+D.DMAReq       RMB       1                   DMA in use flag $6A
+D.AltIRQ       RMB       2                   Alternate IRQ vector (CC) $6B
+D.KbdSta       RMB       2                   Keyboard scanner static storage (CC) $6D
+D.DskTmr       RMB       2                   Disk Motor Timer (CC) $6F
+D.CBStrt       RMB       16                  reserved for CC warmstart ($71)
+D.Clock        RMB       2                   Address of Clock Tick Routine (CC) $81
+D.Boot         RMB       1                   Bootstrap attempted flag
+D.URtoSs       RMB       2                   address of user to system routine (VIRQ) $84
+D.CLTb         RMB       2                   Pointer to clock interrupt table (VIRQ) $86
+D.MDREG        RMB       1                   6309 MD (mode) shadow register $88 (added in V2.01.00)
+D.CRC          RMB       1                   CRC checking mode flag $89 (added in V2.01.00)
+D.Clock2       RMB       2                   CC Clock2 entry address
 
-         org   $100
-D.XSWI3  rmb   3
-D.XSWI2  rmb   3
-D.XSWI   rmb   3
-D.XNMI   rmb   3
-D.XIRQ   rmb   3
-D.XFIRQ  rmb   3
+               ORG       $100
+D.XSWI3        RMB       3
+D.XSWI2        RMB       3
+D.XSWI         RMB       3
+D.XNMI         RMB       3
+D.XIRQ         RMB       3
+D.XFIRQ        RMB       3
 
 * Table Sizes
-BMAPSZ   equ   32         Bitmap table size
-SVCTNM   equ   2          Number of service request tables
-SVCTSZ   equ   (256-BMAPSZ)/SVCTNM-2 Service request table size
+BMAPSZ         EQU       32                  Bitmap table size
+SVCTNM         EQU       2                   Number of service request tables
+SVCTSZ         EQU       (256-BMAPSZ)/SVCTNM-2 Service request table size
 
-         ELSE
-         
+               ELSE      
+
 * Level 2 DP vars
-D.Tasks  rmb   2          Task User Table
-D.TmpDAT rmb   2          Temporary DAT Image stack
-D.Init   rmb   2          Initialization Module ptr
-D.Poll   rmb   2          Interrupt Polling Routine ptr
-D.Time   equ   .          System Time
-D.Year   rmb   1
-D.Month  rmb   1
-D.Day    rmb   1
-D.Hour   rmb   1
-D.Min    rmb   1
-D.Sec    rmb   1
-D.Tick   rmb   1
-D.Slice  rmb   1          current slice remaining
-D.TSlice rmb   1          Ticks per Slice
-D.Boot   rmb   1          Bootstrap attempted flag
-D.MotOn  rmb   1          Floppy Disk Motor-On time out
-D.ErrCod rmb   1          Reset Error Code
-D.Daywk  rmb   1          day of week, com-trol clock
-D.TkCnt  rmb   1          Tick Counter
-D.BtPtr  rmb   2          Address of Boot in System Address space
-D.BtSz   rmb   2          Size of Boot
+D.Tasks        RMB       2                   Task User Table
+D.TmpDAT       RMB       2                   Temporary DAT Image stack
+D.Init         RMB       2                   Initialization Module ptr
+D.Poll         RMB       2                   Interrupt Polling Routine ptr
+D.Time         EQU       .                   System Time
+D.Year         RMB       1
+D.Month        RMB       1
+D.Day          RMB       1
+D.Hour         RMB       1
+D.Min          RMB       1
+D.Sec          RMB       1
+D.Tick         RMB       1
+D.Slice        RMB       1                   current slice remaining
+D.TSlice       RMB       1                   Ticks per Slice
+D.Boot         RMB       1                   Bootstrap attempted flag
+D.MotOn        RMB       1                   Floppy Disk Motor-On time out
+D.ErrCod       RMB       1                   Reset Error Code
+D.Daywk        RMB       1                   day of week, com-trol clock
+D.TkCnt        RMB       1                   Tick Counter
+D.BtPtr        RMB       2                   Address of Boot in System Address space
+D.BtSz         RMB       2                   Size of Boot
 
-         IFNE  H6309
-D.MDREG  rmb   1          6309 MD (mode) shadow register
-         ELSE
-         rmb   1          Currently unused in NitrOS-9/6809
-         ENDC
+               IFNE      H6309
+D.MDREG        RMB       1                   6309 MD (mode) shadow register
+               ELSE      
+               RMB       1                   Currently unused in NitrOS-9/6809
+               ENDC      
 
-D.CRC    rmb   1          CRC checking mode flag
+D.CRC          RMB       1                   CRC checking mode flag
 
-D.Tenths rmb   1          Tenths and hundredths of second for F$Xtime
-D.Task1N rmb   1          Map type 1 task number*2 - offset into [D.TskIPt]
-D.Quick  rmb   1          Quick system call return flag - 0 =stack is at $FEE1
-D.QIRQ   rmb   1          Quick IRQ flag - 0 =IRQ wasn't clock, so quick return
+D.Tenths       RMB       1                   Tenths and hundredths of second for F$Xtime
+D.Task1N       RMB       1                   Map type 1 task number*2 - offset into [D.TskIPt]
+D.Quick        RMB       1                   Quick system call return flag - 0 =stack is at $FEE1
+D.QIRQ         RMB       1                   Quick IRQ flag - 0 =IRQ wasn't clock, so quick return
 
-         org   $40
-D.BlkMap rmb   4          Memory Block Map ptr
-D.ModDir rmb   4          Module Directory ptrs
-D.PrcDBT rmb   2          Process Descriptor Block Table ptr
-D.SysPrc rmb   2          System Process Descriptor ptr
-D.SysDAT rmb   2          System DAT Image ptr
-D.SysMem rmb   2          System Memory Map ptr
-D.Proc   rmb   2          Current Process ptr
-D.AProcQ rmb   2          Active Process Queue
-D.WProcQ rmb   2          Waiting Process Queue
-D.SProcQ rmb   2          Sleeping Process Queue
-D.ModEnd rmb   2          Module Directory end ptr
-D.ModDAT rmb   2          Module Dir DAT image end ptr
-D.CldRes rmb   2          Cold Restart vector
-D.BtBug  rmb   3          Boot debug information
-D.Pipe   rmb   2
+               ORG       $40
+D.BlkMap       RMB       4                   Memory Block Map ptr
+D.ModDir       RMB       4                   Module Directory ptrs
+D.PrcDBT       RMB       2                   Process Descriptor Block Table ptr
+D.SysPrc       RMB       2                   System Process Descriptor ptr
+D.SysDAT       RMB       2                   System DAT Image ptr
+D.SysMem       RMB       2                   System Memory Map ptr
+D.Proc         RMB       2                   Current Process ptr
+D.AProcQ       RMB       2                   Active Process Queue
+D.WProcQ       RMB       2                   Waiting Process Queue
+D.SProcQ       RMB       2                   Sleeping Process Queue
+D.ModEnd       RMB       2                   Module Directory end ptr
+D.ModDAT       RMB       2                   Module Dir DAT image end ptr
+D.CldRes       RMB       2                   Cold Restart vector
+D.BtBug        RMB       3                   Boot debug information
+D.Pipe         RMB       2
 
-         org   $6B
-D.Crash  rmb   6          Pointer to CC Crash Routine
-D.CBStrt rmb   $B         Reserved for CC warmstart ($71)
-D.QCnt   rmb   1          Count of number of quick system calls performed
+               ORG       $6B
+D.Crash        RMB       6                   Pointer to CC Crash Routine
+D.CBStrt       RMB       $B                  Reserved for CC warmstart ($71)
+D.QCnt         RMB       1                   Count of number of quick system calls performed
 
-         org   $80
-D.DevTbl rmb   2          I/O Device Table
-D.PolTbl rmb   2          I/O Polling Table
-         rmb   4          reserved
-D.PthDBT rmb   2          Path Descriptor Block Table ptr
-D.DMAReq rmb   1          DMA Request flag
+               ORG       $80
+D.DevTbl       RMB       2                   I/O Device Table
+D.PolTbl       RMB       2                   I/O Polling Table
+               RMB       4                   reserved
+D.PthDBT       RMB       2                   Path Descriptor Block Table ptr
+D.DMAReq       RMB       1                   DMA Request flag
 
 ********
 * CoCo 3 STUFF COMES NEXT
 * This area is used for the CoCo Hardware Registers
 *
-         org   $90
-D.HINIT  rmb   1          GIME INIT0 register (hardware setup $FF90)
-D.TINIT  rmb   1          GIME INIT1 register (timer/task register $FF91)
-D.IRQER  rmb   1          Interrupt enable regsiter ($FF92)
-D.FRQER  rmb   1          Fast Interrupt enable register ($FF93)
-D.TIMMS  rmb   1          Timer most significant nibble ($FF94)
-D.TIMLS  rmb   1          Timer least significant byte ($FF95)
-D.RESV1  rmb   1          reserved register ($FF96)
-D.RESV2  rmb   1          reserved register ($FF97)
-D.VIDMD  rmb   1          video mode register ($FF98)
-D.VIDRS  rmb   1          video resolution register ($FF99)
-D.BORDR  rmb   1          border register ($FF9A)
-D.RESV3  rmb   1          reserved register ($FF9B)
-D.VOFF2  rmb   1          vertical scroll/offset 2 register ($FF9C)
-D.VOFF1  rmb   1          vertical offset 1 register ($FF9D)
-D.VOFF0  rmb   1          vertical offset 0 register ($FF9E)
-D.HOFF0  rmb   1          horizontal offset 0 register ($FF9F)
-D.Speed  rmb   1          Speed of COCO CPU 0=slow,1=fast ($A0)
-D.TskIPt rmb   2          Task image Pointer table (CC) ($A1)
-D.MemSz  rmb   1          128/512K memory flag (CC) ($A3)
-D.SSTskN rmb   1          System State Task Number (COCO) ($A4)
-D.CCMem  rmb   2          Pointer to beginning of CC Memory ($A5)
-D.CCStk  rmb   2          Pointer to top of CC Memory ($A7)
-D.Flip0  rmb   2          Change to Task 0 ($A9)
-D.Flip1  rmb   2          Change to reserved Task 1 ($AB)
-D.VIRQ   rmb   2          VIRQ Polling routine ($AD)
-D.IRQS   rmb   1          IRQ shadow register (CC Temporary) ($AF)
-D.CLTb   rmb   2          VIRQ Table address ($B0)
-D.AltIRQ rmb   2          Alternate IRQ Vector (CC) ($B2)
-D.GPoll  rmb   2          CC GIME IRQ enable/disable toggle
-D.Clock2 rmb   2          CC Clock2 entry address
-         org   $C0
-D.SysSvc rmb   2          System Service Routine entry
-D.SysDis rmb   2          System Service Dispatch Table ptr
-D.SysIRQ rmb   2          System IRQ Routine entry
-D.UsrSvc rmb   2          User Service Routine entry
-D.UsrDis rmb   2          User Service Dispatch Table ptr
-D.UsrIRQ rmb   2          User IRQ Routine entry
-D.SysStk rmb   2          System stack
-D.SvcIRQ rmb   2          In-System IRQ service
-D.SysTsk rmb   1          System Task number
-         org   $E0
-D.Clock  rmb   2
-D.XSWI3  rmb   2
-D.XSWI2  rmb   2
-D.XFIRQ  rmb   2
-D.XIRQ   rmb   2
-D.XSWI   rmb   2
-D.XNMI   rmb   2
-D.ErrRst rmb   2
-D.SysVec rmb   2          F$xxx system call vector for NitrOS-9 Level 3
-D.SWI3   rmb   2
-D.SWI2   rmb   2
-D.FIRQ   rmb   2
-D.IRQ    rmb   2
-D.SWI    rmb   2
-D.NMI    rmb   2
+               ORG       $90
+D.HINIT        RMB       1                   GIME INIT0 register (hardware setup $FF90)
+D.TINIT        RMB       1                   GIME INIT1 register (timer/task register $FF91)
+D.IRQER        RMB       1                   Interrupt enable regsiter ($FF92)
+D.FRQER        RMB       1                   Fast Interrupt enable register ($FF93)
+D.TIMMS        RMB       1                   Timer most significant nibble ($FF94)
+D.TIMLS        RMB       1                   Timer least significant byte ($FF95)
+D.RESV1        RMB       1                   reserved register ($FF96)
+D.RESV2        RMB       1                   reserved register ($FF97)
+D.VIDMD        RMB       1                   video mode register ($FF98)
+D.VIDRS        RMB       1                   video resolution register ($FF99)
+D.BORDR        RMB       1                   border register ($FF9A)
+D.RESV3        RMB       1                   reserved register ($FF9B)
+D.VOFF2        RMB       1                   vertical scroll/offset 2 register ($FF9C)
+D.VOFF1        RMB       1                   vertical offset 1 register ($FF9D)
+D.VOFF0        RMB       1                   vertical offset 0 register ($FF9E)
+D.HOFF0        RMB       1                   horizontal offset 0 register ($FF9F)
+D.Speed        RMB       1                   Speed of COCO CPU 0=slow,1=fast ($A0)
+D.TskIPt       RMB       2                   Task image Pointer table (CC) ($A1)
+D.MemSz        RMB       1                   128/512K memory flag (CC) ($A3)
+D.SSTskN       RMB       1                   System State Task Number (COCO) ($A4)
+D.CCMem        RMB       2                   Pointer to beginning of CC Memory ($A5)
+D.CCStk        RMB       2                   Pointer to top of CC Memory ($A7)
+D.Flip0        RMB       2                   Change to Task 0 ($A9)
+D.Flip1        RMB       2                   Change to reserved Task 1 ($AB)
+D.VIRQ         RMB       2                   VIRQ Polling routine ($AD)
+D.IRQS         RMB       1                   IRQ shadow register (CC Temporary) ($AF)
+D.CLTb         RMB       2                   VIRQ Table address ($B0)
+D.AltIRQ       RMB       2                   Alternate IRQ Vector (CC) ($B2)
+D.GPoll        RMB       2                   CC GIME IRQ enable/disable toggle
+D.Clock2       RMB       2                   CC Clock2 entry address
+               ORG       $C0
+D.SysSvc       RMB       2                   System Service Routine entry
+D.SysDis       RMB       2                   System Service Dispatch Table ptr
+D.SysIRQ       RMB       2                   System IRQ Routine entry
+D.UsrSvc       RMB       2                   User Service Routine entry
+D.UsrDis       RMB       2                   User Service Dispatch Table ptr
+D.UsrIRQ       RMB       2                   User IRQ Routine entry
+D.SysStk       RMB       2                   System stack
+D.SvcIRQ       RMB       2                   In-System IRQ service
+D.SysTsk       RMB       1                   System Task number
+               ORG       $E0
+D.Clock        RMB       2
+D.XSWI3        RMB       2
+D.XSWI2        RMB       2
+D.XFIRQ        RMB       2
+D.XIRQ         RMB       2
+D.XSWI         RMB       2
+D.XNMI         RMB       2
+D.ErrRst       RMB       2
+D.SysVec       RMB       2                   F$xxx system call vector for NitrOS-9 Level 3
+D.SWI3         RMB       2
+D.SWI2         RMB       2
+D.FIRQ         RMB       2
+D.IRQ          RMB       2
+D.SWI          RMB       2
+D.NMI          RMB       2
 
 *************************
 * Level 2 Block Map flags
 *
-NotRAM   equ   %10000000  Block Not RAM flag
-VidRAM   equ   %00000100  Block is being used as Video RAM
-ModBlock equ   %00000010  Module in Block
-RAMinUse equ   %00000001  RAM Block in use flag
+NotRAM         EQU       %10000000           Block Not RAM flag
+VidRAM         EQU       %00000100           Block is being used as Video RAM
+ModBlock       EQU       %00000010           Module in Block
+RAMinUse       EQU       %00000001           RAM Block in use flag
 *
 * Service Dispatch Table special entries
 *
-IOEntry  equ   254
+IOEntry        EQU       254
 
-         ENDC
+               ENDC      
 
-         ttl   Structure Formats
-         pag
+               TTL       Structure Formats
+               PAG       
 ************************************
 * Module Directory Entry Definitions
 *
-         org   0
-         IFGT  Level-1
-MD$MPDAT rmb   2          Module DAT Image ptr
-MD$MBSiz rmb   2          Memory Block size
-         ENDC
-MD$MPtr  rmb   2          Module ptr
-MD$Link  rmb   2          Module Link count
-MD$ESize equ   .          Module Directory Entry size
+               ORG       0
+               IFGT      Level-1
+MD$MPDAT       RMB       2                   Module DAT Image ptr
+MD$MBSiz       RMB       2                   Memory Block size
+               ENDC      
+MD$MPtr        RMB       2                   Module ptr
+MD$Link        RMB       2                   Module Link count
+MD$ESize       EQU       .                   Module Directory Entry size
 
 ************************************
 * Module Definitions
 *
 * Universal Module Offsets
 *
-         org   0
-M$ID     rmb   2          ID Code
-M$Size   rmb   2          Module Size
-M$Name   rmb   2          Module Name
-M$Type   rmb   1          Type / Language
-M$Revs   rmb   1          Attributes / Revision Level
-M$Parity rmb   1          Header Parity
-M$IDSize equ   .          Module ID Size
+               ORG       0
+M$ID           RMB       2                   ID Code
+M$Size         RMB       2                   Module Size
+M$Name         RMB       2                   Module Name
+M$Type         RMB       1                   Type / Language
+M$Revs         RMB       1                   Attributes / Revision Level
+M$Parity       RMB       1                   Header Parity
+M$IDSize       EQU       .                   Module ID Size
 *
 * Type-Dependent Module Offsets
 *
 * System, File Manager, Device Driver, Program Module
 *
-M$Exec   rmb   2          Execution Entry Offset
+M$Exec         RMB       2                   Execution Entry Offset
 *
 * Device Driver, Program Module
 *
-M$Mem    rmb   2          Stack Requirement
+M$Mem          RMB       2                   Stack Requirement
 *
 * Device Driver, Device Descriptor Module
 *
-M$Mode   rmb   1          Device Driver Mode Capabilities
+M$Mode         RMB       1                   Device Driver Mode Capabilities
 *
 * Device Descriptor Module
 *
-         org   M$IDSize
-M$FMgr   rmb   2          File Manager Name Offset
-M$PDev   rmb   2          Device Driver Name Offset
-         rmb   1          M$Mode (defined above)
-M$Port   rmb   3          Port Address
-M$Opt    rmb   1          Device Default Options
-M$DTyp   rmb   1          Device Type
-IT.DTP   equ   M$DTyp     Descriptor type offset
+               ORG       M$IDSize
+M$FMgr         RMB       2                   File Manager Name Offset
+M$PDev         RMB       2                   Device Driver Name Offset
+               RMB       1                   M$Mode (defined above)
+M$Port         RMB       3                   Port Address
+M$Opt          RMB       1                   Device Default Options
+M$DTyp         RMB       1                   Device Type
+IT.DTP         EQU       M$DTyp              Descriptor type offset
 *
 * Configuration Module Entry Offsets
 *
-         org   M$IDSize
-MaxMem   rmb   3          Maximum Free Memory
-PollCnt  rmb   1          Entries in Interrupt Polling Table
-DevCnt   rmb   1          Entries in Device Table
-InitStr  rmb   2          Initial Module Name
-SysStr   rmb   2          System Device Name
-StdStr   rmb   2          Standard I/O Pathlist
-BootStr  rmb   2          Bootstrap Module name
-ProtFlag rmb   1          Write protect enable flag
+               ORG       M$IDSize
+MaxMem         RMB       3                   Maximum Free Memory
+PollCnt        RMB       1                   Entries in Interrupt Polling Table
+DevCnt         RMB       1                   Entries in Device Table
+InitStr        RMB       2                   Initial Module Name
+SysStr         RMB       2                   System Device Name
+StdStr         RMB       2                   Standard I/O Pathlist
+BootStr        RMB       2                   Bootstrap Module name
+ProtFlag       RMB       1                   Write protect enable flag
 
-OSLevel  rmb   1          OS level
-OSVer    rmb   1          OS version
-OSMajor  rmb   1          OS major
-OSMinor  rmb   1          OS minor
-Feature1 rmb   1          feature byte 1
-Feature2 rmb   1          feature byte 2
-         rmb   8          reserved for future use
+OSLevel        RMB       1                   OS level
+OSVer          RMB       1                   OS version
+OSMajor        RMB       1                   OS major
+OSMinor        RMB       1                   OS minor
+Feature1       RMB       1                   feature byte 1
+Feature2       RMB       1                   feature byte 2
+               RMB       8                   reserved for future use
 
-         IFGT  Level-1
+               IFGT      Level-1
 * -- VTIO area -- (NitrOS-9 Level 2 and above) *
-MonType  rmb   1          Monitor type (0=CMP,1=RGB,2=MONO)
-MouseInf rmb   2          Mouse resolution/Mouse port; was 1, major error RG.
-KeyRptS  rmb   1          Key repeat start constant
-KeyRptD  rmb   1          Key repeat delay constant
-         ENDC
+MonType        RMB       1                   Monitor type (0=CMP,1=RGB,2=MONO)
+MouseInf       RMB       2                   Mouse resolution/Mouse port; was 1, major error RG.
+KeyRptS        RMB       1                   Key repeat start constant
+KeyRptD        RMB       1                   Key repeat delay constant
+               ENDC      
 
 * Feature1 byte definitions
-CRCOn    equ   %00000001  CRC checking on
-CRCOff   equ   %00000000  CRC checking off
+CRCOn          EQU       %00000001           CRC checking on
+CRCOff         EQU       %00000000           CRC checking off
 
-         pag
+               PAG       
 **************************
 * Module Field Definitions
 *
 * ID Field - First two bytes of a NitrOS-9 module
 *
-M$ID1    equ   $87        Module ID code byte one
-M$ID2    equ   $CD        Module ID code byte two
-M$ID12   equ   M$ID1*256+M$ID2
+M$ID1          EQU       $87                 Module ID code byte one
+M$ID2          EQU       $CD                 Module ID code byte two
+M$ID12         EQU       M$ID1*256+M$ID2
 
 *
 * Module Type/Language Field Masks
 *
-TypeMask equ   %11110000  Type Field
-LangMask equ   %00001111  Language Field
+TypeMask       EQU       %11110000           Type Field
+LangMask       EQU       %00001111           Language Field
 
 *
 * Module Type Values
 *
-Devic    equ   $F0        Device Descriptor Module
-Drivr    equ   $E0        Physical Device Driver
-FlMgr    equ   $D0        File Manager
-Systm    equ   $C0        System Module
-ShellSub equ   $50        Shell+ shell sub module
-Data     equ   $40        Data Module
-Multi    equ   $30        Multi-Module
-Sbrtn    equ   $20        Subroutine Module
-Prgrm    equ   $10        Program Module
+Devic          EQU       $F0                 Device Descriptor Module
+Drivr          EQU       $E0                 Physical Device Driver
+FlMgr          EQU       $D0                 File Manager
+Systm          EQU       $C0                 System Module
+ShellSub       EQU       $50                 Shell+ shell sub module
+Data           EQU       $40                 Data Module
+Multi          EQU       $30                 Multi-Module
+Sbrtn          EQU       $20                 Subroutine Module
+Prgrm          EQU       $10                 Program Module
 
 *
 * Module Language Values
 *
-Objct    equ   1          6809 Object Code Module
-ICode    equ   2          Basic09 I-code
-PCode    equ   3          Pascal P-code
-CCode    equ   4          C I-code
-CblCode  equ   5          Cobol I-code
-FrtnCode equ   6          Fortran I-code
-Obj6309  equ   7          6309 object code
+Objct          EQU       1                   6809 Object Code Module
+ICode          EQU       2                   Basic09 I-code
+PCode          EQU       3                   Pascal P-code
+CCode          EQU       4                   C I-code
+CblCode        EQU       5                   Cobol I-code
+FrtnCode       EQU       6                   Fortran I-code
+Obj6309        EQU       7                   6309 object code
 *
 * Module Attributes / Revision byte
 *
 * Field Masks
 *
-AttrMask equ   %11110000  Attributes Field
-RevsMask equ   %00001111  Revision Level Field
+AttrMask       EQU       %11110000           Attributes Field
+RevsMask       EQU       %00001111           Revision Level Field
 *
 * Attribute Flags
 *
-ReEnt    equ   %10000000  Re-Entrant Module
-ModProt  equ   %01000000  Gimix Module protect bit (0=protected, 1=write enable)
-ModNat   equ   %00100000  6309 native mode attribute
+ReEnt          EQU       %10000000           Re-Entrant Module
+ModProt        EQU       %01000000           Gimix Module protect bit (0=protected, 1=write enable)
+ModNat         EQU       %00100000           6309 native mode attribute
 
 ********************
 * Device Type Values
@@ -781,451 +781,451 @@
 * managed by a file manager module.  The Device Type is embedded
 * in a device's device descriptor.
 *
-DT.SCF   equ   0          Sequential Character File Manager
-DT.RBF   equ   1          Random Block File Manager
-DT.Pipe  equ   2          Pipe File Manager
-DT.SBF   equ   3          Sequential Block File Manager
-DT.NFM   equ   4          Network File Manager
-DT.CDFM  equ   5          CD-ROM File Manager
+DT.SCF         EQU       0                   Sequential Character File Manager
+DT.RBF         EQU       1                   Random Block File Manager
+DT.Pipe        EQU       2                   Pipe File Manager
+DT.SBF         EQU       3                   Sequential Block File Manager
+DT.NFM         EQU       4                   Network File Manager
+DT.CDFM        EQU       5                   CD-ROM File Manager
 
 
 *********************
 * CRC Result Constant
 *
-CRCCon1  equ   $80
-CRCCon23 equ   $0FE3
+CRCCon1        EQU       $80
+CRCCon23       EQU       $0FE3
 
-         ttl   Process Information
-         pag
+               TTL       Process Information
+               PAG       
 ********************************
 * Process Descriptor Definitions
 *
-         IFEQ  Level-1
+               IFEQ      Level-1
 
 * Level 1 process descriptor defs
-DefIOSiz equ   12
-NumPaths equ   16         Number of Local Paths
+DefIOSiz       EQU       12
+NumPaths       EQU       16                  Number of Local Paths
 
-         org   0
-P$ID     rmb   1          Process ID
-P$PID    rmb   1          Parent's ID
-P$SID    rmb   1          Sibling's ID
-P$CID    rmb   1          Child's ID
-P$SP     rmb   2          Stack ptr
-P$CHAP   rmb   1          process chapter number
-P$ADDR   rmb   1          user address beginning page number
-P$PagCnt rmb   1          Memory Page Count
-P$User   rmb   2          User Index $09
-P$Prior  rmb   1          Priority $0B
-P$Age    rmb   1          Age $0C
-P$State  rmb   1          Status $0D
-P$Queue  rmb   2          Queue Link (Process ptr) $0E
-P$IOQP   rmb   1          Previous I/O Queue Link (Process ID) $10
-P$IOQN   rmb   1          Next     I/O Queue Link (Process ID)
-P$PModul rmb   2          Primary Module
-P$SWI    rmb   2          SWI Entry Point
-P$SWI2   rmb   2          SWI2 Entry Point
-P$SWI3   rmb   2          SWI3 Entry Point $18
-P$DIO    rmb   DefIOSiz   default I/O ptrs $1A
-P$PATH   rmb   NumPaths   I/O path table $26
-P$Signal rmb   1          Signal Code $36
-P$SigVec rmb   2          Signal Intercept Vector
-P$SigDat rmb   2          Signal Intercept Data Address
-P$NIO    rmb   4          additional dio pointers for net
-         rmb   $40-.      unused
-P$Size   equ   .          Size of Process Descriptor
+               ORG       0
+P$ID           RMB       1                   Process ID
+P$PID          RMB       1                   Parent's ID
+P$SID          RMB       1                   Sibling's ID
+P$CID          RMB       1                   Child's ID
+P$SP           RMB       2                   Stack ptr
+P$CHAP         RMB       1                   process chapter number
+P$ADDR         RMB       1                   user address beginning page number
+P$PagCnt       RMB       1                   Memory Page Count
+P$User         RMB       2                   User Index $09
+P$Prior        RMB       1                   Priority $0B
+P$Age          RMB       1                   Age $0C
+P$State        RMB       1                   Status $0D
+P$Queue        RMB       2                   Queue Link (Process ptr) $0E
+P$IOQP         RMB       1                   Previous I/O Queue Link (Process ID) $10
+P$IOQN         RMB       1                   Next     I/O Queue Link (Process ID)
+P$PModul       RMB       2                   Primary Module
+P$SWI          RMB       2                   SWI Entry Point
+P$SWI2         RMB       2                   SWI2 Entry Point
+P$SWI3         RMB       2                   SWI3 Entry Point $18
+P$DIO          RMB       DefIOSiz            default I/O ptrs $1A
+P$PATH         RMB       NumPaths            I/O path table $26
+P$Signal       RMB       1                   Signal Code $36
+P$SigVec       RMB       2                   Signal Intercept Vector
+P$SigDat       RMB       2                   Signal Intercept Data Address
+P$NIO          RMB       4                   additional dio pointers for net
+               RMB       $40-.               unused
+P$Size         EQU       .                   Size of Process Descriptor
 
 *
 * Process State Flags
 *
-SysState equ   %10000000
-TimSleep equ   %01000000
-TimOut   equ   %00100000
-ImgChg   equ   %00010000
-Condem   equ   %00000010
-Dead     equ   %00000001
+SysState       EQU       %10000000
+TimSleep       EQU       %01000000
+TimOut         EQU       %00100000
+ImgChg         EQU       %00010000
+Condem         EQU       %00000010
+Dead           EQU       %00000001
 
-         ELSE
+               ELSE      
 
 * Level 2 process descriptor defs
-DefIOSiz equ   16         Default I/O Data Length
-NefIOSiz equ   12         On-Net Default I/O Data Length
-NumPaths equ   16         Number of Local Paths
+DefIOSiz       EQU       16                  Default I/O Data Length
+NefIOSiz       EQU       12                  On-Net Default I/O Data Length
+NumPaths       EQU       16                  Number of Local Paths
 
-         org   0
-P$ID     rmb   1          Process ID
-P$PID    rmb   1          Parent's ID
-P$SID    rmb   1          Sibling's ID
-P$CID    rmb   1          Child's ID
-P$SP     rmb   2          Stack ptr
-P$Task   rmb   1          Task Number
-P$PagCnt rmb   1          Memory Page Count
-P$User   rmb   2          User Index
-P$Prior  rmb   1          Priority
-P$Age    rmb   1          Age
-P$State  rmb   1          Status
-P$Queue  rmb   2          Queue Link (Process ptr)
-P$IOQP   rmb   1          Previous I/O Queue Link (Process ID)
-P$IOQN   rmb   1          Next I/O Queue Link (Process ID)
-P$PModul rmb   2          Primary Module
-P$SWI    rmb   2          SWI Entry Point
-P$SWI2   rmb   2          SWI2 Entry Point
-P$SWI3   rmb   2          SWI3 Entry Point
-P$Signal rmb   1          Signal Code
-P$SigVec rmb   2          Signal Intercept Vector
-P$SigDat rmb   2          Signal Intercept Data Address
-P$DeadLk rmb   1          Dominant proc ID if I/O locked
-         rmb   $20-.      unused
-P$DIO    rmb   DefIOSiz   Default I/O ptrs
-P$Path   rmb   NumPaths   I/O Path Table
-P$DATImg rmb   64         DAT Image
-P$Links  rmb   32         Block Link counts
-P$NIO    rmb   6*2        additional DIO ptrs for net, compatible  with 68k
-P$SelP   rmb   1          Selected Path for COCO Windows (Default 0)
-P$UTicks rmb   4          proc User Tick counter        (L2V3)
-P$STicks rmb   4          proc System Tick counter      (L2V3)
-P$FCalls rmb   4          proc F$ call counter          (L2V3)
-P$ICalls rmb   4          proc I$ call counter          (L2V3)
-P$DatBeg rmb   3          proc Date of creation (Y/M/D) (L2V3)
-P$TimBeg rmb   3          proc Time of creation (H/M/S) (L2V3)
-P$Alarm  rmb   6
-         rmb   $200-.     Local stack
-P$Stack  equ   .          Top of Stack
-P$Size   equ   .          Size of Process Descriptor
+               ORG       0
+P$ID           RMB       1                   Process ID
+P$PID          RMB       1                   Parent's ID
+P$SID          RMB       1                   Sibling's ID
+P$CID          RMB       1                   Child's ID
+P$SP           RMB       2                   Stack ptr
+P$Task         RMB       1                   Task Number
+P$PagCnt       RMB       1                   Memory Page Count
+P$User         RMB       2                   User Index
+P$Prior        RMB       1                   Priority
+P$Age          RMB       1                   Age
+P$State        RMB       1                   Status
+P$Queue        RMB       2                   Queue Link (Process ptr)
+P$IOQP         RMB       1                   Previous I/O Queue Link (Process ID)
+P$IOQN         RMB       1                   Next I/O Queue Link (Process ID)
+P$PModul       RMB       2                   Primary Module
+P$SWI          RMB       2                   SWI Entry Point
+P$SWI2         RMB       2                   SWI2 Entry Point
+P$SWI3         RMB       2                   SWI3 Entry Point
+P$Signal       RMB       1                   Signal Code
+P$SigVec       RMB       2                   Signal Intercept Vector
+P$SigDat       RMB       2                   Signal Intercept Data Address
+P$DeadLk       RMB       1                   Dominant proc ID if I/O locked
+               RMB       $20-.               unused
+P$DIO          RMB       DefIOSiz            Default I/O ptrs
+P$Path         RMB       NumPaths            I/O Path Table
+P$DATImg       RMB       64                  DAT Image
+P$Links        RMB       32                  Block Link counts
+P$NIO          RMB       6*2                 additional DIO ptrs for net, compatible  with 68k
+P$SelP         RMB       1                   Selected Path for COCO Windows (Default 0)
+P$UTicks       RMB       4                   proc User Tick counter        (L2V3)
+P$STicks       RMB       4                   proc System Tick counter      (L2V3)
+P$FCalls       RMB       4                   proc F$ call counter          (L2V3)
+P$ICalls       RMB       4                   proc I$ call counter          (L2V3)
+P$DatBeg       RMB       3                   proc Date of creation (Y/M/D) (L2V3)
+P$TimBeg       RMB       3                   proc Time of creation (H/M/S) (L2V3)
+P$Alarm        RMB       6
+               RMB       $200-.              Local stack
+P$Stack        EQU       .                   Top of Stack
+P$Size         EQU       .                   Size of Process Descriptor
 
 *
 * Process State Flags
 *
-SysState equ   %10000000
-TimSleep equ   %01000000
-TimOut   equ   %00100000
-ImgChg   equ   %00010000
-Suspend  equ   %00001000
-Condem   equ   %00000010
-Dead     equ   %00000001
+SysState       EQU       %10000000
+TimSleep       EQU       %01000000
+TimOut         EQU       %00100000
+ImgChg         EQU       %00010000
+Suspend        EQU       %00001000
+Condem         EQU       %00000010
+Dead           EQU       %00000001
 
-         ENDC
+               ENDC      
 
-         ttl   NitrOS-9 I/O Symbolic Definitions
-         pag
+               TTL       NitrOS-9 I/O Symbolic Definitions
+               PAG       
 *************************
 * Path Descriptor Offsets
 *
-         org   0
-PD.PD    rmb   1          Path Number
-PD.MOD   rmb   1          Mode (Read/Write/Update)
-PD.CNT   rmb   1          Number of Open Images
-PD.DEV   rmb   2          Device Table Entry Address
-PD.CPR   rmb   1          Current Process
-PD.RGS   rmb   2          Caller's Register Stack
-PD.BUF   rmb   2          Buffer Address
-PD.FST   rmb   32-.       File Manager's Storage
-PD.OPT   equ   .          PD GetSts(0) Options
-PD.DTP   rmb   1          Device Type
-         rmb   64-.       Path options
-PDSIZE   equ   .
+               ORG       0
+PD.PD          RMB       1                   Path Number
+PD.MOD         RMB       1                   Mode (Read/Write/Update)
+PD.CNT         RMB       1                   Number of Open Images
+PD.DEV         RMB       2                   Device Table Entry Address
+PD.CPR         RMB       1                   Current Process
+PD.RGS         RMB       2                   Caller's Register Stack
+PD.BUF         RMB       2                   Buffer Address
+PD.FST         RMB       32-.                File Manager's Storage
+PD.OPT         EQU       .                   PD GetSts(0) Options
+PD.DTP         RMB       1                   Device Type
+               RMB       64-.                Path options
+PDSIZE         EQU       .
 
 *
 * Pathlist Special Symbols
 *
-PDELIM   equ   '/         Pathlist Name Separator
-PDIR     equ   '.         Directory
-PENTIR   equ   '@         Entire Device
+PDELIM         EQU       '/                  Pathlist Name Separator
+PDIR           EQU       '.                  Directory
+PENTIR         EQU       '@                  Entire Device
 
-         pag  
+               PAG       
 ****************************
 * File Manager Entry Offsets
 *
-         org   0
-FMCREA   rmb   3          Create (Open New) File
-FMOPEN   rmb   3          Open File
-FMMDIR   rmb   3          Make Directory
-FMCDIR   rmb   3          Change Directory
-FMDLET   rmb   3          Delete File
-FMSEEK   rmb   3          Position File
-FMREAD   rmb   3          Read from File
-FMWRIT   rmb   3          Write to File
-FMRDLN   rmb   3          ReadLn
-FMWRLN   rmb   3          WritLn
-FMGSTA   rmb   3          Get File Status
-FMSSTA   rmb   3          Set File Status
-FMCLOS   rmb   3          Close File
+               ORG       0
+FMCREA         RMB       3                   Create (Open New) File
+FMOPEN         RMB       3                   Open File
+FMMDIR         RMB       3                   Make Directory
+FMCDIR         RMB       3                   Change Directory
+FMDLET         RMB       3                   Delete File
+FMSEEK         RMB       3                   Position File
+FMREAD         RMB       3                   Read from File
+FMWRIT         RMB       3                   Write to File
+FMRDLN         RMB       3                   ReadLn
+FMWRLN         RMB       3                   WritLn
+FMGSTA         RMB       3                   Get File Status
+FMSSTA         RMB       3                   Set File Status
+FMCLOS         RMB       3                   Close File
 
 *****************************
 * Device Driver Entry Offsets
 *
-         org   0
-D$INIT   rmb   3          Device Initialization
-D$READ   rmb   3          Read from Device
-D$WRIT   rmb   3          Write to Device
-D$GSTA   rmb   3          Get Device Status
-D$PSTA   rmb   3          Put Device Status
-D$TERM   rmb   3          Device Termination
+               ORG       0
+D$INIT         RMB       3                   Device Initialization
+D$READ         RMB       3                   Read from Device
+D$WRIT         RMB       3                   Write to Device
+D$GSTA         RMB       3                   Get Device Status
+D$PSTA         RMB       3                   Put Device Status
+D$TERM         RMB       3                   Device Termination
 
 *********************
 * Device Table Format
 *
-         org   0
-V$DRIV   rmb   2          Device Driver module
-V$STAT   rmb   2          Device Driver Static storage
-V$DESC   rmb   2          Device Descriptor module
-V$FMGR   rmb   2          File Manager module
-V$USRS   rmb   1          use count
-         IFGT  Level-1
-V$DRIVEX rmb   2          Device Driver execution address
-V$FMGREX rmb   2          File Manager execution address
-         ENDC
-DEVSIZ   equ   .
+               ORG       0
+V$DRIV         RMB       2                   Device Driver module
+V$STAT         RMB       2                   Device Driver Static storage
+V$DESC         RMB       2                   Device Descriptor module
+V$FMGR         RMB       2                   File Manager module
+V$USRS         RMB       1                   use count
+               IFGT      Level-1
+V$DRIVEX       RMB       2                   Device Driver execution address
+V$FMGREX       RMB       2                   File Manager execution address
+               ENDC      
+DEVSIZ         EQU       .
 
 *******************************
 * Device Static Storage Offsets
 *
-         org   0
-V.PAGE   rmb   1          Port Extended Address
-V.PORT   rmb   2          Device 'Base' Port Address
-V.LPRC   rmb   1          Last Active Process ID
-V.BUSY   rmb   1          Active Process ID (0=UnBusy)
-V.WAKE   rmb   1          Active PD if Driver MUST Wake-up
-V.USER   equ   .          Driver Allocation Origin
+               ORG       0
+V.PAGE         RMB       1                   Port Extended Address
+V.PORT         RMB       2                   Device 'Base' Port Address
+V.LPRC         RMB       1                   Last Active Process ID
+V.BUSY         RMB       1                   Active Process ID (0=UnBusy)
+V.WAKE         RMB       1                   Active PD if Driver MUST Wake-up
+V.USER         EQU       .                   Driver Allocation Origin
 
 ********************************
 * Interrupt Polling Table Format
 *
-         org   0
-Q$POLL   rmb   2          Absolute Polling Address
-Q$FLIP   rmb   1          Flip (EOR) Byte ..normally Zero
-Q$MASK   rmb   1          Polling Mask (after Flip)
-Q$SERV   rmb   2          Absolute Service routine Address
-Q$STAT   rmb   2          Static Storage Address
-Q$PRTY   rmb   1          Priority (Low Numbers=Top Priority)
-         IFGT  Level-1
-Q$MAP    rmb   2          NitrOS-9 Level 2 and above
-         ENDC
-POLSIZ   equ   .
+               ORG       0
+Q$POLL         RMB       2                   Absolute Polling Address
+Q$FLIP         RMB       1                   Flip (EOR) Byte ..normally Zero
+Q$MASK         RMB       1                   Polling Mask (after Flip)
+Q$SERV         RMB       2                   Absolute Service routine Address
+Q$STAT         RMB       2                   Static Storage Address
+Q$PRTY         RMB       1                   Priority (Low Numbers=Top Priority)
+               IFGT      Level-1
+Q$MAP          RMB       2                   NitrOS-9 Level 2 and above
+               ENDC      
+POLSIZ         EQU       .
 
 ********************
 * VIRQ packet format
 *
-         org   0
-Vi.Cnt   rmb   2          count down counter
-Vi.Rst   rmb   2          reset value for counter
-Vi.Stat  rmb   1          status byte
+               ORG       0
+Vi.Cnt         RMB       2                   count down counter
+Vi.Rst         RMB       2                   reset value for counter
+Vi.Stat        RMB       1                   status byte
 
-Vi.IFlag equ   %00000001  status byte virq flag
+Vi.IFlag       EQU       %00000001           status byte virq flag
 
-         pag  
+               PAG       
 *************************************
 * Machine Characteristics Definitions
 *
-R$CC     equ   0          Condition Codes register
-R$A      equ   1          A Accumulator
-R$B      equ   2          B Accumulator
-R$D      equ   R$A        Combined A:B Accumulator
-         IFNE  H6309
-R$E      equ   3          E Accumulator
-R$F      equ   4          F Accumulator
-R$W      equ   R$E        Combined E:F Accumulator
-R$Q      equ   R$A        Combined A:B:E:F Accumulator
-R$DP     equ   5          Direct Page register
-R$X      equ   6          X Index register
-R$Y      equ   8          Y Index register
-R$U      equ   10         User Stack register
-R$PC     equ   12         Program Counter register
-R$Size   equ   14         Total register package size
-         ELSE
-R$DP     equ   3          Direct Page register
-R$X      equ   4          X Index register
-R$Y      equ   6          Y Index register
-R$U      equ   8          User Stack register
-R$PC     equ   10         Program Counter register
-R$Size   equ   12         Total register package size
-         ENDC
+R$CC           EQU       0                   Condition Codes register
+R$A            EQU       1                   A Accumulator
+R$B            EQU       2                   B Accumulator
+R$D            EQU       R$A                 Combined A:B Accumulator
+               IFNE      H6309
+R$E            EQU       3                   E Accumulator
+R$F            EQU       4                   F Accumulator
+R$W            EQU       R$E                 Combined E:F Accumulator
+R$Q            EQU       R$A                 Combined A:B:E:F Accumulator
+R$DP           EQU       5                   Direct Page register
+R$X            EQU       6                   X Index register
+R$Y            EQU       8                   Y Index register
+R$U            EQU       10                  User Stack register
+R$PC           EQU       12                  Program Counter register
+R$Size         EQU       14                  Total register package size
+               ELSE      
+R$DP           EQU       3                   Direct Page register
+R$X            EQU       4                   X Index register
+R$Y            EQU       6                   Y Index register
+R$U            EQU       8                   User Stack register
+R$PC           EQU       10                  Program Counter register
+R$Size         EQU       12                  Total register package size
+               ENDC      
 
 * MD register masks
 * 6309 definitions
-DIV0     equ   %10000000  division by 0 trap flag       : 1 = trap occured
-badinstr equ   %01000000  illegal instruction trap flag : 1 = trap occured
+DIV0           EQU       %10000000           division by 0 trap flag       : 1 = trap occured
+badinstr       EQU       %01000000           illegal instruction trap flag : 1 = trap occured
 
-Entire   equ   %10000000  Full Register Stack flag
-FIRQMask equ   %01000000  Fast-Interrupt Mask bit
-HalfCrry equ   %00100000  Half Carry flag
-IRQMask  equ   %00010000  Interrupt Mask bit
-Negative equ   %00001000  Negative flag
-Zero     equ   %00000100  Zero flag
-TwosOvfl equ   %00000010  Two's Comp Overflow flag
-Carry    equ   %00000001  Carry bit
-IntMasks equ   IRQMask+FIRQMask
-Sign     equ   %10000000  sign bit
+Entire         EQU       %10000000           Full Register Stack flag
+FIRQMask       EQU       %01000000           Fast-Interrupt Mask bit
+HalfCrry       EQU       %00100000           Half Carry flag
+IRQMask        EQU       %00010000           Interrupt Mask bit
+Negative       EQU       %00001000           Negative flag
+Zero           EQU       %00000100           Zero flag
+TwosOvfl       EQU       %00000010           Two's Comp Overflow flag
+Carry          EQU       %00000001           Carry bit
+IntMasks       EQU       IRQMask+FIRQMask
+Sign           EQU       %10000000           sign bit
 
-         ttl   Error Code Definitions
-         pag
+               TTL       Error Code Definitions
+               PAG       
 ************************
 * Error Code Definitions
 *
 * Basic09 Error Codes
 *
-         org   10
-E$UnkSym rmb   1 Unknown symbol
-E$ExcVrb rmb   1 Excessive verbage
-E$IllStC rmb   1 Illegal statement construction
-E$ICOvf  rmb   1 I-code overflow
-E$IChRef rmb   1 Illegal channel reference
-E$IllMod rmb   1 Illegal mode
-E$IllNum rmb   1 Illegal number
-E$IllPrf rmb   1 Illegal prefix
-E$IllOpd rmb   1 Illegal operand
-E$IllOpr rmb   1 Illegal operator
-E$IllRFN rmb   1 Illegal record field name
-E$IllDim rmb   1 Illegal dimension
-E$IllLit rmb   1 Illegal literal
-E$IllRet rmb   1 Illegal relational
-E$IllSfx rmb   1 Illegal type suffix
-E$DimLrg rmb   1 Dimension too large
-E$LinLrg rmb   1 Line number too large
-E$NoAssg rmb   1 Missing assignment statement
-E$NoPath rmb   1 Missing path number
-E$NoComa rmb   1 Missing coma
-E$NoDim  rmb   1 Missing dimension
-E$NoDO   rmb   1 Missing DO statement
-E$MFull  rmb   1 Memory full
-E$NoGoto rmb   1 Missing GOTO
-E$NoLPar rmb   1 Missing left parenthesis
-E$NoLRef rmb   1 Missing line reference
-E$NoOprd rmb   1 Missing operand
-E$NoRPar rmb   1 Missing right parenthesis
-E$NoTHEN rmb   1 Missing THEN statement
-E$NoTO   rmb   1 Missing TO statement
-E$NoVRef rmb   1 Missing variable reference
-E$EndQou rmb   1 Missing end quote
-E$SubLrg rmb   1 Too many subscripts
-E$UnkPrc rmb   1 Unknown procedure
-E$MulPrc rmb   1 Multiply defined procedure
-E$DivZer rmb   1 Divice by zero
-E$TypMis rmb   1 Operand type mismatch
-E$StrOvf rmb   1 String stack overflow
-E$NoRout rmb   1 Unimplemented routine
-E$UndVar rmb   1 Undefined variable
-E$FltOvf rmb   1 Floating Overflow
-E$LnComp rmb   1 Line with compiler error
-E$ValRng rmb   1 Value out of range for destination
-E$SubOvf rmb   1 Subroutine stack overflow
-E$SubUnd rmb   1 Subroutine stack underflow
-E$SubRng rmb   1 Subscript out of range
-E$ParmEr rmb   1 Paraemter error
-E$SysOvf rmb   1 System stack overflow
-E$IOMism rmb   1 I/O type mismatch
-E$IONum  rmb   1 I/O numeric input format bad
-E$IOConv rmb   1 I/O conversion: number out of range
-E$IllInp rmb   1 Illegal input format
-E$IOFRpt rmb   1 I/O format repeat error
-E$IOFSyn rmb   1 I/O format syntax error
-E$IllPNm rmb   1 Illegal path number
-E$WrSub  rmb   1 Wrong number of subscripts
-E$NonRcO rmb   1 Non-record type operand
-E$IllA   rmb   1 Illegal argument
-E$IllCnt rmb   1 Illegal control structure
-E$UnmCnt rmb   1 Unmatched control structure
-E$IllFOR rmb   1 Illegal FOR variable
-E$IllExp rmb   1 Illegal expression type
-E$IllDec rmb   1 Illegal declarative statement
-E$ArrOvf rmb   1 Array size overflow
-E$UndLin rmb   1 Undefined line number
-E$MltLin rmb   1 Multiply defined line number
-E$MltVar rmb   1 Multiply defined variable
-E$IllIVr rmb   1 Illegal input variable
-E$SeekRg rmb   1 Seek out of range
-E$NoData rmb   1 Missing data statement
+               ORG       10
+E$UnkSym       RMB       1                   Unknown symbol
+E$ExcVrb       RMB       1                   Excessive verbage
+E$IllStC       RMB       1                   Illegal statement construction
+E$ICOvf        RMB       1                   I-code overflow
+E$IChRef       RMB       1                   Illegal channel reference
+E$IllMod       RMB       1                   Illegal mode
+E$IllNum       RMB       1                   Illegal number
+E$IllPrf       RMB       1                   Illegal prefix
+E$IllOpd       RMB       1                   Illegal operand
+E$IllOpr       RMB       1                   Illegal operator
+E$IllRFN       RMB       1                   Illegal record field name
+E$IllDim       RMB       1                   Illegal dimension
+E$IllLit       RMB       1                   Illegal literal
+E$IllRet       RMB       1                   Illegal relational
+E$IllSfx       RMB       1                   Illegal type suffix
+E$DimLrg       RMB       1                   Dimension too large
+E$LinLrg       RMB       1                   Line number too large
+E$NoAssg       RMB       1                   Missing assignment statement
+E$NoPath       RMB       1                   Missing path number
+E$NoComa       RMB       1                   Missing coma
+E$NoDim        RMB       1                   Missing dimension
+E$NoDO         RMB       1                   Missing DO statement
+E$MFull        RMB       1                   Memory full
+E$NoGoto       RMB       1                   Missing GOTO
+E$NoLPar       RMB       1                   Missing left parenthesis
+E$NoLRef       RMB       1                   Missing line reference
+E$NoOprd       RMB       1                   Missing operand
+E$NoRPar       RMB       1                   Missing right parenthesis
+E$NoTHEN       RMB       1                   Missing THEN statement
+E$NoTO         RMB       1                   Missing TO statement
+E$NoVRef       RMB       1                   Missing variable reference
+E$EndQou       RMB       1                   Missing end quote
+E$SubLrg       RMB       1                   Too many subscripts
+E$UnkPrc       RMB       1                   Unknown procedure
+E$MulPrc       RMB       1                   Multiply defined procedure
+E$DivZer       RMB       1                   Divice by zero
+E$TypMis       RMB       1                   Operand type mismatch
+E$StrOvf       RMB       1                   String stack overflow
+E$NoRout       RMB       1                   Unimplemented routine
+E$UndVar       RMB       1                   Undefined variable
+E$FltOvf       RMB       1                   Floating Overflow
+E$LnComp       RMB       1                   Line with compiler error
+E$ValRng       RMB       1                   Value out of range for destination
+E$SubOvf       RMB       1                   Subroutine stack overflow
+E$SubUnd       RMB       1                   Subroutine stack underflow
+E$SubRng       RMB       1                   Subscript out of range
+E$ParmEr       RMB       1                   Paraemter error
+E$SysOvf       RMB       1                   System stack overflow
+E$IOMism       RMB       1                   I/O type mismatch
+E$IONum        RMB       1                   I/O numeric input format bad
+E$IOConv       RMB       1                   I/O conversion: number out of range
+E$IllInp       RMB       1                   Illegal input format
+E$IOFRpt       RMB       1                   I/O format repeat error
+E$IOFSyn       RMB       1                   I/O format syntax error
+E$IllPNm       RMB       1                   Illegal path number
+E$WrSub        RMB       1                   Wrong number of subscripts
+E$NonRcO       RMB       1                   Non-record type operand
+E$IllA         RMB       1                   Illegal argument
+E$IllCnt       RMB       1                   Illegal control structure
+E$UnmCnt       RMB       1                   Unmatched control structure
+E$IllFOR       RMB       1                   Illegal FOR variable
+E$IllExp       RMB       1                   Illegal expression type
+E$IllDec       RMB       1                   Illegal declarative statement
+E$ArrOvf       RMB       1                   Array size overflow
+E$UndLin       RMB       1                   Undefined line number
+E$MltLin       RMB       1                   Multiply defined line number
+E$MltVar       RMB       1                   Multiply defined variable
+E$IllIVr       RMB       1                   Illegal input variable
+E$SeekRg       RMB       1                   Seek out of range
+E$NoData       RMB       1                   Missing data statement
 
 *
 * System Dependent Error Codes
 *
 
 * Level 2 windowing error codes
-         org   183
-E$IWTyp  rmb   1          Illegal window type
-E$WADef  rmb   1          Window already defined
-E$NFont  rmb   1          Font not found
-E$StkOvf rmb   1          Stack overflow
-E$IllArg rmb   1          Illegal argument
-         rmb   1          reserved
-E$ICoord rmb   1          Illegal coordinates
-E$Bug    rmb   1          Bug (should never be returned)
-E$BufSiz rmb   1          Buffer size is too small
-E$IllCmd rmb   1          Illegal command
-E$TblFul rmb   1          Screen or window table is full
-E$BadBuf rmb   1          Bad/Undefined buffer number
-E$IWDef  rmb   1          Illegal window definition
-E$WUndef rmb   1          Window undefined
+               ORG       183
+E$IWTyp        RMB       1                   Illegal window type
+E$WADef        RMB       1                   Window already defined
+E$NFont        RMB       1                   Font not found
+E$StkOvf       RMB       1                   Stack overflow
+E$IllArg       RMB       1                   Illegal argument
+               RMB       1                   reserved
+E$ICoord       RMB       1                   Illegal coordinates
+E$Bug          RMB       1                   Bug (should never be returned)
+E$BufSiz       RMB       1                   Buffer size is too small
+E$IllCmd       RMB       1                   Illegal command
+E$TblFul       RMB       1                   Screen or window table is full
+E$BadBuf       RMB       1                   Bad/Undefined buffer number
+E$IWDef        RMB       1                   Illegal window definition
+E$WUndef       RMB       1                   Window undefined
 
-E$Up     rmb   1          Up arrow pressed on SCF I$ReadLn with PD.UP enabled
-E$Dn     rmb   1          Down arrow pressed on SCF I$ReadLn with PD.DOWN enabled
-E$Alias  rmb   1
+E$Up           RMB       1                   Up arrow pressed on SCF I$ReadLn with PD.UP enabled
+E$Dn           RMB       1                   Down arrow pressed on SCF I$ReadLn with PD.DOWN enabled
+E$Alias        RMB       1
 
 
 *
 * Standard NitrOS-9 Error Codes
 *
-         org   200
-E$PthFul rmb   1          Path Table full
-E$BPNum  rmb   1          Bad Path Number
-E$Poll   rmb   1          Polling Table Full
-E$BMode  rmb   1          Bad Mode
-E$DevOvf rmb   1          Device Table Overflow
-E$BMID   rmb   1          Bad Module ID
-E$DirFul rmb   1          Module Directory Full
-E$MemFul rmb   1          Process Memory Full
-E$UnkSvc rmb   1          Unknown Service Code
-E$ModBsy rmb   1          Module Busy
-E$BPAddr rmb   1          Bad Page Address
-E$EOF    rmb   1          End of File
-         rmb   1
-E$NES    rmb   1          Non-Existing Segment
-E$FNA    rmb   1          File Not Accesible
-E$BPNam  rmb   1          Bad Path Name
-E$PNNF   rmb   1          Path Name Not Found
-E$SLF    rmb   1          Segment List Full
-E$CEF    rmb   1          Creating Existing File
-E$IBA    rmb   1          Illegal Block Address
-E$HangUp rmb   1          Carrier Detect Lost
-E$MNF    rmb   1          Module Not Found
-         rmb   1
-E$DelSP  rmb   1          Deleting Stack Pointer memory
-E$IPrcID rmb   1          Illegal Process ID
-E$BPrcID equ   E$IPrcID   Bad Process ID (formerly #238)
-         rmb   1
-E$NoChld rmb   1          No Children
-E$ISWI   rmb   1          Illegal SWI code
-E$PrcAbt rmb   1          Process Aborted
-E$PrcFul rmb   1          Process Table Full
-E$IForkP rmb   1          Illegal Fork Parameter
-E$KwnMod rmb   1          Known Module
-E$BMCRC  rmb   1          Bad Module CRC
-E$USigP  rmb   1          Unprocessed Signal Pending
-E$NEMod  rmb   1          Non Existing Module
-E$BNam   rmb   1          Bad Name
-E$BMHP   rmb   1          (bad module header parity)
-E$NoRAM  rmb   1          No (System) RAM Available
-E$DNE    rmb   1          Directory not empty
-E$NoTask rmb   1          No available Task number
-         rmb   $F0-.      reserved
-E$Unit   rmb   1          Illegal Unit (drive)
-E$Sect   rmb   1          Bad Sector number
-E$WP     rmb   1          Write Protect
-E$CRC    rmb   1          Bad Check Sum
-E$Read   rmb   1          Read Error
-E$Write  rmb   1          Write Error
-E$NotRdy rmb   1          Device Not Ready
-E$Seek   rmb   1          Seek Error
-E$Full   rmb   1          Media Full
-E$BTyp   rmb   1          Bad Type (incompatable) media
-E$DevBsy rmb   1          Device Busy
-E$DIDC   rmb   1          Disk ID Change
-E$Lock   rmb   1          Record is busy (locked out)
-E$Share  rmb   1          Non-sharable file busy
-E$DeadLk rmb   1          I/O Deadlock error
+               ORG       200
+E$PthFul       RMB       1                   Path Table full
+E$BPNum        RMB       1                   Bad Path Number
+E$Poll         RMB       1                   Polling Table Full
+E$BMode        RMB       1                   Bad Mode
+E$DevOvf       RMB       1                   Device Table Overflow
+E$BMID         RMB       1                   Bad Module ID
+E$DirFul       RMB       1                   Module Directory Full
+E$MemFul       RMB       1                   Process Memory Full
+E$UnkSvc       RMB       1                   Unknown Service Code
+E$ModBsy       RMB       1                   Module Busy
+E$BPAddr       RMB       1                   Bad Page Address
+E$EOF          RMB       1                   End of File
+               RMB       1
+E$NES          RMB       1                   Non-Existing Segment
+E$FNA          RMB       1                   File Not Accesible
+E$BPNam        RMB       1                   Bad Path Name
+E$PNNF         RMB       1                   Path Name Not Found
+E$SLF          RMB       1                   Segment List Full
+E$CEF          RMB       1                   Creating Existing File
+E$IBA          RMB       1                   Illegal Block Address
+E$HangUp       RMB       1                   Carrier Detect Lost
+E$MNF          RMB       1                   Module Not Found
+               RMB       1
+E$DelSP        RMB       1                   Deleting Stack Pointer memory
+E$IPrcID       RMB       1                   Illegal Process ID
+E$BPrcID       EQU       E$IPrcID            Bad Process ID (formerly #238)
+               RMB       1
+E$NoChld       RMB       1                   No Children
+E$ISWI         RMB       1                   Illegal SWI code
+E$PrcAbt       RMB       1                   Process Aborted
+E$PrcFul       RMB       1                   Process Table Full
+E$IForkP       RMB       1                   Illegal Fork Parameter
+E$KwnMod       RMB       1                   Known Module
+E$BMCRC        RMB       1                   Bad Module CRC
+E$USigP        RMB       1                   Unprocessed Signal Pending
+E$NEMod        RMB       1                   Non Existing Module
+E$BNam         RMB       1                   Bad Name
+E$BMHP         RMB       1                   (bad module header parity)
+E$NoRAM        RMB       1                   No (System) RAM Available
+E$DNE          RMB       1                   Directory not empty
+E$NoTask       RMB       1                   No available Task number
+               RMB       $F0-.               reserved
+E$Unit         RMB       1                   Illegal Unit (drive)
+E$Sect         RMB       1                   Bad Sector number
+E$WP           RMB       1                   Write Protect
+E$CRC          RMB       1                   Bad Check Sum
+E$Read         RMB       1                   Read Error
+E$Write        RMB       1                   Write Error
+E$NotRdy       RMB       1                   Device Not Ready
+E$Seek         RMB       1                   Seek Error
+E$Full         RMB       1                   Media Full
+E$BTyp         RMB       1                   Bad Type (incompatable) media
+E$DevBsy       RMB       1                   Device Busy
+E$DIDC         RMB       1                   Disk ID Change
+E$Lock         RMB       1                   Record is busy (locked out)
+E$Share        RMB       1                   Non-sharable file busy
+E$DeadLk       RMB       1                   I/O Deadlock error
 
 
-         IFEQ  Level-1
+               IFEQ      Level-1
 
 ********************************
 * Boot defs for NitrOS-9 Level 1
@@ -1233,16 +1233,16 @@
 * These defs are not strictly for 'Boot', but are for booting the
 * system.
 *
-Bt.Start equ   $EE00      Start address of the boot track in memory
+Bt.Start       EQU       $EE00               Start address of the boot track in memory
 
 * Boot area size on Dragon is only 16 sectors=4K
-	IFNE	DRAGON
-Bt.Size  equ   $1000	  Max size of boot file
-	ELSE
-Bt.Size  equ   $1080      Maximum size of bootfile
-	ENDC
+               IFNE      DRAGON
+Bt.Size        EQU       $1000               Max size of boot file
+               ELSE      
+Bt.Size        EQU       $1080               Maximum size of bootfile
+               ENDC      
 
-         ELSE
+               ELSE      
 
 ******************************************
 * Boot defs for NitrOS-9 Level 2 and above
@@ -1250,38 +1250,38 @@
 * These defs are not strictly for 'Boot', but are for booting the
 * system.
 *
-Bt.Block equ   $3B        Block to map in for the 'OS9BOOT' screen
-Bt.Flag  equ   $8A34      Flag in Bt.Block to verify that it's unchanged
-Bt.Offst equ   2          Offset into the screen where the current ptr is
-Bt.Start equ   $ED00      Start address of the boot track in memory
+Bt.Block       EQU       $3B                 Block to map in for the 'OS9BOOT' screen
+Bt.Flag        EQU       $8A34               Flag in Bt.Block to verify that it's unchanged
+Bt.Offst       EQU       2                   Offset into the screen where the current ptr is
+Bt.Start       EQU       $ED00               Start address of the boot track in memory
 
-         ENDC
+               ENDC      
 
 * Boot area on the Dragon starts on track 0 sector 2, imediatly 
 * after the blockmap.
 * On the CoCo, the boot track is all of track 34
 
-	IFNE	DRAGON
-Bt.Track equ   0	  Boot track
-Bt.Sec   equ   2	  Start LSN of boot area on boot track
-	ELSE
-Bt.Track equ   34         Boot track
-Bt.Sec   equ   0	  Start LSN of boot area on boot track
-	ENDC
+               IFNE      DRAGON
+Bt.Track       EQU       0                   Boot track
+Bt.Sec         EQU       2                   Start LSN of boot area on boot track
+               ELSE      
+Bt.Track       EQU       34                  Boot track
+Bt.Sec         EQU       0                   Start LSN of boot area on boot track
+               ENDC      
 
 
-         IFGT  Level-2
+               IFGT      Level-2
 ***************************
 * Level 3 Defs
 *
 * These definitions apply to NitrOS-9 Level 3
 *
-L3.Start equ   $2000      Start off at slot 1
-L3.Size  equ   $40        Go for 64 pages: 2 slots total
-L3.Blks  equ   L3.Size/$20 Number of slots
-L3.End   equ   L3.Start+L3.Size*$0100 end of L3 memory
-L3.SCF   equ   $0660      SCF block ptr
-L3.RBF   equ   L3.SCF+1   RBF block ptr
-         ENDC
+L3.Start       EQU       $2000               Start off at slot 1
+L3.Size        EQU       $40                 Go for 64 pages: 2 slots total
+L3.Blks        EQU       L3.Size/$20         Number of slots
+L3.End         EQU       L3.Start+L3.Size*$0100 end of L3 memory
+L3.SCF         EQU       $0660               SCF block ptr
+L3.RBF         EQU       L3.SCF+1            RBF block ptr
+               ENDC      
 
-         ENDC
+               ENDC      
--- a/defs/pipedefs	Tue Mar 14 04:09:31 2006 +0000
+++ b/defs/pipedefs	Tue Mar 14 12:20:57 2006 +0000
@@ -1,6 +1,6 @@
-         IFNE  PIPEDEFS-1
+               IFNE      PIPEDEFS-1
 
-PIPEDEFS set   1
+PIPEDEFS       SET       1
 
 ********************************************************************
 * PipeDefs - Pipe File Manager Definitions
@@ -13,60 +13,58 @@
 *          1988/12/03  Chris J. Burke
 * Coded from new PIPEMAN comments.
 
-
-         nam   PipeDefs
-         ttl   Pipe File Manager Definitions
-
+               NAM       PipeDefs
+               TTL       Pipe File Manager Definitions
 
 *
 *   IOMan equates duplicated for PipeMan use
 *
 
-NPATHS   set   16         ;Maximum local paths per task -- must match IOMan
-NameMax  set   29         ;Maximum length of a file name
+NPATHS         SET       16                  ;Maximum local paths per task -- must match IOMan
+NameMax        SET       29                  ;Maximum length of a file name
 
 *
 *   Device Driver Static Storage Layout
 *
-         org   V.User
-V.List   rmb   2          ;Pointer to 1st pipe's pipe buffer
-PManMem  equ   .          ;Device driver memory (drive table equivalent)
+               ORG       V.User
+V.List         RMB       2                   ;Pointer to 1st pipe's pipe buffer
+PManMem        EQU       .                   ;Device driver memory (drive table equivalent)
 
 *
 *   Pipe Buffer Data Structure
 *
-         org   0
-PP.PD    rmb   2          ;Pointer to shared path descriptor
-PP.Next  rmb   2          ;Pointer to next pipe buffer in system map
-PP.Prev  rmb   2          ;Pointer to previous pipe buffer in system map
-PP.Rsrv  rmb   2          ;Reserved
-PP.Data  equ   .          ;Data buffer begins at this offset
+               ORG       0
+PP.PD          RMB       2                   ;Pointer to shared path descriptor
+PP.Next        RMB       2                   ;Pointer to next pipe buffer in system map
+PP.Prev        RMB       2                   ;Pointer to previous pipe buffer in system map
+PP.Rsrv        RMB       2                   ;Reserved
+PP.Data        EQU       .                   ;Data buffer begins at this offset
 
 *
 *   Unique Path Descriptor Variables
 *
-         org   PD.FST
+               ORG       PD.FST
 *** PP.Read must have bit 4 clear; PP.Writ must be PP.Read XOR 4
-PD.Read  equ   .
-PD.RPID  rmb   1          ;Process ID of reader waiting on signal
-PD.RCT   rmb   1          ;Number of blocked readers
-PD.RSIG  rmb   1          ;Signal to send reader
-PD.REOR  rmb   1          ;Read EOR character
-PD.Writ  equ   .
-PD.WPID  rmb   1          ;Process ID of writer waiting on signal
-PD.WCT   rmb   1          ;Number of blocked writers
-PD.WSIG  rmb   1          ;Signal to send writer
-PD.WEOR  rmb   1          ;Write EOR character (dummy)
+PD.Read        EQU       .
+PD.RPID        RMB       1                   ;Process ID of reader waiting on signal
+PD.RCT         RMB       1                   ;Number of blocked readers
+PD.RSIG        RMB       1                   ;Signal to send reader
+PD.REOR        RMB       1                   ;Read EOR character
+PD.Writ        EQU       .
+PD.WPID        RMB       1                   ;Process ID of writer waiting on signal
+PD.WCT         RMB       1                   ;Number of blocked writers
+PD.WSIG        RMB       1                   ;Signal to send writer
+PD.WEOR        RMB       1                   ;Write EOR character (dummy)
 *** End of special section
-PD.End   rmb   2          ;Pointer to end of pipe buffer
-PD.NxtI  rmb   2          ;Next in pointer
-PD.NxtO  rmb   2          ;Next out pointer
-PD.RFlg  rmb   1          ;"Ready" flag
-PD.Wrtn  rmb   1          ;"Written" flag
-PD.BCnt  rmb   2          ;# queue elements currently bufered
-PD.Own   rmb   1          ;Process ID of pipe original creator
-PD.Keep  rmb   1          ;Non-zero if pipe has been kept open artificailly
-PD.QSiz  rmb   2          ;Max. elements in queue (copied from OPT section)
+PD.End         RMB       2                   ;Pointer to end of pipe buffer
+PD.NxtI        RMB       2                   ;Next in pointer
+PD.NxtO        RMB       2                   ;Next out pointer
+PD.RFlg        RMB       1                   ;"Ready" flag
+PD.Wrtn        RMB       1                   ;"Written" flag
+PD.BCnt        RMB       2                   ;# queue elements currently bufered
+PD.Own         RMB       1                   ;Process ID of pipe original creator
+PD.Keep        RMB       1                   ;Non-zero if pipe has been kept open artificailly
+PD.QSiz        RMB       2                   ;Max. elements in queue (copied from OPT section)
 
 *
 *   Path descriptor option section
@@ -75,24 +73,24 @@
 *   PD.ECnt is copied to PD.QSiz as part of OPEN or CREATE,
 *   to make room for the pipe name.
 *
-         org   (PD.OPT+1)
-PD.ESiz  rmb   1          ;Size of each queue element
-PD.ECnt  rmb   2          ;Max. elements in queue (initial position)
-         IFGT  Level-1
-         org   (PD.OPT+3)
-PD.Name  rmb   NameMax
-         ENDC
+               ORG       (PD.OPT+1)
+PD.ESiz        RMB       1                   ;Size of each queue element
+PD.ECnt        RMB       2                   ;Max. elements in queue (initial position)
+               IFGT      Level-1
+               ORG       (PD.OPT+3)
+PD.Name        RMB       NameMax
+               ENDC      
 
 *
 *   Device Descriptor definitions
 *
-IT.PDC   equ   $12        ;Pipe device class (like IT.DTP, IT.DVC)
-         org   IT.PDC
-         rmb   1          ;Leave room for device class
-IT.ESiz  rmb   1          ;Size of each queue element
-IT.ECnt  rmb   2          ;Max. elements in queue (initial position)
+IT.PDC         EQU       $12                 ;Pipe device class (like IT.DTP, IT.DVC)
+               ORG       IT.PDC
+               RMB       1                   ;Leave room for device class
+IT.ESiz        RMB       1                   ;Size of each queue element
+IT.ECnt        RMB       2                   ;Max. elements in queue (initial position)
 
 *   End of pipedefs
 
-         ENDC
+               ENDC      
 
--- a/defs/rbfdefs	Tue Mar 14 04:09:31 2006 +0000
+++ b/defs/rbfdefs	Tue Mar 14 12:20:57 2006 +0000
@@ -1,363 +1,362 @@
-         IFNE  RBFDEFS-1
-
-RBFDEFS  set   1
-
-********************************************************************
-* RBFDefs - Random Block File Manager Definitions
-*
-* $Id$
-*
-* RBF stands for 'Random Block Filemanager' and is a package of subroutines
-* that define the logical structure of a disk and allows access to the files
-* in that structure.
-*
-* The data structures in this file give RBF its 'personality' and are used
-* by RBF itself, as well as applications that will require disk I/O.
-*
-* Edt/Rev  YYYY/MM/DD  Modified by
-* Comment
-* ------------------------------------------------------------------
-*          1982/07/13  Robert F. Doggett
-* PD.Exten added to path descriptor and PE Entries defined.
-*
-*          1982/07/15  Robert F. Doggett
-* V.FileHd inserted in driver static storage.
-*
-*          1982/09/10  WGP
-* Level One/Level Two condionals added.
-*
-*          1982/09/17  WGP
-*
-*          1982/09/17  Robert F. Doggett
-* PD.SLE renamed to PD.Creat.
-*
-*          1982/09/17  Robert F. Doggett
-* V.DiskID, V.BMapSz, V.MapSct added for smart multi-sector bitmap searching.
-*
-*          1982/09/20  Robert F. Doggett
-* Reserved areas added in static storage.
-
-*          1983/06/07  Robert F. Doggett
-* Added InDriver flag in PD.SMF.
-*
-*          1983/06/13  Robert F. Doggett
-* Added PE.Req tmp save for PE.Lock.
-*
-*          1983/08/08  Robert F. Doggett
-* Reserved PD.SToff for Japanese.
-*
-*          1983/11/19  Robert F. Doggett
-* Added V.ResBit in drive tables.
-*
-*          1983/12/12  Robert F. Doggett
-* Added PE.Prior to save process priority.
-*
-*          1983/12/13  Robert F. Doggett
-* Added BufBusy bit in state flag (PD.SMF).
-*
-*          1984/07/06  Mark G. Hawkins
-* Added Bit Definitions for DD.FMT.
-*
-*          1987/06/23  Kevin K. Darling
-* Updated with Dev Desc Info
-*
-*          2003/06/02  Boisy G. Pitre
-* Updated comments for clarity.
-* Added TYP.256-TYP.2048 definitions for future expansion.
-*
-*          2004/04/14  Boisy G. Pitre
-* Added new entries to device descriptor as per OS-9 Level One V2.00.00
-* addendum.  Pointed out by Rodney Hamilton.
-*
-*	   2005/05/31  P.Harvey-Smith.
-* Added defines for bit 2 of IT.DNS, which the format command uses to 
-* determine if a drive should have it's track 0 as single or double density
-*
-*        2005/11/23  Robert Gault
-* Added IT.MPI giving it duplicate location with IT.TFM. This will not be
-* transferred to the path descriptor, thus the  equ *  rahter than  rmb 1.
-*
-*        2005/12/11  Boisy G. Pitre
-* Added IT.SOFF1-ITSOFF3 and IT.LLDRV for SuperDrivers.
-
-         nam   RBFDefs
-         ttl   Random Block File Manager Definitions
-
-
-         pag
-*******************************
-* RBF Device Descriptor Offsets
-*
-* These definitions are for RBF device descriptors.
-
-         org   M$DTyp
-         rmb   1          Device type (DT.RBF)
-IT.DRV   rmb   1          Drive number
-IT.STP   rmb   1          Step rate
-IT.TYP   rmb   1          Disk device type information
-IT.DNS   rmb   1          Density capability
-IT.CYL   rmb   2          Number of cylinders
-IT.SID   rmb   1          Number of surfaces
-IT.VFY   rmb   1          Verify disk writes (0 = verify, 1 = don't)
-IT.SCT   rmb   2          Default sectors/track
-IT.T0S   rmb   2          Default sectors/track for track 0 sector 0
-IT.ILV   rmb   1          Sector interleave offset
-IT.SAS   rmb   1          Segment allocation size
-* The following fields are from the OS-9 Level One V2.00.00 Addendum
-IT.TFM   rmb   1          DMA Transfer Mode
-IT.Exten rmb   2          Path Extension (PE) for record locking
-IT.SToff rmb   1          Sector/Track offsets (for "foreign" disk formats)
-* The following fields are not copied to the path descriptor
-IT.WPC   rmb   1          Write precomp cyl/4 (HD)
-IT.OFS   rmb   2          Starting cylinder offset (HD)
-IT.RWC   rmb   2          Reduced write current cylinder (HD)
-* These fields have been added because of SuperDriver.  They probably
-* can be used in other drivers
-         org   IT.WPC
-IT.SOFF1 rmb   1
-IT.SOFF2 rmb   1
-IT.SOFF3 rmb   1
-IT.LLDRV rmb   2
-IT.MPI   rmb   1
-
-
-* IT.TYP Definitions
-*
-TYP.HARD equ   %10000000	Hard disk
-TYP.FLP  equ   %00000000	Floppy disk
-TYP.NSF  equ   %01000000	Non-standard format
-TYP.SOF  equ   %00000000	Standard NitrOS-9 format
-
-* IT.TYP bit definitions if bit 7 of IT.TYP is set (hard disk)
-TYPH.256  equ  %00000000	256 byte sector media
-TYPH.512  equ  %00000001	512 byte sector media
-TYPH.1024 equ  %00000010	1024 byte sector media
-TYPH.2048 equ  %00000011	2048 byte sector media
-TYPH.SSM  equ  %00000011	Sector size mask
-TYPH.DRSV equ  %00001100	Driver-reserved bits
-TYPH.DSQ  equ  %00010000        Drive size query flag
-
-* IT.TYP bit definitions if bit 7 of IT.TYP is clear (floppy disk)
-TYP.5    equ   %00000000	5" media
-TYP.3    equ   %00000001	3.5" media
-TYP.SBO  equ   %00000010        Sector base offset (clear = 0; sect = 1)
-TYP.256  equ   %00000000	256 byte sector media
-TYP.512  equ   %00000100	512 byte sector media
-TYP.CCF  equ   %00100000	CoCo format
-TYP.NCCF equ   %00000000	Non-CoCo format
-
-* IT.DNS Definitions
-*
-
-* If bit 7 of IT.TYP is set, IT.DNS is driver-dependent
-
-* IT.DNS bit definitions if bit 7 of IT.TYP is clear (floppy disk)
-DNS.FM   equ   %00000000        Single-density (FM)
-DNS.MFM  equ   %00000001        Double-density (MFM)
-DNS.STD  equ   %00000000        Single track distance (48/135 tpi)
-DNS.DTD  equ   %00000010        Double track distance (96 tpi)
-
-* Added PHS,2005-05-31, as format seems to use these
-DNS.FM0  equ   %00000000	Single density track 0
-DNS.MFM0 equ   %00000100	Double density track 0
-
-* Floppy disk step rate definitions
-STP.30ms equ   0                30ms step rate
-STP.20ms equ   1                20ms step rate
-STP.12ms equ   2                12ms step rate
-STP.6ms  equ   3                6ms step rate
-
-         pag
-*************************************
-* Random Block Path Descriptor Format
-*
-* A path descriptor is created for every new path that is open
-* via the I$Open system call (processed by IOMan).  Process
-* descriptors track state information of a path.
-*
-         org   PD.FST
-PD.SMF   rmb   1          State flags
-PD.CP    rmb   4          Current logical byte position
-PD.SIZ   rmb   4          File size
-PD.SBL   rmb   3          Segment beginning lsn
-PD.SBP   rmb   3          Segment beginning psn
-PD.SSZ   rmb   3          Segment size
-PD.DSK   rmb   2          Disk id
-PD.DTB   rmb   2          Drive table ptr
-         org   PD.OPT
-         rmb   1          Device type
-PD.DRV   rmb   1          Drive number
-PD.STP   rmb   1          Step rate
-PD.TYP   rmb   1          Disk device type (5" 8" other)
-PD.DNS   rmb   1          Density capability
-PD.CYL   rmb   2          Number of cylinders
-PD.SID   rmb   1          Number of surfaces
-PD.VFY   rmb   1          0=verify disk writes
-PD.SCT   rmb   2          Default sectors/track
-PD.T0S   rmb   2          Default sectors/track tr00,s0
-PD.ILV   rmb   1          Sector interleave offset
-PD.SAS   rmb   1          Segment allocation size
-PD.TFM   rmb   1          DMA Transfer Mode
-PD.Exten rmb   2          Path Extension (PE) for record locking
-PD.SToff rmb   1          Sector/Track offsets (for "foreign" disk formats)
-PD.ATT   rmb   1          File attributes
-PD.FD    rmb   3          File descriptor psn
-PD.DFD   rmb   3          Directory file descriptor psn
-PD.DCP   rmb   4          File directory entry ptr
-PD.DVT   rmb   2          User readable dev tbl ptr
-
-* State Flags
-BUFMOD   equ   $01        Buffer modified
-SINBUF   equ   $02        Sector in buffer
-FDBUF    equ   $04        File descriptor in buffer
-*EOFSEC equ $08 End of file sector
-*EOF equ $10 End of file
-InDriver equ   $20        Currently in Disk Driver, or queued
-BufBusy  equ   $40        Buffer is currently busy
-
-         IFNE  Level-1
-************************************
-* Random Block Path Extension Format
-*
-* RBF paths under Level Two have additional information that
-* is referenced by the path extension area.
-*
-         org   0
-PE.PE    rmb   1          PE path number
-PE.PDptr rmb   2          Back ptr to this PE's Path Descriptor
-PE.NxFil rmb   2          Drive Open-File list ptr
-PE.Confl rmb   2          Circular File Conflict list
-PE.Lock  rmb   1          Path lockout status
-PE.LoLck rmb   4          Low Locked Logical addr
-PE.HiLck rmb   4          High Locked Logical addr
-PE.Wait  rmb   2          PE ptr to (next) locked-out PE
-PE.TmOut rmb   2          Max ticks to wait for locked segment
-PE.Owner rmb   1          Process ID of owner of locked segment
-PE.Req   rmb   1          Temp for PE.Lock in GAIN when LockSeg fails
-PE.Prior rmb   1          Temp for process priority while in driver
-PE.SigSg rmb   1          Signal code to send
-PE.SigID rmb   1          Process ID to send the signal to
-         rmb   32-.       Reserved
-PE.FilNm rmb   32         Temp for filename during directory search
-
-* PE.Lock status codes
-Unlocked equ   0          No portion of file is locked
-RcdLock  equ   1          Record from LoLck to HiLck locked
-FileLock equ   2          Entire file locked
-EofLock  equ   4          End of file is locked
-         ENDC  
-
-
-         pag
-***********************
-* LSN0 Disk Data Format
-*
-* Logical Sector Number 0 is the first sector on an RBF formatted device
-* and contains information about the device's size and format.
-*
-         org   0
-DD.TOT   rmb   3          Total number of sectors
-DD.TKS   rmb   1          Track size in sectors
-DD.MAP   rmb   2          Number of bytes in allocation bit map
-DD.BIT   rmb   2          Number of sectors/bit
-DD.DIR   rmb   3          Address of root directory fd
-DD.OWN   rmb   2          Owner
-DD.ATT   rmb   1          Attributes
-DD.DSK   rmb   2          Disk ID
-DD.FMT   rmb   1          Disk format; density/sides
-DD.SPT   rmb   2          Sectors/track
-DD.RES   rmb   2          Reserved for future use
-DD.SIZ   equ   .          Device descriptor minimum size
-DD.BT    rmb   3          System bootstrap sector
-DD.BSZ   rmb   2          Size of system bootstrap
-DD.DAT   rmb   5          Creation date
-DD.NAM   rmb   32         Volume name
-DD.OPT   rmb   32         Option area
-
-* DD.FMT Bit Definitions - valid only if device is a floppy disk
-FMT.SIDE equ   %00000001  Single Sided=0, Double Sided=1
-FMT.DNS  equ   %00000010  Single Density=0, Double Density=1
-FMT.TDNS equ   %00000100  Track Density: 48/135 TPI=0, 96 TPI=1
-FMT.T0DN equ   %00100000  Track 0 Density, see FMT.DNS
-
-
-         pag
-************************
-* File Descriptor Format
-*
-* The file descriptor is a sector that is present for every file
-* on an RBF device.  It contains attributes, modification dates,
-* and segment information on a file.
-*
-         org   0
-FD.ATT   rmb   1          Attributes
-FD.OWN   rmb   2          Owner
-FD.DAT   rmb   5          Date last modified
-FD.LNK   rmb   1          Link count
-FD.SIZ   rmb   4          File size
-FD.Creat rmb   3          Segment list extension
-FD.SEG   equ   .          Beginning of segment list
-* Segment List Entry Format
-         org   0
-FDSL.A   rmb   3          Segment beginning physical sector number
-FDSL.B   rmb   2          Segment size
-FDSL.S   equ   .          Segment list entry size
-FD.LS1   equ   FD.SEG+((256-FD.SEG)/FDSL.S-1)*FDSL.S
-FD.LS2   equ   (256/FDSL.S-1)*FDSL.S
-MINSEC   set   16
-
-
-         pag
-************************
-* Directory Entry Format
-*
-* Directory entries are part of a directory and define the name
-* of the file, as well as a pointer to its file descriptor.
-*
-         org   0
-DIR.NM   rmb   29         File name
-DIR.FD   rmb   3          File descriptor physical sector number
-DIR.SZ   equ   .          Directory record size
-
-
-         pag
-********************
-* RBF Static Storage
-*
-* Overall Disk Static Storage
-*
-* Note:  This does not reserve any memory for drive tables.  Each
-*        driver is responsible for reserving sufficient memory for
-*        the appropriate number of tables.
-*
-         org   V.USER     Reserve required           ($06)
-V.NDRV   rmb   1          Number of drives           ($07)
-         rmb   8          reserved                   ($08)
-DRVBEG   equ   .          Beginning of drive tables  ($10)
-
-
-         pag
-****************
-* Global Storage For Disk Drive Tables
-*
-* Each table contains the first 'DD.SIZ' bytes from
-* LSN 0, and the current track, stepping rate,
-* bitmap use flag, and disk type.
-*
-         org   0
-         rmb   DD.SIZ     Device descriptor, LSN 0
-V.TRAK   rmb   2          Current track
-V.BMB    rmb   1          Bit-map use flag
-V.FileHd rmb   2          Open file list for this drive
-V.DiskID rmb   2          Disk ID
-V.BMapSz rmb   1          Bitmap Size
-V.MapSct rmb   1          Lowest reasonable bitmap sector
-V.ResBit rmb   1          Reserved bitmap sector (for compaction)
-V.ScTkOf rmb   1          Sector/Track byte (Combined from descriptor)
-V.ScOfst rmb   1          Sector offset split from byte above
-V.TkOfst rmb   1          Track offset split from byte above
-         rmb   4          Reserved
-DRVMEM   equ   .
-
-         ENDC
-
+               IFNE      RBFDEFS-1
+
+RBFDEFS        SET       1
+
+********************************************************************
+* RBFDefs - Random Block File Manager Definitions
+*
+* $Id$
+*
+* RBF stands for 'Random Block Filemanager' and is a package of subroutines
+* that define the logical structure of a disk and allows access to the files
+* in that structure.
+*
+* The data structures in this file give RBF its 'personality' and are used
+* by RBF itself, as well as applications that will require disk I/O.
+*
+* Edt/Rev  YYYY/MM/DD  Modified by
+* Comment
+* ------------------------------------------------------------------
+*          1982/07/13  Robert F. Doggett
+* PD.Exten added to path descriptor and PE Entries defined.
+*
+*          1982/07/15  Robert F. Doggett
+* V.FileHd inserted in driver static storage.
+*
+*          1982/09/10  WGP
+* Level One/Level Two condionals added.
+*
+*          1982/09/17  WGP
+*
+*          1982/09/17  Robert F. Doggett
+* PD.SLE renamed to PD.Creat.
+*
+*          1982/09/17  Robert F. Doggett
+* V.DiskID, V.BMapSz, V.MapSct added for smart multi-sector bitmap searching.
+*
+*          1982/09/20  Robert F. Doggett
+* Reserved areas added in static storage.
+
+*          1983/06/07  Robert F. Doggett
+* Added InDriver flag in PD.SMF.
+*
+*          1983/06/13  Robert F. Doggett
+* Added PE.Req tmp save for PE.Lock.
+*
+*          1983/08/08  Robert F. Doggett
+* Reserved PD.SToff for Japanese.
+*
+*          1983/11/19  Robert F. Doggett
+* Added V.ResBit in drive tables.
+*
+*          1983/12/12  Robert F. Doggett
+* Added PE.Prior to save process priority.
+*
+*          1983/12/13  Robert F. Doggett
+* Added BufBusy bit in state flag (PD.SMF).
+*
+*          1984/07/06  Mark G. Hawkins
+* Added Bit Definitions for DD.FMT.
+*
+*          1987/06/23  Kevin K. Darling
+* Updated with Dev Desc Info
+*
+*          2003/06/02  Boisy G. Pitre
+* Updated comments for clarity.
+* Added TYP.256-TYP.2048 definitions for future expansion.
+*
+*          2004/04/14  Boisy G. Pitre
+* Added new entries to device descriptor as per OS-9 Level One V2.00.00
+* addendum.  Pointed out by Rodney Hamilton.
+*
+*	       2005/05/31  P.Harvey-Smith.
+* Added defines for bit 2 of IT.DNS, which the format command uses to 
+* determine if a drive should have it's track 0 as single or double density
+*
+*          2005/11/23  Robert Gault
+* Added IT.MPI giving it duplicate location with IT.TFM. This will not be
+* transferred to the path descriptor, thus the  equ *  rahter than  rmb 1.
+*
+*          2005/12/11  Boisy G. Pitre
+* Added IT.SOFF1-ITSOFF3 and IT.LLDRV for SuperDrivers.
+
+               NAM       RBFDefs
+               TTL       Random Block File Manager Definitions
+
+               PAG       
+*******************************
+* RBF Device Descriptor Offsets
+*
+* These definitions are for RBF device descriptors.
+
+               ORG       M$DTyp
+               RMB       1                   Device type (DT.RBF)
+IT.DRV         RMB       1                   Drive number
+IT.STP         RMB       1                   Step rate
+IT.TYP         RMB       1                   Disk device type information
+IT.DNS         RMB       1                   Density capability
+IT.CYL         RMB       2                   Number of cylinders
+IT.SID         RMB       1                   Number of surfaces
+IT.VFY         RMB       1                   Verify disk writes (0 = verify, 1 = don't)
+IT.SCT         RMB       2                   Default sectors/track
+IT.T0S         RMB       2                   Default sectors/track for track 0 sector 0
+IT.ILV         RMB       1                   Sector interleave offset
+IT.SAS         RMB       1                   Segment allocation size
+* The following fields are from the OS-9 Level One V2.00.00 Addendum
+IT.TFM         RMB       1                   DMA Transfer Mode
+IT.Exten       RMB       2                   Path Extension (PE) for record locking
+IT.SToff       RMB       1                   Sector/Track offsets (for "foreign" disk formats)
+* The following fields are not copied to the path descriptor
+IT.WPC         RMB       1                   Write precomp cyl/4 (HD)
+IT.OFS         RMB       2                   Starting cylinder offset (HD)
+IT.RWC         RMB       2                   Reduced write current cylinder (HD)
+* These fields have been added because of SuperDriver.  They probably
+* can be used in other drivers
+               ORG       IT.WPC
+IT.SOFF1       RMB       1
+IT.SOFF2       RMB       1
+IT.SOFF3       RMB       1
+IT.LLDRV       RMB       2
+IT.MPI         RMB       1
+
+
+* IT.TYP Definitions
+*
+TYP.HARD       EQU       %10000000           Hard disk
+TYP.FLP        EQU       %00000000           Floppy disk
+TYP.NSF        EQU       %01000000           Non-standard format
+TYP.SOF        EQU       %00000000           Standard NitrOS-9 format
+
+* IT.TYP bit definitions if bit 7 of IT.TYP is set (hard disk)
+TYPH.256       EQU       %00000000           256 byte sector media
+TYPH.512       EQU       %00000001           512 byte sector media
+TYPH.1024      EQU       %00000010           1024 byte sector media
+TYPH.2048      EQU       %00000011           2048 byte sector media
+TYPH.SSM       EQU       %00000011           Sector size mask
+TYPH.DRSV      EQU       %00001100           Driver-reserved bits
+TYPH.DSQ       EQU       %00010000           Drive size query flag
+
+* IT.TYP bit definitions if bit 7 of IT.TYP is clear (floppy disk)
+TYP.5          EQU       %00000000           5" media
+TYP.3          EQU       %00000001           3.5" media
+TYP.SBO        EQU       %00000010           Sector base offset (clear = 0; sect = 1)
+TYP.256        EQU       %00000000           256 byte sector media
+TYP.512        EQU       %00000100           512 byte sector media
+TYP.CCF        EQU       %00100000           CoCo format
+TYP.NCCF       EQU       %00000000           Non-CoCo format
+
+* IT.DNS Definitions
+*
+
+* If bit 7 of IT.TYP is set, IT.DNS is driver-dependent
+
+* IT.DNS bit definitions if bit 7 of IT.TYP is clear (floppy disk)
+DNS.FM         EQU       %00000000           Single-density (FM)
+DNS.MFM        EQU       %00000001           Double-density (MFM)
+DNS.STD        EQU       %00000000           Single track distance (48/135 tpi)
+DNS.DTD        EQU       %00000010           Double track distance (96 tpi)
+
+* Added PHS,2005-05-31, as format seems to use these
+DNS.FM0        EQU       %00000000           Single density track 0
+DNS.MFM0       EQU       %00000100           Double density track 0
+
+* Floppy disk step rate definitions
+STP.30ms       EQU       0                   30ms step rate
+STP.20ms       EQU       1                   20ms step rate
+STP.12ms       EQU       2                   12ms step rate
+STP.6ms        EQU       3                   6ms step rate
+
+               PAG       
+*************************************
+* Random Block Path Descriptor Format
+*
+* A path descriptor is created for every new path that is open
+* via the I$Open system call (processed by IOMan).  Process
+* descriptors track state information of a path.
+*
+               ORG       PD.FST
+PD.SMF         RMB       1                   State flags
+PD.CP          RMB       4                   Current logical byte position
+PD.SIZ         RMB       4                   File size
+PD.SBL         RMB       3                   Segment beginning lsn
+PD.SBP         RMB       3                   Segment beginning psn
+PD.SSZ         RMB       3                   Segment size
+PD.DSK         RMB       2                   Disk id
+PD.DTB         RMB       2                   Drive table ptr
+               ORG       PD.OPT
+               RMB       1                   Device type
+PD.DRV         RMB       1                   Drive number
+PD.STP         RMB       1                   Step rate
+PD.TYP         RMB       1                   Disk device type (5" 8" other)
+PD.DNS         RMB       1                   Density capability
+PD.CYL         RMB       2                   Number of cylinders
+PD.SID         RMB       1                   Number of surfaces
+PD.VFY         RMB       1                   0=verify disk writes
+PD.SCT         RMB       2                   Default sectors/track
+PD.T0S         RMB       2                   Default sectors/track tr00,s0
+PD.ILV         RMB       1                   Sector interleave offset
+PD.SAS         RMB       1                   Segment allocation size
+PD.TFM         RMB       1                   DMA Transfer Mode
+PD.Exten       RMB       2                   Path Extension (PE) for record locking
+PD.SToff       RMB       1                   Sector/Track offsets (for "foreign" disk formats)
+PD.ATT         RMB       1                   File attributes
+PD.FD          RMB       3                   File descriptor psn
+PD.DFD         RMB       3                   Directory file descriptor psn
+PD.DCP         RMB       4                   File directory entry ptr
+PD.DVT         RMB       2                   User readable dev tbl ptr
+
+* State Flags
+BUFMOD         EQU       $01                 Buffer modified
+SINBUF         EQU       $02                 Sector in buffer
+FDBUF          EQU       $04                 File descriptor in buffer
+*EOFSEC equ $08 End of file sector
+*EOF equ $10 End of file
+InDriver       EQU       $20                 Currently in Disk Driver, or queued
+BufBusy        EQU       $40                 Buffer is currently busy
+
+               IFNE      Level-1
+************************************
+* Random Block Path Extension Format
+*
+* RBF paths under Level Two have additional information that
+* is referenced by the path extension area.
+*
+               ORG       0
+PE.PE          RMB       1                   PE path number
+PE.PDptr       RMB       2                   Back ptr to this PE's Path Descriptor
+PE.NxFil       RMB       2                   Drive Open-File list ptr
+PE.Confl       RMB       2                   Circular File Conflict list
+PE.Lock        RMB       1                   Path lockout status
+PE.LoLck       RMB       4                   Low Locked Logical addr
+PE.HiLck       RMB       4                   High Locked Logical addr
+PE.Wait        RMB       2                   PE ptr to (next) locked-out PE
+PE.TmOut       RMB       2                   Max ticks to wait for locked segment
+PE.Owner       RMB       1                   Process ID of owner of locked segment
+PE.Req         RMB       1                   Temp for PE.Lock in GAIN when LockSeg fails
+PE.Prior       RMB       1                   Temp for process priority while in driver
+PE.SigSg       RMB       1                   Signal code to send
+PE.SigID       RMB       1                   Process ID to send the signal to
+               RMB       32-.                Reserved
+PE.FilNm       RMB       32                  Temp for filename during directory search
+
+* PE.Lock status codes
+Unlocked       EQU       0                   No portion of file is locked
+RcdLock        EQU       1                   Record from LoLck to HiLck locked
+FileLock       EQU       2                   Entire file locked
+EofLock        EQU       4                   End of file is locked
+               ENDC      
+
+
+               PAG       
+***********************
+* LSN0 Disk Data Format
+*
+* Logical Sector Number 0 is the first sector on an RBF formatted device
+* and contains information about the device's size and format.
+*
+               ORG       0
+DD.TOT         RMB       3                   Total number of sectors
+DD.TKS         RMB       1                   Track size in sectors
+DD.MAP         RMB       2                   Number of bytes in allocation bit map
+DD.BIT         RMB       2                   Number of sectors/bit
+DD.DIR         RMB       3                   Address of root directory fd
+DD.OWN         RMB       2                   Owner
+DD.ATT         RMB       1                   Attributes
+DD.DSK         RMB       2                   Disk ID
+DD.FMT         RMB       1                   Disk format; density/sides
+DD.SPT         RMB       2                   Sectors/track
+DD.RES         RMB       2                   Reserved for future use
+DD.SIZ         EQU       .                   Device descriptor minimum size
+DD.BT          RMB       3                   System bootstrap sector
+DD.BSZ         RMB       2                   Size of system bootstrap
+DD.DAT         RMB       5                   Creation date
+DD.NAM         RMB       32                  Volume name
+DD.OPT         RMB       32                  Option area
+
+* DD.FMT Bit Definitions - valid only if device is a floppy disk
+FMT.SIDE       EQU       %00000001           Single Sided=0, Double Sided=1
+FMT.DNS        EQU       %00000010           Single Density=0, Double Density=1
+FMT.TDNS       EQU       %00000100           Track Density: 48/135 TPI=0, 96 TPI=1
+FMT.T0DN       EQU       %00100000           Track 0 Density, see FMT.DNS
+
+
+               PAG       
+************************
+* File Descriptor Format
+*
+* The file descriptor is a sector that is present for every file
+* on an RBF device.  It contains attributes, modification dates,
+* and segment information on a file.
+*
+               ORG       0
+FD.ATT         RMB       1                   Attributes
+FD.OWN         RMB       2                   Owner
+FD.DAT         RMB       5                   Date last modified
+FD.LNK         RMB       1                   Link count
+FD.SIZ         RMB       4                   File size
+FD.Creat       RMB       3                   Segment list extension
+FD.SEG         EQU       .                   Beginning of segment list
+* Segment List Entry Format
+               ORG       0
+FDSL.A         RMB       3                   Segment beginning physical sector number
+FDSL.B         RMB       2                   Segment size
+FDSL.S         EQU       .                   Segment list entry size
+FD.LS1         EQU       FD.SEG+((256-FD.SEG)/FDSL.S-1)*FDSL.S
+FD.LS2         EQU       (256/FDSL.S-1)*FDSL.S
+MINSEC         SET       16
+
+
+               PAG       
+************************
+* Directory Entry Format
+*
+* Directory entries are part of a directory and define the name
+* of the file, as well as a pointer to its file descriptor.
+*
+               ORG       0
+DIR.NM         RMB       29                  File name
+DIR.FD         RMB       3                   File descriptor physical sector number
+DIR.SZ         EQU       .                   Directory record size
+
+
+               PAG       
+********************
+* RBF Static Storage
+*
+* Overall Disk Static Storage
+*
+* Note:  This does not reserve any memory for drive tables.  Each
+*        driver is responsible for reserving sufficient memory for
+*        the appropriate number of tables.
+*
+               ORG       V.USER              Reserve required           ($06)
+V.NDRV         RMB       1                   Number of drives           ($07)
+               RMB       8                   reserved                   ($08)
+DRVBEG         EQU       .                   Beginning of drive tables  ($10)
+
+
+               PAG       
+****************
+* Global Storage For Disk Drive Tables
+*
+* Each table contains the first 'DD.SIZ' bytes from
+* LSN 0, and the current track, stepping rate,
+* bitmap use flag, and disk type.
+*
+               ORG       0
+               RMB       DD.SIZ              Device descriptor, LSN 0
+V.TRAK         RMB       2                   Current track
+V.BMB          RMB       1                   Bit-map use flag
+V.FileHd       RMB       2                   Open file list for this drive
+V.DiskID       RMB       2                   Disk ID
+V.BMapSz       RMB       1                   Bitmap Size
+V.MapSct       RMB       1                   Lowest reasonable bitmap sector
+V.ResBit       RMB       1                   Reserved bitmap sector (for compaction)
+V.ScTkOf       RMB       1                   Sector/Track byte (Combined from descriptor)
+V.ScOfst       RMB       1                   Sector offset split from byte above
+V.TkOfst       RMB       1                   Track offset split from byte above
+               RMB       4                   Reserved
+DRVMEM         EQU       .
+
+               ENDC      
+
--- a/defs/scfdefs	Tue Mar 14 04:09:31 2006 +0000
+++ b/defs/scfdefs	Tue Mar 14 12:20:57 2006 +0000
@@ -1,6 +1,6 @@
-         IFNE  SCFDEFS-1
+               IFNE      SCFDEFS-1
 
-SCFDEFS  set   1
+SCFDEFS        SET       1
 
 ********************************************************************
 * SCFDefs - Sequential Character File Manager Definitions
@@ -40,126 +40,125 @@
 *          2004/05/17  Boisy G. Pitre
 * Added higher baud rates.
 
-         nam   SCFDefs
-         ttl   Sequential File Manager Definitions
+               NAM       SCFDefs
+               TTL       Sequential File Manager Definitions
 
-
-         pag
+               PAG       
 *******************************
 * SCF Device Descriptor Offsets
 *
 * These definitions are for SCF device descriptors.
 
-         org   M$DTyp
-IT.DVC   rmb   1          Device type (DT.SCF)
-IT.UPC   rmb   1          Uppercase flag
-IT.BSO   rmb   1          Backspace behavior
-IT.DLO   rmb   1          Delete behavior
-IT.EKO   rmb   1          Echo flag
-IT.ALF   rmb   1          Auto linefeed flag
-IT.NUL   rmb   1          End-of-line null count
-IT.PAU   rmb   1          Page pause flag
-IT.PAG   rmb   1          Number of lines per page
-IT.BSP   rmb   1          Backspace character
-IT.DEL   rmb   1          Delete-line character
-IT.EOR   rmb   1          End-of-record character
-IT.EOF   rmb   1          End-of-file character
-IT.RPR   rmb   1          Reprint-line character
-IT.DUP   rmb   1          Duplicate-last-line character
-IT.PSC   rmb   1          Pause character
-IT.INT   rmb   1          Interrupt character
-IT.QUT   rmb   1          Quit character
-IT.BSE   rmb   1          Backspace echo character
-IT.OVF   rmb   1          Bell character
-IT.PAR   rmb   1          Parity
-IT.BAU   rmb   1          Baud rate
-IT.D2P   rmb   2          Attached device name string offset
-IT.XON   rmb   1          X-ON character
-IT.XOFF  rmb   1          X-OFF character
-IT.COL   rmb   1          Number of columns for display
-IT.ROW   rmb   1          Number of rows for display
-IT.XTYP  rmb   1          Extended type (added by BRI)
+               ORG       M$DTyp
+IT.DVC         RMB       1                   Device type (DT.SCF)
+IT.UPC         RMB       1                   Uppercase flag
+IT.BSO         RMB       1                   Backspace behavior
+IT.DLO         RMB       1                   Delete behavior
+IT.EKO         RMB       1                   Echo flag
+IT.ALF         RMB       1                   Auto linefeed flag
+IT.NUL         RMB       1                   End-of-line null count
+IT.PAU         RMB       1                   Page pause flag
+IT.PAG         RMB       1                   Number of lines per page
+IT.BSP         RMB       1                   Backspace character
+IT.DEL         RMB       1                   Delete-line character
+IT.EOR         RMB       1                   End-of-record character
+IT.EOF         RMB       1                   End-of-file character
+IT.RPR         RMB       1                   Reprint-line character
+IT.DUP         RMB       1                   Duplicate-last-line character
+IT.PSC         RMB       1                   Pause character
+IT.INT         RMB       1                   Interrupt character
+IT.QUT         RMB       1                   Quit character
+IT.BSE         RMB       1                   Backspace echo character
+IT.OVF         RMB       1                   Bell character
+IT.PAR         RMB       1                   Parity
+IT.BAU         RMB       1                   Baud rate
+IT.D2P         RMB       2                   Attached device name string offset
+IT.XON         RMB       1                   X-ON character
+IT.XOFF        RMB       1                   X-OFF character
+IT.COL         RMB       1                   Number of columns for display
+IT.ROW         RMB       1                   Number of rows for display
+IT.XTYP        RMB       1                   Extended type (added by BRI)
 
-         IFGT  Level-1
+               IFGT      Level-1
 * Window Descriptor Additions
 * For CoCo window, where IT.PAR = $80
-         org   IT.ROW+1
-IT.WND   rmb   1          Window number (matches device name) ($2E)
-IT.VAL   rmb   1          Use defaults on Init (0=no, 1=yes)
-IT.STY   rmb   1          Screen type default
-IT.CPX   rmb   1          Column start default
-IT.CPY   rmb   1          Row start default
-IT.FGC   rmb   1          Foreground color default
-IT.BGC   rmb   1          Background color default
-IT.BDC   rmb   1          Border color default
-         ENDC
+               ORG       IT.ROW+1
+IT.WND         RMB       1                   Window number (matches device name) ($2E)
+IT.VAL         RMB       1                   Use defaults on Init (0=no, 1=yes)
+IT.STY         RMB       1                   Screen type default
+IT.CPX         RMB       1                   Column start default
+IT.CPY         RMB       1                   Row start default
+IT.FGC         RMB       1                   Foreground color default
+IT.BGC         RMB       1                   Background color default
+IT.BDC         RMB       1                   Border color default
+               ENDC      
 
 
-         pag
+               PAG       
 ********************
 * SCF Static Storage
 *
 * SCF devices must reserve this space for SCF
 *
-         org   V.USER
-V.TYPE   rmb   1          Device type or parity
-V.LINE   rmb   1          Lines left until end of page
-V.PAUS   rmb   1          Immediate Pause request
-V.DEV2   rmb   2          Attached device's static
-V.INTR   rmb   1          Interrupt char
-V.QUIT   rmb   1          Quit char
-V.PCHR   rmb   1          Pause char
-V.ERR    rmb   1          Accumulated errors
-V.XON    rmb   1          X-On char
-V.XOFF   rmb   1          X-Off char
-V.KANJI  rmb   1          Kanji mode flag
-V.KBUF   rmb   2          Kana - Kanji convert routine work address
-V.MODADR rmb   2          Kana - Kanji convert module address
-V.PDLHd  rmb   2          Open path descriptor list head pointer
-V.RSV    rmb   5          Reserve bytes for future expansion
-V.SCF    equ   .          Total SCF manager static overhead
+               ORG       V.USER
+V.TYPE         RMB       1                   Device type or parity
+V.LINE         RMB       1                   Lines left until end of page
+V.PAUS         RMB       1                   Immediate Pause request
+V.DEV2         RMB       2                   Attached device's static
+V.INTR         RMB       1                   Interrupt char
+V.QUIT         RMB       1                   Quit char
+V.PCHR         RMB       1                   Pause char
+V.ERR          RMB       1                   Accumulated errors
+V.XON          RMB       1                   X-On char
+V.XOFF         RMB       1                   X-Off char
+V.KANJI        RMB       1                   Kanji mode flag
+V.KBUF         RMB       2                   Kana - Kanji convert routine work address
+V.MODADR       RMB       2                   Kana - Kanji convert module address
+V.PDLHd        RMB       2                   Open path descriptor list head pointer
+V.RSV          RMB       5                   Reserve bytes for future expansion
+V.SCF          EQU       .                   Total SCF manager static overhead
 
 
-         pag
+               PAG       
 ***********************
 * Character Definitions
 *
-C$NULL   set   0          Null char
-C$RPET   set   $01        (CTRL-A - SOH) Repeat last input line
-C$INTR   set   $03        (CTRL-C - ETX) Keyboard interrupt
-C$RPRT   set   $04        (CTRL-D - EOT) Reprint current input line
-C$QUIT   set   $05        (CTRL-E - ENQ) Keyboard Abort
-C$BELL   set   $07        (CTRL-G - BEL) Line overflow warning
-C$BSP    set   $08        (CTRL-H - BS ) Back space
-C$RARR   set   $09        Right Arrow
-C$EL     set   $05        Erase Line
-C$LF     set   $0A        Line feed
-C$HOME   set   $0B        Home position Code
-C$Clsgr  set   $15        Graphic screen clear (use FM-11)
-C$Clsall set   $16        Graphic & character clear (use FM-11)
-C$CR     set   $0D        Carriage return
-C$FORM   set   $0C        (CTRL-L - FF ) Form Feed ... screen clear
-C$SI     set   $0F        Shift IN Code
-C$SO     set   $0E        Shift OUT Code
-C$DELETE set   $10        Delete char (for SCF enhanced line editing)
-C$XON    set   $11        (CTRL-Q - DC1) Transmit Enable
-C$INSERT set   C$XON      Insert char (for SCF enhanced line editing)
-C$XOFF   set   $13        (CTRL-S - DC3) Transmit Disable
-C$PLINE  set   C$XOFF     Print remaining line (for SCF enhanced line editing)
-C$PAUS   set   $17        (CTRL-W - ETB) Pause character
-C$DEL    set   $18        (CTRL-X - CAN) Delete line
-C$SHRARR set   $19        Shift Right-Arrow
-C$EOF    set   $1B        (CTRL-[ - ESC) END of file
-C$RGT    set   $1C        Cursor right
-C$LFT    set   $1D        Cursor left
-C$UP     set   $1E        Cursor up
-C$DWN    set   $1F        Cursor down
-C$SPAC   set   $20        Space
-C$PERD   set   '.
-C$COMA   set   ',
+C$NULL         SET       0                   Null char
+C$RPET         SET       $01                 (CTRL-A - SOH) Repeat last input line
+C$INTR         SET       $03                 (CTRL-C - ETX) Keyboard interrupt
+C$RPRT         SET       $04                 (CTRL-D - EOT) Reprint current input line
+C$QUIT         SET       $05                 (CTRL-E - ENQ) Keyboard Abort
+C$BELL         SET       $07                 (CTRL-G - BEL) Line overflow warning
+C$BSP          SET       $08                 (CTRL-H - BS ) Back space
+C$RARR         SET       $09                 Right Arrow
+C$EL           SET       $05                 Erase Line
+C$LF           SET       $0A                 Line feed
+C$HOME         SET       $0B                 Home position Code
+C$Clsgr        SET       $15                 Graphic screen clear (use FM-11)
+C$Clsall       SET       $16                 Graphic & character clear (use FM-11)
+C$CR           SET       $0D                 Carriage return
+C$FORM         SET       $0C                 (CTRL-L - FF ) Form Feed ... screen clear
+C$SI           SET       $0F                 Shift IN Code
+C$SO           SET       $0E                 Shift OUT Code
+C$DELETE       SET       $10                 Delete char (for SCF enhanced line editing)
+C$XON          SET       $11                 (CTRL-Q - DC1) Transmit Enable
+C$INSERT       SET       C$XON               Insert char (for SCF enhanced line editing)
+C$XOFF         SET       $13                 (CTRL-S - DC3) Transmit Disable
+C$PLINE        SET       C$XOFF              Print remaining line (for SCF enhanced line editing)
+C$PAUS         SET       $17                 (CTRL-W - ETB) Pause character
+C$DEL          SET       $18                 (CTRL-X - CAN) Delete line
+C$SHRARR       SET       $19                 Shift Right-Arrow
+C$EOF          SET       $1B                 (CTRL-[ - ESC) END of file
+C$RGT          SET       $1C                 Cursor right
+C$LFT          SET       $1D                 Cursor left
+C$UP           SET       $1E                 Cursor up
+C$DWN          SET       $1F                 Cursor down
+C$SPAC         SET       $20                 Space
+C$PERD         SET       '.
+C$COMA         SET       ',
 
 
-         pag
+               PAG       
 *********************************************
 * Sequential Character Path Descriptor Format
 *
@@ -167,79 +166,79 @@
 * via the I$Open system call (processed by IOMan).  Process
 * descriptors track state information of a path.
 *
-         org   PD.FST
-PD.DV2   rmb   2          Output device table pointer
-PD.RAW   rmb   1          Read/Write or ReadLn/WritLn mode
-PD.MAX   rmb   2          ReadLn high byte count
-PD.MIN   rmb   1          Devices are "mine" if clear
-PD.STS   rmb   2          Status routine module addr
-PD.STM   rmb   2          Reserved for status routine
-         org   PD.OPT
-         rmb   1          Device type
-PD.UPC   rmb   1          Case (0=both, 1=upper only)
-PD.BSO   rmb   1          Backspace (0=BSE, 1=BSE,SP,BSE)
-PD.DLO   rmb   1          Delete (0=BSE over line, 1=CRLF)
-PD.EKO   rmb   1          Echo (0=No Echo)
-PD.ALF   rmb   1          Auto linefeed (0=No auto LF)
-PD.NUL   rmb   1          End of Line null count
-PD.PAU   rmb   1          Page pause (0=No end of page pause)
-PD.PAG   rmb   1          Lines per page
-PD.BSP   rmb   1          Backspace character
-PD.DEL   rmb   1          Delete Line character
-PD.EOR   rmb   1          End of Record character (read only)
-PD.EOF   rmb   1          End of File character
-PD.RPR   rmb   1          Repront Line character
-PD.DUP   rmb   1          Dup Last Line character
-PD.PSC   rmb   1          Pause character
-PD.INT   rmb   1          Keyboard interrupt character (CTRL-C)
-PD.QUT   rmb   1          Keyboard quit character (CTRL-E)
-PD.BSE   rmb   1          Backspace echo character
-PD.OVF   rmb   1          Line overflow character (BELL)
-PD.PAR   rmb   1          Parity code
-PD.BAU   rmb   1          ACIA baud rate (Color Computer)
-PD.D2P   rmb   2          Offset of DEV2 name
-PD.XON   rmb   1          ACIA X-ON character
-PD.XOFF  rmb   1          ACIA X-OFF character
-OPTCNT   equ   .-PD.OPT   Total user settable options
-PD.ERR   rmb   1          Most recent I/O error status
-PD.TBL   rmb   2          Device table addr (copy)
-PD.PLP   rmb   2          Path Descriptor List Pointer
-PD.PST   rmb   1          Current path status
+               ORG       PD.FST
+PD.DV2         RMB       2                   Output device table pointer
+PD.RAW         RMB       1                   Read/Write or ReadLn/WritLn mode
+PD.MAX         RMB       2                   ReadLn high byte count
+PD.MIN         RMB       1                   Devices are "mine" if clear
+PD.STS         RMB       2                   Status routine module addr
+PD.STM         RMB       2                   Reserved for status routine
+               ORG       PD.OPT
+               RMB       1                   Device type
+PD.UPC         RMB       1                   Case (0=both, 1=upper only)
+PD.BSO         RMB       1                   Backspace (0=BSE, 1=BSE,SP,BSE)
+PD.DLO         RMB       1                   Delete (0=BSE over line, 1=CRLF)
+PD.EKO         RMB       1                   Echo (0=No Echo)
+PD.ALF         RMB       1                   Auto linefeed (0=No auto LF)
+PD.NUL         RMB       1                   End of Line null count
+PD.PAU         RMB       1                   Page pause (0=No end of page pause)
+PD.PAG         RMB       1                   Lines per page
+PD.BSP         RMB       1                   Backspace character
+PD.DEL         RMB       1                   Delete Line character
+PD.EOR         RMB       1                   End of Record character (read only)
+PD.EOF         RMB       1                   End of File character
+PD.RPR         RMB       1                   Repront Line character
+PD.DUP         RMB       1                   Dup Last Line character
+PD.PSC         RMB       1                   Pause character
+PD.INT         RMB       1                   Keyboard interrupt character (CTRL-C)
+PD.QUT         RMB       1                   Keyboard quit character (CTRL-E)
+PD.BSE         RMB       1                   Backspace echo character
+PD.OVF         RMB       1                   Line overflow character (BELL)
+PD.PAR         RMB       1                   Parity code
+PD.BAU         RMB       1                   ACIA baud rate (Color Computer)
+PD.D2P         RMB       2                   Offset of DEV2 name
+PD.XON         RMB       1                   ACIA X-ON character
+PD.XOFF        RMB       1                   ACIA X-OFF character
+OPTCNT         EQU       .-PD.OPT            Total user settable options
+PD.ERR         RMB       1                   Most recent I/O error status
+PD.TBL         RMB       2                   Device table addr (copy)
+PD.PLP         RMB       2                   Path Descriptor List Pointer
+PD.PST         RMB       1                   Current path status
 
 
 * PD.PST values Path Descriptor Status byte
 *
-PST.DCD  equ   %00000001  Set if DCD is lost on Serial port
+PST.DCD        EQU       %00000001           Set if DCD is lost on Serial port
 
 
 * PD.PAR definitions
 *
 * Parity
-PARNONE  equ   %00000000
-PARODD   equ   %00100000
-PAREVEN  equ   %01100000
-PARMARK  equ   %10100000
-PARSPACE equ   %11100000
+PARNONE        EQU       %00000000
+PARODD         EQU       %00100000
+PAREVEN        EQU       %01100000
+PARMARK        EQU       %10100000
+PARSPACE       EQU       %11100000
 
 * PD.BAU definitions
 *
 * Baud rate
-B110     equ   %00000000
-B300     equ   %00000001
-B600     equ   %00000010
-B1200    equ   %00000011
-B2400    equ   %00000100
-B4800    equ   %00000101
-B9600    equ   %00000110
-B19200   equ   %00000111
-B38400   equ   %00001000
-B57600   equ   %00001001
-B115200  equ   %00001010
+B110           EQU       %00000000
+B300           EQU       %00000001
+B600           EQU       %00000010
+B1200          EQU       %00000011
+B2400          EQU       %00000100
+B4800          EQU       %00000101
+B9600          EQU       %00000110
+B19200         EQU       %00000111
+B38400         EQU       %00001000
+B57600         EQU       %00001001
+B115200        EQU       %00001010
 * Word size
-WORD8    equ   %00000000
-WORD7    equ   %00100000
+WORD8          EQU       %00000000
+WORD7          EQU       %00100000
 * Stop bits
-STOP1    equ   %00000000
-STOP2    equ   %00010000
+STOP1          EQU       %00000000
+STOP2          EQU       %00010000
 
-         ENDC
+               ENDC      
--- a/defs/systype	Tue Mar 14 04:09:31 2006 +0000
+++ b/defs/systype	Tue Mar 14 12:20:57 2006 +0000
@@ -1,6 +1,6 @@
-         IFNE  SYSTYPE-1
+               IFNE      SYSTYPE-1
 
-SYSTYPE  set   1
+SYSTYPE        SET       1
 
 ********************************************************************
 * SysType - NitrOS-9 System Specific Definitions
@@ -32,110 +32,110 @@
 *          2004/07/18  Boisy G. Pitre
 * Moved CoCo 3 Window stuff into cc3iodefs
 
-         nam   SysType
-         IFEQ  Level-1
-         ttl   NitrOS-9 Level 1 System Type Definitions
-         ELSE
-         IFEQ  Level-2
-         ttl   NitrOS-9 Level 2 System Type Definitions
-         ENDC
-         IFEQ  Level-3
-         ttl   NitrOS-9 Level 3 System Type Definitions
-         ENDC
-         ENDC
+               NAM       SysType
+               IFEQ      Level-1
+               TTL       NitrOS-9 Level 1 System Type Definitions
+               ELSE      
+               IFEQ      Level-2
+               TTL       NitrOS-9 Level 2 System Type Definitions
+               ENDC      
+               IFEQ      Level-3
+               TTL       NitrOS-9 Level 3 System Type Definitions
+               ENDC      
+               ENDC      
 
 
 **********************
 * CPU Type Definitions
 *
-Color    set   1
-Color3   set   2
-         IFEQ  Level-1
-CPUType  set   Color
-         ELSE
-CPUType  set   Color3
-         ENDC
+Color          SET       1
+Color3         SET       2
+               IFEQ      Level-1
+CPUType        SET       Color
+               ELSE      
+CPUType        SET       Color3
+               ENDC      
 
 
 ******************************
 * Clock Speed Type Definitions
 *
-OneMHz   equ   1
-TwoMHz   equ   2
-         IFEQ  CPUType-Color
-CPUSpeed set   OneMHz
-         ELSE
-CPUSpeed set   TwoMHz
-         ENDC
+OneMHz         EQU       1
+TwoMHz         EQU       2
+               IFEQ      CPUType-Color
+CPUSpeed       SET       OneMHz
+               ELSE      
+CPUSpeed       SET       TwoMHz
+               ENDC      
 
 
 **********************************
 * Power Line Frequency Definitions
 *
-Hz50     equ   1          Assemble clock for 50 hz power
-Hz60     equ   2          Assemble clock for 60 hz power
-PwrLnFrq set   Hz60       Set to Appropriate freq
+Hz50           EQU       1                   Assemble clock for 50 hz power
+Hz60           EQU       2                   Assemble clock for 60 hz power
+PwrLnFrq       SET       Hz60                Set to Appropriate freq
 
 
 **********************************
 * Ticks per second
 *
-         IFEQ  PwrLnFrq-Hz50
-TkPerSec set   50
-         ELSE
-TkPerSec set   60
-         ENDC
+               IFEQ      PwrLnFrq-Hz50
+TkPerSec       SET       50
+               ELSE      
+TkPerSec       SET       60
+               ENDC      
 
 
 ******************
 * ACIA type set up
 *
-         org   1
-ACIA6850 rmb   1          MC6850 acia.
-ACIA6551 rmb   1          SY6551 acia.
-ACIA2661 rmb   1          SC2661 acia.
-ACIATYPE set   ACIA6551
+               ORG       1
+ACIA6850       RMB       1                   MC6850 acia.
+ACIA6551       RMB       1                   SY6551 acia.
+ACIA2661       RMB       1                   SC2661 acia.
+ACIATYPE       SET       ACIA6551
 
 
 ****************************************
 * Special character Bit position equates
 *
-SHIFTBIT equ   %00000001
-CNTRLBIT equ   %00000010
-ALTERBIT equ   %00000100
-UPBIT    equ   %00001000
-DOWNBIT  equ   %00010000
-LEFTBIT  equ   %00100000
-RIGHTBIT equ   %01000000
-SPACEBIT equ   %10000000
+SHIFTBIT       EQU       %00000001
+CNTRLBIT       EQU       %00000010
+ALTERBIT       EQU       %00000100
+UPBIT          EQU       %00001000
+DOWNBIT        EQU       %00010000
+LEFTBIT        EQU       %00100000
+RIGHTBIT       EQU       %01000000
+SPACEBIT       EQU       %10000000
 
 
 ******************
 * Device addresses for miscellaneous hardware
 *
-A.AciaP  set   $FF68      Aciapak Address
-A.ModP   set   $FF6C      ModPak Address
-DPort    set   $FF40      Disk controller base address
-MPI.Slct set   $FF7F      Multi-Pak slot select
-MPI.Slot set   $03        Multi-Pak default slot
-PIA0Base equ   $FF00
-PIA1Base equ   $FF20
+A.AciaP        SET       $FF68               Aciapak Address
+A.ModP         SET       $FF6C               ModPak Address
+DPort          SET       $FF40               Disk controller base address
+MPI.Slct       SET       $FF7F               Multi-Pak slot select
+MPI.Slot       SET       $03                 Multi-Pak default slot
+PIA0Base       EQU       $FF00
+PIA1Base       EQU       $FF20
 
 
 ******************
 * VDG Devices
 *
-A.TermV  set   $FFC0      VDG Term
-A.V1     set   $FFC1      Possible additional VDG Devices
-A.V2     set   $FFC2
-A.V3     set   $FFC3
-A.V4     set   $FFC4
-A.V5     set   $FFC5
-A.V6     set   $FFC6
-A.V7     set   $FFC7
+A.TermV        SET       $FFC0               VDG Term
+A.V1           SET       $FFC1               Possible additional VDG Devices
+A.V2           SET       $FFC2
+A.V3           SET       $FFC3
+A.V4           SET       $FFC4
+A.V5           SET       $FFC5
+A.V6           SET       $FFC6
+A.V7           SET       $FFC7
 
 
-         IFEQ  Level-1
+               IFEQ      Level-1
 
 *************************************************
 *
@@ -143,9 +143,9 @@
 *
 *************************************************
 
-HW.Page  set   $FF        Device descriptor hardware page
+HW.Page        SET       $FF                 Device descriptor hardware page
 
-         ELSE
+               ELSE      
 
 *************************************************
 *
@@ -156,50 +156,50 @@
 ****************************************
 * Dynamic Address Translator Definitions
 *
-DAT.BlCt equ   8          D.A.T. blocks/address space
-DAT.BlSz equ   (256/DAT.BlCt)*256 D.A.T. block size
-DAT.ImSz equ   DAT.BlCt*2 D.A.T. Image size
-DAT.Addr equ   -(DAT.BlSz/256) D.A.T. MSB Address bits
-DAT.Task equ   $FF91      Task Register address
-DAT.TkCt equ   32         Number of DAT Tasks
-DAT.Regs equ   $FFA0      DAT Block Registers base address
-DAT.Free equ   $333E      Free Block Number
-DAT.BlMx equ   $3F        Maximum Block number
-DAT.BMSz equ   $40        Memory Block Map size
-DAT.WrPr equ   0          no write protect
-DAT.WrEn equ   0          no write enable
-SysTask  equ   0          Coco System Task number
-IOBlock  equ   $3F
-ROMBlock equ   $3F
-IOAddr   equ   $7F
-ROMCount equ   1          number of blocks of ROM (High RAM Block)
-RAMCount equ   1          initial blocks of RAM
-MoveBlks equ   DAT.BlCt-ROMCount-2 Block numbers used for copies
-BlockTyp equ   1          chk only first bytes of RAM block
-ByteType equ   2          chk entire block of RAM
-Limited  equ   1          chk only upper memory for ROM modules
-UnLimitd equ   2          chk all NotRAM for modules
+DAT.BlCt       EQU       8                   D.A.T. blocks/address space
+DAT.BlSz       EQU       (256/DAT.BlCt)*256  D.A.T. block size
+DAT.ImSz       EQU       DAT.BlCt*2          D.A.T. Image size
+DAT.Addr       EQU       -(DAT.BlSz/256)     D.A.T. MSB Address bits
+DAT.Task       EQU       $FF91               Task Register address
+DAT.TkCt       EQU       32                  Number of DAT Tasks
+DAT.Regs       EQU       $FFA0               DAT Block Registers base address
+DAT.Free       EQU       $333E               Free Block Number
+DAT.BlMx       EQU       $3F                 Maximum Block number
+DAT.BMSz       EQU       $40                 Memory Block Map size
+DAT.WrPr       EQU       0                   no write protect
+DAT.WrEn       EQU       0                   no write enable
+SysTask        EQU       0                   Coco System Task number
+IOBlock        EQU       $3F
+ROMBlock       EQU       $3F
+IOAddr         EQU       $7F
+ROMCount       EQU       1                   number of blocks of ROM (High RAM Block)
+RAMCount       EQU       1                   initial blocks of RAM
+MoveBlks       EQU       DAT.BlCt-ROMCount-2 Block numbers used for copies
+BlockTyp       EQU       1                   chk only first bytes of RAM block
+ByteType       EQU       2                   chk entire block of RAM
+Limited        EQU       1                   chk only upper memory for ROM modules
+UnLimitd       EQU       2                   chk all NotRAM for modules
 * NOTE: this check assumes any NotRAM with a module will
 *       always start with $87CD in first two bytes of block
-RAMCheck equ   BlockTyp   chk only beg bytes of block
-ROMCheck equ   Limited    chk only upper few blocks for ROM
-LastRAM  equ   IOBlock    maximum RAM block number
+RAMCheck       EQU       BlockTyp            chk only beg bytes of block
+ROMCheck       EQU       Limited             chk only upper few blocks for ROM
+LastRAM        EQU       IOBlock             maximum RAM block number
 
 ***************************
 * Color Computer 3 Specific
 *
-MappedIO equ   true       (Actually False but it works better this way)
+MappedIO       EQU       true                (Actually False but it works better this way)
 
 ********************
 * Hardware addresses
 *
-GIMERegs equ   $FF00      Base address of GIME registers
-IrqEnR   equ   $FF92      GIME IRQ enable/status register
-BordReg  equ   $FF9A      Border color register
-PalAdr   equ   $FFB0      Palette registers
+GIMERegs       EQU       $FF00               Base address of GIME registers
+IrqEnR         EQU       $FF92               GIME IRQ enable/status register
+BordReg        EQU       $FF9A               Border color register
+PalAdr         EQU       $FFB0               Palette registers
 
-HW.Page  set   $07        Device descriptor hardware page
+HW.Page        SET       $07                 Device descriptor hardware page
 
-         ENDC
-         ENDC
+               ENDC      
+               ENDC      
 
--- a/defs/vdgdefs	Tue Mar 14 04:09:31 2006 +0000
+++ b/defs/vdgdefs	Tue Mar 14 12:20:57 2006 +0000
@@ -1,6 +1,6 @@
-         IFNE   VDGDEFS-1
+               IFNE      VDGDEFS-1
 
-VDGDEFS  set    1
+VDGDEFS        SET       1
 
 ********************************************************************
 * VDGDefs - VDG Interface Definititions
@@ -13,12 +13,9 @@
 *          1991/05/07  Alan DeKok
 * Wrote original from VDGInt source.
 
+               NAM       VDGDefs
+               TTL       VDG Interface Definitions
 
-         nam    VDGDefs
-         ttl    VDG Interface Definitions
-
-
-         pag
 * Notes:
 *
 * All offsets from 'U' (address of device memory area)
@@ -46,67 +43,67 @@
 *
 * Total of 22 (150 in whole page) bytes unneeded or unused.
 
-         org   $1E
-VD.Start rmb   1  start of VD.XXXX data: number of VDG screens in use
-VD.Strt1 rmb   2  (2) and another start
-VD.Caps  rmb   2  caps lock info: $00=lower $FF=upper
-VD.DFlag rmb   1  0=current screen is valid, $01-$FF = update video
+               ORG       $1E
+VD.Start       RMB       1                   start of VD.XXXX data: number of VDG screens in use
+VD.Strt1       RMB       2                   (2) and another start
+VD.Caps        RMB       2                   caps lock info: $00=lower $FF=upper
+VD.DFlag       RMB       1                   0=current screen is valid, $01-$FF = update video
 * $24-$2B unused
-         rmb   8
-VD.NGChr rmb   1  number of additional characters to get
-VD.RTAdd rmb   2  (2) return address after getting characters
-VD.EPlt1 rmb   2  (2) pointer to where to put next character
-VD.EPlt2 rmb   2  (2) as above.
+               RMB       8
+VD.NGChr       RMB       1                   number of additional characters to get
+VD.RTAdd       RMB       2                   (2) return address after getting characters
+VD.EPlt1       RMB       2                   (2) pointer to where to put next character
+VD.EPlt2       RMB       2                   (2) as above.
 * $33-$34 unused
-         rmb   2
-VD.CFlag rmb   1  true lowercase flag $10=true, $00=false
-VD.CFlg1 rmb   1  VDG display code values
-VD.DGBuf rmb   1  number of currently displayed buffer
-VD.ScrnA rmb   2  (2) screen start address in system memory
-VD.ScrnE rmb   2  (2) address of end of screen
-VD.CrsrA rmb   1  (2) cursor address
-VD.CrsAL rmb   1  cursor address low
-VD.CChar rmb   1  value of character under cursor
-VD.Mode  rmb   1  mode: 0=256x192 x2, 1=128x192 x4
-VD.Chr1  rmb   1  same as under cursor character
-VD.CColr rmb   1  cursor color
-VD.Col   rmb   1  number of columns for this screen
-VD.Row   rmb   1  number of rows
-VD.TFlg1 rmb   1  see WRITE ($0E)
-VD.Alpha rmb   1  0 when in alpha mode
-VD.Rdy   rmb   1  device ready (see SS.DStat 0=not ready)
-VD.SBAdd rmb   2  (2) address of block screen is in
-VD.Blk   rmb   1  Block number of screen
-VD.GBuff rmb   1  allocation for graphics buffers (block#)
-VD.AGBuf rmb   2  (2) additional graphics buffer
-VD.HiRes rmb   1  hi-res screen table (block value)
-VD.NBlk  rmb   1  number of blocks in this screen
-VD.SType rmb   1  screen type 0-4
-VD.HR2   rmb   3  (3) for screen number 2
-VD.HR3   rmb   3  (3) for screen 3 (same 3 bytes as above)
-VD.FFMem rmb   2  (2) bottom of stack for flood fill
-VD.FFSPt rmb   2  (2) flood fill stack pointer
-VD.FFSTp rmb   2  (2) flood fill stack top pointer
-VD.FF6   rmb   1   flood fill flag
-VD.MTabl rmb   2  (2) address of mask table for pixels in byte
-VD.PixBt rmb   1  bit mask for modes (0=$07, 1=$03 )#pixels/byte
-VD.GCrsX rmb   1  graphics cursor X value
-VD.GCrsY rmb   1  graphics cursor Y
-VD.Msk1  rmb   1  mask byte 1
-VD.Msk2  rmb   1  mask byte 2 (00,55,AA,FF)
-VD.MCol  rmb   1  color? (C003,8001)
-VD.MCol2 rmb   1  color
-VD.PMask rmb   1  pixel mask for colors (i.e. $55, $CC etc)
-VD.FF1   rmb   1  data for flood fill
-VD.FF2   rmb   1  data for flood fill
-VD.FFMsk rmb   1  flood fill mask
-VD.FFFlg rmb   1  flood fill flag
-VD.Palet rmb   16 (16) current palette values
-VD.PlFlg rmb   1  initialized to $08 by L00DB, and then unused!
-VD.NChar rmb   1  character to process
-VD.NChr2 rmb   1  and the next one
+               RMB       2
+VD.CFlag       RMB       1                   true lowercase flag $10=true, $00=false
+VD.CFlg1       RMB       1                   VDG display code values
+VD.DGBuf       RMB       1                   number of currently displayed buffer
+VD.ScrnA       RMB       2                   (2) screen start address in system memory
+VD.ScrnE       RMB       2                   (2) address of end of screen
+VD.CrsrA       RMB       1                   (2) cursor address
+VD.CrsAL       RMB       1                   cursor address low
+VD.CChar       RMB       1                   value of character under cursor
+VD.Mode        RMB       1                   mode: 0=256x192 x2, 1=128x192 x4
+VD.Chr1        RMB       1                   same as under cursor character
+VD.CColr       RMB       1                   cursor color
+VD.Col         RMB       1                   number of columns for this screen
+VD.Row         RMB       1                   number of rows
+VD.TFlg1       RMB       1                   see WRITE ($0E)
+VD.Alpha       RMB       1                   0 when in alpha mode
+VD.Rdy         RMB       1                   device ready (see SS.DStat 0=not ready)
+VD.SBAdd       RMB       2                   (2) address of block screen is in
+VD.Blk         RMB       1                   Block number of screen
+VD.GBuff       RMB       1                   allocation for graphics buffers (block#)
+VD.AGBuf       RMB       2                   (2) additional graphics buffer
+VD.HiRes       RMB       1                   hi-res screen table (block value)
+VD.NBlk        RMB       1                   number of blocks in this screen
+VD.SType       RMB       1                   screen type 0-4
+VD.HR2         RMB       3                   (3) for screen number 2
+VD.HR3         RMB       3                   (3) for screen 3 (same 3 bytes as above)
+VD.FFMem       RMB       2                   (2) bottom of stack for flood fill
+VD.FFSPt       RMB       2                   (2) flood fill stack pointer
+VD.FFSTp       RMB       2                   (2) flood fill stack top pointer
+VD.FF6         RMB       1                   flood fill flag
+VD.MTabl       RMB       2                   (2) address of mask table for pixels in byte
+VD.PixBt       RMB       1                   bit mask for modes (0=$07, 1=$03 )#pixels/byte
+VD.GCrsX       RMB       1                   graphics cursor X value
+VD.GCrsY       RMB       1                   graphics cursor Y
+VD.Msk1        RMB       1                   mask byte 1
+VD.Msk2        RMB       1                   mask byte 2 (00,55,AA,FF)
+VD.MCol        RMB       1                   color? (C003,8001)
+VD.MCol2       RMB       1                   color
+VD.PMask       RMB       1                   pixel mask for colors (i.e. $55, $CC etc)
+VD.FF1         RMB       1                   data for flood fill
+VD.FF2         RMB       1                   data for flood fill
+VD.FFMsk       RMB       1                   flood fill mask
+VD.FFFlg       RMB       1                   flood fill flag
+VD.Palet       RMB       16                  (16) current palette values
+VD.PlFlg       RMB       1                   initialized to $08 by L00DB, and then unused!
+VD.NChar       RMB       1                   character to process
+VD.NChr2       RMB       1                   and the next one
 
 * and RMB until we get 256 bytes reserved
 
-         ENDC
+               ENDC      
 
--- a/defs/vtiodefs	Tue Mar 14 04:09:31 2006 +0000
+++ b/defs/vtiodefs	Tue Mar 14 12:20:57 2006 +0000
@@ -1,6 +1,6 @@
-	IFNE	VTIODEFS-1
-VTIODEFS set   1         
-                         
+               IFNE      VTIODEFS-1
+VTIODEFS       SET       1
+
 ********************************************************************
 * VTIODefs - Video Terminal I/O Definitions for CoCo 1/2
 *
@@ -9,7 +9,6 @@
 * Edt/Rev  YYYY/MM/DD  Modified by
 * Comment
 * ------------------------------------------------------------------
-*
 *          2004/11/29  P.Harvey-Smith.
 * Added symbolic defines for bits in V.CoLoad.
 *
@@ -19,128 +18,127 @@
 *          2005/04/09  P.Harvey-Smith.
 * Decoded rest of the CoHR memory locations.
 *
-*	   2005/04/24  P.Harvey-Smith.
+*	       2005/04/24  P.Harvey-Smith.
 * Added variables for cursor flash, currently only implemented in co51
 *
+               NAM       VTIODefs  
+               TTL       Video Terminal I/O Definitions for CoCo 1/2
 
-         nam   VTIODefs  
-         ttl   Video Terminal I/O Definitions for CoCo 1/2
-                         
 ********************
 * VTIO Static Memory
 *
-         org   V.SCF     
-V.ScrnA  rmb   2          (2) screen start address in system memory
-V.ScrnE  rmb   2          (2) address of end of screen
-V.CrsrA  rmb   1          (2) cursor address
-V.CrsAL  rmb   1          cursor address low
-V.CChar  rmb   1          value of character under cursor
-V.Mode   rmb   1          mode: 0=256x192 x2, 1=128x192 x4
-V.NGChr  rmb   1          number of additional characters to get
-V.RTAdd  rmb   2          (2) return address after getting characters
-V.NChar  rmb   1          character to process
-V.NChr2  rmb   1          and the next one
-         rmb   1         
-V.Chr1   rmb   1          same as under cursor character
-V.CColr  rmb   1          cursor color
-V.Col    rmb   1          number of columns for this screen
-V.Row    rmb   1          number of rows
-V.Alpha  rmb   1          0 when in alpha mode
-V.PIA1   rmb   1          PIA1Base value
-V.Rdy    rmb   1          device ready (see SS.DStat 0=not ready)
-V.CFlg1  rmb   1          VDG display code values
-V.SBAdd  rmb   2          (2) address of block screen is in
-V.GBuff  rmb   2          allocation for graphics buffers (block#)
-V.AGBuf  rmb   4          (2) additional graphics buffer
-V.FFMem  rmb   2          Flood fill alloc'ed mem
-V.FFSPt  rmb   2          Flood fill current stack pointer
-V.FFSTp  rmb   1          Flood fill stack top
-V.FF6    rmb   1          flood fill flag
-V.FFFlag rmb   1          ??
-V.MTabl  rmb   2          (2) address of mask table for pixels in byte
-V.PixBt  rmb   1          bit mask for modes (0=$07, 1=$03 )#pixels/byte
-V.GCrsX  rmb   1          graphics cursor X value
-V.GCrsY  rmb   1          graphics cursor Y
-V.Msk1   rmb   1          mask byte 1
-V.Msk2   rmb   1          mask byte 2 (00,55,AA,FF)
-V.MCol   rmb   1          color? (C003,8001)
-V.4A     rmb   1         
-V.PMask  rmb   1          pixel mask for colors (i.e. $55, $CC etc)
-V.4C     rmb   1         
-V.4D     rmb   1         
-V.4E     rmb   1         
-V.4F     rmb   1         
-V.Caps   rmb   1          caps lock info: $00=lower $FF=upper
-V.ClkCnt rmb   1          clock count ??
-V.WrChr  rmb   1          character to write
-V.CurCo  rmb   1          current CO-module in use
+               ORG       V.SCF
+V.ScrnA        RMB       2                   (2) screen start address in system memory
+V.ScrnE        RMB       2                   (2) address of end of screen
+V.CrsrA        RMB       1                   (2) cursor address
+V.CrsAL        RMB       1                   cursor address low
+V.CChar        RMB       1                   value of character under cursor
+V.Mode         RMB       1                   mode: 0=256x192 x2, 1=128x192 x4
+V.NGChr        RMB       1                   number of additional characters to get
+V.RTAdd        RMB       2                   (2) return address after getting characters
+V.NChar        RMB       1                   character to process
+V.NChr2        RMB       1                   and the next one
+               RMB       1
+V.Chr1         RMB       1                   same as under cursor character
+V.CColr        RMB       1                   cursor color
+V.Col          RMB       1                   number of columns for this screen
+V.Row          RMB       1                   number of rows
+V.Alpha        RMB       1                   0 when in alpha mode
+V.PIA1         RMB       1                   PIA1Base value
+V.Rdy          RMB       1                   device ready (see SS.DStat 0=not ready)
+V.CFlg1        RMB       1                   VDG display code values
+V.SBAdd        RMB       2                   (2) address of block screen is in
+V.GBuff        RMB       2                   allocation for graphics buffers (block#)
+V.AGBuf        RMB       4                   (2) additional graphics buffer
+V.FFMem        RMB       2                   Flood fill alloc'ed mem
+V.FFSPt        RMB       2                   Flood fill current stack pointer
+V.FFSTp        RMB       1                   Flood fill stack top
+V.FF6          RMB       1                   flood fill flag
+V.FFFlag       RMB       1                   ??
+V.MTabl        RMB       2                   (2) address of mask table for pixels in byte
+V.PixBt        RMB       1                   bit mask for modes (0=$07, 1=$03 )#pixels/byte
+V.GCrsX        RMB       1                   graphics cursor X value
+V.GCrsY        RMB       1                   graphics cursor Y
+V.Msk1         RMB       1                   mask byte 1
+V.Msk2         RMB       1                   mask byte 2 (00,55,AA,FF)
+V.MCol         RMB       1                   color? (C003,8001)
+V.4A           RMB       1
+V.PMask        RMB       1                   pixel mask for colors (i.e. $55, $CC etc)
+V.4C           RMB       1
+V.4D           RMB       1
+V.4E           RMB       1
+V.4F           RMB       1
+V.Caps         RMB       1                   caps lock info: $00=lower $FF=upper
+V.ClkCnt       RMB       1                   clock count ??
+V.WrChr        RMB       1                   character to write
+V.CurCo        RMB       1                   current CO-module in use
 * start of CoWP-specific static memory
-V.Co80X  rmb   1          V.54
-V.Co80Y  rmb   1          V.55
-V.ColPtr rmb   1          V.56
-V.RowPtr rmb   1          V.57
-V.C80X   rmb   1          CoWP X position
-V.C80Y   rmb   1          CoWP Y position
-V.Invers rmb   1         
+V.Co80X        RMB       1                   V.54
+V.Co80Y        RMB       1                   V.55
+V.ColPtr       RMB       1                   V.56
+V.RowPtr       RMB       1                   V.57
+V.C80X         RMB       1                   CoWP X position
+V.C80Y         RMB       1                   CoWP Y position
+V.Invers       RMB       1
 * end of CoWP-specific static memory
-V.DspVct rmb   2          vector to display screen
-V.CnvVct rmb   2          vector to X/Y to address conversion
-V.LKeyCd rmb   1          last key code
-V.2Key1  rmb   1          2nd Key 1
-V.2Key2  rmb   1          2nd Key 2
-V.2Key3  rmb   1          2nd Key 3
-V.Key1   rmb   1          Key 1
-V.Key2   rmb   1          Key 2
-V.Key3   rmb   1          Key 3
-V.ShftDn rmb   1          SHIFT/CTRL state
-V.CtrlDn rmb   1          CTRL key down
-V.KeyFlg rmb   1          key flag
-V.AltDwn rmb   1          ALT key down
-V.KySns  rmb   1          key sense flags
-V.KySame rmb   1          key same as last flag
-V.KySnsF rmb   1          key sense flag
-V.Spcl   rmb   1         
-V.KTblLC rmb   1          key table entry #
-V.6F     rmb   1          ???
-V.COLoad rmb   1          CO-module loaded flags
-V.CFlag  rmb   1          true lowercase flag $10=true, $00=false
-V.GrfDrvE  rmb 2          GrfDrv entry point
-V.CoVDGE rmb   2          CoVDG entry point
-V.CoWPE  rmb   2          CoWP entry point
-V.CoHRE  rmb   2          CoHR entry point
+V.DspVct       RMB       2                   vector to display screen
+V.CnvVct       RMB       2                   vector to X/Y to address conversion
+V.LKeyCd       RMB       1                   last key code
+V.2Key1        RMB       1                   2nd Key 1
+V.2Key2        RMB       1                   2nd Key 2
+V.2Key3        RMB       1                   2nd Key 3
+V.Key1         RMB       1                   Key 1
+V.Key2         RMB       1                   Key 2
+V.Key3         RMB       1                   Key 3
+V.ShftDn       RMB       1                   SHIFT/CTRL state
+V.CtrlDn       RMB       1                   CTRL key down
+V.KeyFlg       RMB       1                   key flag
+V.AltDwn       RMB       1                   ALT key down
+V.KySns        RMB       1                   key sense flags
+V.KySame       RMB       1                   key same as last flag
+V.KySnsF       RMB       1                   key sense flag
+V.Spcl         RMB       1
+V.KTblLC       RMB       1                   key table entry #
+V.6F           RMB       1                   ???
+V.COLoad       RMB       1                   CO-module loaded flags
+V.CFlag        RMB       1                   true lowercase flag $10=true, $00=false
+V.GrfDrvE      RMB       2                   GrfDrv entry point
+V.CoVDGE       RMB       2                   CoVDG entry point
+V.CoWPE        RMB       2                   CoWP entry point
+V.CoHRE        RMB       2                   CoHR entry point
 
-V.Flash			rmb	2	Cursor flash routine address.
-v.FlashCount		rmb	1	Cursor flash count
-V.NoFlash		rmb	1	When this is noz-zero do not flash cursor
+V.Flash        RMB       2                   Cursor flash routine address.
+v.FlashCount   RMB       1                   Cursor flash count
+V.NoFlash      RMB       1                   When this is non-zero do not flash cursor
 
 * CoHR vars
 
-V.51ScrnA 		rmb	2	* Screen address.
-V.51XPos 		rmb	1	* X co-ordinate
-V.51YPos 		rmb	1	* Y co-ordinate
-V.51EscSeq 		rmb	1	* In escape sequence
-V.51ReverseFlag 	rmb	1	* Reverse video flag
-V.51UnderlineFlag 	rmb	1	* Underline flag
-V.51CtrlDispatch 	rmb	2	* Ctrl char dispatch address, currently processing
-V.51BytePixOffset 	rmb	1	* byte offset in screen line, of character X position        
-V.51OldCursorPosX 	rmb	1	* Position of old cursor before update        
-V.51OldCursorPosY 	rmb	1         
-V.51CursorChanged 	rmb	1	* Has cursor position changed ? 1=yes,0=no
-V.51CursorOn 		rmb	1	* Is cursor on ? 1=yes 0=no		         
-V.51XORFlag 		rmb	1	* and data to screen (0) or Xor (1)  		       
-V.51ScreenMask1 	rmb	1	* screen masks for drawing characters on screen         
-V.51ScreenMask2 	rmb	1         
+V.51ScrnA      RMB       2                   * Screen address.
+V.51XPos       RMB       1                   * X co-ordinate
+V.51YPos       RMB       1                   * Y co-ordinate
+V.51EscSeq     RMB       1                   * In escape sequence
+V.51ReverseFlag RMB       1                   * Reverse video flag
+V.51UnderlineFlag RMB       1                   * Underline flag
+V.51CtrlDispatch RMB       2                   * Ctrl char dispatch address, currently processing
+V.51BytePixOffset RMB       1                   * byte offset in screen line, of character X position        
+V.51OldCursorPosX RMB       1                   * Position of old cursor before update        
+V.51OldCursorPosY RMB       1
+V.51CursorChanged RMB       1                   * Has cursor position changed ? 1=yes,0=no
+V.51CursorOn   RMB       1                   * Is cursor on ? 1=yes 0=no		         
+V.51XORFlag    RMB       1                   * and data to screen (0) or Xor (1)  		       
+V.51ScreenMask1 RMB       1                   * screen masks for drawing characters on screen         
+V.51ScreenMask2 RMB       1
 * End of CoHR vars
 **** Note these have to come at the end of the defs, or the keyboard ****
 **** code can clobber variables defined after these !                ****
-V.IBufH  rmb   1          input buffer head
-V.IBufT  rmb   1          input buffer tail
-V.InBuf  rmb   1          input buffer tail
-V.51End  rmb   1         
-         rmb   250-.     
-V.Last   equ   .         
-                         
-                         
+V.IBufH        RMB       1                   input buffer head
+V.IBufT        RMB       1                   input buffer tail
+V.InBuf        RMB       1                   input buffer ptr
+V.51End        RMB       1
+               RMB       250-.
+V.Last         EQU       .
+
+
 * Unknown for now
 *VD.FFMem rmb   2  (2) bottom of stack for flood fill
 *VD.FFSPt rmb   2  (2) flood fill stack pointer
@@ -153,20 +151,20 @@
 *VD.FFFlg rmb   1  flood fill flag
 *VD.Palet rmb   16 (16) current palette values
 *VD.PlFlg rmb   1  initialized to $08 by L00DB, and then unused!
-                         
+
 *
 * Defs for V.COLoad flags.
 * 
-                         
-ModCoVDG equ   %00000010  CoVDG, Built-in VDG 32x16.
-ModCoWP  equ   %00000100  CoWP, WordPak, 80x25
-ModCoHR  equ   %00001000  CoHR, PMODE 4 51x25 text
+
+ModCoVDG       EQU       %00000010           CoVDG, Built-in VDG 32x16.
+ModCoWP        EQU       %00000100           CoWP, WordPak, 80x25
+ModCoHR        EQU       %00001000           CoHR, PMODE 4 51x25 text
 
 *
 * Defs for cursor flash counter
 *
 
-CFlash50hz	equ	25	* 50Hz flash counter
-CFlash60Hz	equ	30	* 60Hz flash counter
+CFlash50hz     EQU       25                  * 50Hz flash counter
+CFlash60Hz     EQU       30                  * 60Hz flash counter
 
-	ENDC
+               ENDC      
--- a/defs/vtiodefs_cc3	Tue Mar 14 04:09:31 2006 +0000
+++ b/defs/vtiodefs_cc3	Tue Mar 14 12:20:57 2006 +0000
@@ -1,5 +1,5 @@
-         IFNE  VTIODEFS-1
-VTIODEFS  set   1
+               IFNE      VTIODEFS-1
+VTIODEFS       SET       1
 
 ********************************************************************
 * VTIODefs - Video Terminal I/O Definitions for CoCo 3
@@ -12,66 +12,66 @@
 *          2004/07/18  Boisy G. Pitre
 * Started from systype
 
-         nam   VTIODefs
-         ttl   Video Terminal I/O Definitions for CoCo 3
+               NAM       VTIODefs
+               TTL       Video Terminal I/O Definitions for CoCo 3
 
 ****************
 * Window Devices
 *
-         org   $FF9F
-A.W      rmb   1          $FF9F Generic Window Descriptor
-A.TermW  rmb   1          $FFA0 Windowing Term
-A.W1     rmb   1          $FFA1
-A.W2     rmb   1          $FFA2
-A.W3     rmb   1          $FFA3
-A.W4     rmb   1          $FFA4
-A.W5     rmb   1          $FFA5
-A.W6     rmb   1          $FFA6
-A.W7     rmb   1          $FFA7
-A.W8     rmb   1          $FFA8
-A.W9     rmb   1          $FFA9
-A.W10    rmb   1          $FFAA
-A.W11    rmb   1          $FFAB
-A.W12    rmb   1          $FFAC
-A.W13    rmb   1          $FFAD
-A.W14    rmb   1          $FFAE
-A.W15    rmb   1          $FFAF
+               ORG       $FF9F
+A.W            RMB       1                   $FF9F Generic Window Descriptor
+A.TermW        RMB       1                   $FFA0 Windowing Term
+A.W1           RMB       1                   $FFA1
+A.W2           RMB       1                   $FFA2
+A.W3           RMB       1                   $FFA3
+A.W4           RMB       1                   $FFA4
+A.W5           RMB       1                   $FFA5
+A.W6           RMB       1                   $FFA6
+A.W7           RMB       1                   $FFA7
+A.W8           RMB       1                   $FFA8
+A.W9           RMB       1                   $FFA9
+A.W10          RMB       1                   $FFAA
+A.W11          RMB       1                   $FFAB
+A.W12          RMB       1                   $FFAC
+A.W13          RMB       1                   $FFAD
+A.W14          RMB       1                   $FFAE
+A.W15          RMB       1                   $FFAF
 
 **********************************
 * Pointer Device Packet Definition
 *
-         org   0
-Pt.Valid rmb   1          Is returned info valid (0=no/1=yes)
-Pt.Actv  rmb   1          Active Side 0=off/1=Right/2=left
-Pt.ToTm  rmb   1          Time out Initial value
-         rmb   2          reserved
-Pt.TTTo  rmb   1          Time Till Timeout
-Pt.TSSt  rmb   2          Time Since Start Counter
-Pt.CBSA  rmb   1          Current Button State Button A
-Pt.CBSB  rmb   1          Current Button State Button B
-Pt.CCtA  rmb   1          Click Count Button A
-Pt.CCtB  rmb   1          Click Count Button B
-Pt.TTSA  rmb   1          Time This State Counter Button A
-Pt.TTSB  rmb   1          Time This State Counter Button B
-Pt.TLSA  rmb   1          Time Last State Counter Button A
-Pt.TLSB  rmb   1          Time Last State Counter Button B
-         rmb   2          Reserved
-Pt.BDX   rmb   2          Button down X value EXPERIMENTAL
-Pt.BDY   rmb   2          Button down Y value
-Pt.Stat  rmb   1          Window Pointer type location
-Pt.Res   rmb   1          Resolution (0..640 by: 0=ten/1=one)
-Pt.AcX   rmb   2          Actual X Value
-Pt.AcY   rmb   2          Actual Y Value
-Pt.WRX   rmb   2          Window Relative X
-Pt.WRY   rmb   2          Window Relative Y
-Pt.Siz   equ   .          Packet Size 32 bytes
+               ORG       0
+Pt.Valid       RMB       1                   Is returned info valid (0=no/1=yes)
+Pt.Actv        RMB       1                   Active Side 0=off/1=Right/2=left
+Pt.ToTm        RMB       1                   Time out Initial value
+               RMB       2                   reserved
+Pt.TTTo        RMB       1                   Time Till Timeout
+Pt.TSSt        RMB       2                   Time Since Start Counter
+Pt.CBSA        RMB       1                   Current Button State Button A
+Pt.CBSB        RMB       1                   Current Button State Button B
+Pt.CCtA        RMB       1                   Click Count Button A
+Pt.CCtB        RMB       1                   Click Count Button B
+Pt.TTSA        RMB       1                   Time This State Counter Button A
+Pt.TTSB        RMB       1                   Time This State Counter Button B
+Pt.TLSA        RMB       1                   Time Last State Counter Button A
+Pt.TLSB        RMB       1                   Time Last State Counter Button B
+               RMB       2                   Reserved
+Pt.BDX         RMB       2                   Button down X value EXPERIMENTAL
+Pt.BDY         RMB       2                   Button down Y value
+Pt.Stat        RMB       1                   Window Pointer type location
+Pt.Res         RMB       1                   Resolution (0..640 by: 0=ten/1=one)
+Pt.AcX         RMB       2                   Actual X Value
+Pt.AcY         RMB       2                   Actual Y Value
+Pt.WRX         RMB       2                   Window Relative X
+Pt.WRY         RMB       2                   Window Relative Y
+Pt.Siz         EQU       .                   Packet Size 32 bytes
 
 **************************
 * window regions for mouse
 *
-WR.Cntnt equ   0          content region
-WR.Cntrl equ   1          control region
-WR.OfWin equ   2          off window
+WR.Cntnt       EQU       0                   content region
+WR.Cntrl       EQU       1                   control region
+WR.OfWin       EQU       2                   off window
 
 *************************************
 * Standard system get/put buffer defs
@@ -79,69 +79,69 @@
 *
 * system group numbers
 *
-         org   200
-Grp.Fnt  rmb   1          font group
-Grp.Clip rmb   1          clipboard group
-Grp.Ptr  rmb   1          pointer group
-Grp.Pat2 rmb   1          pattern group 2 color
-Grp.Pat4 rmb   1          pattern group 4 color
-Grp.Pat6 rmb   1          pattern group 16 color
+               ORG       200
+Grp.Fnt        RMB       1                   font group
+Grp.Clip       RMB       1                   clipboard group
+Grp.Ptr        RMB       1                   pointer group
+Grp.Pat2       RMB       1                   pattern group 2 color
+Grp.Pat4       RMB       1                   pattern group 4 color
+Grp.Pat6       RMB       1                   pattern group 16 color
 *
 * font buffer numbers
 *
-         org   1
-Fnt.S8x8 rmb   1          standard 8x8 font
-Fnt.S6x8 rmb   1          standard 6x8 font
-Fnt.G8x8 rmb   1          standard graphics 8x8 font
+               ORG       1
+Fnt.S8x8       RMB       1                   standard 8x8 font
+Fnt.S6x8       RMB       1                   standard 6x8 font
+Fnt.G8x8       RMB       1                   standard graphics 8x8 font
 *
 * pattern buffer numbers
 *
-         org   1
-Pat.Dot  rmb   1
-Pat.Vrt  rmb   1
-Pat.Hrz  rmb   1
-Pat.XHtc rmb   1
-Pat.LSnt rmb   1
-Pat.RSnt rmb   1
-Pat.SDot rmb   1
-Pat.BDot rmb   1
+               ORG       1
+Pat.Dot        RMB       1
+Pat.Vrt        RMB       1
+Pat.Hrz        RMB       1
+Pat.XHtc       RMB       1
+Pat.LSnt       RMB       1
+Pat.RSnt       RMB       1
+Pat.SDot       RMB       1
+Pat.BDot       RMB       1
 *
 * pointer buffer numbers
 *
-         org   1
-Ptr.Arr  rmb   1          Arrow pointer
-Ptr.Pen  rmb   1          Pencil pointer
-Ptr.LCH  rmb   1          Large cross hair pointer
-Ptr.Slp  rmb   1          Wait timer pointer
-Ptr.Ill  rmb   1          Illegal action pointer
-Ptr.Txt  rmb   1          Text pointer
-Ptr.SCH  rmb   1          Small cross hair pointer
+               ORG       1
+Ptr.Arr        RMB       1                   Arrow pointer
+Ptr.Pen        RMB       1                   Pencil pointer
+Ptr.LCH        RMB       1                   Large cross hair pointer
+Ptr.Slp        RMB       1                   Wait timer pointer
+Ptr.Ill        RMB       1                   Illegal action pointer
+Ptr.Txt        RMB       1                   Text pointer
+Ptr.SCH        RMB       1                   Small cross hair pointer
 
 **********************
 * KeyDrv Entry Points
-         org   0
-K$Init   rmb   3	joystick initialization
-K$Term   rmb   3	joystick termination
-K$FnKey  rmb   3	get function key states
-K$RdKey  rmb   3	get key states
+               ORG       0
+K$Init         RMB       3                   joystick initialization
+K$Term         RMB       3                   joystick termination
+K$FnKey        RMB       3                   get function key states
+K$RdKey        RMB       3                   get key states
 
 **********************
 * JoyDrv Entry Points
-         org   0
-J$Init   rmb   3	joystick initialization
-J$Term   rmb   3	joystick termination
-J$MsBtn  rmb   3	get mouse button states
-J$MsXY   rmb   3	get mouse X/Y coordinates
-J$JyBtn  rmb   3	get joystick button states
-J$JyXY   rmb   3	get joystick X/Y coordinates
+               ORG       0
+J$Init         RMB       3                   joystick initialization
+J$Term         RMB       3                   joystick termination
+J$MsBtn        RMB       3                   get mouse button states
+J$MsXY         RMB       3                   get mouse X/Y coordinates
+J$JyBtn        RMB       3                   get joystick button states
+J$JyXY         RMB       3                   get joystick X/Y coordinates
 
 **********************
 * SndDrv Entry Points
-         org   0
-S$Init   rmb   3	joystick initialization
-S$GetStt rmb   3	joystick termination
-S$SetStt rmb   3	joystick termination
-S$Term   rmb   3	get joystick X/Y coordinates
+               ORG       0
+S$Init         RMB       3                   joystick initialization
+S$GetStt       RMB       3                   joystick termination
+S$SetStt       RMB       3                   joystick termination
+S$Term         RMB       3                   get joystick X/Y coordinates
 
 ********************************
 * Window/Menu Bar Data Structure
@@ -149,46 +149,46 @@
 * To be used in SS.WnSet SETSTAT to set up a Framed Window
 * for use in the high level windowing package.
 *
-NUMMENS  equ   10         maximum number of menus on menu bar
-NUMITMS  equ   20         maximum number of items in a menu
-MXTTLEN  equ   15         max chars for menu and item names
-WINSYNC  equ   $C0C0      synch bytes for window validation
+NUMMENS        EQU       10                  maximum number of menus on menu bar
+NUMITMS        EQU       20                  maximum number of items in a menu
+MXTTLEN        EQU       15                  max chars for menu and item names
+WINSYNC        EQU       $C0C0               synch bytes for window validation
 *
 * Menu Item Descriptor : (MN.ITEMS)
 * one required for each item within the menu
 *
-         org   0
-MI.TTL   rmb   MXTTLEN    item name
-MI.ENBL  rmb   1          enable flag
-MI.RES   rmb   5          reserved bytes
-MI.SIZ   equ   .          size of menu item descriptor
+               ORG       0
+MI.TTL         RMB       MXTTLEN             item name
+MI.ENBL        RMB       1                   enable flag
+MI.RES         RMB       5                   reserved bytes
+MI.SIZ         EQU       .                   size of menu item descriptor
 *
 * Menu Descriptor :
 * one for each menu on the manu bar
 * each is pointed to by MB.MPTR below
 *
-         org   0
-MN.TTL   rmb   MXTTLEN    menu title
-MN.ID    rmb   1          menu id number (1-255)
-MN.XSIZ  rmb   1          horiz. size of desired pull down
-MN.NITS  rmb   1          number of items in menu
-MN.ENBL  rmb   1          enable flag
-MN.RES   rmb   2          reserved bytes
-MN.ITEMS rmb   2          pointer to array of menu items
-MN.SIZ   equ   .          size of menu descriptor
+               ORG       0
+MN.TTL         RMB       MXTTLEN             menu title
+MN.ID          RMB       1                   menu id number (1-255)
+MN.XSIZ        RMB       1                   horiz. size of desired pull down
+MN.NITS        RMB       1                   number of items in menu
+MN.ENBL        RMB       1                   enable flag
+MN.RES         RMB       2                   reserved bytes
+MN.ITEMS       RMB       2                   pointer to array of menu items
+MN.SIZ         EQU       .                   size of menu descriptor
 *
 * Window Descriptor:
 * one required for each application in a framed window
 *
-         org   0
-WN.TTL   rmb   20         title of window for title bar
-WN.NMNS  rmb   1          number of menus in menu bar
-WN.XMIN  rmb   1          minimal horiz. size for application to run
-WN.YMIN  rmb   1          minimal vert. size for application to run
-WN.SYNC  rmb   2          synch bytes ($C0C0)
-WN.RES   rmb   7          reserved bytes
-WN.BAR   rmb   2          pointer to arry of menu descriptors
-WN.SIZ   equ   .          size of window/menu bar descriptor
+               ORG       0
+WN.TTL         RMB       20                  title of window for title bar
+WN.NMNS        RMB       1                   number of menus in menu bar
+WN.XMIN        RMB       1                   minimal horiz. size for application to run
+WN.YMIN        RMB       1                   minimal vert. size for application to run
+WN.SYNC        RMB       2                   synch bytes ($C0C0)
+WN.RES         RMB       7                   reserved bytes
+WN.BAR         RMB       2                   pointer to arry of menu descriptors
+WN.SIZ         EQU       .                   size of window/menu bar descriptor
 
 *************************
 * Window Type Definitions
@@ -196,32 +196,32 @@
 * To be used in setting up the border of the window in
 * the SS.WnSel SETSTAT
 *
-         org   0
-WT.NBox  rmb   1          No Box
-WT.FWin  rmb   1          Framed Window
-WT.FSWin rmb   1          Framed Window w/Scroll Bars
-WT.SBox  rmb   1          Shadowed Box
-WT.DBox  rmb   1          Double Box
-WT.PBox  rmb   1          Plain Box
+               ORG       0
+WT.NBox        RMB       1                   No Box
+WT.FWin        RMB       1                   Framed Window
+WT.FSWin       RMB       1                   Framed Window w/Scroll Bars
+WT.SBox        RMB       1                   Shadowed Box
+WT.DBox        RMB       1                   Double Box
+WT.PBox        RMB       1                   Plain Box
 
 *************************************
 * Pre-Defined Menu IDs for the system
 *
-         org   1
-MId.Mov  rmb   1          move box
-MId.Cls  rmb   1          close box
-MId.Grw  rmb   1          grow box
-MId.SUp  rmb   1          scroll up
-MId.SDn  rmb   1          scroll down
-MId.SRt  rmb   1          scroll right
-MId.SLt  rmb   1          scroll left
-MId.Chr  rmb   1          character was depressed
-         org   20
-MId.Tdy  rmb   1          Tandy menu
-MId.Fil  rmb   1          Files Menu
-MId.Edt  rmb   1          Edit Menu
-MId.Sty  rmb   1          Styles menu
-MId.Fnt  rmb   1          Font menu
+               ORG       1
+MId.Mov        RMB       1                   move box
+MId.Cls        RMB       1                   close box
+MId.Grw        RMB       1                   grow box
+MId.SUp        RMB       1                   scroll up
+MId.SDn        RMB       1                   scroll down
+MId.SRt        RMB       1                   scroll right
+MId.SLt        RMB       1                   scroll left
+MId.Chr        RMB       1                   character was depressed
+               ORG       20
+MId.Tdy        RMB       1                   Tandy menu
+MId.Fil        RMB       1                   Files Menu
+MId.Edt        RMB       1                   Edit Menu
+MId.Sty        RMB       1                   Styles menu
+MId.Fnt        RMB       1                   Font menu
 
 
 ******************************************************************************
@@ -264,25 +264,25 @@
 ******************************************************************************
 
 * User settable values for VTIO/TC9IO/GrfInt/WindInt & GrfDrv
-MaxLines equ   25         Max. Y coord text value
-Meg      set   false      "true" if 1 or 2 meg machine
+MaxLines       EQU       25                  Max. Y coord text value
+Meg            SET       false               "true" if 1 or 2 meg machine
 
-COMP     equ   0          composite monitor
-RGB      equ   1          RGB Analog monitor 
-MONO     equ   2          monochrome monitor
+COMP           EQU       0                   composite monitor
+RGB            EQU       1                   RGB Analog monitor 
+MONO           EQU       2                   monochrome monitor
 
-Monitor  set   RGB
+Monitor        SET       RGB
 
 * Global definitions
-KeyMse   equ   %00000001  keyboard mouse enabled
-NumLck   equ   %00000010  Numlock enabled (TC-9 use only)
-CapsLck  equ   %00000100  Capslock enabled
-MaxRows  equ   640        maximum X co-ordinate allowed on mouse
-         IFEQ  MaxLines-25
-MaxLine  equ   198        maximum Y co-ordinate allowed on mouse
-         ELSE  
-MaxLine  equ   191        maximum Y co-ordinate allowed on mouse
-         ENDC  
+KeyMse         EQU       %00000001           keyboard mouse enabled
+NumLck         EQU       %00000010           Numlock enabled (TC-9 use only)
+CapsLck        EQU       %00000100           Capslock enabled
+MaxRows        EQU       640                 maximum X co-ordinate allowed on mouse
+               IFEQ      MaxLines-25
+MaxLine        EQU       198                 maximum Y co-ordinate allowed on mouse
+               ELSE      
+MaxLine        EQU       191                 maximum Y co-ordinate allowed on mouse
+               ENDC      
 
 *****************************************************************************
 * Static memory area for each window (VTIO/TC9IO)
@@ -294,387 +294,387 @@
 *
 * STRONG CAUTION:  scfdefs MUST be included first before this file if
 * V.SCF is to be resolved properly in pass 1!!
-           org   V.SCF
-V.WinType  rmb   1          window type (0=Windint/GrfInt,2=VDGInt)      $1D
-V.InfVld   rmb   1          Rest of info here valid? (0=NO, >0 = YES)    $1E
-V.DevPar   rmb   2          high bit=window device                       $1F
-V.ULCase   rmb   1          special key flags (Capslck & keyboard mouse) $21
-V.KySnsFlg rmb   1          flag for key sense setstat                   $22
-V.ScrChg   rmb   1          screen change flag                           $23
-V.SSigID   rmb   1          data ready process ID                        $24
-V.SSigSg   rmb   1          data ready signal code                       $25
-V.MSigID   rmb   1          mouse signal process ID                      $26
-V.MSigSg   rmb   1          mouse signal signal code                     $27
-V.MSmpl    rmb   1          mouse sample rate                            $28
-V.MTime    rmb   1          mouse timeout value                          $29
-           rmb   1          unused                                       $2A
-V.MAutoF   rmb   1          auto follow mouse flag                       $2B
-V.ParmCnt  rmb   1          parameter count                              $2C
-V.ParmVct  rmb   2          parameter vector                             $2D
-V.PrmStrt  rmb   2          pointer to params start                      $2F
-V.NxtPrm   rmb   2          pointer to next param storage                $31
-V.EndPtr   rmb   1          last character read offset                   $33
-V.InpPtr   rmb   1          next character read offset                   $34
-V.WinNum   rmb   1          window table entry #                         $35
-V.DWNum    rmb   1          dwnum from descriptor                        $36
-V.CallCde  rmb   1          internal comod call code #                   $37
-CC3Parm    rmb   128-.      global parameter area
-ReadBuf    rmb   256-.      read input buffer (keyboard)
-CC3DSiz    equ   .
+               ORG       V.SCF
+V.WinType      RMB       1                   window type (0=Windint/GrfInt,2=VDGInt)      $1D
+V.InfVld       RMB       1                   Rest of info here valid? (0=NO, >0 = YES)    $1E
+V.DevPar       RMB       2                   high bit=window device                       $1F
+V.ULCase       RMB       1                   special key flags (Capslck & keyboard mouse) $21
+V.KySnsFlg     RMB       1                   flag for key sense setstat                   $22
+V.ScrChg       RMB       1                   screen change flag                           $23
+V.SSigID       RMB       1                   data ready process ID                        $24
+V.SSigSg       RMB       1                   data ready signal code                       $25
+V.MSigID       RMB       1                   mouse signal process ID                      $26
+V.MSigSg       RMB       1                   mouse signal signal code                     $27
+V.MSmpl        RMB       1                   mouse sample rate                            $28
+V.MTime        RMB       1                   mouse timeout value                          $29
+               RMB       1                   unused                                       $2A
+V.MAutoF       RMB       1                   auto follow mouse flag                       $2B
+V.ParmCnt      RMB       1                   parameter count                              $2C
+V.ParmVct      RMB       2                   parameter vector                             $2D
+V.PrmStrt      RMB       2                   pointer to params start                      $2F
+V.NxtPrm       RMB       2                   pointer to next param storage                $31
+V.EndPtr       RMB       1                   last character read offset                   $33
+V.InpPtr       RMB       1                   next character read offset                   $34
+V.WinNum       RMB       1                   window table entry #                         $35
+V.DWNum        RMB       1                   dwnum from descriptor                        $36
+V.CallCde      RMB       1                   internal comod call code #                   $37
+CC3Parm        RMB       128-.               global parameter area
+ReadBuf        RMB       256-.               read input buffer (keyboard)
+CC3DSiz        EQU       .
 
 *****************************************************************************
 * GrfInt/WindInt global memory area
 * This area sits in system block 0 from $1000 to $10ff
-WGlobal  equ   $1000      useful value (points to address starting below)
-         org   0
-G.CurTik rmb   1          Constant - # Clock ticks/cursor updates (2)
-G.CntTik rmb   1          Current tick count for cursor updates
-G.GfBusy rmb   1          Grfdrv is busy flag (1=busy)
-G.OrgAlt rmb   2          Place to store D.AltIRQ before altering
+WGlobal        EQU       $1000               useful value (points to address starting below)
+               ORG       0
+G.CurTik       RMB       1                   Constant - # Clock ticks/cursor updates (2)
+G.CntTik       RMB       1                   Current tick count for cursor updates
+G.GfBusy       RMB       1                   Grfdrv is busy flag (1=busy)
+G.OrgAlt       RMB       2                   Place to store D.AltIRQ before altering
 *g0003    rmb   2          NEW: UNUSED
-g0005    rmb   2          Temp save in Windint RG
-G.GrfStk rmb   2          grfdrv stack pointer ($07)
-G.MonTyp rmb   1          monitor type
-g000A    equ   .          Old label for compatibility
-G.CrDvFl rmb   1          Are we current device flag (only set when all
+g0005          RMB       2                   Temp save in Windint RG
+G.GrfStk       RMB       2                   grfdrv stack pointer ($07)
+G.MonTyp       RMB       1                   monitor type
+g000A          EQU       .                   Old label for compatibility
+G.CrDvFl       RMB       1                   Are we current device flag (only set when all
 *                           Parms have been moved to Dev Mem)
 *                           0=We are not on our device
 *                           1=We are the current device
 *                           (Used by comod (GRF/WIND/VDGInt) to determine
 *                            whether or not to update GIME regs themselves
 *                            If not current device, they don't.)
-G.WinType rmb  1          current device's V.TYPE
-G.CurDvM rmb   2          current device memory pointer for co-module use
-G.WIBusy rmb   1          WindInt is busy flag (1=busy)
-G.AlPckt rmb   6          F$Alarm time packet
-G.AlPID  rmb   1          F$Alarm proc ID ($15)
-G.AlSig  rmb   1          F$Alarm signal code ($16)
-G.BelVec rmb   2          BELL routine vector
-G.DefPal rmb   2          pointer to default palette data in global mem
-G.TnCnt  rmb   1          SS.Tone duration counter
-G.BelTnF rmb   1          BELL tone flag
-g001D    rmb   3
-G.CurDev rmb   2          current device's static memory pointer ($20)
-G.PrWMPt rmb   2          previous window static mem pointer $(22)
-G.BCFFlg rmb   1          bit coded co-module found flags ($24)
+G.WinType      RMB       1                   current device's V.TYPE
+G.CurDvM       RMB       2                   current device memory pointer for co-module use
+G.WIBusy       RMB       1                   WindInt is busy flag (1=busy)
+G.AlPckt       RMB       6                   F$Alarm time packet
+G.AlPID        RMB       1                   F$Alarm proc ID ($15)
+G.AlSig        RMB       1                   F$Alarm signal code ($16)
+G.BelVec       RMB       2                   BELL routine vector
+G.DefPal       RMB       2                   pointer to default palette data in global mem
+G.TnCnt        RMB       1                   SS.Tone duration counter
+G.BelTnF       RMB       1                   BELL tone flag
+g001D          RMB       3
+G.CurDev       RMB       2                   current device's static memory pointer ($20)
+G.PrWMPt       RMB       2                   previous window static mem pointer $(22)
+G.BCFFlg       RMB       1                   bit coded co-module found flags ($24)
 *                           00000010 : VDGInt found
 *                           10000000 : GrfDrv found
-g0025     rmb   1
-G.KTblLC  rmb   1          Key table entry# last checked (1-3)
+g0025          RMB       1
+G.KTblLC       RMB       1                   Key table entry# last checked (1-3)
 *         IFEQ  TC9-true
 *CurLght  rmb   1          current keyboard light settings
 *         ELSE  
-G.LastCh  rmb   1          last keyboard character (ASCII value)
+G.LastCh       RMB       1                   last keyboard character (ASCII value)
 *         ENDC  
-G.LKeyCd  rmb   1          last keyboard code
-G.KyRept rmb   1          key repeat counter
+G.LKeyCd       RMB       1                   last keyboard code
+G.KyRept       RMB       1                   key repeat counter
 * A secondary 3 key table (same format as g002D below)
-G.2Key1  rmb   1		$2A
-G.2Key2  rmb   1		$2B
-G.2Key3  rmb   1
+G.2Key1        RMB       1                   $2A
+G.2Key2        RMB       1                   $2B
+G.2Key3        RMB       1
 * Up to 3 keys can be registerd at once, and they are stored here. If more
 * than 3 are hit, the last key is overwritten with the very last key down that
 * was checked. Format for all three is the same as the PIA column/row byte @
 * KeyFlag below.
-G.Key1   rmb   1          Key 1 being held down (Row/Column #)
-G.Key2   rmb   1          Key 2 being held down (Row/Column #)
-G.Key3   rmb   1          Key 3 being held down (Row/Column #)
-G.ShftDn rmb   1          SHIFT key down flag (COM'd) ($30)
-G.CntlDn rmb   1          CTRL key down flag (0=NO)
-G.KeyFlg rmb   1          Keyboard PIA bit #'s for columns/rows
+G.Key1         RMB       1                   Key 1 being held down (Row/Column #)
+G.Key2         RMB       1                   Key 2 being held down (Row/Column #)
+G.Key3         RMB       1                   Key 3 being held down (Row/Column #)
+G.ShftDn       RMB       1                   SHIFT key down flag (COM'd) ($30)
+G.CntlDn       RMB       1                   CTRL key down flag (0=NO)
+G.KeyFlg       RMB       1                   Keyboard PIA bit #'s for columns/rows
 *                           %00000111-Column # (Output, 0-7)
 *                           %00111000-Row # (Input, 0-6)
-G.AltDwn rmb   1          ALT key down flag (0=NO)
-G.KySns  rmb   1          key sense byte
-G.KySame rmb   1          same key flag
-G.CapLok rmb   1          CapsLock/SysRq key down flag
-         rmb   1
-g0038    rmb   1          grfdrv initialized flag
-         rmb   2
-G.MSmpRt rmb   1          Current mouse sample # (# ticks till next read)
-G.Mouse  rmb   Pt.Siz     mouse packet ($3C)
-g005C    rmb   2          Temp for relative mouse X coord calculation
-g005E    rmb   2          Temp for relative mouse Y coord calculation
-G.MSmpRV rmb   1          Mouse sample reset value (# ticks till next read)
-G.KyDly  rmb   1          initial key repeat delay constant ($61)
-G.KySpd  rmb   1          secondary key repeat delay constant
+G.AltDwn       RMB       1                   ALT key down flag (0=NO)
+G.KySns        RMB       1                   key sense byte
+G.KySame       RMB       1                   same key flag
+G.CapLok       RMB       1                   CapsLock/SysRq key down flag
+               RMB       1
+g0038          RMB       1                   grfdrv initialized flag
+               RMB       2
+G.MSmpRt       RMB       1                   Current mouse sample # (# ticks till next read)
+G.Mouse        RMB       Pt.Siz              mouse packet ($3C)
+g005C          RMB       2                   Temp for relative mouse X coord calculation
+g005E          RMB       2                   Temp for relative mouse Y coord calculation
+G.MSmpRV       RMB       1                   Mouse sample reset value (# ticks till next read)
+G.KyDly        RMB       1                   initial key repeat delay constant ($61)
+G.KySpd        RMB       1                   secondary key repeat delay constant
 *         IFEQ  TC9-true
 *KeyParm  rmb   1          keyboard command parameter byte
 *         ELSE  
-G.KyMse  rmb   1          keyboard mouse flag ($63)
+G.KyMse        RMB       1                   keyboard mouse flag ($63)
 *         ENDC  
-G.Clear  rmb   1          "one-shot" CapsLock/SysRq key flag ($64)
-G.KyButt rmb   1          keyboard F1 and F2 "fire" button info ($65)
-G.AutoMs rmb   1          Auto-follow mouse flag for current device (0=NO)
-G.MseMv  rmb   1          mouse moved flag ($67)
-G.CoTble rmb   6          co-module table ($68)
-G.GrfEnt rmb   2          GRFDRV Entry address ($6E)
-g0070    rmb   1          # bytes to move in 1 block (1-72)
-G.WUseTb rmb   4          windows in use bit table (0=unused, 32 windows) ($71)
-G.GfxTbl rmb   2          Pointer to GFX tables ($75)
-G.WrkWTb rmb   $40        Work window table. WindInt only ($77)
-g00B7    rmb   2          Current Device static mem ptr for WindInt
-g00B9    rmb   2          Current window table ptr for WindInt
-g00BB    rmb   2          Pointer to work window table (g0077+$10)
-g00BD    rmb   1          Current screen type for work window table
-g00BE    rmb   1          Topmost overlay window # when check for title bars
-g00BF    rmb   1          Flag for keypress while processing menu select
-g00C0    rmb   2          Ptr to current path descriptor
-G.WindBk rmb   2          shift-clear routine vector
-G.MsInit rmb   2          set mouse routine vector
-G.MsSig  rmb   1          mouse signal flag
-G.DefPls rmb   16         Default palettes (2 repeats of 8 is default) ($C7)
-g00D7    rmb   9
-G.KeyEnt rmb   2	entry to keydrv subroutine module ($E0)
-G.KeyMem rmb   8	static memory for keydrv subroutine module
-G.JoyEnt rmb   2	entry to joydrv subroutine module ($EA)
-G.JoyMem rmb   8	static memory for joydrv subroutine module
-G.SndEnt rmb   2	entry to snddrv subroutine module ($F4)
-G.SndMem rmb   8	static memory for snddrv subroutine module
+G.Clear        RMB       1                   "one-shot" CapsLock/SysRq key flag ($64)
+G.KyButt       RMB       1                   keyboard F1 and F2 "fire" button info ($65)
+G.AutoMs       RMB       1                   Auto-follow mouse flag for current device (0=NO)
+G.MseMv        RMB       1                   mouse moved flag ($67)
+G.CoTble       RMB       6                   co-module table ($68)
+G.GrfEnt       RMB       2                   GRFDRV Entry address ($6E)
+g0070          RMB       1                   # bytes to move in 1 block (1-72)
+G.WUseTb       RMB       4                   windows in use bit table (0=unused, 32 windows) ($71)
+G.GfxTbl       RMB       2                   Pointer to GFX tables ($75)
+G.WrkWTb       RMB       $40                 Work window table. WindInt only ($77)
+g00B7          RMB       2                   Current Device static mem ptr for WindInt
+g00B9          RMB       2                   Current window table ptr for WindInt
+g00BB          RMB       2                   Pointer to work window table (g0077+$10)
+g00BD          RMB       1                   Current screen type for work window table
+g00BE          RMB       1                   Topmost overlay window # when check for title bars
+g00BF          RMB       1                   Flag for keypress while processing menu select
+g00C0          RMB       2                   Ptr to current path descriptor
+G.WindBk       RMB       2                   shift-clear routine vector
+G.MsInit       RMB       2                   set mouse routine vector
+G.MsSig        RMB       1                   mouse signal flag
+G.DefPls       RMB       16                  Default palettes (2 repeats of 8 is default) ($C7)
+g00D7          RMB       9
+G.KeyEnt       RMB       2                   entry to keydrv subroutine module ($E0)
+G.KeyMem       RMB       8                   static memory for keydrv subroutine module
+G.JoyEnt       RMB       2                   entry to joydrv subroutine module ($EA)
+G.JoyMem       RMB       8                   static memory for joydrv subroutine module
+G.SndEnt       RMB       2                   entry to snddrv subroutine module ($F4)
+G.SndMem       RMB       8                   static memory for snddrv subroutine module
 
 *****************************************************************************
 * GrfDrv global memory data definitions
 * This area sits in system block 0 from $1100 to $119E
-GrfMem   equ   $1100      useful label used to point to mem starting below
-         org   0
-gr0000   rmb   1          Pixel mask for 1st byte of GP line
-gr0001   rmb   1          Pixel mask for last byte of a GP line
-gr0002   rmb   2          Ptr to table of bit masks for colors
-gr0004   rmb   1          # of bytes wide GP buffer is (including partials)
-gr0005   rmb   1          # pixels per byte in GP Buffer
-gr0006   rmb   1          # of pixels used in 1st byte of GP buffer line
-gr0007   rmb   1          # of pixels used in last byte of GP buffer line
-gr0008   rmb   1          Bit mask that is common to both screen & GP buffer
-gr0009   rmb   1          # bytes for width of overlay window
-gr000A   rmb   1          # bytes to offset to get to next line after
+GrfMem         EQU       $1100               useful label used to point to mem starting below
+               ORG       0
+gr0000         RMB       1                   Pixel mask for 1st byte of GP line
+gr0001         RMB       1                   Pixel mask for last byte of a GP line
+gr0002         RMB       2                   Ptr to table of bit masks for colors
+gr0004         RMB       1                   # of bytes wide GP buffer is (including partials)
+gr0005         RMB       1                   # pixels per byte in GP Buffer
+gr0006         RMB       1                   # of pixels used in 1st byte of GP buffer line
+gr0007         RMB       1                   # of pixels used in last byte of GP buffer line
+gr0008         RMB       1                   Bit mask that is common to both screen & GP buffer
+gr0009         RMB       1                   # bytes for width of overlay window
+gr000A         RMB       1                   # bytes to offset to get to next line after
 *                             overlay width has been copied
-gr000B   rmb   1
-gr000C   rmb   2          Cursor address for proportional spacing?
-gr000E   rmb   1
-gr000F   rmb   1          Left-based bit mask for proportional spacing?
-gr0010   rmb   2          Vector for text to gfx screen (either prop. or normal)
-gr0012   rmb   6
-gr0018   rmb   2          Working Center X coord for Circle/Ellipse
-gr001A   rmb   2          Working Center Y coord for Circle/Ellipse
-gr001C   rmb   2          Some variable for Circle/Ellipse (initially 0)
-gr001E   rmb   2          Working Y radius value for Circle/Ellipse
-gr0020   rmb   2          Arc 'clip line' X01
-gr0022   rmb   2          Arc 'clip line' Y01
-gr0024   rmb   2          Arc 'clip line' X02
-gr0026   rmb   2          Arc 'clip line' Y02
-gr0028   rmb   1          full-byte background color to FFILL on mask
-gr0029   rmb   1          pixels per byte: set up by FFILL
-gr002A   rmb   1          Flag for FFill: 1=no error, 0=Stack overflow error
-gr002B   rmb   1          current Y-direction to travel in FFILL
-gr002C   rmb   2
-gr002E   rmb   2          current window table entry
-gr0030   rmb   2          current screen table ptr
-gr0032   rmb   1          Last block # we used for buffers
-gr0033   rmb   2          Last offset we used for buffers
-gr0035   rmb   1          group
-gr0036   rmb   2          offset
-gr0038   rmb   1          group returned (new)
-gr0039   rmb   1          0=Text cursor inverted off, >0 is inverted on
-gr003A   rmb   1          0=Graphics cursor XOR'd off,>0 is XOR'd on scrn
-gr003B   rmb   2          end of vars ptr?
-gr003D   rmb   2          Last X coordinate Graphics cursor was ON at
-gr003F   rmb   2          Last Y coordinate Graphics cursor was ON at
-gr0041   rmb   2          Screen address for start of current gfx cursor
-gr0043   rmb   1          Pixel mask for start of gfx cursor
-gr0044   rmb   1          Block # Graphics cursor is in
-gr0045   rmb   2          Offset in block Graphics cursor is in
-gr0047   rmb   2          'Working' X coordinate
-gr0049   rmb   2          'Working' Y coordinate
-gr004B   rmb   2          current X
-gr004D   rmb   2          current Y
-gr004F   rmb   2          X Size (in bytes)
-gr0051   rmb   2          Y Size (in bytes)
-gr0053   rmb   2          Horizontal radius (circle/ellipse/arc)
-gr0055   rmb   2          Vertical radius (circle/ellipse/arc)
-gr0057   rmb   1          group
-gr0058   rmb   1          buffer #
-gr0059   rmb   1          save switch for overlay
-gr005A   rmb   1          PRN
-gr005B   rmb   2          X coordinate of Graphics cursor
-gr005D   rmb   2          Y coordinate of Graphics cursor
-gr005F   rmb   1          ATD: new video mode for 24/25/28-line windows
-Gr.STYMk rmb   1          STY marker
-gr0061   rmb   1          foreground RGB data
-gr0062   rmb   1          background RGB data
-gr0063   rmb   1          bytes/row (on current screen...not window)
-gr0064   rmb   2          PSet vector
-gr0066   rmb   2          pset offset
-gr0068   rmb   2          LSet vector
-gr006A   rmb   2          max X co-ordinate
-gr006C   rmb   2          max Y co-ordinate
-gr006E   rmb   2          X pixel count
-gr0070   rmb   2          Y pixel count
-gr0072   rmb   2          Screen address of pixel we are doing
-gr0074   rmb   1          Pixel mask for pixel we are doing
-gr0075   rmb   2          ??? Pixel mask for last byte of GP buffer?
-gr0077   rmb   2          Vector for right direction FFill
-gr0079   rmb   1          bit mask for 1st pixel in byte for right dir. FFill
-gr007A   rmb   2          Vector for left direction FFill
-gr007C   rmb   1          bit mask for last pixel in byte for left dir. FFill
-gr007D   rmb   1          buffer block #
-gr007E   rmb   2          buffer offset #
-gr0080   rmb   2          Buffer length (in bytes)
-gr0082   rmb   3          3 byte extended screen address
-gr0085   rmb   2          temp
-gr0087   rmb   16         grfdrv (sysmap 1) DAT image
-gr0097   rmb   1          temp
-gr0098   rmb   1          temp
+gr000B         RMB       1
+gr000C         RMB       2                   Cursor address for proportional spacing?
+gr000E         RMB       1
+gr000F         RMB       1                   Left-based bit mask for proportional spacing?
+gr0010         RMB       2                   Vector for text to gfx screen (either prop. or normal)
+gr0012         RMB       6
+gr0018         RMB       2                   Working Center X coord for Circle/Ellipse
+gr001A         RMB       2                   Working Center Y coord for Circle/Ellipse
+gr001C         RMB       2                   Some variable for Circle/Ellipse (initially 0)
+gr001E         RMB       2                   Working Y radius value for Circle/Ellipse
+gr0020         RMB       2                   Arc 'clip line' X01
+gr0022         RMB       2                   Arc 'clip line' Y01
+gr0024         RMB       2                   Arc 'clip line' X02
+gr0026         RMB       2                   Arc 'clip line' Y02
+gr0028         RMB       1                   full-byte background color to FFILL on mask
+gr0029         RMB       1                   pixels per byte: set up by FFILL
+gr002A         RMB       1                   Flag for FFill: 1=no error, 0=Stack overflow error
+gr002B         RMB       1                   current Y-direction to travel in FFILL
+gr002C         RMB       2
+gr002E         RMB       2                   current window table entry
+gr0030         RMB       2                   current screen table ptr
+gr0032         RMB       1                   Last block # we used for buffers
+gr0033         RMB       2                   Last offset we used for buffers
+gr0035         RMB       1                   group
+gr0036         RMB       2                   offset
+gr0038         RMB       1                   group returned (new)
+gr0039         RMB       1                   0=Text cursor inverted off, >0 is inverted on
+gr003A         RMB       1                   0=Graphics cursor XOR'd off,>0 is XOR'd on scrn
+gr003B         RMB       2                   end of vars ptr?
+gr003D         RMB       2                   Last X coordinate Graphics cursor was ON at
+gr003F         RMB       2                   Last Y coordinate Graphics cursor was ON at
+gr0041         RMB       2                   Screen address for start of current gfx cursor
+gr0043         RMB       1                   Pixel mask for start of gfx cursor
+gr0044         RMB       1                   Block # Graphics cursor is in
+gr0045         RMB       2                   Offset in block Graphics cursor is in
+gr0047         RMB       2                   'Working' X coordinate
+gr0049         RMB       2                   'Working' Y coordinate
+gr004B         RMB       2                   current X
+gr004D         RMB       2                   current Y
+gr004F         RMB       2                   X Size (in bytes)
+gr0051         RMB       2                   Y Size (in bytes)
+gr0053         RMB       2                   Horizontal radius (circle/ellipse/arc)
+gr0055         RMB       2                   Vertical radius (circle/ellipse/arc)
+gr0057         RMB       1                   group
+gr0058         RMB       1                   buffer #
+gr0059         RMB       1                   save switch for overlay
+gr005A         RMB       1                   PRN
+gr005B         RMB       2                   X coordinate of Graphics cursor
+gr005D         RMB       2                   Y coordinate of Graphics cursor
+gr005F         RMB       1                   ATD: new video mode for 24/25/28-line windows
+Gr.STYMk       RMB       1                   STY marker
+gr0061         RMB       1                   foreground RGB data
+gr0062         RMB       1                   background RGB data
+gr0063         RMB       1                   bytes/row (on current screen...not window)
+gr0064         RMB       2                   PSet vector
+gr0066         RMB       2                   pset offset
+gr0068         RMB       2                   LSet vector
+gr006A         RMB       2                   max X co-ordinate
+gr006C         RMB       2                   max Y co-ordinate
+gr006E         RMB       2                   X pixel count
+gr0070         RMB       2                   Y pixel count
+gr0072         RMB       2                   Screen address of pixel we are doing
+gr0074         RMB       1                   Pixel mask for pixel we are doing
+gr0075         RMB       2                   ??? Pixel mask for last byte of GP buffer?
+gr0077         RMB       2                   Vector for right direction FFill
+gr0079         RMB       1                   bit mask for 1st pixel in byte for right dir. FFill
+gr007A         RMB       2                   Vector for left direction FFill
+gr007C         RMB       1                   bit mask for last pixel in byte for left dir. FFill
+gr007D         RMB       1                   buffer block #
+gr007E         RMB       2                   buffer offset #
+gr0080         RMB       2                   Buffer length (in bytes)
+gr0082         RMB       3                   3 byte extended screen address
+gr0085         RMB       2                   temp
+gr0087         RMB       16                  grfdrv (sysmap 1) DAT image
+gr0097         RMB       1                   temp
+gr0098         RMB       1                   temp
 * In ARC, 97-98 is the width of the clip line in pixels (after scaling)
-gr0099   rmb   2          temp
+gr0099         RMB       2                   temp
 * In ARC, 99-9A is the height of the clip line in pixels (after scaling)
-gr009B   rmb   1          counter temp
-gr009C   rmb   1
-gr009D   rmb   2          offset to buffer in block
-gr009F   rmb   1
-gr00A0   rmb   1          # lines left to do of GP buffer onto screen
-gr00A1   rmb   2          vector routine for (changes lots)
+gr009B         RMB       1                   counter temp
+gr009C         RMB       1
+gr009D         RMB       2                   offset to buffer in block
+gr009F         RMB       1
+gr00A0         RMB       1                   # lines left to do of GP buffer onto screen
+gr00A1         RMB       2                   vector routine for (changes lots)
 * In ARC A1-A2 is the vector to the proper clipping routine
-gr00A3   rmb   2          Vector for shifting GP buffers
-gr00A5   rmb   2          Vector for shifting GP buffers (can dupe A1)
-gr00A7   rmb   2
-gr00A9   rmb   2          NEW: Window tbl ptr for last window GRFDRV used
-grBigFnt rmb    2           Flag for 224 char font/gfx mode on (0=No) V2.00a
-gr00AD   rmb    2           FFill:orig. start X coord|Circ/Ell saved start X
-gr00AF   rmb    2           FFill:orig. start Y coord|Circ/Ell saved end X
-gr00B1   rmb    1           Flag in FFill: 1=1st time through, 0=not 1st time
-gr00B2   rmb    1           Filled (circle,ellipse) flag 0=Not filled
+gr00A3         RMB       2                   Vector for shifting GP buffers
+gr00A5         RMB       2                   Vector for shifting GP buffers (can dupe A1)
+gr00A7         RMB       2
+gr00A9         RMB       2                   NEW: Window tbl ptr for last window GRFDRV used
+grBigFnt       RMB       2                   Flag for 224 char font/gfx mode on (0=No) V2.00a
+gr00AD         RMB       2                   FFill:orig. start X coord|Circ/Ell saved start X
+gr00AF         RMB       2                   FFill:orig. start Y coord|Circ/Ell saved end X
+gr00B1         RMB       1                   Flag in FFill: 1=1st time through, 0=not 1st time
+gr00B2         RMB       1                   Filled (circle,ellipse) flag 0=Not filled
 *gr00B3   rmb    256-.       ??? UNUSED
-gr00B3   rmb   1          temp veriable grfdrv
-gr00B4   rmb   1          temp veriable grfdrv
-gr00B5   rmb   1          regW for grfdrv
-gr00B6   rmb   1          
-gr00B7   rmb   2          
-gr00B9   rmb   2          previously used in grfdrv at $B2 but not for Filled Flag
-gr00BB   rmb   2          previously used in grfdrv at $B4
-gr00BD   rmb   2          previously used in grfdrv at $B6
-gr00BF   rmb    256-.
+gr00B3         RMB       1                   temp veriable grfdrv
+gr00B4         RMB       1                   temp veriable grfdrv
+gr00B5         RMB       1                   regW for grfdrv
+gr00B6         RMB       1
+gr00B7         RMB       2
+gr00B9         RMB       2                   previously used in grfdrv at $B2 but not for Filled Flag
+gr00BB         RMB       2                   previously used in grfdrv at $B4
+gr00BD         RMB       2                   previously used in grfdrv at $B6
+gr00BF         RMB       256-.
 * GPLoad buffer - $1200 in system block 0
-GPBuf    rmb   72         common move buffer for gpload/get/put
-gb0000   equ   72         Size of get/put buffer ($48)
+GPBuf          RMB       72                  common move buffer for gpload/get/put
+gb0000         EQU       72                  Size of get/put buffer ($48)
 
 *****************************************************************************
 * Window table entry structure
 * These tables sit in system block 0 and there is 1 for every window init'd
 * including any overlay windows.
-MaxWind  equ   32         maximum allowable window tables
-WinBase  equ   $1290      base address to start of window tables
-         org   -$10
-Wt.STbl  rmb   2          Screen table pointer ($FFFF=Not used)       -$10
-Wt.BLnk  rmb   1          overlay window parent entry # ($FF=base)    -$0E
-Wt.LStrt rmb   2          screen logical start address                -$0D
-Wt.CPX   rmb   1          current X coord. start                      -$0B
-Wt.CPY   rmb   1          current Y coord. start                      -$0A
-Wt.SZX   rmb   1          current X size (CWArea)                     -$09
-Wt.SZY   rmb   1          current Y size (CWArea)                     -$08
-Wt.SXFct rmb   1          X scaling factor                            -$07
-Wt.SYFct rmb   1          Y scaling factor (0=no scaling)             -$06
-Wt.Cur   rmb   2          cursor physical address on screen           -$05
-Wt.FMsk  rmb   1          font bit mask (based from left)             -$03
-Wt.CurX  rmb   2          X coord of cursor                           -$02
-Wt.CurY  rmb   2          Y Coord of cursor                            $00
-Wt.XBCnt rmb   1          width of window (in bytes)                   $02
-Wt.CWTmp rmb   1          bytes wide each text chr (1,2,4)             $03
-Wt.BRow  rmb   2          bytes/text row (8x width in gfx)             $04
-Wt.Fore  rmb   1          foreground palette #                         $06
-Wt.Back  rmb   1          background palette #                         $07
-Wt.Attr  rmb   1          default attributes (FUTTTBBB)                $08
-Wt.BSW   rmb   1          character BSW switches                       $09
-Wt.LSet  rmb   1          LSet type                                    $0A
-Wt.FBlk  rmb   1          Font memory block #                          $0B
-Wt.FOff  rmb   2          Font offset in block                         $0C
-Wt.PBlk  rmb   1          PSet memory block #                          $0E
-Wt.POff  rmb   2          PSet offset in block                         $0F
-Wt.OBlk  rmb   1          Overlay memory block #                       $11
-Wt.OOff  rmb   2          Overlay offset in block                      $12
-Wt.LVec  rmb   2          LSet vector                                  $14
-Wt.PVec  rmb   2          PSet vector                                  $16
-Wt.GBlk  rmb   1          GCursor memory block #                       $18
-Wt.GOff  rmb   2          GCursor offset in block                      $19
-Wt.MaxX  rmb   2          Maximum X cord. (0-79,0-639)                 $1B
-Wt.MaxY  rmb   2          Maximum Y cord. (0-24,0-191)                 $1D
-Wt.BLen  rmb   2          bytes left in GPLoad block below             $1F
-Wt.NBlk  rmb   1          memory block # for next GPLoad               $21
-Wt.NOff  rmb   2          Offset in block for next GPLoad              $22
-Wt.LStDf rmb   2          screen logical start default                 $24
+MaxWind        EQU       32                  maximum allowable window tables
+WinBase        EQU       $1290               base address to start of window tables
+               ORG       -$10
+Wt.STbl        RMB       2                   Screen table pointer ($FFFF=Not used)       -$10
+Wt.BLnk        RMB       1                   overlay window parent entry # ($FF=base)    -$0E
+Wt.LStrt       RMB       2                   screen logical start address                -$0D
+Wt.CPX         RMB       1                   current X coord. start                      -$0B
+Wt.CPY         RMB       1                   current Y coord. start                      -$0A
+Wt.SZX         RMB       1                   current X size (CWArea)                     -$09
+Wt.SZY         RMB       1                   current Y size (CWArea)                     -$08
+Wt.SXFct       RMB       1                   X scaling factor                            -$07
+Wt.SYFct       RMB       1                   Y scaling factor (0=no scaling)             -$06
+Wt.Cur         RMB       2                   cursor physical address on screen           -$05
+Wt.FMsk        RMB       1                   font bit mask (based from left)             -$03
+Wt.CurX        RMB       2                   X coord of cursor                           -$02
+Wt.CurY        RMB       2                   Y Coord of cursor                            $00
+Wt.XBCnt       RMB       1                   width of window (in bytes)                   $02
+Wt.CWTmp       RMB       1                   bytes wide each text chr (1,2,4)             $03
+Wt.BRow        RMB       2                   bytes/text row (8x width in gfx)             $04
+Wt.Fore        RMB       1                   foreground palette #                         $06
+Wt.Back        RMB       1                   background palette #                         $07
+Wt.Attr        RMB       1                   default attributes (FUTTTBBB)                $08
+Wt.BSW         RMB       1                   character BSW switches                       $09
+Wt.LSet        RMB       1                   LSet type                                    $0A
+Wt.FBlk        RMB       1                   Font memory block #                          $0B
+Wt.FOff        RMB       2                   Font offset in block                         $0C
+Wt.PBlk        RMB       1                   PSet memory block #                          $0E
+Wt.POff        RMB       2                   PSet offset in block                         $0F
+Wt.OBlk        RMB       1                   Overlay memory block #                       $11
+Wt.OOff        RMB       2                   Overlay offset in block                      $12
+Wt.LVec        RMB       2                   LSet vector                                  $14
+Wt.PVec        RMB       2                   PSet vector                                  $16
+Wt.GBlk        RMB       1                   GCursor memory block #                       $18
+Wt.GOff        RMB       2                   GCursor offset in block                      $19
+Wt.MaxX        RMB       2                   Maximum X cord. (0-79,0-639)                 $1B
+Wt.MaxY        RMB       2                   Maximum Y cord. (0-24,0-191)                 $1D
+Wt.BLen        RMB       2                   bytes left in GPLoad block below             $1F
+Wt.NBlk        RMB       1                   memory block # for next GPLoad               $21
+Wt.NOff        RMB       2                   Offset in block for next GPLoad              $22
+Wt.LStDf       RMB       2                   screen logical start default                 $24
 * NOTE: The following default settings are what the window was initialized
 *       with, and thus are the MAXIMUM start/size the window can handle
 *       until it is restarted (DWEnd & DWSet)
 *       They also appear to be used in WindInt to determine the coords &
 *       sizes for control+content regions
-Wt.DfCPX rmb   1          default X cord. start                        $26
-Wt.DfCPY rmb   1          default Y cord. start                        $27
-Wt.DfSZX rmb   1          default X size                               $28
-Wt.DfSZY rmb   1          default Y size                               $29
-Wt.Res   rmb   6          unused                                   $2A-$2F
-Wt.Siz   equ   .+$10
+Wt.DfCPX       RMB       1                   default X cord. start                        $26
+Wt.DfCPY       RMB       1                   default Y cord. start                        $27
+Wt.DfSZX       RMB       1                   default X size                               $28
+Wt.DfSZY       RMB       1                   default Y size                               $29
+Wt.Res         RMB       6                   unused                                   $2A-$2F
+Wt.Siz         EQU       .+$10
 
 *****************************************************************************
 * Screen table entrys
 * These tables sit in system block 0 base=$1A80
 
-STblMax  equ   16         Maximum number of screen tables
-STblBse  equ   $1A80      base address of screen tables
-         org   0
-St.Sty   rmb   1          Screen type                         $00
-St.SBlk  rmb   1          Ram block start #                   $01
-St.LStrt rmb   2          Screen logical start (for GIME)     $02
-St.BRow  rmb   1          Bytes per row                       $04
-St.Brdr  rmb   1          Border palette register #           $05
-St.Fore  rmb   1          Foreground palette register #       $06
-St.Back  rmb   1          Background palette register #       $07
-St.ScSiz rmb   1          screen size: 24..28 lines           $08
-St.Res   rmb   7          UNUSED???                           $09
+STblMax        EQU       16                  Maximum number of screen tables
+STblBse        EQU       $1A80               base address of screen tables
+               ORG       0
+St.Sty         RMB       1                   Screen type                         $00
+St.SBlk        RMB       1                   Ram block start #                   $01
+St.LStrt       RMB       2                   Screen logical start (for GIME)     $02
+St.BRow        RMB       1                   Bytes per row                       $04
+St.Brdr        RMB       1                   Border palette register #           $05
+St.Fore        RMB       1                   Foreground palette register #       $06
+St.Back        RMB       1                   Background palette register #       $07
+St.ScSiz       RMB       1                   screen size: 24..28 lines           $08
+St.Res         RMB       7                   UNUSED???                           $09
 * NOTE: SHOULD USE ONE OF THESE UNUSED BYTES TO KEEP THE # OF DEVICE WINDOW
 * TABLES THAT ARE USING THIS SCREEN TABLE. DWSET & DWEND WOULD KEEP TRACK OF
 * THESE, AND THE WINDINT TITLE BAR ROUTINE WOULD CHECK IT. IF IT IS ONLY 1,
 * IT WON'T BOTHER CHANGING THE TITLE BAR WHEN SELECTING WINDOWS
-St.Pals  rmb   16         Palette register contents           $10
-St.Siz   equ   .
+St.Pals        RMB       16                  Palette register contents           $10
+St.Siz         EQU       .
 
 *****************************************************************************
 * Graphics buffer tables
 * They contain a 20 byte header (shown below), followed by the raw pixel
 * data.
-         org   0
-Grf.Bck  rmb   1          back block link #                   $00
-Grf.Off  rmb   2          back block header offset            $01
-Grf.Grp  rmb   1          group #                             $03
-Grf.Buff rmb   1          buffer #                            $04
-Grf.BSz  rmb   2          buffer size (not including header)  $05
-Grf.XSz  rmb   2          X size (in pixels)                  $07
-Grf.YSz  rmb   2          Y size (in pixels/bytes)            $09
-Grf.XBSz rmb   1          X size in bytes                     $0B
-Grf.LfPx rmb   1          # pixels used in first byte of line $0C
-Grf.RtPx rmb   1          # pixels used in last byte of line  $0D
-Grf.STY  rmb   1          Screen type buffer intended for     $0E
-Grf.NBlk rmb   1          number blocks used                  $0F
-Grf.Pal  rmb   16         Copy of palette registers?          $10
-Grf.Siz  equ   .          $20
+               ORG       0
+Grf.Bck        RMB       1                   back block link #                   $00
+Grf.Off        RMB       2                   back block header offset            $01
+Grf.Grp        RMB       1                   group #                             $03
+Grf.Buff       RMB       1                   buffer #                            $04
+Grf.BSz        RMB       2                   buffer size (not including header)  $05
+Grf.XSz        RMB       2                   X size (in pixels)                  $07
+Grf.YSz        RMB       2                   Y size (in pixels/bytes)            $09
+Grf.XBSz       RMB       1                   X size in bytes                     $0B
+Grf.LfPx       RMB       1                   # pixels used in first byte of line $0C
+Grf.RtPx       RMB       1                   # pixels used in last byte of line  $0D
+Grf.STY        RMB       1                   Screen type buffer intended for     $0E
+Grf.NBlk       RMB       1                   number blocks used                  $0F
+Grf.Pal        RMB       16                  Copy of palette registers?          $10
+Grf.Siz        EQU       .                   $20
 
 *****************************************************************************
 * GFX tables (1 for each window, 18 ($12) bytes each) pointed to by
 * $1075-$0176
 * GRFINT only uses gt0001-gt0004, the rest is exclusive to WINDINT
-         org   0
-Gt.WTyp  rmb   1          WindInt window type (Framed, Scroll Bar, etc.) $00
-Gt.GXCur rmb   2          X coord of graphics cursor                     $01
-Gt.GYCur rmb   2          Y coord of graphics cursor                     $03
-Gt.DPtr  rmb   2          Ptr to WindInt window descriptor               $05
-Gt.FClr  rmb   1          Foreground color                               $07
-Gt.BClr  rmb   1          Background color                               $08
-Gt.FMsk  rmb   1          Foreground mask                                $09
-Gt.BMsk  rmb   1          Background mask                                $0A
-Gt.GBlk  rmb   1          Block # of graphics cursor                     $0B
-Gt.GOff  rmb   2          Offset into block of graphics cursor           $0C
-Gt.Proc  rmb   1          Process # of window creator                    $0E
-Gt.PBlk  rmb   1          Process descriptor block # of creator          $0F
-Gt.Res   rmb   2          ??? RESERVED ???                               $10
-GTabSz   equ   .
+               ORG       0
+Gt.WTyp        RMB       1                   WindInt window type (Framed, Scroll Bar, etc.) $00
+Gt.GXCur       RMB       2                   X coord of graphics cursor                     $01
+Gt.GYCur       RMB       2                   Y coord of graphics cursor                     $03
+Gt.DPtr        RMB       2                   Ptr to WindInt window descriptor               $05
+Gt.FClr        RMB       1                   Foreground color                               $07
+Gt.BClr        RMB       1                   Background color                               $08
+Gt.FMsk        RMB       1                   Foreground mask                                $09
+Gt.BMsk        RMB       1                   Background mask                                $0A
+Gt.GBlk        RMB       1                   Block # of graphics cursor                     $0B
+Gt.GOff        RMB       2                   Offset into block of graphics cursor           $0C
+Gt.Proc        RMB       1                   Process # of window creator                    $0E
+Gt.PBlk        RMB       1                   Process descriptor block # of creator          $0F
+Gt.Res         RMB       2                   ??? RESERVED ???                               $10
+GTabSz         EQU       .
 
 *****************************************************************************
 * This table is located in the graphics table memory and is offset from
@@ -683,35 +683,35 @@
 * NOTE: USING UNUSED BYTES IN CC3 GLOBAL MEM, SET UP SEPARATE PTRS FOR EACH
 *  OF THE BELOW SO WE CAN SPEED UP ACCESS BY NOT HAVING TO DO A LOAD/LEAx
 *  COMBINATION EVERY TIME
-         org   $0240
-         rmb   WN.SIZ     copy of last accessed window descriptor
-         rmb   MN.SIZ     copy of last accessed menu descriptor
-         rmb   MI.SIZ     copy of last accessed item descriptor
-         rmb   65         menu handling table (16 entrys of 4 bytes)
+               ORG       $0240
+               RMB       WN.SIZ              copy of last accessed window descriptor
+               RMB       MN.SIZ              copy of last accessed menu descriptor
+               RMB       MI.SIZ              copy of last accessed item descriptor
+               RMB       65                  menu handling table (16 entrys of 4 bytes)
 
 *****************************************************************************
 * WindInt menu handling table entry definition
-         org   0
-MnuXNum  rmb   1          menu #
-MnuXStrt rmb   1          X start text co-ordinate
-MnuXEnd  rmb   1          X end text co-ordinate
-         rmb   1          unused?
-MnuHSiz  equ   .
+               ORG       0
+MnuXNum        RMB       1                   menu #
+MnuXStrt       RMB       1                   X start text co-ordinate
+MnuXEnd        RMB       1                   X end text co-ordinate
+               RMB       1                   unused?
+MnuHSiz        EQU       .
 
 *****************************************************************************
 * Character binary switches
-TChr     equ   %10000000  transparent characters
-Under    equ   %01000000  underline characters
-Bold     equ   %00100000  bold characters
-Prop     equ   %00010000  proportional spacing of characters
-Scale    equ   %00001000  automatic window scaling
-Invers   equ   %00000100  inverse characters
-NoCurs   equ   %00000010  no cursor display
-Protect  equ   %00000001  device window protection
+TChr           EQU       %10000000           transparent characters
+Under          EQU       %01000000           underline characters
+Bold           EQU       %00100000           bold characters
+Prop           EQU       %00010000           proportional spacing of characters
+Scale          EQU       %00001000           automatic window scaling
+Invers         EQU       %00000100           inverse characters
+NoCurs         EQU       %00000010           no cursor display
+Protect        EQU       %00000001           device window protection
 
 *****************************************************************************
 * Screen types (high bit set=hardware text, else graphics) in GRFDRV
-Current  equ   $ff        Current screen
+Current        EQU       $ff                 Current screen
 *         equ   1          640x200x2
 *         equ   2          320x200x4
 *         equ   3          640x200x4
@@ -722,15 +722,15 @@
 *************************************
 * Window default palette color codes
 *
-         org   0
-White.   rmb   1
-Blue.    rmb   1
-Black.   rmb   1
-Green.   rmb   1
-Red.     rmb   1
-Yellow.  rmb   1
-Magenta. rmb   1
-Cyan.    rmb   1
+               ORG       0
+White.         RMB       1
+Blue.          RMB       1
+Black.         RMB       1
+Green.         RMB       1
+Red.           RMB       1
+Yellow.        RMB       1
+Magenta.       RMB       1
+Cyan.          RMB       1
 
-         ENDC
+               ENDC