*GPDSpecVersion: "1.0"
*Include: "StdNames.gpd"
*GPDFileVersion: "1.0"
*GPDFileName: "SMJS712.GPD"
*ModelName: "Star SP700 Tear Bar (SP712)"
*MasterUnits: PAIR(170,144)
*Include: "SMJS700RES.GPD"
*PrinterType: SERIAL
*OEMCustomData: "SP712"

*% Begin Feature & Option Display Order Specification
*Feature: PrintMode
{
    *Option: Line {}
}
*Feature: PaperType
{
    *Option: Receipt {}
    *Option: Ticket {}
    *Option: BlackMark {}
}
*Feature: BlackMarkDetection
{
    *Option: Disable {}
    *Option: Enable {}
}
*Feature: PageFeedType
{
    *Option: NoFeed {}
}
*Feature: DocFeedType
{
    *Option: NoFeed {}
    *Option: TearBar {}
}
*Feature: BidirectionalPrinting
{
    *Option: Bidirectional {}
    *Option: Unidirectional {}
}
*Feature: PeripheralUnitType
{
    *Option: Buzzer {}
    *Option: CashDrawer {}
}
*Feature: PeripheralUnit1Print
{
    *Option: NoUse {}
    *Option: DocumentTop {}
    *Option: PageTop {}
    *Option: PageBottom {}
    *Option: DocumentBottom {}
}
*Feature: PeripheralUnit2Print
{
    *Option: NoUse {}
    *Option: DocumentTop {}
    *Option: PageTop {}
    *Option: PageBottom {}
    *Option: DocumentBottom {}
}
*Feature: PageTopLogo
{
    *Option: NoLogoPrinted {}
    *Option: PrintLogo1 {}
    *Option: PrintLogo2 {}
    *Option: PrintLogo3 {}
    *Option: PrintLogo4 {}
    *Option: PrintLogo5 {}
    *Option: PrintLogo6 {}
    *Option: PrintLogo7 {}
    *Option: PrintLogo8 {}
    *Option: PrintLogo9 {}
    *Option: PrintLogo10 {}
}
*Feature: PageBottomLogo
{
    *Option: NoLogoPrinted {}
    *Option: PrintLogo1 {}
    *Option: PrintLogo2 {}
    *Option: PrintLogo3 {}
    *Option: PrintLogo4 {}
    *Option: PrintLogo5 {}
    *Option: PrintLogo6 {}
    *Option: PrintLogo7 {}
    *Option: PrintLogo8 {}
    *Option: PrintLogo9 {}
    *Option: PrintLogo10 {}
}
*Feature: VerticalMount
{
    *Option: Disable {}
    *Option: Enable {}
}
*Feature: Buzzer1OnTime
{
    *Option: 20millis {}
    *Option: 40millis {}
    *Option: 100millis {}
    *Option: 200millis {}
    *Option: 500millis {}
    *Option: 1000millis {}
    *Option: 2000millis {}
    *Option: 5000millis {}
}
*Feature: Buzzer1OffTime
{
    *Option: 20millis {}
    *Option: 40millis {}
    *Option: 100millis {}
    *Option: 200millis {}
    *Option: 500millis {}
    *Option: 1000millis {}
    *Option: 2000millis {}
    *Option: 5000millis {}
}
*Feature: Buzzer1RepeatPrint
{
    *Option: 1times {}
    *Option: 2times {}
    *Option: 3times {}
    *Option: 5times {}
    *Option: 10times {}
    *Option: 15times {}
    *Option: 20times {}
}
*Feature: Buzzer2OnTime
{
    *Option: 20millis {}
    *Option: 40millis {}
    *Option: 100millis {}
    *Option: 200millis {}
    *Option: 500millis {}
    *Option: 1000millis {}
    *Option: 2000millis {}
    *Option: 5000millis {}
}
*Feature: Buzzer2OffTime
{
    *Option: 20millis {}
    *Option: 40millis {}
    *Option: 100millis {}
    *Option: 200millis {}
    *Option: 500millis {}
    *Option: 1000millis {}
    *Option: 2000millis {}
    *Option: 5000millis {}
}
*Feature: Buzzer2RepeatPrint
{
    *Option: 1times {}
    *Option: 2times {}
    *Option: 3times {}
    *Option: 5times {}
    *Option: 10times {}
    *Option: 15times {}
    *Option: 20times {}
}
*Feature: PeripheralUnit1PrintPulseWidth
{
    *Option: 10millis {}
    *Option: 100millis {}
    *Option: 200millis {}
    *Option: 300millis {}
    *Option: 400millis {}
    *Option: 500millis {}
    *Option: 600millis {}
    *Option: 700millis {}
    *Option: 800millis {}
    *Option: 900millis {}
    *Option: 1000millis {}
    *Option: 1100millis {}
    *Option: 1200millis {}
}

*% End Feature & Option Display Order Specification

*Feature: Orientation
{
    *rcNameID: =ORIENTATION_DISPLAY
    *DefaultOption: PORTRAIT
    *Option: PORTRAIT
    {
        *rcNameID: =PORTRAIT_DISPLAY
    }
    *Option: LANDSCAPE_CC270
    {
        *rcNameID: =LANDSCAPE_DISPLAY
    }
}
*Feature: InputBin
{
    *rcNameID: =PAPER_SOURCE_DISPLAY
    *DefaultOption: Friction
    *Option: Friction
    {
        *rcNameID: =FRICTION
    }
}
*Feature: PrintMode
{
    *rcNameID: =PRINT_MODE
    *FeatureType: PRINTER_PROPERTY
    *DefaultOption: Line
    *Option: Line
    {
        *rcNameID: =PRINT_MODE__LINE
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.14
            *Cmd: "<1B>B"
        }
    }
}
*Feature: Resolution
{
    *rcNameID: =RESOLUTION_DISPLAY
    *DefaultOption: XHighYHigh
    *Option: XHighYHigh
    {
        *Name: "170 x 144 " =DOTS_PER_INCH
        *DPI: PAIR(170, 144)
        *TextDPI: PAIR(170, 144)
        *PinsPerLogPass: 16
        *PinsPerPhysPass: 8
        *MinStripBlankPixels: 120
        EXTERN_GLOBAL: *StripBlanks: LIST(TRAILING)
        *SpotDiameter: 100
        *Command: CmdSendBlockData
        {
            *Cmd: "<>"
        }
    }
    *Option: XHighYNormal
    {
        *Name: "170 x 72 " =DOTS_PER_INCH
        *DPI: PAIR(170, 72)
        *TextDPI: PAIR(170, 72)
        *PinsPerLogPass: 8
        *PinsPerPhysPass: 8
        *MinStripBlankPixels: 120
        EXTERN_GLOBAL: *StripBlanks: LIST(TRAILING)
        *SpotDiameter: 100
        *Command: CmdSendBlockData
        {
            *Cmd: "<>"
        }
    }
    *Option: XNormalYNormal
    {
        *Name: "85 x 72 " =DOTS_PER_INCH
        *DPI: PAIR(85, 72)
        *TextDPI: PAIR(85, 72)
        *PinsPerLogPass: 8
        *PinsPerPhysPass: 8
        *MinStripBlankPixels: 120
        EXTERN_GLOBAL: *StripBlanks: LIST(TRAILING)
        *SpotDiameter: 100
        *Command: CmdSendBlockData
        {
            *Cmd: "<>"
        }
    }
}
*Feature: ColorMode
{
    *rcNameID: =COLOR_PRINTING_MODE_DISPLAY
    *DefaultOption: Mono
    *Option: Mono
    {
        *rcNameID: =MONO_DISPLAY
        *DevNumOfPlanes: 1
        *DevBPP: 1
        *Color? : FALSE
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.3
            *CallbackID: 3
        }
    }
    *Option: Color
    {
        *rcNameID: =COLOR_DISPLAY
        *DevNumOfPlanes: 4
        *DevBPP: 1
        *DrvBPP: 4
        *Color?: TRUE
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.3
            *CallbackID: 4
        }

        EXTERN_GLOBAL: *UseExpColorSelectCmd? : TRUE
        *ColorPlaneOrder: LIST(BLACK, CYAN, MAGENTA, YELLOW)
        *Command: CmdSendBlackData   { *CallbackID: 3 }
        *Command: CmdSendCyanData    { *CallbackID: 4 }
        *Command: CmdSendMagentaData { *CallbackID: 4 }
        *Command: CmdSendYellowData  { *CallbackID: 4 }
    }
}
*Feature: BlackMarkDetection
{
    *rcNameID: =BM_DETECTION
    *FeatureType: PRINTER_PROPERTY
    *DefaultOption: Disable
    *Option: Disable
    {
        *rcNameID: =BM_DETECTION__DISABLE
    }
    *Option: Enable
    {
        *rcNameID: =BM_DETECTION__ENABLE
    }
}

*Feature: PaperType
{
    *rcNameID: =PAPER_TYPE
    *FeatureType: PRINTER_PROPERTY
    *DefaultOption: Receipt
    *Option: Receipt
    {
        *rcNameID: =PAPER_TYPE__RECEIPT
        *Constraints: LIST(BlackMarkDetection.Enable)
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.4
            *Cmd: "<1B><1E>m0"
        }
    }
    *Option: Ticket
    {
        *rcNameID: =PAPER_TYPE__TICKET
        *Constraints: LIST(BlackMarkDetection.Enable)
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.4
            *Cmd: "<1B><1E>m0"
        }
    }
    *Option: BlackMark
    {
        *rcNameID: =PAPER_TYPE__BLACKMARK
        *Constraints: LIST(VerticalMount.Enable)
        *switch: BlackMarkDetection
        {
            *case: Enable
            {
                *Command: CmdSelect
                {
                    *Order: JOB_SETUP.4
                    *Cmd: "<1B><1E>m2"
                }
            }
            *default
            {
                *Command: CmdSelect
                {
                    *Order: JOB_SETUP.4
                    *Cmd: "<1B><1E>m1"
                }
            }
        }
    }
}

*Feature: PeripheralUnitType
{
    *rcNameID: =PERIPHERAL_UNIT_TYPE
    *FeatureType: PRINTER_PROPERTY
    *DefaultOption: Buzzer
    *Option: Buzzer
    {
        *rcNameID: =PERIPHERAL_UNIT_TYPE__BUZZER
    }
    *Option: CashDrawer
    {
        *rcNameID: =PERIPHERAL_UNIT_TYPE__CASH_DRAWER
    }
}

*Feature: PeripheralUnit1PrintPulseWidth
{
    *rcNameID: =CASH_DRAWER1_PULSE_WIDTH
    *FeatureType: PRINTER_PROPERTY
    *DefaultOption: 200millis
    *Option: 10millis
    {
        *rcNameID: =CASH_DRAWER1_PULSE_WIDTH__10MILLIS
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.5
            *Cmd: "<1B><07><01><14>"
        }
    }
    *Option: 100millis
    {
        *rcNameID: =CASH_DRAWER1_PULSE_WIDTH__100MILLIS
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.5
            *Cmd: "<1B><07><0A><14>"
        }
    }
    *Option: 200millis
    {
        *rcNameID: =CASH_DRAWER1_PULSE_WIDTH__200MILLIS
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.5
            *Cmd: "<1B><07><14><14>"
        }
    }
    *Option: 300millis
    {
        *rcNameID: =CASH_DRAWER1_PULSE_WIDTH__300MILLIS
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.5
            *Cmd: "<1B><07><1E><14>"
        }
    }
    *Option: 400millis
    {
        *rcNameID: =CASH_DRAWER1_PULSE_WIDTH__400MILLIS
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.5
            *Cmd: "<1B><07><28><14>"
        }
    }
    *Option: 500millis
    {
        *rcNameID: =CASH_DRAWER1_PULSE_WIDTH__500MILLIS
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.5
            *Cmd: "<1B><07><32><14>"
        }
    }
    *Option: 600millis
    {
        *rcNameID: =CASH_DRAWER1_PULSE_WIDTH__600MILLIS
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.5
            *Cmd: "<1B><07><3C><14>"
        }
    }
    *Option: 700millis
    {
        *rcNameID: =CASH_DRAWER1_PULSE_WIDTH__700MILLIS
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.5
            *Cmd: "<1B><07><46><14>"
        }
    }
    *Option: 800millis
    {
        *rcNameID: =CASH_DRAWER1_PULSE_WIDTH__800MILLIS
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.5
            *Cmd: "<1B><07><50><14>"
        }
    }
    *Option: 900millis
    {
        *rcNameID: =CASH_DRAWER1_PULSE_WIDTH__900MILLIS
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.5
            *Cmd: "<1B><07><5A><14>"
        }
    }
    *Option: 1000millis
    {
        *rcNameID: =CASH_DRAWER1_PULSE_WIDTH__1000MILLIS
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.5
            *Cmd: "<1B><07><64><14>"
        }
    }
    *Option: 1100millis
    {
        *rcNameID: =CASH_DRAWER1_PULSE_WIDTH__1100MILLIS
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.5
            *Cmd: "<1B><07><6E><14>"
        }
    }
    *Option: 1200millis
    {
        *rcNameID: =CASH_DRAWER1_PULSE_WIDTH__1200MILLIS
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.5
            *Cmd: "<1B><07><78><14>"
        }
    }
}

*Feature: Buzzer1OnTime
{
    *rcNameID: =BUZZER1_ON_TIME
    *FeatureType: PRINTER_PROPERTY
    *DefaultOption: 20millis
    *Option: 20millis
    {
        *rcNameID: =BUZZER__TIME_20MILLIS
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.6
            *Cmd: "<1B><1D><19><11>1<01>"
        }
    }
    *Option: 40millis
    {
        *rcNameID: =BUZZER__TIME_40MILLIS
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.6
            *Cmd: "<1B><1D><19><11>1<02>"
        }
    }
    *Option: 100millis
    {
        *rcNameID: =BUZZER__TIME_100MILLIS
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.6
            *Cmd: "<1B><1D><19><11>1<05>"
        }
    }
    *Option: 200millis
    {
        *rcNameID: =BUZZER__TIME_200MILLIS
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.6
            *Cmd: "<1B><1D><19><11>1<0A>"
        }
    }
    *Option: 500millis
    {
        *rcNameID: =BUZZER__TIME_500MILLIS
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.6
            *Cmd: "<1B><1D><19><11>1<19>"
        }
    }
    *Option: 1000millis
    {
        *rcNameID: =BUZZER__TIME_1000MILLIS
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.6
            *Cmd: "<1B><1D><19><11>1<32>"
        }
    }
    *Option: 2000millis
    {
        *rcNameID: =BUZZER__TIME_2000MILLIS
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.6
            *Cmd: "<1B><1D><19><11>1<64>"
        }
    }
    *Option: 5000millis
    {
        *rcNameID: =BUZZER__TIME_5000MILLIS
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.6
            *Cmd: "<1B><1D><19><11>1<FA>"
        }
    }
}
*Feature: Buzzer1OffTime
{
    *rcNameID: =BUZZER1_OFF_TIME
    *FeatureType: PRINTER_PROPERTY
    *DefaultOption: 20millis
    *Option: 20millis
    {
        *rcNameID: =BUZZER__TIME_20MILLIS
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.7
            *Cmd: "<01>"
        }
    }
    *Option: 40millis
    {
        *rcNameID: =BUZZER__TIME_40MILLIS
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.7
            *Cmd: "<02>"
        }
    }
    *Option: 100millis
    {
        *rcNameID: =BUZZER__TIME_100MILLIS
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.7
            *Cmd: "<05>"
        }
    }
    *Option: 200millis
    {
        *rcNameID: =BUZZER__TIME_200MILLIS
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.7
            *Cmd: "<0A>"
        }
    }
    *Option: 500millis
    {
        *rcNameID: =BUZZER__TIME_500MILLIS
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.7
            *Cmd: "<19>"
        }
    }
    *Option: 1000millis
    {
        *rcNameID: =BUZZER__TIME_1000MILLIS
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.7
            *Cmd: "<32>"
        }
    }
    *Option: 2000millis
    {
        *rcNameID: =BUZZER__TIME_2000MILLIS
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.7
            *Cmd: "<64>"
        }
    }
    *Option: 5000millis
    {
        *rcNameID: =BUZZER__TIME_5000MILLIS
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.7
            *Cmd: "<FA>"
        }
    }
}
*Feature: Buzzer1RepeatPrint
{
    *rcNameID: =BUZZER1_REPEAT
    *FeatureType: PRINTER_PROPERTY
    *DefaultOption: 1times
    *Option: 1times
    {
        *rcNameID: =BUZZER__REPEAT_1
    }
    *Option: 2times
    {
        *rcNameID: =BUZZER__REPEAT_2
    }
    *Option: 3times
    {
        *rcNameID: =BUZZER__REPEAT_3
    }
    *Option: 5times
    {
        *rcNameID: =BUZZER__REPEAT_5
    }
    *Option: 10times
    {
        *rcNameID: =BUZZER__REPEAT_10
    }
    *Option: 15times
    {
        *rcNameID: =BUZZER__REPEAT_15
    }
    *Option: 20times
    {
        *rcNameID: =BUZZER__REPEAT_20
    }
}

*Feature: Buzzer2OnTime
{
    *rcNameID: =BUZZER2_ON_TIME
    *FeatureType: PRINTER_PROPERTY
    *DefaultOption: 20millis
    *Option: 20millis
    {
        *rcNameID: =BUZZER__TIME_20MILLIS
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.8
            *Cmd: "<1B><1D><19><11>2<01>"
        }
    }
    *Option: 40millis
    {
        *rcNameID: =BUZZER__TIME_40MILLIS
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.8
            *Cmd: "<1B><1D><19><11>2<02>"
        }
    }
    *Option: 100millis
    {
        *rcNameID: =BUZZER__TIME_100MILLIS
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.8
            *Cmd: "<1B><1D><19><11>2<05>"
        }
    }
    *Option: 200millis
    {
        *rcNameID: =BUZZER__TIME_200MILLIS
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.8
            *Cmd: "<1B><1D><19><11>2<0A>"
        }
    }
    *Option: 500millis
    {
        *rcNameID: =BUZZER__TIME_500MILLIS
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.8
            *Cmd: "<1B><1D><19><11>2<19>"
        }
    }
    *Option: 1000millis
    {
        *rcNameID: =BUZZER__TIME_1000MILLIS
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.8
            *Cmd: "<1B><1D><19><11>2<32>"
        }
    }
    *Option: 2000millis
    {
        *rcNameID: =BUZZER__TIME_2000MILLIS
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.8
            *Cmd: "<1B><1D><19><11>2<64>"
        }
    }
    *Option: 5000millis
    {
        *rcNameID: =BUZZER__TIME_5000MILLIS
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.8
            *Cmd: "<1B><1D><19><11>2<FA>"
        }
    }
}
*Feature: Buzzer2OffTime
{
    *rcNameID: =BUZZER2_OFF_TIME
    *FeatureType: PRINTER_PROPERTY
    *DefaultOption: 20millis
    *Option: 20millis
    {
        *rcNameID: =BUZZER__TIME_20MILLIS
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.9
            *Cmd: "<01>"
        }
    }
    *Option: 40millis
    {
        *rcNameID: =BUZZER__TIME_40MILLIS
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.9
            *Cmd: "<02>"
        }
    }
    *Option: 100millis
    {
        *rcNameID: =BUZZER__TIME_100MILLIS
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.9
            *Cmd: "<05>"
        }
    }
    *Option: 200millis
    {
        *rcNameID: =BUZZER__TIME_200MILLIS
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.9
            *Cmd: "<0A>"
        }
    }
    *Option: 500millis
    {
        *rcNameID: =BUZZER__TIME_500MILLIS
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.9
            *Cmd: "<19>"
        }
    }
    *Option: 1000millis
    {
        *rcNameID: =BUZZER__TIME_1000MILLIS
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.9
            *Cmd: "<32>"
        }
    }
    *Option: 2000millis
    {
        *rcNameID: =BUZZER__TIME_2000MILLIS
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.9
            *Cmd: "<64>"
        }
    }
    *Option: 5000millis
    {
        *rcNameID: =BUZZER__TIME_5000MILLIS
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.9
            *Cmd: "<FA>"
        }
    }
}
*Feature: Buzzer2RepeatPrint
{
    *rcNameID: =BUZZER2_REPEAT
    *FeatureType: PRINTER_PROPERTY
    *DefaultOption: 1times
    *Option: 1times
    {
        *rcNameID: =BUZZER__REPEAT_1
    }
    *Option: 2times
    {
        *rcNameID: =BUZZER__REPEAT_2
    }
    *Option: 3times
    {
        *rcNameID: =BUZZER__REPEAT_3
    }
    *Option: 5times
    {
        *rcNameID: =BUZZER__REPEAT_5
    }
    *Option: 10times
    {
        *rcNameID: =BUZZER__REPEAT_10
    }
    *Option: 15times
    {
        *rcNameID: =BUZZER__REPEAT_15
    }
    *Option: 20times
    {
        *rcNameID: =BUZZER__REPEAT_20
    }
}

*Feature: PeripheralUnit1Print
{
    *rcNameID: =PERIPHERAL_UNIT1
    *FeatureType: PRINTER_PROPERTY
    *DefaultOption: NoUse
    *Option: NoUse
    {
        *rcNameID: =PERIPHERAL_UNIT__NO_USE
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.10
            *Cmd: "<>"
        }
    }
    *Option: DocumentTop
    {
        *rcNameID: =PERIPHERAL_UNIT__DOC_TOP
        *switch: PeripheralUnitType
        {
            *case: CashDrawer
            {
                *Command: CmdSelect
                {
                    *Order: JOB_SETUP.10
                    *Cmd: "<07>"
                }
            }
            *case: Buzzer
            {
                *switch: Buzzer1RepeatPrint
                {
                    *case: 1times
                    {
                        *Command: CmdSelect
                        {
                            *Order: JOB_SETUP.10
                            *Cmd: "<1B><1D><19><12>1<01><00>"
                        }
                    }
                    *case: 2times
                    {
                        *Command: CmdSelect
                        {
                            *Order: JOB_SETUP.10
                            *Cmd: "<1B><1D><19><12>1<02><00>"
                        }
                    }
                    *case: 3times
                    {
                        *Command: CmdSelect
                        {
                            *Order: JOB_SETUP.10
                            *Cmd: "<1B><1D><19><12>1<03><00>"
                        }
                    }
                    *case: 5times
                    {
                        *Command: CmdSelect
                        {
                            *Order: JOB_SETUP.10
                            *Cmd: "<1B><1D><19><12>1<05><00>"
                        }
                    }
                    *case: 10times
                    {
                        *Command: CmdSelect
                        {
                            *Order: JOB_SETUP.10
                            *Cmd: "<1B><1D><19><12>1<0A><00>"
                        }
                    }
                    *case: 15times
                    {
                        *Command: CmdSelect
                        {
                            *Order: JOB_SETUP.10
                            *Cmd: "<1B><1D><19><12>1<0F><00>"
                        }
                    }
                    *case: 20times
                    {
                        *Command: CmdSelect
                        {
                            *Order: JOB_SETUP.10
                            *Cmd: "<1B><1D><19><12>1<14><00>"
                        }
                    }
                }
            }
        }
    }
    *Option: PageTop
    {
        *rcNameID: =PERIPHERAL_UNIT__PAGE_TOP
        *switch: PeripheralUnitType
        {
            *case: CashDrawer
            {
                *Command: CmdSelect
                {
                    *Order: PAGE_SETUP.2
                    *Cmd: "<07>"
                }
            }
            *case: Buzzer
            {
                *switch: Buzzer1RepeatPrint
                {
                    *case: 1times
                    {
                        *Command: CmdSelect
                        {
                            *Order: PAGE_SETUP.2
                            *Cmd: "<1B><1D><19><12>1<01><00>"
                        }
                    }
                    *case: 2times
                    {
                        *Command: CmdSelect
                        {
                            *Order: PAGE_SETUP.2
                            *Cmd: "<1B><1D><19><12>1<02><00>"
                        }
                    }
                    *case: 3times
                    {
                        *Command: CmdSelect
                        {
                            *Order: PAGE_SETUP.2
                            *Cmd: "<1B><1D><19><12>1<03><00>"
                        }
                    }
                    *case: 5times
                    {
                        *Command: CmdSelect
                        {
                            *Order: PAGE_SETUP.2
                            *Cmd: "<1B><1D><19><12>1<05><00>"
                        }
                    }
                    *case: 10times
                    {
                        *Command: CmdSelect
                        {
                            *Order: PAGE_SETUP.2
                            *Cmd: "<1B><1D><19><12>1<0A><00>"
                        }
                    }
                    *case: 15times
                    {
                        *Command: CmdSelect
                        {
                            *Order: PAGE_SETUP.2
                            *Cmd: "<1B><1D><19><12>1<0F><00>"
                        }
                    }
                    *case: 20times
                    {
                        *Command: CmdSelect
                        {
                            *Order: PAGE_SETUP.2
                            *Cmd: "<1B><1D><19><12>1<14><00>"
                        }
                    }
                }
            }
        }
    }
    *Option: PageBottom
    {
        *rcNameID: =PERIPHERAL_UNIT__PAGE_BOTTOM
        *switch: PeripheralUnitType
        {
            *case: CashDrawer
            {
                *Command: CmdSelect
                {
                    *Order: PAGE_FINISH.4
                    *Cmd: "<07>"
                }
            }
            *case: Buzzer
            {
                *switch: Buzzer1RepeatPrint
                {
                    *case: 1times
                    {
                        *Command: CmdSelect
                        {
                            *Order: PAGE_FINISH.4
                            *Cmd: "<1B><1D><19><12>1<01><00>"
                        }
                    }
                    *case: 2times
                    {
                        *Command: CmdSelect
                        {
                            *Order: PAGE_FINISH.4
                            *Cmd: "<1B><1D><19><12>1<02><00>"
                        }
                    }
                    *case: 3times
                    {
                        *Command: CmdSelect
                        {
                            *Order: PAGE_FINISH.4
                            *Cmd: "<1B><1D><19><12>1<03><00>"
                        }
                    }
                    *case: 5times
                    {
                        *Command: CmdSelect
                        {
                            *Order: PAGE_FINISH.4
                            *Cmd: "<1B><1D><19><12>1<05><00>"
                        }
                    }
                    *case: 10times
                    {
                        *Command: CmdSelect
                        {
                            *Order: PAGE_FINISH.4
                            *Cmd: "<1B><1D><19><12>1<0A><00>"
                        }
                    }
                    *case: 15times
                    {
                        *Command: CmdSelect
                        {
                            *Order: PAGE_FINISH.4
                            *Cmd: "<1B><1D><19><12>1<0F><00>"
                        }
                    }
                    *case: 20times
                    {
                        *Command: CmdSelect
                        {
                            *Order: PAGE_FINISH.4
                            *Cmd: "<1B><1D><19><12>1<14><00>"
                        }
                    }
                }
            }
        }
    }
    *Option: DocumentBottom
    {
        *rcNameID: =PERIPHERAL_UNIT__DOC_BOTTOM
        *switch: PeripheralUnitType
        {
            *case: CashDrawer
            {
                *Command: CmdSelect
                {
                    *Order: JOB_FINISH.2
                    *Cmd: "<07>"
                }
            }
            *case: Buzzer
            {
                *switch: Buzzer1RepeatPrint
                {
                    *case: 1times
                    {
                        *Command: CmdSelect
                        {
                            *Order: JOB_FINISH.2
                            *Cmd: "<1B><1D><19><12>1<01><00>"
                        }
                    }
                    *case: 2times
                    {
                        *Command: CmdSelect
                        {
                            *Order: JOB_FINISH.2
                            *Cmd: "<1B><1D><19><12>1<02><00>"
                        }
                    }
                    *case: 3times
                    {
                        *Command: CmdSelect
                        {
                            *Order: JOB_FINISH.2
                            *Cmd: "<1B><1D><19><12>1<03><00>"
                        }
                    }
                    *case: 5times
                    {
                        *Command: CmdSelect
                        {
                            *Order: JOB_FINISH.2
                            *Cmd: "<1B><1D><19><12>1<05><00>"
                        }
                    }
                    *case: 10times
                    {
                        *Command: CmdSelect
                        {
                            *Order: JOB_FINISH.2
                            *Cmd: "<1B><1D><19><12>1<0A><00>"
                        }
                    }
                    *case: 15times
                    {
                        *Command: CmdSelect
                        {
                            *Order: JOB_FINISH.2
                            *Cmd: "<1B><1D><19><12>1<0F><00>"
                        }
                    }
                    *case: 20times
                    {
                        *Command: CmdSelect
                        {
                            *Order: JOB_FINISH.2
                            *Cmd: "<1B><1D><19><12>1<14><00>"
                        }
                    }
                }
            }
        }
    }
}

*Feature: PeripheralUnit2Print
{
    *rcNameID: =PERIPHERAL_UNIT2
    *FeatureType: PRINTER_PROPERTY
    *DefaultOption: NoUse
    *Option: NoUse
    {
        *rcNameID: =PERIPHERAL_UNIT__NO_USE
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.11
            *Cmd: "<>"
        }
    }
    *Option: DocumentTop
    {
        *rcNameID: =PERIPHERAL_UNIT__DOC_TOP
        *switch: PeripheralUnitType
        {
            *case: CashDrawer
            {
                *Command: CmdSelect
                {
                    *Order: JOB_SETUP.11
                    *Cmd: "<1A>"
                }
            }
            *case: Buzzer
            {
                *switch: Buzzer2RepeatPrint
                {
                    *case: 1times
                    {
                        *Command: CmdSelect
                        {
                            *Order: JOB_SETUP.11
                            *Cmd: "<1B><1D><19><12>2<01><00>"
                        }
                    }
                    *case: 2times
                    {
                        *Command: CmdSelect
                        {
                            *Order: JOB_SETUP.11
                            *Cmd: "<1B><1D><19><12>2<02><00>"
                        }
                    }
                    *case: 3times
                    {
                        *Command: CmdSelect
                        {
                            *Order: JOB_SETUP.11
                            *Cmd: "<1B><1D><19><12>2<03><00>"
                        }
                    }
                    *case: 5times
                    {
                        *Command: CmdSelect
                        {
                            *Order: JOB_SETUP.11
                            *Cmd: "<1B><1D><19><12>2<05><00>"
                        }
                    }
                    *case: 10times
                    {
                        *Command: CmdSelect
                        {
                            *Order: JOB_SETUP.11
                            *Cmd: "<1B><1D><19><12>2<0A><00>"
                        }
                    }
                    *case: 15times
                    {
                        *Command: CmdSelect
                        {
                            *Order: JOB_SETUP.11
                            *Cmd: "<1B><1D><19><12>2<0F><00>"
                        }
                    }
                    *case: 20times
                    {
                        *Command: CmdSelect
                        {
                            *Order: JOB_SETUP.11
                            *Cmd: "<1B><1D><19><12>2<14><00>"
                        }
                    }
                }
            }
        }
    }
    *Option: PageTop
    {
        *rcNameID: =PERIPHERAL_UNIT__PAGE_TOP
        *switch: PeripheralUnitType
        {
            *case: CashDrawer
            {
                *Command: CmdSelect
                {
                    *Order: PAGE_SETUP.3
                    *Cmd: "<1A>"
                }
            }
            *case: Buzzer
            {
                *switch: Buzzer2RepeatPrint
                {
                    *case: 1times
                    {
                        *Command: CmdSelect
                        {
                            *Order: PAGE_SETUP.3
                            *Cmd: "<1B><1D><19><12>2<01><00>"
                        }
                    }
                    *case: 2times
                    {
                        *Command: CmdSelect
                        {
                            *Order: PAGE_SETUP.3
                            *Cmd: "<1B><1D><19><12>2<02><00>"
                        }
                    }
                    *case: 3times
                    {
                        *Command: CmdSelect
                        {
                            *Order: PAGE_SETUP.3
                            *Cmd: "<1B><1D><19><12>2<03><00>"
                        }
                    }
                    *case: 5times
                    {
                        *Command: CmdSelect
                        {
                            *Order: PAGE_SETUP.3
                            *Cmd: "<1B><1D><19><12>2<05><00>"
                        }
                    }
                    *case: 10times
                    {
                        *Command: CmdSelect
                        {
                            *Order: PAGE_SETUP.3
                            *Cmd: "<1B><1D><19><12>2<0A><00>"
                        }
                    }
                    *case: 15times
                    {
                        *Command: CmdSelect
                        {
                            *Order: PAGE_SETUP.3
                            *Cmd: "<1B><1D><19><12>2<0F><00>"
                        }
                    }
                    *case: 20times
                    {
                        *Command: CmdSelect
                        {
                            *Order: PAGE_SETUP.3
                            *Cmd: "<1B><1D><19><12>2<14><00>"
                        }
                    }
                }
            }
        }
    }
    *Option: PageBottom
    {
        *rcNameID: =PERIPHERAL_UNIT__PAGE_BOTTOM
        *switch: PeripheralUnitType
        {
            *case: CashDrawer
            {
                *Command: CmdSelect
                {
                    *Order: PAGE_FINISH.5
                    *Cmd: "<1A>"
                }
            }
            *case: Buzzer
            {
                *switch: Buzzer2RepeatPrint
                {
                    *case: 1times
                    {
                        *Command: CmdSelect
                        {
                            *Order: PAGE_FINISH.5
                            *Cmd: "<1B><1D><19><12>2<01><00>"
                        }
                    }
                    *case: 2times
                    {
                        *Command: CmdSelect
                        {
                            *Order: PAGE_FINISH.5
                            *Cmd: "<1B><1D><19><12>2<02><00>"
                        }
                    }
                    *case: 3times
                    {
                        *Command: CmdSelect
                        {
                            *Order: PAGE_FINISH.5
                            *Cmd: "<1B><1D><19><12>2<03><00>"
                        }
                    }
                    *case: 5times
                    {
                        *Command: CmdSelect
                        {
                            *Order: PAGE_FINISH.5
                            *Cmd: "<1B><1D><19><12>2<05><00>"
                        }
                    }
                    *case: 10times
                    {
                        *Command: CmdSelect
                        {
                            *Order: PAGE_FINISH.5
                            *Cmd: "<1B><1D><19><12>2<0A><00>"
                        }
                    }
                    *case: 15times
                    {
                        *Command: CmdSelect
                        {
                            *Order: PAGE_FINISH.5
                            *Cmd: "<1B><1D><19><12>2<0F><00>"
                        }
                    }
                    *case: 20times
                    {
                        *Command: CmdSelect
                        {
                            *Order: PAGE_FINISH.5
                            *Cmd: "<1B><1D><19><12>2<14><00>"
                        }
                    }
                }
            }
        }
    }
    *Option: DocumentBottom
    {
        *rcNameID: =PERIPHERAL_UNIT__DOC_BOTTOM
        *switch: PeripheralUnitType
        {
            *case: CashDrawer
            {
                *Command: CmdSelect
                {
                    *Order: JOB_FINISH.3
                    *Cmd: "<1A>"
                }
            }
            *case: Buzzer
            {
                *switch: Buzzer2RepeatPrint
                {
                    *case: 1times
                    {
                        *Command: CmdSelect
                        {
                            *Order: JOB_FINISH.3
                            *Cmd: "<1B><1D><19><12>2<01><00>"
                        }
                    }
                    *case: 2times
                    {
                        *Command: CmdSelect
                        {
                            *Order: JOB_FINISH.3
                            *Cmd: "<1B><1D><19><12>2<02><00>"
                        }
                    }
                    *case: 3times
                    {
                        *Command: CmdSelect
                        {
                            *Order: JOB_FINISH.3
                            *Cmd: "<1B><1D><19><12>2<03><00>"
                        }
                    }
                    *case: 5times
                    {
                        *Command: CmdSelect
                        {
                            *Order: JOB_FINISH.3
                            *Cmd: "<1B><1D><19><12>2<05><00>"
                        }
                    }
                    *case: 10times
                    {
                        *Command: CmdSelect
                        {
                            *Order: JOB_FINISH.3
                            *Cmd: "<1B><1D><19><12>2<0A><00>"
                        }
                    }
                    *case: 15times
                    {
                        *Command: CmdSelect
                        {
                            *Order: JOB_FINISH.3
                            *Cmd: "<1B><1D><19><12>2<0F><00>"
                        }
                    }
                    *case: 20times
                    {
                        *Command: CmdSelect
                        {
                            *Order: JOB_FINISH.3
                            *Cmd: "<1B><1D><19><12>2<14><00>"
                        }
                    }
                }
            }
        }
    }
}

*Feature: BidirectionalPrinting
{
    *rcNameID: =BIDIRECTIONAL_PRINTING
    *FeatureType: PRINTER_PROPERTY
    *DefaultOption: Bidirectional
    *Option: Bidirectional
    {
        *rcNameID: =BIDIRECTIONAL_PRINTING__BIDIRECTIONAL
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.12
            *Cmd: "<1B>U0"
        }
    }
    *Option: Unidirectional
    {
        *rcNameID: =BIDIRECTIONAL_PRINTING__UNIDIRECTIONAL
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.12
            *Cmd: "<1B>U1"
        }
    }
}

*Feature: VerticalMount
{
    *rcNameID: =VERTICAL_MOUNT
    *FeatureType: PRINTER_PROPERTY
    *DefaultOption: Disable
    *Option: Disable
    {
        *rcNameID: =VERTICAL_MOUNT__DISABLE
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.13
            *CallbackID: 5
        }
    }
    *Option: Enable
    {
        *rcNameID: =VERTICAL_MOUNT__ENABLE
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.13
            *CallbackID: 6
        }
    }
}

*Feature: PageFeedType
{
    *rcNameID: =PAGE_FEED_TYPE
    *FeatureType: PRINTER_PROPERTY
    *DefaultOption: NoFeed
    *Option: NoFeed
    {
        *rcNameID: =FEED_TYPE__NO_FEED
        *switch: PaperType
        {
            *case: BlackMark
            {
                *Command: CmdSelect
                {
                    *Order: PAGE_SETUP.1
                    *Cmd: "<0C><00>"
                }
            }
            *default
            {
                *Command: CmdSelect
                {
                    *Order: PAGE_SETUP.1
                    *Cmd: "<0A><00>"
                }
            }
        }
    }
}

*Feature: DocFeedType
{
    *rcNameID: =DOCUMENT_FEED_TYPE
    *FeatureType: PRINTER_PROPERTY
    *DefaultOption: TearBar
    *Option: NoFeed
    {
        *rcNameID: =FEED_TYPE__NO_FEED
        *switch: PaperType
        {
            *case: BlackMark
            {
                *Command: CmdSelect
                {
                    *Order: JOB_FINISH.1
                    *Cmd: "<0C><12>"
                }
            }
            *default
            {
                *Command: CmdSelect
                {
                    *Order: JOB_FINISH.1
                    *Cmd: "<0A><12>"
                }
            }
        }
    }
    *Option: TearBar
    {
        *rcNameID: =FEED_TYPE__TEAR_BAR
        *Command: CmdSelect
        {
            *Order: JOB_FINISH.1
            *Cmd: "<0A><1B>dt<12>"
        }
    }
}

*Feature: PageTopLogo
{
    *rcNameID: =PAGE_TOP_LOGO
    *FeatureType: PRINTER_PROPERTY
    *DefaultOption: NoLogoPrinted
    *Option: NoLogoPrinted
    {
        *rcNameID: =LOGO__NO_LOGO_PRINTED
        *Command: CmdSelect
        {
            *Order: PAGE_SETUP.4
            *Cmd: "<>"
        }
    }
    *Option: PrintLogo1
    {
        *rcNameID: =LOGO__PRINT_LOGO_1
        *switch: VerticalMount
        {
            *case: Disable
            {
                *Command: CmdSelect
                {
                    *Order: PAGE_SETUP.4
                    *Cmd: "<1B><1C>p<01>0"
                }
            }
            *case: Enable
            {
                *Command: CmdSelect
                {
                    *Order: PAGE_FINISH.2
                    *Cmd: "<1B><1C>p<01>0"
                }
            }
        }
    }
    *Option: PrintLogo2
    {
        *rcNameID: =LOGO__PRINT_LOGO_2
        *switch: VerticalMount
        {
            *case: Disable
            {
                *Command: CmdSelect
                {
                    *Order: PAGE_SETUP.4
                    *Cmd: "<1B><1C>p<02>0"
                }
            }
            *case: Enable
            {
                *Command: CmdSelect
                {
                    *Order: PAGE_FINISH.2
                    *Cmd: "<1B><1C>p<02>0"
                }
            }
        }
    }
    *Option: PrintLogo3
    {
        *rcNameID: =LOGO__PRINT_LOGO_3
        *switch: VerticalMount
        {
            *case: Disable
            {
                *Command: CmdSelect
                {
                    *Order: PAGE_SETUP.4
                    *Cmd: "<1B><1C>p<03>0"
                }
            }
            *case: Enable
            {
                *Command: CmdSelect
                {
                    *Order: PAGE_FINISH.2
                    *Cmd: "<1B><1C>p<03>0"
                }
            }
        }
    }
    *Option: PrintLogo4
    {
        *rcNameID: =LOGO__PRINT_LOGO_4
        *switch: VerticalMount
        {
            *case: Disable
            {
                *Command: CmdSelect
                {
                    *Order: PAGE_SETUP.4
                    *Cmd: "<1B><1C>p<04>0"
                }
            }
            *case: Enable
            {
                *Command: CmdSelect
                {
                    *Order: PAGE_FINISH.2
                    *Cmd: "<1B><1C>p<04>0"
                }
            }
        }
    }
    *Option: PrintLogo5
    {
        *rcNameID: =LOGO__PRINT_LOGO_5
        *switch: VerticalMount
        {
            *case: Disable
            {
                *Command: CmdSelect
                {
                    *Order: PAGE_SETUP.4
                    *Cmd: "<1B><1C>p<05>0"
                }
            }
            *case: Enable
            {
                *Command: CmdSelect
                {
                    *Order: PAGE_FINISH.2
                    *Cmd: "<1B><1C>p<05>0"
                }
            }
        }
    }
    *Option: PrintLogo6
    {
        *rcNameID: =LOGO__PRINT_LOGO_6
        *switch: VerticalMount
        {
            *case: Disable
            {
                *Command: CmdSelect
                {
                    *Order: PAGE_SETUP.4
                    *Cmd: "<1B><1C>p<06>0"
                }
            }
            *case: Enable
            {
                *Command: CmdSelect
                {
                    *Order: PAGE_FINISH.2
                    *Cmd: "<1B><1C>p<06>0"
                }
            }
        }
    }
    *Option: PrintLogo7
    {
        *rcNameID: =LOGO__PRINT_LOGO_7
        *switch: VerticalMount
        {
            *case: Disable
            {
                *Command: CmdSelect
                {
                    *Order: PAGE_SETUP.4
                    *Cmd: "<1B><1C>p<07>0"
                }
            }
            *case: Enable
            {
                *Command: CmdSelect
                {
                    *Order: PAGE_FINISH.2
                    *Cmd: "<1B><1C>p<07>0"
                }
            }
        }
    }
    *Option: PrintLogo8
    {
        *rcNameID: =LOGO__PRINT_LOGO_8
        *switch: VerticalMount
        {
            *case: Disable
            {
                *Command: CmdSelect
                {
                    *Order: PAGE_SETUP.4
                    *Cmd: "<1B><1C>p<08>0"
                }
            }
            *case: Enable
            {
                *Command: CmdSelect
                {
                    *Order: PAGE_FINISH.2
                    *Cmd: "<1B><1C>p<08>0"
                }
            }
        }
    }
    *Option: PrintLogo9
    {
        *rcNameID: =LOGO__PRINT_LOGO_9
        *switch: VerticalMount
        {
            *case: Disable
            {
                *Command: CmdSelect
                {
                    *Order: PAGE_SETUP.4
                    *Cmd: "<1B><1C>p<09>0"
                }
            }
            *case: Enable
            {
                *Command: CmdSelect
                {
                    *Order: PAGE_FINISH.2
                    *Cmd: "<1B><1C>p<09>0"
                }
            }
        }
    }
    *Option: PrintLogo10
    {
        *rcNameID: =LOGO__PRINT_LOGO_10
        *switch: VerticalMount
        {
            *case: Disable
            {
                *Command: CmdSelect
                {
                    *Order: PAGE_SETUP.4
                    *Cmd: "<1B><1C>p<0A>0"
                }
            }
            *case: Enable
            {
                *Command: CmdSelect
                {
                    *Order: PAGE_FINISH.2
                    *Cmd: "<1B><1C>p<0A>0"
                }
            }
        }
    }
}

*Feature: PageBottomLogo
{
    *rcNameID: =PAGE_BOTTOM_LOGO
    *FeatureType: PRINTER_PROPERTY
    *DefaultOption: NoLogoPrinted
    *Option: NoLogoPrinted
    {
        *rcNameID: =LOGO__NO_LOGO_PRINTED
        *Command: CmdSelect
        {
            *Order: PAGE_FINISH.3
            *Cmd: "<>"
        }
    }
    *Option: PrintLogo1
    {
        *rcNameID: =LOGO__PRINT_LOGO_1
        *switch: VerticalMount
        {
            *case: Disable
            {
                *Command: CmdSelect
                {
                    *Order: PAGE_FINISH.3
                    *Cmd: "<1B><1C>p<01>0"
                }
            }
            *case: Enable
            {
                *Command: CmdSelect
                {
                    *Order: PAGE_SETUP.5
                    *Cmd: "<1B><1C>p<01>0"
                }
            }
        }
    }
    *Option: PrintLogo2
    {
        *rcNameID: =LOGO__PRINT_LOGO_2
        *switch: VerticalMount
        {
            *case: Disable
            {
                *Command: CmdSelect
                {
                    *Order: PAGE_FINISH.3
                    *Cmd: "<1B><1C>p<02>0"
                }
            }
            *case: Enable
            {
                *Command: CmdSelect
                {
                    *Order: PAGE_SETUP.5
                    *Cmd: "<1B><1C>p<02>0"
                }
            }
        }
    }
    *Option: PrintLogo3
    {
        *rcNameID: =LOGO__PRINT_LOGO_3
        *switch: VerticalMount
        {
            *case: Disable
            {
                *Command: CmdSelect
                {
                    *Order: PAGE_FINISH.3
                    *Cmd: "<1B><1C>p<03>0"
                }
            }
            *case: Enable
            {
                *Command: CmdSelect
                {
                    *Order: PAGE_SETUP.5
                    *Cmd: "<1B><1C>p<03>0"
                }
            }
        }
    }
    *Option: PrintLogo4
    {
        *rcNameID: =LOGO__PRINT_LOGO_4
        *switch: VerticalMount
        {
            *case: Disable
            {
                *Command: CmdSelect
                {
                    *Order: PAGE_FINISH.3
                    *Cmd: "<1B><1C>p<04>0"
                }
            }
            *case: Enable
            {
                *Command: CmdSelect
                {
                    *Order: PAGE_SETUP.5
                    *Cmd: "<1B><1C>p<04>0"
                }
            }
        }
    }
    *Option: PrintLogo5
    {
        *rcNameID: =LOGO__PRINT_LOGO_5
        *switch: VerticalMount
        {
            *case: Disable
            {
                *Command: CmdSelect
                {
                    *Order: PAGE_FINISH.3
                    *Cmd: "<1B><1C>p<05>0"
                }
            }
            *case: Enable
            {
                *Command: CmdSelect
                {
                    *Order: PAGE_SETUP.5
                    *Cmd: "<1B><1C>p<05>0"
                }
            }
        }
    }
    *Option: PrintLogo6
    {
        *rcNameID: =LOGO__PRINT_LOGO_6
        *switch: VerticalMount
        {
            *case: Disable
            {
                *Command: CmdSelect
                {
                    *Order: PAGE_FINISH.3
                    *Cmd: "<1B><1C>p<06>0"
                }
            }
            *case: Enable
            {
                *Command: CmdSelect
                {
                    *Order: PAGE_SETUP.5
                    *Cmd: "<1B><1C>p<06>0"
                }
            }
        }
    }
    *Option: PrintLogo7
    {
        *rcNameID: =LOGO__PRINT_LOGO_7
        *switch: VerticalMount
        {
            *case: Disable
            {
                *Command: CmdSelect
                {
                    *Order: PAGE_FINISH.3
                    *Cmd: "<1B><1C>p<07>0"
                }
            }
            *case: Enable
            {
                *Command: CmdSelect
                {
                    *Order: PAGE_SETUP.5
                    *Cmd: "<1B><1C>p<07>0"
                }
            }
        }
    }
    *Option: PrintLogo8
    {
        *rcNameID: =LOGO__PRINT_LOGO_8
        *switch: VerticalMount
        {
            *case: Disable
            {
                *Command: CmdSelect
                {
                    *Order: PAGE_FINISH.3
                    *Cmd: "<1B><1C>p<08>0"
                }
            }
            *case: Enable
            {
                *Command: CmdSelect
                {
                    *Order: PAGE_SETUP.5
                    *Cmd: "<1B><1C>p<08>0"
                }
            }
        }
    }
    *Option: PrintLogo9
    {
        *rcNameID: =LOGO__PRINT_LOGO_9
        *switch: VerticalMount
        {
            *case: Disable
            {
                *Command: CmdSelect
                {
                    *Order: PAGE_FINISH.3
                    *Cmd: "<1B><1C>p<09>0"
                }
            }
            *case: Enable
            {
                *Command: CmdSelect
                {
                    *Order: PAGE_SETUP.5
                    *Cmd: "<1B><1C>p<09>0"
                }
            }
        }
    }
    *Option: PrintLogo10
    {
        *rcNameID: =LOGO__PRINT_LOGO_10
        *switch: VerticalMount
        {
            *case: Disable
            {
                *Command: CmdSelect
                {
                    *Order: PAGE_FINISH.3
                    *Cmd: "<1B><1C>p<0A>0"
                }
            }
            *case: Enable
            {
                *Command: CmdSelect
                {
                    *Order: PAGE_SETUP.5
                    *Cmd: "<1B><1C>p<0A>0"
                }
            }
        }
    }
}

*Feature: PaperSize
{
    *rcNameID: =PAPER_SIZE_DISPLAY
    *Option: 63mmX200mm
    {
        *rcNameID: =63MM_X_200MM
        *PageDimensions: PAIR(420, 1134)
        *PrintableArea: PAIR(420, 1134)
        *PrintableOrigin: PAIR(0, 0)
        *CursorOrigin: PAIR(0, 0)
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.2
            *Cmd: "<1B><1E>A<00>"
        }
    }
    *Option: 63mmXReceipt
    {
        *rcNameID: =63MM_X_RECEIPT
        *PageDimensions: PAIR(420, 17008)
        *PrintableArea: PAIR(420, 17008)
        *PrintableOrigin: PAIR(0, 0)
        *CursorOrigin: PAIR(0, 0)
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.2
            *Cmd: "<1B><1E>A<00>"
        }
    }
    *Option: 48mmX200mm
    {
        *rcNameID: =48MM_X_200MM
        *PageDimensions: PAIR(320, 1134)
        *PrintableArea: PAIR(320, 1134)
        *PrintableOrigin: PAIR(0, 0)
        *CursorOrigin: PAIR(0, 0)
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.2
            *Cmd: "<1B><1E>A<01>"
        }
    }
    *Option: 48mmXReceipt
    {
        *rcNameID: =48MM_X_RECEIPT
        *PageDimensions: PAIR(320, 17008)
        *PrintableArea: PAIR(320, 17008)
        *PrintableOrigin: PAIR(0, 0)
        *CursorOrigin: PAIR(0, 0)
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.2
            *Cmd: "<1B><1E>A<01>"
        }
    }
    *Option: 60mmX200mm
    {
        *rcNameID: =60MM_X_200MM
        *PageDimensions: PAIR(400, 1134)
        *PrintableArea: PAIR(400, 1134)
        *PrintableOrigin: PAIR(0, 0)
        *CursorOrigin: PAIR(0, 0)
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.2
            *Cmd: "<1B><1E>A<02>"
        }
    }
    *Option: 60mmXReceipt
    {
        *rcNameID: =60MM_X_RECEIPT
        *PageDimensions: PAIR(400, 17008)
        *PrintableArea: PAIR(400, 17008)
        *PrintableOrigin: PAIR(0, 0)
        *CursorOrigin: PAIR(0, 0)
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.2
            *Cmd: "<1B><1E>A<02>"
        }
    }
    *Option: 45mmX200mm
    {
        *rcNameID: =45MM_X_200MM
        *PageDimensions: PAIR(300, 1134)
        *PrintableArea: PAIR(300, 1134)
        *PrintableOrigin: PAIR(0, 0)
        *CursorOrigin: PAIR(0, 0)
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.2
            *Cmd: "<1B><1E>A<03>"
        }
    }
    *Option: 45mmXReceipt
    {
        *rcNameID: =45MM_X_RECEIPT
        *PageDimensions: PAIR(300, 17008)
        *PrintableArea: PAIR(300, 17008)
        *PrintableOrigin: PAIR(0, 0)
        *CursorOrigin: PAIR(0, 0)
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.2
            *Cmd: "<1B><1E>A<03>"
        }
    }
    *Option: A4
    {
        *rcNameID: =RCID_DMPAPER_SYSTEM_NAME
        *PrintableArea: PAIR(420, 1684)
        *PrintableOrigin: PAIR(0, 0)
        *CursorOrigin: PAIR(0, 0)
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.2
            *Cmd: "<1B><1E>A<00>"
        }
    }
    *Option: LETTER
    {
        *rcNameID: =RCID_DMPAPER_SYSTEM_NAME
        *PrintableArea: PAIR(420, 1584)
        *PrintableOrigin: PAIR(0, 0)
        *CursorOrigin: PAIR(0, 0)
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.2
            *Cmd: "<1B><1E>A<00>"
        }
    }
    *Option: CUSTOMSIZE
    {
        *rcNameID: =USER_DEFINED_SIZE_DISPLAY
        *MinSize: PAIR(170, 144)
        *MaxSize: PAIR(420, 32767)
        *MaxPrintableWidth: 420
        *MinLeftMargin: 0
        *CenterPrintable?: FALSE
        *Command: CmdSelect
        {
            *Order: JOB_SETUP.2
            *CallbackID: 2
            *Params: LIST(PhysPaperWidth)
        }
    }
    *DefaultOption: LETTER
}
*Feature: Halftone
{
    *rcNameID: =HALFTONING_DISPLAY
    *DefaultOption: HT_PATSIZE_AUTO
    *Option: HT_PATSIZE_AUTO
    {
        *rcNameID: =HT_AUTO_SELECT_DISPLAY
    }
    *Option: HT_PATSIZE_SUPERCELL_M
    {
        *rcNameID: =HT_SUPERCELL_DISPLAY
    }
    *Option: HT_PATSIZE_6x6_M
    {
        *rcNameID: =HT_DITHER6X6_DISPLAY
    }
    *Option: HT_PATSIZE_8x8_M
    {
        *rcNameID: =HT_DITHER8X8_DISPLAY
    }
}

*Command: CmdStartJob
{
    *Order: JOB_SETUP.1
    *CallbackID: 1
}

*Command: CmdStartDoc
{
    *Order: DOC_SETUP.1
    *Cmd: "<>"
}

*Command: CmdStartPage
{
    *Order: PAGE_SETUP.6
    *Cmd: "<>"
}

*Command: CmdEndPage
{
    *Order: PAGE_FINISH.1
    *CallbackID: 7
}

*Command: CmdEndDoc
{
    *Order: DOC_FINISH.1
    *Cmd: "<>"
}

*Command: CmdEndJob
{
    *Order: JOB_FINISH.4
    *Cmd: "<>"
}

*RotateCoordinate?: FALSE
*RotateRaster?: FALSE
*RotateFont?: FALSE
*switch: Orientation
{
    *case: PORTRAIT
    {
        *TextCaps: LIST(TC_OP_CHARACTER,TC_UA_ABLE,TC_RA_ABLE)
    }
    *case: LANDSCAPE_CC270
    {
        *TextCaps: LIST(TC_RA_ABLE)
    }
}
*BadCursorMoveInGrxMode: LIST(X_PORTRAIT, Y_PORTRAIT, X_LANDSCAPE, Y_LANDSCAPE)

*YMoveAttributes: LIST(SEND_CR_FIRST)

*switch: Resolution
{
    *case: XHighYHigh
    {
        *YMoveThreshold: *
        *YMoveUnit: 144
        *Command: CmdYMoveRelDown
        {
            *CallbackID: 8
            *Params: LIST(DestYRel)
        }
    }
    *default
    {
        *YMoveThreshold: *
        *YMoveUnit: 72
        *Command: CmdYMoveRelDown
        {
            *CallbackID: 8
            *Params: LIST(DestYRel)
        }
    }
}

*XMoveThreshold: *
*XMoveUnit: 170
*Command: CmdXMoveRelRight { *Cmd : "<>" }
*Command: CmdCR { *Cmd : "<>" }
*Command: CmdLF { *Cmd : "<>" }
*Command: CmdFF { *Cmd : "<>" }
*Switch: PaperType
{
    *case: Ticket
    {
        *EjectPageWithFF?: FALSE
    }
    *default
    {
        *EjectPageWithFF?: TRUE
    }
}
*OutputDataFormat: V_BYTE
*CursorXAfterSendBlockData: AT_GRXDATA_END
*CursorYAfterSendBlockData: NO_MOVE
*switch: VerticalMount
{
    *case: Disable
    {
        *DefaultFont: 101
        *switch: Orientation
        {
            *case: PORTRAIT
            {
                *switch: Locale
                {
                    *case: Japanese
                    {
                        *DeviceFonts: LIST(101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,341,361)
                    }
                    *case: Chinese_PRC
                    {
                        *DeviceFonts: LIST(101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,341,361)
                    }
                    *case: Chinese_Taiwan_Region
                    {
                        *DeviceFonts: LIST(101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,341,361)
                    }
                    *case: Korean
                    {
                        *DeviceFonts: LIST(101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,341,361)
                    }
                    *default
                    {
                        *DeviceFonts: LIST(101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,341,361)
                    }
                }
            }
            *case: LANDSCAPE_CC270
            {
                *DeviceFonts: LIST()
            }
        }
        *Command: CmdBoldOn { *Cmd : "<1B>E" }
        *Command: CmdBoldOff { *Cmd : "<1B>F" }
        *Command: CmdUnderlineOn { *Cmd : "<1B>-1" }
        *Command: CmdUnderlineOff { *Cmd : "<1B>-0" }
    }
}
