1
0
mirror of https://github.com/TomHarte/CLK.git synced 2024-08-16 00:29:01 +00:00

Merge pull request #514 from TomHarte/VideoFixes

Fixes various IIe video deficiencies.
This commit is contained in:
Thomas Harte 2018-08-05 17:49:13 -04:00 committed by GitHub
commit f2d78182a3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -519,10 +519,11 @@ template <bool is_iie> class ConcreteMachine:
// Write-only switches. All IIe as currently implemented.
if(is_iie) {
switch(address) {
default: break;
default: printf("Write %04x?\n", address); break;
case 0xc000:
case 0xc001:
update_video();
video_->set_80_store(!!(address&1));
set_main_paging();
break;
@ -561,13 +562,16 @@ template <bool is_iie> class ConcreteMachine:
break;
case 0xc00c:
case 0xc00d: video_->set_80_columns(!!(address&1)); break;
case 0xc00d:
update_video();
video_->set_80_columns(!!(address&1));
break;
case 0xc00e:
case 0xc00f: video_->set_alternative_character_set(!!(address&1)); break;
case 0xc05e:
case 0xc05f: video_->set_double_high_resolution(!(address&1)); break;
case 0xc00f:
update_video();
video_->set_alternative_character_set(!!(address&1));
break;
}
}
}
@ -606,6 +610,14 @@ template <bool is_iie> class ConcreteMachine:
set_main_paging();
break;
case 0xc05e:
case 0xc05f:
if(is_iie) {
update_video();
video_->set_double_high_resolution(!(address&1));
}
break;
case 0xc010:
keyboard_input_ &= 0x7f;
if(string_serialiser_) {