1
0
mirror of https://github.com/cc65/cc65.git synced 2024-07-03 06:29:36 +00:00
cc65/include/ch376.h

56 lines
1.4 KiB
C

/* /// "Portable types" */
/* /// "CH376 interface commands and constants" */
// Chip version
#define CH376_DATA_IC_VER 3
// Commands
#define CH376_CMD_NONE 0x00
#define CH376_CMD_GET_IC_VER 0x01
#define CH376_CMD_CHECK_EXIST 0x06
#define CH376_CMD_SET_USB_MODE 0x15
#define CH376_CMD_GET_STATUS 0x22
#define CH376_CMD_RD_USB_DATA0 0x27
#define CH376_CMD_WR_REQ_DATA 0x2d
#define CH376_CMD_SET_FILE_NAME 0x2f
#define CH376_CMD_DISK_MOUNT 0x31
#define CH376_CMD_FILE_OPEN 0x32
#define CH376_CMD_FILE_ENUM_GO 0x33
#define CH376_CMD_FILE_CREATE 0x34
#define CH376_CMD_FILE_CLOSE 0x36
#define CH376_CMD_BYTE_LOCATE 0x39
#define CH376_CMD_BYTE_READ 0x3a
#define CH376_CMD_BYTE_RD_GO 0x3b
#define CH376_CMD_BYTE_WRITE 0x3c
#define CH376_CMD_BYTE_WR_GO 0x3d
#define CH376_CMD_DISK_QUERY 0x3f
#define CH376_CMD_DISK_RD_GO 0x55
#define CH376_ARG_SET_USB_MODE_INVALID 0x00
#define CH376_ARG_SET_USB_MODE_SD_HOST 0x03
#define CH376_ARG_SET_USB_MODE_USB_HOST 0x06
// Status & errors
#define CH376_ERR_OPEN_DIR 0x41
#define CH376_ERR_MISS_FILE 0x42
#define CH376_RET_SUCCESS 0x51
#define CH376_RET_ABORT 0x5f
#define CH376_INT_SUCCESS 0x14
#define CH376_INT_DISK_READ 0x1d
#define CH376_INT_DISK_WRITE 0x1e
unsigned char ch376_check_exist(unsigned char value);
unsigned char ch376_ic_get_version(void);
void ch376_set_usb_mode(unsigned char value);
unsigned char ch376_disk_mount(void);