[][src]Crate olympia_engine

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