Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
A just-in-time compiler for MIT 6.004's "Beta" processor.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
|Failed to load latest commit information.|
This code implements a working Just-In-Time binary translator from the Beta  processor to the i386. It supports clock and keyboard interrupts, and correctly executes lab6.uasm, bench[1-4].uasm, and litmus.uasm, as well as Lab 8's operating system . This source is canonically available from github at <http://github.com/nelhage/bemu/>. It should work on just about any modern Linux or Intel OS X system, although it's better tested on Linux. I've tested it on Athena and it works fine there. To run the self-tests, `make test'; To run the lab8 OS, `make run-lab8'. It alsos includes a somewhat hacked version of `uasm' from http://web.mit.edu/6.004/src/posix-src/uasm/, modified to deal with relative includes slightly better, and to support arbitrary-sized ROMs.  http://6004.csail.mit.edu/currentsemester/handouts/beta.pdf  http://web.mit.edu/6.004/bsim/lab8.uasm