From ab2391ade1592936b95b106d17a77ff09ba852a8 Mon Sep 17 00:00:00 2001 From: Chris Young Date: Sun, 5 Jul 2009 18:15:55 +0000 Subject: [PATCH] Don't make the global bitmap a friend of the screen bitmap, instead allocate it so that alpha blitting and Cairo operations work correctly. Running NetSurf on a 16-bit screen is now possible without bits of the display missing or obliterated, however it does suffer a small performance hit. svn path=/trunk/netsurf/; revision=8331 --- amiga/gui.c | 5 ++--- amiga/gui_options.c | 2 +- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/amiga/gui.c b/amiga/gui.c index d1992576a..0c7f87a2e 100755 --- a/amiga/gui.c +++ b/amiga/gui.c @@ -509,7 +509,7 @@ void ami_openscreen(void) if(screenmodereq = AllocAslRequest(ASL_ScreenModeRequest,NULL)) { AslRequestTags(screenmodereq, - ASLSM_MinDepth,24, + ASLSM_MinDepth,16, ASLSM_MaxDepth,32, TAG_DONE); @@ -593,8 +593,7 @@ void gui_init2(int argc, char** argv) if(!option_direct_render) { glob.bm = p96AllocBitMap(scrn->Width,scrn->Width,32, - BMF_CLEAR | BMF_DISPLAYABLE | BMF_INTERLEAVED, - scrn->RastPort.BitMap,RGBFB_A8R8G8B8); + BMF_INTERLEAVED, NULL, RGBFB_A8R8G8B8); if(!glob.bm) warn_user("NoMemory",""); diff --git a/amiga/gui_options.c b/amiga/gui_options.c index 18215b88b..865629e62 100755 --- a/amiga/gui_options.c +++ b/amiga/gui_options.c @@ -498,7 +498,7 @@ void ami_gui_opts_open(void) GA_RelVerify, TRUE, GA_Disabled,screenmodedisabled, GETSCREENMODE_DisplayID,screenmodeid, - GETSCREENMODE_MinDepth, 24, + GETSCREENMODE_MinDepth, 16, GETSCREENMODE_MaxDepth, 32, GetScreenModeEnd, LAYOUT_AddChild, gow->gadgets[GID_OPTS_SCREENNAME] = StringObject,