<feed xmlns='http://www.w3.org/2005/Atom'>
<title>eglantine-cirakg/src/yuzu/main_window.cpp, branch nx2</title>
<subtitle>Mirror of github.com/cira0100/Eglantine-public nx2, a fork of Djihads80/Eglantine.</subtitle>
<id>https://git.cirakg.xyz/eglantine-cirakg/atom?h=nx2</id>
<link rel='self' href='https://git.cirakg.xyz/eglantine-cirakg/atom?h=nx2'/>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/'/>
<updated>2026-11-03T00:23:50+00:00</updated>
<entry>
<title>nx2: improve save data handling for titles with missing NACP sizes to redirect the user to the correct save location</title>
<updated>2026-11-03T00:23:50+00:00</updated>
<author>
<name>kraibse</name>
<email>33869366+kraibse@users.noreply.github.com</email>
</author>
<published>2026-11-02T18:34:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=890dc1e6c7d8828b2d994371854692d5b28783ee'/>
<id>urn:sha1:890dc1e6c7d8828b2d994371854692d5b28783ee</id>
<content type='text'>
</content>
</entry>
<entry>
<title>qt: ask about the recommended MKW settings only when booting MKW</title>
<updated>2026-11-02T23:26:58+00:00</updated>
<author>
<name>Jonas</name>
<email>baguettegamerofficial2020@gmail.com</email>
</author>
<published>2026-11-02T22:56:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=e996661b99f4102f35e2aea596a67646afb127b0'/>
<id>urn:sha1:e996661b99f4102f35e2aea596a67646afb127b0</id>
<content type='text'>
The prompt showed at every startup whatever game was launched, and Yes
overwrote the global settings for every title. Ask on the first MKW boot
of a session instead and apply the preset to that session only.
</content>
</entry>
<entry>
<title>Merge pull request #334 from snowstormxd/codex/upstream-mkw-test</title>
<updated>2026-11-02T22:36:01+00:00</updated>
<author>
<name>Jonas</name>
<email>104419015+jojo-chaechae@users.noreply.github.com</email>
</author>
<published>2026-11-02T22:36:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=8362c44ff835d7be73d2adad9ce3e2d4467a6aeb'/>
<id>urn:sha1:8362c44ff835d7be73d2adad9ce3e2d4467a6aeb</id>
<content type='text'>
MKW performance improvements</content>
</entry>
<entry>
<title>settings: default to ScaleForce and FXAA</title>
<updated>2026-11-02T21:14:39+00:00</updated>
<author>
<name>snowstormxd</name>
<email>214507868+snowstormxd@users.noreply.github.com</email>
</author>
<published>2026-11-02T21:14:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=405adb698e5ed76b1252fec41d3cb8780d1e6a49'/>
<id>urn:sha1:405adb698e5ed76b1252fec41d3cb8780d1e6a49</id>
<content type='text'>
Include both filters in the accepted MKW preset and verify defaults and saved-preference overrides.

Assisted by Codex.
</content>
</entry>
<entry>
<title>settings: restore the recommended MKW settings prompt</title>
<updated>2026-11-02T20:51:10+00:00</updated>
<author>
<name>snowstormxd</name>
<email>214507868+snowstormxd@users.noreply.github.com</email>
</author>
<published>2026-11-02T20:51:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=b75ea7bcba60b70349274747cca04549908797bd'/>
<id>urn:sha1:b75ea7bcba60b70349274747cca04549908797bd</id>
<content type='text'>
Apply accepted settings visibly and save them, then reapply after per-game configuration. Include handheld mode.

Assisted by Codex.
</content>
</entry>
<entry>
<title>frontend: bound the wait for the emulation thread at shutdown</title>
<updated>2026-11-02T19:53:47+00:00</updated>
<author>
<name>Sssnowyyy</name>
<email>78863999+Sssnowyyy@users.noreply.github.com</email>
</author>
<published>2026-11-02T16:22:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=a3d67c14c86f57ec12787db0b8bb058ec8b5f73c'/>
<id>urn:sha1:a3d67c14c86f57ec12787db0b8bb058ec8b5f73c</id>
<content type='text'>
426f120ee8 dropped the 10 s wait and terminate() fallback when stopping
emulation, and ShutdownGame and closeEvent now wait for the emulation
thread with no limit. If the thread hangs (for example a GPU or present
deadlock), stopping a game, switching games or quitting never completes.

Keep the asynchronous teardown, but once the thread has been asked to
stop, give it 10 s and then terminate it and finish cleanup, as before.
ShutdownGame's nested event loop gets the same bound. A terminated
thread is logged as an error.

Assisted-by: Claude Sonnet 5.5 (implementation and commit message)
</content>
</entry>
<entry>
<title>qt: add a metadata dialog and a progress window to Convert to NUP</title>
<updated>2026-11-02T16:23:48+00:00</updated>
<author>
<name>kraibse</name>
<email>33869366+kraibse@users.noreply.github.com</email>
</author>
<published>2026-11-02T16:23:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=15255641e2cad1ce099819afc7308809442e47e7'/>
<id>urn:sha1:15255641e2cad1ce099819afc7308809442e47e7</id>
<content type='text'>
Convert to NUP now opens a dialog with the icon (preview, drop zone,
file picker, and a Use Detected button only when the dump has an icon),
the name, and the version (auto-detected or manual), next to the paths,
space estimate and low-storage option. The conversion runs in a window
with a full-width progress bar, percentage, speed and time remaining, and
a cancel that also covers closing the window.

Assisted-by: Claude Sonnet 5.5 (wrote the metadata dialog, icon drop zone and progress window)
</content>
</entry>
<entry>
<title>Merge remote-tracking branch 'origin/nx2' into codex/upstream-loading-hotkeys</title>
<updated>2026-11-02T15:01:57+00:00</updated>
<author>
<name>kraibse</name>
<email>33869366+kraibse@users.noreply.github.com</email>
</author>
<published>2026-11-02T15:01:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=b374709aa202d586dd09f81f3389da8d73fea0d7'/>
<id>urn:sha1:b374709aa202d586dd09f81f3389da8d73fea0d7</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Merge nx2 into nx2-experimental</title>
<updated>2026-11-02T13:43:01+00:00</updated>
<author>
<name>kraibse</name>
<email>33869366+kraibse@users.noreply.github.com</email>
</author>
<published>2026-11-02T12:50:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=c0cb3325e22756edb65c87d33ef298349ade0ad3'/>
<id>urn:sha1:c0cb3325e22756edb65c87d33ef298349ade0ad3</id>
<content type='text'>
Resolved by area:
- audio feature_support.h: nx2's native revision handling.
- fiber.cpp: ours, which also drops the unused rewind stack.
- host_memory.cpp: ours granule bitmap and HintCold, plus nx2's
  fallocate hole punching per whole dirty granule on Linux.
- texture_cache.h: nx2's old-age eviction pass, then our Collect().
- kepler_compute.cpp: shared upscale slots, then Fortune's Weave's,
  then the Kirby Air Riders scan.
- nx2_gsv.h: ours, plus nx2's GetBufferMaxResolution and graphics
  device ids (1-based).
- nvhost_ctrl_gpu.cpp: engine support flag bits 40-44.
- lower_to_maxwell.h: ours as the base, with nx2's seven lowering
  commits applied one at a time. Second texture descriptor buffers
  are read bindless in TEX, TLD.SCR (level zero) and SUST; FSEL
  keeps its operand modifiers; TXD takes any channel mask.

lower_to_maxwell.h lowers 837 Fortune's Weave and 1183 Mario Kart
World shader dumps with the same rejects as nx2 and ours (12 and 0).

Assisted-by: Claude Sonnet 5.5 (conflict analysis and drafting)
</content>
</entry>
<entry>
<title>file_sys: add a deterministic NUP packer, Convert to NUP in Qt and eden-cli --pack-nup (#271)</title>
<updated>2026-11-02T07:39:49+00:00</updated>
<author>
<name>Jonas</name>
<email>104419015+jojo-chaechae@users.noreply.github.com</email>
</author>
<published>2026-11-02T07:39:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=926e7ac6af102956b08cc053d81527ec3be855a2'/>
<id>urn:sha1:926e7ac6af102956b08cc053d81527ec3be855a2</id>
<content type='text'>
* file_sys: add a NUP packer for loose dumps

Packs a loose dump (exefs/romfs, base/, updates/&lt;version&gt;/ and
dlc/&lt;titleid&gt;/&lt;n&gt;/) into a NUP v1 container with the aligned record
layout. Every package is kept, files are deduplicated by SHA-256 and
compressed with zstd unless that does not shrink them, and files over
256 MiB are stored raw.

Output is byte-identical on every platform: compression is
single-threaded with every frame parameter set explicitly, and zstd is
always bundled so all builds use the same version.

A low-storage mode deletes each source file once its extent is synced
and journaled, and an interrupted run resumes from the journal.

Assisted-by: Claude Opus 5.5 (wrote the packer, its EdenPack-free dump detection, the aligned record layout and the deterministic zstd setup; ran the Raiders and Donkey Kong Bananza packs and boot checks)

* tests: cover the NUP packer

Round-trips a dump through NupContainer, checks standalone updates, a
bare exefs/romfs dump, low-storage resume and overwrite rejection, and
pins the hash of a packed dump so changes to the output are deliberate.

Assisted-by: Claude Opus 5.5 (wrote the tests, including the pinned output hash)

* qt: add Convert to NUP to the game list

Shown for loose dumps. Asks for confirmation with the estimated space,
offers low-storage mode, runs in the background with progress and
cancel, and resumes an interrupted low-storage conversion.

Assisted-by: Claude Opus 5.5 (wrote the Convert to NUP action and its progress and resume handling)

* cli: add --pack-nup &lt;dump&gt; [out.nup]

Assisted-by: Claude Opus 5.5 (wrote the --pack-nup option)</content>
</entry>
</feed>
