[][src]Module spectrusty::peripherals::ay

The AY-3-8910 programmable sound generator chipset family.

This module contains chipset I/O interface protocol traits and helper types.

The sound emulation is in a separate module, please see audio.

Modules

audio

The emulation of the AY-3-8910/8912/8913 sound generator.

serial128

Structs

Ay3_891xIo

Implements a communication protocol with programmable sound generator AY-3-8910 / 8912 / 8913 and its I/O ports.

Ay128kPortDecode

Matches I/O port addresses for AY-3-8912 used by the ZX Spectrum+ 128k or a Melodik interface.

AyFullerBoxPortDecode

Matches I/O port addresses for AY-3-8912 used by the Fuller Box interface.

AyIoNullPort

An Ay3_891xIo I/O device implementation that does nothing.

AyRegChange

A type for recording timestamped changes to one of AY-3-8910 audio registers.

AyRegNullRecorder

A recorder for Ay3_891xIo that records nothing.

AyRegVecRecorder

A convenient recorder for Ay3_891xIo that records changes in a Vec.

AyTC2068PortDecode

Matches I/O port addresses for AY-3-8912 used by the Timex TC2068 computer series.

Enums

AyRegister

An enumeration of AY-3-8910 registers.

Constants

NUM_SOUND_GEN_REGISTERS

Traits

AyIoPort

This trait should be implemented by emulators of devices attached to one of two Ay3_891xIo I/O ports.

AyPortDecode

A helper trait for matching I/O port addresses for AY-3-8910.

AyRegRecorder

Allows recording of changes to AY-3-8910 audio registers with timestamps.

Type Definitions

Ay3_8910Io

The type of Ay3_891xIo with two optional I/O ports (A and B) and AyRegVecRecorder.

Ay3_8912Io

The type of Ay3_891xIo with one I/O port (A only) and AyRegVecRecorder.

Ay3_8913Io

The type of Ay3_891xIo without I/O ports and AyRegVecRecorder.