mirror of
https://github.com/elliotnunn/supermario.git
synced 2024-12-01 18:50:30 +00:00
148 lines
4.5 KiB
C
148 lines
4.5 KiB
C
/************************************************************
|
|
|
|
Created: Tuesday, January 8, 1991 at 9:43 AM
|
|
Palettes.h
|
|
C Interface to the Macintosh Libraries
|
|
|
|
|
|
Copyright Apple Computer, Inc. 1987-1990
|
|
All rights reserved
|
|
|
|
************************************************************/
|
|
|
|
|
|
#ifndef __PALETTES__
|
|
#define __PALETTES__
|
|
|
|
#ifndef __QUICKDRAW__
|
|
#include <Quickdraw.h>
|
|
#endif
|
|
|
|
#ifndef __WINDOWS__
|
|
#include <Windows.h>
|
|
#endif
|
|
|
|
|
|
enum {
|
|
|
|
pmCourteous = 0, /*Record use of color on each device touched.*/
|
|
pmTolerant = 0x0002, /*render ciRGB if ciTolerance is exceeded by best match.*/
|
|
pmAnimated = 0x0004, /*reserve an index on each device touched and render ciRGB.*/
|
|
pmExplicit = 0x0008, /*no reserve, no render, no record; stuff index into port.*/
|
|
|
|
pmWhite = 0x0010,
|
|
pmBlack = 0x0020,
|
|
|
|
pmInhibitG2 = 0x0100,
|
|
pmInhibitC2 = 0x0200,
|
|
pmInhibitG4 = 0x0400,
|
|
pmInhibitC4 = 0x0800,
|
|
pmInhibitG8 = 0x1000,
|
|
pmInhibitC8 = 0x2000,
|
|
|
|
|
|
/* NSetPalette Update Constants */
|
|
pmNoUpdates = 0x8000, /*no updates*/
|
|
pmBkUpdates = 0xA000, /*background updates only*/
|
|
pmFgUpdates = 0xC000, /*foreground updates only*/
|
|
pmAllUpdates = 0xE000 /*all updates*/
|
|
};
|
|
|
|
struct ColorInfo {
|
|
RGBColor ciRGB; /*true RGB values*/
|
|
short ciUsage; /*color usage*/
|
|
short ciTolerance; /*tolerance value*/
|
|
short ciDataFields[3]; /*private fields*/
|
|
};
|
|
|
|
typedef struct ColorInfo ColorInfo;
|
|
|
|
struct Palette {
|
|
short pmEntries; /*entries in pmTable*/
|
|
short pmDataFields[7]; /*private fields*/
|
|
ColorInfo pmInfo[1];
|
|
};
|
|
|
|
typedef struct Palette Palette;
|
|
typedef Palette *PalettePtr, **PaletteHandle;
|
|
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
pascal void InitPalettes(void)
|
|
= 0xAA90;
|
|
pascal PaletteHandle NewPalette(short entries,CTabHandle srcColors,short srcUsage,
|
|
short srcTolerance)
|
|
= 0xAA91;
|
|
pascal PaletteHandle GetNewPalette(short PaletteID)
|
|
= 0xAA92;
|
|
pascal void DisposePalette(PaletteHandle srcPalette)
|
|
= 0xAA93;
|
|
pascal void ActivatePalette(WindowPtr srcWindow)
|
|
= 0xAA94;
|
|
pascal void SetPalette(WindowPtr dstWindow,PaletteHandle srcPalette,Boolean cUpdates)
|
|
= 0xAA95;
|
|
pascal void NSetPalette(WindowPtr dstWindow,PaletteHandle srcPalette,short nCUpdates)
|
|
= 0xAA95;
|
|
pascal PaletteHandle GetPalette(WindowPtr srcWindow)
|
|
= 0xAA96;
|
|
pascal void CopyPalette(PaletteHandle srcPalette,PaletteHandle dstPalette,
|
|
short srcEntry,short dstEntry,short dstLength)
|
|
= 0xAAA1;
|
|
pascal void PmForeColor(short dstEntry)
|
|
= 0xAA97;
|
|
pascal void PmBackColor(short dstEntry)
|
|
= 0xAA98;
|
|
pascal void AnimateEntry(WindowPtr dstWindow,short dstEntry,const RGBColor *srcRGB)
|
|
= 0xAA99;
|
|
pascal void AnimatePalette(WindowPtr dstWindow,CTabHandle srcCTab,short srcIndex,
|
|
short dstEntry,short dstLength)
|
|
= 0xAA9A;
|
|
pascal void GetEntryColor(PaletteHandle srcPalette,short srcEntry,RGBColor *dstRGB)
|
|
= 0xAA9B;
|
|
pascal void SetEntryColor(PaletteHandle dstPalette,short dstEntry,const RGBColor *srcRGB)
|
|
= 0xAA9C;
|
|
pascal void GetEntryUsage(PaletteHandle srcPalette,short srcEntry,short *dstUsage,
|
|
short *dstTolerance)
|
|
= 0xAA9D;
|
|
pascal void SetEntryUsage(PaletteHandle dstPalette,short dstEntry,short srcUsage,
|
|
short srcTolerance)
|
|
= 0xAA9E;
|
|
pascal void CTab2Palette(CTabHandle srcCTab,PaletteHandle dstPalette,short srcUsage,
|
|
short srcTolerance)
|
|
= 0xAA9F;
|
|
pascal void Palette2CTab(PaletteHandle srcPalette,CTabHandle dstCTab)
|
|
= 0xAAA0;
|
|
pascal long Entry2Index(short entry)
|
|
= {0x7000,0xAAA2};
|
|
pascal void RestoreDeviceClut(GDHandle gd)
|
|
= {0x7002,0xAAA2};
|
|
pascal void ResizePalette(PaletteHandle p,short size)
|
|
= {0x7003,0xAAA2};
|
|
pascal void SaveFore(ColorSpec *c)
|
|
= {0x303C,0x040D,0xAAA2};
|
|
pascal void SaveBack(ColorSpec *c)
|
|
= {0x303C,0x040E,0xAAA2};
|
|
pascal void RestoreFore(const ColorSpec *c)
|
|
= {0x303C,0x040F,0xAAA2};
|
|
pascal void RestoreBack(const ColorSpec *c)
|
|
= {0x303C,0x0410,0xAAA2};
|
|
pascal OSErr SetDepth(GDHandle gd,short depth,short whichFlags,short flags)
|
|
= {0x303C,0x0A13,0xAAA2};
|
|
pascal short HasDepth(GDHandle gd,short depth,short whichFlags,short flags)
|
|
= {0x303C,0x0A14,0xAAA2};
|
|
pascal short PMgrVersion(void)
|
|
= {0x7015,0xAAA2};
|
|
pascal void SetPaletteUpdates(PaletteHandle p,short updates)
|
|
= {0x303C,0x0616,0xAAA2};
|
|
pascal short GetPaletteUpdates(PaletteHandle p)
|
|
= {0x303C,0x0417,0xAAA2};
|
|
pascal Boolean GetGray(GDHandle device,const RGBColor *backGround,RGBColor *foreGround)
|
|
= {0x303C,0x1219,0xAAA2};
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif
|