ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/cebix/SheepShaver/src/include/video.h
(Generate patch)

Comparing SheepShaver/src/include/video.h (file contents):
Revision 1.1.1.1 by cebix, 2002-02-04T16:58:13Z vs.
Revision 1.9 by gbeauche, 2004-12-19T15:14:22Z

# Line 1 | Line 1
1   /*
2   *  video.h - Video/graphics emulation
3   *
4 < *  SheepShaver (C) 1997-2002 Marc Hellwig and Christian Bauer
4 > *  SheepShaver (C) 1997-2004 Marc Hellwig and Christian Bauer
5   *
6   *  This program is free software; you can redistribute it and/or modify
7   *  it under the terms of the GNU General Public License as published by
# Line 24 | Line 24
24   extern bool VideoActivated(void);
25   extern bool VideoSnapshot(int xsize, int ysize, uint8 *p);
26  
27 < extern int16 VideoDoDriverIO(void *spaceID, void *commandID, void *commandContents, uint32 commandCode, uint32 commandKind);
27 > extern int16 VideoDoDriverIO(uint32 spaceID, uint32 commandID, uint32 commandContents, uint32 commandCode, uint32 commandKind);
28  
29   // System specific and internal functions/data
30   struct VideoInfo {
# Line 46 | Line 46 | enum { // viAppleMode
46          APPLE_32_BIT
47   };
48  
49 + // 1, 2, 4 and 8 bit depths use a color palette
50 + inline bool IsDirectMode(int mode)
51 + {
52 +        return mode == APPLE_16_BIT || mode == APPLE_32_BIT;
53 + }
54 +
55 + // Return the depth code that corresponds to the specified bits-per-pixel value
56 + inline int DepthModeForPixelDepth(int depth)
57 + {
58 +        switch (depth) {
59 +        case 1: return APPLE_1_BIT;
60 +        case 2: return APPLE_2_BIT;
61 +        case 4: return APPLE_4_BIT;
62 +        case 8: return APPLE_8_BIT;
63 +        case 15: case 16: return APPLE_16_BIT;
64 +        case 24: case 32: return APPLE_32_BIT;
65 +        default: return APPLE_1_BIT;
66 +        }
67 + }
68 +
69 + // Return a bytes-per-row value (assuming no padding) for the specified depth and pixel width
70 + inline uint32 TrivialBytesPerRow(uint32 width, int mode)
71 + {
72 +        switch (mode) {
73 +        case APPLE_1_BIT: return width / 8;
74 +        case APPLE_2_BIT: return width / 4;
75 +        case APPLE_4_BIT: return width / 2;
76 +        case APPLE_8_BIT: return width;
77 +        case APPLE_16_BIT: return width * 2;
78 +        case APPLE_32_BIT: return width * 4;
79 +        default: return width;
80 +        }
81 + }
82 +
83   enum {  // viAppleID
84          APPLE_640x480 = 0x81,
85          APPLE_W_640x480,
86          APPLE_800x600,
87          APPLE_W_800x600,
88          APPLE_1024x768,
89 +        APPLE_1152x768,
90          APPLE_1152x900,
91          APPLE_1280x1024,
92          APPLE_1600x1200,
# Line 73 | Line 108 | extern rgb_color mac_pal[256];
108   extern uint8 remap_mac_be[256];
109   extern uint8 MacCursor[68];
110  
76 struct GammaTbl;
77
111   struct VidLocals{
112          uint16  saveMode;
113          uint32  saveData;
114          uint16  savePage;
115          uint32  saveBaseAddr;
116 <        GammaTbl *gammaTable;           // Current gamma table
116 >        uint32  gammaTable;                     // Mac address of gamma tble
117          uint32  maxGammaTableSize;      // Biggest gamma table allocated
118          uint32  saveVidParms;
119          bool    luminanceMapping;       // Luminance mapping on/off
# Line 103 | Line 136 | extern void VideoQuitFullScreen(void);
136  
137   extern void video_set_palette(void);
138   extern void video_set_cursor(void);
139 + extern bool video_can_change_cursor(void);
140   extern int16 video_mode_change(VidLocals *csSave, uint32 ParamPtr);
141  
142   extern int16 VSLDoInterruptService(uint32 arg1);
143 < extern void NQDMisc(uint32 arg1, void *arg2);
143 > extern void NQDMisc(uint32 arg1, uintptr arg2);
144 >
145 > // Native QuickDraw acceleration callbacks
146 > extern bool NQD_sync_hook(uint32);
147 > extern bool NQD_bitblt_hook(uint32);
148 > extern bool NQD_fillrect_hook(uint32);
149 > extern void NQD_bitblt(uint32);
150 > extern void NQD_invrect(uint32);
151 > extern void NQD_fillrect(uint32);
152  
153   extern bool keyfile_valid;
154  

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines