/* painfully slow for now */
-#define CC_CLOCK_US (1000)
+#define CC_CLOCK_US (50)
struct ccdbg {
usb_dev_handle *usb_dev;
#define CC_DEBUG_BITBANG 0x00000001
#define CC_DEBUG_COMMAND 0x00000002
+#define CC_DEBUG_INSTRUCTIONS 0x00000004
/* ccdbg-command.c */
void
uint16_t
ccdbg_get_chip_id(struct ccdbg *dbg);
-
+uint8_t
+ccdbg_execute(struct ccdbg *dbg, uint8_t *inst);
/* ccdbg-debug.c */
void
ccdbg_clear_debug(int level);
/* ccdbg-io.c */
-void
-ccdbg_quarter_clock(struct ccdbg *dbg);
-
void
ccdbg_half_clock(struct ccdbg *dbg);
void
ccdbg_manual(struct ccdbg *dbg, FILE *input);
+/* ccdbg-memory.c */
+uint8_t
+ccdbg_write_memory(struct ccdbg *dbg, uint16_t addr, uint8_t *bytes, int nbytes);
+
+uint8_t
+ccdbg_read_memory(struct ccdbg *dbg, uint16_t addr, uint8_t *bytes, int nbytes);
+
/* cp-usb.c */
void
cp_usb_init(struct ccdbg *dbg);