16 Commits
Author SHA1 Message Date
LibretroAdmin 409cbff6e9 remove functions nothing calls
The linker was asked which functions of the core no code path reaches
(-ffunction-sections with --gc-sections --print-gc-sections), and each
one it named was then looked up by name across the whole source,
every platform's code and the tools included. These have no caller
anywhere:

  MemWrite32                         hw/pvr/pvr_mem.cpp
  pvr_ReadReg                        hw/pvr/pvr_regs.cpp
  rend_framePending                  hw/pvr/ta_ctx.cpp
  rend_init, rend_resize             hw/pvr/Renderer_if.cpp
  emit_WriteCodeCache                hw/sh4/dyna/driver.cpp
  bm_WriteBlockMap                   hw/sh4/dyna/blockmanager.cpp
  dec_Un_rNrN, dec_Un_frNfrM, dec_rz hw/sh4/sh4_opcode_list.cpp
  cpu_iWarn                          hw/sh4/interpr/sh4_opcodes.cpp
  get_nvmem_data                     hw/holly/sb_mem.cpp
  aica_Term                          hw/aica/aica_if.cpp
  reios_term                         reios/reios.cpp
  cryptoReset                        hw/naomi/decrypt.cpp
  printtoc                           imgread/common.cpp
  dc_start                           nullDC.cpp
  shutdown_thread_pool               rend/TexCache.cpp
  gl_DebugOutput                     rend/gl4/gles.cpp
  libPvr_GetRenderTarget,
  libPvr_GetRenderSurface            libretro/libretro.cpp
  VArray2::LockRegion                libretro/common.cpp
  LogManager::SetEnable              log/LogManagerLibretro.cpp
  set_user_data_dir,
  add_system_config_dir,
  add_system_data_dir                stdclass.cpp, with the three
                                     variables only they wrote

The two *_Term functions were empty. cryptoReset was not: but the
cartridge decryption it would have cleared starts itself afresh
whenever a key or an address is set.

Left alone, though the linker named them on x86-64: what the ARM,
ARM64 and x86 recompilers and the cached interpreter call (rdv_*,
emit_Write32, emit_SetBaseAddr, bm_GetStaleBlock, the block reference
counting, _vmem_ReadMem8SX32/16SX32, shil_opcode_name), cpu_iNimp,
which a build without an MMU calls, mmu_QACR_SQ, which is called but
inlined so that only its separate copy goes unused, and
archive_num_entries, which tools/archive uses.

libARM_Term, also empty and never called, stays for now: its file has
CRLF line endings, and a patch that touches it does not go through a
plain git am.
2026-10-06 14:52:51 +02:00
twinaphex cb3bd71cc5 Backport https://github.com/flyinghead/flycast/commit/e99aac357567302e1d1daf4b59ec8e4139c879da#diff-7194c04007dd96b8c496118886760725f8eb7b8bda6916d63bf6e3ea967e44a7 2021-04-12 02:32:26 +02:00
Flyinghead 1d40e23654 get rid of wchar 2020-06-02 16:31:56 +02:00
jdgleaver 3575cf8679 Add optional 'per game' VMU save files 2019-05-30 17:10:34 +01:00
twinaphex f0eed64854 Cleanups 2016-10-11 01:15:41 +02:00
twinaphex 887d48b446 Don't need file_exists 2015-12-22 08:04:43 +01:00
twinaphex 084e0073bc remove unused get_writable_config_path 2015-12-22 07:59:04 +01:00
twinaphex 3f35380a7b get rid of hardcoded slash in data paths - would not work for
Windows
2015-12-22 07:43:42 +01:00
twinaphex cd146a91cf Implement get_writable_data_path 2015-12-16 01:51:22 +01:00
twinaphex 1a5f620b77 Remove some more files 2015-10-17 23:28:09 +02:00
twinaphex 40fc5b7e99 Use _MSC_FIRST 2015-10-13 03:56:54 +02:00
twinaphex e1bab7a6fc Get rid of more unnecessary stuff 2015-10-13 00:15:44 +02:00
Jan Holthuis 4267d51f90 stdclass: Make path getter function names more verbose 2015-09-02 15:49:00 +02:00
Jan Holthuis 4bd5154c9f stdclass: Use access to check if file is readable 2015-09-02 15:49:00 +02:00
Jan Holthuis b6d0cddcaa stdclass: Add support for separate config/data dirs and system wide dirs
This adds support for separate config and data dirs.

On Linux, these will be compliant XDG Basedir Specification, i.e.
XDG_CONFIG_HOME and XDG_CONFIG_DIRS (or XDG_DATA_HOME and XDG_DATA_DIRS
respectively). On all other platforms, there currently just set to the
homedir path (so no previous behaviour has been changed).

If reicast wants to read and write a data file, it just calls
get_data_path("/samplefile.txt"). If it does not need to write to
that file, it just uses get_data_path("/samplefile.txt", false). That
way, we can also use system-wide dirs (like /usr/share/reicast on
linux), that the user usually doesn't have write access to.

The same applies for config file, where you use get_config_path(args)
respectively.
2015-09-02 15:48:53 +02:00
Stefanos Kornilios Mitsis Poiitidis 7ef9de3cae Moving code around, cleanups 2013-12-28 22:20:08 +01:00