
; ----------------------------------------------------------

        PUBLIC  $M_CLS_1
        IF1
        %out    ... Including message Class A
        ENDIF

; ----------------------------------------------------------

$M_CLASS_A_STRUC LABEL BYTE
        $M_CLASS_ID <0FFH,EXPECTED_VERSION,Class_A_MessageCount>

; ----------------------------------------------------------


$M_A_00001H_STRUC LABEL BYTE
        $M_ID   <00001H,$M_A_00001H_MSG-$M_A_00001H_STRUC>

$M_A_00002H_STRUC LABEL BYTE
        $M_ID   <00002H,$M_A_00002H_MSG-$M_A_00002H_STRUC>

$M_A_00006H_STRUC LABEL BYTE
        $M_ID   <00006H,$M_A_00006H_MSG-$M_A_00006H_STRUC>

$M_A_00007H_STRUC LABEL BYTE
        $M_ID   <00007H,$M_A_00007H_MSG-$M_A_00007H_STRUC>

$M_A_00008H_STRUC LABEL BYTE
        $M_ID   <00008H,$M_A_00008H_MSG-$M_A_00008H_STRUC>

$M_A_0000BH_STRUC LABEL BYTE
        $M_ID   <0000BH,$M_A_0000BH_MSG-$M_A_0000BH_STRUC>

$M_A_0000CH_STRUC LABEL BYTE
        $M_ID   <0000CH,$M_A_0000CH_MSG-$M_A_0000CH_STRUC>

$M_A_0000DH_STRUC LABEL BYTE
        $M_ID   <0000DH,$M_A_0000DH_MSG-$M_A_0000DH_STRUC>

$M_A_0000EH_STRUC LABEL BYTE
        $M_ID   <0000EH,$M_A_0000EH_MSG-$M_A_0000EH_STRUC>

$M_A_0000FH_STRUC LABEL BYTE
        $M_ID   <0000FH,$M_A_0000FH_MSG-$M_A_0000FH_STRUC>

$M_A_00010H_STRUC LABEL BYTE
        $M_ID   <00010H,$M_A_00010H_MSG-$M_A_00010H_STRUC>

$M_A_00011H_STRUC LABEL BYTE
        $M_ID   <00011H,$M_A_00011H_MSG-$M_A_00011H_STRUC>

$M_A_00012H_STRUC LABEL BYTE
        $M_ID   <00012H,$M_A_00012H_MSG-$M_A_00012H_STRUC>

$M_A_00013H_STRUC LABEL BYTE
        $M_ID   <00013H,$M_A_00013H_MSG-$M_A_00013H_STRUC>

$M_A_00014H_STRUC LABEL BYTE
        $M_ID   <00014H,$M_A_00014H_MSG-$M_A_00014H_STRUC>

$M_A_00015H_STRUC LABEL BYTE
        $M_ID   <00015H,$M_A_00015H_MSG-$M_A_00015H_STRUC>

$M_A_00016H_STRUC LABEL BYTE
        $M_ID   <00016H,$M_A_00016H_MSG-$M_A_00016H_STRUC>

$M_A_00017H_STRUC LABEL BYTE
        $M_ID   <00017H,$M_A_00017H_MSG-$M_A_00017H_STRUC>

$M_A_00018H_STRUC LABEL BYTE
        $M_ID   <00018H,$M_A_00018H_MSG-$M_A_00018H_STRUC>

$M_A_00019H_STRUC LABEL BYTE
        $M_ID   <00019H,$M_A_00019H_MSG-$M_A_00019H_STRUC>

$M_A_0001AH_STRUC LABEL BYTE
        $M_ID   <0001AH,$M_A_0001AH_MSG-$M_A_0001AH_STRUC>

$M_A_0001BH_STRUC LABEL BYTE
        $M_ID   <0001BH,$M_A_0001BH_MSG-$M_A_0001BH_STRUC>

$M_A_0001CH_STRUC LABEL BYTE
        $M_ID   <0001CH,$M_A_0001CH_MSG-$M_A_0001CH_STRUC>

$M_A_0001DH_STRUC LABEL BYTE
        $M_ID   <0001DH,$M_A_0001DH_MSG-$M_A_0001DH_STRUC>

$M_A_0001EH_STRUC LABEL BYTE
        $M_ID   <0001EH,$M_A_0001EH_MSG-$M_A_0001EH_STRUC>

$M_A_0001FH_STRUC LABEL BYTE
        $M_ID   <0001FH,$M_A_0001FH_MSG-$M_A_0001FH_STRUC>

$M_A_00020H_STRUC LABEL BYTE
        $M_ID   <00020H,$M_A_00020H_MSG-$M_A_00020H_STRUC>

$M_A_00021H_STRUC LABEL BYTE
        $M_ID   <00021H,$M_A_00021H_MSG-$M_A_00021H_STRUC>

$M_A_00022H_STRUC LABEL BYTE
        $M_ID   <00022H,$M_A_00022H_MSG-$M_A_00022H_STRUC>

$M_A_00023H_STRUC LABEL BYTE
        $M_ID   <00023H,$M_A_00023H_MSG-$M_A_00023H_STRUC>

; ----------------------------------------------------------


$M_A_00001H_MSG LABEL BYTE
        DB      $M_A_00001H_END-$M_A_00001H_MSG-1
        DB      "Incorrect DOS version",CR,LF
$M_A_00001H_END LABEL BYTE
  
$M_A_00002H_MSG LABEL BYTE
        DB      $M_A_00002H_END-$M_A_00002H_MSG-1
        DB      CR,LF,"Insufficient memory",CR,LF
$M_A_00002H_END LABEL BYTE
  
$M_A_00006H_MSG LABEL BYTE
        DB      $M_A_00006H_END-$M_A_00006H_MSG-1
        DB      CR,LF,"Invalid drive specification",CR,LF
$M_A_00006H_END LABEL BYTE
  
$M_A_00007H_MSG LABEL BYTE
        DB      $M_A_00007H_END-$M_A_00007H_MSG-1
        DB      "Invalid date",CR,LF
$M_A_00007H_END LABEL BYTE
  
$M_A_00008H_MSG LABEL BYTE
        DB      $M_A_00008H_END-$M_A_00008H_MSG-1
        DB      "Invalid time",CR,LF
$M_A_00008H_END LABEL BYTE
  
$M_A_0000BH_MSG LABEL BYTE
        DB      $M_A_0000BH_END-$M_A_0000BH_MSG-1
        DB      "Invalid path",CR,LF
$M_A_0000BH_END LABEL BYTE
  
$M_A_0000CH_MSG LABEL BYTE
        DB      $M_A_0000CH_END-$M_A_0000CH_MSG-1
        DB      "No source drive specified",CR,LF
$M_A_0000CH_END LABEL BYTE
  
$M_A_0000DH_MSG LABEL BYTE
        DB      $M_A_0000DH_END-$M_A_0000DH_MSG-1
        DB      "No target drive specified",CR,LF
$M_A_0000DH_END LABEL BYTE
  
$M_A_0000EH_MSG LABEL BYTE
        DB      $M_A_0000EH_END-$M_A_0000EH_MSG-1
        DB      CR,LF,"Source and target drives are the same",CR,LF
$M_A_0000EH_END LABEL BYTE
  
$M_A_0000FH_MSG LABEL BYTE
        DB      $M_A_0000FH_END-$M_A_0000FH_MSG-1
        DB      CR,LF,"Error executing FORMAT",CR,LF
$M_A_0000FH_END LABEL BYTE
  
$M_A_00010H_MSG LABEL BYTE
        DB      $M_A_00010H_END-$M_A_00010H_MSG-1
        DB      CR,LF,"Cannot find FORMAT.COM",CR,LF
$M_A_00010H_END LABEL BYTE
  
$M_A_00011H_MSG LABEL BYTE
        DB      $M_A_00011H_END-$M_A_00011H_MSG-1
        DB      CR,LF,"Error opening logfile",CR,LF
$M_A_00011H_END LABEL BYTE
  
$M_A_00012H_MSG LABEL BYTE
        DB      $M_A_00012H_END-$M_A_00012H_MSG-1
        DB      CR,LF,"Logging to file %1",CR,LF
$M_A_00012H_END LABEL BYTE
  
$M_A_00013H_MSG LABEL BYTE
        DB      $M_A_00013H_END-$M_A_00013H_MSG-1
        DB      CR,LF,"Last backup diskette not inserted",CR,LF
$M_A_00013H_END LABEL BYTE
  
$M_A_00014H_MSG LABEL BYTE
        DB      $M_A_00014H_END-$M_A_00014H_MSG-1
        DB      CR,LF,"WARNING! Files in the target drive",CR,LF
        DB      	"%1:\ root directory will be erased",CR,LF
$M_A_00014H_END LABEL BYTE
  
$M_A_00015H_MSG LABEL BYTE
        DB      $M_A_00015H_END-$M_A_00015H_MSG-1
        DB      CR,LF,"WARNING! Files in the target drive",CR,LF
        DB      	"%1:\BACKUP directory will be erased",CR,LF
$M_A_00015H_END LABEL BYTE
  
$M_A_00016H_MSG LABEL BYTE
        DB      $M_A_00016H_END-$M_A_00016H_MSG-1
        DB      CR,LF,"*** Backing up files to drive %1: ***",CR,LF
$M_A_00016H_END LABEL BYTE
  
$M_A_00017H_MSG LABEL BYTE
        DB      $M_A_00017H_END-$M_A_00017H_MSG-1
        DB      "Diskette Number: %1",CR,LF
$M_A_00017H_END LABEL BYTE
  
$M_A_00018H_MSG LABEL BYTE
        DB      $M_A_00018H_END-$M_A_00018H_MSG-1
        DB      CR,LF,"WARNING! No files were found to back up",CR,LF
$M_A_00018H_END LABEL BYTE
  
$M_A_00019H_MSG LABEL BYTE
        DB      $M_A_00019H_END-$M_A_00019H_MSG-1
        DB      CR,LF,"Insert backup source diskette in drive %1:",CR,LF
$M_A_00019H_END LABEL BYTE
  
$M_A_0001AH_MSG LABEL BYTE
        DB      $M_A_0001AH_END-$M_A_0001AH_MSG-1
        DB      CR,LF,"Insert backup diskette %1 in drive %2:",CR,LF
$M_A_0001AH_END LABEL BYTE
  
$M_A_0001BH_MSG LABEL BYTE
        DB      $M_A_0001BH_END-$M_A_0001BH_MSG-1
        DB      CR,LF,"*** Not able to backup file ***",CR,LF
$M_A_0001BH_END LABEL BYTE
  
$M_A_0001CH_MSG LABEL BYTE
        DB      $M_A_0001CH_END-$M_A_0001CH_MSG-1
        DB      CR,LF,"Insert last backup diskette in drive %1:",CR,LF
$M_A_0001CH_END LABEL BYTE
  
$M_A_0001DH_MSG LABEL BYTE
        DB      $M_A_0001DH_END-$M_A_0001DH_MSG-1
        DB      CR,LF,"Target cannot be used for backup",CR,LF
$M_A_0001DH_END LABEL BYTE
  
$M_A_0001EH_MSG LABEL BYTE
        DB      $M_A_0001EH_END-$M_A_0001EH_MSG-1
        DB      CR,LF,"*** Last file not backed up ***",CR,LF
$M_A_0001EH_END LABEL BYTE
  
$M_A_0001FH_MSG LABEL BYTE
        DB      $M_A_0001FH_END-$M_A_0001FH_MSG-1
        DB      CR,LF,"Fixed backup device %1: is full",CR,LF
$M_A_0001FH_END LABEL BYTE
  
$M_A_00020H_MSG LABEL BYTE
        DB      $M_A_00020H_END-$M_A_00020H_MSG-1
        DB      CR,LF,"Disk full error writing to BACKUP Log File",CR,LF
$M_A_00020H_END LABEL BYTE
  
$M_A_00021H_MSG LABEL BYTE
        DB      $M_A_00021H_END-$M_A_00021H_MSG-1
        DB      "Press any key to continue . . .",CR,LF
$M_A_00021H_END LABEL BYTE
  
$M_A_00022H_MSG LABEL BYTE
        DB      $M_A_00022H_END-$M_A_00022H_MSG-1
        DB      CR,LF
$M_A_00022H_END LABEL BYTE
  
$M_A_00023H_MSG LABEL BYTE
        DB      $M_A_00023H_END-$M_A_00023H_MSG-1
        DB      CR,LF,"Cannot FORMAT nonremovable drive %1:",CR,LF
$M_A_00023H_END LABEL BYTE
  
; ----------------------------------------------------------

Class_A_MessageCount EQU     30

; ----------------------------------------------------------

        IF      FARmsg
$M_CLS_1 PROC FAR
        ELSE
$M_CLS_1 PROC NEAR
        ENDIF

        PUSH    CS
        POP     ES
        LEA     DI,$M_CLASS_A_STRUC
        ADD     CX,$-$M_CLASS_A_STRUC
        RET

$M_CLS_1 ENDP

; ----------------------------------------------------------

