supermario/base/SuperMarioProj.1994-02-09/Interfaces/RIncludes/Pict.r
2019-06-29 23:17:50 +08:00

1619 lines
53 KiB
R
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/*
File: Pict.r
Contains: Rez template for PICT resources.
Written by: Dean & Mitch. (We didnt really write this, but we got to change this line, so
we put our names here.)
Copyright: © 1986-1992 by Apple Computer, Inc., all rights reserved.
Change History (most recent first):
<5> 6/24/92 DCL Changed #ifndef __PICT.R__ to __PICT_R__ at the request of the
MPW team (3.2.3 rez broke on the periods)
<4> 2/20/92 DTY Don breaks his first build. Change the semi-colons after all the
notPatBics back to commas.
<3> 2/20/92 DCL Fixing transfer modes. notPatXor had been left out. Radar
#1016119
<2> 3/6/91 DTY mda: Defined structures for FontName, LineJustify,
DirectBitsRect, & DirectBitsRgn. Fixed the opcode for DHDVText.
Added oldPICTCompatible define to keep build working while
allowing transition to new template which defines the
ExtendedVersion2HeaderOp. Additional aesthetic mungings by
Darin.
<1> 3/5/90 BBH first checked in
3/20/89 THT added #ifndef __PICT.R__
12/03/87 THT created
To Do:
Change the #define for oldPICTCompatible to false and make everyone update their PICT 2 so they dont
break with the new template.
*/
#ifndef __PICT_R__
#define __PICT_R__
#ifndef oldPICTCompatible
#define oldPICTCompatible true
#endif
type 'PICT' {
startOfPict:
unsigned integer = (endOfPict - startOfPict) >> 3;
Rect; /* Bounds of picture */
switch {
case VersionOne:
key integer = $1101;
array OpCodes {
switch {
case NOP:
key byte = $00;
case ClipRgn:
key byte = $01;
ClipRgnStart: integer = (ClipRgnEnd[$$ArrayIndex(OpCodes)] - ClipRgnStart[$$ArrayIndex(OpCodes)]) >> 3;
Rect; /* regions enclosing rect */
hex string [$$Word(ClipRgnStart[$$ArrayIndex(OpCodes)]) - 10];
ClipRgnEnd:
case BkPat:
key byte = $02;
hex string [8];
case TxFont:
key byte = $03;
integer; /* font */
case TxFace:
key byte = $04;
unsigned hex byte; /* text face */
case TxMode:
key byte = $05;
integer srcCopy, srcOr, srcXor, srcBic, /* mode */
notSrcCopy, notSrcOr, notSrcXor, notSrcBic,
patCopy, patOr, patXor, patBic,
notPatCopy, notPatOr, notPatXor, notPatBic;
case SpExtra:
key byte = $06;
unsigned hex longint;
case PnSize:
key byte = $07;
Point;
case PnMode:
key byte = $08;
unsigned hex integer;
case PnPat:
key byte = $09;
hex string [8];
case ThePat:
key byte = $0A;
hex string [8];
case OvSize:
key byte = $0B;
Point;
case Origin:
key byte = $0C;
integer; /* dh */
integer; /* dv */
case TxSize:
key byte = $0D;
integer;
case FgColor:
key byte = $0E;
longint;
case BkColor:
key byte = $0F;
longint;
case TxRatio:
key byte = $10;
Point; /* numer */
Point; /* denom */
case PicVersion:
key byte = $11;
byte;
case Line:
key byte = $20;
Point; /* pnLoc */
Point; /* newPt */
case LineFrom:
key byte = $21;
Point; /* newPt */
case ShortLine:
key byte = $22;
Point; /* pnLoc */
byte; /* dh */
byte; /* dv */
case ShortLineFrom:
key byte = $23;
byte; /* dh */
byte; /* dv */
case LongText:
key byte = $28;
Point; /* txLoc */
pstring;
case dhText:
key byte = $29;
byte; /* dh */
pstring;
case dvText:
key byte = $2A;
byte; /* dvh */
pstring;
case dhdvText:
key byte = $2B;
byte; /* dh */
byte; /* dv */
pstring;
case FrameRect:
key byte = $30;
Rect;
case PaintRect:
key byte = $31;
Rect;
case EraseRect:
key byte = $32;
Rect;
case InvertRect:
key byte = $33;
Rect;
case FillRect:
key byte = $34;
Rect;
case FrameSameRect:
key byte = $38;
case PaintSameRect:
key byte = $39;
case EraseSameRect:
key byte = $3A;
case InvertSameRect:
key byte = $3B;
case FillSameRect:
key byte = $3C;
case FrameRRect:
key byte = $40;
Rect;
case PaintRRect:
key byte = $41;
Rect;
case EraseRRect:
key byte = $42;
Rect;
case InvertRRect:
key byte = $43;
Rect;
case FillRRect:
key byte = $44;
Rect;
case FrameSameRRect:
key byte = $48;
case PaintSameRRect:
key byte = $49;
case EraseSameRRect:
key byte = $4A;
case InvertSameRRect:
key byte = $4B;
case FillSameRRect:
key byte = $4C;
case FrameOval:
key byte = $50;
Rect;
case PaintOval:
key byte = $51;
Rect;
case EraseOval:
key byte = $52;
Rect;
case InvertOval:
key byte = $53;
Rect;
case FillOval:
key byte = $54;
Rect;
case FrameSameOval:
key byte = $58;
case PaintSameOval:
key byte = $59;
case EraseSameOval:
key byte = $5A;
case InvertSameOval:
key byte = $5B;
case FillSameOval:
key byte = $5C;
case FrameArc:
key byte = $60;
Rect;
integer; /* startAngle */
integer; /* arcAngle */
case PaintArc:
key byte = $61;
Rect;
integer; /* startAngle */
integer; /* arcAngle */
case EraseArc:
key byte = $62;
Rect;
integer; /* startAngle */
integer; /* arcAngle */
case InvertArc:
key byte = $63;
Rect;
integer; /* startAngle */
integer; /* arcAngle */
case FillArc:
key byte = $64;
Rect;
integer; /* startAngle */
integer; /* arcAngle */
case FrameSameArc:
key byte = $68;
integer; /* startAngle */
integer; /* arcAngle */
case PaintSameArc:
key byte = $69;
integer; /* startAngle */
integer; /* arcAngle */
case EraseSameArc:
key byte = $6A;
integer; /* startAngle */
integer; /* arcAngle */
case InvertSameArc:
key byte = $6B;
integer; /* startAngle */
integer; /* arcAngle */
case FillSameArc:
key byte = $6C;
integer; /* startAngle */
integer; /* arcAngle */
case FramePoly:
key byte = $70;
integer = $$CountOf(PolyPoints) * 4 + 10;
Rect; /* enclosing rectangle */
wide array PolyPoints { Point; };
case PaintPoly:
key byte = $71;
integer = $$CountOf(PolyPoints) * 4 + 10;
Rect; /* enclosing rectangle */
wide array PolyPoints { Point; };
case ErasePoly:
key byte = $72;
integer = $$CountOf(PolyPoints) * 4 + 10;
Rect; /* enclosing rectangle */
wide array PolyPoints { Point; };
case InvertPoly:
key byte = $73;
integer = $$CountOf(PolyPoints) * 4 + 10;
Rect; /* enclosing rectangle */
wide array PolyPoints { Point; };
case FillPoly:
key byte = $74;
integer = $$CountOf(PolyPoints) * 4 + 10;
Rect; /* enclosing rectangle */
wide array PolyPoints { Point; };
case FrameSamePoly:
key byte = $78;
case PaintSamePoly:
key byte = $79;
case EraseSamePoly:
key byte = $7A;
case InvertSamePoly:
key byte = $7B;
case FillSamePoly:
key byte = $7C;
case FrameRgn:
key byte = $80;
FrameRgnStart: integer = (FrameRgnEnd[$$ArrayIndex(OpCodes)] - FrameRgnStart[$$ArrayIndex(OpCodes)]) >> 3;
Rect; /* regions enclosing rect */
hex string [$$Word(FrameRgnStart[$$ArrayIndex(OpCodes)]) - 10];
FrameRgnEnd:
case PaintRgn:
key byte = $81;
PaintRgnStart: integer = (PaintRgnEnd[$$ArrayIndex(OpCodes)] - PaintRgnStart[$$ArrayIndex(OpCodes)]) >> 3;
Rect; /* regions enclosing rect */
hex string [$$Word(PaintRgnStart[$$ArrayIndex(OpCodes)]) - 10];
PaintRgnEnd:
case EraseRgn:
key byte = $82;
EraseRgnStart: integer = (EraseRgnEnd[$$ArrayIndex(OpCodes)] - EraseRgnStart[$$ArrayIndex(OpCodes)]) >> 3;
Rect; /* regions enclosing rect */
hex string [$$Word(EraseRgnStart[$$ArrayIndex(OpCodes)]) - 10];
EraseRgnEnd:
case InvertRgn:
key byte = $83;
InvertRgnStart: integer = (InvertRgnEnd[$$ArrayIndex(OpCodes)] - InvertRgnStart[$$ArrayIndex(OpCodes)]) >> 3;
Rect; /* regions enclosing rect */
hex string [$$Word(InvertRgnStart[$$ArrayIndex(OpCodes)]) - 10];
InvertRgnEnd:
case FillRgn:
key byte = $84;
FillRgnStart: integer = (FillRgnEnd[$$ArrayIndex(OpCodes)] - FillRgnStart[$$ArrayIndex(OpCodes)]) >> 3;
Rect; /* regions enclosing rect */
hex string [$$Word(FillRgnStart[$$ArrayIndex(OpCodes)]) - 10];
FillRgnEnd:
case FrameSameRgn:
key byte = $88;
case PaintSameRgn:
key byte = $89;
case EraseSameRgn:
key byte = $8A;
case InvertSameRgn:
key byte = $8B;
case FillSameRgn:
key byte = $8C;
case BitsRect:
key byte = $90;
BitsRectRowBytes: integer; /* row bytes */
BitsRectBounds: Rect; /* bounds */
Rect; /* srcRect */
Rect; /* destRect */
integer srcCopy, srcOr, srcXor, srcBic, /* mode */
notSrcCopy, notSrcOr, notSrcXor, notSrcBic,
patCopy, patOr, patXor, patBic,
notPatCopy, notPatOr, notPatXor, notPatBic;
hex string [($$BitField(BitsRectBounds[$$ArrayIndex(OpCodes)],32,16)
- $$BitField(BitsRectBounds[$$ArrayIndex(OpCodes)],0,16))
* $$Word(BitsRectRowBytes[$$ArrayIndex(OpCodes)])];
case BitsRgn:
key byte = $91;
BitsRgnRowBytes: integer; /* row bytes */
BitsRgnBounds: Rect; /* bounds */
Rect; /* srcRect */
Rect; /* destRect */
integer srcCopy, srcOr, srcXor, srcBic, /* mode */
notSrcCopy, notSrcOr, notSrcXor, notSrcBic,
patCopy, patOr, patXor, patBic,
notPatCopy, notPatOr, notPatXor, notPatBic;
BitsRgnStart: integer = (BitsRgnEnd[$$ArrayIndex(OpCodes)] - BitsRgnStart[$$ArrayIndex(OpCodes)]) >> 3;
Rect; /* regions enclosing rect */
hex string [$$Word(BitsRgnStart[$$ArrayIndex(OpCodes)]) - 10];
BitsRgnEnd:
hex string [($$BitField(BitsRgnBounds[$$ArrayIndex(OpCodes)],32,16)
- $$BitField(BitsRgnBounds[$$ArrayIndex(OpCodes)],0,16))
* $$Word(BitsRgnRowBytes[$$ArrayIndex(OpCodes)])];
case PackBitsRect:
key byte = $98;
PackBitsRectRowBytes: integer; /* row bytes */
PackBitsRectBounds: Rect; /* bounds */
Rect; /* srcRect */
Rect; /* destRect */
integer srcCopy, srcOr, srcXor, srcBic, /* mode */
notSrcCopy, notSrcOr, notSrcXor, notSrcBic,
patCopy, patOr, patXor, patBic,
notPatCopy, notPatOr, notPatXor, notPatBic;
PackBitsBits: hex string [$$PackedSize(PackBitsBits[$$ArrayIndex(OpCodes)],
$$Word(PackBitsRectRowBytes[$$ArrayIndex(OpCodes)]),
($$BitField(PackBitsRectBounds[$$ArrayIndex(OpCodes)],32,16)
- $$BitField(PackBitsRectBounds[$$ArrayIndex(OpCodes)],0,16)))];
case PackBitsRgn:
key byte = $99;
PackBitsRgnRowBytes: integer; /* row bytes */
PackBitsRgnBounds: Rect; /* bounds */
Rect; /* srcRect */
Rect; /* destRect */
integer srcCopy, srcOr, srcXor, srcBic, /* mode */
notSrcCopy, notSrcOr, notSrcXor, notSrcBic,
patCopy, patOr, patXor, patBic,
notPatCopy, notPatOr, notPatXor, notPatBic;
PackBitsRgnStart: integer = (PackBitsRgnEnd[$$ArrayIndex(OpCodes)] - PackBitsRgnStart[$$ArrayIndex(OpCodes)]) >> 3;
Rect; /* regions enclosing rect */
hex string [$$Word(PackBitsRgnStart[$$ArrayIndex(OpCodes)]) - 10];
PackBitsRgnEnd: hex string [$$PackedSize(PackBitsRgnEnd[$$ArrayIndex(OpCodes)],
$$Word(PackBitsRgnRowBytes[$$ArrayIndex(OpCodes)]),
($$BitField(PackBitsRgnBounds[$$ArrayIndex(OpCodes)],32,16)
- $$BitField(PackBitsRgnBounds[$$ArrayIndex(OpCodes)],0,16)))];
case ShortComment:
key byte = $A0;
integer; /* kind */
case LongComment:
key byte = $A1;
integer; /* kind */
LongCommentStart: integer = (LongCommentEnd[$$ArrayIndex(OpCodes)] - LongCommentStart[$$ArrayIndex(OpCodes)] - 16) >> 3;
hex string [$$Word(LongCommentStart[$$ArrayIndex(OpCodes)])];
LongCommentEnd:
};
};
byte = $FF; /* End of picture */
case VersionTwo:
key longint = $001102ff; /* Version op + version */
array OpCodes {
switch {
case Clip:
key integer = $0001;
ClipStart: integer = (ClipEnd[$$ArrayIndex(OpCodes)] - ClipStart[$$ArrayIndex(OpCodes)]) >> 3;
Rect; /* regions enclosing rect */
hex string [$$Word(ClipStart[$$ArrayIndex(OpCodes)]) - 10];
ClipEnd:
case BkPat:
key integer = $0002;
hex string [8];
case TxFont:
key integer = $0003;
integer; /* font */
case TxFace:
key integer = $0004;
unsigned hex byte; /* text face */
case TxMode:
key integer = $0005;
integer srcCopy, srcOr, srcXor, srcBic, /* mode */
notSrcCopy, notSrcOr, notSrcXor, notSrcBic,
patCopy, patOr, patXor, patBic,
notPatCopy, notPatOr, notPatXor, notPatBic;
case SpExtra:
key integer = $0006;
unsigned hex longint;
case PnSize:
key integer = $0007;
Point;
case PnMode:
key integer = $0008;
unsigned hex integer;
case PnPat:
key integer = $0009;
hex string [8];
case FillPat:
key integer = $000A;
hex string [8];
case OvSize:
key integer = $000B;
Point;
case Origin:
key integer = $000C;
integer; /* dh */
integer; /* dv */
case TxSize:
key integer = $000D;
integer;
case FgColor:
key integer = $000E;
longint;
case BkColor:
key integer = $000F;
longint;
case TxRatio:
key integer = $0010;
Point; /* numer */
Point; /* denom */
case Version:
key integer = $0011;
byte;
case BkPixPat:
key integer = $0012;
switch {
case newPattern:
key integer = 1;
hex string [8]; /* old-style pattern */
unsigned bitstring[1] = 1; /* New pixMap flag */
unsigned bitstring[2] = 0; /* Must be 0 */
BkPixPatpMapRowBytes: unsigned bitstring[13]; /* Offset to next row */
BkPixPatBounds: rect; /* Bitmap bounds */
integer; /* pixMap vers number */
integer unpacked; /* Packing format */
unsigned longint; /* Size of pixel data */
unsigned hex longint; /* h. resolution (ppi) (fixed) */
unsigned hex longint; /* v. resolution (ppi) (fixed) */
integer chunky, chunkyPlanar, planar; /* Pixel storage format */
integer; /* # bits in pixel */
integer; /* # components in pixel*/
integer; /* # bits per field */
unsigned longint; /* Offset to next plane */
unsigned longint; /* Offset to color table*/
fill long; /* Reserved */
/* Color Table */
unsigned hex longint; /* ctSeed */
integer; /* ctFlags */
integer = $$Countof(ColorSpec) - 1; /* ctSize */
wide array ColorSpec {
integer; /* value */
unsigned integer; /* RGB: red */
unsigned integer; /* green */
unsigned integer; /* blue */
};
/* If rowBytes < 8 then data is unpacked,
if >= 8, then data is packed */
BkPixPatBits: hex string [($$BitField(BkPixPatpMapRowBytes[$$ArrayIndex(OpCodes)],0,13) < 8) *
$$BitField(BkPixPatpMapRowBytes[$$ArrayIndex(OpCodes)],0,13) +
($$BitField(BkPixPatpMapRowBytes[$$ArrayIndex(OpCodes)],0,13) >= 8) *
$$PackedSize(BkPixPatBits[$$ArrayIndex(OpCodes)],
$$BitField(BkPixPatpMapRowBytes[$$ArrayIndex(OpCodes)],0,13),
($$BitField(BkPixPatBounds[$$ArrayIndex(OpCodes)],32,16)
- $$BitField(BkPixPatBounds[$$ArrayIndex(OpCodes)],0,16)))];
case ditherPattern:
key integer = 2;
hex string [8]; /* old-style pattern */
unsigned integer; /* RGB: red */
unsigned integer; /* green */
unsigned integer; /* blue */
};
case PnPixPat:
key integer = $0013;
switch {
case newPattern:
key integer = 1;
hex string [8]; /* old-style pattern */
unsigned bitstring[1] = 1; /* New pixMap flag */
unsigned bitstring[2] = 0; /* Must be 0 */
PnPixPatpMapRowBytes: unsigned bitstring[13]; /* Offset to next row */
PnPixPatBounds: rect; /* Bitmap bounds */
integer; /* pixMap vers number */
integer unpacked; /* Packing format */
unsigned longint; /* Size of pixel data */
unsigned hex longint; /* h. resolution (ppi) (fixed) */
unsigned hex longint; /* v. resolution (ppi) (fixed) */
integer chunky, chunkyPlanar, planar; /* Pixel storage format */
integer; /* # bits in pixel */
integer; /* # components in pixel*/
integer; /* # bits per field */
unsigned longint; /* Offset to next plane */
unsigned longint; /* Offset to color table*/
fill long; /* Reserved */
/* Color Table */
unsigned hex longint; /* ctSeed */
integer; /* ctFlags */
integer = $$Countof(ColorSpec) - 1; /* ctSize */
wide array ColorSpec {
integer; /* value */
unsigned integer; /* RGB: red */
unsigned integer; /* green */
unsigned integer; /* blue */
};
/* If rowBytes < 8 then data is unpacked,
if >= 8, then data is packed */
PnPixPatBits: hex string [($$BitField(PnPixPatpMapRowBytes[$$ArrayIndex(OpCodes)],0,13) < 8) *
$$BitField(PnPixPatpMapRowBytes[$$ArrayIndex(OpCodes)],0,13) +
($$BitField(PnPixPatpMapRowBytes[$$ArrayIndex(OpCodes)],0,13) >= 8) *
$$PackedSize(PnPixPatBits[$$ArrayIndex(OpCodes)],
$$BitField(PnPixPatpMapRowBytes[$$ArrayIndex(OpCodes)],0,13),
($$BitField(PnPixPatBounds[$$ArrayIndex(OpCodes)],32,16)
- $$BitField(PnPixPatBounds[$$ArrayIndex(OpCodes)],0,16)))];
case ditherPattern:
key integer = 2;
hex string [8]; /* old-style pattern */
unsigned integer; /* RGB: red */
unsigned integer; /* green */
unsigned integer; /* blue */
};
case FillPixPat:
key integer = $0014;
switch {
case newPattern:
key integer = 1;
hex string [8]; /* old-style pattern */
unsigned bitstring[1] = 1; /* New pixMap flag */
unsigned bitstring[2] = 0; /* Must be 0 */
FillPixPatpMapRowBytes: unsigned bitstring[13]; /* Offset to next row */
FillPixPatBounds: rect; /* Bitmap bounds */
integer; /* pixMap vers number */
integer unpacked; /* Packing format */
unsigned longint; /* Size of pixel data */
unsigned hex longint; /* h. resolution (ppi) (fixed) */
unsigned hex longint; /* v. resolution (ppi) (fixed) */
integer chunky, chunkyPlanar, planar; /* Pixel storage format */
integer; /* # bits in pixel */
integer; /* # components in pixel*/
integer; /* # bits per field */
unsigned longint; /* Offset to next plane */
unsigned longint; /* Offset to color table*/
fill long; /* Reserved */
/* Color Table */
unsigned hex longint; /* ctSeed */
integer; /* ctFlags */
integer = $$Countof(ColorSpec) - 1; /* ctSize */
wide array ColorSpec {
integer; /* value */
unsigned integer; /* RGB: red */
unsigned integer; /* green */
unsigned integer; /* blue */
};
/* If rowBytes < 8 then data is unpacked,
if >= 8, then data is packed */
FillPixPatBits: hex string [($$BitField(FillPixPatpMapRowBytes[$$ArrayIndex(OpCodes)],0,13) < 8) *
$$BitField(FillPixPatpMapRowBytes[$$ArrayIndex(OpCodes)],0,13) +
($$BitField(FillPixPatpMapRowBytes[$$ArrayIndex(OpCodes)],0,13) >= 8) *
$$PackedSize(FillPixPatBits[$$ArrayIndex(OpCodes)],
$$BitField(FillPixPatpMapRowBytes[$$ArrayIndex(OpCodes)],0,13),
($$BitField(FillPixPatBounds[$$ArrayIndex(OpCodes)],32,16)
- $$BitField(FillPixPatBounds[$$ArrayIndex(OpCodes)],0,16)))];
case ditherPattern:
key integer = 2;
hex string [8]; /* old-style pattern */
unsigned integer; /* RGB: red */
unsigned integer; /* green */
unsigned integer; /* blue */
};
case PnLocHFrac:
key integer = $0015;
unsigned hex integer;
case ChExtra:
key integer = $0016;
integer; /* extra for each character */
case AppleReserved0017:
key integer = $0017;
case AppleReserved0018:
key integer = $0018;
case AppleReserved0019:
key integer = $0019;
case RGBFgCol:
key integer = $001A;
unsigned integer; /* RGB: red */
unsigned integer; /* green */
unsigned integer; /* blue */
case RGBBkCol:
key integer = $001B;
unsigned integer; /* RGB: red */
unsigned integer; /* green */
unsigned integer; /* blue */
case HiliteMode:
key integer = $001C;
case HiliteColor:
key integer = $001D;
unsigned integer; /* RGB: red */
unsigned integer; /* green */
unsigned integer; /* blue */
case DefHilite:
key integer = $001E;
case OpColor:
key integer = $001F;
unsigned integer; /* RGB: red */
unsigned integer; /* green */
unsigned integer; /* blue */
case Line:
key integer = $0020;
Point; /* pnLoc */
Point; /* newPt */
case LineFrom:
key integer = $0021;
Point; /* newPt */
case ShortLine:
key integer = $0022;
Point; /* pnLoc */
byte; /* dh */
byte; /* dv */
case ShortLineFrom:
key integer = $0023;
byte; /* dh */
byte; /* dv */
case AppleReserved0024:
key integer = $0024;
AR24: unsigned integer = (AR24End[$$ArrayIndex(Opcodes)] - AR24[$$ArrayIndex(Opcodes)]) / 8 - 2;
hex string [$$Word(AR24[$$ArrayIndex(Opcodes)])];
AR24End:
case AppleReserved0025:
key integer = $0025;
AR25: unsigned integer = (AR25End[$$ArrayIndex(Opcodes)] - AR25[$$ArrayIndex(Opcodes)]) / 8 - 2;
hex string [$$Word(AR25[$$ArrayIndex(Opcodes)])];
AR25End:
case AppleReserved0026:
key integer = $0026;
AR26: unsigned integer = (AR26End[$$ArrayIndex(Opcodes)] - AR26[$$ArrayIndex(Opcodes)]) / 8 - 2;
hex string [$$Word(AR26[$$ArrayIndex(Opcodes)])];
AR26End:
case AppleReserved0027:
key integer = $0027;
AR27: unsigned integer = (AR27End[$$ArrayIndex(Opcodes)] - AR27[$$ArrayIndex(Opcodes)]) / 8 - 2;
hex string [$$Word(AR27[$$ArrayIndex(Opcodes)])];
AR27End:
case LongText:
key integer = $0028;
Point; /* TxLoc */
pstring; /* text */
case DHText:
key integer = $0029;
byte; /* dh */
pstring; /* text */
case DVText:
key integer = $002A;
byte; /* dv */
pstring; /* text */
case DHDVText:
key integer = $002B;
byte; /* dh */
byte; /* dv */
pstring; /* text */
case FontName:
key integer = $002C;
FontNameBegin: unsigned integer = (FontNameEnd[$$ArrayIndex(Opcodes)] - FontNameBegin[$$ArrayIndex(Opcodes)]) / 8 - 2;
integer; /* Old font ID */
pstring; /* Font name */
FontNameEnd:
case LineJustify:
key integer = $002D;
unsigned integer = 8;
longint; /* Inter-character spacing */
longint; /* Total extra space for justification */
case AppleReserved002E:
key integer = $002E;
AR2E: unsigned integer = (AR2EEnd[$$ArrayIndex(Opcodes)] - AR2E[$$ArrayIndex(Opcodes)]) / 8 - 2;
hex string [$$Word(AR2E[$$ArrayIndex(Opcodes)])];
AR2EEnd:
case AppleReserved002F:
key integer = $002F;
AR2F: unsigned integer = (AR2FEnd[$$ArrayIndex(Opcodes)] - AR2F[$$ArrayIndex(Opcodes)]) / 8 - 2;
hex string [$$Word(AR2F[$$ArrayIndex(Opcodes)])];
AR2FEnd:
case FrameRect:
key integer = $0030;
Rect;
case PaintRect:
key integer = $0031;
Rect;
case EraseRect:
key integer = $0032;
Rect;
case InvertRect:
key integer = $0033;
Rect;
case FillRect:
key integer = $0034;
Rect;
case AppleReserved0035:
key integer = $0035;
Rect;
case AppleReserved0036:
key integer = $0036;
Rect;
case AppleReserved0037:
key integer = $0037;
Rect;
case FrameSameRect:
key integer = $0038;
case PaintSameRect:
key integer = $0039;
case EraseSameRect:
key integer = $003A;
case InvertSameRect:
key integer = $003B;
case FillSameRect:
key integer = $003C;
case AppleReserved003D:
key integer = $003D;
case AppleReserved003E:
key integer = $003E;
case AppleReserved003F:
key integer = $003F;
case FrameRRect:
key integer = $0040;
Rect;
case PaintRRect:
key integer = $0041;
Rect;
case EraseRRect:
key integer = $0042;
Rect;
case InvertRRect:
key integer = $0043;
Rect;
case FillRRect:
key integer = $0044;
Rect;
case AppleReserved0045:
key integer = $0045;
Rect;
case AppleReserved0046:
key integer = $0046;
Rect;
case AppleReserved0047:
key integer = $0047;
Rect;
case FrameSameRRect:
key integer = $0048;
case PaintSameRRect:
key integer = $0049;
case EraseSameRRect:
key integer = $004A;
case InvertSameRRect:
key integer = $004B;
case FillSameRRect:
key integer = $004C;
case AppleReserved004D:
key integer = $004D;
case AppleReserved004E:
key integer = $004E;
case AppleReserved004F:
key integer = $004F;
case FrameOval:
key integer = $0050;
Rect;
case PaintOval:
key integer = $0051;
Rect;
case EraseOval:
key integer = $0052;
Rect;
case InvertOval:
key integer = $0053;
Rect;
case FillOval:
key integer = $0054;
Rect;
case AppleReserved0055:
key integer = $0055;
Rect;
case AppleReserved0056:
key integer = $0056;
Rect;
case AppleReserved0057:
key integer = $0057;
Rect;
case FrameSameOval:
key integer = $0058;
case PaintSameOval:
key integer = $0059;
case EraseSameOval:
key integer = $005A;
case InvertSameOval:
key integer = $005B;
case FillSameOval:
key integer = $005C;
case AppleReserved005D:
key integer = $005D;
case AppleReserved005E:
key integer = $005E;
case FrameArc:
key integer = $0060;
Rect;
integer; /* startAngle */
integer; /* arcAngle */
case PaintArc:
key integer = $0061;
Rect;
integer; /* startAngle */
integer; /* arcAngle */
case EraseArc:
key integer = $0062;
Rect;
integer; /* startAngle */
integer; /* arcAngle */
case InvertArc:
key integer = $0063;
Rect;
integer; /* startAngle */
integer; /* arcAngle */
case FillArc:
key integer = $0064;
Rect;
integer; /* startAngle */
integer; /* arcAngle */
case AppleReserved0065:
key integer = $0065;
Rect;
integer; /* startAngle */
integer; /* arcAngle */
case AppleReserved0066:
key integer = $0066;
Rect;
integer; /* startAngle */
integer; /* arcAngle */
case AppleReserved0067:
key integer = $0067;
Rect;
integer; /* startAngle */
integer; /* arcAngle */
case FrameSameArc:
key integer = $0068;
integer; /* startAngle */
integer; /* arcAngle */
case PaintSameArc:
key integer = $0069;
integer; /* startAngle */
integer; /* arcAngle */
case EraseSameArc:
key integer = $006A;
integer; /* startAngle */
integer; /* arcAngle */
case InvertSameArc:
key integer = $006B;
integer; /* startAngle */
integer; /* arcAngle */
case FillSameArc:
key integer = $006C;
integer; /* startAngle */
integer; /* arcAngle */
case AppleReserved006D:
key integer = $006D;
integer; /* startAngle */
integer; /* arcAngle */
case AppleReserved006E:
key integer = $006E;
integer; /* startAngle */
integer; /* arcAngle */
case AppleReserved006F:
key integer = $006F;
integer; /* startAngle */
integer; /* arcAngle */
case FramePoly:
key integer = $0070;
integer = $$CountOf(PolyPoints) * 4 + 10;
Rect; /* enclosing rectangle */
wide array PolyPoints { Point; };
case PaintPoly:
key integer = $0071;
integer = $$CountOf(PolyPoints) * 4 + 10;
Rect; /* enclosing rectangle */
wide array PolyPoints { Point; };
case ErasePoly:
key integer = $0072;
integer = $$CountOf(PolyPoints) * 4 + 10;
Rect; /* enclosing rectangle */
wide array PolyPoints { Point; };
case InvertPoly:
key integer = $0073;
integer = $$CountOf(PolyPoints) * 4 + 10;
Rect; /* enclosing rectangle */
wide array PolyPoints { Point; };
case FillPoly:
key integer = $0074;
integer = $$CountOf(PolyPoints) * 4 + 10;
Rect; /* enclosing rectangle */
wide array PolyPoints { Point; };
case AppleReserved0075:
key integer = $0075;
integer = $$CountOf(PolyPoints) * 4 + 10;
Rect; /* enclosing rectangle */
wide array PolyPoints { Point; };
case AppleReserved0076:
key integer = $0076;
integer = $$CountOf(PolyPoints) * 4 + 10;
Rect; /* enclosing rectangle */
wide array PolyPoints { Point; };
case AppleReserved0077:
key integer = $0077;
integer = $$CountOf(PolyPoints) * 4 + 10;
Rect; /* enclosing rectangle */
wide array PolyPoints { Point; };
case FrameSamePoly:
key integer = $0078;
case PaintSamePoly:
key integer = $0079;
case EraseSamePoly:
key integer = $007A;
case InvertSamePoly:
key integer = $007B;
case FillSamePoly:
key integer = $007C;
case AppleReserved007D:
key integer = $007D;
case AppleReserved007E:
key integer = $007E;
case AppleReserved007F:
key integer = $007F;
case FrameRgn:
key integer = $0080;
FrameRgnStart2: integer = (FrameRgnEnd2[$$ArrayIndex(OpCodes)] - FrameRgnStart2[$$ArrayIndex(OpCodes)]) >> 3;
Rect; /* regions enclosing rect */
hex string [$$Word(FrameRgnStart2[$$ArrayIndex(OpCodes)]) - 10];
FrameRgnEnd2:
case PaintRgn:
key integer = $0081;
PaintRgnStart2: integer = (PaintRgnEnd2[$$ArrayIndex(OpCodes)] - PaintRgnStart2[$$ArrayIndex(OpCodes)]) >> 3;
Rect; /* regions enclosing rect */
hex string [$$Word(PaintRgnStart2[$$ArrayIndex(OpCodes)]) - 10];
PaintRgnEnd2:
case EraseRgn:
key integer = $0082;
EraseRgnStart2: integer = (EraseRgnEnd2[$$ArrayIndex(OpCodes)] - EraseRgnStart2[$$ArrayIndex(OpCodes)]) >> 3;
Rect; /* regions enclosing rect */
hex string [$$Word(EraseRgnStart2[$$ArrayIndex(OpCodes)]) - 10];
EraseRgnEnd2:
case InvertRgn:
key integer = $0083;
InvertRgnStart2: integer = (InvertRgnEnd2[$$ArrayIndex(OpCodes)] - InvertRgnStart2[$$ArrayIndex(OpCodes)]) >> 3;
Rect; /* regions enclosing rect */
hex string [$$Word(InvertRgnStart2[$$ArrayIndex(OpCodes)]) - 10];
InvertRgnEnd2:
case FillRgn:
key integer = $0084;
FillRgnStart2: integer = (FillRgnEnd2[$$ArrayIndex(OpCodes)] - FillRgnStart2[$$ArrayIndex(OpCodes)]) >> 3;
Rect; /* regions enclosing rect */
hex string [$$Word(FillRgnStart2[$$ArrayIndex(OpCodes)]) - 10];
FillRgnEnd2:
case AppleReserved0085:
key integer = $0085;
AppleReserved0085Start:integer = (AppleReserved0085End[$$ArrayIndex(OpCodes)] - AppleReserved0085Start[$$ArrayIndex(OpCodes)]) >> 3;
Rect; /* regions enclosing rect */
hex string [$$Word(AppleReserved0085Start[$$ArrayIndex(OpCodes)]) - 10];
AppleReserved0085End:
case AppleReserved0086:
key integer = $0086;
AppleReserved0086Start: integer = (AppleReserved0086End[$$ArrayIndex(OpCodes)] - AppleReserved0086Start[$$ArrayIndex(OpCodes)]) >> 3;
Rect; /* regions enclosing rect */
hex string [$$Word(AppleReserved0086Start[$$ArrayIndex(OpCodes)]) - 10];
AppleReserved0086End:
case AppleReserved0087:
key integer = $0087;
AppleReserved0087Start: integer = (AppleReserved0087End[$$ArrayIndex(OpCodes)] - AppleReserved0087Start[$$ArrayIndex(OpCodes)]) >> 3;
Rect; /* regions enclosing rect */
hex string [$$Word(AppleReserved0087Start[$$ArrayIndex(OpCodes)]) - 10];
AppleReserved0087End:
case FrameSameRgn:
key integer = $0088;
case PaintSameRgn:
key integer = $0089;
case EraseSameRgn:
key integer = $008A;
case InvertSameRgn:
key integer = $008B;
case FillSameRgn:
key integer = $008C;
case AppleReserved008D:
key integer = $008D;
case AppleReserved008E:
key integer = $008E;
case AppleReserved008F:
key integer = $008F;
case BitsRect:
key integer = $0090;
unsigned bitstring[1] = 1; /* New pixMap flag */
unsigned bitstring[2] = 0; /* Must be 0 */
BitsRectpMapRowBytes: unsigned bitstring[13]; /* Offset to next row */
BitsRectBounds2: rect; /* Bitmap bounds */
integer; /* pixMap vers number */
integer unpacked; /* Packing format */
unsigned longint; /* Size of pixel data */
unsigned hex longint; /* h. resolution (ppi) (fixed) */
unsigned hex longint; /* v. resolution (ppi) (fixed) */
integer chunky, chunkyPlanar, planar; /* Pixel storage format */
integer; /* # bits in pixel */
integer; /* # components in pixel*/
integer; /* # bits per field */
unsigned longint; /* Offset to next plane */
unsigned longint; /* Offset to color table*/
fill long; /* Reserved */
/* Color Table */
unsigned hex longint; /* ctSeed */
integer; /* ctFlags */
integer = $$Countof(ColorSpec) - 1; /* ctSize */
wide array ColorSpec {
integer; /* value */
unsigned integer; /* RGB: red */
unsigned integer; /* green */
unsigned integer; /* blue */
};
Rect; /* srcRect */
Rect; /* destRect */
integer srcCopy, srcOr, srcXor, srcBic, /* mode */
notSrcCopy, notSrcOr, notSrcXor, notSrcBic,
patCopy, patOr, patXor, patBic,
notPatCopy, notPatOr, notPatXor, notPatBic,
blend = 32, addPin, addOver, subPin,
adMax = 37, subOver, adMin;
BitsRectBits: hex string [$$BitField(BitsRectpMapRowBytes[$$ArrayIndex(OpCodes)],0,13) *
($$BitField(BitsRectBounds2[$$ArrayIndex(OpCodes)],32,16)
- $$BitField(BitsRectBounds2[$$ArrayIndex(OpCodes)],0,16))];
case BitsRgn:
key integer = $0091;
unsigned bitstring[1] = 1; /* New pixMap flag */
unsigned bitstring[2] = 0; /* Must be 0 */
BitsRgnpMapRowBytes: unsigned bitstring[13]; /* Offset to next row */
BitsRgnBounds2: rect; /* Bitmap bounds */
integer; /* pixMap vers number */
integer unpacked; /* Packing format */
unsigned longint; /* Size of pixel data */
unsigned hex longint; /* h. resolution (ppi) (fixed) */
unsigned hex longint; /* v. resolution (ppi) (fixed) */
integer chunky, chunkyPlanar, planar; /* Pixel storage format */
integer; /* # bits in pixel */
integer; /* # components in pixel*/
integer; /* # bits per field */
unsigned longint; /* Offset to next plane */
unsigned longint; /* Offset to color table*/
fill long; /* Reserved */
/* Color Table */
unsigned hex longint; /* ctSeed */
integer; /* ctFlags */
integer = $$Countof(ColorSpec) - 1; /* ctSize */
wide array ColorSpec {
integer; /* value */
unsigned integer; /* RGB: red */
unsigned integer; /* green */
unsigned integer; /* blue */
};
Rect; /* srcRect */
Rect; /* destRect */
integer srcCopy, srcOr, srcXor, srcBic, /* mode */
notSrcCopy, notSrcOr, notSrcXor, notSrcBic,
patCopy, patOr, patXor, patBic,
notPatCopy, notPatOr, notPatXor, notPatBic,
blend = 32, addPin, addOver, subPin,
adMax = 37, subOver, adMin;
BitsRgnStart2: integer = (BitsRgnEnd2[$$ArrayIndex(OpCodes)] - BitsRgnStart2[$$ArrayIndex(OpCodes)]) >> 3;
Rect; /* regions enclosing rect */
hex string [$$Word(BitsRgnStart2[$$ArrayIndex(OpCodes)]) - 10];
BitsRgnEnd2: hex string [$$PackedSize(BitsRgnEnd2[$$ArrayIndex(OpCodes)],
$$BitField(BitsRgnpMapRowBytes[$$ArrayIndex(OpCodes)],0,13),
($$BitField(BitsRgnBounds2[$$ArrayIndex(OpCodes)],32,16)
- $$BitField(BitsRgnBounds2[$$ArrayIndex(OpCodes)],0,16)))];
case AppleReserved0092:
key integer = $0092;
AppleReserved0092Start: unsigned integer = (AppleReserved0092End[$$ArrayIndex(OpCodes)] - AppleReserved0092Start[$$ArrayIndex(OpCodes)]) >> 3 - 2;
hex string [$$Word(AppleReserved0092Start[$$ArrayIndex(OpCodes)])];
AppleReserved0092End:
case AppleReserved0093:
key integer = $0093;
AppleReserved0093Start: unsigned integer = (AppleReserved0093End[$$ArrayIndex(OpCodes)] - AppleReserved0093Start[$$ArrayIndex(OpCodes)]) >> 3 - 2;
hex string [$$Word(AppleReserved0093Start[$$ArrayIndex(OpCodes)])];
AppleReserved0093End:
case AppleReserved0094:
key integer = $0094;
AppleReserved0094Start: unsigned integer = (AppleReserved0094End[$$ArrayIndex(OpCodes)] - AppleReserved0094Start[$$ArrayIndex(OpCodes)]) >> 3 - 2;
hex string [$$Word(AppleReserved0094Start[$$ArrayIndex(OpCodes)])];
AppleReserved0094End:
case AppleReserved0095:
key integer = $0095;
AppleReserved0095Start: unsigned integer = (AppleReserved0095End[$$ArrayIndex(OpCodes)] - AppleReserved0095Start[$$ArrayIndex(OpCodes)]) >> 3 - 2;
hex string [$$Word(AppleReserved0095Start[$$ArrayIndex(OpCodes)])];
AppleReserved0095End:
case AppleReserved0096:
key integer = $0096;
AppleReserved0096Start: unsigned integer = (AppleReserved0096End[$$ArrayIndex(OpCodes)] - AppleReserved0096Start[$$ArrayIndex(OpCodes)]) >> 3 - 2;
hex string [$$Word(AppleReserved0096Start[$$ArrayIndex(OpCodes)])];
AppleReserved0096End:
case AppleReserved0097:
key integer = $0097;
AppleReserved0097Start: unsigned integer = (AppleReserved0097End[$$ArrayIndex(OpCodes)] - AppleReserved0097Start[$$ArrayIndex(OpCodes)]) >> 3 - 2;
hex string [$$Word(AppleReserved0097Start[$$ArrayIndex(OpCodes)])];
AppleReserved0097End:
case PackBitsRect:
key integer = $0098;
unsigned bitstring[1] = 1; /* New pixMap flag */
unsigned bitstring[2] = 0; /* Must be 0 */
PackBitsRectpMapRowBytes:unsigned bitstring[13]; /* Offset to next row */
PackBitsRectBounds2: rect; /* Bitmap bounds */
integer; /* pixMap vers number */
integer unpacked; /* Packing format */
unsigned longint; /* Size of pixel data */
unsigned hex longint; /* h. resolution (ppi) (fixed) */
unsigned hex longint; /* v. resolution (ppi) (fixed) */
integer chunky, chunkyPlanar, planar; /* Pixel storage format */
integer; /* # bits in pixel */
integer; /* # components in pixel*/
integer; /* # bits per field */
unsigned longint; /* Offset to next plane */
unsigned longint; /* Offset to color table*/
fill long; /* Reserved */
/* Color Table */
unsigned hex longint; /* ctSeed */
integer; /* ctFlags */
integer = $$Countof(ColorSpec) - 1; /* ctSize */
wide array ColorSpec {
integer; /* value */
unsigned integer; /* RGB: red */
unsigned integer; /* green */
unsigned integer; /* blue */
};
Rect; /* srcRect */
Rect; /* destRect */
integer srcCopy, srcOr, srcXor, srcBic, /* mode */
notSrcCopy, notSrcOr, notSrcXor, notSrcBic,
patCopy, patOr, patXor, patBic,
notPatCopy, notPatOr, notPatXor, notPatBic,
blend = 32, addPin, addOver, subPin,
adMax = 37, subOver, adMin;
PackBitsRectBits: hex string [$$PackedSize(PackBitsRectBits[$$ArrayIndex(OpCodes)],
$$BitField(PackBitsRectpMapRowBytes[$$ArrayIndex(OpCodes)],0,13),
($$BitField(PackBitsRectBounds2[$$ArrayIndex(OpCodes)],32,16)
- $$BitField(PackBitsRectBounds2[$$ArrayIndex(OpCodes)],0,16)))];
case PackBitsRgn:
key integer = $0099;
unsigned bitstring[1] = 1; /* New pixMap flag */
unsigned bitstring[2] = 0; /* Must be 0 */
PackBitsRgnpMapRowBytes:unsigned bitstring[13]; /* Offset to next row */
PackBitsRgnBounds2: rect; /* Bitmap bounds */
integer; /* pixMap vers number */
integer unpacked; /* Packing format */
unsigned longint; /* Size of pixel data */
unsigned hex longint; /* h. resolution (ppi) (fixed) */
unsigned hex longint; /* v. resolution (ppi) (fixed) */
integer chunky, chunkyPlanar, planar; /* Pixel storage format */
integer; /* # bits in pixel */
integer; /* # components in pixel*/
integer; /* # bits per field */
unsigned longint; /* Offset to next plane */
unsigned longint; /* Offset to color table*/
fill long; /* Reserved */
/* Color Table */
unsigned hex longint; /* ctSeed */
integer; /* ctFlags */
integer = $$Countof(ColorSpec) - 1; /* ctSize */
wide array ColorSpec {
integer; /* value */
unsigned integer; /* RGB: red */
unsigned integer; /* green */
unsigned integer; /* blue */
};
Rect; /* srcRect */
Rect; /* destRect */
integer srcCopy, srcOr, srcXor, srcBic, /* mode */
notSrcCopy, notSrcOr, notSrcXor, notSrcBic,
patCopy, patOr, patXor, patBic,
notPatCopy, notPatOr, notPatXor, notPatBic,
blend = 32, addPin, addOver, subPin,
adMax = 37, subOver, adMin;
PackBitsRgnStart2: integer = (PackBitsRgnEnd2[$$ArrayIndex(OpCodes)] - PackBitsRgnStart2[$$ArrayIndex(OpCodes)]) >> 3;
Rect; /* regions enclosing rect */
hex string [$$Word(PackBitsRgnStart2[$$ArrayIndex(OpCodes)]) - 10];
PackBitsRgnEnd2: hex string [$$PackedSize(PackBitsRgnEnd2[$$ArrayIndex(OpCodes)],
$$BitField(PackBitsRgnpMapRowBytes[$$ArrayIndex(OpCodes)],0,13),
($$BitField(PackBitsRgnBounds2[$$ArrayIndex(OpCodes)],32,16)
- $$BitField(PackBitsRgnBounds2[$$ArrayIndex(OpCodes)],0,16)))];
case DirectBitsRect:
key integer = $009A;
DirectBitsRectStart: unsigned integer = (DirectBitsRectEnd[$$ArrayIndex(OpCodes)] - DirectBitsRectStart[$$ArrayIndex(OpCodes)]) >> 3 - 2;
unsigned bitstring[1] = 1; /* New pixMap flag */
unsigned bitstring[2] = 0; /* Must be 0 */
DirectBitsRectpMapRowBytes: unsigned bitstring[13]; /* Offset to next row */
DirectBitsRectBounds2: rect; /* Bitmap bounds */
integer; /* pixMap vers number */
integer unpacked; /* Packing format */
unsigned longint; /* Size of pixel data */
unsigned hex longint; /* h. resolution (ppi) (fixed) */
unsigned hex longint; /* v. resolution (ppi) (fixed) */
integer chunky, chunkyPlanar, planar; /* Pixel storage format */
integer; /* # bits in pixel */
integer; /* # components in pixel*/
integer; /* # bits per field */
unsigned longint; /* Offset to next plane */
unsigned longint; /* Offset to color table*/
fill long; /* Reserved */
/* Color Table */
unsigned hex longint; /* ctSeed */
integer; /* ctFlags */
integer = $$Countof(ColorSpec) - 1; /* ctSize */
wide array ColorSpec {
integer; /* value */
unsigned integer; /* RGB: red */
unsigned integer; /* green */
unsigned integer; /* blue */
};
Rect; /* srcRect */
Rect; /* destRect */
integer srcCopy, srcOr, srcXor, srcBic, /* mode */
notSrcCopy, notSrcOr, notSrcXor, notSrcBic,
patCopy, patOr, patXor, patBic,
notPatCopy, notPatOr, notPatXor, notPatBic,
blend = 32, addPin, addOver, subPin,
adMax = 37, subOver, adMin;
DirectBitsRectBits: hex string [$$BitField(DirectBitsRectpMapRowBytes[$$ArrayIndex(OpCodes)],0,13) *
($$BitField(DirectBitsRectBounds2[$$ArrayIndex(OpCodes)],32,16)
- $$BitField(DirectBitsRectBounds2[$$ArrayIndex(OpCodes)],0,16))];
DirectBitsRectEnd:
case DirectBitsRgn:
key integer = $009B;
DirectBitsRgnStart: unsigned integer = (DirectBitsRgnEnd[$$ArrayIndex(OpCodes)] - DirectBitsRgnStart[$$ArrayIndex(OpCodes)]) >> 3 - 2;
unsigned bitstring[1] = 1; /* New pixMap flag */
unsigned bitstring[2] = 0; /* Must be 0 */
DirectBitsRgnpMapRowBytes: unsigned bitstring[13]; /* Offset to next row */
DirectBitsRgnBounds2: rect; /* Bitmap bounds */
integer; /* pixMap vers number */
integer unpacked; /* Packing format */
unsigned longint; /* Size of pixel data */
unsigned hex longint; /* h. resolution (ppi) (fixed) */
unsigned hex longint; /* v. resolution (ppi) (fixed) */
integer chunky, chunkyPlanar, planar; /* Pixel storage format */
integer; /* # bits in pixel */
integer; /* # components in pixel*/
integer; /* # bits per field */
unsigned longint; /* Offset to next plane */
unsigned longint; /* Offset to color table*/
fill long; /* Reserved */
/* Color Table */
unsigned hex longint; /* ctSeed */
integer; /* ctFlags */
integer = $$Countof(ColorSpec) - 1; /* ctSize */
wide array ColorSpec {
integer; /* value */
unsigned integer; /* RGB: red */
unsigned integer; /* green */
unsigned integer; /* blue */
};
Rect; /* srcRect */
Rect; /* destRect */
integer srcCopy, srcOr, srcXor, srcBic, /* mode */
notSrcCopy, notSrcOr, notSrcXor, notSrcBic,
patCopy, patOr, patXor, patBic,
notPatCopy, notPatOr, notPatXor, notPatBic,
blend = 32, addPin, addOver, subPin,
adMax = 37, subOver, adMin;
DirectBitsMaskRgnStart: integer = (DirectBitsMaskRgnEnd[$$ArrayIndex(OpCodes)] - DirectBitsMaskRgnStart[$$ArrayIndex(OpCodes)]) >> 3;
Rect; /* regions enclosing rect */
hex string [$$Word(DirectBitsMaskRgnStart[$$ArrayIndex(OpCodes)]) - 10];
DirectBitsMaskRgnEnd:
DirectBitsRgnBits: hex string [$$BitField(DirectBitsRgnpMapRowBytes[$$ArrayIndex(OpCodes)],0,13) *
($$BitField(DirectBitsRgnBounds2[$$ArrayIndex(OpCodes)],32,16)
- $$BitField(DirectBitsRgnBounds2[$$ArrayIndex(OpCodes)],0,16))];
DirectBitsRgnEnd:
case AppleReserved009C:
key integer = $009C;
AppleReserved009CStart: unsigned integer = (AppleReserved009CEnd[$$ArrayIndex(OpCodes)] - AppleReserved009CStart[$$ArrayIndex(OpCodes)]) >> 3 - 2;
hex string [$$Word(AppleReserved009CStart[$$ArrayIndex(OpCodes)])];
AppleReserved009CEnd:
case AppleReserved009D:
key integer = $009D;
AppleReserved009DStart: unsigned integer = (AppleReserved009DEnd[$$ArrayIndex(OpCodes)] - AppleReserved009DStart[$$ArrayIndex(OpCodes)]) >> 3 - 2;
hex string [$$Word(AppleReserved009DStart[$$ArrayIndex(OpCodes)])];
AppleReserved009DEnd:
case AppleReserved009E:
key integer = $009E;
AppleReserved009EStart: unsigned integer = (AppleReserved009EEnd[$$ArrayIndex(OpCodes)] - AppleReserved009EStart[$$ArrayIndex(OpCodes)]) >> 3 - 2;
hex string [$$Word(AppleReserved009EStart[$$ArrayIndex(OpCodes)])];
AppleReserved009EEnd:
case AppleReserved009F:
key integer = $009F;
AppleReserved009FStart: unsigned integer = (AppleReserved009FEnd[$$ArrayIndex(OpCodes)] - AppleReserved009FStart[$$ArrayIndex(OpCodes)]) >> 3 - 2;
hex string [$$Word(AppleReserved009FStart[$$ArrayIndex(OpCodes)])];
AppleReserved009FEnd:
case ShortComment:
key integer = $00A0;
integer; /* comment kind */
case LongComment:
key integer = $00A1;
integer; /* comment kind */
LongCommentStart2: integer = (LongCommentEnd2[$$ArrayIndex(OpCodes)] - LongCommentStart2[$$ArrayIndex(OpCodes)] - 16) >> 3;
hex string [$$Word(LongCommentStart2[$$ArrayIndex(OpCodes)])];
LongCommentEnd2:
case OpEndPic:
key integer = $00FF;
case HeaderOp:
key integer = $0C00;
#if oldPICTCompatible
longint Version2 = -1;
/* Fixed point bounding box */
unsigned hex longint;
unsigned hex longint;
unsigned hex longint;
unsigned hex longint;
longint Version2 = -1; /* Reserved */
#else
switch {
case StandardVersion2:
key integer = -1;
integer = -1;
unsigned hex longint;
unsigned hex longint;
unsigned hex longint;
unsigned hex longint;
fill long; /* Reserved */
case ExtendedVersion2:
key integer = -2;
fill word;
unsigned hex longint; /* hRes */
unsigned hex longint; /* vRes */
Rect; /* SrcRect */
fill long; /* Reserved */
};
#endif
};
align word;
};
};
endOfPict:
};
#endif __PICT_R__