26#ifndef _ULTIBO_FRAMEBUFFER_H
27#define _ULTIBO_FRAMEBUFFER_H
38#define FRAMEBUFFER_NAME_PREFIX "Framebuffer"
41#define FRAMEBUFFER_TYPE_NONE 0
42#define FRAMEBUFFER_TYPE_HARDWARE 1
43#define FRAMEBUFFER_TYPE_VIRTUAL 2
45#define FRAMEBUFFER_TYPE_MAX 2
48#define FRAMEBUFFER_STATE_DISABLED 0
49#define FRAMEBUFFER_STATE_ENABLED 1
51#define FRAMEBUFFER_STATE_MAX 1
54#define FRAMEBUFFER_CURSOR_DISABLED 0
55#define FRAMEBUFFER_CURSOR_ENABLED 1
58#define FRAMEBUFFER_FLAG_NONE 0x00000000
59#define FRAMEBUFFER_FLAG_DMA 0x00000001
60#define FRAMEBUFFER_FLAG_MARK 0x00000002
61#define FRAMEBUFFER_FLAG_COMMIT 0x00000004
62#define FRAMEBUFFER_FLAG_BLANK 0x00000008
63#define FRAMEBUFFER_FLAG_CACHED 0x00000010
64#define FRAMEBUFFER_FLAG_SWAP 0x00000020
65#define FRAMEBUFFER_FLAG_BACKLIGHT 0x00000040
66#define FRAMEBUFFER_FLAG_VIRTUAL 0x00000080
67#define FRAMEBUFFER_FLAG_OFFSETX 0x00000100
68#define FRAMEBUFFER_FLAG_OFFSETY 0x00000200
69#define FRAMEBUFFER_FLAG_SYNC 0x00000400
70#define FRAMEBUFFER_FLAG_CURSOR 0x00000800
73#define FRAMEBUFFER_TRANSFER_NONE 0x00000000
74#define FRAMEBUFFER_TRANSFER_DMA 0x00000001
struct _DEVICE DEVICE
Definition devices.h:373
uint32_t STDCALL(* framebuffer_device_get_rect_proc)(FRAMEBUFFER_DEVICE *framebuffer, uint32_t x, uint32_t y, void *buffer, uint32_t width, uint32_t height, uint32_t skip, uint32_t flags)
Definition framebuffer.h:131
uint32_t STDCALL framebuffer_device_set_cursor(FRAMEBUFFER_DEVICE *framebuffer, uint32_t width, uint32_t height, uint32_t hotspotx, uint32_t hotspoty, void *image, uint32_t len)
Set the mouse cursor image and properties of a framebuffer device.
uint32_t STDCALL framebuffer_device_commit(FRAMEBUFFER_DEVICE *framebuffer, size_t address, uint32_t size, uint32_t flags)
Commit a region written to the framebuffer and signal the device to take any necessary actions.
struct _FRAMEBUFFER_PALETTE FRAMEBUFFER_PALETTE
Definition framebuffer.h:77
uint32_t STDCALL framebuffer_rotation_to_string(uint32_t rotation, char *string, uint32_t len)
uint32_t STDCALL framebuffer_mode_to_string(uint32_t mode, char *string, uint32_t len)
uint32_t STDCALL(* framebuffer_device_put_rect_proc)(FRAMEBUFFER_DEVICE *framebuffer, uint32_t x, uint32_t y, void *buffer, uint32_t width, uint32_t height, uint32_t skip, uint32_t flags)
Definition framebuffer.h:132
uint32_t STDCALL(* framebuffer_device_set_properties_proc)(FRAMEBUFFER_DEVICE *framebuffer, FRAMEBUFFER_PROPERTIES *properties)
Definition framebuffer.h:154
void STDCALL framebuffer_device_show_cursor(FRAMEBUFFER_DEVICE *framebuffer)
Save the framebuffer area under the cursor to the cursor buffer and merge the cursor input with it to...
void *STDCALL framebuffer_device_get_line(FRAMEBUFFER_DEVICE *framebuffer, uint32_t y)
Get the address of the start of a row in framebuffer memory.
FRAMEBUFFER_DEVICE *STDCALL framebuffer_device_find_by_description(const char *description)
Find a framebuffer device by description in the framebuffer table.
uint32_t STDCALL(* framebuffer_device_wait_sync_proc)(FRAMEBUFFER_DEVICE *framebuffer)
Definition framebuffer.h:139
FRAMEBUFFER_DEVICE *STDCALL framebuffer_device_check(FRAMEBUFFER_DEVICE *framebuffer)
Check if the supplied Framebuffer device is in the Framebuffer table.
uint32_t STDCALL framebuffer_device_set_offset(FRAMEBUFFER_DEVICE *framebuffer, uint32_t x, uint32_t y, BOOL pan)
Set the virtual offset X and Y of a framebuffer device.
uint32_t STDCALL(* framebuffer_enumerate_cb)(FRAMEBUFFER_DEVICE *framebuffer, void *data)
Definition framebuffer.h:115
uint32_t STDCALL(* framebuffer_device_set_offset_proc)(FRAMEBUFFER_DEVICE *framebuffer, uint32_t x, uint32_t y, BOOL pan)
Definition framebuffer.h:142
uint32_t STDCALL(* framebuffer_device_allocate_proc)(FRAMEBUFFER_DEVICE *framebuffer, FRAMEBUFFER_PROPERTIES *properties)
Definition framebuffer.h:120
uint32_t STDCALL framebuffer_device_register(FRAMEBUFFER_DEVICE *framebuffer)
Register a new Framebuffer in the Framebuffer table.
uint32_t STDCALL framebuffer_device_get_offset(FRAMEBUFFER_DEVICE *framebuffer, uint32_t *x, uint32_t *y)
Get the virtual offset X and Y from a framebuffer device.
uint32_t STDCALL framebuffer_device_get_properties(FRAMEBUFFER_DEVICE *framebuffer, FRAMEBUFFER_PROPERTIES *properties)
Get the current properties from a framebuffer device.
uint32_t STDCALL framebuffer_device_write(FRAMEBUFFER_DEVICE *framebuffer, uint32_t x, uint32_t y, void *buffer, uint32_t len, uint32_t flags)
Write one or more pixels to framebuffer device memory from a supplied buffer.
uint32_t STDCALL framebuffer_device_deregister(FRAMEBUFFER_DEVICE *framebuffer)
Deregister a Framebuffer from the Framebuffer table.
uint32_t STDCALL framebuffer_device_put_rect(FRAMEBUFFER_DEVICE *framebuffer, uint32_t x, uint32_t y, void *buffer, uint32_t width, uint32_t height, uint32_t skip, uint32_t flags)
Put a rectangular area of pixels from a supplied buffer to framebuffer memory.
uint32_t STDCALL framebuffer_device_get_palette(FRAMEBUFFER_DEVICE *framebuffer, FRAMEBUFFER_PALETTE *palette)
Get the 8 bit color palette from a framebuffer device.
uint32_t STDCALL framebuffer_device_copy_rect(FRAMEBUFFER_DEVICE *framebuffer, uint32_t x1, uint32_t y1, uint32_t x2, uint32_t y2, uint32_t width, uint32_t height, uint32_t flags)
Copy a rectangular area of pixels within framebuffer memory.
uint32_t STDCALL framebuffer_device_wait_sync(FRAMEBUFFER_DEVICE *framebuffer)
Wait for the next vertical sync signal from the display hardware.
uint32_t STDCALL(* framebuffer_device_get_offset_proc)(FRAMEBUFFER_DEVICE *framebuffer, uint32_t *x, uint32_t *y)
Definition framebuffer.h:141
uint32_t STDCALL(* framebuffer_device_fill_rect_proc)(FRAMEBUFFER_DEVICE *framebuffer, uint32_t x, uint32_t y, uint32_t width, uint32_t height, uint32_t color, uint32_t flags)
Definition framebuffer.h:134
uint32_t STDCALL(* framebuffer_notification_cb)(DEVICE *device, void *data, uint32_t notification)
Definition framebuffer.h:117
uint32_t STDCALL(* framebuffer_device_set_backlight_proc)(FRAMEBUFFER_DEVICE *framebuffer, uint32_t brightness)
Definition framebuffer.h:148
uint32_t STDCALL framebuffer_device_set_offset_ex(FRAMEBUFFER_DEVICE *framebuffer, uint32_t x, uint32_t y, BOOL pan, BOOL _switch)
Set the virtual offset X and Y of a framebuffer device.
uint32_t STDCALL framebuffer_device_get_format(FRAMEBUFFER_DEVICE *framebuffer)
Get the color format of a framebuffer device.
uint32_t STDCALL(* framebuffer_device_update_cursor_proc)(FRAMEBUFFER_DEVICE *framebuffer, BOOL enabled, int32_t x, int32_t y, BOOL relative)
Definition framebuffer.h:151
uint32_t STDCALL framebuffer_depth_to_string(uint32_t depth, char *string, uint32_t len)
BOOL STDCALL framebuffer_device_check_flag(FRAMEBUFFER_DEVICE *framebuffer, uint32_t flag)
Check if a framebuffer device supports a flag value.
uint32_t STDCALL(* framebuffer_device_copy_rect_proc)(FRAMEBUFFER_DEVICE *framebuffer, uint32_t x1, uint32_t y1, uint32_t x2, uint32_t y2, uint32_t width, uint32_t height, uint32_t flags)
Definition framebuffer.h:133
uint32_t STDCALL(* framebuffer_device_read_proc)(FRAMEBUFFER_DEVICE *framebuffer, uint32_t x, uint32_t y, void *buffer, uint32_t len, uint32_t flags)
Definition framebuffer.h:125
uint32_t STDCALL framebuffer_state_to_string(uint32_t framebufferstate, char *string, uint32_t len)
Convert a Framebuffer state value to a string.
uint32_t STDCALL(* framebuffer_device_get_properties_proc)(FRAMEBUFFER_DEVICE *framebuffer, FRAMEBUFFER_PROPERTIES *properties)
Definition framebuffer.h:153
uint32_t STDCALL framebuffer_device_destroy(FRAMEBUFFER_DEVICE *framebuffer)
Destroy an existing Framebuffer entry.
void *STDCALL(* framebuffer_device_get_line_proc)(FRAMEBUFFER_DEVICE *framebuffer, uint32_t y)
Definition framebuffer.h:136
uint32_t STDCALL framebuffer_device_release(FRAMEBUFFER_DEVICE *framebuffer)
Disable and release a framebuffer device.
void *STDCALL(* framebuffer_device_get_point_proc)(FRAMEBUFFER_DEVICE *framebuffer, uint32_t x, uint32_t y)
Definition framebuffer.h:137
uint32_t STDCALL framebuffer_device_mark(FRAMEBUFFER_DEVICE *framebuffer, uint32_t x, uint32_t y, uint32_t width, uint32_t height, uint32_t flags)
Mark a region written to the framebuffer and signal the device to take any necessary actions.
uint32_t STDCALL framebuffer_device_blank(FRAMEBUFFER_DEVICE *framebuffer, BOOL blank)
Blank (Turn off) the display of a framebuffer device.
uint32_t STDCALL framebuffer_device_allocate(FRAMEBUFFER_DEVICE *framebuffer, FRAMEBUFFER_PROPERTIES *properties)
Allocate and enable a framebuffer device using supplied properties or defaults.
FRAMEBUFFER_DEVICE *STDCALL framebuffer_device_get_default(void)
Get the current default framebuffer device.
uint32_t STDCALL framebuffer_device_set_backlight(FRAMEBUFFER_DEVICE *framebuffer, uint32_t brightness)
Set the brightness of the backlight of a framebuffer device.
uint32_t STDCALL framebuffer_device_read(FRAMEBUFFER_DEVICE *framebuffer, uint32_t x, uint32_t y, void *buffer, uint32_t len, uint32_t flags)
Read one or more pixels from framebuffer device memory to a supplied buffer.
uint32_t STDCALL(* framebuffer_device_set_palette_proc)(FRAMEBUFFER_DEVICE *framebuffer, FRAMEBUFFER_PALETTE *palette)
Definition framebuffer.h:146
FRAMEBUFFER_DEVICE *STDCALL framebuffer_device_create(void)
Create a new Framebuffer entry.
uint32_t STDCALL framebuffer_device_swap(uint32_t value)
No longer required (See ColorDefaultToFormat and ColorFormatToDefault).
struct _FRAMEBUFFER_DEVICE FRAMEBUFFER_DEVICE
Definition framebuffer.h:112
uint32_t STDCALL framebuffer_device_fill_rect(FRAMEBUFFER_DEVICE *framebuffer, uint32_t x, uint32_t y, uint32_t width, uint32_t height, uint32_t color, uint32_t flags)
Fill a rectangular area of pixels within framebuffer memory.
uint32_t STDCALL(* framebuffer_device_commit_proc)(FRAMEBUFFER_DEVICE *framebuffer, uint32_t address, uint32_t size, uint32_t flags)
Definition framebuffer.h:129
uint32_t STDCALL framebuffer_cursor_to_string(uint32_t state, char *string, uint32_t len)
uint32_t STDCALL framebuffer_device_get_rect(FRAMEBUFFER_DEVICE *framebuffer, uint32_t x, uint32_t y, void *buffer, uint32_t width, uint32_t height, uint32_t skip, uint32_t flags)
Get a rectangular area of pixels from framebuffer memory to a supplied buffer.
uint32_t STDCALL framebuffer_device_set_default(FRAMEBUFFER_DEVICE *framebuffer)
Set the current default framebuffer device.
uint32_t STDCALL framebuffer_device_notification(FRAMEBUFFER_DEVICE *framebuffer, framebuffer_notification_cb callback, void *data, uint32_t notification, uint32_t flags)
Register a notification for framebuffer device changes.
uint32_t STDCALL framebuffer_device_enumerate(framebuffer_enumerate_cb callback, void *data)
Enumerate all framebuffer devices in the framebuffer table.
FRAMEBUFFER_DEVICE *STDCALL framebuffer_device_find(uint32_t framebufferid)
Find a framebuffer device by ID in the framebuffer table.
uint32_t STDCALL framebuffer_device_get_count(void)
Get the current framebuffer device count.
FRAMEBUFFER_DEVICE *STDCALL framebuffer_device_find_by_name(const char *name)
Find a framebuffer device by name in the framebuffer table.
uint32_t STDCALL(* framebuffer_device_get_palette_proc)(FRAMEBUFFER_DEVICE *framebuffer, FRAMEBUFFER_PALETTE *palette)
Definition framebuffer.h:145
uint32_t STDCALL framebuffer_device_update_cursor(FRAMEBUFFER_DEVICE *framebuffer, BOOL enabled, int32_t x, int32_t y, BOOL relative)
Update the position and state for the mouse cursor of a framebuffer device.
uint32_t STDCALL framebuffer_device_set_properties(FRAMEBUFFER_DEVICE *framebuffer, FRAMEBUFFER_PROPERTIES *properties)
Set the current properties for a framebuffer device.
uint32_t STDCALL(* framebuffer_device_set_cursor_proc)(FRAMEBUFFER_DEVICE *framebuffer, uint32_t width, uint32_t height, uint32_t hotspotx, uint32_t hotspoty, void *image, uint32_t len)
Definition framebuffer.h:150
uint32_t STDCALL(* framebuffer_device_set_offset_ex_proc)(FRAMEBUFFER_DEVICE *framebuffer, uint32_t x, uint32_t y, BOOL pan, BOOL _switch)
Definition framebuffer.h:143
uint32_t STDCALL(* framebuffer_device_mark_proc)(FRAMEBUFFER_DEVICE *framebuffer, uint32_t x, uint32_t y, uint32_t width, uint32_t height, uint32_t flags)
Definition framebuffer.h:128
FRAMEBUFFER_DEVICE *STDCALL framebuffer_device_create_ex(uint32_t size)
Create a new Framebuffer entry.
uint32_t STDCALL(* framebuffer_device_blank_proc)(FRAMEBUFFER_DEVICE *framebuffer, BOOL blank)
Definition framebuffer.h:123
uint32_t STDCALL framebuffer_device_set_palette(FRAMEBUFFER_DEVICE *framebuffer, FRAMEBUFFER_PALETTE *palette)
Set the 8 bit color palette of a framebuffer device.
uint32_t STDCALL framebuffer_type_to_string(uint32_t framebuffertype, char *string, uint32_t len)
Convert a Framebuffer type value to a string.
struct _FRAMEBUFFER_PROPERTIES FRAMEBUFFER_PROPERTIES
Definition framebuffer.h:85
uint32_t STDCALL(* framebuffer_device_release_proc)(FRAMEBUFFER_DEVICE *framebuffer)
Definition framebuffer.h:121
uint32_t STDCALL(* framebuffer_device_write_proc)(FRAMEBUFFER_DEVICE *framebuffer, uint32_t x, uint32_t y, void *buffer, uint32_t len, uint32_t flags)
Definition framebuffer.h:126
void *STDCALL framebuffer_device_get_point(FRAMEBUFFER_DEVICE *framebuffer, uint32_t x, uint32_t y)
Get the address of the specified row and column in framebuffer memory.
void STDCALL framebuffer_device_hide_cursor(FRAMEBUFFER_DEVICE *framebuffer)
Restore the framebuffer area under the cursor from the cursor buffer.
uint32_t STDCALL framebuffer_order_to_string(uint32_t order, char *string, uint32_t len)
int32_t LONGBOOL
Compatibility with FPC LongBool type (4 bytes).
Definition globaltypes.h:56
#define STDCALL
Definition globaltypes.h:45
_Bool BOOL
Built in Boolean type (1 byte) (Redeclared here for flexibility).
Definition globaltypes.h:55
HANDLE MUTEX_HANDLE
Definition globaltypes.h:105
Definition framebuffer.h:158
uint32_t overscantop
Framebuffer Overscan Top (Pixels).
Definition framebuffer.h:212
FRAMEBUFFER_DEVICE * next
Next entry in Framebuffer device table.
Definition framebuffer.h:235
uint32_t virtualwidth
Framebuffer Virtual Width (Pixels).
Definition framebuffer.h:208
uint32_t cursory
Framebuffer Cursor Y (Pixels).
Definition framebuffer.h:218
uint32_t physicalwidth
Framebuffer Physical Width (Pixels).
Definition framebuffer.h:206
framebuffer_device_wait_sync_proc devicewaitsync
A device specific DeviceWaitSync method implementing a standard framebuffer device interface (Optiona...
Definition framebuffer.h:177
MUTEX_HANDLE lock
Device lock.
Definition framebuffer.h:198
uint32_t pitch
Framebuffer pitch (Bytes per Line).
Definition framebuffer.h:201
framebuffer_device_get_properties_proc devicegetproperties
A device specific DeviceGetProperties method implementing a standard framebuffer device interface (Or...
Definition framebuffer.h:186
uint32_t framebufferstate
Framebuffer device state (eg FRAMEBUFFER_STATE_ENABLED).
Definition framebuffer.h:163
framebuffer_device_blank_proc deviceblank
A device specific DeviceBlank method implementing a standard framebuffer device interface (Optional).
Definition framebuffer.h:166
framebuffer_device_mark_proc devicemark
A device specific DeviceMark method implementing a standard framebuffer device interface (Optional).
Definition framebuffer.h:169
uint32_t offsety
Framebuffer Virtual Offset Y (Pixels).
Definition framebuffer.h:211
uint32_t writecount
Definition framebuffer.h:192
uint32_t order
Framebuffer pixel order (BGR/RGB).
Definition framebuffer.h:203
framebuffer_device_get_point_proc devicegetpoint
A device specific DeviceGetPoint method implementing a standard framebuffer device interface (Or nil ...
Definition framebuffer.h:176
uint32_t allocatecount
Definition framebuffer.h:189
void * cursorbuffer
Buffer for pixels currently under cursor (Native color format).
Definition framebuffer.h:227
framebuffer_device_set_offset_ex_proc devicesetoffsetex
A device specific DeviceSetOffsetEx method implementing a standard framebuffer device interface (Opti...
Definition framebuffer.h:180
void * cursorinput
Buffer for cursor image pixels (Native color format).
Definition framebuffer.h:226
uint32_t offsetx
Framebuffer Virtual Offset X (Pixels).
Definition framebuffer.h:210
DEVICE device
The Device entry for this Framebuffer device.
Definition framebuffer.h:160
uint32_t cursorwidth
Framebuffer Cursor Width (Pixels).
Definition framebuffer.h:229
uint32_t putcount
Definition framebuffer.h:194
uint32_t fillcount
Definition framebuffer.h:196
framebuffer_device_allocate_proc deviceallocate
A device specific DeviceAllocate method implementing a standard framebuffer device interface (Mandato...
Definition framebuffer.h:164
framebuffer_device_write_proc devicewrite
A device specific DeviceWrite method implementing a standard framebuffer device interface (Or nil if ...
Definition framebuffer.h:168
framebuffer_device_update_cursor_proc deviceupdatecursor
A device specific DeviceUpdateCursor method implementing a standard framebuffer device interface (Or ...
Definition framebuffer.h:185
uint32_t format
Framebuffer color format (eg COLOR_FORMAT_ARGB32).
Definition framebuffer.h:205
framebuffer_device_copy_rect_proc devicecopyrect
A device specific DeviceCopyRect method implementing a standard framebuffer device interface (Or nil ...
Definition framebuffer.h:173
uint32_t releasecount
Definition framebuffer.h:190
framebuffer_device_set_cursor_proc devicesetcursor
A device specific DeviceSetCursor method implementing a standard framebuffer device interface (Or nil...
Definition framebuffer.h:184
framebuffer_device_set_palette_proc devicesetpalette
A device specific DeviceSetPalette method implementing a standard framebuffer device interface (Optio...
Definition framebuffer.h:182
uint32_t mode
Framebuffer alpha mode (Enabled/Reversed/Ignored).
Definition framebuffer.h:204
uint32_t getcount
Definition framebuffer.h:193
framebuffer_device_set_properties_proc devicesetproperties
A device specific DeviceSetProperties method implementing a standard framebuffer device interface (Or...
Definition framebuffer.h:187
framebuffer_device_release_proc devicerelease
A device specific DeviceRelease method implementing a standard framebuffer device interface (Mandator...
Definition framebuffer.h:165
void * cursorimage
Buffer for cursor image pixels (COLOR_FORMAT_DEFAULT).
Definition framebuffer.h:225
uint32_t cursorhotspoty
Framebuffer Cursor Hotspot Y (Pixels).
Definition framebuffer.h:232
framebuffer_device_fill_rect_proc devicefillrect
A device specific DeviceFillRect method implementing a standard framebuffer device interface (Or nil ...
Definition framebuffer.h:174
uint32_t overscanleft
Framebuffer Overscan Left (Pixels).
Definition framebuffer.h:214
uint32_t physicalheight
Framebuffer Physical Height (Pixels).
Definition framebuffer.h:207
uint32_t overscanbottom
Framebuffer Overscan Bottom (Pixels).
Definition framebuffer.h:213
framebuffer_device_get_rect_proc devicegetrect
A device specific DeviceGetRect method implementing a standard framebuffer device interface (Or nil i...
Definition framebuffer.h:171
uint32_t overscanright
Framebuffer Overscan Right (Pixels).
Definition framebuffer.h:215
uint32_t cursorhotspotx
Framebuffer Cursor Hotspot X (Pixels).
Definition framebuffer.h:231
size_t address
Framebuffer address.
Definition framebuffer.h:199
void * linebuffer
Buffer for line fills.
Definition framebuffer.h:221
framebuffer_device_commit_proc devicecommit
A device specific DeviceCommit method implementing a standard framebuffer device interface (Optional)...
Definition framebuffer.h:170
uint32_t size
Framebuffer size (Bytes).
Definition framebuffer.h:200
uint32_t virtualheight
Framebuffer Virtual Height (Pixels).
Definition framebuffer.h:209
uint32_t readcount
Definition framebuffer.h:191
framebuffer_device_read_proc deviceread
A device specific DeviceRead method implementing a standard framebuffer device interface (Or nil if t...
Definition framebuffer.h:167
uint32_t cursorstate
Framebuffer Cursor State (eg FRAMEBUFFER_CURSOR_ENABLED).
Definition framebuffer.h:219
LONGBOOL cursorupdate
Flag to indicate if cursor update (Show/Hide) is in progress.
Definition framebuffer.h:224
framebuffer_device_get_line_proc devicegetline
A device specific DeviceGetLine method implementing a standard framebuffer device interface (Or nil i...
Definition framebuffer.h:175
uint32_t cursorx
Framebuffer Cursor X (Pixels).
Definition framebuffer.h:217
void * cursoroutput
Buffer for cursor pixels currently displayed (Native color format).
Definition framebuffer.h:228
uint32_t copycount
Definition framebuffer.h:195
uint32_t rotation
Framebuffer Rotation (eg FRAMEBUFFER_ROTATION_180).
Definition framebuffer.h:216
void * copybuffer
Buffer for overlapped copy.
Definition framebuffer.h:222
FRAMEBUFFER_DEVICE * prev
Previous entry in Framebuffer device table.
Definition framebuffer.h:234
uint32_t cursorheight
Framebuffer Cursor Height (Pixels).
Definition framebuffer.h:230
framebuffer_device_get_palette_proc devicegetpalette
A device specific DeviceGetPalette method implementing a standard framebuffer device interface (Optio...
Definition framebuffer.h:181
framebuffer_device_put_rect_proc deviceputrect
A device specific DevicePutRect method implementing a standard framebuffer device interface (Or nil i...
Definition framebuffer.h:172
uint32_t framebufferid
Unique Id of this Framebuffer device in the Framebuffer device table.
Definition framebuffer.h:162
framebuffer_device_set_backlight_proc devicesetbacklight
A device specific DeviceSetBacklight method implementing a standard framebuffer device interface (Opt...
Definition framebuffer.h:183
uint32_t depth
Framebuffer depth (Bits per Pixel)(8/16/24/32).
Definition framebuffer.h:202
framebuffer_device_get_offset_proc devicegetoffset
A device specific DeviceGetOffset method implementing a standard framebuffer device interface (Option...
Definition framebuffer.h:178
framebuffer_device_set_offset_proc devicesetoffset
A device specific DeviceSetOffset method implementing a standard framebuffer device interface (Option...
Definition framebuffer.h:179
Definition framebuffer.h:79
uint32_t start
The number of the first valid entry in the palette.
Definition framebuffer.h:80
uint32_t count
The total number of entries in the palette.
Definition framebuffer.h:81
uint32_t entries[256]
The palette entries in COLOR_FORMAT_DEFAULT format.
Definition framebuffer.h:82
Definition framebuffer.h:87
uint32_t overscantop
Framebuffer Overscan Top (Pixels).
Definition framebuffer.h:102
uint32_t virtualwidth
Framebuffer Virtual Width (Pixels).
Definition framebuffer.h:98
uint32_t cursory
Framebuffer Cursor Y (Pixels) (Ignored for Allocate / SetProperties).
Definition framebuffer.h:108
uint32_t physicalwidth
Framebuffer Physical Width (Pixels).
Definition framebuffer.h:96
uint32_t pitch
Framebuffer pitch (Bytes per Line) (Ignored for Allocate / SetProperties).
Definition framebuffer.h:91
uint32_t offsety
Framebuffer Virtual Offset Y (Pixels).
Definition framebuffer.h:101
uint32_t order
Framebuffer pixel order (BGR/RGB).
Definition framebuffer.h:93
uint32_t offsetx
Framebuffer Virtual Offset X (Pixels).
Definition framebuffer.h:100
uint32_t format
Framebuffer color format (eg COLOR_FORMAT_ARGB32) (Ignored for Allocate / SetProperties).
Definition framebuffer.h:95
uint32_t mode
Framebuffer alpha mode (Enabled/Reversed/Ignored).
Definition framebuffer.h:94
uint32_t flags
Framebuffer device flags (eg FRAMEBUFFER_FLAG_COMMIT) (Ignored for Allocate / SetProperties).
Definition framebuffer.h:88
uint32_t overscanleft
Framebuffer Overscan Left (Pixels).
Definition framebuffer.h:104
uint32_t physicalheight
Framebuffer Physical Height (Pixels).
Definition framebuffer.h:97
uint32_t overscanbottom
Framebuffer Overscan Bottom (Pixels).
Definition framebuffer.h:103
uint32_t overscanright
Framebuffer Overscan Right (Pixels).
Definition framebuffer.h:105
size_t address
Framebuffer address (Ignored for Allocate / SetProperties).
Definition framebuffer.h:89
uint32_t size
Framebuffer size (Bytes) (Ignored for Allocate / SetProperties).
Definition framebuffer.h:90
uint32_t virtualheight
Framebuffer Virtual Height (Pixels).
Definition framebuffer.h:99
uint32_t cursorstate
Framebuffer Cursor State (eg FRAMEBUFFER_CURSOR_ENABLED) (Ignored for Allocate / SetProperties).
Definition framebuffer.h:109
uint32_t cursorx
Framebuffer Cursor X (Pixels) (Ignored for Allocate / SetProperties).
Definition framebuffer.h:107
uint32_t rotation
Framebuffer Rotation (eg FRAMEBUFFER_ROTATION_180).
Definition framebuffer.h:106
uint32_t depth
Framebuffer depth (Bits per Pixel)(8/16/24/32).
Definition framebuffer.h:92