1.1 --- a/lib/viewport.c Sat Nov 10 19:06:08 2018 +0100
1.2 +++ b/lib/viewport.c Sat Nov 10 19:20:13 2018 +0100
1.3 @@ -21,42 +21,21 @@
1.4
1.5
1.6
1.7 -/* Initialise a viewport with display, origin, scaling and update function
1.8 - details. */
1.9 +/* Initialise the origin for a viewport. */
1.10
1.11 -void init_viewport(viewport_t *v, display_config_t *cfg,
1.12 - int xorigins[], int yorigins[],
1.13 - int xscale, int yscale,
1.14 - void (*update)())
1.15 +void viewport_set_origin(viewport_t *v, int xorigin, int yorigin)
1.16 {
1.17 int frame;
1.18
1.19 - v->cfg = cfg;
1.20 -
1.21 - /* Set the storage for the frame origin details. */
1.22 + /* Set the origin for every frame. */
1.23
1.24 - v->xorigins = xorigins;
1.25 - v->yorigins = yorigins;
1.26 -
1.27 - /* Set the relationship between origin coordinates and display columns and
1.28 - rows. */
1.29 -
1.30 - v->xscale = xscale;
1.31 - v->yscale = yscale;
1.32 + v->xorigin = xorigin;
1.33 + v->yorigin = yorigin;
1.34
1.35 - /* Set the post-scroll update function. */
1.36 -
1.37 - v->update = update;
1.38 -
1.39 - /* Set the origin to (0, 0) for every frame. */
1.40 -
1.41 - v->xorigin = 0;
1.42 - v->yorigin = 0;
1.43 -
1.44 - for (frame = 0; frame < cfg->frames; frame++)
1.45 + for (frame = 0; frame < v->cfg->frames; frame++)
1.46 {
1.47 - v->xorigins[frame] = 0;
1.48 - v->yorigins[frame] = 0;
1.49 + v->xorigins[frame] = xorigin;
1.50 + v->yorigins[frame] = yorigin;
1.51 }
1.52 }
1.53