mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-04 00:03:54 -06:00
Implement and use shared memory framebuffer device rendering reoutine.
Use DMA mapping API. Signed-off-by: Paul Brook <paul@codesourcery.com> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6965 c046a42c-6fe2-441c-8c8c-71466251a162
This commit is contained in:
parent
602dafcf43
commit
714fa308a3
10 changed files with 253 additions and 231 deletions
|
@ -43,9 +43,10 @@
|
|||
/*
|
||||
* 2-bit colour
|
||||
*/
|
||||
static void glue(draw_line2_, DEPTH)(
|
||||
uint8_t *d, const uint8_t *s, int width, const uint16_t *pal)
|
||||
static void glue(draw_line2_, DEPTH)(void *opaque,
|
||||
uint8_t *d, const uint8_t *s, int width, int deststep)
|
||||
{
|
||||
uint16_t *pal = opaque;
|
||||
uint8_t v, r, g, b;
|
||||
|
||||
do {
|
||||
|
@ -81,9 +82,10 @@ static void glue(draw_line2_, DEPTH)(
|
|||
/*
|
||||
* 4-bit colour
|
||||
*/
|
||||
static void glue(draw_line4_, DEPTH)(
|
||||
uint8_t *d, const uint8_t *s, int width, const uint16_t *pal)
|
||||
static void glue(draw_line4_, DEPTH)(void *opaque,
|
||||
uint8_t *d, const uint8_t *s, int width, int deststep)
|
||||
{
|
||||
uint16_t *pal = opaque;
|
||||
uint8_t v, r, g, b;
|
||||
|
||||
do {
|
||||
|
@ -107,9 +109,10 @@ static void glue(draw_line4_, DEPTH)(
|
|||
/*
|
||||
* 8-bit colour
|
||||
*/
|
||||
static void glue(draw_line8_, DEPTH)(
|
||||
uint8_t *d, const uint8_t *s, int width, const uint16_t *pal)
|
||||
static void glue(draw_line8_, DEPTH)(void *opaque,
|
||||
uint8_t *d, const uint8_t *s, int width, int deststep)
|
||||
{
|
||||
uint16_t *pal = opaque;
|
||||
uint8_t v, r, g, b;
|
||||
|
||||
do {
|
||||
|
@ -126,8 +129,8 @@ static void glue(draw_line8_, DEPTH)(
|
|||
/*
|
||||
* 12-bit colour
|
||||
*/
|
||||
static void glue(draw_line12_, DEPTH)(
|
||||
uint8_t *d, const uint8_t *s, int width, const uint16_t *pal)
|
||||
static void glue(draw_line12_, DEPTH)(void *opaque,
|
||||
uint8_t *d, const uint8_t *s, int width, int deststep)
|
||||
{
|
||||
uint16_t v;
|
||||
uint8_t r, g, b;
|
||||
|
@ -146,8 +149,8 @@ static void glue(draw_line12_, DEPTH)(
|
|||
/*
|
||||
* 16-bit colour
|
||||
*/
|
||||
static void glue(draw_line16_, DEPTH)(
|
||||
uint8_t *d, const uint8_t *s, int width, const uint16_t *pal)
|
||||
static void glue(draw_line16_, DEPTH)(void *opaque,
|
||||
uint8_t *d, const uint8_t *s, int width, int deststep)
|
||||
{
|
||||
#if DEPTH == 16 && defined(WORDS_BIGENDIAN) == defined(TARGET_WORDS_BIGENDIAN)
|
||||
memcpy(d, s, width * 2);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue