term: brighten bold text when bold font is missing
[fbpad.git] / scrsnap.c
blobba0952ce9417d2d3324a166848ec66cb7968944b
1 #include <stdlib.h>
2 #include <string.h>
3 #include "draw.h"
5 #define NSCRS 128
7 static void *scrs[NSCRS];
9 void scr_snap(int idx)
11 int rowsz = FBM_BPP(fb_mode()) * fb_cols();
12 int i;
13 if (idx < NSCRS && !scrs[idx])
14 scrs[idx] = malloc(fb_rows() * rowsz);
15 if (idx < NSCRS && scrs[idx])
16 for (i = 0; i < fb_rows(); i++)
17 memcpy(scrs[idx] + i * rowsz, fb_mem(i), rowsz);
20 void scr_free(int idx)
22 if (idx < NSCRS) {
23 free(scrs[idx]);
24 scrs[idx] = NULL;
28 int scr_load(int idx)
30 int rowsz = FBM_BPP(fb_mode()) * fb_cols();
31 int i;
32 if (idx < NSCRS && scrs[idx])
33 for (i = 0; i < fb_rows(); i++)
34 memcpy(fb_mem(i), scrs[idx] + i * rowsz, rowsz);
35 return 0;
38 void scr_done(void)
40 int i;
41 for (i = 0; i < NSCRS; i++)
42 free(scrs[i]);