This puts the code into the binary's .text section, which is needed
for platforms without the ability to map it as RWX (WiiU). Using
GNU/AT&T syntax for the assembly here.
Will return 0 for non-file streams. I didn't want to mess around with
memory_stream (which could in theory have a truncate impl that sets
size) because there were globals and stuff and I got nervous (also
truncate might *grow* a file if the new length is longer than the old
one and then I'd have to think about realloc, etc).
<compat/posix_string.h> gets included which should redefine strtok_r
for MSVC usage but it just doesn't work and fails at linking stage, will have to figure this out
later
This fixes a warning of the `include_hidden` parameter not being used outside of `_WIN32`.
```
vfs/vfs_implementation.c:1063:30: error: unused parameter ‘include_hidden’ [-Werror=unused-parameter]
1063 | const char *name, bool include_hidden)
| ^
cc1: all warnings being treated as error
```
Extended RETROK_ values with 18 new items, commonly found on
"multimedia" keyboards.
Mapping added for SDL, X11, Wayland, dinput, winraw keymaps.
Keyboard tester function of Remote Retropad extended to cover new keys.
One fix in Android mapping for #12986
* iOS/tvOS: bundle cores as frameworks as opposed to dylibs
* iOS/tvOS: update plist to indicate controller support
* iOS/tvOS: living within the sandbox
* iOS/tvOS: import content through share sheet
* iOS/tvOS: default audio sync off due to crash on background
* iOS/tvOS: don't try altkit if there's no reason to
* iOS/tvOS: enumerate cores for appstore distribution
* Touch up the documentation for a few environment calls
* Touch up more comments
* Update docs for more environment calls
* Add doc comments for more environment calls
* Change various @returns to indicate that the environment call is available
- Some environment calls might be recognized but ignored (e.g. when fast-forwarding during netplay)
* Note some deprecated symbols
* Touch up the docs for RETRO_ENVIRONMENT_SET_MESSAGE
* Touch up the docs for RETRO_ENVIRONMENT_SET_PIXEL_FORMAT
* Add more doc comments
* (libretro) Add more doxygen documentation for the libretro API
* (libretro) Add doxygen comments for the callbacks
* Document retro_init and retro_deinit
* Add comments for retro_log-related symbols
* Add a comment
* Clean up some camera-related comments
* Clean up frame time-related callbacks
* Correct some information about major callbacks
* Clarify some parameter info
* Fix incorrect info about retro_set_environment
* Update libretro-common/include/libretro.h
Co-authored-by: Rob Loach <robloach@gmail.com>
* (libretro) Add doxygen docs on RETRO_THROTTLE
* Touch up the docs for RETRO_ENVIRONMENT_SET_AUDIO_CALLBACK
* Touch up the docs for some macros
* Touch up the docs for some more environment calls
* Update libretro-common/include/libretro.h
Co-authored-by: Rob Loach <robloach@gmail.com>
* Update libretro-common/include/libretro.h
Co-authored-by: Rob Loach <robloach@gmail.com>
* Update libretro-common/include/libretro.h
Co-authored-by: Rob Loach <robloach@gmail.com>
* Update libretro-common/include/libretro.h
Co-authored-by: Rob Loach <robloach@gmail.com>
* Tidy up the doc comments for clamping.h
- It was a low-hanging fruit
* Define some sections for constants
- Doxygen will group all contained symbols on one page
* Fix a duplicate @see
* Polish up the docs for the rumble interface
* Polish up the docs for RETRO_ENVIRONMENT_GET_INPUT_DEVICE_CAPABILITIES
* Update libretro-common/include/libretro.h
Co-authored-by: Rob Loach <robloach@gmail.com>
* Document INLINE
* Clean up some tags
* Touch up the docs for the sensor interface
* Add docs for RETRO_ENVIRONMENT_SET_PROC_ADDRESS_CALLBACK
* Update docs for RETRO_ENVIRONMENT_GET_INPUT_BITMASKS and accompanying names
* Update some group definitions
* Spiff up the docs for retro_dirent.h
* Document dylib.h
* Document base64.h
* Document crc32.h
* Touch up the docs for audio conversion functions
* Clean up some Doxygen tags
* Refine the docs for RETRO_ENVIRONMENT_GET_PERF_INTERFACE
* Fix incorrect infor in dylib.h
* Touch up the docs for RETRO_ENVIRONMENT_GET_CAMERA_INTERFACE
* Revise the docs for RETRO_ENVIRONMENT_SET_GEOMETRY
* Revise the docs for RETRO_ENVIRONMENT_GET_LOCATION_INTERFACE
* Revise a function's doc
* Touch up most of the rthreads docs
* Touch up the retro_timers.h docs
* Revise the subsystem docs
* Fix some incorrect @see's
* Touch up the docs for RETRO_ENVIRONMENT_GET_LED_INTERFACE
* Give the RETRO_ENVIRONMENT_GET_SAVESTATE_CONTEXT docs a makeover
* Slight cleanup to the microphone docs
* Slight cleanup to the device power docs
* Touch up serialization quirk docs
* Give the MIDI docs a haircut
* Update libretro-common/include/libretro.h
Co-authored-by: Rob Loach <robloach@gmail.com>
* Freshen up rtime's docs
* Improve the docs and accompanying definitions for RETRO_ENVIRONMENT_GET_AUDIO_VIDEO_ENABLE
- Revise the text of the documentation
- Introduce an enum that defines the flags (it's still an int, so ABI compatibility will be fine)
- Move the documentation for each bit to its corresponding enum
* Shine the shoes of RETRO_ENVIRONMENT_GET_INPUT_MAX_USERS's docs
* Freshen up the docs for fifo_queue.h
* Document most of task_queue.h
* Put retro_dirent's symbols in a group
* Finish documenting task_queue.h
* Document some compatibility headers
* Document read_stdin
* Document file_stream_transforms.h
* Document the VFS API
- Not the wrappers, just the plain API itself
* (Docs) Add doxygen notes about RETRO_DEVICE_*
* Fix some line breaks
* Revise RETRO_DEVICE docs
* Document strl.h
* Update the features_cpu.h docs
* Rewrite the docs for file_stream.h
* Update the docs for retro_endianness.h
* Update the docs for retro_miscellaneous.h
* Document the RETRO_VFS_SEEK_POSITION constants
* Finish documenting rthreads.h
* Document network_stream.h
* Put the RETRO_MEMORY defines in a defgroup
* Move a doc comment in retro_common.h to file scope
* Revise the docs for RETRO_ENVIRONMENT_SET_CONTROLLER_INFO, and accompanying symbols
* Fix the @param/in/out order in libretro.h's @param declarations
* Tidy up the docs for RETRO_ENVIRONMENT_GET_CORE_OPTIONS_VERSION
* Spiff up the docs for RETRO_ENVIRONMENT_GET_CURRENT_SOFTWARE_FRAMEBUFFER
* Fix some tags
* Polish up RETRO_ENVIRONMENT_GET_HW_RENDER_INTERFACE's docs
* libretro: Add header doxygen
* Update libretro-common/include/libretro.h
Co-authored-by: Rob Loach <robloach@gmail.com>
* Update libretro-common/include/libretro.h
Co-authored-by: Rob Loach <robloach@gmail.com>
* Clean up the docs for RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY
* Clean up the docs for RETRO_ENVIRONMENT_SET_HW_RENDER_CONTEXT_NEGOTIATION_INTERFACE
* Touch up some comment syntax for RETRO_ENVIRONMENT_GET_VARIABLE_UPDATE
* Fix some inaccuracies
* Re-add the license statement for libretro.h
* Touch up the docs for RETRO_ENVIRONMENT_SET_CORE_OPTIONS_V2
* Touch up docs for RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY
* Touch up docs for some options-related symbols
* Fix some syntax that was preventing most doc files from being generated
* Express retro_core_option_definition docs in terms of retro_core_option_v2_definition
* Finalize some core option-related docs
* Fix some incorrect info about achievements
* Polish up the docs for RETRO_ENVIRONMENT_SET_MEMORY_MAPS
* Polish up the docs for RETRO_ENVIRONMENT_GET_DISK_CONTROL_INTERFACE_VERSION
* Add a notice for `RETRO_ENVIRONMENT_GET_LOG_INTERFACE`
* Update the disk control interface docs
* Add a sentence to a doc comment
* Update a comment
* Remove an irrelevant @todo
* Touch up the docs for `retro_message_target`
* Touch up the docs for `retro_message_type`
* Touch up the docs for `RETRO_ENVIRONMENT_SET_MESSAGE_EXT`
* Touch up the docs for `RETRO_ENVIRONMENT_SET_AUDIO_BUFFER_STATUS_CALLBACK`
* Touch up the docs for `RETRO_ENVIRONMENT_SET_MINIMUM_AUDIO_LATENCY`
* Revise a comment
* Revise the docs for `RETRO_ENVIRONMENT_SET_VARIABLE`
* Add a `@see`
* Clean up the `RETRO_ENVIRONMENT_SET_FASTFORWARDING_OVERRIDE` docs
* Update the Doxyfile
* libretro: Add three more environment callback doxygen docs
* doxygen: Remove @example reference
---------
Co-authored-by: Rob Loach <robloach@gmail.com>
* Updates to the netplay netpacket interface
- Switch environment call number from 76 to 78 (retire 76 as it was never used by any core)
- Simplify broadcasts by removing the option to send to all but one client
- Separate explicit flushing and querying of incoming packet into two operations (RETRO_NETPACKET_FLUSH_HINT and retro_netpacket_poll_receive_t)
- Enable a core to specify a protocol version string which can get used instead of core version to determine compatibility between two players
- Log and notify a separate message when there is a content crc mismsatch to convey it being less severe (as different games may be able to do network communication with each other)
* C89 compile fix
- Make sure logs are written before frontend deinit
- Add memory stats
- Add process_args to frontend to fix some cases when salamander cfg was not filled
- Add a missing include in case someone wants to compile for PS2 with HAVE_THREADS
* Increase emscripten stack size and decrease path size to fix emscripten builds broken since de45fc2
* use modularize flags for better-behaved javascript output
* makefile and loader changes
* use specialHTMLTargets to support modular access to canvas
* bind key events to canvas, not document
This way focus means focus and we can have multiple RA instances in
one page.
* Work around an emscripten bug in strict mode
* (Emscripten) Use console.error() for error messages
* increase asyncify stack size
* Fix `-lm` flag-related compile warnings in emscripten
---------
Co-authored-by: Rob Loach <robloach@gmail.com>