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.

576 lines
18 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: "stjt48cj.gpd"
  9. *CodePage: 1252
  10. *ModelName: "Star JT-48CL 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: Option2
  31. *Option: Option1
  32. {
  33. *rcNameID: 260
  34. *OptionID: 260
  35. *% Warning: this input bin has PSRC_MAN_PROMPT set in GPC, which is ignored by GPD.
  36. }
  37. *Option: Option2
  38. {
  39. *rcNameID: 259
  40. *OptionID: 259
  41. *% Warning: this input bin has PSRC_MAN_PROMPT set in GPC, which is ignored by GPD.
  42. }
  43. *Option: Option3
  44. {
  45. *rcNameID: 261
  46. *OptionID: 261
  47. }
  48. }
  49. *Feature: Resolution
  50. {
  51. *rcNameID: =RESOLUTION_DISPLAY
  52. *DefaultOption: Option3
  53. *Option: Option1
  54. {
  55. *Name: "180 x 180 " =DOTS_PER_INCH
  56. *DPI: PAIR(180, 180)
  57. *TextDPI: PAIR(180, 180)
  58. *PinsPerLogPass: 24
  59. *PinsPerPhysPass: 24
  60. *MinStripBlankPixels: 360
  61. EXTERN_GLOBAL: *StripBlanks: LIST(LEADING,ENCLOSED,TRAILING)
  62. *SpotDiameter: 140
  63. *Command: CmdSendBlockData { *Cmd : "<1B>*'" %l{NumOfDataBytes / 3} }
  64. }
  65. *Option: Option2
  66. {
  67. *Name: "360 x 180 " =DOTS_PER_INCH
  68. *DPI: PAIR(360, 180)
  69. *TextDPI: PAIR(360, 180)
  70. *PinsPerLogPass: 24
  71. *PinsPerPhysPass: 24
  72. *MinStripBlankPixels: 240
  73. EXTERN_GLOBAL: *StripBlanks: LIST(LEADING,ENCLOSED,TRAILING)
  74. *SpotDiameter: 120
  75. *Command: CmdSendBlockData { *Cmd : "<1B>*(" %l{NumOfDataBytes / 3} }
  76. }
  77. *Option: Option3
  78. {
  79. *Name: "360 x 360 " =DOTS_PER_INCH
  80. *DPI: PAIR(360, 360)
  81. *TextDPI: PAIR(360, 360)
  82. *PinsPerLogPass: 48
  83. *PinsPerPhysPass: 48
  84. *MinStripBlankPixels: 240
  85. EXTERN_GLOBAL: *StripBlanks: LIST(LEADING,ENCLOSED,TRAILING)
  86. *SpotDiameter: 120
  87. *Command: CmdSendBlockData { *Cmd : "<1B>*H" %l{NumOfDataBytes / 6} }
  88. }
  89. }
  90. *Feature: PaperSize
  91. {
  92. *rcNameID: =PAPER_SIZE_DISPLAY
  93. *DefaultOption: A4
  94. *Option: A4
  95. {
  96. *rcNameID: =A4_DISPLAY
  97. *Command: CmdSelect
  98. {
  99. *Order: DOC_SETUP.8
  100. *Cmd: "<1B>2<1B>CF"
  101. }
  102. *switch: InputBin
  103. {
  104. *case: Option1
  105. {
  106. *PrintableArea: PAIR(2877, 4088)
  107. *PrintableOrigin: PAIR(50, 120)
  108. *switch: Resolution
  109. {
  110. *case: Option1
  111. {
  112. *% Warning: the following printable width is adjusted (2877->2876) so it is divisible by the resolution X scale.
  113. *PrintableArea: PAIR(2876, 4088)
  114. }
  115. }
  116. }
  117. *case: Option2
  118. {
  119. *PrintableArea: PAIR(2877, 3888)
  120. *PrintableOrigin: PAIR(50, 120)
  121. *switch: Resolution
  122. {
  123. *case: Option1
  124. {
  125. *% Warning: the following printable width is adjusted (2877->2876) so it is divisible by the resolution X scale.
  126. *PrintableArea: PAIR(2876, 3888)
  127. }
  128. }
  129. }
  130. *case: Option3
  131. {
  132. *PrintableArea: PAIR(2877, 3888)
  133. *PrintableOrigin: PAIR(50, 120)
  134. *switch: Resolution
  135. {
  136. *case: Option1
  137. {
  138. *% Warning: the following printable width is adjusted (2877->2876) so it is divisible by the resolution X scale.
  139. *PrintableArea: PAIR(2876, 3888)
  140. }
  141. }
  142. }
  143. }
  144. }
  145. *Option: B4
  146. {
  147. *rcNameID: =B4_DISPLAY
  148. *Command: CmdSelect
  149. {
  150. *Order: DOC_SETUP.8
  151. *Cmd: "<1B>2<1B>CU"
  152. }
  153. *switch: InputBin
  154. {
  155. *case: Option1
  156. {
  157. *PrintableArea: PAIR(2863, 5039)
  158. *PrintableOrigin: PAIR(390, 120)
  159. *switch: Resolution
  160. {
  161. *case: Option1
  162. {
  163. *% Warning: the following printable width is adjusted (2863->2862) so it is divisible by the resolution X scale.
  164. *% Warning: the following printable length is adjusted (5039->5038) so it is divisible by the resolution Y scale.
  165. *PrintableArea: PAIR(2862, 5038)
  166. }
  167. *case: Option2
  168. {
  169. *% Warning: the following printable length is adjusted (5039->5038) so it is divisible by the resolution Y scale.
  170. *PrintableArea: PAIR(2863, 5038)
  171. }
  172. }
  173. }
  174. *case: Option2
  175. {
  176. *PrintableArea: PAIR(2863, 4839)
  177. *PrintableOrigin: PAIR(390, 120)
  178. *switch: Resolution
  179. {
  180. *case: Option1
  181. {
  182. *% Warning: the following printable width is adjusted (2863->2862) so it is divisible by the resolution X scale.
  183. *% Warning: the following printable length is adjusted (4839->4838) so it is divisible by the resolution Y scale.
  184. *PrintableArea: PAIR(2862, 4838)
  185. }
  186. *case: Option2
  187. {
  188. *% Warning: the following printable length is adjusted (4839->4838) so it is divisible by the resolution Y scale.
  189. *PrintableArea: PAIR(2863, 4838)
  190. }
  191. }
  192. }
  193. *case: Option3
  194. {
  195. *PrintableArea: PAIR(2863, 4839)
  196. *PrintableOrigin: PAIR(390, 120)
  197. *switch: Resolution
  198. {
  199. *case: Option1
  200. {
  201. *% Warning: the following printable width is adjusted (2863->2862) so it is divisible by the resolution X scale.
  202. *% Warning: the following printable length is adjusted (4839->4838) so it is divisible by the resolution Y scale.
  203. *PrintableArea: PAIR(2862, 4838)
  204. }
  205. *case: Option2
  206. {
  207. *% Warning: the following printable length is adjusted (4839->4838) so it is divisible by the resolution Y scale.
  208. *PrintableArea: PAIR(2863, 4838)
  209. }
  210. }
  211. }
  212. }
  213. }
  214. *Option: B5
  215. {
  216. *rcNameID: =B5_DISPLAY
  217. *Command: CmdSelect
  218. {
  219. *Order: DOC_SETUP.8
  220. *Cmd: "<1B>2<1B>C%<"
  221. }
  222. *switch: InputBin
  223. {
  224. *case: Option1
  225. {
  226. *PrintableArea: PAIR(2481, 3523)
  227. *PrintableOrigin: PAIR(50, 120)
  228. *switch: Resolution
  229. {
  230. *case: Option1
  231. {
  232. *% Warning: the following printable width is adjusted (2481->2480) so it is divisible by the resolution X scale.
  233. *% Warning: the following printable length is adjusted (3523->3522) so it is divisible by the resolution Y scale.
  234. *PrintableArea: PAIR(2480, 3522)
  235. }
  236. *case: Option2
  237. {
  238. *% Warning: the following printable length is adjusted (3523->3522) so it is divisible by the resolution Y scale.
  239. *PrintableArea: PAIR(2481, 3522)
  240. }
  241. }
  242. }
  243. *case: Option2
  244. {
  245. *PrintableArea: PAIR(2481, 3323)
  246. *PrintableOrigin: PAIR(50, 120)
  247. *switch: Resolution
  248. {
  249. *case: Option1
  250. {
  251. *% Warning: the following printable width is adjusted (2481->2480) so it is divisible by the resolution X scale.
  252. *% Warning: the following printable length is adjusted (3323->3322) so it is divisible by the resolution Y scale.
  253. *PrintableArea: PAIR(2480, 3322)
  254. }
  255. *case: Option2
  256. {
  257. *% Warning: the following printable length is adjusted (3323->3322) so it is divisible by the resolution Y scale.
  258. *PrintableArea: PAIR(2481, 3322)
  259. }
  260. }
  261. }
  262. *case: Option3
  263. {
  264. *PrintableArea: PAIR(2481, 3323)
  265. *PrintableOrigin: PAIR(50, 120)
  266. *switch: Resolution
  267. {
  268. *case: Option1
  269. {
  270. *% Warning: the following printable width is adjusted (2481->2480) so it is divisible by the resolution X scale.
  271. *% Warning: the following printable length is adjusted (3323->3322) so it is divisible by the resolution Y scale.
  272. *PrintableArea: PAIR(2480, 3322)
  273. }
  274. *case: Option2
  275. {
  276. *% Warning: the following printable length is adjusted (3323->3322) so it is divisible by the resolution Y scale.
  277. *PrintableArea: PAIR(2481, 3322)
  278. }
  279. }
  280. }
  281. }
  282. }
  283. *Option: JAPANESE_POSTCARD
  284. {
  285. *rcNameID: =JAPANESE_POSTCARD_DISPLAY
  286. *Command: CmdSelect
  287. {
  288. *Order: DOC_SETUP.8
  289. *Cmd: "<1B>2<1B>C%""
  290. }
  291. *switch: InputBin
  292. {
  293. *case: Option1
  294. {
  295. *PrintableArea: PAIR(1318, 1979)
  296. *PrintableOrigin: PAIR(50, 120)
  297. *switch: Resolution
  298. {
  299. *case: Option1
  300. {
  301. *% Warning: the following printable length is adjusted (1979->1978) so it is divisible by the resolution Y scale.
  302. *PrintableArea: PAIR(1318, 1978)
  303. }
  304. *case: Option2
  305. {
  306. *% Warning: the following printable length is adjusted (1979->1978) so it is divisible by the resolution Y scale.
  307. *PrintableArea: PAIR(1318, 1978)
  308. }
  309. }
  310. }
  311. *case: Option2
  312. {
  313. *PrintableArea: PAIR(1318, 1779)
  314. *PrintableOrigin: PAIR(50, 120)
  315. *switch: Resolution
  316. {
  317. *case: Option1
  318. {
  319. *% Warning: the following printable length is adjusted (1779->1778) so it is divisible by the resolution Y scale.
  320. *PrintableArea: PAIR(1318, 1778)
  321. }
  322. *case: Option2
  323. {
  324. *% Warning: the following printable length is adjusted (1779->1778) so it is divisible by the resolution Y scale.
  325. *PrintableArea: PAIR(1318, 1778)
  326. }
  327. }
  328. }
  329. *case: Option3
  330. {
  331. *PrintableArea: PAIR(1318, 1779)
  332. *PrintableOrigin: PAIR(50, 120)
  333. *switch: Resolution
  334. {
  335. *case: Option1
  336. {
  337. *% Warning: the following printable length is adjusted (1779->1778) so it is divisible by the resolution Y scale.
  338. *PrintableArea: PAIR(1318, 1778)
  339. }
  340. *case: Option2
  341. {
  342. *% Warning: the following printable length is adjusted (1779->1778) so it is divisible by the resolution Y scale.
  343. *PrintableArea: PAIR(1318, 1778)
  344. }
  345. }
  346. }
  347. }
  348. }
  349. *Option: JAPANESE_POSTCARD_ROTATED
  350. {
  351. *rcNameID: =JAPANESE_POSTCARD_ROTATED_DISPLAY
  352. *Command: CmdSelect
  353. {
  354. *Order: DOC_SETUP.8
  355. *Cmd: "<1B>2<1B>C<17>"
  356. }
  357. *switch: InputBin
  358. {
  359. *case: Option1
  360. {
  361. *PrintableArea: PAIR(1999, 1298)
  362. *PrintableOrigin: PAIR(50, 120)
  363. *switch: Resolution
  364. {
  365. *case: Option1
  366. {
  367. *% Warning: the following printable width is adjusted (1999->1998) so it is divisible by the resolution X scale.
  368. *PrintableArea: PAIR(1998, 1298)
  369. }
  370. }
  371. }
  372. *case: Option2
  373. {
  374. *PrintableArea: PAIR(1999, 1098)
  375. *PrintableOrigin: PAIR(50, 120)
  376. *switch: Resolution
  377. {
  378. *case: Option1
  379. {
  380. *% Warning: the following printable width is adjusted (1999->1998) so it is divisible by the resolution X scale.
  381. *PrintableArea: PAIR(1998, 1098)
  382. }
  383. }
  384. }
  385. *case: Option3
  386. {
  387. *PrintableArea: PAIR(1999, 1098)
  388. *PrintableOrigin: PAIR(50, 120)
  389. *switch: Resolution
  390. {
  391. *case: Option1
  392. {
  393. *% Warning: the following printable width is adjusted (1999->1998) so it is divisible by the resolution X scale.
  394. *PrintableArea: PAIR(1998, 1098)
  395. }
  396. }
  397. }
  398. }
  399. }
  400. *Option: CUSTOMSIZE
  401. {
  402. *rcNameID: =USER_DEFINED_SIZE_DISPLAY
  403. *MinSize: PAIR(1417, 1417)
  404. *MaxSize: PAIR(3643, 5952)
  405. *MaxPrintableWidth: 3643
  406. *MinLeftMargin: 0
  407. *CenterPrintable?: FALSE
  408. *switch: InputBin
  409. {
  410. *case: Option1
  411. {
  412. *TopMargin: 120
  413. *BottomMargin: 0
  414. }
  415. *case: Option2
  416. {
  417. *TopMargin: 120
  418. *BottomMargin: 200
  419. }
  420. *case: Option3
  421. {
  422. *TopMargin: 120
  423. *BottomMargin: 200
  424. }
  425. }
  426. *Command: CmdSelect
  427. {
  428. *Order: DOC_SETUP.8
  429. *Cmd: "<1B>2<1B>C" %c[0,127]{max_repeat((PhysPaperLength / 60) )}
  430. }
  431. }
  432. }
  433. *InvalidCombination: LIST(InputBin.Option2, PaperSize.CUSTOMSIZE)
  434. *InvalidCombination: LIST(InputBin.Option3, PaperSize.CUSTOMSIZE)
  435. *Feature: PrintQuality
  436. {
  437. *rcNameID: =TEXT_QUALITY_DISPLAY
  438. *DefaultOption: LETTER_QUALITY
  439. *Option: LETTER_QUALITY
  440. {
  441. *rcNameID: =LETTER_QUALITY_DISPLAY
  442. *Command: CmdSelect
  443. {
  444. *Order: DOC_SETUP.6
  445. *Cmd: "<1B>x<011C>x<00>"
  446. }
  447. }
  448. }
  449. *Feature: ColorMode
  450. {
  451. *rcNameID: =COLOR_PRINTING_MODE_DISPLAY
  452. *DefaultOption: Color
  453. *Option: Mono
  454. {
  455. *rcNameID: =MONO_DISPLAY
  456. *DevNumOfPlanes: 1
  457. *DevBPP: 1
  458. *Color? : FALSE
  459. }
  460. *Option: Color
  461. {
  462. *rcNameID: =COLOR_DISPLAY
  463. *DevNumOfPlanes: 4
  464. *DevBPP: 1
  465. *DrvBPP: 4
  466. *ColorPlaneOrder: LIST(YELLOW, MAGENTA, CYAN, BLACK)
  467. *Command: CmdSendYellowData { *Cmd : "<1B>r<04>" }
  468. *Command: CmdSendMagentaData { *Cmd : "<1B>r<01>" }
  469. *Command: CmdSendCyanData { *Cmd : "<1B>r<02>" }
  470. *Command: CmdSendBlackData { *Cmd : "<1B>r<00>" }
  471. *Command: CmdSelectBlackColor { *Cmd : "<1B>r<00>" }
  472. *Command: CmdSelectRedColor { *Cmd : "<1B>r<05>" }
  473. *Command: CmdSelectGreenColor { *Cmd : "<1B>r<06>" }
  474. *Command: CmdSelectYellowColor { *Cmd : "<1B>r<04>" }
  475. *Command: CmdSelectBlueColor { *Cmd : "<1B>r<03>" }
  476. *Command: CmdSelectMagentaColor { *Cmd : "<1B>r<01>" }
  477. *Command: CmdSelectCyanColor { *Cmd : "<1B>r<02>" }
  478. }
  479. }
  480. *Feature: Halftone
  481. {
  482. *rcNameID: =HALFTONING_DISPLAY
  483. *DefaultOption: HT_PATSIZE_AUTO
  484. *Option: HT_PATSIZE_AUTO
  485. {
  486. *rcNameID: =HT_AUTO_SELECT_DISPLAY
  487. }
  488. *Option: HT_PATSIZE_SUPERCELL_M
  489. {
  490. *rcNameID: =HT_SUPERCELL_DISPLAY
  491. }
  492. *Option: HT_PATSIZE_6x6_M
  493. {
  494. *rcNameID: =HT_DITHER6X6_DISPLAY
  495. }
  496. *Option: HT_PATSIZE_8x8_M
  497. {
  498. *rcNameID: =HT_DITHER8X8_DISPLAY
  499. }
  500. }
  501. *Command: CmdStartDoc
  502. {
  503. *Order: DOC_SETUP.1
  504. *Cmd: "<1B>@<181B>t<011B>R<00>"
  505. }
  506. *Command: CmdStartPage
  507. {
  508. *Order: PAGE_SETUP.1
  509. *Cmd: "<0D>"
  510. }
  511. *RotateCoordinate?: FALSE
  512. *RotateRaster?: FALSE
  513. *RotateFont?: FALSE
  514. *switch: Orientation
  515. {
  516. *case: PORTRAIT
  517. {
  518. *TextCaps: LIST(TC_SA_DOUBLE,TC_EA_DOUBLE,TC_IA_ABLE,TC_RA_ABLE)
  519. }
  520. *case: LANDSCAPE_CC270
  521. {
  522. *TextCaps: LIST(TC_RA_ABLE)
  523. }
  524. }
  525. *CursorXAfterCR: AT_CURSOR_X_ORIGIN
  526. *YMoveAttributes: LIST(SEND_CR_FIRST)
  527. *MaxLineSpacing: 255
  528. *XMoveThreshold: 0
  529. *YMoveThreshold: *
  530. *XMoveUnit: 60
  531. *YMoveUnit: 180
  532. *Command: CmdXMoveAbsolute { *Cmd : "<1B>$" %l[0,815]{max_repeat((DestX / 6) )} }
  533. *Command: CmdYMoveRelDown { *Cmd : "<1B>J" %c[0,255]{max_repeat((DestYRel / 2) )} }
  534. *Command: CmdSetLineSpacing { *Cmd : "<1B>3" %c[0,255]{(LinefeedSpacing / 2) } }
  535. *Command: CmdCR { *Cmd : "<0D>" }
  536. *Command: CmdLF { *Cmd : "<0A>" }
  537. *Command: CmdFF { *Cmd : "<0C>" }
  538. *Command: CmdBackSpace { *Cmd : "<08>" }
  539. *Command: CmdUniDirectionOn { *Cmd : "<1B>U<01>" }
  540. *Command: CmdUniDirectionOff { *Cmd : "<1B>U<00>" }
  541. *EjectPageWithFF?: FALSE
  542. *switch: InputBin
  543. {
  544. *case: Option2
  545. {
  546. *EjectPageWithFF?: TRUE
  547. }
  548. *case: Option3
  549. {
  550. *EjectPageWithFF?: TRUE
  551. }
  552. }
  553. *OutputDataFormat: V_BYTE
  554. *OptimizeLeftBound?: FALSE
  555. *CursorXAfterSendBlockData: AT_GRXDATA_END
  556. *CursorYAfterSendBlockData: NO_MOVE
  557. *DefaultFont: 1
  558. *DefaultCTT: -1
  559. *switch: Orientation
  560. {
  561. *case: PORTRAIT
  562. {
  563. *DeviceFonts: LIST(1,11,12,13,14,15,16,17)
  564. }
  565. *case: LANDSCAPE_CC270
  566. {
  567. *DeviceFonts: LIST()
  568. }
  569. }
  570. *Command: CmdBoldOn { *Cmd : "<1B>E" }
  571. *Command: CmdBoldOff { *Cmd : "<1B>F" }
  572. *Command: CmdItalicOn { *Cmd : "<1B>4" }
  573. *Command: CmdItalicOff { *Cmd : "<1B>5" }
  574. *Command: CmdSelectSingleByteMode { *Cmd : "<1C0F>" }
  575. *Command: CmdSelectDoubleByteMode { *Cmd : "<1C12>" }
  576. *UseExpColorSelectCmd?: TRUE