1
0
mirror of https://github.com/TomHarte/CLK.git synced 2025-01-25 09:30:14 +00:00

Evaluate address lazily.

This commit is contained in:
Thomas Harte 2024-12-31 08:28:42 -05:00
parent 233a627c9f
commit 5e3947b8bc

View File

@ -287,12 +287,12 @@ public:
next_cursor_.advance(); next_cursor_.advance();
} }
if(increment_video_counter_) { if(increment_video_counter_) {
const uint16_t address = video_matrix_base_ + video_counter_; const auto address = [&] { return uint16_t(video_matrix_base_ + video_counter_); };
if(bad_line2_) { if(bad_line2_) {
shifter_.write<1>(pager_.read(address)); shifter_.write<1>(pager_.read(address()));
} else if(bad_line()) { } else if(bad_line()) {
next_character_.write(shifter_.read<0>()); next_character_.write(shifter_.read<0>());
shifter_.write<0>(pager_.read(address + 0x400)); shifter_.write<0>(pager_.read(address() + 0x400));
} }
if(!bad_line()) next_character_.write(shifter_.read<0>()); if(!bad_line()) next_character_.write(shifter_.read<0>());