summaryrefslogtreecommitdiff
path: root/apps/gui/wps_debug.c
diff options
context:
space:
mode:
authorDave Chapman <dave@dchapman.com>2008-03-22 00:31:22 +0000
committerDave Chapman <dave@dchapman.com>2008-03-22 00:31:22 +0000
commit45b2d8802d1e8fcc47fd1148adb7b1173ad5b311 (patch)
tree849eea4153daaf7dfafd571ca6b93b6f985b1ff9 /apps/gui/wps_debug.c
parent7ee63e22c58f4a7017136871e7b55dd702c5f460 (diff)
downloadrockbox-45b2d8802d1e8fcc47fd1148adb7b1173ad5b311.tar.gz
rockbox-45b2d8802d1e8fcc47fd1148adb7b1173ad5b311.zip
Reduce the shocking amount of RAM my viewports implementation was using. The first version stored an array of lines for each of the 16 possible viewports (MAX_VIEWPORTS * the number of lines on the LCD with a 5-pixel high font). This version reverts back to a single global array of lines, with each viewport specifying the first and last lines as indexes into that array. This also turns out to be simpler, reducing binsize a little as well.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16735 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/gui/wps_debug.c')
-rw-r--r--apps/gui/wps_debug.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/apps/gui/wps_debug.c b/apps/gui/wps_debug.c
index 0c13fd2c22..9bff1d23ae 100644
--- a/apps/gui/wps_debug.c
+++ b/apps/gui/wps_debug.c
@@ -502,7 +502,8 @@ static void print_line_info(struct wps_data *data)
502 DEBUGF("Number of viewports : %d\n", data->num_viewports); 502 DEBUGF("Number of viewports : %d\n", data->num_viewports);
503 for (v = 0; v < data->num_viewports; v++) 503 for (v = 0; v < data->num_viewports; v++)
504 { 504 {
505 DEBUGF("vp %d: Number of lines: %d\n", v, data->viewports[v].num_lines); 505 DEBUGF("vp %d: First line: %d\n", v, data->viewports[v].first_line);
506 DEBUGF("vp %d: Last line: %d\n", v, data->viewports[v].last_line);
506 } 507 }
507 DEBUGF("Number of sublines : %d\n", data->num_sublines); 508 DEBUGF("Number of sublines : %d\n", data->num_sublines);
508 DEBUGF("Number of tokens : %d\n", data->num_tokens); 509 DEBUGF("Number of tokens : %d\n", data->num_tokens);
@@ -517,7 +518,7 @@ static void print_line_info(struct wps_data *data)
517 data->viewports[v].vp.y, 518 data->viewports[v].vp.y,
518 data->viewports[v].vp.width, 519 data->viewports[v].vp.width,
519 data->viewports[v].vp.height); 520 data->viewports[v].vp.height);
520 for (i = 0, line = data->viewports[v].lines; i < data->viewports[v].num_lines; i++,line++) 521 for (i = data->viewports[v].first_line, line = &data->lines[data->viewports[v].first_line]; i <= data->viewports[v].last_line; i++,line++)
521 { 522 {
522 DEBUGF("Line %2d (num_sublines=%d, first_subline=%d)\n", 523 DEBUGF("Line %2d (num_sublines=%d, first_subline=%d)\n",
523 i, line->num_sublines, line->first_subline_idx); 524 i, line->num_sublines, line->first_subline_idx);
@@ -527,7 +528,7 @@ static void print_line_info(struct wps_data *data)
527 { 528 {
528 DEBUGF(" Subline %d: first_token=%3d, last_token=%3d", 529 DEBUGF(" Subline %d: first_token=%3d, last_token=%3d",
529 j, subline->first_token_idx, 530 j, subline->first_token_idx,
530 wps_last_token_index(data, v, i, j)); 531 wps_last_token_index(data, i, j));
531 532
532 if (subline->line_type & WPS_REFRESH_SCROLL) 533 if (subline->line_type & WPS_REFRESH_SCROLL)
533 DEBUGF(", scrolled"); 534 DEBUGF(", scrolled");