*** empty log message ***
[h316.git] / pc-tools / fontgen / src / fontgen.h
CommitLineData
b17cb324 1
2
3#ifndef FONTGEN_H
4#define FONTGEN_H
5
6#define DEBUG
7
8#ifdef DEBUG
9#define DBG(...) printf("DBG:" __VA_ARGS__)
10#else
11#define DBG(...)
12#endif
13
14
15#ifdef BUILD_LITTLE_ENDIAN
16#define PL_POINT_DEFINED
17typedef union {
18 struct{
19 unsigned short p_y : 8;
20 unsigned short p_x : 7;
21 unsigned short p_lift: 1;
22 };
23 unsigned short p_data: 16;
24} pl_point;
25#endif
26
27#ifdef BUILD_BIG_ENDIAN
28#define PL_POINT_DEFINED
29typedef union {
30 struct{
31 unsigned short p_lift: 1;
32 unsigned short p_x : 7;
33 unsigned short p_y : 8;
34 };
35 unsigned short p_data: 16;
36} pl_point;
37#endif
38
39typedef struct {
40 int gl_number;
41 int gl_size;
42 int gl_offset;
43 char * gl_label;
44 char * gl_comment;
45 pl_point * gl_points;
46} pl_glyph;
47
48typedef struct {
49 char * f_label;
50 int f_size; /* Number of glyphs */
51 int f_offset; /* Y offset to next line */
52 char * f_comment;
53 pl_glyph * f_glyphs;
54} pl_font;
55
56#define POINT(lift,x,y) {.p_data=0xffff &( (lift<<15)+(x<<8)+(y))}
57
58
59extern pl_font hershey_fonts;
60
61extern void op_font (pl_font *);
62
63extern pl_glyph find_glyph(int);
64extern pl_font assemble_font(int first_id, int size, int glyph_ids[]);
65
66extern void font_init(void);
67extern pl_font font_cyrilc;
68extern pl_font font_gothgbt;
69extern pl_font font_gothgrt;
70extern pl_font font_gothitt;
71extern pl_font font_greekc;
72extern pl_font font_greekcs;
73extern pl_font font_greekp;
74extern pl_font font_greeks;
75extern pl_font font_italicc;
76extern pl_font font_italiccs;
77extern pl_font font_italict;
78extern pl_font font_romanc;
79extern pl_font font_romancs;
80extern pl_font font_romand;
81extern pl_font font_romanp;
82extern pl_font font_romans;
83extern pl_font font_romant;
84extern pl_font font_scriptc;
85extern pl_font font_scripts;
86
87#endif