libgambatte: misc. non-functional

master
sinamas 2019-08-25 12:13:10 +02:00
parent 50c0fa0138
commit a0148f49bb
2 changed files with 13 additions and 13 deletions

View File

@ -51,7 +51,7 @@ Memory::Memory(Interrupter const &interrupter)
, oamDmaStartPos_(0)
, serialCnt_(0)
, blanklcd_(false)
, haltHdmaState_(halt_hdma_low)
, haltHdmaState_(hdma_low)
{
intreq_.setEventTime<intevent_blit>(1l * lcd_vres * lcd_cycles_per_line);
intreq_.setEventTime<intevent_end>(0);
@ -107,7 +107,7 @@ void Memory::loadState(SaveState const &state) {
dmaDestination_ = state.mem.dmaDestination;
oamDmaPos_ = state.mem.oamDmaPos;
oamDmaStartPos_ = 0;
haltHdmaState_ = static_cast<HaltHdmaState>(std::min(1u * state.mem.haltHdmaState, 1u * halt_hdma_transition));
haltHdmaState_ = static_cast<HdmaState>(std::min(1u * state.mem.haltHdmaState, 1u * hdma_requested));
serialCnt_ = intreq_.eventTime(intevent_serial) != disabled_time
? serialCntFrom(intreq_.eventTime(intevent_serial) - state.cpu.cycleCounter,
ioamhram_[0x102] & isCgb() * 2)
@ -180,8 +180,8 @@ unsigned long Memory::event(unsigned long cc) {
switch (intreq_.minEventId()) {
case intevent_unhalt:
if ((lcd_.hdmaIsEnabled() && lcd_.isHdmaPeriod(cc) && haltHdmaState_ == halt_hdma_low)
|| haltHdmaState_ == halt_hdma_transition) {
if ((lcd_.hdmaIsEnabled() && lcd_.isHdmaPeriod(cc) && haltHdmaState_ == hdma_low)
|| haltHdmaState_ == hdma_requested) {
flagHdmaReq(intreq_);
}
@ -233,8 +233,8 @@ unsigned long Memory::event(unsigned long cc) {
case intevent_dma:
interrupter_.prefetch(cc, *this);
cc = dma(cc);
if (haltHdmaState_ == halt_hdma_transition) {
haltHdmaState_ = halt_hdma_low;
if (haltHdmaState_ == hdma_requested) {
haltHdmaState_ = hdma_low;
intreq_.setMinIntTime(cc);
cc -= 4;
}
@ -250,8 +250,8 @@ unsigned long Memory::event(unsigned long cc) {
cc += 4 * (isCgb() || cc - intreq_.eventTime(intevent_interrupts) < 2);
if (cc > lastOamDmaUpdate_)
updateOamDma(cc);
if ((lcd_.hdmaIsEnabled() && lcd_.isHdmaPeriod(cc) && haltHdmaState_ == halt_hdma_low)
|| haltHdmaState_ == halt_hdma_transition) {
if ((lcd_.hdmaIsEnabled() && lcd_.isHdmaPeriod(cc) && haltHdmaState_ == hdma_low)
|| haltHdmaState_ == hdma_requested) {
flagHdmaReq(intreq_);
}
@ -354,10 +354,10 @@ bool Memory::halt(unsigned long cc) {
updateOamDma(cc);
haltHdmaState_ = lcd_.hdmaIsEnabled() && lcd_.isHdmaPeriod(cc)
? halt_hdma_high : halt_hdma_low;
? hdma_high : hdma_low;
bool const hdmaReq = hdmaReqFlagged(intreq_);
if (hdmaReq)
haltHdmaState_ = halt_hdma_transition;
haltHdmaState_ = hdma_requested;
if (lastOamDmaUpdate_ != disabled_time)
updateOamDma(cc + 4);
@ -396,10 +396,10 @@ unsigned long Memory::stop(unsigned long cc, bool &skip) {
// DIV reset.
nontrivial_ff_write(0x04, 0, cc);
haltHdmaState_ = lcd_.hdmaIsEnabled() && lcd_.isHdmaPeriod(cc)
? halt_hdma_high : halt_hdma_low;
? hdma_high : hdma_low;
skip = hdmaReqFlagged(intreq_);
if (skip && isDoubleSpeed())
haltHdmaState_ = halt_hdma_transition;
haltHdmaState_ = hdma_requested;
unsigned long const cc_ = cc + 8 * !isDoubleSpeed();
if (cc_ >= cc + 4) {
if (lastOamDmaUpdate_ != disabled_time)

View File

@ -128,7 +128,7 @@ private:
unsigned char oamDmaStartPos_;
unsigned char serialCnt_;
bool blanklcd_;
enum HaltHdmaState { halt_hdma_low, halt_hdma_high, halt_hdma_transition } haltHdmaState_;
enum HdmaState { hdma_low, hdma_high, hdma_requested } haltHdmaState_;
void decEventCycles(IntEventId eventId, unsigned long dec);
void oamDmaInitSetup();