May I request you to register at sourceforge & let me know
your UNIX id. I can then give you write access to CVS. merging diffs
is very painful.
[mailto:sdcc-devel-admin@... Behalf Of Wolfgang
Sent: Thursday, January 18, 2001 1:53 PM
Subject: [sdcc-devel]EZUSB support for sdcc
I finished extensions to sdcc.2.2.1 to support Cypress EZUSB
controllers with sdcc.
Because aslink don't support ABS without Ouverlay some extensions to
sdcc are necessary
to generate vectored interrupt jump tables at addresses 0xXX80 any
I don't find any way to let aslink do the job.
Sdcc will now generate these tables with two new options -autovec2
at fixed adresses 0x80 and 0x100 after the normal ISR jump tables.
At the moment there are memory gaps between the normal jump tables and
0x80 and 0x100
witch may be filled with normal sdcc 8051 startup code before the main.
To generate these interrupt routines a new pragma NOIV is necessary like
compiler to generate interrupt routines without adding them to the
8051 interrupt tables.
This is done by -noiv switch or pragma NOIV.
Because the EZUSB are Dallas 320 cores using dual datapointers at 0x84
and 0x85 also
support for those in the ISR like for the 390 flat is include --ddps
Last but not least two peephole definitions are new. The EZUSB use a lot
memory mapped registers in the XDATA space.
These peephole rules reduce code by for actions
like XDATA |= 0xXX or XDATA &= 0xXX.
With this extensions I ported the Cypress USB developement framework to
By the way I created a binary rpm file for linux on Redhat 6.x.
It seems a lot of newbies have problems building sdcc on linux.
So if the developers want to add the extensions to the sdcc distribution
me know how to come forward with this. Diff files or changes in the CVS?
Bye Wolfgang Rapp
sdcc-devel mailing list