Cebollita

Hacking Cebollita

Last modified: April 14, 2005
Sloop SMOK
  CSE Home  About Us    Search    Contact Info 

Hacking Cebollita

Basic requirements include JDK1.4 or better and access to GNU tools like make and BASH. Development takes place using Cygwin.

Certainly, you may be able to get the software built relying on the DOS shell and only the JDK, but then you enjoy pain more than I do.

Here are some sketchy notes for hacking the Cebollita system:

  1. Get bash working. If you're on a UNIX system, this shouldn't be hard. For Windows people, try Cygwin -- it really works.
  2. Get the latest Cebollita distribution and unjar it. Add the root directory where you placed it, plus the jlex.jar and cup.jar files you'll find there, to your classpath.
  3. Use the provided make files (try "make").

The Package Structure

Right now, there are just five interesting packages:
comp
Contains the grammar files for building C-- lexer and parser (courtesey of JLex and CUP). Also contains Java files relating to AST nodes and code generation. The goal of this module is to be able to transform a single C-- file into a MIPS assembly file.
asm
Contains the grammar files for building a MIPS assembly code lexer and parser (courtesey of JLex and CUP). Also contains Java files relating to the representation of an assembly-code file; machine code generation; object file representation; and linking.
dbg
Contains the graphical and command line debugging front-ends.
sim
Contains a MIPS simulator, plus the definition of the various flavors of memory mapped architecture supported.
util
Contains basic utility code.
From here, it's probably time to wander over to the JavaDocs for more info on the structure of the code.


Department of Computer Science & Engineering
University of Washington
Box 352350
Seattle, WA  98195-2350
(206) 543-1695 voice, (206) 543-2969 FAX
[comments to zahorjan@cs.washington.edu]