Skip to content

Latest commit

 

History

History
183 lines (153 loc) · 6.61 KB

CHANGELOG.md

File metadata and controls

183 lines (153 loc) · 6.61 KB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

0.3.4 - 2024-11-12

Added

  • Debian package for plastic.
  • .desktop file and man page for plastic.
  • More checks in CI.
  • Gamepad support for the Egui UI.

Changed

  • Updated dependancies to latest versions.

Fixed

TUI

  • Some bugs with keyboard controls on some terminals.
  • Menu bar similar to the EGui UI to select files and save/load state, etc...
  • File explorer in the terminal to open files and select games

0.3.1 - 2024-10-19

Changed

  • There were some issues with the README and crates.io, so fixed that, no change to the code.

0.3.0 - 2024-10-19

Changed

  • Major refactor to project structure, the emulation structure and UIs [#6]
  • Used EGui instead of all the other UIs, which is cross platform
  • Changed SaveError::Other to SaveError::SerializationError
  • Removed unused CartridgeError::Other

Fixed

  • Bugfix when Ui resumes while there is no cartridge

Misc

  • Moving to edition 2021
  • Fixed module inception error in clippy
  • In CI, added rust-audit to check for security vulnerabilities
  • Improved public API, and documentation

Testing

  • Moved all blargg tests into tests/blargg_tests.rs
  • Removed all sources from test roms files
  • Added save_load_test to test save/load state feature

0.2.2 - 2020-11-07

Added

Changed

  • Numerous optimizations in emulation.

Fixed

  • Windows slow performance bug, this was due to the way we handled sleep between frames.

0.2.1 - 2020-09-09

Fixed

  • Windows GUI crash bug. (0626860)
  • Labels in Save/Load state menus not updating when running a new game. (853705a)
  • Backend exit (UI still present), in the case of loading a new game that has an unsupported mapper. (3972696)
  • CHANGELOG compare releases links.

0.2.0 - 2020-09-09

Added

  • Cartridge with INES2.0 header format support.
  • Mapper 10 (MMC4).
  • Mapper 11 (Color Dreams).
  • Mapper 12.
  • Mapper 66 (GxROM).
  • PPU color emphasis support. (69c70be)
  • Native windows GUI provider.
  • Save state feature.
  • This CHANGELOG file.

Changed

  • Removed all Rc<RefCell<>> usages from the APU structure.

Removed

Fixed

  • Mappers bank out of range bug. (e42f3ee & 8b2ba0e)
  • Most PPU timing accuracy (Now most tests pass!).
  • Some APU timing and internal accuracy.
  • GTK application was able to run only a single instance at a time. (d29c27d)
  • Slow emulation in windows due to Windows's Sleep API. (1ac20ac)

0.1.0 - 2020-08-20

Added

  • Initial implementation of the CPU6502.
  • Cirrus CI system.
  • Interrupt support for the CPU.
  • Initial implementation of the PPU2C02.
  • Initial implementation of the cartridge.
  • Mapper 0 (NROM).
  • TV (display).
  • CHR RAM support in cartridge.
  • SFML GUI.
  • PPU Sprite rendering support.
  • Mapper 1 (MMC1).
  • Mapper 2 (UxROM).
  • Mapper 3.
  • Mapper 4 (MMC3).
  • Emulator tests for CPU and PPU.
  • Added joystick (PS4 controller) support for SFML GUI.
  • Initial implementation of the APU using sine waves (it was so bad).
  • MIT licence.
  • [Codecov] coverage meter.
  • Completed implementation of IRQ support for Mapper 4 (MMC3).
  • Support for SRAM (battery powered RAM) to save into *.nes.sav file.
  • Implementation of CPU unofficial instructions.
  • Mapper 7 (AxROM).
  • Mapper 9 (MMC2).
  • GTK GUI.
  • TUI UI (because its fun).
  • joystick support fo TUI through Gilrs to make it easier to play.
  • IRQ support for APU.
  • Ability to Pause, Resume and Reset emulation.
  • Support for file drag in GTK GUI.

Changed

  • Moved from Cirrus to GithubActions for CI.
  • Major rewrite for APU channels and internals (the right way to do it).

Fixed

  • This is the first release and has SO many rewrites and bug fixes.