The romreader Reference Manual
This is the romreader Reference Manual, version 0.5,
generated automatically by Declt version 4.0 beta 2 "William Riker"
on Tue Jul 15 06:34:43 2025 GMT+0.
2 Systems
The main system appears first, followed by any subsystem dependency.
3 Files
Files are sorted by type and then listed depth-first from the systems
components trees.
4 Packages
Packages are listed by definition order.
4.1 romreader-nes
- Source
nes.lisp.
- Use List
-
- Internals
-
4.2 romreader
Homepage: <a href="http://github.com/redline6561/romreader">Github</a>
- Source
package.lisp.
- Use List
common-lisp.
- Used By List
romreader-nes.
- Public Interface
-
- Internals
-
5 Definitions
Definitions are sorted by export status, category, package, and then by
lexicographic order.
5.1 Public Interface
5.1.1 Special variables
- Special Variable: *valid-formats* ¶
-
A list of ROM formats with implemented readers. Do not manually modify this.
- Package
romreader.
- Source
romreader.lisp.
5.1.2 Macros
- Macro: defreader (format &body body) ¶
-
Define a reader for FORMAT. FORMAT should be a pathname-type
(i.e. file extension). FORMAT will be added to *valid-formats* if needed.
BODY executes inside a WITH-OPEN-FILE binding ’in’ to a binary-stream of
the ROM. The BODY should return a list like so: (rom-metadata rom-binary).
- Package
romreader.
- Source
romreader.lisp.
5.1.3 Ordinary functions
- Function: load-rom (path) ¶
-
Check to see if PATH exists and is a supported ROM format. If so, call the
appropriate reader and return a ROM instance, otherwise error.
- Package
romreader.
- Source
romreader.lisp.
5.1.4 Generic functions
- Generic Reader: rom-binary (rom) ¶
-
Return a bytevector of the ROM data.
- Package
romreader.
- Source
romreader.lisp.
- Methods
- Reader Method: rom-binary ((rom
rom)) ¶
-
automatically generated reader method
- Target Slot
binary.
- Generic Reader: rom-chr (rom) ¶
-
Return the character/sprite data from the ROM.
- Package
romreader.
- Source
romreader.lisp.
- Methods
- Reader Method: rom-chr ((rom
rom)) ¶
-
automatically generated reader method
- Target Slot
chr.
- Generic Writer: (setf rom-chr) (object) ¶
-
- Package
romreader.
- Methods
- Writer Method: (setf rom-chr) ((rom
rom)) ¶
-
automatically generated writer method
- Source
romreader.lisp.
- Target Slot
chr.
- Generic Reader: rom-format (rom) ¶
-
Return the file extension of the ROM as a symbol.
- Package
romreader.
- Source
romreader.lisp.
- Methods
- Reader Method: rom-format ((rom
rom)) ¶
-
automatically generated reader method
- Target Slot
format.
- Generic Reader: rom-metadata (rom) ¶
-
Return a plist of the ROM metadata.
- Package
romreader.
- Source
romreader.lisp.
- Methods
- Reader Method: rom-metadata ((rom
rom)) ¶
-
automatically generated reader method
- Target Slot
metadata.
- Generic Reader: rom-prg (rom) ¶
-
Return the program data from the ROM.
- Package
romreader.
- Source
romreader.lisp.
- Methods
- Reader Method: rom-prg ((rom
rom)) ¶
-
automatically generated reader method
- Target Slot
prg.
- Generic Writer: (setf rom-prg) (object) ¶
-
- Package
romreader.
- Methods
- Writer Method: (setf rom-prg) ((rom
rom)) ¶
-
automatically generated writer method
- Source
romreader.lisp.
- Target Slot
prg.
5.1.5 Standalone methods
- Method: initialize-instance :after ((rom
nes) &key) ¶
-
- Source
nes.lisp.
5.1.6 Conditions
-
Signalled when a corrupted or invalid header is encountered.
- Package
romreader.
- Source
conditions.lisp.
- Direct superclasses
romreader-error.
- Direct methods
message.
- Direct slots
- Slot: message ¶
-
- Initargs
:message
- Readers
message.
- Writers
This slot is read-only.
- Condition: romreader-error ¶
-
The base condition for all errors in ROMREADER.
- Package
romreader.
- Source
conditions.lisp.
- Direct superclasses
error.
- Direct subclasses
-
5.1.7 Classes
- Class: rom ¶
-
- Package
romreader.
- Source
romreader.lisp.
- Direct subclasses
nes.
- Direct methods
-
- Direct slots
- Slot: metadata ¶
-
- Initargs
:metadata
- Readers
rom-metadata.
- Writers
This slot is read-only.
- Slot: binary ¶
-
- Initargs
:binary
- Readers
rom-binary.
- Writers
This slot is read-only.
- Slot: format ¶
-
- Package
common-lisp.
- Initargs
:format
- Readers
rom-format.
- Writers
This slot is read-only.
- Slot: prg ¶
-
- Initargs
:prg
- Readers
rom-prg.
- Writers
(setf rom-prg).
- Slot: chr ¶
-
- Initargs
:prg
- Readers
rom-chr.
- Writers
(setf rom-chr).
5.2 Internals
5.2.1 Special variables
- Special Variable: *mapper-table* ¶
-
A list of known NES Memory Mappers of the form (Number . Name).
- Package
romreader-nes.
- Source
nes.lisp.
5.2.3 Generic functions
- Generic Reader: filename (condition) ¶
-
- Package
romreader.
- Methods
- Reader Method: filename ((condition
unknown-format)) ¶
-
- Source
conditions.lisp.
- Target Slot
filename.
- Generic Reader: message (condition) ¶
-
- Package
romreader.
- Methods
- Reader Method: message ((condition
malformed-header)) ¶
-
- Source
conditions.lisp.
- Target Slot
message.
- Generic Function: parse-rom (format pathname) ¶
-
Parse the file located at PATHNAME as a ROM of the given
FORMAT. FORMAT should be a symbol denoting a file extension. Returns a ROM
instance.
- Package
romreader.
- Source
romreader.lisp.
- Methods
- Method: parse-rom ((rom
(eql :nes)) pathname) ¶
-
- Source
nes.lisp.
5.2.4 Conditions
- Condition: unknown-format ¶
-
Signalled when an appropriate parser method could not be
found for the extension of the given ROM pathname.
- Package
romreader.
- Source
conditions.lisp.
- Direct superclasses
romreader-error.
- Direct methods
filename.
- Direct slots
- Slot: filename ¶
-
- Initargs
:filename
- Readers
filename.
- Writers
This slot is read-only.
Appendix A Indexes
A.2 Functions
| |
|
| ( | | |
| (setf rom-chr): | | Public generic functions |
| (setf rom-chr): | | Public generic functions |
| (setf rom-prg): | | Public generic functions |
| (setf rom-prg): | | Public generic functions |
|
| D | | |
| defreader: | | Public macros |
|
| F | | |
| filename: | | Private generic functions |
| filename: | | Private generic functions |
| Function, ksymb: | | Private ordinary functions |
| Function, load-rom: | | Public ordinary functions |
| Function, mkstr: | | Private ordinary functions |
| Function, parse-header: | | Private ordinary functions |
|
| G | | |
| Generic Function, (setf rom-chr): | | Public generic functions |
| Generic Function, (setf rom-prg): | | Public generic functions |
| Generic Function, filename: | | Private generic functions |
| Generic Function, message: | | Private generic functions |
| Generic Function, parse-rom: | | Private generic functions |
| Generic Function, rom-binary: | | Public generic functions |
| Generic Function, rom-chr: | | Public generic functions |
| Generic Function, rom-format: | | Public generic functions |
| Generic Function, rom-metadata: | | Public generic functions |
| Generic Function, rom-prg: | | Public generic functions |
|
| I | | |
| initialize-instance: | | Public standalone methods |
|
| K | | |
| ksymb: | | Private ordinary functions |
|
| L | | |
| load-rom: | | Public ordinary functions |
|
| M | | |
| Macro, defreader: | | Public macros |
| message: | | Private generic functions |
| message: | | Private generic functions |
| Method, (setf rom-chr): | | Public generic functions |
| Method, (setf rom-prg): | | Public generic functions |
| Method, filename: | | Private generic functions |
| Method, initialize-instance: | | Public standalone methods |
| Method, message: | | Private generic functions |
| Method, parse-rom: | | Private generic functions |
| Method, rom-binary: | | Public generic functions |
| Method, rom-chr: | | Public generic functions |
| Method, rom-format: | | Public generic functions |
| Method, rom-metadata: | | Public generic functions |
| Method, rom-prg: | | Public generic functions |
| mkstr: | | Private ordinary functions |
|
| P | | |
| parse-header: | | Private ordinary functions |
| parse-rom: | | Private generic functions |
| parse-rom: | | Private generic functions |
|
| R | | |
| rom-binary: | | Public generic functions |
| rom-binary: | | Public generic functions |
| rom-chr: | | Public generic functions |
| rom-chr: | | Public generic functions |
| rom-format: | | Public generic functions |
| rom-format: | | Public generic functions |
| rom-metadata: | | Public generic functions |
| rom-metadata: | | Public generic functions |
| rom-prg: | | Public generic functions |
| rom-prg: | | Public generic functions |
|
A.4 Data types
| |
|
| C | | |
| Class, nes: | | Private classes |
| Class, rom: | | Public classes |
| Condition, malformed-header: | | Public conditions |
| Condition, romreader-error: | | Public conditions |
| Condition, unknown-format: | | Private conditions |
| conditions.lisp: | | The romreader/conditions․lisp file |
|
| F | | |
| File, conditions.lisp: | | The romreader/conditions․lisp file |
| File, nes.lisp: | | The romreader/nes․lisp file |
| File, package.lisp: | | The romreader/package․lisp file |
| File, romreader.asd: | | The romreader/romreader․asd file |
| File, romreader.lisp: | | The romreader/romreader․lisp file |
|
| M | | |
| malformed-header: | | Public conditions |
|
| N | | |
| nes: | | Private classes |
| nes.lisp: | | The romreader/nes․lisp file |
|
| P | | |
| Package, romreader: | | The romreader package |
| Package, romreader-nes: | | The romreader-nes package |
| package.lisp: | | The romreader/package․lisp file |
|
| R | | |
| rom: | | Public classes |
| romreader: | | The romreader system |
| romreader: | | The romreader package |
| romreader-error: | | Public conditions |
| romreader-nes: | | The romreader-nes package |
| romreader.asd: | | The romreader/romreader․asd file |
| romreader.lisp: | | The romreader/romreader․lisp file |
|
| S | | |
| System, romreader: | | The romreader system |
|
| U | | |
| unknown-format: | | Private conditions |
|