diff options
| author | Ben Bridle <bridle.benjamin@gmail.com> | 2024-04-16 15:27:45 +1200 | 
|---|---|---|
| committer | Ben Bridle <bridle.benjamin@gmail.com> | 2024-04-16 15:29:12 +1200 | 
| commit | a07d1585deb41bc40777045ac36b1643d2574980 (patch) | |
| tree | ca055ebf05d28d11d9eb06c726f91a39b77562ba /src/devices | |
| parent | d8f0c1e96b79d5094b8f13f8d412763e18a2e6b8 (diff) | |
| download | bedrock-pc-a07d1585deb41bc40777045ac36b1643d2574980.zip | |
Fix memory, input, screen, and file devices
The memory device was never being allocated any memory, the input device 
wasn't scrolling correctly, the screen device was rendering sprites 
incorrectly, and the device ID of the file device had not been changed 
over from 0xA to 0x9.
Diffstat (limited to 'src/devices')
| -rw-r--r-- | src/devices/input.rs | 8 | ||||
| -rw-r--r-- | src/devices/screen/draw_sprite.rs | 2 | 
2 files changed, 5 insertions, 5 deletions
| diff --git a/src/devices/input.rs b/src/devices/input.rs index f23d902..a065531 100644 --- a/src/devices/input.rs +++ b/src/devices/input.rs @@ -99,12 +99,12 @@ impl InputDevice {      pub fn on_scroll_horizontal(&mut self, delta: f64) {          self.horizontal_scroll_delta += delta; -        while self.horizontal_scroll_delta > 1.0 { +        while self.horizontal_scroll_delta >= 1.0 {              self.horizontal_scroll = self.horizontal_scroll.saturating_add(1);              self.horizontal_scroll_delta -= 1.0;              self.wake_flag = true;          } -        while self.horizontal_scroll_delta < -1.0 { +        while self.horizontal_scroll_delta <= -1.0 {              self.horizontal_scroll = self.horizontal_scroll.saturating_sub(1);              self.horizontal_scroll_delta += 1.0;              self.wake_flag = true; @@ -113,12 +113,12 @@ impl InputDevice {      pub fn on_scroll_vertical(&mut self, delta: f64) {          self.vertical_scroll_delta += delta; -        while self.vertical_scroll_delta > 1.0 { +        while self.vertical_scroll_delta >= 1.0 {              self.vertical_scroll = self.vertical_scroll.saturating_add(1);              self.vertical_scroll_delta -= 1.0;              self.wake_flag = true;          } -        while self.vertical_scroll_delta < -1.0 { +        while self.vertical_scroll_delta <= -1.0 {              self.vertical_scroll = self.vertical_scroll.saturating_sub(1);              self.vertical_scroll_delta += 1.0;              self.wake_flag = true; diff --git a/src/devices/screen/draw_sprite.rs b/src/devices/screen/draw_sprite.rs index 9b0658c..5676335 100644 --- a/src/devices/screen/draw_sprite.rs +++ b/src/devices/screen/draw_sprite.rs @@ -19,7 +19,7 @@ impl ScreenDevice {                  pos.x = pos.x.wrapping_add(1);              }              pos.x = pos.x.wrapping_sub(8); -            pos.y = pos.x.wrapping_add(1); +            pos.y = pos.y.wrapping_add(1);          }      }  } | 
