Commit Graph
100 Commits
Author SHA1 Message Date
gdkchan 032c442505 [GPU] Remove 1f in RCP instruction emitter on glsl decompiler 2018-04-13 16:01:29 -03:00
gdkchan 8ab76a7bd4 [GPU] Do not use the f suffix on float contants on the shader glsl code 2018-04-13 15:53:16 -03:00
gdkchan 237eaeb920 Bump glsl version to support layout qualifier 2018-04-13 15:36:12 -03:00
gdkchanandGitHub c8c86a3854 Fix for current framebuffer issues (#78)
[GPU] Fix some of the current framebuffer issues
2018-04-13 15:12:58 -03:00
gdkchan 9227b0ea59 [CPU] Speed up translation a little bit 2018-04-11 14:44:03 -03:00
gdkchan 46548bbc41 [HLE/Service] Fix ToCalendarTimeWithMyRule (for real this time) 2018-04-10 21:18:20 -03:00
gdkchan 29a4fb6a57 [HLE/Service] Fix ToCalendarTimeWithMyRule 2018-04-10 21:16:27 -03:00
gdkchan cb29b4303c [CPU] Fix CNT instruction 2018-04-10 20:58:32 -03:00
gdkchan 7b2f471d4f [GPU] Add support for the BC4/5 texture formats 2018-04-10 18:54:50 -03:00
gdkchan f57fd95fd9 Fix regression -- enable raw frame buffer rendering 2018-04-10 16:56:03 -03:00
gdkchan feb2680a6c [GPU] Add more shader instructions, add support for rgb565 textures 2018-04-10 16:50:32 -03:00
gdkchan ecf02f525f Remove line numbers from log 2018-04-08 17:38:27 -03:00
gdkchan 36dfd20c87 Use correct pitch value when decoding linear swizzle textures 2018-04-08 17:09:41 -03:00
gdkchan b9aa3966c0 Merge shader branch, adding support for GLSL decompilation, a macro
interpreter, and a rewrite of the GPU code.
2018-04-08 16:41:38 -03:00
gdkchan 980691f36b [CPU] Fix CBZ/CBNZ with 32 bits operands 2018-04-06 17:22:26 -03:00
gdkchan 702daf2ff4 [CPU] Fail early when the index/size of the vector is invalid 2018-04-06 15:39:39 -03:00
gdkchan b27944c0b5 Bump the maximum number of threads 2018-04-06 10:53:18 -03:00
gdkchan df3cbadceb Fix FRSQRTS and FCM* (scalar) instructions 2018-04-06 10:20:17 -03:00
gdkchan a7ecf6dd2d Show service short name for unimplemented commands 2018-04-06 02:38:59 -03:00
gdkchan 081ede2a9a Support the .romfs extension aswell 2018-04-06 02:02:13 -03:00
gdkchan 36d9130592 Add FMLS (vector) instruction 2018-04-06 01:41:54 -03:00
gdkchan 2fd718c163 Fix typo 2018-04-06 01:07:51 -03:00
gdkchan dcf0f0be38 Fix possible regression on bsd 2018-04-06 01:06:34 -03:00
gdkchan 69e32e5bbc Rename services with the official interface names 2018-04-06 01:01:52 -03:00
gdkchan f15b1c76a1 Add FRSQRTS and FCM* instructions 2018-04-05 23:28:12 -03:00
gdkchan 4c19c908e5 Color* should be an array in NvGpuIoctlZbcSetTable 2018-04-05 10:23:52 -03:00
gdkchan 45c078d782 Add Faddp (vector) instruction 2018-04-04 22:13:10 -03:00
gdkchan 9754836c1b Fix GetAvailableLanguageCodes, stub ListAddOnContent and NvGpuAsIoctlRemap (0x4114) 2018-04-04 21:01:36 -03:00
gdkchan 2d33756878 Stub ActivateKeyboard on Hid 2018-04-04 19:44:02 -03:00
gdkchan c8b6274456 Stub ActivateMouse on Hid 2018-04-04 19:39:47 -03:00
gdkchan a3d6baab91 Remove useless spacing 2018-04-04 19:29:34 -03:00
gdkchan e16ca561cb HashSet is not thread safe, hopefully this fixes the CPU issue where it throws a exception on Add 2018-04-04 18:17:37 -03:00
gdkchan a20d6b34ab Add PRFM (unscaled) instruction 2018-04-04 18:10:20 -03:00
gdkchan 7fe12ad169 Add FNEG (vector) instruction 2018-04-04 16:36:07 -03:00
gdkchan e0c3d9c8df Fix SvcGetThreadId 2018-04-04 16:07:44 -03:00
gdkchan 0ac4681fa0 Fix 32-bits extended register instructions with 64-bits extensions 2018-03-30 23:32:06 -03:00
gdkchan 53e2d34905 Enable all ld/st (single structure) instructions 2018-03-30 18:06:02 -03:00
gdkchan 916540ff41 Fix EXT/Widening instruction carrying garbage values on some cases, fix ABD (it shouldn't accumulate, this is another variation of the instruction) 2018-03-30 17:37:31 -03:00
gdkchan 76ac31add6 Add BIT instruction 2018-03-30 16:46:00 -03:00
gdkchan 19b8344568 Add UABD instruction 2018-03-30 16:30:23 -03:00
gdkchan ba43af5765 Add UABDL instruction 2018-03-30 16:16:16 -03:00
gdkchan f42f39fd90 Add UADDL instruction 2018-03-30 15:55:28 -03:00
gdkchan 9b6fa1f89e Add UHADD instruction 2018-03-30 12:37:07 -03:00
gdkchan b2549d83bf Add FNMADD instruction 2018-03-24 00:28:23 -03:00
gdkchan d4a3e8267b Allow enabling/disabling memory checks on config file 2018-03-20 18:42:13 -03:00
gdkchan e922c3627a Rename IpcServices -> Services 2018-03-20 17:00:00 -03:00
gdkchan 1bd99e5597 Support different framebuffer offsets (fixes #59) 2018-03-20 12:18:25 -03:00
gdkchanandGitHub 4314a8f3e5 [WIP] Add support for events (#60)
* Add support for events, move concept of domains to IpcService

* Support waiting for KThread, remove some test code, other tweaks

* Use move handle on NIFM since I can't test that now, it's better to leave it how it was
2018-03-19 15:58:46 -03:00
gdkchan 4940cf0ea5 Add BFI instruction, even more audout fixes 2018-03-16 00:42:44 -03:00
gdkchan 88c6160c62 Add MLA (vector by element), fixes some cases of MUL (vector by element)? 2018-03-15 22:36:47 -03:00
gdkchanandGitHub 79a5939734 Improvements to audout (#58)
* Some audout refactoring and improvements

* More audio improvements

* Change ReadAsciiString to use long for the Size, avoids some casting
2018-03-15 21:06:24 -03:00
gdkchan 92f47d535e Fix crc32 instruction with size greater than a byte 2018-03-15 18:14:22 -03:00
gdkchan ee8fb18a0f Fix CPU instruction Ld/St (single structure) with index != 0 2018-03-15 12:59:23 -03:00
gdkchan b50bc46888 CPU fix for the cases using a Mask with shift = 0 2018-03-14 01:59:22 -03:00
gdkchan d067b4d5e0 Remove unused function from CPU 2018-03-14 00:57:07 -03:00
gdkchan 553ba659c4 Add CRC32 instruction and SLI (vector) 2018-03-14 00:12:05 -03:00
gdkchan 19564e570b Stub StartSixAxisSensor 2018-03-13 21:26:14 -03:00
gdkchan 2ed24af756 Add pl:u stub, use higher precision on CNTPCT_EL0 register tick count 2018-03-13 21:24:32 -03:00
gdkchan 6f4282daf8 IAudioDeviceService -> IAudioDevice 2018-03-12 16:31:09 -03:00
gdkchan d88b5c7621 Fix GetAudioRenderersProcessMasterVolume which was totally wrong 2018-03-12 16:29:06 -03:00
gdkchan e32f27158f Stub GetAudioRenderersProcessMasterVolume and avoid blowing up the stack inside HDomains Dispose method 2018-03-12 02:07:48 -03:00
gdkchan 8cb23c133b Add bsd:s service variant again 2018-03-12 01:15:39 -03:00
gdkchan 7a27990faa Allow more than one process, free resources on process dispose, implement SvcExitThread 2018-03-12 01:14:12 -03:00
gdkchan 28275a8976 Do not sign-extend timestamps 2018-03-10 20:51:55 -03:00
gdkchan 3777fb44cf Allow to enable/disable memory checks even on release mode through the flag, return error for invalid addresses on SvcMap*Memory svcs, do not return error on SvcQueryMemory (instead, return reserved for the end of the address space), other minor tweaks 2018-03-10 20:39:16 -03:00
gdkchan 553f6c2976 Fix EmitScalarUnaryOpF and add SSRA (vector) 2018-03-10 00:00:31 -03:00
gdkchan 30bcb8da33 Add FRINTM (vector) instruction 2018-03-09 23:41:05 -03:00
gdkchan aa2d2b3149 Add SHLL instruction 2018-03-09 23:28:38 -03:00
gdkchan 5912bd2beb Disable memory checks by default, even on debug, move ram memory allocation inside the CPU, since the size if fixed anyway, better heap region size 2018-03-09 23:12:57 -03:00
gdkchan be0e4007dc Add SMLAL (vector), fix EXT instruction 2018-03-06 21:36:49 -03:00
gdkchan 4f177c9ee7 More Vi/NvFlinger/NvDrv stubs, allow paths starting with //, do not allow paths that don't start with at least a /, increase map region size 2018-03-06 17:28:03 -03:00
gdkchan 2d9edddf8c Remove QueryMemory workaround 2018-03-05 16:20:30 -03:00
gdkchan 59d1b2ad83 Add MUL (vector by element), fix FCVTN, make svcs use MakeError too 2018-03-05 16:18:37 -03:00
gdkchan 0e343a748d Add FCVTL and FCVTN instruction (no Half support yet), stub SvcClearEvent 2018-03-05 12:58:56 -03:00
gdkchan 73cc30cc80 Allow multiple hid shared memory locations 2018-03-05 02:09:52 -03:00
gdkchan 344fc8a55d Try fixing NvFlinger rotation with scaling, return correct error code on WaitSignal timeout, always display window at the center of the screen 2018-03-04 20:32:18 -03:00
gdkchanandGitHub 3edb66f389 Improve CPU initial translation speeds (#50)
* Add background translation to the CPU

* Do not use a separate thread for translation, implement 2 tiers translation

* Remove unnecessary usings

* Lower MinCallCountForReJit

* Remove unused variable
2018-03-04 14:09:59 -03:00
gdkchan ee9df32e3e Do not block execution on audout append buffer 2018-03-04 01:41:35 -03:00
gdkchan 479443564c Remove unneeded log messages 2018-03-04 00:09:16 -03:00
gdkchan 8dcffe6a51 Fix hid touch screen timestamp, add more log info 2018-03-04 00:06:44 -03:00
gdkchan 7d48886750 Fix Rename* functions on FspSrv, add a separate class do hold system settings on Switch 2018-03-03 14:04:58 -03:00
gdkchan 646af2498c Fix paths using ascii instead of utf8 on IFileSystem 2018-03-03 02:24:04 -03:00
gdkchanandGitHub c14c69a10c Refactor HID, fix issues (#48)
* Refactor HID, fix issues

* Fix on touch screen code with wrong offset

* Don't use magic values

* Replace more magic values with actual variables, fix touch screen coordinates on different window sizes
2018-03-02 22:49:17 -03:00
gdkchan efef605b26 Fix REV64 (vector) instruction 2018-03-02 20:24:16 -03:00
gdkchan 829b1b1cc0 Add REV64 (vector) instruction 2018-03-02 20:03:28 -03:00
gdkchan f39a864050 Add EXT, CMTST (vector) and UMULL (vector) instructions 2018-03-02 19:23:38 -03:00
gdkchan 5d8a615c21 Enable hardware frame buffer texture scaling 2018-02-28 23:37:40 -03:00
gdkchan eacd432387 Fix wrong rotation direction on nvflinger 2018-02-28 19:21:04 -03:00
gdkchan f876bd2a80 Change SvcGetInfo 5 to return actual heap size, remove AMemoryAlloc since it is no longer needed with direct memory access, move some memory management logic out of AMemoryMgr, change default virtual filesystem path to AppData 2018-02-27 20:45:07 -03:00
gdkchan 708761963e Fix corner cases of ADCS and SBFM 2018-02-26 15:56:34 -03:00
gdkchan f6dc86c6a0 Implement SvcSetMemoryAttribute 2018-02-25 22:53:01 -03:00
gdkchan 13214ffa43 Fix regression introduced on last commit with wrong ImageEnd 2018-02-25 22:44:30 -03:00
gdkchan 950011c90f Added initial support for function names from symbol table on the cpu with tracing, fix wrong ImageEnd on executables with MOD0, fix issue on the CPU on input elimination for instruction with more than one register store 2018-02-25 22:14:58 -03:00
gdkchan fba0bf8732 Refactor IPC services to have commands into separate classes, fix readme url 2018-02-25 01:34:27 -03:00
gdkchan 31b35a9645 Add FABD (scalar), ADCS, SBCS instructions, update config with better default control mappings, update readme with the new mappings 2018-02-24 18:47:08 -03:00
gdkchanandGitHub c02a2b510f Fix build link 2018-02-24 13:30:37 -03:00
gdkchan 035efc913e Fix cpu issue with cmp optimization, add HINT and FRINTX (scalar) instructions, fix for NvFlinger sometimes missing free buffers 2018-02-24 11:19:28 -03:00
gdkchan 3936c93448 Map heap on heap base region, fix for thread start on homebrew, add FCVTMU and FCVTPU (general) instructions, fix FMOV (higher 64 bits) encodings, improve emit code for FCVT* (general) instructions 2018-02-23 21:59:38 -03:00
gdkchan 2ed733b1d5 Somewhat better NvFlinger (I guess) (fixes #30) 2018-02-23 18:48:27 -03:00
gdkchan 0ff5ec5cb5 Merge branch 'master' of https://github.com/gdkchan/Ryujinx 2018-02-22 16:26:54 -03:00