Commit graph

2238 commits

Author SHA1 Message Date
Liam
545875eaa1 k_server_session: preliminary support for userspace server sessions 2022-10-11 18:40:40 -04:00
Liam
a048c5ca0f Add implementation of svcCreateSession 2022-10-11 18:15:45 -04:00
Liam
47fc168030 common: remove "yuzu:" prefix from thread names 2022-10-03 18:43:56 -04:00
bunnei
f5e9f8c9fe Merge pull request #8637 from liamwhite/bad-interrupts
kernel: unlayer CPU interrupt handling
2022-08-07 17:48:55 -07:00
Andrea Pappacoda
6a2efdda2f chore: make yuzu REUSE compliant
[REUSE] is a specification that aims at making file copyright
information consistent, so that it can be both human and machine
readable. It basically requires that all files have a header containing
copyright and licensing information. When this isn't possible, like
when dealing with binary assets, generated files or embedded third-party
dependencies, it is permitted to insert copyright information in the
`.reuse/dep5` file.

Oh, and it also requires that all the licenses used in the project are
present in the `LICENSES` folder, that's why the diff is so huge.
This can be done automatically with `reuse download --all`.

The `reuse` tool also contains a handy subcommand that analyzes the
project and tells whether or not the project is (still) compliant,
`reuse lint`.

Following REUSE has a few advantages over the current approach:

- Copyright information is easy to access for users / downstream
- Files like `dist/license.md` do not need to exist anymore, as
  `.reuse/dep5` is used instead
- `reuse lint` makes it easy to ensure that copyright information of
  files like binary assets / images is always accurate and up to date

To add copyright information of files that didn't have it I looked up
who committed what and when, for each file. As yuzu contributors do not
have to sign a CLA or similar I couldn't assume that copyright ownership
was of the "yuzu Emulator Project", so I used the name and/or email of
the commit author instead.

[REUSE]: https://reuse.software

Follow-up to b2eb103829
2022-07-27 12:53:49 +02:00
Liam
3edb108f4b kernel: unlayer CPU interrupt handling 2022-07-25 12:14:15 -04:00
Morph
b8cff68056 Merge pull request #8549 from liamwhite/kscheduler-sc
kernel: use KScheduler from Mesosphere
2022-07-25 12:00:31 -04:00
Kelebek1
be1f5f1d9f Project Andio 2022-07-22 01:11:32 +01:00
Merry
4267739d06 KCodeMemory: Mark virtual methods as override 2022-07-15 10:39:58 +01:00
Liam
dbb1312876 kernel: Ensure all uses of disable_count are balanced 2022-07-14 22:47:18 -04:00
Liam
e2be660909 kernel: be more careful about initialization path for HLE threads 2022-07-14 22:47:18 -04:00
Liam
21e2063d7d kernel: fix single-core preemption points 2022-07-14 22:47:18 -04:00
Liam
61b26b386d kernel: fix issues with single core mode 2022-07-14 22:47:18 -04:00
Liam
e47bced65d kernel: use KScheduler from mesosphere 2022-07-14 22:47:18 -04:00
bunnei
c18bf04dbf Merge pull request #8559 from liamwhite/waiter-list
kernel: fix usage of waiter_list in Finalize
2022-07-11 12:10:01 -07:00
Kelebek1
f66a68fa1b PR 2022-07-10 08:29:37 +01:00
Kelebek1
03de5e053d Rework CoreTiming 2022-07-10 06:59:40 +01:00
Liam
12948cf615 kernel: fix usage of waiter_list in Finalize 2022-07-09 18:54:54 -04:00
liamwhite
79d631b630 Merge pull request #8502 from liamwhite/end-wait
kernel: clean up waiting implementation
2022-07-07 17:31:49 -04:00
liamwhite
786963fac7 Merge pull request #8532 from liamwhite/fiber-supplements
common/fiber: make fibers easier to use
2022-07-05 18:20:39 -04:00
Liam
e551960935 common/fiber: make fibers easier to use 2022-07-02 12:33:49 -04:00
Liam
61ef65ab25 cpu_manager: properly check idle on return from preemption 2022-06-30 16:54:05 -04:00
Morph
d3da378c46 Merge pull request #8512 from german77/nnResult
Replace multiple names with a better name
2022-06-28 16:59:33 -07:00
bunnei
74ebab21ce Merge pull request #8504 from comex/mesosphere-current-process
Support `InfoType_MesosphereCurrentProcess`
2022-06-27 13:05:07 -07:00
german77
093680269b core: kernel: Replace instances of KPageLinkedList with KPageGroup 2022-06-26 20:21:45 -05:00
german77
c7890ebccc core: Replace all instances of ResultCode with Result 2022-06-26 20:21:37 -05:00
comex
0c3a934b6e Re-add missing case and braces, and trim whitespace 2022-06-25 18:01:56 -07:00
comex
593f978ad2 Update src/core/hle/kernel/svc.cpp
Co-authored-by: liamwhite <liamwhite@users.noreply.github.com>
2022-06-25 18:00:29 -07:00
comex
9decdbabab Support InfoType_MesosphereCurrentProcess 2022-06-25 16:23:23 -07:00
Liam
f70a3ada00 kernel: clean up waiting implementation 2022-06-25 13:36:14 -04:00
Liam
83f1ecb73b kernel: make current thread pointer thread local 2022-06-23 00:28:00 -04:00
bunnei
4548e74d3f Merge pull request #8491 from Morph1984/extra-assert
KPageTable: Remove extraneous assert
2022-06-22 14:47:07 -07:00
bunnei
3f3f5aa93b Merge pull request #8483 from liamwhite/fire-emblem-three-semaphores
kernel: wait for threads to stop on pause
2022-06-22 14:46:33 -07:00
Morph
72b78f9c32 KPageTable: Remove extraneous assert
Since start is always 0 and VAddr is unsigned, we can safely remove this assert.
2022-06-21 21:28:54 -04:00
bunnei
f4201ec44e Merge pull request #8432 from liamwhite/watchpoint
core/debugger: memory breakpoint support
2022-06-21 16:04:57 -07:00
bunnei
d1d50f28c8 Merge pull request #8468 from liamwhite/dispatch-tracking
kernel: fix some uses of disable_count
2022-06-21 15:30:27 -07:00
Liam
808ad9eb9f kernel: wait for threads to stop on pause 2022-06-18 16:54:33 -04:00
Nikita Strygin
5f5739ea2c Implement ExitProcess svc
Currently this just stops all the emulation
This works under assumption that only application will try to use
ExitProcess, with services not touching it
If application exits - it quite makes sense to end the emulation
2022-06-16 21:35:34 +03:00
Liam
8d2abc710c core/debugger: memory breakpoint support 2022-06-16 13:18:07 -04:00
Liam
6d5cc6b2a2 kernel: fix some uses of disable_count 2022-06-15 20:53:49 -04:00
Fernando S
1d8e860c47 Merge pull request #8457 from liamwhite/kprocess-suspend
kernel: implement KProcess suspension
2022-06-16 02:41:12 +02:00
Mai
8894ac44d2 Merge pull request #8464 from liamwhite/break-debug
kernel: notify debugger on break SVC
2022-06-15 11:55:54 -04:00
Liam
0755b274fa kernel: notify debugger on break SVC 2022-06-14 21:06:23 -04:00
Liam
a6c1036ddc core: centralize profile scope for Dynarmic 2022-06-14 18:19:04 -04:00
Liam
59a6d88625 kernel: implement KProcess suspension 2022-06-14 10:04:11 -04:00
Liam
f91e2f2742 kernel: fix passthrough of local captures in lambda 2022-06-13 20:09:32 -04:00
Liam
72abaf896f kernel: ensure class token lambda exit is unreachable 2022-06-13 20:09:00 -04:00
Liam
32ba68cf0e kernel: fix inconsistency in AutoObjectTraits macro definitions 2022-06-13 20:09:00 -04:00
Liam
c1771c98f3 common: Change semantics of UNREACHABLE to unconditionally crash 2022-06-13 20:09:00 -04:00
bunnei
9cd39d1880 Merge pull request #8388 from liamwhite/simpler-pause
CpuManager: simplify pausing
2022-06-13 15:48:03 -07:00