1#ifndef YAZE_APP_EMU_SNES_H
2#define YAZE_APP_EMU_SNES_H
37 void Reset(
bool hard =
false);
53 uint8_t
Rread(uint32_t adr);
54 uint8_t
Read(uint32_t adr);
57 void WriteReg(uint16_t adr, uint8_t val);
58 void Write(uint32_t adr, uint8_t val);
62 void CpuWrite(uint32_t adr, uint8_t val);
65 void SetSamples(int16_t* sample_data,
int wanted_samples);
85 [&](uint32_t adr) {
return CpuRead(adr); },
86 [&](uint32_t adr, uint8_t val) {
CpuWrite(adr, val); },
87 [&](
bool waiting) {
CpuIdle(waiting); },
uint16_t port_auto_read_[4]
auto apu() -> audio::Apu &
void RunCycles(int cycles)
memory::MemoryImpl memory_
void InitAccessTime(bool recalc)
void Init(std::vector< uint8_t > &rom_data)
void SyncCycles(bool start, int sync_cycles)
uint8_t ReadReg(uint16_t adr)
uint8_t Rread(uint32_t adr)
void CpuIdle(bool waiting)
memory::CpuCallbacks cpu_callbacks_
auto Memory() -> memory::MemoryImpl &
void SetSamples(int16_t *sample_data, int wanted_samples)
uint8_t CpuRead(uint32_t adr)
std::vector< uint8_t > access_time
auto mutable_cycles() -> uint64_t &
auto ppu() -> video::Ppu &
void Write(uint32_t adr, uint8_t val)
double apu_catchup_cycles_
void CpuWrite(uint32_t adr, uint8_t val)
void WriteBBus(uint8_t adr, uint8_t val)
int GetAccessTime(uint32_t adr)
void SetButtonState(int player, int button, bool pressed)
auto get_ram() -> uint8_t *
void SetPixels(uint8_t *pixel_data)
uint32_t next_horiz_event
uint16_t multiply_result_
void WriteReg(uint16_t adr, uint8_t val)
std::vector< uint8_t > rom_data
uint8_t ReadBBus(uint8_t adr)
void Reset(bool hard=false)
uint8_t Read(uint32_t adr)
The Apu class represents the Audio Processing Unit (APU) of a system.
Implementation of the Memory interface for emulating memory in a SNES system.