X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=blobdiff_plain;f=ccdbg.h;h=7d9940c30bb49b80312d323cf3b314ffac41aaf5;hp=a0ef1c86bccdbb22781c5a65e726fe3474c2fe26;hb=aec3bbce84a5ceb92060a4b3889379f2af2404ac;hpb=5df84df7cd6a31527dcfd11030f00ef9d8abf170 diff --git a/ccdbg.h b/ccdbg.h index a0ef1c86..7d9940c3 100644 --- a/ccdbg.h +++ b/ccdbg.h @@ -45,7 +45,7 @@ /* painfully slow for now */ -#define CC_CLOCK_US (1000) +#define CC_CLOCK_US (50) struct ccdbg { usb_dev_handle *usb_dev; @@ -88,7 +88,7 @@ struct ccdbg { #define CC_RESUME 0x4c #define CC_DEBUG_INSTR(n) (0x54|(n)) #define CC_STEP_INSTR 0x5c -#define CC_STEP_REPLACE (0x64|(n)) +#define CC_STEP_REPLACE(n) (0x64|(n)) #define CC_GET_CHIP_ID 0x68 #define CC_DEBUG_BITBANG 0x00000001 @@ -102,14 +102,43 @@ void ccdbg_reset(struct ccdbg *dbg); uint8_t -ccdbg_read_status(struct ccdbg *dbg); +ccdbg_chip_erase(struct ccdbg *dbg); + +uint8_t +ccdbg_wr_config(struct ccdbg *dbg, uint8_t config); uint8_t ccdbg_rd_config(struct ccdbg *dbg); +uint8_t +ccdbg_get_pc(struct ccdbg *dbg); + +uint8_t +ccdbg_read_status(struct ccdbg *dbg); + +uint8_t +ccdbg_set_hw_brkpnt(struct ccdbg *dbg, uint8_t number, uint8_t enable, uint16_t addr); + +uint8_t +ccdbg_halt(struct ccdbg *dbg); + +uint8_t +ccdbg_resume(struct ccdbg *dbg); + +uint8_t +ccdbg_debug_instr(struct ccdbg *dbg, uint8_t *instr, int nbytes); + +uint8_t +ccdbg_step_instr(struct ccdbg *dbg); + +uint8_t +ccdbg_step_replace(struct ccdbg *dbg, uint8_t *instr, int nbytes); + uint16_t ccdbg_get_chip_id(struct ccdbg *dbg); + + /* ccdbg-debug.c */ void ccdbg_debug(int level, char *format, ...);