57 #define GRAPH_MAX_ARGS 9 62 #define Graph_xa0 0x0 << 0 //x line start / arc center 63 #define Graph_xa1 0x1 << 0 64 #define Graph_xa2 0x2 << 0 65 #define Graph_xa3 0x3 << 0 66 #define Graph_xa4 0x4 << 0 67 #define Graph_xa5 0x5 << 0 68 #define Graph_xa6 0x6 << 0 69 #define Graph_xa7 0x7 << 0 71 #define Graph_ya0 0x0 << 3 //y line start / arc center 72 #define Graph_ya1 0x1 << 3 73 #define Graph_ya2 0x2 << 3 74 #define Graph_ya3 0x3 << 3 75 #define Graph_ya4 0x4 << 3 76 #define Graph_ya5 0x5 << 3 77 #define Graph_ya6 0x6 << 3 78 #define Graph_ya7 0x7 << 3 79 #define Graph_ya8 0x8 << 3 80 #define Graph_ya9 0x9 << 3 81 #define Graph_yaA 0xA << 3 82 #define Graph_yaB 0xB << 3 83 #define Graph_yaC 0xC << 3 84 #define Graph_yaD 0xD << 3 85 #define Graph_yaE 0xE << 3 86 #define Graph_yaF 0xF << 3 88 #define Graph_xb0 0x0 << 7 //x line end 89 #define Graph_xb1 0x1 << 7 90 #define Graph_xb2 0x2 << 7 91 #define Graph_xb3 0x3 << 7 92 #define Graph_xb4 0x4 << 7 93 #define Graph_xb5 0x5 << 7 94 #define Graph_xb6 0x6 << 7 95 #define Graph_xb7 0x7 << 7 97 #define Graph_yb0 0x0 << 10 //y line end 98 #define Graph_yb1 0x1 << 10 99 #define Graph_yb2 0x2 << 10 100 #define Graph_yb3 0x3 << 10 101 #define Graph_yb4 0x4 << 10 102 #define Graph_yb5 0x5 << 10 103 #define Graph_yb6 0x6 << 10 104 #define Graph_yb7 0x7 << 10 105 #define Graph_yb8 0x8 << 10 106 #define Graph_yb9 0x9 << 10 107 #define Graph_ybA 0xA << 10 108 #define Graph_ybB 0xB << 10 109 #define Graph_ybC 0xC << 10 110 #define Graph_ybD 0xD << 10 111 #define Graph_ybE 0xE << 10 112 #define Graph_ybF 0xF << 10 114 #define Graph_ax1 0 << 7 //x arc radius 115 #define Graph_ax2 1 << 7 117 #define Graph_ay1 0 << 8 //y arc radius 118 #define Graph_ay2 1 << 8 119 #define Graph_ay3 2 << 8 120 #define Graph_ay4 3 << 8 122 #define Graph_a0 0x0 << 10 //arc start/length 123 #define Graph_a1 0x1 << 10 //bits[1..0] = start (0..3 = 0°, 90°, 180°, 270°) 124 #define Graph_a2 0x2 << 10 //bits[3..2] = length (0..3 = 360°, 270°, 180°, 90°) 125 #define Graph_a3 0x3 << 10 126 #define Graph_a4 0x4 << 10 127 #define Graph_a5 0x5 << 10 128 #define Graph_a6 0x6 << 10 129 #define Graph_a7 0x7 << 10 130 #define Graph_a8 0x8 << 10 131 #define Graph_a9 0x9 << 10 132 #define Graph_aA 0xA << 10 133 #define Graph_aB 0xB << 10 134 #define Graph_aC 0xC << 10 135 #define Graph_aD 0xD << 10 136 #define Graph_aE 0xE << 10 137 #define Graph_aF 0xF << 10 139 #define Graph_fline 0 << 14 //line command 140 #define Graph_farc 1 << 14 //arc command 142 #define Graph_more 1 << 15 //another arc/line 144 #define Graph_fx 3 //number of custom characters 166 void Graph_setup(uint32_t x_tiles, uint32_t y_tiles, uint32_t x_origin, uint32_t y_origin, uint32_t base_ptr);
240 void Graph_arc(uint32_t x, uint32_t y, uint32_t xr, uint32_t yr,
int angle,
int anglestep,
int steps,
int arcmode);
261 void Graph_vec(uint32_t x, uint32_t y,
int vecscale,
int vecangle, uint16_t* vecdef_ptr);
275 void Graph_vecarc(uint32_t x, uint32_t y, uint32_t xr, uint32_t yr,
int angle,
int vecscale,
int vecangle, uint16_t* vecdef_ptr);
294 void Graph_pix(uint32_t x, uint32_t y,
int pixrot, uint16_t* pixdef_ptr);
307 void Graph_pixarc(uint32_t x, uint32_t y, uint32_t xr, uint32_t yr,
int angle,
int pixrot, uint16_t* pixdef_ptr);
316 void Graph_char(uint32_t x, uint32_t y,
char ch);
327 void Graph_text(uint32_t x, uint32_t y,
char* string_ptr);
341 void Graph_textarc(uint32_t x, uint32_t y, uint32_t xr, uint32_t yr,
int angle,
char* string_ptr);
352 void Graph_textmode(uint32_t x_scale, uint32_t y_scale, uint32_t spacing, uint32_t justification);
362 void Graph_box(
int x,
int y,
int box_width,
int box_height);
377 void Graph_quad(uint32_t x1, uint32_t y1, uint32_t x2, uint32_t y2, uint32_t x3, uint32_t y3, uint32_t x4, uint32_t y4);
390 void Graph_tri(uint32_t x1, uint32_t y1, uint32_t x2, uint32_t y2, uint32_t x3, uint32_t y3);
401 void fill(
int x,
int y,
int da,
int db,
int db2,
int linechange,
int lines_minus_1);
402 void justify(
char* string_ptr, uint32_t* justptr);
void Graph_tri(uint32_t x1, uint32_t y1, uint32_t x2, uint32_t y2, uint32_t x3, uint32_t y3)
void Graph_char(uint32_t x, uint32_t y, char ch)
void Graph_colorwidth(uint32_t c, uint32_t w)
void fill(int x, int y, int da, int db, int db2, int linechange, int lines_minus_1)
void justify(char *string_ptr, uint32_t *justptr)
void Graph_copy(uint32_t dest_ptr)
void Graph_pixarc(uint32_t x, uint32_t y, uint32_t xr, uint32_t yr, int angle, int pixrot, uint16_t *pixdef_ptr)
volatile struct GraphCmd_struct GraphCmd_ST
void Graph_pix(uint32_t x, uint32_t y, int pixrot, uint16_t *pixdef_ptr)
void Graph_plot(uint32_t x, uint32_t y)
enum Graph_enum GraphCmd_ET
void Graph_vec(uint32_t x, uint32_t y, int vecscale, int vecangle, uint16_t *vecdef_ptr)
void sendCommand(GraphCmd_ET cmd, uint32_t *argptr)
void Graph_line(uint32_t x, uint32_t y)
void Graph_text(uint32_t x, uint32_t y, char *string_ptr)
void Graph_color(uint32_t c)
void Graph_arc(uint32_t x, uint32_t y, uint32_t xr, uint32_t yr, int angle, int anglestep, int steps, int arcmode)
void Graph_textarc(uint32_t x, uint32_t y, uint32_t xr, uint32_t yr, int angle, char *string_ptr)
void Graph_box(int x, int y, int box_width, int box_height)
void Graph_vecarc(uint32_t x, uint32_t y, uint32_t xr, uint32_t yr, int angle, int vecscale, int vecangle, uint16_t *vecdef_ptr)
void Graph_quad(uint32_t x1, uint32_t y1, uint32_t x2, uint32_t y2, uint32_t x3, uint32_t y3, uint32_t x4, uint32_t y4)
void Graph_setup(uint32_t x_tiles, uint32_t y_tiles, uint32_t x_origin, uint32_t y_origin, uint32_t base_ptr)
void Graph_width(uint32_t w)
void Graph_textmode(uint32_t x_scale, uint32_t y_scale, uint32_t spacing, uint32_t justification)