*GPDSpecVersion: "1.0"
*GPDFileVersion: "2.0"
*GPDFileName: "WP300v11.GPD"

*ModelName: "WP-300 Ver.1.1"
*ResourceDLL: "WinPOS9.dll"
*Include: "StdNames.gpd"

*PrinterType: SERIAL
*MasterUnits: PAIR(158,288 )

*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: PaperRoll
	*Option: PaperRoll {
		*Name: "Paper Roll"
		}
	}

*Feature: Resolution {
	*rcNameID: =RESOLUTION_DISPLAY
	*DefaultOption: RES_WP300_144dpi
	*Option: RES_WP300_144dpi {
		*Name: "144 " =DOTS_PER_INCH
		*DPI: PAIR(158, 144)
		*TextDPI: PAIR(158,144)
		*PinsPerLogPass: 16
		*PinsPerPhysPass: 8
		*%MinStripBlankPixels: 0
		*%EXTERN_GLOBAL: *StripBlanks: LIST(LEADING,ENCLOSED,TRAILING)
		*SpotDiameter: 100
		*Command: CmdSendBlockData { *Cmd : "<1B>*<01>" %l{NumOfDataBytes}}
		}
	}

*Feature: PaperSize {
	*rcNameID: =PAPER_SIZE_DISPLAY
	*DefaultOption: WP300_76mm_Roll
	*Option: WP300_58mm_Roll {
		*Name: "WP300 58mm Roll Paper"
		*PageDimensions: PAIR(362, 3402)
		*PrintableArea: PAIR(325, 3210)
		*PrintableOrigin: PAIR(37, 192)
		*Command: CmdSelect {}
		}
	*Option: WP300_76mm_Roll {
		*Name: "WP300 76mm Roll Paper"
		*PageDimensions: PAIR(474, 3402)
		*PrintableArea: PAIR(400, 3210)
		*PrintableOrigin: PAIR(37, 192)
		*Command: CmdSelect {}
		}
	}

*Feature: DotDensity {
	*Name: "Printing Density"
	*FeatureType: PRINTER_PROPERTY
	*DefaultOption: Print_Density_Single
	*Option: Print_Density_Single {
		*Name: "Normal"
		*Command: CmdSelect {
			*Order: DOC_SETUP.2
			*Cmd: "<1F4401>"
			}
		}
	*Option: Print_Density_Double {
		*Name: "Double"
		*Command: CmdSelect {
			*Order: DOC_SETUP.2
			*Cmd: "<1F4400>"
			}
		}
	}

*Feature: OpenCashDrawer {
	*Name: "Open Drawer"
	*FeatureType: PRINTER_PROPERTY
	*DefaultOption: Open_CD_Never
	*Option: Open_CD_Never {
		*Name: "Never"
		*Command: CmdSelect {}
		}
	*Option: Open_CD_Before {
		*Name: "Before Print"
		*Command: CmdSelect {
			*Order: JOB_SETUP.1
			*Cmd: "<1B70><00FF02><1B70><00FF02>"
			}
		}
	*Option: Open_CD_After {
		*Name: "After Print"
		*Command: CmdSelect {
			*Order: JOB_FINISH.2
			*Cmd: "<1B70><00FF02><1B70><00FF02>"
			}
		}
	}

*Feature: PaperAutoCut {
	*Name: "Paper Cut"
	*FeatureType: PRINTER_PROPERTY
	*DefaultOption: Paper_Cut_Job
	*Option: Paper_Cut_Never {
		*Name: "Disable"
		*Command: CmdSelect {}
		}
	*Option: Paper_Cut_Page {
		*Name: "End of Each PAGE"
		*Command: CmdSelect {
			*Order: PAGE_FINISH.2
			*Cmd: "<1D564200>"
			}
		}
	*Option: Paper_Cut_Job {
		*Name: "End of Each JOB"
		*Command: CmdSelect {
			*Order: JOB_FINISH.3
			*Cmd: "<1D564200>"
			}
		}
	}

*Command: CmdStartDoc {
	*Order: DOC_SETUP.1
	*Cmd: "<1B>@<1B>U<001B>4<1B32>"
	}

*Command: CmdStartPage {
	*Order: PAGE_SETUP.1
	*Cmd: "<0D>"
	}

*Command: CmdEndPage {
	*Order: PAGE_FINISH.1
	*Cmd: "<>"
	}

*Command: CmdEndJob {
	*Order: JOB_FINISH.1
	*Cmd: ""
	}

*RotateCoordinate?: FALSE
*RotateRaster?: FALSE
*RotateFont?: FALSE
*CursorXAfterCR: AT_CURSOR_X_ORIGIN
*YMoveAttributes: LIST(SEND_CR_FIRST)
*MaxLineSpacing: 255
*XMoveThreshold: 0
*YMoveThreshold: *
*XMoveUnit: 79
*YMoveUnit: 144
*Command: CmdXMoveAbsolute { *Cmd : "<1B>$" %l{(DestX / 6) } }
*Command: CmdYMoveRelDown { *Cmd : "<1B>J" %c[0,255]{max_repeat((DestYRel / 2 ) )} }
*Command: CmdSetLineSpacing { *Cmd : "<1B>3" %c[0,255]{(LinefeedSpacing / 2 ) } }
*Command: CmdCR { *Cmd : "<0D>" }
*Command: CmdLF { *Cmd : "<0A>" }
*Command: CmdFF { *Cmd : "<0C>" }
*%Command: CmdBackSpace { *Cmd : "<08>" }
*%Command: CmdUniDirectionOn { *Cmd : "<1B>U<01>" }
*%Command: CmdUniDirectionOff { *Cmd : "<1B>U<00>" }
*EjectPageWithFF?: TRUE
*OutputDataFormat: V_BYTE
*OptimizeLeftBound?: FALSE
*CursorXAfterSendBlockData: AT_GRXDATA_END
*CursorYAfterSendBlockData: NO_MOVE
*Command: CmdBoldOn { *Cmd : "<1B>E" }
*Command: CmdBoldOff { *Cmd : "<1B>F" }
*Command: CmdItalicOn { *Cmd : "<1B>4" }
*Command: CmdItalicOff { *Cmd : "<1B>5" }
*Command: CmdUnderlineOn { *Cmd : "<1B>-<01>" }
*Command: CmdUnderlineOff { *Cmd : "<1B>-<00>" }