| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450 |
- (******************************************************************************)
- (* GRCONST.DEF - MetaWINDOW 'Constant' and 'Type' Definitions *)
- (* *)
- (* Transcribed from GRCONST.H by Metagraphics Software Corporation *)
- (* *)
- (* PSW 06/28/91 08:30am *)
- (******************************************************************************)
- (*# module(implementation=>off, init_code=>off) *)
- DEFINITION MODULE GrConst;
- (*
- * Graphix
- * Release 3.7
- * (c) Copyright 1986-1992 PMI
- * Green Bay, Wisconsin
- * (414) 468-6040
- * All rights reserved
- *
- *)
- (**************************** Constant Definitions ****************************)
- CONST
- MS_DOS = 1; (* Operating System: Defaults to DOS *)
- MW_Ver3 = TRUE; (* Generational compatibility constants. *)
- MW_Ver4 = FALSE;
- (*** PENMODE & TEXTMODE RasterOp's ***)
- zREPz = 0;
- zORz = 1;
- zXORz = 2;
- zNANDz = 3;
- zNREPz = 4;
- zNORz = 5;
- zNXORz = 6;
- zANDz = 7;
- (*** Graphics Adaptor Definitions ***)
- ATI800x600 = 533; (* ATI VGAWonder *)
- ATI640x480X = 534; (* 640x480 256-color *)
- ATI1024x768F = 535; (* 1024x768 16-color *)
- ATT = 128; (* AT&T Std. Color & DEB Adaptors *)
- ATT640x400 = 128; (* 640x400 monochrome *)
- DEB640x200 = 129; (* 640x200 16-color *)
- DEB640x400 = 130; (* 640x400 16-color *)
- CGA = 6; (* IBM Color Graphics Adaptor (CGA) *)
- CGA320x200 = 4; (* 320x200 4-color *)
- CGA640x200 = 6; (* 640x200 2-color *)
- COR = 34; (* Cornerstone *)
- COR1600x1280V = 34; (* Vista 1600 1600x1280 mono *)
- COR1600x1280VA = 37; (* Vista 1600 1600x1280 no em, 2 mon *)
- COR1600x1280DP = 35; (* DualPage 1600x1280 mono *)
- COR1600x1280DPA = 36; (* DualPage 1600x1280, no JP1 *)
- COR1600x1280MCA = 39; (* DualPage 1600x1280 Micro Channel *)
- SP768x1008 = 42; (* SinglePage 768x1008 mono *)
- SP768x1008A = 43; (* SinglePage 768x1008 no JP1 *)
- COR1280x960 = 44; (* PC 1280 1280x960, mono *)
- COR1280x960A = 45; (* PC 1280 1280x960, mono *)
- COR1280x1024 = 46; (* PC 1280 1280x1024, mono *)
- COR1280x1024A = 47; (* PC 1280 1280x1024, mono *)
- CT640x480X = 537; (* Chips and Tech. 256 color *)
- CT1024x768 = 538; (* 1024x768, 16 color *)
- EGA = 512; (* IBM Enhanced Graphics Adaptor *)
- EGAMono = 512; (* 640x350 monochrome *)
- EGA320x200 = 544; (* 320x200 16-color *)
- EGA640x200 = 528; (* 640x200 16-color *)
- EGA640x350 = 560; (* 640x350 16-color (128k EGA) *)
- MGA640x350 = 561; (* 640x350 2-color *)
- EGA640x480 = 562; (* 640x480 16-color (VGA) *)
- MGA640x480 = 563; (* 640x480 2-color (MCGA) *)
- VGA320x200 = 564; (* 320x200 256-color (PS2 VGA) *)
- EGA640x350S = 565; (* 640x350 16-color (no bios-EGA) *)
- VGA640x350S = 566; (* 640x350 16-color (no bios-VGA) *)
- VGA640x480S = 567; (* 640x480 16-color (no bios-VGA) *)
- EGA640x350MP = 131; (* IBM EGA, in multi planar setting *)
- JRT320x200 = 569; (* 320x200 16-color IBM PCjr & Tandy 1000 *)
- EVA = 516; (* Tseng Labs EVA/480 *)
- EVA640x480 = 516; (* 640x480 16-color *)
- EVR = 1024; (* Everex Graphics Edge Adaptor *)
- EVR640x200 = 1024; (* 640x200 16-color *)
- EVR640x400 = 1025; (* 640x400 4-color *)
- EVX800x600 = 532; (* Everex EVGA EV-673 Adaptor *)
- EXPL320x200 = 140; (* HeadStart Explorer 320x200 16-color *)
- FKY1120x750 = 2200; (* Fujitsu FMR 70 16 color *)
- FKY640x400 = 2201; (* Fujitsu FMR 60 16 color *)
- FKY1120x750m = 2202; (* Fujitsu FMR 70 monochrome *)
- GEN = 529; (* Genoa SuperEGA HiRes *)
- GEN640x480 = 529; (* 640x480 16-color *)
- GEN800x600 = 518; (* 800x600 16-color *)
- GEN1024x768 = 519; (* Genoa SuperVGA HiRes-10 16-color *)
- GEN640x350X = 530; (* 640x350 256-color *)
- GEN640x480X = 531; (* 640x480 256-color *)
- GEN800x600V = 539; (* 800x600 16-color *)
- (* Genoa SuperVGA (6100/6300/6400) *)
- (* GEN640x350S = 582; * 640x350 256-color *)
- GEN640x480S = 583; (* 640x480 256-color *)
- GEN1024x768S = 584; (* 1024x768 16-color *)
- HER = 8; (* Hercules/AST Monochrome Adaptor *)
- HER720x348 = 8; (* 720x348 monochrome *)
- MDS = 2; (* MDS Genius Graphics Display *)
- MDS736x1008 = 2; (* 736x1008 monochrome *)
- NNR512x512 = 4096; (* Number Nine 512x485 256-color *)
- NNR1024x768 = 4097; (* 2048x4 @ 1024x768x16 *)
- NSI = 514; (* NSI Logic Smart EGA/Plus *)
- NSI800x600 = 514; (* 800x600 16-color *)
- OAK800x600 = 585; (* OAK OTI-067 chip set *)
- OAK1024x768 = 586; (* 1024x768 16 color *)
- OAK640x480X = 587; (* 640x480 256 color *)
- OCD800x600 = 571; (* Orchid Designer VGA 800x600x16 *)
- OCD1024x768 = 572; (* 1024x768 16 color *)
- OCD640x350X = 573; (* 640x350 256 color *)
- OCD640x480X = 574; (* 640x480 256 color *)
- PAR = 517; (* Paradise AutoSwitch EGA/480 *)
- PAR640x480 = 517; (* 640x480 16-color *)
- PAR800x600 = 579; (* Paradise 800x600 16-color *)
- PAR1024x768 = 580; (* 1024x768 16-color *)
- PAR640x480x = 581; (* 640x480 256-color *)
- SIG = 32; (* Sigma Design *)
- SIG640x400 = 32; (* 640x400 16-color, Color-400 *)
- SIG1664x1200 = 33; (* LaserView 1664x1200 monochome *)
- SIG1664x1200A = 38; (* 1664x1200 @0A000 *)
- SIG1664x1200MCA = 41; (* 1664x1200 Micro channel *)
- STB = 256; (* STB GraphicsPlus-II Adaptor *)
- STB640x352 = 256; (* 640x352 monochrome *)
- STB320x200 = 257; (* 320x200 16-color *)
- STB640x200 = 258; (* 640x200 4-color *)
- STB640x400 = 384; (* 640x400 monochrome *)
- STB800x600 = 571; (* STB VGA Extra/EM 800x600x16 *)
- STB1024x768 = 572; (* 1024x768 16 color *)
- STB640x350X = 573; (* 640x350 256 color *)
- STB640x480X = 574; (* 640x480 256 color *)
- TEC = 16; (* Tecmar Graphics-Master Adaptor *)
- TEC720x352 = 16; (* 720x352 monochrome *)
- TEC720x704 = 17; (* 720x704 monochrome *)
- TEC320x200 = 18; (* 320x200 16-color *)
- TEC640x200 = 19; (* 640x200 16-color *)
- TEC640x400 = 20; (* 640x400 16-color *)
- TEC640x350X = 575; (* Tecmar VGA/AD, 640x350 256-color *)
- TEC640x480X = 576; (* 640x480 256-color *)
- TEC800x600 = 577; (* 800x600 16-color *)
- TEC1024x768 = 578; (* 1024x768 16-color *)
- TOS = 16384; (* Toshiba 3100 *)
- TOS640x400 = 16384; (* 640x400 monochrome *)
- TRI800x600 = 588; (* Trident Impact SuperVGA, 16 color *)
- TRI1024x768 = 589; (* 1024x768x16 color *)
- TRI640x480x = 590; (* 640x480x256 color *)
- TRI800x600x = 591; (* 800x600x256 color *)
- TRI1024x768x = 592; (* 1024x768x256 color *)
- TARG512x482 = 8192; (* TrueVision Targa M8 512x482 256-color *)
- (* Tseng Labs 4000 chip set *)
- (* TS41024x768 = 540 This chip does not work in 128k flat mode *)
- TS4640x350x = 541; (* 640x350x256 *)
- TS4640x480x = 542; (* 640x480x256 *)
- TS4800x600x = 543; (* 800x600x256 *)
- TS41024x768x = 545; (* 1024x768x256 *)
- TTS = 2048; (* IBM 3270 PC *)
- TTS720x350 = 2048; (* 720x350 monochrome *)
- TTS360x350 = 2049; (* 360x350 4-color *)
- VESA800x600 = 526; (* V.E.S.A. std 800x600 16-color *)
- VGA = 520; (* Video-7 VEGA Deluxe *)
- VGA640x480 = 520; (* 640x480 16-color *)
- VGA752x410 = 521; (* 752x410 16-color *)
- VGA720x540 = 522; (* V7 VGA 720x540 16-color *)
- VGA800x600 = 523; (* 800x600 16-color (VGA) *)
- VGA640x480X = 525; (* V7 640x480 256-color *)
- VGA1024x768x2 = 527; (* 1024x768 2-color *)
- VGA1024x768 = 536; (* VGA 1024 i 1024x768 16-color *)
- WYS = 64; (* Wyse WY-700 Graphics Display *)
- WYS1280x800 = 64; (* 1280x800 monochrome *)
- WYS1280x400 = 65; (* 1280x400 monochrome *)
- WYS640x400 = 66; (* 640x400 monochrome *)
- MEC1120x750 = 610; (* NEC PC 98XA monochrome *)
- MEC640x400 = 611; (* NEC PC 98VM monochrome *)
- NEC1120x750 = 626; (* NEC PC 98XA 16-color *)
- NEC640x400 = 627; (* NEC PC 98VM 16-color *)
- (* Defines for National Design Genesis-1024/1280 *)
- NDI640x480x4D = 4140H; (* 640x480 16-color, digitl *)
- NDI640x480x4A = 4141H; (* 640x480 16-color, analog *)
- NDI1024x768x4J = 4148H; (* 1024x768 16-color, JVC *)
- NDI1024x768x4M = 4149H; (* 1024x768 16-color, Mitsu. *)
- NDI1280x1024x4J = 414AH; (* 1280x1024 16-color, JVC *)
- NDI960x720x4N = 414BH; (* 960x720 16-color, NEC XL *)
- (* Defines for RenaissanceGRX Rendition-II *)
- GRX640x480x4A = 4240H; (* 640x480 16-color, analog *)
- GRX800x600x4A = 4242H; (* 800x600 16-color, analog *)
- GRX1024x768x4A = 4246H; (* 1024x768 16-color, analog *)
- GRX640x480x8A = 4248H; (* 640x480 256-color, analog *)
- GRX800x600x8A = 424AH; (* 800x600 256-color, analog *)
- GRX1024x768x8A = 424CH; (* 1024x768 256-color, analog *)
- (* Defines for Hewlett-Packard HP82328 IGC *)
- HP1024x768x4 = 664AH; (* 1024x768 16-color *)
- (* Defines for IBM 8514A (and compatibles) *)
- EFF640x480x4 = 7000H; (* 640x480 16-color *)
- EFF640x480x8 = 7001H; (* 640x480 256-color *)
- EFF1024x768x4I = 7040H; (* 1024x768 16-color, intlacd *)
- EFF1024x768x4N = 7041H; (* 1024x768 16-color, non-inl *)
- EFF1024x768x8I = 7042H; (* 1024x768 256-color, intlacd *)
- EFF1024x768x8N = 7043H; (* 1024x768 256-color, non-inl *)
- EFF1280x1024x4I = 7080H; (* 1280x1024 16-color, intlacd *)
- EFF1280x1024x4N = 7081H; (* 1280x1024 16-color, non-inl *)
- EFF1280x1024x8I = 7082H; (* 1280x1024 256-color, intlacd *)
- EFF1280x1024x8N = 7083H; (* 1280x1024 256-color, non-inl *)
- CUST_LIN = CGA640x200; (* User defined linear memory *)
- CUST_BS = SIG640x400; (* User defined Bank select *)
- CUST_EGA = EGA640x350; (* User defined EGA Superset *)
- (*** HardCopy Constant definitions. ***)
- HC_ROT = 01H; (* When set, rotate pic 90 CCW *)
- HC_XL = 08H; (* When set, disables default background xlate *)
- HC_ASC = 10H; (* When set, emits ascii length, instead of hex *)
- (* Typically used for HP LaserJet printers *)
- (*** Mouse Definitions ***)
- COM1 = 1; (* Mouse Systems mouse, COM1 *)
- COM2 = 2; (* Mouse Systems mouse, COM2 *)
- (* MsMouse = 16; Microsoft Bus Mouse - obselete *)
- MsCOM1 = 17; (* Microsoft Serial Mouse, COM1 *)
- MsCOM2 = 18; (* Microsoft Serial Mouse, COM2 *)
- MsDriver = 32; (* Microsoft Mouse driver *)
- FKYMsDriver = 128; (* FKY Microsoft Mouse driver, uses int 99*)
- swRight = 1;
- swMiddle = 2; (* (not on 2 button mice) *)
- swLeft = 4;
- swAll = 7;
- Black = 0; (* all bits OFF *)
- White = -1; (* all bits ON *)
- TextPg0 = 0;
- GrafPg0 = 256;
- GrafPg1 = 257;
- ScrnXmin = 0;
- ScrnYmin = 0;
- cNormal = 0; (* TEXTFACE *)
- cBold = 1;
- cItalic = 2;
- cUnderline = 4;
- cStrikeout = 8;
- cMirrorX = 32;
- cMirrorY = 64;
- cProportional = 128;
- alignLeft = 0; (* TEXTALIGN - Horizontal *)
- alignCenter = 1;
- alignRight = 2;
- alignBaseline = 0; (* TEXTALIGN - Vertical *)
- alignBottom = 1;
- alignMiddle = 2;
- alignTop = 3;
- pathRight = 0; (* TEXTPATH definitions *)
- pathUp = 900;
- pathLeft = 1800;
- pathDown = 2700;
- capFlat = 0; (* PENCAP definitions *)
- capRound = 1;
- capSquare = 2;
- joinRound = 0; (* PENJOIN definitions *)
- joinBevel = 1;
- joinMiter = 2;
- (*** TYPE Definitions. ***)
- TYPE
- image = BYTE;
- point = RECORD (* "Point" structure type *)
- X, (* X coordinate *)
- Y: INTEGER (* Y coordinates *)
- END;
- adsPoint = POINTER TO point;
- rect = RECORD (* "Rectangle" structure type *)
- Xmin, (* minimum X *)
- Ymin, (* minimum Y *)
- Xmax, (* maximum X *)
- Ymax: INTEGER (* maximum Y *)
- END;
- polyHead = RECORD (* Polygon "header" structure *)
- polyBgn, (* beginning index *)
- polyEnd: CARDINAL; (* ending index *)
- polyRect: rect; (* boundry limits *)
- END;
- adsPolyHead = POINTER TO polyHead;
- (*%T MW_Ver3 *)
- event = RECORD (* Event record structure *)
- ASCII: CHAR; (* ASCII character code *)
- ScanCode: BYTE; (* Keyboard scan code *)
- State: CARDINAL; (* Keyboard & mouse switches *)
- CursorX, (* Cursor X position *)
- CursorY, (* Cursor Y position *)
- Time: INTEGER; (* System time of event *)
- evntData: LONGINT; (* User defined 32 bit item *)
- END;
- (*%E MW_Ver3 *)
- (*%T MW_Ver4 *)
- event = RECORD (* Event record structure *)
- evntASCII: CHAR; (* ASCII character code *)
- evntScanCode: BYTE; (* Keyboard scan code *)
- evntState: CARDINAL; (* Keyboard & mouse switches *)
- evntCursorX, (* Cursor X position *)
- evntCursorY, (* Cursor Y position *)
- evntTime: INTEGER; (* System time of event *)
- evntData: LONGINT; (* User defined 32 bit item *)
- END;
- (*%E MW_Ver4 *)
- cursor = RECORD (* Cursor Image definition *)
- curWidth, (* must be 16 *)
- curHeight, (* must be 16 *)
- curAlign, (* must be 0 *)
- curRowBytes: CARDINAL; (* must be 2 *)
- curBits, (* must be 1 *)
- curPlanes: SHORTCARD; (* must be 1 *)
- curData: ARRAY [0..31] OF BYTE; (* cursor data bytes *)
- END;
- patRcd = RECORD (* Pattern Image definition *)
- patWidth, (* must be 8 *)
- patHeight, (* must be 8 *)
- patAlign, (* must be zero *)
- patRowBytes: CARDINAL; (* must be equal to patBits *)
- patBits, (* value of 1,2,4 or 8 *)
- patPlanes: SHORTCARD; (* value of 1 thru 32 *)
- patData: ARRAY[0..31] OF BYTE;(* pattern data bytes *)
- END;
- penState = RECORD (* Pen State record structure *)
- psBkColor, (* Background color *)
- psPnColor: LONGINT; (* Pen color *)
- psPnLoc, (* Pen location *)
- psPnSize: point; (* Pen size *)
- psPnMode, (* Pen mode (rasterOp) *)
- psPnPat, (* Pen pattern index *)
- psPnCap, (* Pen end-cap style *)
- psPnJoin, (* Line join style *)
- psPnDash, (* Line dash style *)
- psPnOffset, (* Dash starting offset *)
- psPnLevel: CARDINAL; (* Pen visibility level *)
- END;
- dirRec = RECORD (* FILEQUERY - directory record *)
- reserved: ARRAY[0..20] OF BYTE; (* (DOS reserved) *)
- fileAttr: BYTE; (* File attribute *)
- fileTime: CARDINAL; (* File create time *)
- fileDate: CARDINAL; (* File create date *)
- fileSize: LONGCARD; (* File size (bytes) *)
- fileName: ARRAY[0..13] OF CHAR; (* "FILENAME.EXT\0" *)
- END;
- imageHeader = RECORD (* Image Header record structure *)
- imWidth, (* Pixel width (X) *)
- imHeight, (* Pixel height (Y) *)
- imAlign, (* Image alignment *)
- imRowBytes:CARDINAL; (* Bytes per row *)
- imBits, (* Bits per pixel *)
- imPlanes: SHORTCARD; (* Planes per pixel *)
- (* char imData[]; *) (* (image data, variable length) *)
- END;
- adsImage = POINTER TO imageHeader;
- dashRcd = RECORD (* DEFINEDASH data record *)
- nCnts, (* number of active entries, 1-8 *)
- cnt1, (* distance ON, 1 *)
- cnt2, (* distance OFF, 2 *)
- cnt3, (* distance ON, 3 *)
- cnt4, (* distance OFF, 4 *)
- cnt5, (* distance ON, 5 *)
- cnt6, (* distance OFF, 6 *)
- cnt7, (* distance ON, 7 *)
- cnt8: CARDINAL; (* distance OFF, 8 *)
- END;
- (* Write/ReadPalette *)
- palData = RECORD
- palRed,
- palGreen,
- palBlue: WORD;
- END;
- (* HardCopy Types *)
- (* The following allow objects of type HCInfoRec to be initialised using *)
- (* TopSpeed Modula-2 agregate initialisation (see HARDCOPY.MOD) *)
- init = ARRAY [0..1FH] OF BYTE; (* The printer init code(s). *)
- reset = ARRAY [0..0FH] OF BYTE; (* Printer clean up code(s) *)
- header = ARRAY [0..07H] OF BYTE; (* Sent before every line *)
- pstam = ARRAY [0..07H] OF BYTE; (* Sent after length spec *)
- trailer = ARRAY [0..0FH] OF BYTE; (* Sent after every line *)
- hcSIG = ARRAY [0..01H] OF BYTE; (* Set to 'HC' for validity check *)
- xlaTable = ARRAY [0..0FH] OF BYTE; (* Color translation table *)
- HCInfoRec = RECORD
- pins, (* Number of elements in print swath. *)
- (* Use 1 for Laser printers *)
- inlen: INTEGER; (* Number of bytes in following string *)
- init: init; (* The printer init code(s). *)
- rslen: INTEGER; (* Number of bytes in following string *)
- reset: reset; (* Printer clean up code(s) *)
- hdlen: INTEGER; (* Number of bytes in following string *)
- header: header; (* Sent before every line *)
- pstlen: INTEGER; (* Number of bytes in following string *)
- pstam: pstam; (* Sent after length spec *)
- trlen: INTEGER; (* Number of bytes in following string *)
- trailer: trailer; (* Sent after every line *)
- hcMode: INTEGER; (* Operational mode bits *)
- prtPort: INTEGER; (* System printer port, 0-3 or 80-83 *)
- hcSIG: hcSIG; (* Set to 'HC' for validity check *)
- xlatMask: INTEGER; (* Max color number in xlaTable *)
- xlaTable: xlaTable; (* Color translation table *)
- END;
- mapArray = ARRAY [0..7] OF INTEGER; (* CursorMap data record *)
- (* Sample User Definable Types: *)
- CCBtype = RECORD (*User Definable Clock_Communication_Block*)
- Timer: CARDINAL;
- tX,
- tY,
- tSw: INTEGER;
- END;
- MCBtype = RECORD (*User Definable Mouse_Communication_Block*)
- mX,
- mY,
- mSw: INTEGER;
- END;
- colrTable = ARRAY [0..15] OF LONGINT;
- END GrConst.
|