Commit Graph

333 Commits

Author SHA1 Message Date
wheremyfoodat
1f2403c417 Add Luigi's Mansion fw to db (#802) 2025-08-07 21:05:39 +03:00
wheremyfoodat
6d1ef7cb4f Memory rework pt 2 (#801)
* Memory: Rework FCRAM management entirely

Disables a lot of functionality... but I didn't want to commit too much to this commit
Also reworks virtual memory management somewhat (but needs more work)

* Accurately handle MemoryState for virtual memory

Previously all non-free blocks were marked as Reserved

* Memory: Consolidate state and permission changes

Can now use a single function to change either state, permissions, or both
Also merge vmem blocks that have the same state and permissions

* Memory: Fix double reset for FCRAM manager

Fix minor bug with permission tracking

* Memory: Implement Protect operation in ControlMemory

* Memory: Implement Unmap in ControlMemory

Also do a sanity check to make sure the memory region is free for linear allocations

* Memory: Make TLS only 0x200 bytes for each thread

Also move TLS to Base region

* RO: Unmap CROs when unloaded

Thanks @noumidev

* Kernel: Return used app memory for Commit ResourceLimit

Not quite correct, but nothing to be done until process management is improved
Also remove the stack limit for CXIs (thanks amogus)

* Kernel: Report used app memory for GetProcessInfo 2

Not really correct, but it should be accurate for applications at least

* Formatting changes

* Initial fastmem support

* PCSX2 fastmem depression

* Move away from PCSX2 fastmem

* Add enum_flag_ops.hpp

* Finally building on Windows

* Almost got a PoC

* Fix arm64 builds

* This somehow works

* This also works...

* Properly fix fastmem

* Add free region manager

* Update boost

* Add ScopeExit

* Comment out asserts on Linux/Mac/Android

* Comment out ASSERT_MSG asserts too

* Fix derp

* Attempt to fix Android

* Disable fastmem on Android

* Fix Android again maybe pt 2

* android pls

* AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

* AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA

* Update host_memory.cpp

* Properly reset memory arena on reset

* Proper ashmem code for Android

* more

* Add temporary Android buildjet script for faster prototype builds

* Fix fastmem (again)

* Clean up shared memory

* Remove Android BuildJet runner

* a

* Revert "a"

This reverts commit 5443ad6f2a794c19c9b1a1567ca1c7f58eed78cd.

* Re-add ELF support

* Re-add 3DSX support

* GetSystemInfo, GetProcessInfo: Memory sizes should be in bytes

* Update Boost

* Update metal-cpp

* Fix metal renderer compilation

* Fix fastmem mapping

* Clean up fastmem code

* Fix oopsie again

* Emulator: Reorder struct

* Kernel types: Cleanup

* Cleanup

* More cleanup

* Make invalid mprotects warn instead of panicking

* Add setting for toggling fastmem

* More cleanup

* Properly initialize BSS to zeroes

* Remove unused code

* Formatting

* Cleanup

* Memory/CRO: Workaround for Pokemon XY

* NCSD loader: Fix BSS (again)

* NCSD loader: Fix BSS (again) (again)

* More memory fixes

* Memory: Remove unused code

* FS: Warn on unimplemented functions instead of panic

* Update software_keyboard.cpp

* Libretro: Add fastmem option

* FRD: Stub SaveLocalAccountData

---------

Co-authored-by: PSI-Rockin <PSI-Rockin@users.noreply.github.com>
2025-08-07 20:18:09 +03:00
wheremyfoodat
81f37e1699 Qt: Allow rebinding keyboard controls (#779)
* Initial input UI draft

Co-Authored-By: Paris Oplopoios <parisoplop@gmail.com>

* More keybinding work

Co-Authored-By: Paris Oplopoios <parisoplop@gmail.com>

* Nit

Co-Authored-By: Paris Oplopoios <parisoplop@gmail.com>

* More nits

Co-Authored-By: Paris Oplopoios <parisoplop@gmail.com>

---------

Co-authored-by: Paris Oplopoios <parisoplop@gmail.com>
2025-07-18 04:08:08 +03:00
wheremyfoodat
8ba3b1ceca CECD: Stub GetChangeStateEventHandle (#776)
* CECD: Stub GetChangeStateEventHandle

* More CECD
2025-07-08 02:18:13 +03:00
wheremyfoodat
c0948f4235 Upgrade Lua service intercepts (#775)
Co-authored-by: Théo B. <16072534+LiquidFenrir@users.noreply.github.com>
2025-07-07 11:52:57 +03:00
wheremyfoodat
8e20bd6220 Long overdue clang-format pass on most of the project (#773) 2025-07-06 18:25:20 +03:00
wheremyfoodat
162e73bfd2 Clean up service intercepts 2025-07-04 02:11:23 +03:00
wheremyfoodat
228068901b Add system call intercepts to Lua 2025-07-03 13:02:10 +03:00
wheremyfoodat
620e3699ec HID/IR: Cleanup and minor fixes (#768) 2025-07-03 03:47:06 +03:00
wheremyfoodat
2e148ae997 Merge pull request #767 from wheremyfoodat/cpp
Initial support for CirclePad Pro/New 3DS controls
2025-07-03 03:39:12 +03:00
wheremyfoodat
dc7f8a48bd IR: Move to scheduler 2025-07-03 02:42:43 +03:00
wheremyfoodat
b2904f391f IR: Deglobalize receiveBuffer 2025-07-03 01:41:43 +03:00
wheremyfoodat
0ab8a6d956 More CirclePad Pro improvements 2025-07-03 01:33:47 +03:00
wheremyfoodat
935e088ca1 More CPP fixes 2025-07-02 21:56:12 +03:00
wheremyfoodat
10d11cb3c9 Clean up CirclePad Pro state 2025-07-01 02:32:40 +03:00
wheremyfoodat
382c0f953d Initial CPP implementation 2025-07-01 01:44:55 +03:00
wheremyfoodat
eb4e7573da Stub srv:PublishToSubscriber (#766) 2025-06-30 19:41:42 +03:00
wheremyfoodat
da797831ba Add more HLE service calls for eshop (#721) 2025-02-10 01:00:12 +02:00
wheremyfoodat
4cfc5fb32a Make system language configurable 2024-12-10 20:28:49 +02:00
wheremyfoodat
12f5b6bc98 More PTM stuff
Co-Authored-By: Noumi <139501014+noumidev@users.noreply.github.com>
2024-12-10 19:27:55 +02:00
wheremyfoodat
dc80828397 Fix typo (#680)
Co-authored-by: Noumi <139501014+noumidev@users.noreply.github.com>
2024-12-10 18:52:53 +02:00
wheremyfoodat
cc669d7cab FS: Stub card SPI and some other things 2024-12-09 19:08:30 +02:00
wheremyfoodat
055dbc7fb6 FS: Stub TWL_SOUND 2024-12-08 22:49:46 +02:00
wheremyfoodat
b436fdca64 FS: Stub TWL_PHOTO 2024-12-08 22:33:14 +02:00
wheremyfoodat
7e51f50999 Add DSP firmware database 2024-11-30 23:34:38 +02:00
wheremyfoodat
18f3865f8b Add option to print DSP fw 2024-11-30 21:51:46 +02:00
wheremyfoodat
04d047ff75 Some formatting 2024-11-22 02:48:32 +02:00
wheremyfoodat
8c80099339 Implement shared font relocation 2024-10-22 19:13:25 +03:00
wheremyfoodat
c772b1c702 Initial accelerometer support 2024-08-15 17:31:55 +03:00
wheremyfoodat
d208c24c0c Implement controller gyroscope in SDL 2024-08-14 22:35:02 +03:00
wheremyfoodat
0f80d0af7a Rename Handle to HorizonHandle, add metal-cpp submodule, format 2024-07-23 15:22:15 +03:00
wheremyfoodat
1c9a3ac3d3 Add Y2R event delay 2024-07-02 15:30:38 +03:00
wheremyfoodat
8c296905f4 Qt: Add support for dumping DSP firmware 2024-04-26 00:54:21 +03:00
Paris Oplopoios
3270cfe602 First step towards configurable keyboard mappings (#464)
* Configurable keyboard mappings

* Cleanup

* Cleanup

* Biggest mistake of my career

* format

* Fix naming convention

---------

Co-authored-by: wheremyfoodat <44909372+wheremyfoodat@users.noreply.github.com>
2024-03-21 15:54:18 +02:00
wheremyfoodat
048eca557e Merge pull request #439 from wheremyfoodat/y2r-stubs
Y2R: Stub IsFinishedSending/Receiving functions
2024-03-07 18:17:56 +00:00
wheremyfoodat
361172b4de GSP_GPU: Implement ReadHwRegs 2024-03-07 00:09:41 +00:00
wheremyfoodat
3505bf0df9 Y2R: Stub IsFinishedSending/Receiving functions 2024-03-06 00:37:12 +00:00
wheremyfoodat
f7c6ec3b57 Properly handle DSP interrupts in HLE 2024-02-19 18:50:41 +02:00
wheremyfoodat
f58354af06 Update DSP semaphore on semaphore event signal
Fixes Pokemon X and other DSP-needy games...
2024-02-18 03:54:00 +02:00
wheremyfoodat
5dd3c02ffb Moar Teak LLE
Co-Authored-By: PSISP <12768103+psi-rockin@users.noreply.github.com>
2024-02-17 03:48:37 +02:00
wheremyfoodat
363c71e66c Hook DSP interface to DSP service HLE
Co-Authored-By: PSISP <12768103+psi-rockin@users.noreply.github.com>
2024-02-17 01:36:10 +02:00
wheremyfoodat
8fc61769ab Implement PTM::GetPedometerState 2024-01-25 02:31:01 +02:00
wheremyfoodat
29494efd94 Stub GSP::GPU::RestoreVramSysArea 2024-01-24 22:21:17 +02:00
wheremyfoodat
c108da5e02 Moar appletting 2024-01-24 18:51:44 +02:00
wheremyfoodat
313620cad9 Implement SDMC Write-Only archive 2024-01-23 21:56:24 +02:00
wheremyfoodat
76a14b3bae Implement CAM::GetMaxBytes/SetTransferBytes 2024-01-23 19:20:56 +02:00
wheremyfoodat
194f29206b Stub Y2R::SetSendingYUV 2024-01-23 18:31:41 +02:00
wheremyfoodat
707b11ccd8 Add CAM::StartCapture 2024-01-23 18:23:16 +02:00
wheremyfoodat
442ae3a210 Add CAM::SetReceiving, fix ports 2024-01-23 18:10:18 +02:00
wheremyfoodat
a3fda72f88 Add FS::SdmcArchiveResource 2024-01-23 16:38:18 +02:00