Crate olympia_engine

Source
Expand description

This crate represents the shared logic of olympia across all frontends.

The best modules to start looking in are the gameboy module which contains the emulation core, and rom which contains the logic for parsing ROMs and handling gameboy cartridge memory controllers.

By default, it is no_std compatible, and has the following optional features:

  • std - This feature can be enabled in a std environment to enable niceties like Display/Error implementations on error types.
  • disassembler - This feature can be enabled in any environment to enable support for dissambling gameboy instructions.

Modulesยง

address
Represents a variety of addressing types for emulation.
debug
Methods useful for implementing debugging functionality
disasm
events
Event handling system for local emulators
gameboy
Emulation core for a Gameboy.
instructions
Instruction components that can be applied to any instruction.
instructionsn
registers
Contains operations on CPU registers
remote
Handle communicating with an emulator over a remote channel
rom
ROM and Cartridge handling code