/* $Id: ezusb_reg.h,v 1.6 2004/02/01 11:22:12 jmuelmen Exp $ */ /* This is the EZ-USB memory layout. It comes from Arnim Läuger's * EzHID project (ezhid.sourceforge.net) */ /* * * $Id: ezusb_reg.h,v 1.6 2004/02/01 11:22:12 jmuelmen Exp $ * * Change History: * * $Log: ezusb_reg.h,v $ * Revision 1.6 2004/02/01 11:22:12 jmuelmen * There was a nasty i2c issue that I finally fixed. Hooray for not ignoring * documentation! (This was the LASTRD issue, which I previously considered * a joke on the part of the documenters) * * Revision 1.5 2004/01/29 03:30:39 jmuelmen * Wooohooo! Progress! * * Revision 1.4 2003/12/03 20:49:45 jmuelmen * Uh, like, progress. * * Revision 1.3 2003/11/22 06:34:44 jmuelmen * Looks like we have working i2c now. * * Revision 1.2 2003/11/16 17:39:10 jmuelmen * Added port A * * Revision 1.1 2003/09/28 09:07:31 jmuelmen * More files. More files good! * * Revision 1.3 2002/03/03 23:35:32 arniml * add TOGCTL * * Revision 1.2 2001/08/15 18:24:03 arniml * added some register definitions for serial port 1 and IN2 endpoint * * Revision 1.1.1.1 2001/07/14 15:32:37 arniml * initial import * * */ #ifndef __ezusb_reg_inc #define __ezusb_reg_inc sbit at 0xe8 EUSB; sbit at 0xac ES0; sbit at 0xae ES1; sbit at 0x98 RI_0; sbit at 0x99 TI_0; sbit at 0xc0 RI_1; sbit at 0xc1 TI_1; sbit at 0xca TR2; sbit at 0xcf TF2; sbit at 0xad ET2; sfr at 0x91 EXIF; sfr at 0xe8 EIE; sfr at 0x98 SCON0; sfr at 0xc0 SCON1; sfr at 0x99 SBUF0; sfr at 0xc1 SBUF1; sfr at 0x8e CKCON; sfr at 0xc8 T2CON; sfr at 0xca RCAP2L; sfr at 0xcb RCAP2H; sfr at 0xcc TL2; sfr at 0xcd TH2; volatile xdata at 0x7fb4 unsigned char EP0CS; volatile xdata at 0x7f00 unsigned char IN0BUF; volatile xdata at 0x7fb5 unsigned char IN0BC; volatile xdata at 0x7ec0 unsigned char OUT0BUF; volatile xdata at 0x7fc5 unsigned char OUT0BC; volatile xdata at 0x7fb6 unsigned char IN1CS; volatile xdata at 0x7e80 unsigned char IN1BUF; volatile xdata at 0x7fb7 unsigned char IN1BC; volatile xdata at 0x7e40 unsigned char OUT1BUF; volatile xdata at 0x7fc6 unsigned char OUT1CS; volatile xdata at 0x7fc7 unsigned char OUT1BC; volatile xdata at 0x7e00 unsigned char IN2BUF; volatile xdata at 0x7fb9 unsigned char IN2BC; volatile xdata at 0x7fb8 unsigned char IN2CS; volatile xdata at 0x7fc9 unsigned char OUT2BC; volatile xdata at 0x7fc8 unsigned char OUT2CS; volatile xdata at 0x7dc0 unsigned char OUT2BUF; volatile xdata at 0x7d80 unsigned char IN3BUF; volatile xdata at 0x7fbb unsigned char IN3BC; volatile xdata at 0x7fba unsigned char IN3CS; volatile xdata at 0x7fcb unsigned char OUT3BC; volatile xdata at 0x7fca unsigned char OUT3CS; volatile xdata at 0x7d40 unsigned char OUT3BUF; volatile xdata at 0x7d00 unsigned char IN4BUF; volatile xdata at 0x7fbd unsigned char IN4BC; volatile xdata at 0x7fbc unsigned char IN4CS; volatile xdata at 0x7cc0 unsigned char OUT4BUF; volatile xdata at 0x7fcd unsigned char OUT4BC; volatile xdata at 0x7fcc unsigned char OUT4CS; volatile xdata at 0x7c80 unsigned char IN5BUF; volatile xdata at 0x7fbf unsigned char IN5BC; volatile xdata at 0x7fbe unsigned char IN5CS; volatile xdata at 0x7c40 unsigned char OUT5BUF; volatile xdata at 0x7fcf unsigned char OUT5BC; volatile xdata at 0x7fce unsigned char OUT5CS; volatile xdata at 0x7c00 unsigned char IN6BUF; volatile xdata at 0x7fc1 unsigned char IN6BC; volatile xdata at 0x7fc0 unsigned char IN6CS; volatile xdata at 0x7bc0 unsigned char OUT6BUF; volatile xdata at 0x7fd1 unsigned char OUT6BC; volatile xdata at 0x7fd0 unsigned char OUT6CS; volatile xdata at 0x7f9c unsigned char OEA; volatile xdata at 0x7f96 unsigned char OUTA; volatile xdata at 0x7f9d unsigned char OEB; volatile xdata at 0x7f97 unsigned char OUTB; volatile xdata at 0x7f9e unsigned char OEC; volatile xdata at 0x7f98 unsigned char OUTC; volatile xdata at 0x7f9b unsigned char PINSC; volatile xdata at 0x7f93 unsigned char PORTACFG; volatile xdata at 0x7f94 unsigned char PORTBCFG; volatile xdata at 0x7f95 unsigned char PORTCCFG; volatile xdata at 0x7fa9 unsigned char IN07IRQ; volatile xdata at 0x7faa unsigned char OUT07IRQ; volatile xdata at 0x7fac unsigned char IN07IEN; volatile xdata at 0x7fad unsigned char OUT07IEN; volatile xdata at 0x7fab unsigned char USBIRQ; volatile xdata at 0x7fae unsigned char USBIEN; volatile xdata at 0x7faf unsigned char USBBAV; volatile xdata at 0x7fd6 unsigned char USBCS; volatile xdata at 0x7fd7 unsigned char TOGCTL; volatile xdata at 0x7fd4 unsigned char SUDPTRH; volatile xdata at 0x7fd5 unsigned char SUDPTRL; volatile xdata at 0x7fe8 unsigned char SETUPDAT; volatile xdata at 0x7fa5 unsigned char I2CS; volatile xdata at 0x7fa6 unsigned char I2DAT; volatile xdata at 0x7fde unsigned char IN07VAL; volatile xdata at 0x7fdf unsigned char OUT07VAL; volatile xdata at 0x7fe3 unsigned char AUTOPTRH; volatile xdata at 0x7fe4 unsigned char AUTOPTRL; volatile xdata at 0x7fe5 unsigned char AUTODATA; volatile xdata at 0x7fa1 unsigned char ISOCTL; volatile xdata at 0x7fdd unsigned char USBPAIR; /* these are useful! */ #define INBUF(n, m) (&IN4BUF + (4 - (n)) * 0x80)[(m)] #define OUTBUF(n, m) (&OUT4BUF + (4 - (n)) * 0x80)[(m)] #define INCS(n) (&IN1CS)[2 * ((n) - 1)] #define INBC(n) (&IN1BC)[2 * ((n) - 1)] #define OUTCS(n) (&OUT1CS)[2 * ((n) - 1)] #define OUTBC(n) (&OUT1BC)[2 * ((n) - 1)] #endif /* define __ezusb_reg_inc */