This achieves speed-up on OS3/68k platforms where 8-bit modes are more likely to be used, at the expense of lower quality quantization than the former picture.datatype abuse provided.
Additionally, caching of BitMaps in palette-mapped modes is now possible.
NetSurf now requires guigfx.library (and render.library) in order to start, even on OS4.
"Allow bitmap fonts" causes NetSurf to use diskfont and graphics library routines for opening and displaying fonts. This allows bitmap fonts to be used which are much faster on 68k hardware than outline fonts, but loses the ability to render pages in UTF-8.
Conversely, toggling this option off makes NetSurf use bullet.library directly and render glyphs itself, which precludes the usage of bitmap fonts but allows the full range of UTF-8 characters to be displayed.
This option is ON by default on OS3 for speed reasons, and OFF by default on OS4. Additionally, this option is not shown on the prefs GUI on OS4 as the speed difference between bitmap and outline fonts is negligible on that hardware and I don't want to encourage the use of an option which provides inferior rendering.
page.gadget is not a public class in OS3
Some gadgets which will not work have been temporarily #ifdef'd for OS4 only
Some gadgets which are not relevant have been disabled to avoid random values being set
This at least gives the option for people who prefer the popupmenu-based selection menus to easily switch back to the core ones when the options don't all fit on the screen (as popupmenu can't scroll).
Everything else, including any content of the URL bar which hasn't just been entered by the user, is assumed to be in ASCII.
NB: The exception is the ARexx OPEN command. This is because NetSurf uses the ARexx port and this command internally when multiple instances are opened.
file: addresses typed into the address bar containing non-ASCII characters will probably no loger work, but it is expected that under normal circumstances, users will either drag'n'drop files or use Project=>Open. If it becomes an issue I will work around it at a later date.