Releases: Baekalfen/PyBoy
Releases Β· Baekalfen/PyBoy
v2.5.0
- Sound is no longer in beta, and no longer muted by default
- Control sound sample rate, volume or disable entirely
- Introduce API for sound. Sound buffer is provided frame-by-frame.[1]
- Introduce PyBoyException as the base-exception for PyBoy
- Introduce exceptions when accessing features that are not enabled
- Actually release the GIL for improved multi-threading support
- Blank out first frame after enabling LCD (emulation accuracy)
- Implement consistent frame-cycles. Each tick is targeting 70224 emulated CPU cycles.[1]
- Fix bug when using CGB boot ROM with DMG game ROM
- Fix no_input to ignore SDL2 input but keep API input
- Fix a lot of small issues related to determinism and save/load state
- Added documentation for plugin-kwargs on PyBoy constructor
- Python 3.8 support removed as it's past end-of-life
- Fix stepping with debugger after v2.4.0
- Add set_time_left to Super Mario Land wrapper
- More consistent handling of cartridge names in DMG/CGB mode
[1]: When the game enables/disables the LCD, the timing will be shorter than 70224 emulated cycles. Therefore the sound buffer will also be shorter than 16.667ms (60 FPS).
NOTE: If you depend on exact timing of a frame (assume a specific start block in Tetris etc.) then expect these to have changed. These changes improve emulation correctness, and I cannot promise specific frame timings between releases.
Although I don't expect this to become a regular occurrence.
v2.4.1
v2.4.0
- Massive performance improvements (10-40%!)
- CPU and memory timings have been corrected* (passes Blargg's tests!)
- If you're making a plugin, then note that
post_tick
is now only called once at the end ofpyboy.tick
. Not for every frame. - Clarify in docs that reads from
pyboy.memory
might return a memoryview in the future. - If you're running pytest locally,
TEST_CI
has been removed and you now have to specifically setTEST_VERBOSE_IMAGES=1
to see debug images.
*If you depend on exact timing of a frame (assume a specific start block in Tetris etc.) then expect these to have changed. This change improves emulation correctness, and I cannot promise specific frame timings between releases.
v2.3.0
v2.2.2
v2.2.1
v2.2.0
v2.1.0
v2.0.3
v2.0.2
- Desperately trying to do a full and functional deploy while fighting PyPI limits
- Breakpoints optimized internally
- Drastically reduced PyPI file sizes (slightly faster
pip install
)