[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 1 of 7] few more accessors
From: |
Stefano Stabellini |
Subject: |
[Qemu-devel] [PATCH 1 of 7] few more accessors |
Date: |
Thu, 18 Dec 2008 19:12:54 +0000 |
User-agent: |
Thunderbird 2.0.0.14 (X11/20080505) |
This patch introduces few more DisplayState accessors in hw/sm501.c.
Added the declaration of ds_get_bytes_per_pixel that was missing last
time.
Signed-off-by: Stefano Stabellini <address@hidden>
diff -r 20597e3d2632 console.h
--- a/console.h Thu Dec 11 00:14:30 2008 +0000
+++ b/console.h Thu Dec 11 11:00:50 2008 +0000
@@ -139,6 +139,11 @@
return ds->depth;
}
+static inline int ds_get_bytes_per_pixel(DisplayState *ds)
+{
+ return (ds->depth / 8);
+}
+
typedef unsigned long console_ch_t;
static inline void console_write_ch(console_ch_t *dest, uint32_t ch)
{
diff -r 20597e3d2632 hw/sm501.c
--- a/hw/sm501.c Thu Dec 11 00:14:30 2008 +0000
+++ b/hw/sm501.c Thu Dec 11 11:00:50 2008 +0000
@@ -940,7 +940,7 @@
static inline int get_depth_index(DisplayState *s)
{
- switch(s->depth) {
+ switch(ds_get_bits_per_pixel(s)) {
default:
case 8:
return 0;
@@ -970,7 +970,7 @@
uint8_t * src = s->local_mem;
int src_bpp = 0;
- int dst_bpp = s->ds->depth / 8 + (s->ds->depth % 8 ? 1 : 0);
+ int dst_bpp = ds_get_bytes_per_pixel(s->ds) +
(ds_get_bits_per_pixel(s->ds) % 8 ? 1 : 0);
uint32_t * palette = (uint32_t *)&s->dc_palette[SM501_DC_CRT_PALETTE
- SM501_DC_PANEL_PALETTE];
int ds_depth_index = get_depth_index(s->ds);
@@ -1024,7 +1024,7 @@
/* draw line and change status */
if (update) {
- draw_line(&s->ds->data[y * width * dst_bpp], src, width, palette);
+ draw_line(&(ds_get_data(s->ds)[y * width * dst_bpp]), src, width,
palette);
if (y_start < 0)
y_start = y;
if (page0 < page_min)