romreader
2014-07-13
A library for reading various ROM formats.
romreader
An extensible reader of ROM formats in portable CL.
Install
You are strongly encouraged to use this library via Quicklisp. Simply start your lisp and run: (ql:quickload 'romreader)
.
Getting Started
If you're reading this, you're probably interested in parsing ROMs using Lisp. There are 3 things you can do with romreader: parse a rom it supports, teach it how to parse a new format, and access parts of a loaded rom.
- Parsing a supported format is as easy as calling
(load-rom "path/to/my/rom.format")
. - Teaching romreader to parse a new rom is done using
defreader
. For an example, see the NES reader. - Accessing slots of a rom instance is done with
rom-metadata
,rom-binary
, androm-format
.
Thus far, I have been using a plist to store metadata and a vector to store the binary but feel free to use your own representations. rom-binary
and rom-metadata
don't care. :)