Right, third version uploaded, same place as before:

http://www.phlamethrower.co.uk/misc2/arcem-src.zip (Source)
http://www.phlamethrower.co.uk/misc2/arcem.zip (RISC OS build)

Compared to the previous version, this one features:

* New display driver for palettised output (arch/paldisplaydev.c).
- It's somewhat similar to the stddisplaydev code, in that it needs to be 
#included directly with a bunch of #defines/etc. set up in order to allow 
it to interface with the host OS in the cleanest/most efficient manner.
- The driver is able to convert the source data to any bit depth equal or 
higher than the source depth. (Well, not quite any depth - only depths 
which are powers-of-two are supported).
- The driver also supports horizontal & vertical upscaling, like the 
stddisplaydev code (Although like stddisplaydev, there are some 
restrictions - horizontal upscaling must be a power of 2, and each source 
pixel must convert to no more than 32 bits of output data).
- BPP conversion & upscaling is actually done through a lookup table, 
which made the code nice and easy to write, but won't always be the best 
for performance (e.g. for 4bpp or 8bpp source data, which is probably the 
ones people will encounter the most. Oops!). But if BPP conversion and 
upscaling aren't in use then it will just copy the data straight to the 
output, so it's not all bad.
- Since it won't support mid-frame palette swaps, it just refreshes the 
screen once per frame instead of one scanline at a time.
- This driver supports frameskip, which may be a useful performance boost 
on some hosts. (stddisplaydev currently doesn't support frameskip, but it 
shouldn't be too tricky to add it)
* Amiga & GP2X display code has been modified to use the palettised 
driver. So with any luck both those platforms will work with only minimal 
fixes. However I haven't tried to add any endian swapping code, so you 
might need to sort that out yourself, Chris. The routines which do the 
data copying are in arch/displaydev.c, so that's probably the first place 
to start. I have a feeling it might be easiest to write seperate versions 
for big-endian hosts.
* RISC OS tweaks:
- Added a tweak menu available by simultaneously pressing both Windows 
keys on the keyboard. This allows some of the display settings to be
tweaked at runtime.
- If enabled in the tweak menu, screenshots can be taken by hitting Print 
Screen
- The tweak menu can also be used to toggle the display of some simple 
performance/display stats.
- Supports both the palettised & standard display drivers. Driver can be 
selected at initialisation via a new command line option, or switched at 
runtime via the tweak menu.

Let me know what you think.

Cheers,

- Jeffrey


------------------------------------------------------------------------------
Special Offer -- Download ArcSight Logger for FREE!
Finally, a world-class log management solution at an even better 
price-free! And you'll get a free "Love Thy Logs" t-shirt when you
download Logger. Secure your free ArcSight Logger TODAY!
http://p.sf.net/sfu/arcsisghtdev2dev
-- 
arcem-devel mailing list
arcem-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/arcem-devel

Reply via email to