#ifndef LIBSYS_H #define LIBSYS_H // --------------------------------------------------------- // Types // --------------------------------------------------------- #define INT8 char #define INT16 short #define INT32 long #define UINT8 unsigned char #define UINT16 unsigned short #define UINT32 unsigned long #define INT int #define UINT unsigned int #define FLOAT32 float #define FLOAT64 double #define IS_ERROR(e) ((e & 0x80000000) == 0x80000000) #define SYS_GPIO0 0xA0000000 #define SYS_GPIO1 0xA0000004 #define SYS_LED_PORT SYS_GPIO0 #define SYS_USB_CTRL SYS_GPIO1 #define SYS_TIMER_USEC 0xA0000008 #define SYS_TIMER_SEC 0xA000000C #define SYS_UART_DATA 0xA0010000 #define SYS_UART_STAT 0xA0010004 #define SYS_UART_BAUD 0xA0010008 #define SYS_USB_DATA 0xA0020000 #define SYS_USB_MBX 0xA0020004 #define SYS_USB_ADDR 0xA0020008 #define SYS_USB_STATUS 0xA002000C #define SYS_FLASH_IO 0xA4000000 #define SYS_FLASH_MEM 0x00000000 // MIPS specific UINT32 CP0_SR_read(void); void CP0_SR_write(UINT32 val); UINT32 CP0_CR_read(void); void CP0_CR_write(UINT32 val); UINT32 CP0_PRID_read(void); // General char readchar(void); void writechar(char c); int write(int file, char *ptr, int len); int sputs(char *pStr); void print_byte(char byte); void print_word(int word); void PrintBuffer8(UINT8 *pBuf, int nbpr, int len); void memdump(UINT8 *pBuf, int print_offset_only, int num_bytes_per_row, int len); #endif // LIBSYS_H