2 * Copyright (c) 1998-2000 Apple Computer, Inc. All rights reserved.
4 * @APPLE_LICENSE_HEADER_START@
6 * The contents of this file constitute Original Code as defined in and
7 * are subject to the Apple Public Source License Version 1.1 (the
8 * "License"). You may not use this file except in compliance with the
9 * License. Please obtain a copy of the License at
10 * http://www.apple.com/publicsource and read it before using this file.
12 * This Original Code and all software distributed under the License are
13 * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER
14 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
15 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
16 * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the
17 * License for the specific language governing rights and limitations
20 * @APPLE_LICENSE_HEADER_END@
22 void setupCursor( IOPixelInformation
* info
);
23 void stopCursor( void );
24 IOReturn
doSetup( bool full
);
25 IOReturn
createSharedCursor( int shmemVersion
,
26 int maxWidth
, int maxHeight
);
27 IOReturn
setBoundingRect( Bounds
* bounds
);
28 IOReturn
setUserRanges( void );
29 IOReturn
getConnectFlagsForDisplayMode(
30 IODisplayModeID mode
, IOIndex connection
, UInt32
* flags
);
31 IOReturn
extGetDisplayModeCount( IOItemCount
* count
);
32 IOReturn
extGetDisplayModes( IODisplayModeID
* allModes
,
34 IOReturn
extSetDisplayMode( IODisplayModeID displayMode
,
36 IOReturn
extGetInformationForDisplayMode(
37 IODisplayModeID mode
, IODisplayModeInformation
* info
);
39 IOReturn
extGetVRAMMapOffset( IOPixelAperture aperture
,
40 IOByteCount
* offset
);
41 IOReturn
extSetBounds( Bounds
* bounds
);
43 IOReturn
extSetNewCursor( void * cursor
, IOIndex frame
,
44 IOOptionBits options
);
45 IOReturn
extSetCursorVisible( bool visible
);
46 IOReturn
extSetCursorPosition( SInt32 x
, SInt32 y
);
47 IOReturn
extSetColorConvertTable( UInt32 select
,
48 UInt8
* data
, IOByteCount length
);
49 IOReturn
extSetCLUTWithEntries( UInt32 index
, IOOptionBits options
,
50 IOColorEntry
* colors
, IOByteCount inputCount
);
51 IOReturn
makeModeList( void );
52 IOReturn
getDefaultMode( IOIndex connection
, IODisplayModeID
* mode
,
54 IOReturn
extValidateDetailedTiming(
55 void * description
, void * outDescription
,
56 IOByteCount inSize
, IOByteCount
* outSize
);
57 IOReturn
beginSystemSleep( void * ackRef
);
59 static inline void StdFBDisplayCursor( IOFramebuffer
* inst
);
60 static inline void StdFBRemoveCursor( IOFramebuffer
* inst
);
61 static inline void RemoveCursor( IOFramebuffer
* inst
);
62 static inline void DisplayCursor( IOFramebuffer
* inst
);
63 static inline void SysHideCursor( IOFramebuffer
* inst
);
64 static inline void SysShowCursor( IOFramebuffer
* inst
);
65 static inline void CheckShield( IOFramebuffer
* inst
);
67 static void StdFBDisplayCursor8P(
70 volatile unsigned char *vramPtr
,
71 unsigned int cursStart
,
77 static void StdFBDisplayCursor8G(
80 volatile unsigned char *vramPtr
,
81 unsigned int cursStart
,
87 static void StdFBDisplayCursor555(
90 volatile unsigned short *vramPtr
,
91 unsigned int cursStart
,
97 static void StdFBDisplayCursor444(
100 volatile unsigned short *vramPtr
,
101 unsigned int cursStart
,
102 unsigned int vramRow
,
103 unsigned int cursRow
,
107 static void StdFBDisplayCursor32Axxx(
108 IOFramebuffer
* inst
,
110 volatile unsigned int *vramPtr
,
111 unsigned int cursStart
,
112 unsigned int vramRow
,
113 unsigned int cursRow
,
117 static void StdFBDisplayCursor32xxxA(
118 IOFramebuffer
* inst
,
120 volatile unsigned int *vramPtr
,
121 unsigned int cursStart
,
122 unsigned int vramRow
,
123 unsigned int cursRow
,
127 static void StdFBRemoveCursor8(
128 IOFramebuffer
* inst
,
130 volatile unsigned char *vramPtr
,
131 unsigned int vramRow
,
134 static void StdFBRemoveCursor16(
135 IOFramebuffer
* inst
,
137 volatile unsigned short *vramPtr
,
138 unsigned int vramRow
,
142 static void StdFBRemoveCursor32(
143 IOFramebuffer
* inst
,
145 volatile unsigned int *vramPtr
,
146 unsigned int vramRow
,
150 static void deferredMoveCursor(IOFramebuffer
* inst
);
151 static void handleVBL(IOFramebuffer
* inst
, void * ref
);