vemu.

Event Vocabulary

The structured events every board shares. Outbound events arrive through the onEvent callback as { kind, payload } objects; inbound events are sent with dispatch(kind, payloadJson). Peripheral-specific kinds are documented on each peripheral page.

Outbound (emulator → host)

audio.samples

Interleaved PCM audio samples were produced.

Payload

FieldTypeDescription
sample_countu64Number of samples in the batch.
gpio.change

A GPIO output pin changed level.

Payload

FieldTypeDescription
levelbooleanNew logical level (`true` = high).
pinu32Pin number within the port.
portu32GPIO port index.
irq.lower

An interrupt line was deasserted.

Payload

FieldTypeDescription
lineu32NVIC IRQ number (Cortex-M) or GIC SPI number (Cortex-A).
irq.raise

An interrupt line was asserted (pended).

Payload

FieldTypeDescription
lineu32NVIC IRQ number (Cortex-M) or GIC SPI number (Cortex-A).
uart.tx

Bytes transmitted by the guest on a UART/serial port.

Payload

FieldTypeDescription
bytesbytesTransmitted bytes.
portu32Logical UART port index (0 = primary console).
video.frame

A completed display frame is available; fetch pixels via the framebuffer API.

Payload

FieldTypeDescription
heightu32Frame height in pixels.
widthu32Frame width in pixels.

Inbound (host → emulator)

joypad

Game controller state for console boards.

Payload

FieldTypeDescription
bitsu32Packed button bitmask.
uart.rx

Bytes from the host (terminal keystrokes) delivered to the guest UART RX line.

Payload

FieldTypeDescription
bytesbytesReceived bytes.