mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-07 09:43:56 -06:00
vga: introduce VGADisplayParams
The next patches will introduce more parameters that cause a full refresh. Instead of adding arguments to get_offsets and lines to update_basic_params, do everything through a struct. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
parent
937de9a981
commit
f9b925fd41
3 changed files with 52 additions and 69 deletions
|
@ -56,6 +56,12 @@ struct VGACommonState;
|
|||
typedef uint8_t (* vga_retrace_fn)(struct VGACommonState *s);
|
||||
typedef void (* vga_update_retrace_info_fn)(struct VGACommonState *s);
|
||||
|
||||
typedef struct VGADisplayParams {
|
||||
uint32_t line_offset;
|
||||
uint32_t start_addr;
|
||||
uint32_t line_compare;
|
||||
} VGADisplayParams;
|
||||
|
||||
typedef struct VGACommonState {
|
||||
MemoryRegion *legacy_address_space;
|
||||
uint8_t *vram_ptr;
|
||||
|
@ -90,10 +96,7 @@ typedef struct VGACommonState {
|
|||
uint8_t palette[768];
|
||||
int32_t bank_offset;
|
||||
int (*get_bpp)(struct VGACommonState *s);
|
||||
void (*get_offsets)(struct VGACommonState *s,
|
||||
uint32_t *pline_offset,
|
||||
uint32_t *pstart_addr,
|
||||
uint32_t *pline_compare);
|
||||
void (*get_params)(struct VGACommonState *s, VGADisplayParams *params);
|
||||
void (*get_resolution)(struct VGACommonState *s,
|
||||
int *pwidth,
|
||||
int *pheight);
|
||||
|
@ -111,9 +114,7 @@ typedef struct VGACommonState {
|
|||
int graphic_mode;
|
||||
uint8_t shift_control;
|
||||
uint8_t double_scan;
|
||||
uint32_t line_offset;
|
||||
uint32_t line_compare;
|
||||
uint32_t start_addr;
|
||||
VGADisplayParams params;
|
||||
uint32_t plane_updated;
|
||||
uint32_t last_line_offset;
|
||||
uint8_t last_cw, last_ch;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue