Commit Graph

163 Commits

Author SHA1 Message Date
Vincent Sanders
c105738fa3 Change LOG() macro to be varadic
This changes the LOG macro to be varadic removing the need for all
callsites to have double bracketing and allows for future improvement
on how we use the logging macros.

The callsites were changed with coccinelle and the changes checked by
hand. Compile tested for several frontends but not all.

A formatting annotation has also been added which allows the compiler
to check the parameters and types passed to the logging.
2015-05-28 16:08:46 +01:00
Chris Young
ad779dc38a Revert "Attempt to avoid a crash in ami_plot()"
This reverts commit e64d48980e.
2015-04-27 18:26:58 +01:00
Chris Young
e64d48980e Attempt to avoid a crash in ami_plot() 2015-04-25 23:04:56 +01:00
Chris Young
c8caf08ef1 As the content interface is now doing the scaling, we render to a native BitMap and then copy that to the RGBA32 bitmap buffer without re-scaling.
The native BitMap is currently discarded and will be re-created when it is displayed.
2015-04-25 13:13:30 +01:00
Vincent Sanders
fb0bd79944 update amiga frontend to use bitmap operation table 2015-04-16 22:36:29 +01:00
Chris Young
81f6cd2074 Correct the screen depth check for setting friend bitmaps.
Add some comments because using friend bitmaps in NetSurf causes problems under OS4.
2015-03-29 23:37:23 +01:00
Chris Young
db91442304 Remove branches that can't be taken under OS3
Micro-optimise these for OS4.1
Remove dummy compositing defines from os3support.h
2015-03-01 11:50:20 +00:00
Chris Young
947c466c4b Split plotting and widthing functions up 2015-02-28 13:01:16 +00:00
Chris Young
6c7a3c3a73 Clear the window using the BackFill hook 2015-02-13 18:34:08 +00:00
Chris Young
3dc8de9be2 Check for NULL 2015-02-12 23:18:41 +00:00
Chris Young
26a9c4fa07 Avoid RectFilling a 0 size area 2015-02-11 18:24:51 +00:00
Chris Young
36bc32b87b Re-disable P96 on OS3 pending a fix 2015-02-03 23:58:35 +00:00
Chris Young
32cd4abfd5 Reinstate the old (non-backfill) bitmap tiler for OS3 2015-02-03 00:24:03 +00:00
Chris Young
a7b866e824 Always use a friend bitmap on OS3 2015-02-02 23:45:49 +00:00
Chris Young
25a4cce542 Experimentally enable P96 on the OS3 build 2015-02-02 18:53:16 +00:00
Chris Young
852527a12f Ensure we are setting colours in the correct RastPort 2015-02-02 18:48:45 +00:00
Chris Young
2d157857e1 Revert shared pens support to previously-working state 2015-02-02 18:28:21 +00:00
Chris Young
7d41e04b61 We don't need to use P96 for RectFill 2015-02-02 18:10:43 +00:00
Chris Young
21f142a7fa Friend the screen bitmap for <= 8-bit modes, but only on OS3 as this causes OS4 to freeze 2015-02-02 00:32:34 +00:00
Chris Young
a4dbb87a76 Fix another instance of BltMaskBitMapRastPort potentially being called with a NULL bltmask 2015-02-01 11:08:05 +00:00
Chris Young
f514595ccf Don't allocate our off-screen render area as BMF_DISPLAYABLE, as it is never displayed.
Befriend the screen BitMap but only if we're 32-bit on both.
2015-01-31 22:14:03 +00:00
Chris Young
2544f60ae0 Set the obtained pen in our node so we can release it later. 2015-01-31 21:27:04 +00:00
Chris Young
6389b0f7d6 Ensure on OS3 we don't try to create a BitMap with a depth of more than 8 2015-01-31 20:14:09 +00:00
Chris Young
9ac9866521 Correct calling usage of BltMaskBitMapRastPort
Thanks to Matthey for the debugging
2015-01-31 20:01:35 +00:00
Chris Young
4f98fd5925 Add missing headers 2015-01-20 20:51:52 +00:00
Chris Young
e3af7f3343 Abstract P96 functions away so we can decide what to use at run-time.
This allows us to avoid opening P96 on OS4.1FE in future, and not require it to be installed on OS3.
2015-01-20 20:36:14 +00:00
Chris Young
2b9df1b2cd Remove some p96 usage 2015-01-20 00:39:32 +00:00
Chris Young
0c526662b3 Minor OS3 fixes 2015-01-19 20:50:06 +00:00
Chris Young
2eb41ed77b More OS3 fixes 2015-01-18 21:11:00 +00:00
Chris Young
24bf863522 Fix warnings 2014-11-10 23:38:59 +00:00
Vincent Sanders
0b64df140c Update amiga frontend for split operation table header changes 2014-10-16 22:33:44 +01:00
Chris Young
b1f67dab31 Remove Cairo from AmigaOS frontend. 2014-05-03 16:38:58 +01:00
Chris Young
5bb5e2667d Change the scope of some variables picked up by cppcheck, minor reformatting 2014-04-05 23:34:51 +01:00
Chris Young
ba5bae389b Fix some cppcheck variableHidingTypedef warnings 2014-04-05 20:26:40 +01:00
Chris Young
65adc17121 Fix a bunch of cppcheck unused/unreadVariable warnings 2014-04-05 20:26:40 +01:00
Chris Young
870c709684 Get Composite() to befriend the screen's BitMap to ensure they are on the same graphics board. This should fix the slowness when multiple graphics cards are installed. 2014-01-06 18:29:05 +00:00
Chris Young
ef24e5ce9e Fix bitmap offsets in direct render mode by forcing use of BltBitMap 2013-10-26 19:44:21 +01:00
Chris Young
ade86e496e Replace AllocVec with AllocVecTags. Remove some instances of MEMF_CLEAR where it is not necessary. 2013-10-12 13:11:13 +01:00
Chris Young
9ff65d7426 tidy up 2013-10-05 11:27:05 +01:00
Chris Young
a06cb9f05c If bitmap is opaque, ensure we override the alpha channel as it may contain nonsense. 2013-10-05 11:18:27 +01:00
Chris Young
31e3b27fad Set redraw tile size to default on screen change 2013-06-01 15:37:26 +01:00
Chris Young
9b39408dff Use macro directly 2013-05-31 19:42:57 +01:00
Chris Young
22ce03aed6 Tentatively replace colour conversion with core macro 2013-05-30 00:03:43 +01:00
Vincent Sanders
ee6e6eec05 move options include 2013-05-28 14:16:10 +01:00
Chris Young
15fc44bd4d Remove unused variable 2013-05-18 13:45:26 +01:00
Chris Young
13e667ff78 Remove friend BitMap as it doesn't solve the problem intended, and I'm concerned that it will cause problems on gfx cards which only have LE modes 2013-05-18 13:26:07 +01:00
Chris Young
32df2bebdd git being annoying 2013-05-12 20:36:41 +01:00
Chris Young
8c7eea4b62 Allocate the off-screen BitMap as a friend of the screen BitMap in the increasingly diminishing number of cases where this works correctly. This should stop NetSurf using memory on the wrong graphics card when two are installed. 2013-04-28 12:21:39 +01:00
Chris Young
89856f5592 ifdef some code that will never work under AmigaOS <4.0 2013-01-30 18:23:48 +00:00
Chris Young
7710214ec2 Remove p96EncodeColour and ensure the alpha byte is set to 0xff. 2013-01-27 23:09:26 +00:00