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.

404 lines
12 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: "stjj1aj.gpd"
  9. *CodePage: 1252
  10. *ModelName: "Star JJ-100A ESC/P"
  11. *MasterUnits: PAIR(360, 360)
  12. *ResourceDLL: "stepjres.dll"
  13. *PrinterType: SERIAL
  14. *Feature: Orientation
  15. {
  16. *rcNameID: =ORIENTATION_DISPLAY
  17. *DefaultOption: PORTRAIT
  18. *Option: PORTRAIT
  19. {
  20. *rcNameID: =PORTRAIT_DISPLAY
  21. }
  22. *Option: LANDSCAPE_CC270
  23. {
  24. *rcNameID: =LANDSCAPE_DISPLAY
  25. }
  26. }
  27. *Feature: InputBin
  28. {
  29. *rcNameID: =PAPER_SOURCE_DISPLAY
  30. *DefaultOption: Option1
  31. *Option: Option1
  32. {
  33. *rcNameID: 259
  34. *OptionID: 259
  35. *% Warning: this input bin has PSRC_MAN_PROMPT set in GPC, which is ignored by GPD.
  36. }
  37. *Option: Option2
  38. {
  39. *rcNameID: 261
  40. *OptionID: 261
  41. }
  42. }
  43. *Feature: Resolution
  44. {
  45. *rcNameID: =RESOLUTION_DISPLAY
  46. *DefaultOption: Option1
  47. *Option: Option1
  48. {
  49. *Name: "360 x 360 " =DOTS_PER_INCH
  50. *DPI: PAIR(360, 360)
  51. *TextDPI: PAIR(360, 360)
  52. *PinsPerLogPass: 48
  53. *PinsPerPhysPass: 48
  54. *MinStripBlankPixels: 240
  55. EXTERN_GLOBAL: *StripBlanks: LIST(LEADING,ENCLOSED,TRAILING)
  56. *SpotDiameter: 120
  57. *Command: CmdSendBlockData { *Cmd : "<1B>*H" %l{NumOfDataBytes / 6} }
  58. }
  59. *Option: Option2
  60. {
  61. *Name: "180 x 180 " =DOTS_PER_INCH
  62. *DPI: PAIR(180, 180)
  63. *TextDPI: PAIR(180, 180)
  64. *PinsPerLogPass: 24
  65. *PinsPerPhysPass: 24
  66. *MinStripBlankPixels: 360
  67. EXTERN_GLOBAL: *StripBlanks: LIST(LEADING,ENCLOSED,TRAILING)
  68. *SpotDiameter: 140
  69. *Command: CmdSendBlockData { *Cmd : "<1B>*'" %l{NumOfDataBytes / 3} }
  70. }
  71. *Option: Option3
  72. {
  73. *Name: "360 x 180 " =DOTS_PER_INCH
  74. *DPI: PAIR(360, 180)
  75. *TextDPI: PAIR(360, 180)
  76. *PinsPerLogPass: 24
  77. *PinsPerPhysPass: 24
  78. *MinStripBlankPixels: 240
  79. EXTERN_GLOBAL: *StripBlanks: LIST(LEADING,ENCLOSED,TRAILING)
  80. *SpotDiameter: 120
  81. *Command: CmdSendBlockData { *Cmd : "<1B>*(" %l{NumOfDataBytes / 3} }
  82. }
  83. }
  84. *Feature: PaperSize
  85. {
  86. *rcNameID: =PAPER_SIZE_DISPLAY
  87. *DefaultOption: A4
  88. *Option: A4
  89. {
  90. *rcNameID: =A4_DISPLAY
  91. *Command: CmdSelect
  92. {
  93. *Order: DOC_SETUP.8
  94. *Cmd: "<1B>2<1B>CF"
  95. }
  96. *switch: InputBin
  97. {
  98. *case: Option1
  99. {
  100. *PrintableArea: PAIR(2877, 4148)
  101. *PrintableOrigin: PAIR(50, 60)
  102. *switch: Resolution
  103. {
  104. *case: Option2
  105. {
  106. *% Warning: the following printable width is adjusted (2877->2876) so it is divisible by the resolution X scale.
  107. *PrintableArea: PAIR(2876, 4148)
  108. }
  109. }
  110. }
  111. *case: Option2
  112. {
  113. *PrintableArea: PAIR(2877, 3968)
  114. *PrintableOrigin: PAIR(50, 60)
  115. *switch: Resolution
  116. {
  117. *case: Option2
  118. {
  119. *% Warning: the following printable width is adjusted (2877->2876) so it is divisible by the resolution X scale.
  120. *PrintableArea: PAIR(2876, 3968)
  121. }
  122. }
  123. }
  124. }
  125. }
  126. *Option: B5
  127. {
  128. *rcNameID: =B5_DISPLAY
  129. *Command: CmdSelect
  130. {
  131. *Order: DOC_SETUP.8
  132. *Cmd: "<1B>2<1B>C%<"
  133. }
  134. *switch: InputBin
  135. {
  136. *case: Option1
  137. {
  138. *PrintableArea: PAIR(2481, 3583)
  139. *PrintableOrigin: PAIR(50, 60)
  140. *switch: Resolution
  141. {
  142. *case: Option2
  143. {
  144. *% Warning: the following printable width is adjusted (2481->2480) so it is divisible by the resolution X scale.
  145. *% Warning: the following printable length is adjusted (3583->3582) so it is divisible by the resolution Y scale.
  146. *PrintableArea: PAIR(2480, 3582)
  147. }
  148. *case: Option3
  149. {
  150. *% Warning: the following printable length is adjusted (3583->3582) so it is divisible by the resolution Y scale.
  151. *PrintableArea: PAIR(2481, 3582)
  152. }
  153. }
  154. }
  155. *case: Option2
  156. {
  157. *PrintableArea: PAIR(2481, 3403)
  158. *PrintableOrigin: PAIR(50, 60)
  159. *switch: Resolution
  160. {
  161. *case: Option2
  162. {
  163. *% Warning: the following printable width is adjusted (2481->2480) so it is divisible by the resolution X scale.
  164. *% Warning: the following printable length is adjusted (3403->3402) so it is divisible by the resolution Y scale.
  165. *PrintableArea: PAIR(2480, 3402)
  166. }
  167. *case: Option3
  168. {
  169. *% Warning: the following printable length is adjusted (3403->3402) so it is divisible by the resolution Y scale.
  170. *PrintableArea: PAIR(2481, 3402)
  171. }
  172. }
  173. }
  174. }
  175. }
  176. *Option: JAPANESE_POSTCARD
  177. {
  178. *rcNameID: =JAPANESE_POSTCARD_DISPLAY
  179. *Command: CmdSelect
  180. {
  181. *Order: DOC_SETUP.8
  182. *Cmd: "<1B>2<1B>C%""
  183. }
  184. *switch: InputBin
  185. {
  186. *case: Option1
  187. {
  188. *PrintableArea: PAIR(1318, 2039)
  189. *PrintableOrigin: PAIR(50, 60)
  190. *switch: Resolution
  191. {
  192. *case: Option2
  193. {
  194. *% Warning: the following printable length is adjusted (2039->2038) so it is divisible by the resolution Y scale.
  195. *PrintableArea: PAIR(1318, 2038)
  196. }
  197. *case: Option3
  198. {
  199. *% Warning: the following printable length is adjusted (2039->2038) so it is divisible by the resolution Y scale.
  200. *PrintableArea: PAIR(1318, 2038)
  201. }
  202. }
  203. }
  204. *case: Option2
  205. {
  206. *PrintableArea: PAIR(1318, 1859)
  207. *PrintableOrigin: PAIR(50, 60)
  208. *switch: Resolution
  209. {
  210. *case: Option2
  211. {
  212. *% Warning: the following printable length is adjusted (1859->1858) so it is divisible by the resolution Y scale.
  213. *PrintableArea: PAIR(1318, 1858)
  214. }
  215. *case: Option3
  216. {
  217. *% Warning: the following printable length is adjusted (1859->1858) so it is divisible by the resolution Y scale.
  218. *PrintableArea: PAIR(1318, 1858)
  219. }
  220. }
  221. }
  222. }
  223. }
  224. *Option: JAPANESE_POSTCARD_ROTATED
  225. {
  226. *rcNameID: =JAPANESE_POSTCARD_ROTATED_DISPLAY
  227. *Command: CmdSelect
  228. {
  229. *Order: DOC_SETUP.8
  230. *Cmd: "<1B>2<1B>C<17>"
  231. }
  232. *switch: InputBin
  233. {
  234. *case: Option1
  235. {
  236. *PrintableArea: PAIR(1999, 1358)
  237. *PrintableOrigin: PAIR(50, 60)
  238. *switch: Resolution
  239. {
  240. *case: Option2
  241. {
  242. *% Warning: the following printable width is adjusted (1999->1998) so it is divisible by the resolution X scale.
  243. *PrintableArea: PAIR(1998, 1358)
  244. }
  245. }
  246. }
  247. *case: Option2
  248. {
  249. *PrintableArea: PAIR(1999, 1178)
  250. *PrintableOrigin: PAIR(50, 60)
  251. *switch: Resolution
  252. {
  253. *case: Option2
  254. {
  255. *% Warning: the following printable width is adjusted (1999->1998) so it is divisible by the resolution X scale.
  256. *PrintableArea: PAIR(1998, 1178)
  257. }
  258. }
  259. }
  260. }
  261. }
  262. *Option: CUSTOMSIZE
  263. {
  264. *rcNameID: =USER_DEFINED_SIZE_DISPLAY
  265. *MinSize: PAIR(1417, 1417)
  266. *MaxSize: PAIR(3061, 5952)
  267. *MaxPrintableWidth: 3061
  268. *MinLeftMargin: 0
  269. *CenterPrintable?: FALSE
  270. *switch: InputBin
  271. {
  272. *case: Option1
  273. {
  274. *TopMargin: 60
  275. *BottomMargin: 0
  276. }
  277. *case: Option2
  278. {
  279. *TopMargin: 60
  280. *BottomMargin: 180
  281. }
  282. }
  283. *Command: CmdSelect
  284. {
  285. *Order: DOC_SETUP.8
  286. *Cmd: "<1B>2<1B>C" %c[0,127]{max_repeat((PhysPaperLength / 60) )}
  287. }
  288. }
  289. }
  290. *Feature: PrintQuality
  291. {
  292. *rcNameID: =TEXT_QUALITY_DISPLAY
  293. *DefaultOption: Option1
  294. *Option: Option1
  295. {
  296. *rcNameID: 267
  297. *Command: CmdSelect
  298. {
  299. *Order: DOC_SETUP.6
  300. *Cmd: "<1B>x<011C>x<00>"
  301. }
  302. }
  303. *Option: Option2
  304. {
  305. *rcNameID: 268
  306. *Command: CmdSelect
  307. {
  308. *Order: DOC_SETUP.6
  309. *Cmd: "<1B>x<001C>x<01>"
  310. }
  311. }
  312. }
  313. *Feature: Halftone
  314. {
  315. *rcNameID: =HALFTONING_DISPLAY
  316. *DefaultOption: HT_PATSIZE_AUTO
  317. *Option: HT_PATSIZE_AUTO
  318. {
  319. *rcNameID: =HT_AUTO_SELECT_DISPLAY
  320. }
  321. *Option: HT_PATSIZE_SUPERCELL_M
  322. {
  323. *rcNameID: =HT_SUPERCELL_DISPLAY
  324. }
  325. *Option: HT_PATSIZE_6x6_M
  326. {
  327. *rcNameID: =HT_DITHER6X6_DISPLAY
  328. }
  329. *Option: HT_PATSIZE_8x8_M
  330. {
  331. *rcNameID: =HT_DITHER8X8_DISPLAY
  332. }
  333. }
  334. *Command: CmdStartDoc
  335. {
  336. *Order: DOC_SETUP.1
  337. *Cmd: "<1B>@<181B>t<011B>R<00>"
  338. }
  339. *Command: CmdStartPage
  340. {
  341. *Order: PAGE_SETUP.1
  342. *Cmd: "<0D>"
  343. }
  344. *RotateCoordinate?: FALSE
  345. *RotateRaster?: FALSE
  346. *RotateFont?: FALSE
  347. *switch: Orientation
  348. {
  349. *case: PORTRAIT
  350. {
  351. *TextCaps: LIST(TC_SA_DOUBLE,TC_EA_DOUBLE,TC_IA_ABLE,TC_RA_ABLE)
  352. }
  353. *case: LANDSCAPE_CC270
  354. {
  355. *TextCaps: LIST(TC_RA_ABLE)
  356. }
  357. }
  358. *CursorXAfterCR: AT_CURSOR_X_ORIGIN
  359. *YMoveAttributes: LIST(SEND_CR_FIRST)
  360. *MaxLineSpacing: 255
  361. *XMoveThreshold: 0
  362. *YMoveThreshold: *
  363. *XMoveUnit: 60
  364. *YMoveUnit: 180
  365. *Command: CmdXMoveAbsolute { *Cmd : "<1B>$" %l[0,815]{max_repeat((DestX / 6) )} }
  366. *Command: CmdYMoveRelDown { *Cmd : "<1B>J" %c[0,255]{max_repeat((DestYRel / 2) )} }
  367. *Command: CmdSetLineSpacing { *Cmd : "<1B>3" %c[0,255]{(LinefeedSpacing / 2) } }
  368. *Command: CmdCR { *Cmd : "<0D>" }
  369. *Command: CmdLF { *Cmd : "<0A>" }
  370. *Command: CmdFF { *Cmd : "<0C>" }
  371. *Command: CmdBackSpace { *Cmd : "<08>" }
  372. *Command: CmdUniDirectionOn { *Cmd : "<1B>U<01>" }
  373. *Command: CmdUniDirectionOff { *Cmd : "<1B>U<00>" }
  374. *EjectPageWithFF?: FALSE
  375. *switch: InputBin
  376. {
  377. *case: Option2
  378. {
  379. *EjectPageWithFF?: TRUE
  380. }
  381. }
  382. *OutputDataFormat: V_BYTE
  383. *OptimizeLeftBound?: FALSE
  384. *CursorXAfterSendBlockData: AT_GRXDATA_END
  385. *CursorYAfterSendBlockData: NO_MOVE
  386. *DefaultFont: 1
  387. *DefaultCTT: -1
  388. *switch: Orientation
  389. {
  390. *case: PORTRAIT
  391. {
  392. *DeviceFonts: LIST(1,3,9,13,14,15,16,17)
  393. }
  394. *case: LANDSCAPE_CC270
  395. {
  396. *DeviceFonts: LIST()
  397. }
  398. }
  399. *Command: CmdBoldOn { *Cmd : "<1B>E" }
  400. *Command: CmdBoldOff { *Cmd : "<1B>F" }
  401. *Command: CmdItalicOn { *Cmd : "<1B>4" }
  402. *Command: CmdItalicOff { *Cmd : "<1B>5" }
  403. *Command: CmdSelectSingleByteMode { *Cmd : "<1C0F>" }
  404. *Command: CmdSelectDoubleByteMode { *Cmd : "<1C12>" }