summaryrefslogtreecommitdiff
path: root/code/fe310/eos/eve_text.h
blob: 794f43001d0ac270eb8cfc57b1b601fdaafac64e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <stdint.h>

typedef struct EOSText {
    int x;
    int y;
    int w;
    int h;
    int buf_line_h;
    int buf_idx;
    int line_idx;
    uint32_t buf_addr;
    uint16_t transform_a;
    uint16_t transform_e;
    uint8_t tag;
    uint8_t ch_h;
    uint8_t ch_w;
    uint8_t dl_size;
    char dirty;
} EOSText;

void eos_text_init(EOSText *box, int x, int y, int w, int h, double scale_x, double scale_y, uint8_t tag, int buf_line_h, uint32_t mem_addr, uint32_t *mem_next);
void eos_text_draw(EOSText *box, uint8_t tag0, int touch_idx);
void eos_text_update(EOSText *box, int line_idx);
void eos_text_putc(EOSText *box, int c);
void eos_text_newline(EOSText *box);
void eos_text_backspace(EOSText *box);