Rockbox

Tasklist

FS#10549 - %mv not working properly on Wide Cabbie theme

Attached to Project: Rockbox
Opened by Michael Chicoine (mc2739) - Thursday, 20 August 2009, 12:50 GMT
Last edited by Jonathan Gordon (jdgordon) - Wednesday, 09 September 2009, 05:26 GMT
Task Type Bugs
Category Themes
Status Closed
Assigned To Jonathan Gordon (jdgordon)
Operating System Sansa e200
Severity Low
Priority Normal
Reported Version Daily build (which?)
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Beginning with r22418 the volume changing tag %mv does not work properly in the Wide Cabbie theme.

This theme displays a large volume graphic and volume text when the volume changes. Prior to r22418, this worked properly. Since r22418, the graphic is not displayed, but the text is displayed.

The graphic is preloaded prior to being displayed by the following line:

%xl|G|bigvolume-176x220x16.bmp|52|36|10|

The conditional to display the viewports is:

%?mv<%Vdh%Vdi|%?Fn<%?C<%Vdz%Vdd%Vde%Vdf|%Vda%Vdc>|%?C<%Vdz%Vdd%Vdg|%Vdb>>>

And the viewport definitions:

%Vl|h|0|20|-|110|-|-|-|
%?pv<%xdGa|%xdGb|%xdGc|%xdGd|%xdGe|%xdGf|%xdGg|%xdGh|%xdGi|%xdGj>
%Vl|i|0|120|-|57|-|-|-|
%acVolume: %pvdb

I have attached a screendump of the missing graphic.
This task depends upon

Closed by  Jonathan Gordon (jdgordon)
Wednesday, 09 September 2009, 05:26 GMT
Reason for closing:  Fixed
Comment by Michael Chicoine (mc2739) - Thursday, 20 August 2009, 23:10 GMT
This also fails in the sim with this message:

read_bmp_fd: Bitmap too large for buffer: 70560 bytes.
ERR: Failed to load image - /.rockbox/wps/widecabbie/bigvolume-176x220x16.bmp
Skin buffer usage: 18872/87120
Comment by Jonathan Gordon (jdgordon) - Thursday, 20 August 2009, 23:20 GMT
that error says exactly what the problem is....
Comment by Michael Chicoine (mc2739) - Thursday, 20 August 2009, 23:40 GMT
I guess this is a good theme for your "challenge: fill the skin buffer!" thread.

I got the image to load by changing the album art to 84 x 84 instead of 168 x 84. This works well with my with my album art.
Comment by Jonathan Gordon (jdgordon) - Thursday, 20 August 2009, 23:47 GMT
wait what?! chaning the aa size shouldnt have affected anything... maybe there is another bug there
Comment by Michael Chicoine (mc2739) - Thursday, 20 August 2009, 23:52 GMT
No, it did not fix it on the target, only the sim. Target still will not display the image.
Comment by Michael Chicoine (mc2739) - Friday, 21 August 2009, 14:21 GMT
I resized the bmp and got it to work.

I could not repeat the aa change making it work on the sim. I'm not sure what happened, but every attempt since the image would not show until I resized it.
Comment by Thomas Martitz (kugel.) - Saturday, 22 August 2009, 17:36 GMT
Working in the sim was possibly due to an outdated checkout. I just had that too, the theme broke after the commit that converted the tokens to use the skin buffer.

The theme simply exceeds the image buffer. I'm not sure if Rockbox should fail more verbosely if that happens. The problem can be solved by doing the big volume image in a more efficient way, so that it only needs 40k instead of ~90k.
Comment by Michael Chicoine (mc2739) - Saturday, 22 August 2009, 19:26 GMT
Why not increase the buffer slightly to where it was before r22418 so that themes are not broken.
Comment by Thomas Martitz (kugel.) - Saturday, 22 August 2009, 19:30 GMT
It's a single theme that is broken, and it can be fixed easily by doing it more efficiently. I see that the buffer is reduced, but I don't really see the need to increase it for everyone because of a single theme.
Comment by Michael Chicoine (mc2739) - Saturday, 22 August 2009, 19:39 GMT
There are actually at least 11 themes for the e200 (the original and others based on the original) that are now broken. That does not include themes that may be broken due to the smaller buffer that have not been identified yet. My thought is that an increase in the buffer size is better than breaking existing themes, especially since, if I remember correctly, the changes caused a binsize reduction.
Comment by Michael Chicoine (mc2739) - Monday, 24 August 2009, 02:36 GMT
Widecabbie now works again as of r22474

e200 (and e200v2) System->Rockbox Info: Skin RAM usage: 87.4KB / 93.0KB
Comment by Michael Chicoine (mc2739) - Monday, 24 August 2009, 03:06 GMT
Ram usage numbers from e200 sim:

Skin buffer usage: 89432/95312
System->Rockbox Info: Skin RAM usage: 87.3KB / 93.0KB

Loading...