124 lines
2.1 KiB
C
124 lines
2.1 KiB
C
|
#pragma once
|
||
|
|
||
|
#include "board/vfd-frame.h"
|
||
|
|
||
|
enum {
|
||
|
VFD_CMD_GET_VERSION = 0x5B,
|
||
|
VFD_CMD_RESET = 0x0B,
|
||
|
VFD_CMD_CLEAR_SCREEN = 0x0C,
|
||
|
VFD_CMD_SET_BRIGHTNESS = 0x20,
|
||
|
VFD_CMD_SET_SCREEN_ON = 0x21,
|
||
|
VFD_CMD_SET_H_SCROLL = 0x22,
|
||
|
VFD_CMD_DRAW_IMAGE = 0x2E,
|
||
|
VFD_CMD_SET_CURSOR = 0x30,
|
||
|
VFD_CMD_SET_ENCODING = 0x32,
|
||
|
VFD_CMD_SET_TEXT_WND = 0x40,
|
||
|
VFD_CMD_SET_TEXT_SPEED = 0x41,
|
||
|
VFD_CMD_WRITE_TEXT = 0x50,
|
||
|
VFD_CMD_ENABLE_SCROLL = 0x51,
|
||
|
VFD_CMD_DISABLE_SCROLL = 0x52,
|
||
|
VFD_CMD_ROTATE = 0x5D,
|
||
|
VFD_CMD_CREATE_CHAR = 0xA3,
|
||
|
VFD_CMD_CREATE_CHAR2 = 0xA4,
|
||
|
};
|
||
|
|
||
|
enum {
|
||
|
VFD_ENC_GB2312 = 0,
|
||
|
VFD_ENC_BIG5 = 1,
|
||
|
VFD_ENC_SHIFT_JIS = 2,
|
||
|
VFD_ENC_KSC5601 = 3,
|
||
|
VFD_ENC_MAX = 3,
|
||
|
};
|
||
|
|
||
|
struct vfd_req_hdr {
|
||
|
uint8_t sync;
|
||
|
uint8_t cmd;
|
||
|
};
|
||
|
|
||
|
struct vfd_req_any {
|
||
|
struct vfd_req_hdr hdr;
|
||
|
uint8_t payload[2054];
|
||
|
};
|
||
|
|
||
|
struct vfd_req_board_info {
|
||
|
struct vfd_req_hdr hdr;
|
||
|
uint8_t unk1;
|
||
|
};
|
||
|
|
||
|
struct vfd_resp_board_info { // \x0201.20\x03
|
||
|
uint8_t unk1;
|
||
|
char version[5];
|
||
|
uint8_t unk2;
|
||
|
};
|
||
|
|
||
|
struct vfd_req_reset {
|
||
|
struct vfd_req_hdr hdr;
|
||
|
};
|
||
|
|
||
|
struct vfd_req_cls {
|
||
|
struct vfd_req_hdr hdr;
|
||
|
};
|
||
|
|
||
|
struct vfd_req_brightness {
|
||
|
struct vfd_req_hdr hdr;
|
||
|
uint8_t brightness;
|
||
|
};
|
||
|
|
||
|
struct vfd_req_power {
|
||
|
struct vfd_req_hdr hdr;
|
||
|
uint8_t power_state;
|
||
|
};
|
||
|
|
||
|
struct vfd_req_hscroll {
|
||
|
struct vfd_req_hdr hdr;
|
||
|
uint8_t x_pos;
|
||
|
};
|
||
|
|
||
|
struct vfd_req_draw {
|
||
|
struct vfd_req_hdr hdr;
|
||
|
uint16_t x0;
|
||
|
uint8_t y0;
|
||
|
uint16_t x1;
|
||
|
uint8_t y1;
|
||
|
uint8_t image[2048];
|
||
|
};
|
||
|
|
||
|
struct vfd_req_cursor {
|
||
|
struct vfd_req_hdr hdr;
|
||
|
uint16_t x;
|
||
|
uint8_t y;
|
||
|
};
|
||
|
|
||
|
struct vfd_req_encoding {
|
||
|
struct vfd_req_hdr hdr;
|
||
|
uint8_t encoding;
|
||
|
};
|
||
|
|
||
|
struct vfd_req_wnd {
|
||
|
struct vfd_req_hdr hdr;
|
||
|
uint16_t x0;
|
||
|
uint8_t y0;
|
||
|
uint16_t x1;
|
||
|
uint8_t y1;
|
||
|
};
|
||
|
|
||
|
struct vfd_req_speed {
|
||
|
struct vfd_req_hdr hdr;
|
||
|
uint8_t encoding;
|
||
|
};
|
||
|
|
||
|
struct vfd_req_scroll {
|
||
|
struct vfd_req_hdr hdr;
|
||
|
};
|
||
|
|
||
|
struct vfd_req_rotate {
|
||
|
struct vfd_req_hdr hdr;
|
||
|
uint8_t unk1;
|
||
|
};
|
||
|
|
||
|
struct vfd_req_create_char {
|
||
|
struct vfd_req_hdr hdr;
|
||
|
uint8_t type;
|
||
|
uint8_t pixels[32];
|
||
|
};
|