Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/IsaacMarovitz/tetsuyu
/ types & classes
Types & classes
80 in github.com/IsaacMarovitz/tetsuyu
⨍
Functions
313
◇
Types & classes
80
Class
APU
src/sound/apu.rs:7
Class
APUConfig
src/config.rs:96
Enum
Addr
src/hw/cpu.rs:30
Enum
AluOp
src/hw/cpu.rs:24
Class
App
src/main.rs:46
Class
Apu
APU as a bus peer. Its frame sequencer is clocked by the timer's DIV, so the motherboard advances it each M-cycle with the current DIV value rather th
src/hw/apu.rs:10
Class
Args
src/main.rs:41
Class
BGPI
src/components/ppu/bgpi.rs:1
Enum
BankMode
src/mbc/mbc1.rs:90
Enum
BusDir
src/hw/bus.rs:5
Enum
BusMaster
src/hw/bus.rs:15
Enum
Byte
src/hw/cpu.rs:33
Enum
CCMode
src/components/mode.rs:10
Enum
CGBFlag
src/mbc/header.rs:85
Class
CH1
src/sound/ch1.rs:7
Class
CH2
src/sound/ch2.rs:7
Class
CH3
src/sound/ch3.rs:7
Class
CH4
src/sound/ch4.rs:5
Enum
CartTypes
src/mbc/mode.rs:6
Class
Ch3BlipNode
src/sound/ch3_blip.rs:90
Class
Ch3BlipProducer
src/sound/ch3_blip.rs:24
Interface
Chip
A peer chip on the bus, with its two hardware-distinct interfaces separated: - `advance` steps the chip's internal clock by one dot. `base_dot` gates
src/hw/bus.rs:76
Class
Clock
Owns *time* and nothing else. It does not own or step any chip; its only job is to turn CPU T-cycles into base-clock dots, accounting for the double-s
src/hw/clock.rs:5
Class
Color
src/config.rs:73
Class
ColorCorrection
Adapted from SameBoy Color Correction
src/components/ppu/cc.rs:17
Enum
Cond
src/hw/cpu.rs:21
Class
Config
src/config.rs:6
Class
Context
src/context.rs:10
Class
Cpu
src/hw/cpu.rs:176
Enum
Destination
src/mbc/header.rs:79
Class
Dma
The DMA engine: OAM DMA (0xFF46) and CGB HDMA/GPDMA (0xFF51-0xFF55). It owns the registers and the transfer state, but the byte movement itself is dri
src/hw/dma.rs:9
Enum
Effect
src/hw/cpu.rs:127
Class
Frame
src/framebuffer.rs:4
Class
FramebufferReader
src/framebuffer.rs:66
Class
FramebufferWriter
src/framebuffer.rs:16
Enum
GBMode
src/components/mode.rs:4
Class
GlobalMix
src/sound/synth.rs:96
Class
Harness
src/harness.rs:37
Class
Header
src/mbc/header.rs:8
Class
Input
src/config.rs:117
Class
InterruptController
The interrupt controller. Owns IF ($FF0F) and IE ($FFFF) and decodes them itself. Other chips report IRQs via their `Ticked`; the motherboard funnels
src/hw/interrupt.rs:37
Class
Joypad
src/components/joypad.rs:19
Class
LengthCounter
src/sound/length_counter.rs:1
Class
LfsrNoiseControlled
src/sound/lfsr_noise.rs:4
Enum
Licensee
src/mbc/licensee.rs:4
Interface
MBC
src/mbc/mode.rs:133
Class
MBC1
src/mbc/mbc1.rs:4
Class
MBC2
src/mbc/mbc2.rs:4
Class
MBC3
src/mbc/mbc3.rs:5
Class
MBC5
src/mbc/mbc5.rs:4
Enum
MBCMode
src/mbc/mode.rs:111
Interface
Memory
src/components/memory.rs:1
Enum
MicroOp
src/hw/cpu.rs:115
Class
Motherboard
The mainboard: owns the chips, the clock, and the traces. Its logic is arbitration, routing, and driving the DMA — it holds no peripheral internals an
src/hw/motherboard.rs:18
Class
NoiseChannel
src/sound/synth.rs:67
Class
PPU
src/components/ppu/ppu.rs:14
Class
PPUConfig
src/config.rs:37
Enum
PPUMode
src/components/ppu/structs.rs:11
Class
Palette
src/config.rs:52
Class
PeriodTimer
A down-counting timer shared by the tone and wave channels. It advances one T-cycle per `tick` and, when the period elapses, reloads with the caller's
src/sound/period_timer.rs:7
Class
Pins
The shared traces. Exactly one master drives them per M-cycle; every chip watches them and asserts data / latches writes only on the transfer dot.
src/hw/bus.rs:22
Class
Ppu
The PPU as a peer chip. It owns the existing dot-accurate line renderer and adapts it to the bus. The renderer is boxed: it embeds ~384 KB of color lo
src/hw/ppu.rs:13
Enum
Priority
src/components/ppu/structs.rs:4
Class
PulseChannel
src/sound/synth.rs:11
Enum
R16
src/hw/cpu.rs:15
Enum
R16Stk
src/hw/cpu.rs:18
Enum
R8
src/hw/cpu.rs:12
Class
ROMOnly
src/mbc/rom_only.rs:4
Class
RTC
src/mbc/mbc3.rs:79
Class
Registers
src/components/registers.rs:7
Enum
RotOp
src/hw/cpu.rs:27
Enum
RunOutcome
src/harness.rs:30
Class
Serial
TODO: Handle serial properly
src/components/serial.rs:6
Enum
StopCondition
src/harness.rs:18
Class
Synth
src/sound/synth.rs:115
Class
SystemBus
Everything on the bus that is passive memory or an untimed port: the cartridge (MBC) with the boot-rom overlay, work RAM, high RAM, the serial and joy
src/hw/sysbus.rs:16
Class
Ticked
src/hw/bus.rs:53
Class
Timer
DIV/TIMA timer as a peer chip. The internal 16-bit counter advances one step per dot (CPU-clock domain). DIV is the high byte; TIMA is clocked on the
src/hw/timer.rs:8
Class
VolumeEnvelope
src/sound/volume_envelope.rs:1
Class
WaveChannel
src/sound/synth.rs:40