
Let's not pretend in 2022 that it needed things from rosalina sysmodule - it did not. This moves 3DSX loading from Rosalina to Loader, and also removes all the dependencies Loader had to other Luma3DS components (if kernel ext. is missing, a default config will be used). This means that, as long as you replace Loader to the one in here, you will be able to properly load 3DSX files. Changes: - hb:ldr is now hosted in loader - hb:ldr LoadProcess, PatchExHeaderInfo, DebugNextApplicationByForce: all removed - fix a bug where some malformed 3DSX files were not rejected - grant access to CONFIG11 registers to 3DSX homebrew - move dirty homebrew chainload (when HM. isn't loaded nor loadable) to pm - pm:dbg (ext.) PrepareToChainloadHomebrew: removed
32 lines
1.4 KiB
C
32 lines
1.4 KiB
C
/* This paricular file is licensed under the following terms: */
|
|
|
|
/*
|
|
* This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable
|
|
* for any damages arising from the use of this software.
|
|
*
|
|
* Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it
|
|
* and redistribute it freely, subject to the following restrictions:
|
|
*
|
|
* The origin of this software must not be misrepresented; you must not claim that you wrote the original software.
|
|
* If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required.
|
|
*
|
|
* Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
|
|
* This notice may not be removed or altered from any source distribution.
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
#include <3ds/types.h>
|
|
|
|
/// Default TitleID for 3DSX loading
|
|
#define HBLDR_DEFAULT_3DSX_TID 0x000400000D921E00ULL
|
|
|
|
/// Luma shared config type.
|
|
typedef struct LumaSharedConfig {
|
|
u64 hbldr_3dsx_tid; ///< Title ID to use for 3DSX loading.
|
|
bool use_hbldr; ///< Whether or not Loader should use hb:ldr (reset to true).
|
|
} LumaSharedConfig;
|
|
|
|
/// Luma shared config.
|
|
#define Luma_SharedConfig ((volatile LumaSharedConfig *)(OS_SHAREDCFG_VADDR + 0x800))
|