Skip to content

Releases: freezy/dmd-extensions

v2.5.0

Choose a tag to compare

@freezy freezy released this 22 Jun 21:16
  • Added support for Serum v2.6.0, which has a bunch of new features!
  • Added support for Pixelcade's v2 firmware.
  • Fixed PinballFX3, which is now called PinballFX Classic, so it can find the correct process again.
  • Improved error messages on systems without OpenGL.
  • Fixed black segment DMDs on PinballFX.
  • Added support for static palettes on Future Pinball.
  • Fixed a bug in PinballFX Classic for Serum coloring.

v2.4.0

Choose a tag to compare

@github-actions github-actions released this 11 Jan 21:48
  • Added PWM support from PinMAME. PWM (pulse-width modulation) is used by some games to simulate additional gray tones on the DMD. This was previously ignored, but thanks to @vbousquet we’re now getting much smoother gradients and more accurate grayscale rendering. This does not apply to colorizations, which still receive the original frames (increasing the bit depth there would break them anyway).
  • Updated Serum to the latest version, which introduces an optimized cROMc format that uses an order of magnitude fewer resources. The original cRZ format is still supported but will be internally converted to cROMc. As a result, new colorizations will be distributed in this new format.
  • Fixed the GitHub CI, meaning every update pushed to the repository is now automatically built and available for testing.

v2.3.1

Choose a tag to compare

@freezy freezy released this 14 Feb 20:24

This release contains all the latest ZeDMD changes. Many thanks to @mkalkbrenner and @zesinger for their continued support!

  • Support for ZeDMDs based on the ESP32 S3
  • Better performance with ZeDMD, especially for RGB24 (FlexDMD, UltraDMD)
  • Some complicated ZeDMD settings have been removed from DmdDevice.ini. These and others can now be more conveniently configured via the ZeDMD web interface, the zedmd-client, or the ZeDMD updater.
  • More detailed logging for ZeDMD in DmdDevice.log
  • ZeDMD 5.1.4 or higher is required. New features:
    • Settings Menu
    • ZeDMD firmware now includes both USB and WiFi, switchable in the Settings menu
    • Support for USB CDC
    • WiFi TCP as an alternative to UDP

Important

When downloading the ZIP file, don't extract all files if you already have an existing DmdDevice.ini, because it will erase your current settings!

Discussion

v2.3.0

Choose a tag to compare

@freezy freezy released this 07 Nov 22:00
  • Add support for Serum v2.0
  • Tons of bugfixes

Discussion

v2.2.2

Choose a tag to compare

@freezy freezy released this 20 Apr 22:15

We've moved from somewhat native Serum to libserum. That's the main change, plus some driver updates:

  • Updated libserum to v1.6.2
  • Updated ZeDMD driver to v0.7.2.
  • Fixed a bug in how to render alpha-numeric numbers on DMDs (thanks @toxieainc)

v2.2.1

Choose a tag to compare

@freezy freezy released this 21 Sep 20:08

New

  • Be more liberal with colorization file names: File name doesn't matter, just pick the most recent one.
  • Dump files can now be played (and colored) with the --file command in dmdext.exe

Fixed

  • RGB24 support for browser stream (thanks @Westworld)
  • Don't even try to initialize plugin if no path is set
  • Colorization bug due to missing padding
  • Colorization bug due to race conditions
  • Rendering bug in ZeDMD
  • Upscaled frames through browser stream.
  • Crash when getting weird bit planes
  • Crash when altcolor folder doesn't exist.
  • Crash on duplicated hashes in palette (fixes #400)
  • Crash with some colorization (fixes #405)
  • Crash when rendering bitmaps

v2.2.0

Choose a tag to compare

@freezy freezy released this 14 Aug 22:59

For full changelog, see BETA1 and BETA2, which are included in this release.

Below is only what has changed since BETA2.

Added

  • Internal PAC support

Fixed

  • Crash when colorizing without VNI
  • Crash with PinDMD3
  • The --quit parameter is now working properly (#383)
  • Make binary smaller by only including platform-specific dependencies
  • Various bugs when de-duping frames
  • Pass-through in plugin
  • Frame format and frequency for Pinup Output
  • Bug that would stop sending frames for single destinations

v2.2.0-BETA2

v2.2.0-BETA2 Pre-release
Pre-release

Choose a tag to compare

@freezy freezy released this 27 Jun 22:04

The second beta of 2.2.0 is considered feature-complete. Remaining changes will be focused on bug fixing.

New

  • Added Serum's color rotation support to all RGB devices.
  • Added a new destination that allows dumping frames to disk to be loaded into the colorization editors
  • About page, when you right-click on the virtual DMD.

Fixes

  • Crash when PinUP was active
  • Crash for some Pinball FX LCD games
  • Height of DMD style settings dialog is now dynamic and shouldn't be cut off anymore.
  • Colorization plugin now gets frames at 60Hz again
  • Native VNI colorizer properly supports HD frames
  • Properly pass events to PinUP

Updates

  • Update Serum to latest version

Refactoring

  • Merge VNI colorizer classes and make it support both input formats
  • Remove unused palette index
  • Send colorization events through a generic interface

v2.2.0-BETA1

v2.2.0-BETA1 Pre-release
Pre-release

Choose a tag to compare

@freezy freezy released this 12 Jun 20:48

This is the first beta of v2.2.0. Internally, this is a major code update with over 10k lines of code changes, so I'd prefer to test this thoroughly before making it final.

The main feature of v2.2.0 is a plugin system that will allow third-party libraries to do frame colorizations. It's based on #347, but heavily refactored. Note that there is no plugin publicly available yet, so this beta should be focused on regression testing. Many thanks already to those who participate and report bugs!

The changes below are quite technical and describe how certain aspects of dmdext have changed.

New

  • Support for a plugin system for colorizations
  • When using --use-ini in dmdext.exe, it looks at DMDDEVICE_CONFIG is no value is provided.
  • Add warning to custom dialog when tint is modified in a colored game where it cannot be applied.

Changes

  • The way frames are passed through the render graph has changed. There is a more detailed description in #239, but the gist of it is that we now always pass frame objects instead of incoherent data objects. The frame objects contain their own business logic.
  • Up-scaling is done uniformly done through the render graph. Frame dimensions and frame data always match, and it's up to the render graph to up-scale if the setting is enabled and the destinations support it.
  • Frames are de-duped, meaning only frames that differ from the previous frame are processed. This leads to a massive improvement of garbage collection and thus, less micro stutter.
  • Converters can now be re-used, meaning we don't need to create separate converters for separate input frame formats anymore.
  • The render graph is now unit tested! This means we can more easily reproduce bugs, test assumptions, see code coverage, and generally debug much quicker.
  • ColoredFrame now extends DmdFrame and uses the same data structure.
  • Removed scaletohd in favor of scalermode. If you keep scaletohd in your configuration, it will work as before.

Bugfixes

  • Frankenstein now works properly in TPA (thanks @lucky01)
  • Bug when rendering Pinball FX's high-res DMDs through RGB24.
  • Fix Police Force and Riverboat Gambler.

Todo before final release

  • Add configurable ticker for converters
  • Test (and probably fix) Pinup

v2.1.2

Choose a tag to compare

@freezy freezy released this 19 May 21:12

Hotfix release of v2.1.1 that doesn't crash after segment display games. Sorry folks!