mirror of
https://github.com/LumaTeam/Luma3DS.git
synced 2026-02-22 18:04:38 +00:00
This commit adds all the changes made to the 3GX plugin loader fork of Luma3DS. The most important features are:
- Add 3GX plugin loader support. New service added to rosalina: plg:ldr
- Add svcControlProcess, svcControlMemoryUnsafe and improve svcMapProcessMemoryEx (breaking change)
- Allow applications to override certain configurations depending on their needs:
- Disable core2 thread redirection
- Disable game patching for the next app
- Force New 3DS speedup
- Force next application in a specific memory mode
- Block the opening of the Rosalina menu
- Add GDB commands to list all process handles and catch all SVC (latter is for IDA Pro as gdb client supports it)
- Other changes necessary for plugins to work properly. Please check changed files in this PR for more details.
---------
Co-authored-by: PabloMK7 <hackyglitch@gmail.com>
Co-authored-by: Nanquitas <nath.doidi@gmail.com>
Co-authored-by: TuxSH <1922548+TuxSH@users.noreply.github.com>
27 lines
910 B
C
27 lines
910 B
C
/*
|
|
* This file is part of Luma3DS.
|
|
* Copyright (C) 2016-2020 Aurora Wright, TuxSH
|
|
*
|
|
* SPDX-License-Identifier: (MIT OR GPL-2.0-or-later)
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
#include "gdb.h"
|
|
|
|
#define GDB_REMOTE_COMMAND_HANDLER(name) GDB_HANDLER(RemoteCommand##name)
|
|
#define GDB_DECLARE_REMOTE_COMMAND_HANDLER(name) GDB_DECLARE_HANDLER(RemoteCommand##name)
|
|
|
|
GDB_DECLARE_REMOTE_COMMAND_HANDLER(ConvertVAToPA);
|
|
GDB_DECLARE_REMOTE_COMMAND_HANDLER(SyncRequestInfo);
|
|
GDB_DECLARE_REMOTE_COMMAND_HANDLER(TranslateHandle);
|
|
GDB_DECLARE_REMOTE_COMMAND_HANDLER(ListAllHandles);
|
|
GDB_DECLARE_REMOTE_COMMAND_HANDLER(GetMmuConfig);
|
|
GDB_DECLARE_REMOTE_COMMAND_HANDLER(GetMemRegions);
|
|
GDB_DECLARE_REMOTE_COMMAND_HANDLER(FlushCaches);
|
|
GDB_DECLARE_REMOTE_COMMAND_HANDLER(ToggleExternalMemoryAccess);
|
|
GDB_DECLARE_REMOTE_COMMAND_HANDLER(CatchSvc);
|
|
GDB_DECLARE_REMOTE_COMMAND_HANDLER(GetThreadPriority);
|
|
|
|
GDB_DECLARE_QUERY_HANDLER(Rcmd);
|