Commit Graph
32 Commits
Author SHA1 Message Date
libretroadmin d56b453891 Replace zlib, zstd, libchdr, libzip and libpng with libretro-common
Deflate, zlib and gzip streams go through rinflate and rdeflate, zstd
through rzstd, CHD images through rchd, zip archives through
rzip_archive and PNG through rpng. The bundled libraries, their build
glue and the system-library options are gone; adler32 and uncompress
keep zlib's ABI for the prebuilt FFmpeg archives that still call them.
libretro-common is one CMake library that the core, the headless tool
and the unit tests all link.

The reads take shorter paths on the way. CHD decodes straight from the
loader's reads and a range of blocks at a time, and a file read at any
alignment decodes into place; CSO keeps one inflate stream instead of
one per block; a plain ISO serves a file read with one read of its exact
bytes; a stored zip member is read in place and a deflated one through
restart points rather than a copy of the whole image in memory; zip
members decode into the caller's buffer; sequential reads through the
frontend's VFS skip the seek, which also keeps its buffering.

libretro/test reads one image as ISO, CSO, CHD and zip through the block
devices, boots each, and checks the codecs against Python-made vectors;
a CI job runs it.
2026-10-08 14:14:38 +02:00
Henrik Rydgård 68a8ba856f Warning fix, delete unused code 2026-01-24 10:43:48 +01:00
刘皓 5716cbd41d Use the libretro VFS interface in libretro builds 2026-01-01 00:24:01 -05:00
Henrik Rydgård d1f6da81cb Add stb_rect_pack library, use it to pack our atlases way faster 2025-11-15 15:26:06 +01:00
Henrik Rydgård 915a88df60 AtlasGen: Separate pack and resolve steps 2025-11-15 15:26:06 +01:00
Henrik Rydgård 55d53bd29a Handle devices with really extreme DPIs. Fixes #21001
I thought I did this already but apparently not, or it got lost in a
branch.
2025-11-15 15:26:06 +01:00
Henrik Rydgård 6d1973edfb Add banners on the top of settings pages, if editing game-specific settings show the icon. 2025-11-09 08:51:41 +01:00
Henrik Rydgård 56d3dae334 Avoid regenerating the UI Atlas if unnecessary (faster resize) 2025-11-06 23:44:55 +01:00
Henrik Rydgård e37c0cbef3 Introduce SimpleBaseDialogScreen, TabbedBaseDialogScreen's simpler cousin 2025-10-29 08:39:59 +01:00
Henrik Rydgård 2bc2d9c6f9 Minor UIAtlas code cleanup 2025-10-21 14:49:55 +02:00
Henrik Rydgård 3ae0057285 UIAtlas: Fix bug when adding 1px border to images (was a no-op by accident) 2025-10-21 11:08:53 +02:00
Henrik Rydgård e5f52854d8 Atlas SVG: Add 1px transparent border to images without shadows, to ensure consistent filtering 2025-10-16 16:45:59 +02:00
Henrik Rydgård 3736702f93 Use the correct blending operator when compositing the drop shadow 2025-10-16 11:07:05 +02:00
Henrik Rydgård c08e48bf82 Only shadow the UI images that are used for line-art in-game buttons. 2025-10-16 11:07:05 +02:00
Henrik Rydgård f0b5209908 Convert all UI atlas images to premultiplied alpha format 2025-10-16 11:07:05 +02:00
Henrik Rydgård 1efd0b95b8 Improve logging of UI atlas generation, don't generate debug png (oops) 2025-09-23 13:40:39 -06:00
Henrik Rydgård 10b0d94940 Remove some redundant code, minor optimization 2025-09-23 11:10:46 -06:00
Henrik Rydgård 27ed337d99 Move more pngs into the images.svg file 2025-09-22 15:24:10 -06:00
Henrik Rydgård 0bb70de3f0 Correct the drop shadow 2025-09-19 11:23:48 -06:00
Henrik Rydgård e03de7b9da Add some quick and dirty drop shadow code. Now the generated images look good! 2025-09-19 10:57:29 -06:00
Henrik Rydgård 74874bb81e Test a multi-shape image 2025-09-19 10:31:51 -06:00
Henrik Rydgård ca2a7c93a0 Make ToAtlasImage a global function instead of a method on ImageDesc 2025-09-18 11:03:50 -06:00
Henrik Rydgård 95703d2d9c Delete "C++ table" output from atlastool 2025-09-18 10:58:27 -06:00
Henrik Rydgård 641fa40d82 Runtime atlas gen: Reorganize, remove global_id 2025-09-17 10:46:08 -06:00
Henrik Rydgård 52f2475353 Remove the LoadImage method (the two users have quite different needs) 2025-09-17 10:37:42 -06:00
Henrik Rydgård 0298536efa Separate images from data in bucketer 2025-09-17 10:28:08 -06:00
Henrik Rydgård d2512817bd checkpoint 2025-09-17 10:10:59 -06:00
Henrik Rydgård 81819642d8 Minor cleanups 2025-09-17 10:01:00 -06:00
Henrik Rydgård 82cf6d7c17 AtlasGen: Remove Effect support 2025-09-17 09:49:54 -06:00
Henrik Rydgård 52c4c31508 Runtime atlas generation 2025-09-17 09:49:54 -06:00
Henrik Rydgård 947ddf865f Extract some duplicated code into a pngSave function 2025-09-15 11:46:54 -06:00
Henrik Rydgård f856beb157 Move a lot of the atlas logic to Common/Render/AtlasGen.cpp/h, code
cleanup
2025-09-12 12:17:11 -06:00