gb::Link class

Emulate link port.

Contents

Contains Gameboy link cable logic.

Public types

enum Mode { INTERNAL, EXTERNAL }
using Ptr = std::unique_ptr<Link>
Smart pointer type.
using ReadyCallback = std::function<void(uint8_t, Mode)>
Callback to signal transfer ready status.

Public functions

void update(uint8_t cycles)
void recieve(uint8_t byte)
void setReadyCallback(const ReadyCallback& callback)

Enum documentation

enum gb::Link::Mode

Enumerators
INTERNAL

Internal Clock Mode.

EXTERNAL

External Clock Mode.

Function documentation

void gb::Link::update(uint8_t cycles)

Update with CPU cycles elapsed

void gb::Link::recieve(uint8_t byte)

Write a byte buffer into the core

void gb::Link::setReadyCallback(const ReadyCallback& callback)

Signal that this core is ready to transfer a byte