mirror of
https://github.com/TomHarte/CLK.git
synced 2025-02-16 18:30:32 +00:00
Provides a base pointer for video output.
This commit is contained in:
parent
f2620e6afb
commit
87fc7c02e8
@ -95,6 +95,10 @@ template <VideoTiming timing> class Video {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void set_video_source(const uint8_t *source) {
|
||||||
|
memory_ = source;
|
||||||
|
}
|
||||||
|
|
||||||
HalfCycles get_next_sequence_point() {
|
HalfCycles get_next_sequence_point() {
|
||||||
if(time_since_interrupt_ < interrupt_duration) {
|
if(time_since_interrupt_ < interrupt_duration) {
|
||||||
return HalfCycles(interrupt_duration - time_since_interrupt_);
|
return HalfCycles(interrupt_duration - time_since_interrupt_);
|
||||||
@ -135,6 +139,7 @@ template <VideoTiming timing> class Video {
|
|||||||
private:
|
private:
|
||||||
int time_since_interrupt_ = 0;
|
int time_since_interrupt_ = 0;
|
||||||
Outputs::CRT::CRT crt_;
|
Outputs::CRT::CRT crt_;
|
||||||
|
const uint8_t *memory_ = nullptr;
|
||||||
};
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -224,6 +224,9 @@ template<Model model> class ConcreteMachine:
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Set the proper video base pointer.
|
||||||
|
video_->set_video_source(&ram_[((port7ffd_ & 0x08) ? 7 : 5) * 16384]);
|
||||||
|
|
||||||
if(port1ffd_ & 1) {
|
if(port1ffd_ & 1) {
|
||||||
// "Special paging mode", i.e. one of four fixed
|
// "Special paging mode", i.e. one of four fixed
|
||||||
// RAM configurations, port 7ffd doesn't matter.
|
// RAM configurations, port 7ffd doesn't matter.
|
||||||
|
Loading…
x
Reference in New Issue
Block a user