1
0
mirror of https://github.com/TomHarte/CLK.git synced 2026-04-19 02:22:39 +00:00

Implements line querying and most of line interrupts.

This commit is contained in:
Thomas Harte
2018-10-04 22:50:35 -04:00
parent aac97a8983
commit 7830cda912
4 changed files with 86 additions and 15 deletions
+6 -4
View File
@@ -163,8 +163,10 @@ class ConcreteMachine:
case CPU::Z80::PartialMachineCycle::Write:
if(address >= 0xfffd && cartridge_.size() > 48*1024) {
paging_registers_[address - 0xfffd] = *cycle.value;
page_cartridge();
if(paging_registers_[address - 0xfffd] != *cycle.value) {
paging_registers_[address - 0xfffd] = *cycle.value;
page_cartridge();
}
}
else if(write_pointers_[address >> 10]) write_pointers_[address >> 10][address & 1023] = *cycle.value;
break;
@@ -180,8 +182,8 @@ class ConcreteMachine:
*cycle.value = 0xff;
break;
case 0x40: case 0x41:
printf("TODO: [input] get current line\n");
*cycle.value = 0xff;
update_video();
*cycle.value = vdp_->get_current_line();
break;
case 0x80: case 0x81:
update_video();