Files
super6502/sw/usb/GenericTypeDefs.h
Byron Lathi 5d8c4aab44 Add USB code
Adds the usb code that we got in ECE 385. It will not work now, and
parts that involve the timer are disabled. It does compile though, with
a few warnings.

The goal will be to add USB MSD support, which is not actually given to
us so I will have to do myself or find some other code to base it off
of.
2022-03-10 16:15:08 -06:00

116 lines
2.2 KiB
C

//Modified version of Generic Types as included by Microchip C18
#ifndef __GENERIC_TYPE_DEFS_H_
#define __GENERIC_TYPE_DEFS_H_
typedef enum _BOOL {
FALSE = 0, TRUE
} BOOL; // Undefined size
#define ON TRUE
#define OFF FALSE
typedef unsigned char BYTE; // 8-bit unsigned
typedef unsigned short int WORD; // 16-bit unsigned
typedef unsigned long DWORD; // 32-bit unsigned
typedef signed char CHAR; // 8-bit signed
typedef signed short int SHORT; // 16-bit signed
typedef signed long LONG; // 32-bit signed
typedef union _BYTE_VAL {
BYTE Val;
struct {
unsigned int b0 :1;
unsigned int b1 :1;
unsigned int b2 :1;
unsigned int b3 :1;
unsigned int b4 :1;
unsigned int b5 :1;
unsigned int b6 :1;
unsigned int b7 :1;
} bits;
} BYTE_VAL;
typedef union _WORD_VAL {
WORD Val;
BYTE v[2];
struct {
BYTE LB;
BYTE HB;
} byte;
struct {
unsigned int b0 :1;
unsigned int b1 :1;
unsigned int b2 :1;
unsigned int b3 :1;
unsigned int b4 :1;
unsigned int b5 :1;
unsigned int b6 :1;
unsigned int b7 :1;
unsigned int b8 :1;
unsigned int b9 :1;
unsigned int b10 :1;
unsigned int b11 :1;
unsigned int b12 :1;
unsigned int b13 :1;
unsigned int b14 :1;
unsigned int b15 :1;
} bits;
} WORD_VAL;
typedef union _DWORD_VAL {
DWORD Val;
WORD w[2];
BYTE v[4];
struct {
WORD LW;
WORD HW;
} word;
struct {
BYTE LB;
BYTE HB;
BYTE UB;
BYTE MB;
} byte;
struct {
unsigned int b0 :1;
unsigned int b1 :1;
unsigned int b2 :1;
unsigned int b3 :1;
unsigned int b4 :1;
unsigned int b5 :1;
unsigned int b6 :1;
unsigned int b7 :1;
unsigned int b8 :1;
unsigned int b9 :1;
unsigned int b10 :1;
unsigned int b11 :1;
unsigned int b12 :1;
unsigned int b13 :1;
unsigned int b14 :1;
unsigned int b15 :1;
unsigned int b16 :1;
unsigned int b17 :1;
unsigned int b18 :1;
unsigned int b19 :1;
unsigned int b20 :1;
unsigned int b21 :1;
unsigned int b22 :1;
unsigned int b23 :1;
unsigned int b24 :1;
unsigned int b25 :1;
unsigned int b26 :1;
unsigned int b27 :1;
unsigned int b28 :1;
unsigned int b29 :1;
unsigned int b30 :1;
unsigned int b31 :1;
} bits;
} DWORD_VAL;
#ifndef NULL
#define NULL 0
#endif
#endif //__GENERIC_TYPE_DEFS_H_