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

        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_00003H_STRUC LABEL BYTE
        $M_ID   <00003H,$M_A_00003H_MSG-$M_A_00003H_STRUC>

$M_A_00004H_STRUC LABEL BYTE
        $M_ID   <00004H,$M_A_00004H_MSG-$M_A_00004H_STRUC>

$M_A_00005H_STRUC LABEL BYTE
        $M_ID   <00005H,$M_A_00005H_MSG-$M_A_00005H_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_00009H_STRUC LABEL BYTE
        $M_ID   <00009H,$M_A_00009H_MSG-$M_A_00009H_STRUC>

$M_A_0000AH_STRUC LABEL BYTE
        $M_ID   <0000AH,$M_A_0000AH_MSG-$M_A_0000AH_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      "Cannot %1 a SUBSTed or ASSIGNed drive",CR,LF
$M_A_00002H_END LABEL BYTE
  
$M_A_00003H_MSG LABEL BYTE
        DB      $M_A_00003H_END-$M_A_00003H_MSG-1
        DB      "Invalid characters in volume label",CR,LF
$M_A_00003H_END LABEL BYTE
  
$M_A_00004H_MSG LABEL BYTE
        DB      $M_A_00004H_END-$M_A_00004H_MSG-1
        DB      "Volume in drive %1 has no label",CR,LF
$M_A_00004H_END LABEL BYTE
  
$M_A_00005H_MSG LABEL BYTE
        DB      $M_A_00005H_END-$M_A_00005H_MSG-1
        DB      "Volume in drive %1 is %2",CR,LF
$M_A_00005H_END LABEL BYTE
  
$M_A_00006H_MSG LABEL BYTE
        DB      $M_A_00006H_END-$M_A_00006H_MSG-1
        DB      "Volume label (11 characters, ENTER for none)? "
$M_A_00006H_END LABEL BYTE
  
$M_A_00007H_MSG LABEL BYTE
        DB      $M_A_00007H_END-$M_A_00007H_MSG-1
        DB      "Volume Serial Number is %1-%2",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      "Cannot %1 a network drive",CR,LF
$M_A_00008H_END LABEL BYTE
  
$M_A_00009H_MSG LABEL BYTE
        DB      $M_A_00009H_END-$M_A_00009H_MSG-1
        DB      CR,LF,"Delete current volume label (Y/N)? "
$M_A_00009H_END LABEL BYTE
  
$M_A_0000AH_MSG LABEL BYTE
        DB      $M_A_0000AH_END-$M_A_0000AH_MSG-1
        DB      CR,LF
$M_A_0000AH_END LABEL BYTE
  
; ----------------------------------------------------------

Class_A_MessageCount EQU     10

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

        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

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

