1
0
mirror of https://github.com/TomHarte/CLK.git synced 2024-07-27 17:29:38 +00:00

Switched back to the collision_buffer_ being part of the TIA object, added one more assert.

This commit is contained in:
Thomas Harte 2017-02-21 22:26:20 -05:00
parent 7019d396d0
commit b769f22ca0
2 changed files with 4 additions and 6 deletions

View File

@ -128,8 +128,6 @@ TIA::TIA(bool create_crt) :
colour_mask_by_mode_collision_flags_[(int)ColourMode::OnTop][c] = (uint8_t)ColourIndex::PlayfieldBall; colour_mask_by_mode_collision_flags_[(int)ColourMode::OnTop][c] = (uint8_t)ColourIndex::PlayfieldBall;
} }
} }
collision_buffer_.resize(160);
} }
TIA::TIA() : TIA(true) {} TIA::TIA() : TIA(true) {}
@ -237,6 +235,7 @@ void TIA::set_background_colour(uint8_t colour)
void TIA::set_playfield(uint16_t offset, uint8_t value) void TIA::set_playfield(uint16_t offset, uint8_t value)
{ {
assert(offset >= 0 && offset < 3);
switch(offset) switch(offset)
{ {
case 0: case 0:
@ -443,8 +442,8 @@ void TIA::output_for_cycles(int number_of_cycles)
if(!output_cursor) if(!output_cursor)
{ {
if(line_end_function_) line_end_function_(collision_buffer_.data()); if(line_end_function_) line_end_function_(collision_buffer_);
memset(collision_buffer_.data(), 0, 160); // sizeof(collision_buffer_) memset(collision_buffer_, 0, sizeof(collision_buffer_));
horizontal_blank_extend_ = false; horizontal_blank_extend_ = false;
ball_.motion_time %= 228; ball_.motion_time %= 228;

View File

@ -89,8 +89,7 @@ class TIA {
int output_mode_; int output_mode_;
// keeps track of the target pixel buffer for this line and when it was acquired, and a corresponding collision buffer // keeps track of the target pixel buffer for this line and when it was acquired, and a corresponding collision buffer
// alignas(alignof(uint32_t)) uint8_t collision_buffer_[160]; alignas(alignof(uint32_t)) uint8_t collision_buffer_[160];
std::vector<uint8_t> collision_buffer_;
enum class CollisionType : uint8_t { enum class CollisionType : uint8_t {
Playfield = (1 << 0), Playfield = (1 << 0),
Ball = (1 << 1), Ball = (1 << 1),