Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

310 lines
7.8 KiB

  1. *%
  2. *% Copyright (c) 1997 - 1999 Microsoft Corporation
  3. *% All Rights Reserved.
  4. *%
  5. *GPDSpecVersion: "1.0"
  6. *Include: "StdNames.gpd"
  7. *GPDFileVersion: "1.0"
  8. *GPDFileName: "ibpp5183.gpd"
  9. *ModelName: "IBM Portable Printer 5183"
  10. *MasterUnits: PAIR(360, 360)
  11. *ResourceDLL: "ct24res.dll"
  12. *PrinterType: SERIAL
  13. *Feature: Orientation
  14. {
  15. *rcNameID: =ORIENTATION_DISPLAY
  16. *DefaultOption: PORTRAIT
  17. *Option: PORTRAIT
  18. {
  19. *rcNameID: =PORTRAIT_DISPLAY
  20. }
  21. *Option: LANDSCAPE_CC270
  22. {
  23. *rcNameID: =LANDSCAPE_DISPLAY
  24. }
  25. }
  26. *Feature: InputBin
  27. {
  28. *rcNameID: =PAPER_SOURCE_DISPLAY
  29. *DefaultOption: AUTO
  30. *Option: TRACTOR
  31. {
  32. *rcNameID: =TRACTOR_DISPLAY
  33. *Command: CmdSelect
  34. {
  35. *Order: DOC_SETUP.7
  36. *Cmd: "<1B1900>"
  37. }
  38. }
  39. *Option: AUTO
  40. {
  41. *rcNameID: =AUTO_DISPLAY
  42. *Command: CmdSelect
  43. {
  44. *Order: DOC_SETUP.7
  45. *Cmd: "<1B1904>"
  46. }
  47. }
  48. *Option: MANUAL
  49. {
  50. *rcNameID: =MANUAL_FEED_DISPLAY
  51. *Command: CmdSelect
  52. {
  53. *Order: DOC_SETUP.7
  54. *Cmd: "<1B1900>"
  55. }
  56. }
  57. }
  58. *Feature: Resolution
  59. {
  60. *rcNameID: =RESOLUTION_DISPLAY
  61. *DefaultOption: Option3
  62. *Option: Option1
  63. {
  64. *Name: "360 x 360 " =DOTS_PER_INCH
  65. *DPI: PAIR(360, 360)
  66. *TextDPI: PAIR(360, 360)
  67. *PinsPerLogPass: 48
  68. *PinsPerPhysPass: 24
  69. *MinStripBlankPixels: 270
  70. EXTERN_GLOBAL: *StripBlanks: LIST(LEADING,TRAILING)
  71. *SpotDiameter: 283
  72. *Command: CmdSendBlockData { *Cmd : "<1B>*(" %l{NumOfDataBytes / 3} }
  73. }
  74. *Option: Option2
  75. {
  76. *Name: "360 x 180 " =DOTS_PER_INCH
  77. *DPI: PAIR(360, 180)
  78. *TextDPI: PAIR(360, 180)
  79. *PinsPerLogPass: 24
  80. *PinsPerPhysPass: 24
  81. *MinStripBlankPixels: 270
  82. EXTERN_GLOBAL: *StripBlanks: LIST(LEADING,TRAILING)
  83. *SpotDiameter: 200
  84. *Command: CmdSendBlockData { *Cmd : "<1B>*(" %l{NumOfDataBytes / 3} }
  85. }
  86. *Option: Option3
  87. {
  88. *Name: "180 x 180 " =DOTS_PER_INCH
  89. *DPI: PAIR(180, 180)
  90. *TextDPI: PAIR(180, 180)
  91. *PinsPerLogPass: 24
  92. *PinsPerPhysPass: 24
  93. *MinStripBlankPixels: 135
  94. EXTERN_GLOBAL: *StripBlanks: LIST(LEADING,TRAILING)
  95. *SpotDiameter: 140
  96. *Command: CmdSendBlockData { *Cmd : "<1B>*'" %l{NumOfDataBytes / 3} }
  97. }
  98. *Option: Option4
  99. {
  100. *Name: "120 x 180 " =DOTS_PER_INCH
  101. *DPI: PAIR(120, 180)
  102. *TextDPI: PAIR(120, 180)
  103. *PinsPerLogPass: 24
  104. *PinsPerPhysPass: 24
  105. *MinStripBlankPixels: 90
  106. EXTERN_GLOBAL: *StripBlanks: LIST(LEADING,TRAILING)
  107. *SpotDiameter: 115
  108. *Command: CmdSendBlockData { *Cmd : "<1B>*!" %l{NumOfDataBytes / 3} }
  109. }
  110. }
  111. *Feature: PaperSize
  112. {
  113. *rcNameID: =PAPER_SIZE_DISPLAY
  114. *DefaultOption: LETTER
  115. *Option: LETTER
  116. {
  117. *rcNameID: =RCID_DMPAPER_SYSTEM_NAME
  118. *Command: CmdSelect
  119. {
  120. *Order: DOC_SETUP.8
  121. *Cmd: "<1B>C<000B>"
  122. }
  123. *switch: InputBin
  124. {
  125. *case: TRACTOR
  126. {
  127. *PrintableArea: PAIR(2880, 3960)
  128. *PrintableOrigin: PAIR(90, 0)
  129. }
  130. *case: AUTO
  131. {
  132. *PrintableArea: PAIR(2880, 3600)
  133. *PrintableOrigin: PAIR(90, 360)
  134. }
  135. *case: MANUAL
  136. {
  137. *PrintableArea: PAIR(2880, 3578)
  138. *PrintableOrigin: PAIR(90, 292)
  139. }
  140. }
  141. }
  142. *Option: A4
  143. {
  144. *rcNameID: =RCID_DMPAPER_SYSTEM_NAME
  145. *Command: CmdSelect
  146. {
  147. *Order: DOC_SETUP.8
  148. *Cmd: "<1B>2<1B>CF"
  149. }
  150. *switch: InputBin
  151. {
  152. *case: TRACTOR
  153. {
  154. *PrintableArea: PAIR(2880, 4208)
  155. *PrintableOrigin: PAIR(90, 0)
  156. }
  157. *case: AUTO
  158. {
  159. *PrintableArea: PAIR(2880, 3848)
  160. *PrintableOrigin: PAIR(90, 360)
  161. }
  162. *case: MANUAL
  163. {
  164. *PrintableArea: PAIR(2880, 3826)
  165. *PrintableOrigin: PAIR(90, 292)
  166. }
  167. }
  168. }
  169. *Option: CUSTOMSIZE
  170. {
  171. *rcNameID: =USER_DEFINED_SIZE_DISPLAY
  172. *MinSize: PAIR(360, 180)
  173. *MaxSize: PAIR(3060, 15120)
  174. *MaxPrintableWidth: 2880
  175. *MinLeftMargin: 90
  176. *CenterPrintable?: FALSE
  177. *switch: InputBin
  178. {
  179. *case: TRACTOR
  180. {
  181. *TopMargin: 0
  182. *BottomMargin: 0
  183. }
  184. *case: AUTO
  185. {
  186. *TopMargin: 360
  187. *BottomMargin: 0
  188. }
  189. *case: MANUAL
  190. {
  191. *TopMargin: 292
  192. *BottomMargin: 90
  193. }
  194. }
  195. *Command: CmdSelect
  196. {
  197. *Order: DOC_SETUP.8
  198. *Cmd: "<1B>2<1B>C" %c{(PhysPaperLength / 60) }
  199. }
  200. }
  201. }
  202. *Feature: PrintQuality
  203. {
  204. *rcNameID: =TEXT_QUALITY_DISPLAY
  205. *DefaultOption: LETTER_QUALITY
  206. *Option: LETTER_QUALITY
  207. {
  208. *rcNameID: =LETTER_QUALITY_DISPLAY
  209. *Command: CmdSelect
  210. {
  211. *Order: DOC_SETUP.6
  212. *Cmd: "<1B>x<01>"
  213. }
  214. }
  215. *Option: DRAFT_QUALITY
  216. {
  217. *rcNameID: =DRAFT_QUALITY_DISPLAY
  218. *Command: CmdSelect
  219. {
  220. *Order: DOC_SETUP.6
  221. *Cmd: "<1B>x<00>"
  222. }
  223. }
  224. }
  225. *Feature: Halftone
  226. {
  227. *rcNameID: =HALFTONING_DISPLAY
  228. *DefaultOption: HT_PATSIZE_AUTO
  229. *Option: HT_PATSIZE_AUTO
  230. {
  231. *rcNameID: =HT_AUTO_SELECT_DISPLAY
  232. }
  233. *Ifdef: WINNT_50
  234. *Option: HT_PATSIZE_SUPERCELL_M
  235. {
  236. *rcNameID: =HT_SUPERCELL_DISPLAY
  237. }
  238. *Endif:
  239. *Option: HT_PATSIZE_6x6_M
  240. {
  241. *rcNameID: =HT_DITHER6X6_DISPLAY
  242. }
  243. *Option: HT_PATSIZE_8x8_M
  244. {
  245. *rcNameID: =HT_DITHER8X8_DISPLAY
  246. }
  247. }
  248. *Command: CmdStartDoc
  249. {
  250. *Order: DOC_SETUP.1
  251. *Cmd: "<1B>@<1B>t<011B>6<1B>R<00>"
  252. }
  253. *Command: CmdEndJob
  254. {
  255. *Order: JOB_FINISH.1
  256. *Cmd: "<0D1B>@"
  257. }
  258. *RotateCoordinate?: FALSE
  259. *RotateRaster?: FALSE
  260. *RotateFont?: FALSE
  261. *switch: Orientation
  262. {
  263. *case: PORTRAIT
  264. {
  265. *TextCaps: LIST(TC_SA_DOUBLE,TC_EA_DOUBLE,TC_IA_ABLE,TC_UA_ABLE,TC_RA_ABLE)
  266. }
  267. *case: LANDSCAPE_CC270
  268. {
  269. *TextCaps: LIST(TC_RA_ABLE)
  270. }
  271. }
  272. *CursorXAfterCR: AT_CURSOR_X_ORIGIN
  273. *XMoveThreshold: 0
  274. *YMoveThreshold: *
  275. *XMoveUnit: 60
  276. *YMoveUnit: 180
  277. *Command: CmdXMoveAbsolute { *Cmd : "<1B>$" %l[0,816]{max_repeat((DestX / 6) )} }
  278. *Command: CmdYMoveRelDown { *Cmd : "<1B>J" %c[0,255]{max_repeat((DestYRel / 2) )} }
  279. *Command: CmdYMoveRelUp { *Cmd : "<1B>j" %c[0,255]{max_repeat((DestYRel / 2) )} }
  280. *Command: CmdCR { *Cmd : "<0D>" }
  281. *Command: CmdLF { *Cmd : "<0A>" }
  282. *Command: CmdFF { *Cmd : "<0C>" }
  283. *Command: CmdBackSpace { *Cmd : "<08>" }
  284. *Command: CmdUniDirectionOn { *Cmd : "<1B>U<01>" }
  285. *Command: CmdUniDirectionOff { *Cmd : "<1B>U<00>" }
  286. *EjectPageWithFF?: TRUE
  287. *OutputDataFormat: V_BYTE
  288. *OptimizeLeftBound?: FALSE
  289. *CursorXAfterSendBlockData: AT_GRXDATA_END
  290. *CursorYAfterSendBlockData: NO_MOVE
  291. *DefaultFont: 6
  292. *DefaultCTT: 3
  293. *switch: Orientation
  294. {
  295. *case: PORTRAIT
  296. {
  297. *DeviceFonts: LIST(2,3,4,5,6,7,8,9,10,11,14,40,41,42,43,44,
  298. + 45,46,47,48,49,52,69,72)
  299. }
  300. *case: LANDSCAPE_CC270
  301. {
  302. *DeviceFonts: LIST()
  303. }
  304. }
  305. *Command: CmdBoldOn { *Cmd : "<1B>G" }
  306. *Command: CmdBoldOff { *Cmd : "<1B>H" }
  307. *Command: CmdItalicOn { *Cmd : "<1B>4" }
  308. *Command: CmdItalicOff { *Cmd : "<1B>5" }
  309. *Command: CmdUnderlineOn { *Cmd : "<1B>-<01>" }
  310. *Command: CmdUnderlineOff { *Cmd : "<1B>-<00>" }