Hey all,
Well the idea came up in irc yesterday about possibly adding a plugin
which would add extra tags to the wps without overloading the core,
anyway, its sort of finished and I want t know what people think and
weather its committable?

The patch adds 2 major tags, %el to check if the extensions plugin is
loaded, and %ee which checks if a specific extra tag was enabled (used
like %?ee|pv<dB|%%>) which checks if the pv tag is overloaded by the
plugin)...

The plugin currently adds 2 tags which are very quick demos of how to
use the plugin.
the first is %rt which just displays the runtime on the wps.
the second is %pv which shows the volume in % instead of dB (I used
this to show that core tags can get overloaded... I know this volume
in % is silly)

I didn't get around to checking how well bitmaps would be handled by
this (hint hint if anyone is bored and wants to try...)

Oh, each extra tag can be enabled/disalbed seperatly. (load the
wps_extensions plugin from the browser and it lets you chose which to
show).

And finaly, there was a worry that this would incur a disk spin every
time the wps was loaded. What I've done is check for the
wps_extensions.rock file, if it doesnt exist it will never try to open
it again (untill rebooting). If it does exist it will only reload it
if something stole the plugin buffer.

Now, With this plugin in mind, I ifdefed out the clock tags and did a
compile for the recorder and it shrunk rockbox.elf by 800bytes (and
made it small enough for it to say how much over rombox is). removing
the entire body of get_tag() in gwps-common.c (so all the tag
processing) got rombox to within 800bytes of fitting! and I'm sure if
the bitmap handling was taken out of the core it would fit easily
again.

(dont worry, I'm not suggesting removing all the tag proccessing,
except maybe for the recorder to get rombox working), but I think it
would be nice to limit the core tags to just text tags and move the
bitmap stuff out of the core.)

So yeah, Let me know what you think,
Jonathan

Attachment: changes.patch
Description: Binary data

Reply via email to