Skip to content

Releases: DirtBagXon/hypseus-singe

hypseus-singe v2.11.3

01 Oct 13:25
Compare
Choose a tag to compare

v2.11.3 This release changelog:

   Note: There is now a dedicated Bezels repo here: https://github.com/gojidan/hypseus-singe-bezels

  • Implement multiple Game controller support [See gamepad hypinput.ini example]
  • Joystick API HAT is now attributed to a single Joystick [See also -openhat]
  • Compile time method to separate Daphne and Singe game types in ES.
  • Increased Scoreboard bezel positioning to cater for DQHD+
  • Replaced some legacy Daphne overlay video:: appendages.
  • zlua enhancements. Support for alternate/multi game zip ROM [See -usealt]
  • Finally addressed the early SDL2 getPixel workaround/kludge. [Widge]
  • -screen argument now allows placement in a multi screen setup.
  • -bezeldir specify an absolute path to the 'bezels' folder.
  • Peripheral overlay improvements in gpworld and badlands
  • Thayer's "timer" scoreboard alpha level simplified.
  • Added a Window icon for taskbar enhancement.
  • YUV palette transparency functions improved.
  • Fix -vertical_stretch YUV stretching. [See cliff]
  • Added -horizontal_stretch YUV stretching.
  • Reduce VLDP flicker in aceeuro transition screens.
  • Fix obscure Thayer's positional toolbox bug.
  • Fix -haptic 0 argument placement/behaviour.
  • Fix rewriteStatus() API call in zipped ROM's.
  • Added Singe API calls for volume, scale, focus/zoom and multiple Game Controllers.
  • Example bash loader scripts for actionmax and captainpower running -usealt.
  • Update hypjsch to v1.21
  • New logo

Comments:

  • Users with multiple Joysticks attached using HAT controls, may need to make config adjustments.
  • Game Controller configurations should be backwards compatible, use new template for updates.
  • The zlua -usealt argument removes the need for ES symlinking, in games such as ActionMax.
  • Added -singedir to force absolute singe/ folder path location in ES installations.

hypseus-singe v2.11.2

01 Apr 15:21
Compare
Choose a tag to compare

v2.11.2 This release changelog:

  • [Issues] Random bezel loading (MSWindows) issue resolved.
  • Activating -bezel now enables -fullscreen automatically.
  • Thayer's Quest keyboard bezel is now mouse interactive: -tqkeys
  • Added an authentic 'backlit' Thayer's Quest keyboard bezel scan.
  • Atari/Sidam European ROMS are now supported. Requires EU PAL laserdisc content.
  • GPWorld offers authentic steering strengths and includes autocenter via -preset
  • MacOS CMake linking issues have been resolved. In both master and libmpeg2 branches.
  • Added SDL WINDOW_ALWAYS_ON_TOP argument: -alwaysontop. (Addresses legacy issue in BigBox)
  • Added Game Controller Rumble haptics and additional Singe API call: controllerDoRumble()
  • LUA os.clock() calls have been aligned for Linux/Mac - corrects game timings in these OS with full overlays.
  • Singe "zlua" roms - Zipped LUA ROM files are now supported.
  • Singe games installations can now align with Daphne, using the "rom", "ram" and "vldp" folders.
    • The singe sub-folder is no longer required "on-disk" with zipped LUA games.
    • The loading system will render the -retropath argument ineffectual on zipped ROM.
  • Added Singe 2 Unload() API calls. These will help address a memory leak in many existing game LUA.
  • Aligned some Singe 2.10 API calls for sprite resizing, rotating and smoothing. Using SDL2_gfx
  • Animated gif support for Singe sprites is enabled if compiled against SDL2_image v2.6.0+ (IMG_Animation)
  • Additional hypseus API calls for animated PNG sprite sheets. Bypasses IMG_Animation requirement.
  • Fixes for forced aspect ratio arguments within new viewport: ForceAspectRatio, IgnoreAspectRatio
  • A legacy Joystick/Game Controller Singe PAUSE alignment issue is fixed.
  • MSWindows should now correctly predict parsing percentage/time on large 4Gb+ files.
  • Added esp32 support on USB scoreboard - flip serial RTS to default off. (Prohibits forcing a programming mode.)
  • Scanlines on scaled, positioned and rotated video display fixed.
  • Backslash \ allowed, in MSWindows, for -bezel path definitions
  • Sub-folders now allowed in -keymapfile path definitions
  • Splashscreen implemented reporting the running version.
  • luars232 serial support added (Align with Singe 2) Use on Arduino scoreboards?
  • AC_PROG_GCC_TRADITIONAL - obsolete MACRO removed from libmpeg2
  • GitHub workflow will produce a SteamDeck "AppImage".
  • Digital Leisure games overlay scoreboard updates.
  • Rotation refactoring.

Comments:

  • libzip is now required for compilation.
  • Added Alt positioning Toolkit using Keypad.
  • The Windows parsing % fix may cause a regeneration of .dat files.
  • Trialing NSIS installer, these can trigger false positive AV warnings.. (Alt: zip)
  • "Double intro" shuck on sae and dle21 with -fastboot
  • -alwaysontop enable WINDOW_ALWAYS_ON_TOP for main game window.
  • GPWorld -preset 1 for spring-loaded style steering wheel: (Gamepads)
  • [Daphne] Roadblaster has "random" start scenes disabled in default -bank settings.
  • Thayers has -preset 1 argument for timer/scoreboard switch.
  • -zlua for zipped LUA Singe files. -script will also work for backwards compatibility.
  • Singe-enable_trace attempts to print lua_Debug on errors.

Argument change overview:

  • Obsolete: Arguments -set_overlay and -oversize_overlay are no longer valid in Singe.
  • Replaced: -auxbezel_scale and -auxbezel_position replace annun variants.
    -annunbezel_position => -auxbezel_position
    -annunbezel_alpha    => -auxbezel_alpha
    -annunbezel_scale    => -auxbezel_scale

Check the log for argument errors.

hypseus-singe v2.11.1

05 Aug 21:12
Compare
Choose a tag to compare

v2.11.1 This release changelog:

Note: The release contains new files required within the pics and sound folders.
If upgrading, ensure the new files are copied to your existing folder setup.

Note (default setting change): SDL linear scaling filter is now off by default with the new overlay system. This was commonly disabled by many users, the setting can give better results on certain overlays than others. User discretion advised. The previous display behaviour can be restored with -linear_scale

Note: The release rewrites the logical viewport display functionality, allowing game window and bezel placement anywhere on the visable area. This gives better support for vertically orientated displays with full cabinet layout. It also provides several other benefits.

Note: This release removes the legacy Singe overlay functions which will mean some early ported Singe games will require updated LUA and sprites from the partner data repo. You can download the full data repo via the releases page.

If you experience Singe overlay alignment issues with this release, download the latest data from the above repo.

  • Full logical viewport placement of the game window is now implemeted.
  • Stern: Goal to Go (1983) emulation is now supported via ROM gtg.
  • GPWorld has playability improvements including [non authentic] samples.
  • Bilinear scaling is now off by default. Re-enable with -linear_scale
  • Singe legacy overlay functions have been removed from codebase: (See notes).
  • -shiftx and -shifty can now use the whole logical viewport.
  • Badlands 'Shoot Lamp' notification has changed from txt to sprite.
  • Daphne overlay vertical_shift values are now observed.
  • Singe 2 Framework folder no longer needs .daphne extention when used with -retropath.
  • Scanlines with incremental shunt + value displayed, when using Alt-Backspace.
  • screen number is displayed when using -scorepanel and KEY_TILT
  • -fvalue Singe argument added for game dev tools: Frameviewer
  • Usage information will be displayed if hypseus is run without arguments.
  • F4 is set, by default, for Singe 2 'Save/Load' config alignment.
  • 8bit overlay switching should be fixed...
  • 'Us vs Them' attract mode fixed.
  • Various other overlay improvements.

Arguments change overview:

  • -linear_scale - restore the linear filter on scaling (previous default).
  • -scale_shift[x|y] renamed to -shift[x|y] and now have extended value outside -scalefactor
  • -vertical_screen flips calculations for usage on portrait orientated logical viewports.
  • -set_overlay has now been removed from Singe arguments.
  • gtg game specific -compact argument removes TMS 256 to 320 pixel stretching. See also -linear_scale
  • -annunlamps alternate staggered conversion style lamp layout - ace annunciator bezel.
  • -fvalue <float> can be used to pass float values to LUA for game debug.

Video resolutions: In the new viewport, MPEG resolutions are absolute. SDL will no longer use RenderSetLogicalSize() to 'fit' to screen. Video resolutions larger than those capable by the screen may have areas positioned outside the viewable area. To combat this issue, large video resolutions can be resized via -x and -y on displays with resolution issues.

The Singe reworking should not require any re-encoding, or re-aquirement, of video/audio content. Only the .singe ( LUA) and other periphral game data requires updating. This is analagous to ROM data upgrades. If you have updated game data from the repo recently, no further changes should be required.

If you have deployed Singe games that use the Framework folder and are using the -retropath argument: You will need to remove the .daphne extension from the Framework.daphne folder. Simply calling it Framework, no other changes should be required.

 
 Vertical Bezels demonstrating placement in the new viewport:
Annunicator

hypseus-singe v2.10.4

05 May 15:09
Compare
Choose a tag to compare

v2.10.4 This release changelog:

Note: This release contains changes that may alter existing gamepad configurations.

Note: MPEG .dat files will be updated, on all games, with this update.

Note: The release contains new files required within the pics folder.
If upgrading, ensure the new files are copied to your existing folder setup.

  • DAT_VERSION 3 .dat files. 4Gb+ UHD M2V files are now supported
  • Singe 2 dynamic 'overlay resolution switching' is now supported.
  • Singe API driven Active Scoreboards - Game LUA requires simple changes.
  • Singe Scoreboard API can use the hardware Arduino USB Scoreboard.
  • .dat file (re)parsing video blanking bug, is now fixed.
  • Scaled video window is now positionable: -scale_shiftx and -scale_shifty
  • More accurate (default) annunciator 'rank' graphics (Updates in pics folder).
  • Added 'dedicated cabinet' style annunciator bezel: -dedannunbezel [NeoKarnage]
  • Score and annunciator bezels now have transparency level adjustments.
  • The independent Scorepanel can be initialized on a selectable secondary screen.
  • Game Controller trigger bug is fixed and HAT behaviour has changed [walknight]
  • Overlay scoreboard can be disabled using null scoreboard in lair and ace: -noscoreboard

Argument change overview:

  • -scorescreen - Choose secondary screen for independent Score Panel display.
  • -set_overlay is no longer supported on updated games.
  • New bezel features are documented in: bezels.txt

Gamepad HAT(D-PAD) U-D-L-R behaviour has changed - Now provides 4 extra buttons for hypinput.ini

KEY_UP    = SDLK_UP    0  BUTTON_DPAD_UP    AXIS_LEFT_UP
KEY_DOWN  = SDLK_DOWN  0  BUTTON_DPAD_DOWN  AXIS_LEFT_DOWN
KEY_LEFT  = SDLK_LEFT  0  BUTTON_DPAD_LEFT  AXIS_LEFT_LEFT
KEY_RIGHT = SDLK_RIGHT 0  BUTTON_DPAD_RIGHT AXIS_LEFT_RIGHT

hypseus-singe v2.10.3

04 Apr 19:10
Compare
Choose a tag to compare

v2.10.3 This release changelog:

Note: This release contains new files required within the pics folder.
If upgrading, ensure the new files are copied to your existing folder setup.

  • -scalefactor now enables fullscreen resize of video window.
  • -rotate reworking, now all video sizes and overlays are enabled.
  • Faster booting for enhanced ROMS: dle21 and sae, via -fastboot
  • A number of memory leaks have been addressed [walknight]
  • draw_LDP1450_overlay() for lair2 reworked for SBC efficiency.
  • Implement a scaleable active bezel scoreboard for lair/ace/tq: -scorebezel
  • Implement a scaleable active bezel annunciator for ace: -annunbezel **
  • Implement a keyboard bezel for Thayer's Quest: -tq_keyboard
  • -scorepanel window can now use multiple displays. Switch with KEY_TILT *
  • Window Manager check to avoid segfault with -scorepanel on SBC platforms.

New bezel related arguments:

  • -annunbezel
  • -annunbezel_scale 1-25
  • -annunbezel_position <x> <y>
  • -scorebezel
  • -scorebezel_alpha for background transparency
  • -scorebezel_scale 1-25
  • -scorebezel_position <x> <y> alias for -scorepanel_position
  • -tq_keyboard
  • -scalefactor 50-100 %

Evolved arguments:

  • -rotate 1-359 - aspect ratios may be ignored

 
*  -scorepanel should now be used in multiple screen, or windowed display, scenarios.
** -annunbezel enabled:

Annunicator

hypseus-singe v2.10.2

01 Feb 10:13
Compare
Choose a tag to compare

v2.10.2 This release changelog:

  • Arduino based USB hardware LED scoreboard/annunciator for lair, ace and tq
  • See dedicated repo - Uses common (modern) 7-segment LED modules.
  • Aspect ratio header is now observed from MPEG M2V files*
  • Integrated Bezel support, using png, in new bezels sub-folder**
  • ManyMouse now supports differentiated mice input. Two player Gun Games...
  • Software Scoreboard (now scorepanel) altered for better bezel integration
  • Fixed the ability to take screenshots in fullscreen render (with bezels).
  • Added extended Singe API calls (getRatio).
  • MacOS startup error reporting improved
  • -8bit_overlay placement addressed
  • Allow - and _ in -keymapfile filenames

Evolved arguments:

  • -software_scoreboard renamed to -scorepanel

New arguments added:

  • -usbscoreboard <args> - Enable USB serial support for Arduino scoreboard
  • -bezel <file.png> - Specify a .png file to use as bezel
  • -ignore_aspect_ratio - Ignore MPEG aspect ratio header (restore previous behaviour)*
  • -scorepanel_position <x> <y> - Position Software Scoreboard

** See #bezels channel in Discord

 Scoreboard

hypseus-singe v2.10.1

01 Oct 13:06
Compare
Choose a tag to compare

v2.10.1 This release changelog:

  • SDL_GameController (hotplug) support *
  • Implements 'gamecontrollerdb.txt'
  • 32bit (True Color) Overlays in Singe
  • 8bit sprite rendering fallback for schmaltz
  • Full resolution Overlays in Singe 2 games **
  • Optimizations in sprite blitting on the new 32bit surfaces
  • Cleanup and tidy of main video rendering functions
  • Improved Error reporting on startup

New arguments added:

  • -gamepad - enable GameController API config
  • -overlay_set [half|full|oversize] (Singe)
  • -8bit_overlay (Singe)

 
* The Joystick API will remain default and offer more complex configurations
** Full resolution overlay:

hypseus-singe v2.8.3

30 Aug 09:07
Compare
Choose a tag to compare

v2.8.3 This release changelog:

  • -vertical_stretch reimplemented for cliff overlay. See #78 *
  • -blank_blue enables YUV#1DEB6B (blue) blanking screens.**
  • -manymouse is now a global argument (only Singe will currently enable).
  • Singe 'cursor drift' bug fixed when using latest game LUA

Misc news:

  • A Discord server has been created.
  • Windows binaries linked with -subsystem,windows are available. See #81

-vertical_stretch 24 completely removes letterbox overlay in cliff.
** YUV signal loss blanking: demo and here

hypseus-singe v2.8.2

10 Mar 00:27
Compare
Choose a tag to compare

v2.8.2 This release changelog:

  • Update: Bugfix release.
  • Allow TEXTUREACCESS enumeration switching *
  • Add -nocrosshair argument for Gun Games **
  • Improve 8bit indexed color palette.

-texturestream and -texturetarget
** in-game support for singeWantsCrosshairs() required

hypseus-singe v2.8.1

10 Feb 22:02
Compare
Choose a tag to compare

v2.8.1 This release changelog:

  • Align integer type for video frames in 64bit
  • Expand Singe LUA sound controls *
  • Add -grabmouse to capture mouse in SDL Window

* Extend Singe 2 style sndHandle calls
MadDog