Commit graph

86 commits

Author SHA1 Message Date
Thomas Guillemard
64b0934cc0 hbabi: Implement argv (#272)
This commit implements the argv config key in Ryujinx (by creating a temporary copy of the homebrew executable in the sdmc VFS) to make it possible
to load libnx's "romfs" files.

This commit also call Os.Dispose in Ns.OnFinish to dispose all resources when exiting
2018-07-17 16:14:27 -03:00
ReinUsesLisp
7ccd04b93b Add config key to dump shaders in local directory (#265)
* Add config key to dump shaders in local directory

* Address feedback
2018-07-15 19:37:27 -03:00
ReinUsesLisp
149583d68e Loop GLScreen with custom method (#244)
* Loop GLScreen with custom method

* Fix deadlocks

* Fix screen resizing

* Change event to bool

* Try to fix quitting error

* Set title from main thread

* Queue max 1 vsync, fix high FPS after a slowdown
2018-07-12 14:03:52 -03:00
John Clemis
754862561c Add Controller Support (#196)
* Added Basic Controller Support

* Added Extra Configuration Options

Added a GamePad_Enable option and GamePad_Index option

* Revert "Added Extra Configuration Options"

This reverts commit 6cc56bfe7ed473fedf8dfe79c7a888bbe7cfe147.

* Revert "Revert "Added Extra Configuration Options""

This reverts commit 4809e5effe7f54cdb67bc5e2b4f01315ae34efc5.

* Forgot to change the Gamepad Index

* Added Configuration for the A B X Y Buttons

* Added Button Configuration for all other Buttons

* Added Basic Joystick Configuration

* Fixed Joystick Axis Problems

Fixed Joystick Axis Problems when switching around the Joysticks (Left Stick is Right and Right stick is Left)

* Refactored all of the button mapping code

* Changes in compliance with review

* Changes in compliance with review

* Fixed problems in the configuration file with different regions

* Changes in compliance with review
2018-07-02 19:08:54 -03:00
Thomas Guillemard
c225a6a075 Add linux-x64 to RID property to make tests works on linux (#205) 2018-06-30 12:43:04 -03:00
gdkchan
a7de328a4f Small OpenGL Renderer refactoring (#177)
* Call OpenGL functions directly, remove the pfifo thread, some refactoring

* Fix PerformanceStatistics calculating the wrong host fps, remove wait event on PFIFO as this wasn't exactly was causing the freezes (may replace with an exception later)

* Organized the Gpu folder a bit more, renamed a few things, address PR feedback

* Make PerformanceStatistics thread safe

* Remove unused constant

* Use unlimited update rate for better pref
2018-06-23 21:39:25 -03:00
ReinUsesLisp
d3e3016b3f Port from OpenTK.NETCore to OpenTK.NetStandard (#176)
* Minor code changes

* Forgot to remove a method
2018-06-21 18:10:19 -03:00
gdkchan
74ef146653 Rename Ryujinx.Core to Ryujinx.HLE and add a separate project for a future LLE implementation 2018-06-10 21:46:42 -03:00
gdkchan
9d789f99f9 Add intrinsics support (#121)
* Initial intrinsics support

* Update tests to work with the new Vector128 type and intrinsics

* Drop SSE4.1 requirement

* Fix copy-paste mistake
2018-05-11 20:10:27 -03:00
gdkchan
ab56c9b2af Some small sync primitive fixes, logging fixes, started to implement the 2D engine on the GPU, fixed DrawArrays, implemented a few more shader instructions, made a start on nvdrv refactor, etc... 2018-04-25 23:12:26 -03:00
gdkchan
ae8bb487db Improved logging (#103) 2018-04-24 15:57:39 -03:00
gdkchan
e0c0813b5c [HLE/Kernel] Somewhat improved sync primitives 2018-04-18 23:52:36 -03:00
emmauss
888c7ca763 Add special log for stubs (#81)
* add stub loglevel

* add log for stubbed methods
2018-04-16 21:24:42 -03:00
gdkchan
f40338c3e1 [GPU] Set frame buffer texture size to window size 2018-04-14 01:31:27 -03:00
emmauss
c58e867b0b Add logclass, made changes to logging calls (#79)
* add logclass, made changes to logging calls

* made enum parsing case insensitive

* enable logclass on partial or complete match
2018-04-13 22:02:24 -03:00
gdkchan
ce12f21b82 [HLE] Fix hid issues on some games 2018-04-13 17:39:45 -03:00
gdkchan
fab16f9aae Fix for current framebuffer issues (#78)
[GPU] Fix some of the current framebuffer issues
2018-04-13 15:12:58 -03:00
gdkchan
eacc7689ed 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
f985d7bd27 Support the .romfs extension aswell 2018-04-06 02:02:13 -03:00
gdkchan
2b159a389b Allow enabling/disabling memory checks on config file 2018-03-20 18:42:13 -03:00
gdkchan
e60852509c [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
d79cab48ae 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
7064200261 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
emmauss
756ef2b4da Implement basic performance statistics (#53)
* implement basic frame time stats

* added game frame time

* made performancestatictics class non-static

* report average framerate instead of current framerate
2018-03-06 17:18:49 -03:00
gdkchan
df60348bf5 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
gdkchan
cfcd93f727 Fix hid touch screen timestamp, add more log info 2018-03-04 00:06:44 -03:00
gdkchan
3d798df714 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
Ac_K
9812c7db46 Implement many objects, improve logging. (#42)
* Implement many objects, improve logging.

Change and rename folders of Services
Add Logging of IpcMessage.
Add "lm" Log Service.
Parse Errors of SetTerminateResult
Add Svc Calls.
Add many object implementations.

* Corrections

Forgotten Debug Conf

* Corrections 2

* Corrections 3

* Corrections 4
2018-02-25 15:58:16 -03:00
gdkchan
4c3b282606 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
gdkchan
7796f1709e 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
a7912d0990 Somewhat better NvFlinger (I guess) (fixes #30) 2018-02-23 18:48:27 -03:00
emmauss
6cd4fd737f implement single tap touchscreen (#34) 2018-02-22 10:28:27 -03:00
gdkchan
af97037ba3 FspSrv improvements, also fix ImageEnd for NROs without a MOD0 section 2018-02-21 18:56:52 -03:00
emmauss
bf5ccf25b7 Split main project into core,graphics and chocolarm4 subproject (#29) 2018-02-20 17:09:23 -03:00
gdkchan
9d21945ccf Add FDIV (vector) instruction 2018-02-20 16:04:22 -03:00
gdkchan
ab6043ed6d Add SMULL (vector), USHR (scalar), FCCMPE, FNMSUB, fixed a some instructions 2018-02-20 14:39:03 -03:00
Ezekiel Bethel
5bed9bbf77 Lots of FS HLE fixes and implementation of missing functions/objects. (#24)
* Initial pass - fixes IFileSystem OpenFile, implements IFileSystem CreateFile/DeleteFile, fixes IFile Read and implements IFile GetSize/SetSize

* Implement IFileSystem Directory* methods, as well as RenameFile. Add IDirectory, and implement its Read and GetEntryCount methods.

* missing TODO

* hey, this is kinda bad

* Update IDirectory.cs

Fixed :)

* Some cleanups to IDirectory, fix for OpenDirectory on a non-existent directory.

* Item -> Index

* This should work.

* Update IDirectory.cs

Marshalling version
2018-02-20 08:03:04 -03:00
Kurt
18db15a27f Misc language usage simplifications (#26)
un-nest some logic
add some xmldoc
simplify ini parse
2018-02-20 07:54:00 -03:00
Merry
affbbe6ab4 Resize display to window size (#27) 2018-02-20 07:52:35 -03:00
Merry
c66da3300a Implement Zip1, Zip2 (#25) 2018-02-20 07:41:55 -03:00
gdkchan
80370b3204 Somewhat better scheduler I guess 2018-02-19 16:37:13 -03:00
gdkchan
f50667f0ee Rename ARegisters to AThreadState 2018-02-18 16:28:07 -03:00
gdkchan
74e0ac27ef Minor cpu fixes 2018-02-18 16:01:21 -03:00
gdkchan
1e37e0b1f5 Add MLS (vector) instruction, fix mistake introduced on last commit 2018-02-18 02:13:42 -03:00
gdkchan
c06940b130 Fix for some SIMD issues 2018-02-18 01:57:33 -03:00
Ac_K
160ed83cda HID Implementation (#20)
* Basic HID Implementation

* Basic HID Implementation in Config

* HID Corrections

* HID Corrections 2
2018-02-17 20:54:19 -03:00
gdkchan
d965ccc4ba Add FCVTAS and FCVTAU instructions 2018-02-17 18:59:37 -03:00
gdkchan
0bcdbe852f Add events to shared memory, make it work better with direct memory 2018-02-17 18:36:08 -03:00
gdkchan
028a9f99ab CPU refactoring - move SIMD (scalar and vector) instructions to separate files by category, remove AILConv and use only the methods inside SIMD helper to extract/insert vector elements 2018-02-17 18:06:11 -03:00
Ac_K
10bf1735a6 Update new informations in IAudioOut (#19)
* Update new informations in IAudioOut

* Update IAudioOut.cs
2018-02-15 23:19:29 -03:00