mirror of
https://github.com/TomHarte/CLK.git
synced 2025-04-10 07:39:01 +00:00
Fixed: turned out the power-on bit was being cleared.
This commit is contained in:
parent
d95414b2eb
commit
cc5ba8243e
Machines/Electron
@ -108,7 +108,7 @@ unsigned int Machine::perform_bus_operation(CPU6502::BusOperation operation, uin
|
||||
// _activeRom = (Electron::ROMSlot)(nextROM&0x0e);
|
||||
// printf("%d -> Paged %d\n", nextROM, _activeRom);
|
||||
// }
|
||||
if((_activeRom&12) != 8 || nextROM&8)
|
||||
if(((_activeRom&12) != 8) || (nextROM&8))
|
||||
{
|
||||
_activeRom = (Electron::ROMSlot)nextROM;
|
||||
}
|
||||
@ -187,7 +187,7 @@ void Machine::set_rom(ROMSlot slot, size_t length, const uint8_t *data)
|
||||
|
||||
inline void Machine::signal_interrupt(Electron::Interrupt interrupt)
|
||||
{
|
||||
_interruptStatus |= (interrupt << 2);
|
||||
_interruptStatus |= interrupt;
|
||||
evaluate_interrupts();
|
||||
}
|
||||
|
||||
|
@ -30,11 +30,11 @@ enum ROMSlot: uint8_t {
|
||||
};
|
||||
|
||||
enum Interrupt: uint8_t {
|
||||
InterruptRealTimeClock = 0x01,
|
||||
InterruptDisplayEnd = 0x02,
|
||||
InterruptTransmitDataEmpty = 0x04,
|
||||
InterruptReceiveDataFull = 0x08,
|
||||
InterruptHighToneDetect = 0x10
|
||||
InterruptRealTimeClock = 0x04,
|
||||
InterruptDisplayEnd = 0x08,
|
||||
InterruptTransmitDataEmpty = 0x10,
|
||||
InterruptReceiveDataFull = 0x20,
|
||||
InterruptHighToneDetect = 0x40
|
||||
};
|
||||
|
||||
class Machine: public CPU6502::Processor<Machine> {
|
||||
|
Loading…
x
Reference in New Issue
Block a user