EmuCR Feeds
Email Us

EmuCR: Goliath Goliath v0.41.0 Preview is released. Goliath is a C++20 and Qt 6 desktop frontend for Neo Geo MVS/AES and Neo Geo CD. It organizes the game library and launches media through the Jolly Good Reference Frontend (JGRF) and the Geolith core. Goliath is only a frontend. Emulation is provided by JGRF, JG, and Geolith.

Main features:
One library for Neo Geo MVS/AES .neo files and Neo Geo CD .cue/.chd images.
Parent and variant grouping for cartridge games.
Recursive Neo Geo CD discovery.
Optional local verification against MAME and Redump metadata.
Optional command.dat companion window for matching MAME game IDs. It is tied to the launched JGRF session and requires no JGRF modification.
Search, persistent exact-media Favorites and 1–5-star ratings, name/year/ rating/playtime sorting, compact personal filters, visible-only Random, snapshots, and history.
Per-game BIOS, video, input, and core settings without changing global configuration.
BIOS verification and safe JGRF BIOS preparation.
Save-data backup, validation, restore, deletion, and folder access.
Exact-media playtime, session count, and last-played tracking, including background observation after the main window is closed.
Selected-game performance benchmark and one-shot WAV export.
Frontend and JGRF diagnostics with guarded log controls.
SDL3 controller mapping and asynchronous audio-device discovery.
Twelve contrast-checked light and dark themes.

Goliath changelog:
Goliath 0.41.0 is a feature and architecture release for the Qt frontend. It
adds safer diagnostics, verification and configuration workflows, while
reorganizing the existing frontend into smaller responsibility-focused units
without changing its established role: Goliath remains a frontend for JGRF,
JG and Geolith.
Highlights
Added a persistent, themed Alerts center for update, rescan,
configuration, launch, BIOS and integrity problems. It includes unread
state, stable-event deduplication, dismissal, bounded history, direct
follow-up actions and compact previews for verification problems, without
adding routine-success noise.
Added reusable controller profiles, clearer input-conflict reporting,
inherited/custom mapping indicators, an Overrides only view and
per-control reset actions for global and per-game input editing.
Added portable import/export for exact-media per-game settings with a
versioned, path-free and allowlisted format, system-family validation and an
explicit review step before saving.
Added on-demand exact-media integrity verification and a compact before/after
rescan comparison for added, removed, updated and unchanged media, including
verification-problem summaries.
Rebuilt BIOS verification around compact capability cards and detailed
per-archive/member checks, including required and optional Neo Geo CD modes.
Added detailed launch-block and early-startup-failure explanations, together
with an exportable privacy-redacted diagnostic report.
Restructured the existing frontend implementation into focused UI, library,
details, state, action, interaction, runtime, dialog, theme, update and data
units. Reusable builders, presentation helpers, stable item roles and shared
widgets replace the former large implementation units and make future work
easier to test and maintain.
Updates and notifications
Manual release checks and opt-in Daily or Weekly automatic checks use bounded
trusted GitHub release data and never download or install updates.
The former modal automatic-update interruption is replaced by a discreet,
persistent indicator below About. Selecting it opens themed release
details and the trusted GitHub download link; installing that version expires
the cached alert.
The Alerts toolbar entry records only conditions that may need attention:
newer releases, rescans with changes or verification issues, rescan failures,
configuration or launch blockers, missing BIOS material and integrity
failures.
Notification history is stored atomically, capped at 50 entries and supports
mark-read, dismiss and clear-history operations. Repeated identical events
reuse one card and preserve read state until their message changes.
Library, rescans and integrity
A new Verify game integrity... action checks the currently selected exact
parent, variant/hack, CUE or CHD outside the GUI thread in a themed,
cancelable progress dialog.
Cartridge images use CRC-32, CUE descriptors and physical tracks use SHA-1,
and CHD images use the internal combined SHA-1 stored in CHD v4/v5 headers.
Integrity results show current and expected size/hash values. Limited checks
remain truthful when the last scan has no trusted catalog digest, and an
on-demand check never rewrites games.json or its verification badge.
Rescan results now compare validated exact-media snapshots and report Added,
Removed, Updated and Unchanged totals, with affected-title details and
separate verification-problem summaries.
Parent/variant grouping remains stable when only the canonical parent media
is removed, and displayed MVS/AES totals count present parent and variant
files consistently.
Per-system selection and list viewport restoration are preserved, including
an empty Neo Geo CD view. Splitter resizing now uses a lightweight guide and
applies the expensive visual update only on release.
Launch, failures and diagnostics
Normal Launch, Performance Benchmark and one-shot WAV export now share the
same preflight policy for supported systems/media, regular readable files,
JGRF resolution, CHD capability and safe profile/output configuration.
Launch blockers identify the exact selected path and effective system mode.
Early startup failures report the exit code and a bounded tail of new
jollygood.log output. Known Windows loader codes receive a direct
DLL/architecture explanation.
An MVS startup failure can offer an exact-media AES compatibility suggestion,
but Goliath never changes global or per-game configuration automatically.
The new diagnostic report collects bounded, allowlisted Goliath, OS, Qt,
JGRF, Geolith, renderer, configuration, runtime-file, BIOS and log
information outside the GUI thread. Paths, credential assignments and URL
user information are redacted before a transactional save.
BIOS verification
The BIOS verifier now presents one compact themed capability card per known
archive, with clear Ready, missing, optional and invalid states.
Selecting a card opens only its member checks; full copyable technical details
remain available separately.
Required and optional Neo Geo CD capabilities are distinguished so a missing
optional CD Universe BIOS member disables only that mode rather than another
usable mode in the same archive.
Input and per-game settings
Duplicate physical bindings are detected in global and per-game editors and
shown as non-blocking warnings, preserving intentional shared mappings.
Per-game mappings clearly distinguish inherited and exact-media values.
Overrides only, single-control reset and profile-level reset operations
make targeted editing easier.
Controller profiles preserve a complete mapping under a reusable name and
can be applied globally or loaded into one exact game's editor for review.
Incompatible layouts remain manageable but cannot be applied accidentally.
Controller-profile storage is atomic, and unsafe or unknown bindings fail
closed when loaded.
Per-game setting exports omit ROM, CUE, CHD and local-folder paths. Imports
are size-bounded, reject incompatible cartridge/CD targets and unknown or
unsafe fields, display a before/after review and never save automatically.
Sessions and interface behavior
Exact-media details now show Last Started, Last Ended and
Last Session alongside total playtime and session count.
Closing the visible Goliath window no longer truncates a tracked session:
the windowless observer follows all active JGRF processes, saves validated
sessions when they end and then exits.
Library presentation, controls, details, dialogs, themes and toolbar
construction now use extracted helpers and reusable widgets while retaining
the validated List, Grid, Big Grid Icons and Classic View behavior.
Per-game input identifiers and stored bindings remain std::string across
the model boundary and convert to QString only for visible UI text.
Architecture, safety and validation
MainWindow remains one class, but its implementation is split into narrow
translation units for construction, library behavior, controls, details,
state, actions, interaction, dialogs, runtime, events, updates, themes and
data. The retired main_window_library.cpp monolith was removed.
Testable library-view and details-presentation helpers, stable item roles,
shared panel widgets and verification dialogs were extracted from UI code.
Unicode/Qt/native filesystem boundaries were hardened while logical paths
remain stable in configuration, JSON, caches and the UI.
Multi-file configuration changes use recoverable transactions. Atomic saves
and truthful failure reporting prevent the UI from claiming changes that did
not reach disk.
CMake gained opt-in strict conversion/sign/shadow/format warnings, warnings
as errors and AddressSanitizer/UndefinedBehaviorSanitizer validation.
Architecture, runtime, build, deployment, verification and release-compliance
documentation was updated; STRUCTURA.md was renamed to STRUCTURE.md.
Windows MSYS2 runtime dependency pins were refreshed after upstream package
updates.
Validation
Complete Windows regression suite: 4,770 assertions in 323 test cases.
GitHub Actions Windows UCRT64 and Linux x86_64 jobs passed for commit
de7a31629e2b55351a2c1d345529138570bc254d.
The Windows artifact was tested from a clean standalone directory without
borrowing DLLs from MSYS2: startup, version 0.41.0, build identity,
Settings, Alerts and normal shutdown passed.

Download: Goliath v0.41.0 Preview
Source: Here



Random Related Topic Refresh Related Topic

Random Related Topic Loading...

0 Comments

Post a Comment

Can't post a comment? Try This!