Commit Graph

478 Commits

Author SHA1 Message Date
f9f111bc85 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
a38a72b062 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
a8ba340dde Improved logging (#103) 2018-04-24 15:57:39 -03:00
b9af34f3dd [HLE/Kernel] Somewhat improved sync primitives 2018-04-18 23:52:36 -03:00
b334aab435 Add special log for stubs (#81)
* add stub loglevel

* add log for stubbed methods
2018-04-16 21:24:42 -03:00
494e6dfa1e [GPU] Set frame buffer texture size to window size 2018-04-14 01:31:27 -03:00
bbcad307bd 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
435f9ffad8 [HLE] Fix hid issues on some games 2018-04-13 17:39:45 -03:00
c8c86a3854 Fix for current framebuffer issues (#78)
[GPU] Fix some of the current framebuffer issues
2018-04-13 15:12:58 -03:00
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
081ede2a9a Support the .romfs extension aswell 2018-04-06 02:02:13 -03:00
d4a3e8267b Allow enabling/disabling memory checks on config file 2018-03-20 18:42:13 -03:00
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
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
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
4038e63de1 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
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
8dcffe6a51 Fix hid touch screen timestamp, add more log info 2018-03-04 00:06:44 -03:00
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
e174100474 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
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
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
2ed733b1d5 Somewhat better NvFlinger (I guess) (fixes #30) 2018-02-23 18:48:27 -03:00
1b33e2f1d4 implement single tap touchscreen (#34) 2018-02-22 10:28:27 -03:00
b2f733da78 FspSrv improvements, also fix ImageEnd for NROs without a MOD0 section 2018-02-21 18:56:52 -03:00
62b827f474 Split main project into core,graphics and chocolarm4 subproject (#29) 2018-02-20 17:09:23 -03:00
cb665bb715 Add FDIV (vector) instruction 2018-02-20 16:04:22 -03:00
b4a1cfde10 Add SMULL (vector), USHR (scalar), FCCMPE, FNMSUB, fixed a some instructions 2018-02-20 14:39:03 -03:00
01b7538560 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
068f9bff2e Misc language usage simplifications (#26)
un-nest some logic
add some xmldoc
simplify ini parse
2018-02-20 07:54:00 -03:00
dff28df84e Resize display to window size (#27) 2018-02-20 07:52:35 -03:00
1039797c30 Implement Zip1, Zip2 (#25) 2018-02-20 07:41:55 -03:00
770cb4b655 Somewhat better scheduler I guess 2018-02-19 16:37:13 -03:00
f35d286c8d Rename ARegisters to AThreadState 2018-02-18 16:28:07 -03:00
5a0396efaf Minor cpu fixes 2018-02-18 16:01:21 -03:00
3872ae034d Add MLS (vector) instruction, fix mistake introduced on last commit 2018-02-18 02:13:42 -03:00
1c44d9f66d Fix for some SIMD issues 2018-02-18 01:57:33 -03:00
f469b968a8 HID Implementation (#20)
* Basic HID Implementation

* Basic HID Implementation in Config

* HID Corrections

* HID Corrections 2
2018-02-17 20:54:19 -03:00
595e7ee588 Add FCVTAS and FCVTAU instructions 2018-02-17 18:59:37 -03:00
ebddc40550 Add events to shared memory, make it work better with direct memory 2018-02-17 18:36:08 -03:00
161193e113 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
b3e47b5712 Update new informations in IAudioOut (#19)
* Update new informations in IAudioOut

* Update IAudioOut.cs
2018-02-15 23:19:29 -03:00
1bfe6a9c22 Add some tests (#18)
* Add tests

* Add some simple Alu instruction tests

* travis: Run tests

* CpuTest: Add TearDown
2018-02-15 21:04:38 -03:00
1df2c5ce7f Gracefully close the app on exit (#12)
* Gracefully close the app on exit

* Application tear down

instead of calling Environment.Exit(0); do a better tear down of the application
2018-02-15 09:16:16 -03:00
be1d01bf7d Shouldn't have undone this 2018-02-15 01:35:44 -03:00
7c314eadcf Emit CIL directly for more SIMD instructions, add UCVTF (vector, scalar) and UZP2, fix XTN (?) 2018-02-15 01:32:25 -03:00
7c4346685c AInstEmitAluHelper: Simplify EmitAddsVCheck (#14) 2018-02-14 19:01:36 -03:00
7791e1fe36 AInstEmitAluHelper: Simplify EmitSubsCCheck (#15) 2018-02-14 19:01:21 -03:00
7ed1153062 Add SHRN instruction, and fix ADDV 2018-02-14 02:43:21 -03:00
f68696dc4a Made initial implementation of the thread scheduler, refactor Svc to avoid passing many arguments 2018-02-13 23:43:08 -03:00