Specifications

Apple II Technical Notes
Apple IIGS
2 of 8 #76: Miscellaneous Resource Formats
The resource compiler template follows:
#define rSoundSample $8024
/*---------------------- rSoundSample --------------------*/
type rSoundSample {
integer; /* format */
integer; /* wave size */
hex integer; /* rel pitch */
integer; /* stereo channel */
unsigned integer; /* sample rate */
hex string; /* raw 8 bit sound data */
};
Cursor Resource (Type: $8027, rCursor)
The following describes the Cursor resource format:
height (+000) Word The height of the cursor, in pixels.
width (+002) Word The width of the cursor, in Words.
image (+004) Bytes The image of the cursor. There are height*width
Words in the cursor, or twice that many Bytes.
We will call the first byte beyond the image offset “ei” for “end of image.”
mask (+ei) Bytes The mask of the cursor. This is the same size as the
image.
We will call the first byte beyond the mask offset “em” for “end of mask.”
hotSpotY (+em) Word The cursor’s Y “hot spot.”
hotSpotX (+em+2) Word The cursor’s X “hot spot.”
flags (+em+4) Flag Word Cursor flags:
Bit 7: 1 = 640 Mode, 0 = 320 Mode
All other bits are reserved and must be zero.
reserved (+em+6) 8 Bytes Reserved, must be zero.
The resource compiler template follows:
#define rCursor $8027
/*---------------------- rCursor --------------------*/
type rCursor {
height :
hex integer; /* height */
width :
hex integer; /* width in words */
hex string[2*$$Word(height)*$$Word(width)]; /* cursor image */
hex string[2*$$Word(height)*$$Word(width)]; /* cursor mask */
hex integer; /* hotspot Y */
hex integer; /* hotspot X */
hex integer; /* flags */
hex longint = 0; /* reserved */
hex longint = 0; /* reserved */
};
};