mirror of
https://github.com/TomHarte/CLK.git
synced 2024-10-04 01:57:54 +00:00
Enable sprite reuse and toggle to inactive when visible region is over.
This commit is contained in:
parent
2c1f2edcf2
commit
4e66017205
@ -1008,7 +1008,8 @@ bool Chipset::Sprite::advance(int y) {
|
|||||||
// and proceed to FetchData0.
|
// and proceed to FetchData0.
|
||||||
case DMAState::FetchData1:
|
case DMAState::FetchData1:
|
||||||
if(y == v_stop_) {
|
if(y == v_stop_) {
|
||||||
dma_state_ = DMAState::Stopped;
|
dma_state_ = DMAState::FetchStart;
|
||||||
|
active = false;
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
set_image_data(1, ram_[pointer_[0]]);
|
set_image_data(1, ram_[pointer_[0]]);
|
||||||
|
@ -145,12 +145,13 @@ class Chipset: private ClockingHint::Observer {
|
|||||||
uint16_t v_start_ = 0, v_stop_ = 0;
|
uint16_t v_start_ = 0, v_stop_ = 0;
|
||||||
|
|
||||||
enum class DMAState {
|
enum class DMAState {
|
||||||
|
Stopped,
|
||||||
FetchStart,
|
FetchStart,
|
||||||
FetchStopAndControl,
|
FetchStopAndControl,
|
||||||
WaitingForStart,
|
WaitingForStart,
|
||||||
|
|
||||||
FetchData1,
|
FetchData1,
|
||||||
FetchData0,
|
FetchData0,
|
||||||
Stopped
|
|
||||||
} dma_state_ = DMAState::FetchStart;
|
} dma_state_ = DMAState::FetchStart;
|
||||||
} sprites_[8];
|
} sprites_[8];
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user