> > Hi! > > Well, I decided to start a mailing-list dedicated to writing development > tools for the PIC16C84 (and other PICs too) which will be freely available > in CopyLeft'd C source code. Cool! Add me to it. > > The first priorities of the list will include: > > o Improving Timo Rossi's assembler to fully handle forward references. > Probably, we'll need to add a "pass zero" to build a symbol table. > =20 > o Converting John Favata's compiler to output PIC assembly instructions > instead of Parallax's pseudo-8051 code. It may be best to follow > John's strategy, but the assembly code will probably need some > optimization once it's converted. I'd like to add a couple of things to the table. I'm a computer science professor in Computer Science at Clark Atlanta University (obviously in Atlanta ;-) Anyway for the last 3 years I've been teaching a class on the development of Computer Systems Software. We focus on assembler and an introduction to compilers including projects. Since we professor types are obligated to at least have a cursory understanding of the projects ;-) my students and myself have put in quite a lot of work into said projects. Over the last 3 semesters we have been targeting PICs. The results: - A fully functional 16C84 assembler. It's one pass and does forward references. It currently doesn't output the symbol table for linking purposes but is easy enough to add. - The foundation to a high level language called NPC (nano-pseudo-C). NPC strips most of the functionality from C and leaves just the absolute minimum. It adds some keywords (ENDIF, ENDWHILE, CALL) to simplify the parsing process. It does most of the C operators and adds a couple (Like direct bit manipulation and direct assignment of addresses to variables). It only has pointers and chars right now. I had been targeting the 17C42 and was about 30% finished with the code generation. It uses flex for a front end (any GNU problems there?) and is recursive descent (Didn't want to confuse the students with bison). The heart of it is the infix-postfix parser that makes code generation straightforward. This semester I'm splitting the project in two adding a lower half interpreter. It's all in C and should be no problem to release under GNU. Runs under Linux right now. Anyway put me on the list and let me know if there is anything I can do to help. BAJ