esmac.mod 26 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520
  1. MODULE esmac;
  2. IMPORT FindMeta;
  3. IMPORT GrConst;
  4. IMPORT GrProcs1;
  5. IMPORT GrProcs2;
  6. IMPORT GrPorts;
  7. IMPORT GrFonts;
  8. FROM GrProcs1 IMPORT AddPt,AlignPattern,BackColor,BackPattern,BorderColor,CenterRect,CharWidth,ClearText,ClipRect,
  9. ClrInt,CopyBits,CursorBitmap,CursorMap,CursorStyle,DefineCursor,DefineDash,DefinePattern,DrawChar,
  10. DrawString,DrawText,DupPt,DupRect,EqualPt,EqualRect,EraseArc,EraseOval,ErasePoly,EraseRect,
  11. EraseRoundRect,EventQueue,FillArc,FillOval,FillPoly,FillRect,FillRoundRect,FrameArc,FrameOval,
  12. FramePoly,FrameRect,FrameRoundRect,Gbl2LclPt,Gbl2LclRect,Gbl2VirPt,Gbl2VirRect,GetBMapField,
  13. GetCmdLine,GetFontField,GetLPixel,GetPenState,GetPixel,GetPort,GetPortField,HardCopy,
  14. HideCursor,HidePen,ImagePara,ImageSize,InceptRect,InitBitmap,InitGrafix,InitMouse,InitPort,
  15. InitRowTable,InsetRect,InvertArc,InvertOval,InvertPoly,InvertRect,InvertRoundRect,KeyEvent,
  16. Lcl2GblPt,Lcl2GblRect,Lcl2VirPt,Lcl2VirRect,LimitMouse,LineRel,LineTo,LoadFont,LoadPalette,
  17. MapPoly,MapPt,MapRect,MarkerAngle,MarkerSize,MarkerType,MetaInstalled,MiterLimit,MoveCursor,
  18. MovePortTo,MoveTo,OffsetPoly,OffsetRect,OvalPt;
  19. FROM GrProcs2 IMPORT PaintArc,PaintOval,PaintPoly,PaintRect,PaintRoundRect,PeekEvent,PenCap,PenColor,PenDash,PenJoin,
  20. PenMode,PenNormal,PenOffset,PenPattern,PenSize,PolyLine,PolyMarker,PopGrafix,PortBitmap,PortOrigin,
  21. PortSize,ProtectOff,ProtectPort,ProtectRect,Pt2Rect,PtInArc,PtInRect,PtInRoundRect,PtOnArc,
  22. PtOnLine,PtOnOval,PtOnPoly,PtOnRect,PtOnRoundRect,PtToAngle,PushGrafix,QueryColors,QueryComm,
  23. QueryCursor,QueryError,QueryGrafix,QueryPosn,QueryRes,QueryX,QueryY,RasterOp,ReadImage,
  24. ReadMouse,ScaleMouse,ScalePt,ScreenRect,ScreenSize,ScrollRect,SetBitmap,SetDisplay,SetFont,
  25. SetInt,SetLocal,SetOrigin,SetPalette,SetPenState,SetPixel,SetPort,SetPt,SetRect,SetVirtual,
  26. ShiftRect,ShowCursor,ShowPen,StopEvent,StopMouse,StoreEvent,StringWidth,SubPt,SystemFont,
  27. TextAlign,TextAngle,TextExtra,TextFace,TextMode,TextPath,TextScore,TextSize,TextSlant,TextSpace,
  28. TextUnder,TextWidth,TrackCursor,UnionRect,Vir2GblPt,Vir2GblRect,Vir2LclPt,Vir2LclRect,VirtualRect,
  29. WriteImage,XlateImage,XYInRect,XYOnLine,ZoomBits;
  30. FROM GrConst IMPORT
  31. Replace,
  32. Ovrlay,
  33. Invert,
  34. Erase,
  35. zREPz,
  36. zORz,
  37. zXORz,
  38. zNANDz,
  39. zNREPz,
  40. zNORz,
  41. zNXORz,
  42. zANDz,
  43. ATT , (* AT&T Std. Color & DEB Adaptors *)
  44. ATT640x400 , (* 640x400 monochrome *)
  45. DEB640x200 , (* 640x200 16-color *)
  46. DEB640x400 , (* 640x400 16-color *)
  47. CGA , (* IBM Color Graphics Adaptor (CGA) *)
  48. CGA320x200 , (* 320x200 4-color *)
  49. CGA640x200 , (* 640x200 2-color *)
  50. COR , (* Cornerstone *)
  51. COR1600x1280V , (* Vista 1600 1600x1280 mono *)
  52. COR1600x1280VA , (*Vista 1600 1600x1280 no em, 2 mon *)
  53. COR1600x1280DP , (* DualPage 1600x1280 mono *)
  54. COR1600x1280DPA , (* DualPage 1600x1280, no JP1 *)
  55. EGA , (* IBM Enhanced Graphics Adaptor *)
  56. EGAMono , (* 640x350 monochrome *)
  57. EGA320x200 , (* 320x200 16-color *)
  58. EGA640x200 , (* 640x200 16-color *)
  59. EGA640x350 , (* 640x350 16-color (128k EGA) *)
  60. MGA640x350 , (* 640x350 2-color *)
  61. EGA640x480 , (* 640x480 16-color (VGA) *)
  62. MGA640x480 , (* 640x480 2-color (MCGA) *)
  63. VGA320x200 , (* 320x200 256-color (PS2 VGA) *)
  64. EGA640x350S , (* 640x350 16-color (no bios-EGA) *)
  65. VGA640x350S , (* 640x350 16-color (no bios-VGA) *)
  66. VGA640x480S , (* 640x480 16-color (no bios-VGA) *)
  67. JRT320x200 , (*320x200 16-color IBM PCjr & Tandy 1000 EX *)
  68. EVA , (* Tseng Labs EVA/480 *)
  69. EVA640x480 , (* 640x480 16-color *)
  70. EVR , (* Everex Graphics Edge Adaptor *)
  71. EVR640x200 , (* 640x200 16-color *)
  72. EVR640x400 , (* 640x400 4-color *)
  73. GEN , (* Genoa SuperEGA HiRes *)
  74. GEN800x600 , (* 800x600 16-color *)
  75. GEN1024x768 , (* Genoa SuperVGA HiRes-10 16-color *)
  76. GEN640x350X , (* 640x350 256-color *)
  77. GEN640x480X , (* 640x480 256-color *)
  78. HER , (* Hercules/AST Monochrome Adaptor *)
  79. HER720x348 , (* 720x348 monochrome *)
  80. MDS , (* MDS Genius Graphics Display *)
  81. MDS736x1008 , (* 736x1008 monochrome *)
  82. NNR512x512 , (* Number Nine 512x485 256-color *)
  83. NNR1024x768 , (* 2048x4 @ 1024x768x16 *)
  84. NSI , (* NSI Logic Smart EGA/Plus *)
  85. NSI800x600 , (* 800x600 16-color *)
  86. OCD800x600 , (* Orchid Designer VGA 800x600x16 *)
  87. OCD1024x768 , (* 1024x768 16 color *)
  88. OCD640x350X , (* 640x480 256 color *)
  89. OCD640x480X , (* 640x480 256 color *)
  90. PAR , (* Paradise AutoSwitch EGA/480 *)
  91. PAR640x480 , (* 640x480 16-color *)
  92. PAR800x600 , (* 800x600 16-color *)
  93. SIG , (* Sigma Design *)
  94. SIG640x400 , (* 640x400 16-color, Color-400 *)
  95. SIG1664x1200 , (* Sigma LaserView 1664x1200 mono *)
  96. STB , (* STB GraphicsPlus-II Adaptor *)
  97. STB640x352 , (* 640x352 monochrome *)
  98. STB320x200 , (* 320x200 16-color *)
  99. STB640x200 , (* 640x200 4-color *)
  100. STB640x400 , (* 640x400 monochrome *)
  101. STB800x600 , (* STB VGA Extra/EM 800x600x16 *)
  102. STB1024x768 , (* 1024x768 16 color *)
  103. STB640x350X , (* 640x350 256 color *)
  104. STB640x480X , (* 640x480 256 color *)
  105. TEC , (* Tecmar Graphics-Master Adaptor *)
  106. TEC720x352 , (* 720x352 monochrome *)
  107. TEC720x704 , (* 720x704 monochrome *)
  108. TEC320x200 , (* 320x200 16-color *)
  109. TEC640x200 , (* 640x200 16-color *)
  110. TEC640x400 , (* 640x400 16-color *)
  111. TOS , (* Toshiba 3100 *)
  112. TOS640x400 , (* 640x400 monochrome *)
  113. TTS , (* IBM 3270 PC *)
  114. TTS720x350 , (* 720x350 monochrome *)
  115. TTS360x350 , (* 360x350 4-color *)
  116. VGA , (* Video-7 VEGA Deluxe *)
  117. VGA640x480 , (* 640x480 16-color *)
  118. VGA752x410 , (* 752x410 16-color *)
  119. VGA720x540 , (* V7 VGA 720x540 16-color *)
  120. VGA800x600 , (* 800x600 16-color (VGA) *)
  121. VGA640x350X , (* V7 VRAM 640x350 256-color *)
  122. VGA640x480X , (* 640x480 256-color *)
  123. VGA1024x768x2 , (* 1024x768 2-color *)
  124. WYS , (* Wyse WY-700 Graphics Display *)
  125. WYS1280x800 , (* 1280x800 monochrome *)
  126. WYS1280x400 , (* 1280x400 monochrome *)
  127. WYS640x400 , (* 640x400 monochrome *)
  128. MEC1120x750 , (* NEC PC 98XA monochrome *)
  129. MEC640x400 , (* NEC PC 98VM monochrome *)
  130. NEC1120x750 , (* NEC PC 98XA 16-color *)
  131. NEC640x400 , (* NEC PC 98VM 16-color *)
  132. (* Defines for National Design Genesis-1024/1280 *)
  133. NDI640x480x4D , (* 640x480 16-color, digitl *)
  134. NDI640x480x4A , (* 640x480 16-color, analog *)
  135. NDI1024x768x4J , (* 1024x768 16-color, JVC *)
  136. NDI1024x768x4M , (* 1024x768 16-color, Mitsu. *)
  137. NDI1280x1024x4J , (* 1280x1024 16-color, JVC *)
  138. NDI960x720x4N , (* 960x720 16-color, NEC XL *)
  139. (* Defines for Hewlett-Packard HP82328 IGC *)
  140. HP1024x768x4 , (* 1024x768 16-color *)
  141. CUSTLIN , (* User defined linear memory *)
  142. CUSTBS , (* User defined Bank select *)
  143. CUSTEGA , (* User defined EGA Superset *)
  144. (* Mouse Definitions *)
  145. com1 , (* Mouse Systems mouse, COM1 *)
  146. com2 , (* Mouse Systems mouse, COM2 *)
  147. msMouse , (* Microsoft Bus Mouse *)
  148. msCOM1 , (* Microsoft Serial Mouse, COM1 *)
  149. msCOM2 , (* Microsoft Serial Mouse, COM2 *)
  150. MsDriver , (* Microsoft Mouse driver *)
  151. swRight ,
  152. swMiddle , (* (not on 2 button mice) *)
  153. swLeft ,
  154. swAll ,
  155. black , (* all bits OFF *)
  156. white , (* all bits ON *)
  157. TextPg0 ,
  158. GrafPg0 ,
  159. GrafPg1 ,
  160. ScrnXmin ,
  161. ScrnYmin ,
  162. cNormal , (* TEXTFACE *)
  163. cBold ,
  164. cItalic ,
  165. cUnderline ,
  166. cStrikeout ,
  167. cMirrorX ,
  168. cMirrorY ,
  169. cProportional ,
  170. alignLeft , (* TEXTALIGN - Horizontal *)
  171. alignCenter ,
  172. alignRight ,
  173. alignBaseline , (* TEXTALIGN - Vertical *)
  174. alignBottom ,
  175. alignMiddle ,
  176. alignTop ,
  177. pathRight , (* TEXTPATH definitions *)
  178. pathUp ,
  179. pathLeft ,
  180. pathDown ,
  181. capFlat , (* PENCAP definitions *)
  182. capRound ,
  183. capSquare ,
  184. joinRound , (* PENJOIN definitions *)
  185. joinBevel ,
  186. joinMiter ,
  187. POINT , (* "Point" structure type
  188. RECORD
  189. X: INTEGER; (* X coordinate *)
  190. Y: INTEGER; (* Y coordinate *)
  191. END;
  192. *)
  193. COLRTABLE, (*= ARRAY[0..15] OF LONGINT; *)
  194. RECT , (* "Rectangle" structure type
  195. RECORD
  196. xMin: INTEGER; (* minimum X *)
  197. yMin: INTEGER; (* minimum Y *)
  198. xMax: INTEGER; (* maximum X *)
  199. yMax: INTEGER; (* maximum Y *)
  200. END;
  201. *)
  202. POLYHEAD , (* Polygon "header" structure
  203. RECORD
  204. polyBgn: CARDINAL; (* beginning index *)
  205. polyEnd: CARDINAL; (* ending index *)
  206. polyRect: RECT; (* boundry limits *)
  207. END;
  208. *)
  209. EVENT , (* Event record structure
  210. RECORD
  211. ASCII: CHAR; (* ASCII character code *)
  212. ScanCode: SYSTEM.BYTE; (* Keyboard scan code *)
  213. State: CARDINAL; (* Keyboard & mouse switches *)
  214. CursorX: INTEGER; (* Cursor X position *)
  215. CursorY: INTEGER; (* Cursor Y position *)
  216. Time: INTEGER; (* System time of event *)
  217. END;
  218. *)
  219. CURRCD , (* Cursor Image definition
  220. RECORD
  221. curWidth: CARDINAL; (* must be 16 *)
  222. curHeight: CARDINAL; (* must be 16 *)
  223. curAlign: CARDINAL; (* must be 0 *)
  224. curRowBytes: CARDINAL; (* must be 2 *)
  225. curBits: CHAR; (* must be 1 *)
  226. curPlanes: CHAR; (* must be 1 *)
  227. curData: ARRAY [1..32] OF SYSTEM.BYTE;(* cursor data bytes *)
  228. END;
  229. *)
  230. PATRCD , (* Pattern Image definition
  231. RECORD
  232. patWidth: CARDINAL; (* must be 8 *)
  233. patHeight: CARDINAL; (* must be 8 *)
  234. patAlign: CARDINAL; (* must be zero *)
  235. patRowBytes: CARDINAL; (* must be equal to patBits *)
  236. patBits: SYSTEM.BYTE; (* value of 1,2,4 or 8 *)
  237. patPlanes: SYSTEM.BYTE; (* value of 1 thru 32 *)
  238. patData: ARRAY [1..32] OF SYSTEM.BYTE; (* pattern data bytes *)
  239. END;
  240. *)
  241. PENSTATE , (* Pen State record structure
  242. RECORD
  243. psBkColor: LONGINT; (* Background color *)
  244. psPnColor: LONGINT; (* Pen color *)
  245. psPnLoc: POINT; (* Pen location *)
  246. psPnSize: POINT; (* Pen size *)
  247. psPnMode: CARDINAL; (* Pen mode (rasterOp) *)
  248. psPnPat: CARDINAL; (* Pen pattern index *)
  249. psPnCap: CARDINAL; (* Pen end-cap style *)
  250. psPnJoin: CARDINAL; (* Line join style *)
  251. psPnDash: CARDINAL; (* Line dash style *)
  252. psPnOffset: CARDINAL;(* Dash starting offset *)
  253. psPnLevel: CARDINAL; (* Pen visibility level *)
  254. END;
  255. *)
  256. DIRREC , (* FILEQUERY - directory record
  257. RECORD
  258. reserved: ARRAY [1..21] OF CHAR; (* (DOS reserved) *)
  259. fileAttr: SYSTEM.BYTE; (* File attribute *)
  260. fileTime: CARDINAL; (* File create time *)
  261. fileDate: CARDINAL; (* File create date *)
  262. fileSize: LONGINT; (* File size (bytes) *)
  263. fileName: ARRAY [1..14] OF CHAR; (* "FILENAME.EXT\0" *)
  264. END;
  265. *)
  266. IMAGEHEADER , (* Image Header record structure
  267. RECORD
  268. imWidth: CARDINAL; (* Pixel width (X) *)
  269. imHeight: CARDINAL; (* Pixel height (Y) *)
  270. imAlign: CARDINAL; (* Image alignment *)
  271. imRowBytes: CARDINAL; (* Bytes per row *)
  272. imBits: SYSTEM.BYTE; (* Bits per pixel *)
  273. imPlanes: SYSTEM.BYTE;(* Planes per pixel *)
  274. (* imData: array [1..?] of byte;
  275. image data, variable length *)
  276. END;
  277. *)
  278. DASHRCD , (* DEFINEDASH data record
  279. RECORD
  280. nCnts: CARDINAL; (* number of active entries, 1-8*)
  281. cnt1: CARDINAL; (* distance ON, 1 *)
  282. cnt2: CARDINAL; (* distance OFF, 2 *)
  283. cnt3: CARDINAL; (* distance ON, 3 *)
  284. cnt4: CARDINAL; (* distance OFF, 4 *)
  285. cnt5: CARDINAL; (* distance ON, 5 *)
  286. cnt6: CARDINAL; (* distance OFF, 6 *)
  287. cnt7: CARDINAL; (* distance ON, 7 *)
  288. cnt8: CARDINAL; (* distance OFF, 8 *)
  289. END;
  290. *)
  291. MAPARRAY , (*ARRAY [0..7] OF CARDINAL;(* CursorMap data record *)
  292. *)
  293. (* Sample User Definable Types: *)
  294. CCBtype , (*
  295. RECORD
  296. (*User Definable Clock_Communication_Block*)
  297. Timer: CARDINAL;
  298. tX: INTEGER;
  299. tY: INTEGER;
  300. tSw: INTEGER;
  301. END;
  302. *)
  303. MCBtype , (*
  304. RECORD
  305. (*User Definable Mouse_Communication_Block*)
  306. mX: INTEGER;
  307. mY: INTEGER;
  308. mSw: INTEGER;
  309. END;
  310. *)
  311. IMAGE , (* SYSTEM.BYTE;
  312. (* "image" type equivalence *)
  313. *)
  314. IMAGEPTR ; (* POINTER TO IMAGE;*)
  315. FROM GrPorts IMPORT
  316. adsMem , (* POINTER TO SYSTEM.BYTE;
  317. *)
  318. MAP , (* RECORD (* "rowTable" Raster Line Pointers *)
  319. rowTable: ARRAY [0..1280] OF adsMem; (* Table of row pointers *)
  320. END;
  321. *)
  322. rowtblPtr , (* POINTER TO MAP;*)
  323. BITMAP , (* "bitmap" Data Structure
  324. RECORD
  325. devClass: INTEGER; (* Device class *)
  326. devType: INTEGER; (* Device type *)
  327. devProcs: adsMem; (* Ptr to device procedure list *)
  328. rowBytes: INTEGER; (* Bytes per scan line *)
  329. pixWidth: INTEGER; (* Pixels horizontal *)
  330. pixHeight: INTEGER; (* Pixels vertical *)
  331. pixResX: INTEGER; (* Pixels per inch horzontally *)
  332. pixResY: INTEGER; (* Pixels per inch vertically *)
  333. pixBits: INTEGER; (* Color bits per pixel *)
  334. pixPlanes: INTEGER; (* Color planes per pixel *)
  335. mapTable: ARRAY [0..23] OF rowtblPtr; (* Pointers to rowTable(s) *)
  336. mapActive: INTEGER; (* Active logical page *)
  337. mapPages: INTEGER; (* Number of mapList entries,1-4 *)
  338. mapList: ARRAY [0..3] OF INTEGER; (* List of logical pages loaded *)
  339. mapRsvd: ARRAY [0..5] OF INTEGER; (* (reserved for future use) *)
  340. mapSegment: CARDINAL;(* Map segment *)
  341. mapHandle: CARDINAL; (* Map handle *)
  342. mapManager: adsMem; (* Pointer to paging manager *)
  343. END;
  344. *)
  345. BITMAPPTR , (* POINTER TO BITMAP;*)
  346. (* Bitmap Device Type (devType) Definitions *)
  347. devSTD , (* Standard memory mapped bitmap *)
  348. devEGA , (* IBM EGA/VGA display bitmap *)
  349. devND1 , (* NDI Genesis-1024 bitmap *)
  350. devND2 , (* NDI Genesis-1280 bitmap *)
  351. devHP1 , (* Hewlett Packard1 *)
  352. devEMS , (* EMS expanded memory bitmap *)
  353. devWYS , (* Wyse 1280x800 display bitmap *)
  354. devSIG , (* Sigma Design Color-400 bitmap *)
  355. devLASVU , (* Sigma Design LaserView/plus *)
  356. devVISTA , (* Cornerstone VISTA 1600 *)
  357. devREV512 , (* Number Nine Revolution 512x484 *)
  358. devDUALPG , (* Cornerstone DualPage System *)
  359. devTSENG , (* Tseng labs Bank Select - STB/GENOA/ORCHID *)
  360. devREV2048 , (* #9 2048x4 Bank manager *)
  361. cDevClass , (* "GetBMapField" index definitions *)
  362. cDevType ,
  363. cRowBytes ,
  364. cPixWidth ,
  365. cPixHeight ,
  366. cPixRsX ,
  367. cPixRsY ,
  368. cPixBits ,
  369. cPixPlanes ,
  370. cMapTable ,
  371. METAPORT , (* "metaPort" Data Structure
  372. RECORD
  373. portBMap: BITMAPPTR; (* Pointer to "bitmap" record *)
  374. portRect: GrConst.RECT; (* 'Local' coordinate port bounds *)
  375. portOrgn: GrConst.POINT; (* 'Global' origin of portRect *)
  376. portVirt: GrConst.RECT; (* 'Virtual' port bounds *)
  377. portFlgs: INTEGER; (* Port Flags *)
  378. portClip: GrConst.RECT; (* 'Local' clipping rectangle *)
  379. portRgn: adsMem; (* (reserved) *)
  380. bkPat: INTEGER; (* Background pattern index *)
  381. bkColor: LONGINT; (* Background color *)
  382. pnColor: LONGINT; (* Pen color *)
  383. pnLoc: GrConst.POINT; (* Pen location *)
  384. pnSize: GrConst.POINT; (* Pen size *)
  385. pnMode: INTEGER; (* Pen mode (rasterOp) *)
  386. pnPat: INTEGER; (* Pen pattern index *)
  387. pnCap: INTEGER; (* Pen end-cap style *)
  388. pnJoin: INTEGER; (* Line join style *)
  389. pnDash: INTEGER; (* Line dash style *)
  390. pnOffset: INTEGER; (* Dash sequence offset *)
  391. pnLevel: INTEGER; (* Pen visibility level *)
  392. txFont: adsMem; (* Pointer to current font record *)
  393. txFace: INTEGER; (* Text facing flags *)
  394. txMode: INTEGER; (* Text mode (rasterOp) *)
  395. txUnder: INTEGER; (* Text underline position *)
  396. txScore: INTEGER; (* Text underline scoring *)
  397. txPath: INTEGER; (* Text path *)
  398. txAlign: GrConst.POINT; (* Text alignment *)
  399. txAngle: INTEGER; (* Text angle (stroked) *)
  400. txSize: GrConst.POINT; (* Text size (stroked) *)
  401. txSlant: INTEGER; (* Text slant (stroked) *)
  402. txExtra: INTEGER; (* Text justify bits *)
  403. txSpace: INTEGER; (* Space justify bits *)
  404. mkType: INTEGER; (* Marker type index *)
  405. mkSize: GrConst.POINT; (* Marker size *)
  406. mkAngle: INTEGER; (* Marker angle *)
  407. spare: ARRAY [1..10] OF INTEGER; (* (spares) *)
  408. END;
  409. *)
  410. METAPORTPTR , (* POINTER TO METAPORT;*)
  411. PUSHAREA , (* PUSHGRAFIX/POPGRAFIX savearea
  412. RECORD
  413. saveArea: ARRAY [1..64] OF CARDINAL;
  414. END;
  415. *)
  416. cportBMap , (* "GetPortField" Index Definitions *)
  417. cportRect ,
  418. cportOrgn ,
  419. cportVirt ,
  420. cportFlgs ,
  421. cportClip ,
  422. cportRgn ,
  423. cbkPat ,
  424. cbkColor ,
  425. cpnColor ,
  426. cpnLoc ,
  427. cpnSize ,
  428. cpnMode ,
  429. cpnPat ,
  430. cpnCap ,
  431. cpnJoin ,
  432. cpnDash ,
  433. cpnOffset ,
  434. cpnLevel ,
  435. ctxFont ,
  436. ctxFace ,
  437. ctxMode ,
  438. ctxUnder ,
  439. ctxScore ,
  440. ctxPath ,
  441. ctxAlign ,
  442. ctxAngle ,
  443. ctxSize ,
  444. ctxSlant ,
  445. ctxExtra ,
  446. ctxSpace ,
  447. cmkType ,
  448. cmkSize ,
  449. cmkAngle ,
  450. cspare ,
  451. cxmin ,
  452. cymin ,
  453. cxmax ,
  454. cymax ,
  455. cX ,
  456. cY ,
  457. cseg ,
  458. coff ;
  459. BEGIN
  460. InitGrafix(-562);
  461. SetDisplay(GrafPg0);
  462. SetDisplay(TextPg0);
  463. ClearText;
  464. END esmac.