ROLAND
0.70
Amstrad Emulator based on Caprice Source rewritten in C++.
|
#include <cpc.h>
Public Types | |
enum | CpcType : unsigned char { cpc464 = 0, cpc664 = 1, cpc6128 = 2 } |
enum | RamSize : unsigned short int { ram64 = 64, ram128 = 128, ram256 = 256, ram512 = 512 } |
Public Member Functions | |
Cpc () ROLAND_DELETE Cpc(const Prefs &prefs) | |
~Cpc () ROLAND_DEFAULT int init() ROLAND_NOEXCEPT | |
void | setSpeed (uint value) |
uint | speed () const |
tUBYTE | z80_in_handler (tREGPAIR port) ROLAND_NOEXCEPT |
void | z80_out_handler (tREGPAIR port, tUBYTE value) ROLAND_NOEXCEPT |
void | waitstates () ROLAND_NOEXCEPT |
Z80 & | z80 () |
Ppi & | ppi () |
Fdc & | fdc () |
Psg & | psg () |
Vdu & | vdu () |
Crtc & | crtc () |
Sound & | sound () |
MemMan & | memman () |
Colours & | colours () |
Keyboard & | keyboard () |
GateArray & | gatearray () |
Private Attributes | |
CpcType | mCpcType |
uint | mSpeed |
uint | mBpp |
Prefs | mPrefs |
Z80 | mZ80 |
Crtc | mCrtc |
Ppi | mPpi |
Fdc | mFdc |
Psg | mPsg |
GateArray | mGatearray |
Keyboard | mKeyboard |
Colours | mColours |
MemMan | mMemman |
Sound | mSound |
Vdu | mVdu |
Represents the CPC and all of its components and functions. What we need is a Monitor and a Keyboard. Roland will take yours. ;)
|
strong |
|
strong |
Cpc | ( | ) | const |
~Cpc | ( | ) |
|
inline |
References Cpc::mColours.
Referenced by VideoStd::init(), and VideoGL::init().
|
inline |
References Cpc::mCrtc.
|
inline |
References Cpc::mGatearray.
|
inline |
References Cpc::mKeyboard.
|
inline |
References Cpc::mMemman.
|
inline |
References Cpc::mSpeed.
|
inline |
References Cpc::mSound.
Referenced by Audio::dist(), Z80::execute(), Audio::init(), Audio::pause(), Audio::quit(), and Audio::update().
|
inline |
References Cpc::mSpeed, port, ROLAND_NOEXCEPT, Cpc::waitstates(), Cpc::z80_in_handler(), and Cpc::z80_out_handler().
|
inline |
References Cpc::mVdu.
Referenced by VideoStd::init(), and VideoGL::init().
void waitstates | ( | ) |
References Vdu::access_video_memory(), Fdc::addFlags(), Fdc::cmdDirection(), Z80::cycleCount(), Sound::cycleCountBoth(), Sound::cycleCountHigh(), Sound::cycleCountInitBoth(), Sound::cycleCountInitHigh(), Sound::enabled(), EXEC_PHASE, FDC_TO_CPU, Cpc::mFdc, Cpc::mSound, Cpc::mVdu, Cpc::mZ80, OVERRUN_flag, Fdc::phase(), Fdc::read_data(), Sound::setCycleCountBoth(), Sound::setCycleCountHigh(), Fdc::setTimeout(), Sound::synthesizer(), and Fdc::timeout().
Referenced by Cpc::speed().
tUBYTE z80_in_handler | ( | tREGPAIR | port | ) |
References Psg::control(), Ppi::control(), Crtc::flags(), Ppi::jumpers(), Cpc::mCrtc, Cpc::mFdc, Cpc::mKeyboard, Cpc::mPpi, Cpc::mPsg, port, Ppi::portA(), Ppi::portB(), Ppi::portC(), Crtc::read(), Fdc::read_data(), Fdc::read_status(), Psg::registerAY(), Keyboard::row(), Psg::selected(), Crtc::selected(), Keyboard::value(), and Crtc::VS.
Referenced by Cpc::speed().
void z80_out_handler | ( | tREGPAIR | port, |
tUBYTE | value | ||
) |
References Fdc::addFlags(), bit_values, Ppi::control(), Colours::get(), Cpc::mColours, Cpc::mCrtc, MemMan::memoryManager(), Cpc::mFdc, Cpc::mGatearray, Cpc::mKeyboard, Cpc::mMemman, Cpc::mPpi, Cpc::mPsg, mPsg_write, Cpc::mZ80, port, Ppi::portA(), Ppi::portC(), Crtc::select(), Crtc::selected(), Ppi::setA(), Ppi::setB(), Ppi::setC(), Ppi::setControl(), Psg::setControl(), GateArray::setInk(), Z80::setIntPending(), Fdc::setMotor(), GateArray::setPalette(), GateArray::setPen(), GateArray::setRamConfig(), GateArray::setRequestedMode(), GateArray::setRomConfig(), Keyboard::setRow(), GateArray::setSlCount(), GateArray::setUpperRom(), Keyboard::setValue(), STATUSDRVA_flag, STATUSDRVB_flag, MemMan::toggleUpperRom(), and Crtc::write().
Referenced by Cpc::speed().
|
private |
|
private |
Referenced by Cpc::colours(), and Cpc::z80_out_handler().
|
private |
|
private |
Referenced by Cpc::crtc(), Cpc::z80_in_handler(), and Cpc::z80_out_handler().
|
private |
Referenced by Cpc::fdc(), Cpc::waitstates(), Cpc::z80_in_handler(), and Cpc::z80_out_handler().
|
private |
Referenced by Cpc::gatearray(), and Cpc::z80_out_handler().
|
private |
Referenced by Cpc::keyboard(), Cpc::z80_in_handler(), and Cpc::z80_out_handler().
|
private |
Referenced by Cpc::memman(), and Cpc::z80_out_handler().
|
private |
Referenced by Cpc::ppi(), Cpc::z80_in_handler(), and Cpc::z80_out_handler().
|
private |
|
private |
Referenced by Cpc::psg(), Cpc::z80_in_handler(), and Cpc::z80_out_handler().
|
private |
Referenced by Cpc::sound(), and Cpc::waitstates().
|
private |
Referenced by Cpc::setSpeed(), and Cpc::speed().
|
private |
Referenced by Cpc::vdu(), and Cpc::waitstates().
|
private |
Referenced by Cpc::waitstates(), Cpc::z80(), and Cpc::z80_out_handler().