void setupCRuntime(); int enableswt(void); int disableswt(void); void runimage(unsigned char *src, unsigned int len, unsigned char *dest, unsigned char *xfer); int decompress(unsigned char *src, unsigned int len, unsigned char *dest); int run(unsigned char *dest); int loadimage(unsigned long *src, unsigned long *dst, unsigned int len); void recover (); int load(int port, unsigned char *download_addr); int flash_stat(volatile unsigned int *flash_dev); void flash_autosel(volatile unsigned int *flash_dev); void flash_reset(volatile unsigned int *flash_dev); int flash_man_id(volatile unsigned int *flash_dev); int flash_dev_id(volatile unsigned int *flash_dev); int flash_sector_size(volatile unsigned int *sector); volatile unsigned int *flash_sector_align(volatile unsigned int *sector); int flash_sector_boundary(volatile unsigned int *sector); int flash_sector_erase(volatile unsigned int *sector); int flash_sector_check(unsigned int *source, volatile unsigned int *dest); int flash_sector_program(unsigned int *source, volatile unsigned int *dest); int flash_program(unsigned char *source, unsigned char *dest, unsigned int len); void dprintf (char *fmt, ...); void usage(); char get_char(); char *gets(char *string); unsigned int a2h(char input); unsigned int get_num(char **stringP, unsigned int default_value); int parse (char *string); void ui(); void mem_copy(unsigned char *src, unsigned char *dest, int size ); unsigned char *mem_dump(unsigned char *dump); void print_hex(unsigned int value); void rs_console_init(void); void rs_serial_init(int port); int rs_is_char(void); int rs_is_char_port(int port); int rs_get_char(void); int rs_get_char_port(int port); void nextPutCRLF(unsigned int uartBase, char ch); void console_nextPut(char ch); void console_nextPutAll(char *s);