* New translations en_us.ts (Vietnamese)
* New translations en_us.ts (Vietnamese)
* New translations en_us.ts (Vietnamese)
* New translations en_us.ts (Vietnamese)
* shader_recompiler: Add lowering pass for when 64-bit float is unsupported.
* shader_recompiler: Fix PackDouble2x32/UnpackDouble2x32 type.
* shader_recompiler: Remove extra bit cast implementations.
* Fix GetModule exception
Simple mistake
* Prevent OOB writes in add_segment
Due to mistakes in our linker logic, OpenOrbis' libSceFios2 causes OOB writes here.
While the ideal solution would be to fix the erroneous behavior, the best I'm capable of right now is just preventing the OOB writes.
* Implement sceKernelGetModuleInfo, sceKernelGetModuleInfoInternal, sceKernelGetModuleList
These are implemented based on hardware observations and a homebrew sample made by red_prig. I've yet to test what error cases can show up.
* Clang
* Accurate error returns
If there are more modules than provided space, then return kernel ENOMEM.
If either handles or out_count are null, return kernel EFAULT.
* Accurate error checks in ModuleInfo functions
* Clang
* Readable VideoOutEvent data packing
Inspired by the work of former shadPS4 devs and mostly based on red_prig's current code.
* Apply DceData struct to sceVideoOutGetEventCount
Makes the code easier to read
* Update equeue.h
* Update main.cpp
* Update equeue.h
* Proper struct names
* Fix hint mask
Thanks to red_prig for catching my mistake here.
* Clang
* Fix header discrepancy
* Some sysmodules inconsistencies fixed. Based on Visual studio flags if they are irrelevant lmk
* Suggestions - info passed to sceKernelGetModuleInfoForUnwind and if name field matches it gets zeroed
* Final suggestions
* reverting OrbisModuleInfoForUnwind and modifing header.
* Implement sceImeDialogGetPanelSize
* Fix header
* Clang
* Adjust values that are different from Ime
* Add original sizes as comments
* clang
* At this point half of the PR is from squidbus, and I'm just typing out what they say
---------
Co-authored-by: squidbus <175574877+squidbus@users.noreply.github.com>
* Update memory.cpp
* Clean logic
FindDmemArea guarantees that the first dmem area we check contains search_start. Any dmem areas beyond the first one will be entirely past search_start, so checking against it in the loop is unnecessary.
Under normal circumstances, this mapping should only occur when libSceGnmDriver initializes. From what I can tell, this can be after game code starts running. Until there's a better way to accurately handle this, allocating this memory breaks some games.
This revert fixes the regression in games using the GFD engine.
* Add the NpAuth library
* clang
* you didn't see anything
* Add some random return to make games at least start using this library
* i'm once again asking for your continued ignorance of what i'm forgetting to not push
* debug logging
* apparently just this is still enough
* this isn't used but it still shouldn't be incorrect
* Emulate memory behavior of libSceGnmDriver _DT_INIT
Due to the unique way some games check for sceKernelAllocateDirectMemory failures, emulating this properly is necessary.
* Clang
* Fix address input for direct memory call
* Fix bug with DirectQueryAvailable
Missed this in my prior PR.
* DirectQueryAvailable fix
Fixes error cases to be more hardware accurate.
* AllocateDirectMemory fixes
search_start and search_end were ignored in certain cases, this fixes that issue.
I've also basically rewritten the function in the process, since the lack of documentation made it difficult to make the proper adjustments.
* DirectQueryAvailable fixes
remaining_size was calculated incorrectly in cases where a free dmem_area had a base earlier than search_start, or an end after search_end.
* Reduce sceKernelGetDirectMemorySize log severity
By this point, we've confirmed that sceKernelGetDirectMemorySize is hardware-accurate. There's no reason to clog logs with this function, which games usually call before every sceKernelAllocateDirectMemory call.
* Clang
* Fix phys_addr_out
phys_addr_out should be equal to search_start in cases where search_start is greater than the dmem_area base.
* Dividing by zero is fun
Need to check for alignment when aligning things.
* Update memory.cpp
* Clang
* New translations en_us.ts (Arabic)
* New translations en_us.ts (Italian)
* New translations en_us.ts (Arabic)
* New translations en_us.ts (Arabic)
* New translations en_us.ts (Arabic)
* Implementing DS_SUB_U32, DS_INC_U32, DS_DEC_U32, DS_WRITE_SRC2_B32, DS_WRITE_SRC2_B64.
* Added ir instructions for new opcodes.
Removing Write implementations.
Maping operation S_BFE_I32 as it was added in translate but wasnt pointing to anything.
* Suggestions
* Fix#2613: Game icon size not working properly on grid view
When you select grid view mode and try to change the game icon size, the
icons change to the wrong size, or don't change at all. To solve this I
added a line to call the function that populates the game grid with
the games when the user changes the icon size. That way the size of the
icons is updated to match the size selected by the user, which is the
intended behaviour. I also added code to update the check on the size
when changing view mode.
* Fix#2613: fixed clang format issue
* Implement sceVideoOutDeleteVblankEvent
* Implement sceVideoOutGetEventCount
Based on decompilation, needs testing.
I also tidied up some types for other functions in here.
* Change hexadecimal numbers to lowercase
A minor change to make sure my implementation follows the formatting standards seen in https://github.com/shadps4-emu/shadPS4/pull/2423
* Updated the trophy icons to match those on the PS4
* Updated the Windows icon to have less harsh aliasing at smaller sizes.
* Created a correctly sized SVG client icon.
* Remade all of the link icons.
Remade all of the icons for links to a standard 1K size and fixed all of the crazy aliasing problems.
* Revert "Updated the trophy icons to match those on the PS4"
This reverts commit 223c70de13.
* Created SVG versions of all of the link icons.
* Update REUSE.toml
---------
Co-authored-by: georgemoralis <giorgosmrls@gmail.com>
* cpu_patches: Remove CPU patches for macOS and bump minimum OS version to 15.4
* cpu_patches: Remove BMI1 patches
These are now only good for very old Intel CPUs that:
* Still do not currently function due to other CPU instruction issues.
* Will probably be too slow to run shadPS4 well.
* Fix sceNgs2SystemCreateWithAllocator
The cause of the exceptions without libraries.
* Remove error handling for unimplemented functions
Since nothing exists to create any VoiceHandle or RackHandle, we were consistently hitting those error returns.
Also promotes logs for stubbed functions back to LOG_ERROR, with the exception of two functions that get spammed pretty frequently.
* Use Core::ExecuteGuest to execute allocator alloc and free
* Clang
* Fix function definitions in ngs2.h
These should be using the SYSV ABI
* Fix function defs in ngs2_impl.h
This will (hopefully) fix compilation
* Clang
* Clang
again
* usbd: Implement libusb passthrough
* clang-format
* only do kernel activities on non-windows
* use variable to represent "fake" windows kernel driver
---------
Co-authored-by: georgemoralis <giorgosmrls@gmail.com>
* sceKernelDebugOutText
Some homebrew use this for logging, and these logs do show up in console klogs.
I wasn't sure where the most suitable place for this function would be, so I made a separate file for these debug functions.
* Implement kernel exit
Some homebrew I have use this exit when an error occurs. Since actually closing the emulator isn't implemented yet, I've used an unreachable message that logs the status code.
I've placed it in process.cpp for now, let me know if I should change that.
* Improved implementations for sceKernelDebugRaiseException functions
These functions take in two parameters, an error code and some other value that I have no idea what is for. If that second parameter is not zero, they return ORBIS_KERNEL_ERROR_EINVAL before any calls to mdbg_service.
These improved implementations add the early error return and a message with the error code to the unreachable.
* Add missing exports
Homebrew apps like to use these kernel exports of posix functions instead.
* Clang
* Slightly changed how allInstallDirsDisabled is determined
* Show a dialog only if no game directories are set
* Changed a comment
* Fixed formatting
* Support for unicode paths for game install directories
* Fixed game picture path conversion
* Adding names to gui buttoms and adjusting spacing.
* moving refresh button to last slot.
* Changing the implementation to tooltips for hover over them - qstring to detect background color.
* Fixing some themes with inverted tooltip base
* Suggestions / Fixes - Pause and FullScreen Buttons
* Update REUSE.toml
* cleaning up
* Icons stuff
* clang
* Buttons toggle - Cleaning code - Fixing Icons
* cleaning boolean
* Toggle pause and play icons and label to "Resume" when paused.
* Simplifying the toggles.
* New icons and final Push to review
* Reuse
* Icon rename, adding f9 press for pause game when no gui is on without needed of debug menu
* clang + reuse
* clang dosent work on this part
* again Clang
* Last fix for review. Light theme white resume icon fix.
* Proper fix for Resume icon
* New Rebase
* Fixed Orientation with docking issues and cleaning boxlayout code
* Adding spacer to separate actions, sizeslider on top of search bar. And adding margins
* Fixed Background not showing on OLED Theme
* Fixing check marks
* Adding all Daniel Suggestions and fixed F9 not working with debug menu open.
* Clang
* reverting all OLED theme changes
* Final suggestions
* sceKernelOpen: Clean up flag handling
* sceKernelOpen: fix params
Based on decompilation, the second parameter of _open should be flags.
Additionally swaps the return and parameter types to align with our current standards.
* sceKernelOpen: Fix errors
Based on POSIX spec, if part of the path is missing, ENOENT is the correct return.
Additionally, decompilation suggests that open sets errno too.
* Fix exports
Fixes function exports to align with what they should be, based on what I've seen from decompilation and our module generator.
* Proper errno behavior on open
Since sceKernelOpen calls posix_open, errno should be set during this process.
Simplest way to handle that is to move the actual open code to posix_open and adjust error cases accordingly.
* Reorganize open calls, add error log
* Improve close
Removes the EPERM return, as it makes no sense, and swaps sceKernelClose with posix_close to properly emulate errno behavior.
* Fix log on close
* posix_open fixups
* Readd hack in posix_close
It's either this, or removing LLE DiscMap.
Or shadow implements posix sockets.
* Missing exports
Commented out while I gradually work through them all
* Remaining placeholder exports
* Swap some stuff around
I see nothing that suggests "open" only takes two parameters, so this should be completely safe.
It's also more accurate to how these are handled in libkernel, and means I won't need to reorganize anything for readv and writev.
* Update file_system.cpp
* Implement write and posix_write
* Oops
* Implement posix_readv and sceKernelReadv
Also fixes error behavior on readv, as that function shouldn't be returning any kernel error codes.
* Move sceKernelUnlink
Will deal with this one later, was just annoyed by how it's location doesn't align with the export order.
* Cleanup readv
* Implement posix_writev and sceKernelWritev
Also fixes error behavior on writev, since it shouldn't ever return kernel errors (since our device files return those)
* More cleanup on older functions
* Swap around sceKernelLseek and posix_lseek
This ensures that these have the correct error behavior, and makes their behavior align with the updated implementations for earlier functions.
* Update file_system.cpp
* Implement read
Also fixes error behavior
* Swap sceKernelMkdir and posix_mkdir
Fixes errno behavior on kernel calls, also fixed some incorrect error returns.
* Fix errno behavior on sceKernelRmdir
Also reduces function logging to bring it closer to the level of logging seen in other filesystem functions.
* Slight clean up of sceKernelStat
Fixes error behavior and changes some of the old data types.
* Refactor fstat
Fixes errno behavior, implements fstat, and shifts exports around based on file position.
Might reorganize function locations later though.
* Implement posix_ftruncate
Implements posix_ftruncate and fixes errno behavior for sceKernelFtruncate
* Add missing error conversions for more device functions
* Implement posix_rename, fix sceKernelRename errno behavior
* Add posix_preadv and posix_pread
Also fixes some incorrect error returns, fixes errno behavior, and removes an unnecessary hack.
* Fix compile
* Implement posix_getdents, getdirentries, and posix_getdirentries
Also fixes errno behavior for the kernel variants of these functions.
* Fix errno behavior of sceKernelFsync
* Implement posix_pwrite and posix_unlink
Also fixes errno behavior in related functions.
* Update file_system.cpp
* Remove SetPosixErrno
Ideally, we've handled all possible error conditions before calling these functions, so treat errors in platform-specific code as IO errors and return POSIX_EIO instead.
* Update header exports
Not sure where these get used, but might as well keep them consistent with the rest of this.
* Check if file exists before calling platform-specific code
Bloodborne checks if a file doesn't exist using open, checking if it specifically failed with error code ENOENT. To avoid working with platform-specific errnos, add a proper error return for if the file doesn't exist.
Fixes a regression in Bloodborne.
* Clang
Out of all the changes, this is apparently the only thing Clang-Format doesn't like.
I'm honestly surprised.
* Improve error checks on posix_unlink
Just because a file isn't opened doesn't mean the file doesn't exist.
Fixes the error returned if host_path.empty(), and removes the error return for when GetFile fails.
* Fix the Bloodborne fix
* Limit exports to tested functions
* More confirmed working exports
* Remaining stuff my games can test
* FS exports from firmware tests
* Bring back missing exports from main
I don't have any bootable things that call these, but since they were working well enough on main, they should be fine to readd.
* Add export for posix_pread
Spotted in Dreams a while back, might as well add it.
* Revert "Remove SetPosixErrno"
This reverts commit bdfc0c246c.
* Revert SetPosixErrno changes
shadow's using it for posix sockets, so significant modifications would introduce unnecessary merge conflicts.
* Update comment
* Add EACCES errno to SetPosixErrno
Seen in Gravity Rush.
Also reorganizes the switch case based on the posix errno value, since ordering by errno makes no sense on some OSes.
* More export fixups
Missed these during my initial pass through FS stuff because they were in kernel.cpp for some reason.
* Symbols from FS tests
Tested by messing around with firmware elfs, these atleast don't cause any crashes.
* Remove inaccurate error behavior
Seek can have offsets past the end of a file.
Also add logging for two valid whence values that are unsupported on Windows.
I'll need to verify that SEEK_HOLE and SEEK_DATA correspond to 3 and 4 respectively, I've yet to check source to verify.
* Fix error log
Oops
* Clang
Clang
* Remove close hack
Since LLE libSceDiscMap is no longer a concern, this hack shouldn't be needed.
Since sockets are still stubbed, and close can be used on sockets, I've added a warning log just in case this still occurs in some titles.
* Change SetPosixErrno unreachable to warning
I changed it to an unreachable in an earlier commit to make testing easier.
At this point, having an unreachable for this seems unnecessary, so change it to a warning instead.
* Remove Bloodborne hack
Games should be able to unlink files that aren't opened file descriptors. As far as I've tested, this doesn't break Bloodborne.
* Squashed initial implementation
* Logging for checking if buffers are memory contiguous
* Add check to see if first instruction is valid in the next buffer to avoid false positives
* Oof
* Replace old code with IndecisiveTurtle's new, better implementation
* Add `unlikely` keyword to the split packet handling branches
Co-authored-by: TheTurtle <47210458+raphaelthegreat@users.noreply.github.com>
---------
Co-authored-by: IndecisiveTurtle <47210458+raphaelthegreat@users.noreply.github.com>
* Trophy Viewer - Select Game
* TR - Button in Utils +icon
TR - Button in Utils +icon
I also made a small correction to the game folder list, where the checkboxes were being filled in incorrectly.
* control_flow_graph: Improve divergence handling
* recompiler: Simplify optimization passes
Removes a redudant constant propagation and cleans up the passes a little
* ir_passes: Add new readlane elimination pass
The algorithm has grown complex enough where it deserves its own pass. The old implementation could only handle a single phi level properly,
however this one should be able to eliminate vast majority of lane cases remaining. It first performs a traversal of the phi tree to ensure
that all phi sources can be rewritten into an expected value and then performs elimintation by recursively duplicating the phi nodes at each step,
in order to preserve control flow.
* clang format
* control_flow_graph: Remove debug code
* Add option to enable/disable game folders individually
A checkbox (button to select) game folders has been added to the menu, allowing you to Enable/Disable them without having to remove the folder.
config.toml is now saved in alphabetical order
* ordering is separation in a function
* remove my comment in portuguese :)
* Using OrbisKernelTimespec under clock_gettime, orbis_clock_gettime, sceKernelClockGettime to fix compatibility issues.
* final fix test
* Roamic suggestions
* rewrite splash
removed Splash class
rewrite using imgui texture manager
fix crashes & old validation error
* handle games with abnormal aspect ratios
* Export sceVideoOutGetBufferLabelAddress
It's an exported function, used by red_prig's BLACKSQUAR2 homebrew sample.
This also fixes the function's return type accordingly.
* More sceVideoOutGetBufferLabelAddress fixups
Library decomp shows a hardcoded return 16 on success. Not sure why it does that, but it never hurts to be accurate.
Also needs to have an openOrbis-specific export to get it to work with the homebrew sample I'm testing.
* Final fixups
Removed the port assert and added asserts in libSceGnmDriver for when sceVideoOutGetBufferLabelAddress calls fail.
* host_shaders: support for includes
* video_core: add a simpler vulkan asserts
* video_core: refactored post processing pipeline to another file
* renderer_vulkan: add define param to compile shader utility
* video_core: fsr implementation
* devtools: show resolution & fsr state
* New translations en_us.ts (French)
* New translations en_us.ts (Spanish)
* New translations en_us.ts (Polish)
* New translations en_us.ts (Spanish)
* New translations en_us.ts (Albanian)
* Fix error return on sceKernelMunmap
FreeBSD docs state that len <= 0 is a EINVAL return.
* Early return on ReleaseDirectMemory with len = 0
Calls to these two functions with len = 0 cause an assert in CarveDmemArea. Since there's no memory to release, an early return should be safe here.
* Remove check for negative length in munmap
Addresses review comment
* Adds missing tr functions for certain GUI strings that should be translatable
* set clang format off for multi-line strings, set userDir as arg
---------
Co-authored-by: rainmakerv2 <30595646+jpau02@users.noreply.github.com>
* Add missing space so only once translation is auto-generated
* Use suggested format
* delete an extra space
---------
Co-authored-by: rainmakerv2 <30595646+jpau02@users.noreply.github.com>
* Add global windows user folder
* Add button for creating portable folder
* Add notice about restarting after creating the portable folder
---------
Co-authored-by: rainmakerv2 <30595646+jpau02@users.noreply.github.com>
* Initial KBM remapping GUI
* Added Mousewheel mapping
* Make window wider so for mousewheel + modifier string
* Fix alt + mousewheel vertical being changed to horizontal for qwidgets
---------
Co-authored-by: rainmakerv2 <30595646+jpau02@users.noreply.github.com>
* Specialize vertex attributes on dst_sel
* compare vs attrib specs by default, ignore NumberFmt when vertex input dynamic state is supported
* specialize data_format when attribute uses step rates
* use num_components in data fmt instead of fmt itself
-dont do trivial phi removal during SRT pass, that's now done in
ssa_rewrite
-remove unused variable when walking tess attributes
-fix some tess comments
* Adding top button option for trophy pop up
* Ui fix
* Clang format
* improvements to trophy pr
* improvements
* Note: The sound will only work in QT versions
* -.
* Update path_util.cpp
* Update path_util.cpp
* centered text when using top and bottom option
* Clang
* trophy viewer now opens in window not fullscreen
---------
Co-authored-by: DanielSvoboda <daniel.svoboda@hotmail.com>
* Change systemserivce param ID calling to debug only
Some games, including Namco Museum Archives spam this.
* Update userservice.cpp
Also reduces log spam in Dysmantle.
* Custom Trophy images
* text and button - settings
* Description
* +
* plural
* translation for 'Trophy earned!'
* Revert: translation for 'Trophy earned!'
* play audio
* fixes crash due to having too many trophies
The game 'My Name is Mayo' has so many trophies in sequence that when overlapping them, the emulator ended up crashing, so if there is something on the screen and a new trophies are achieved, it will clear and show the new one.
* Animations, config: position, duration
* -
* TR
* fix sdl/qt
* clang \O/
* Side menu with filter options. Sorting
* +TR
* fix showHiddenCheck
* Time Unlocked
* Fixes ghost text, larger image, black text in light theme
* Button - Delete Trophy
* limits the width of Description - showMaximized
* changing column positions
* useEuropeanDateFormat
en_US, zh_CN, zh_TW, ja_JP, ko_KR, lt_LT, nb_NO, nl_NL
useEuropeanDateFormat = false
There are these 2 options about full screen, and 'Fullscreen' was being set to 'true' because it was comparing the word "Windowed" with the interface information, but if you are using another language it might not identify it and even using 'Borderless' the screen would be full.
* ir_passes: Add barrier at end of block too
* vk_platform: Always assign names to resources
* texture_cache: Better overlap handling
* liverpool: Avoid resuming ce_task when its finished
* spirv_quad_rect: Skip default attributes
Fixes some crashes
* memory: Improve buffer size clamping
* liverpool: Relax binary header validity check
* liverpool: Stub SetPredication with a warning
* Better than outright crash
* emit_spirv: Implement round to zero mode
* liverpool: queue::pop takes the front element
* image_info: Remove obsolete assert
The old code assumed the mip only had 1 layer thus a right overlap could not return mip 0. But with the new path we handle images that are both mip-mapped and multi-layer, thus this can happen
* tile_manager: Fix size calculation
* spirv_quad_rect: Skip default attributes
---------
Co-authored-by: poly <47796739+polybiusproxy@users.noreply.github.com>
Co-authored-by: squidbus <175574877+squidbus@users.noreply.github.com>
* Add back fixed trophy type icons to trophy viewer
* Remove unused declaration until it is needed again
* Fix trophy pop-up icons
* Adjust size and alignment based on trophy name length
---------
Co-authored-by: rainmakerv2 <30595646+jpau02@users.noreply.github.com>
* QT: Various interface fixes
* fix close without saving
* +
* +
using the save and close buttons, everything works fine, but when using the X button it doesn't work very well...
* fix close (X) without saving
* Include trophy rarity icons in pop up, remove newlines from viewer
Fix layout
Update platinum.png
Fix linux and apple
* Smaller type icons, center text vertically
* use original icons
* MacOS fixes
* Address Review comments
Update build.yml
Update build.yml
Update build.yml
Update build.yml
Update build.yml
Update build.yml
Update build.yml
test
* Move trophy type to leftmost and trophy art to rightmost
* Embed resources
* Revert packaging of resources with builds
---------
Co-authored-by: rainmakerv2 <30595646+jpau02@users.noreply.github.com>
* Implement protecting multiple VMAs
A handful of games expect this to work, and updated versions of Grand Theft Auto V crash if it doesn't work.
* Clang
* memory: Consider flexible mappings as gpu accessible
Multiple guest apps do this with perfectly valid sharps in simple shaders. This needs some hw testing to see how it is handled but for now doesnt hurt to handle it
* memory: Clamp large buffers to mapped area
Sometimes huge buffers can be bound that start on some valid mapping but arent fully contained by it. It is not reasonable to expect the game needing all of the memory, so clamp the size to avoid the gpu tracking assert
* clang-format fix
---------
Co-authored-by: georgemoralis <giorgosmrls@gmail.com>
* mask_jump32
* fix qt/sdl
* fix dangling pointer?
fixes the warning: "clang-diagnostic-dangling-gls: object backing the pointer will be destroyed at the end of the full-expression"
* shader_recompiler: Implement AMD buffer bounds checking behavior.
* shader_recompiler: Use SRT flatbuf for bounds check size.
* shader_recompiler: Fix buffer atomic bounds check.
* buffer_cache: Prevent false image-to-buffer sync.
Lowering vertex fetch to formatted buffer surfaced an issue where a CPU modified range may be overwritten with stale GPU modified image data.
* Address review comments.
* shader_recompiler: Move shared mem lowering into emitter
* IR can be quite verbose during first stages of translation, before ssa and constant prop passes have run that drastically simplify it. This lowering can also be done during emission so why not do it then to save some compilation time
* runtime_info: Pack PsColorBuffer into 8 bytes
* Drops the size of the total structure by half from 396 to 204 bytes. Also should make comparison of the array a bit faster, since its a hot path done every draw
* emit_spirv_context: Add infrastructure for buffer aliases
* Splits out the buffer creation function so it can be reused when defining multiple type aliases
* shader_recompiler: Merge srt_flatbuf into buffers list
* Its no longer a special case, yay
* shader_recompiler: Complete buffer aliasing support
* Add a bunch more types into buffers, such as F32 for float reads/writes and 8/16 bit integer types for formatted buffers
* shader_recompiler: Remove existing shared memory emulation
* The current impl relies on backend side implementaton and hooking into every shared memory access. It also doesnt handle atomics. Will be replaced by an IR pass that solves these issues
* shader_recompiler: Reintroduce shared memory on ssbo emulation
* Now it is performed with an IR pass, and combined with the previous commit cleanup, is fully transparent from the backend, other than requiring workgroup_index be provided as an attribute (computing this on every shared memory access is gonna be too verbose
* clang format
* buffer_cache: Reduce buffer sizes
* vk_rasterizer: Cleanup resource binding code
* Reduce noise in the functions, also remove some arguments which are class members
* Fix gcc
* Added all stubs + logging
* Added back memory and math functions from the original code + added some more math functions
* More string functions, snprintf, memmove and setjmp
* Add longjmp + clang
* gmtime, __cxa_atexit and log what functions some games use
* Add Mspace unreachable
* Renaming
* Take out mspace functions to their own file
* Factor out io to a new file
* Empty str and memory files
* Overloaded functions be like:
* str
* memory + math +clang
* clang...
* adjustments :D
* longjmp is questionable
---------
Co-authored-by: georgemoralis <giorgosmrls@gmail.com>
* added auto-translation action
* made scripts executable
* reuse
* no-obsolete - reuse (#2392)
* other languages - reuse
* no-obsolete
see everything that is 'vanished', because it does not exist
* Update update_translation.sh
* +
---------
Co-authored-by: DanielSvoboda <daniel.svoboda@hotmail.com>
the shift value should be extracted from the 5 least significant bits of the second operand (S1.u[4:0]), to ensure that the shift is limited to values from 0 to 31, suitable for 32-bit operations
Instruction S_LSHR_B32
Description D.u = S0.u >> S1.u[4:0]. SCC = 1 if result is non-zero.
Unity, being the awful game engine it is, checks for a return value of zero to determine if sceKernelLoadStartModule failed. This results in it throwing an error code into sceKernelDlsym's handle parameter when the module it's searching for doesn't exist.
* Adding Swedish translation
* Updated Swedish translation with additional strings
Updated the Swedish translations using lupdate to found additional strings
cd src/qt_gui/treanslations
lupdate ../../../../shadPS4/ -tr-function-alias QT_TRANSLATE_NOOP+=TRANSLATE,QT_TRANSLATE_NOOP+=TRANSLATE_SV,QT_TRANSLATE_NOOP+=TRANSLATE_STR,QT_TRANSLATE_NOOP+=TRANSLATE_FS,QT_TRANSLATE_N_NOOP3+=TRANSLATE_FMT,QT_TRANSLATE_NOOP+=TRANSLATE_NOOP,translate+=TRANSLATE_PLURAL_STR,translate+=TRANSLATE_PLURAL_FS -no-obsolete -locations none -source-language en -ts sv.ts
* Update sv.ts
* Updated Swedish translation
* Adding copyright boilerplate
* Updated Swedish translation
* Updated Swedish translation
* Update sv.ts whitespace in boilerplate
* Updated Swedish translation
Please do not add or change anything. Always use lupdate to update TS translation files
* Update sv.ts
* Update sv.ts small typo
* Game-compatibility - improved
* +
none of these texts have a translation \o/
* Fix
- html_url has been removed, the url is now built dynamically from the issue_number, and the file has decreased in size from 537kb to 355KB;
-Fix QProgressDialog
- change the correct directory, from my ford to the official one
* TR
* shader_recompiler: Replace texel buffers with in-shader buffer format interpretation
* shader_recompiler: Move 10/11-bit float conversion to functions and address some comments.
* vulkan: Remove VK_KHR_maintenance5 as it is no longer needed for buffer views.
* shader_recompiler: Add helpers for composites and bitfields in pack/unpack.
* shader_recompiler: Use initializer_list for bitfield insert helper.
* Add Ukrainian localization
* Fixed langIndexes
* Fixed langIndexes_2
* Added uk_UA language support
* Added uk_UA language support
* Updated uk_UA localization to the latest version && corrected lexical mistakes
* Added missing lines in the translation and minor edits
* Correction
* Second Correction
* Added missed strings work test
* Added more missed strings
---------
Co-authored-by: SAN4EZDREAMS <san4ez@gmail.com>
* Adding Swedish translation
* Updated Swedish translation with additional strings
Updated the Swedish translations using lupdate to found additional strings
cd src/qt_gui/treanslations
lupdate ../../../../shadPS4/ -tr-function-alias QT_TRANSLATE_NOOP+=TRANSLATE,QT_TRANSLATE_NOOP+=TRANSLATE_SV,QT_TRANSLATE_NOOP+=TRANSLATE_STR,QT_TRANSLATE_NOOP+=TRANSLATE_FS,QT_TRANSLATE_N_NOOP3+=TRANSLATE_FMT,QT_TRANSLATE_NOOP+=TRANSLATE_NOOP,translate+=TRANSLATE_PLURAL_STR,translate+=TRANSLATE_PLURAL_FS -no-obsolete -locations none -source-language en -ts sv.ts
* Update sv.ts
* Updated Swedish translation
* Adding copyright boilerplate
* Updated Swedish translation
* Updated Swedish translation
* Update sv.ts whitespace in boilerplate
* Handle errors in sceKernelAllocateDirectMemory
* Improve accuracy of error cases
Some of our existing cases are normally EAGAIN returns.
* Improve logging on errors
* Clang
* TEMPORARY HACK FOR NBA TESTS
This will be removed before this PR is marked as ready, and is only here to make sure the other NBA games (and perhaps DOA3) work if some missing init behavior is handled.
* Revert "TEMPORARY HACK FOR NBA TESTS"
This reverts commit a0e27b0229.
* Change error message