mirror of
https://github.com/hacks-guide/Guide_3DS.git
synced 2025-08-28 18:59:50 +02:00
Move assets to VitePress
This commit is contained in:
197
docs/public/assets/config.ini
Normal file
197
docs/public/assets/config.ini
Normal file
@@ -0,0 +1,197 @@
|
||||
; This configuration file was automatically generated by Luma3DS v13.1.1
|
||||
|
||||
[meta]
|
||||
; Do not edit these two lines.
|
||||
config_version_major = 3
|
||||
config_version_minor = 12
|
||||
|
||||
[boot]
|
||||
; Options appearing on the Luma3DS initial boot menu
|
||||
; (save for 'splash_duration_ms').
|
||||
|
||||
; If enabled (= 1), the selected emuNAND will be launched
|
||||
; on boot. Otherwise, sysNAND will be launched instead.
|
||||
; Hold L on boot to switch between sysNAND and emuNAND.
|
||||
; Hold Up/Right/Down/Left to select emuNAND no. 1/2/3/4.
|
||||
autoboot_emunand = 0
|
||||
|
||||
; Enable loading external FIRMs and system modules from
|
||||
; Luma3DS's folders. Usually not needed. Refer to wiki
|
||||
; for further details.
|
||||
enable_external_firm_and_modules = 0
|
||||
|
||||
; Enable multiple game patching functions: locale
|
||||
; emulation, IPS support, LayeredFS, and more.
|
||||
enable_game_patching = 0
|
||||
|
||||
; Redirect application threads that would spawn on core1,
|
||||
; to core2 (which is an extra CPU core for applications
|
||||
; that usually remains unused). New 3DS only.
|
||||
; This improves the performance of very demanding games (those
|
||||
; that use 3x clockrate and L2C by default), like Pokémon US/UM
|
||||
; by about 10%. Can break some games and other applications.
|
||||
; Context: core1 is the core where all sysmodules (device drivers,
|
||||
; etc.) except head tracking run on. Applications can request to
|
||||
; run threads on that core a percentage of the total CPU time,
|
||||
; but this reduces the time sysmodules can run. This patch
|
||||
; prevents this from happening.
|
||||
app_syscore_threads_on_core_2 = 0
|
||||
|
||||
; Enables showing the current NAND in System Settings:
|
||||
; - Sys = sysNAND
|
||||
; - Emu = emuNAND 1
|
||||
; - EmuX = emuNAND X
|
||||
; You can also opt to display your own custom string
|
||||
; (max 19 characters) by creating and writing to the
|
||||
; following files: /luma/customversion_NANDtype.txt
|
||||
; where NANDtype is one of: sys, emu, emu2, emu3, emu4.
|
||||
show_system_settings_string = 1
|
||||
|
||||
; Enables showing the GBA boot animation when launching
|
||||
; GBA games.
|
||||
show_gba_boot_screen = 0
|
||||
|
||||
; Default emuNAND number (1 to 4) to be booted when
|
||||
; no directional buttons are pressed.
|
||||
default_emunand_number = 1
|
||||
|
||||
; Brightness level the Luma3DS boot menu should use
|
||||
; (1 to 4).
|
||||
brightness_level = 4
|
||||
|
||||
; When to display the splash screen. One of:
|
||||
; "off", "before payloads", "after payloads".
|
||||
splash_position = off
|
||||
|
||||
; The duration of the splash screen, in milliseconds.
|
||||
splash_duration_ms = 3000
|
||||
|
||||
; Number of PIN digits (0, 4, 6, 8).
|
||||
pin_lock_num_digits = 0
|
||||
|
||||
; N3DS mode to use when launching applications. One of:
|
||||
; "off", "clock", "l2", "clock+l2". Does not apply to New 3DS
|
||||
; exclusive/enhanced games. Clock+L2 can cause issues as
|
||||
; it can reveal hidden bugs within some games.
|
||||
app_launch_new_3ds_cpu = off
|
||||
|
||||
; Autoboot mode, one of:
|
||||
; - "off"
|
||||
; - "3ds": boot into the 3DS title specfied by hbldr_3dsx_titleid
|
||||
; - "dsi": boot into the DSi title specified by autoboot_dsi_titleid
|
||||
autoboot_mode = off
|
||||
|
||||
[rosalina]
|
||||
; Rosalina options
|
||||
|
||||
; Title ID of the application to take over when launching
|
||||
; boot.3dsx.
|
||||
hbldr_3dsx_titleid = 000400000d921e00
|
||||
|
||||
; Button combo to open the Rosalina menu.
|
||||
rosalina_menu_combo = X+Y
|
||||
|
||||
; Plugin loader enabled state.
|
||||
plugin_loader_enabled = 0
|
||||
|
||||
; NTP timezone offset, in minutes (-779 to 899).
|
||||
ntp_tz_offset_min = 0
|
||||
|
||||
[screen_filters]
|
||||
; For screen filters, we use the GPU's color correction lookup
|
||||
; tables (one LUT for each color component).
|
||||
; These LUTs replace each color intensity by the corresponding
|
||||
; value in the LUT (0 to 255).
|
||||
; The following formula is used:
|
||||
; y_c = (contrast * whitepoint_c(cct) * x_c + brightness) ^ gamma
|
||||
; where:
|
||||
; * x_c = intensity_c / 255, or x = 1 - (intensity_c / 255),
|
||||
; depending on whether or not colors are to be inverted
|
||||
; * gamma is skipped if polynomial output is <= 0
|
||||
; * output is multiplied by 255, rounded, and clamped
|
||||
|
||||
; Correlated Color Temperature (CCT) for the screen filters
|
||||
; (1000 to 25100).
|
||||
screen_filters_top_cct = 6500
|
||||
screen_filters_bot_cct = 6500
|
||||
|
||||
; Gamma adjustment for the screen filters (0 to 8).
|
||||
; Increasing this above 1 will make colors look more saturated.
|
||||
screen_filters_top_gamma = 1
|
||||
screen_filters_bot_gamma = 1
|
||||
|
||||
; Contrast adjustment for the screen filters (0 to 255).
|
||||
screen_filters_top_contrast = 1
|
||||
screen_filters_bot_contrast = 1
|
||||
|
||||
; Brightness adjustment for the screen filters (-1 to 1).
|
||||
screen_filters_top_brightness = 0
|
||||
screen_filters_bot_brightness = 0
|
||||
|
||||
; Whether or not the screen filters should invert colors.
|
||||
screen_filters_top_invert = 0
|
||||
screen_filters_bot_invert = 0
|
||||
|
||||
[autoboot]
|
||||
; Autoboot options
|
||||
|
||||
; DSi title ID of the application to use when autobooting
|
||||
; into DSi mode. The title must be installed on NAND.
|
||||
autoboot_dsi_titleid = 0003000448424c41
|
||||
|
||||
; Memory layout to use when autobooting into 3DS homebrew:
|
||||
; - 0: Normal memory layout (64 MB of application memory on O3DS,
|
||||
; 124 MB on N3DS)
|
||||
; - 1: Dev1 memory layout (96 MB / 178 MB)
|
||||
; - 2: Dev2 memory layout (80 MB / 124 MB)
|
||||
; - 3: Dev3 memory layout (72 MB / 124 MB)
|
||||
; - 4: Dev4 memory layout (32 MB / 124 MB)
|
||||
; Please note that using anything other than the normal memory
|
||||
; layout here will cause Home Menu to crash if it launched
|
||||
; (usually via the HOME button or the POWER button - just
|
||||
; use the poweroff/reboot option from Rosalina menu instead).
|
||||
autoboot_3ds_app_mem_type = 0
|
||||
|
||||
[misc]
|
||||
; "Hidden" miscellaneous options.
|
||||
|
||||
; Force routing audio output to headphones or speakers.
|
||||
; One of "off", "headphones", or "speakers".
|
||||
; Currently only for NATIVE_FIRM.
|
||||
; Due to software limitations, this gets undone if you actually
|
||||
; insert and/or remove HPs (just enter then exit sleep mode if
|
||||
; this happens).
|
||||
; Also gets bypassed for camera shutter sound.
|
||||
force_audio_output = off
|
||||
|
||||
; Override the volume slider.
|
||||
; Should be a value between -1 and 100.
|
||||
; A value of -1 disables the feature.
|
||||
; A value of 0 means volume muted.
|
||||
; A value of 100 means maximum volume.
|
||||
; Needs Rosalina loaded to be applied.
|
||||
volume_slider_override = -1
|
||||
|
||||
; Make the console be always detected as a development unit,
|
||||
; and conversely (Arm11-side only).
|
||||
; This breaks online features, amiibo and retail CIAs, but
|
||||
; allows installing and booting some developer software.
|
||||
; Only enable this if you know what you are doing!
|
||||
use_dev_unitinfo = 0
|
||||
|
||||
; Enables replacing the default convolution-based upscaling
|
||||
; filter used for DS(i) software by the contents of the binary file
|
||||
; /luma/twl_upscaling_filter.bin
|
||||
enable_dsi_external_filter = 0
|
||||
|
||||
; Disables the fatal error exception handlers for the Arm11
|
||||
; CPU. Disabling this will disqualify you from submitting
|
||||
; issues to the Luma3DS repository.
|
||||
disable_arm11_exception_handlers = 0
|
||||
|
||||
; Enables Rosalina, the kernel ext. and sysmodule reimpls
|
||||
; on SAFE_FIRM (New 3DS only). Also suppresses QTM error
|
||||
; 0xF96183FE, allowing to use 8.1-11.3 N3DS on New 2DS XL
|
||||
; consoles.
|
||||
; Only select this if you know what you are doing!
|
||||
enable_safe_firm_rosalina = 0
|
223
docs/public/assets/js/selecting.js
Normal file
223
docs/public/assets/js/selecting.js
Normal file
@@ -0,0 +1,223 @@
|
||||
/*
|
||||
Copyright (C) 2023 Gruetzig
|
||||
Copyright (C) 2023 Nintendo Homebrew
|
||||
|
||||
SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
const DEVICE_N3DS = 1;
|
||||
const DEVICE_O3DS = 0;
|
||||
|
||||
// Possible max minor for each major, major as key
|
||||
const major_minor_map = {
|
||||
0: -1, // invalidate all 0.x
|
||||
1: 1,
|
||||
2: 2,
|
||||
3: 1,
|
||||
4: 5,
|
||||
5: 1,
|
||||
6: 4,
|
||||
7: 2,
|
||||
8: 1,
|
||||
9: 9,
|
||||
10: 7,
|
||||
11: 17
|
||||
}
|
||||
|
||||
// Validate version
|
||||
// CHN/TWN doesn't have new model
|
||||
// KOR/CHN/TWN doesn't have 11.17 currently
|
||||
function validate_version(major, minor, native, region, model) {
|
||||
if (model == DEVICE_N3DS && ["C", "T"].includes(region)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (major == 11 && minor == 17 && ["K", "C", "T"].includes(region)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
const minor_max = major_minor_map[major];
|
||||
if (!isNaN(minor_max) && minor > minor_max) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
// Soundhax
|
||||
// 1.0-11.3
|
||||
function can_soundhax(major, minor, native, region, model) {
|
||||
let do_redirect = false;
|
||||
if(major <= 10) do_redirect = true;
|
||||
else if(major == 11 && minor <= 3) do_redirect = true;
|
||||
|
||||
if(do_redirect) {
|
||||
window.location.href = "installing-boot9strap-(soundhax)";
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
function can_ssloth(major, minor, native, region, model) {
|
||||
let do_redirect = false;
|
||||
if(major == 11) {
|
||||
if(["U", "E", "J"].includes(region)) {
|
||||
if
|
||||
(
|
||||
(minor == 4 && native == 37) ||
|
||||
(minor == 5 && native == 38) ||
|
||||
(minor == 6 && native == 39) ||
|
||||
(minor == 7 && native == 40) ||
|
||||
(minor == 8 && native == 41) ||
|
||||
(minor == 9 && native == 42) ||
|
||||
(minor == 10 && native == 43) ||
|
||||
(minor == 11 && native == 43) ||
|
||||
(minor == 12 && native == 44) ||
|
||||
(minor == 13 && native == 45)
|
||||
) {
|
||||
do_redirect = true;
|
||||
}
|
||||
} else if (region == "K") {
|
||||
if
|
||||
(
|
||||
(model == DEVICE_N3DS && minor == 4 && native == 33) ||
|
||||
(model == DEVICE_N3DS && minor == 5 && native == 34) ||
|
||||
(model == DEVICE_N3DS && minor == 6 && native == 35) ||
|
||||
(model == DEVICE_N3DS && minor == 7 && native == 35) ||
|
||||
(model == DEVICE_N3DS && minor == 8 && native == 35) ||
|
||||
(minor == 9 && native == 36) ||
|
||||
(minor == 10 && native == 37) ||
|
||||
(minor == 12 && native == 38) ||
|
||||
(minor == 13 && native == 39)
|
||||
) {
|
||||
do_redirect = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if(do_redirect) {
|
||||
window.location.href = "installing-boot9strap-(ssloth-browser)";
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
// safecerthax
|
||||
// O3DS only, all regions
|
||||
// Works on 1.0 to 11.14
|
||||
// Soundhax and SSLoth should be validated before this
|
||||
function can_safecerthax(major, minor, native, region, model) {
|
||||
let do_redirect = false;
|
||||
if (model == DEVICE_O3DS) {
|
||||
if (major <= 10) do_redirect = true;
|
||||
else if (major == 11 && minor <= 14) do_redirect = true;
|
||||
}
|
||||
|
||||
if(do_redirect) {
|
||||
window.location.href = "installing-boot9strap-(safecerthax)";
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
// super-skaterhax
|
||||
// N3DS only
|
||||
// EUR/JPN/USA: 11.15-11.17
|
||||
// KOR: 11.15-11.16 only, KOR does not have 11.17
|
||||
// CHN/TWN has no N3DS
|
||||
function can_superskaterhax(major, minor, native, region, model) {
|
||||
let do_redirect = false;
|
||||
// N3DS only
|
||||
if(model == DEVICE_N3DS) {
|
||||
if (major == 11) {
|
||||
if (minor >= 15) do_redirect = true;
|
||||
}
|
||||
}
|
||||
|
||||
if (do_redirect) {
|
||||
window.location.href = "installing-boot9strap-(super-skaterhax)";
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
// MSET9
|
||||
// 11.4-11.17
|
||||
function can_mset9(major, minor, native, region, model) {
|
||||
|
||||
// Exploit supports 11.4 or later
|
||||
if(major == 11 && minor >= 4) {
|
||||
window.location.href = "installing-boot9strap-(mset9)"
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
/*
|
||||
Reality:
|
||||
|
||||
Redirects page based on input from user.
|
||||
Input:
|
||||
- System version
|
||||
- O3DS/N3DS
|
||||
|
||||
Exploits are compatibility-checked in the following order:
|
||||
|
||||
- Soundhax
|
||||
- 1.0 - 11.3
|
||||
- All regions
|
||||
- All models
|
||||
- SSLoth-Browser
|
||||
- 11.4 - 11.13 with matching NVer for each version
|
||||
- USA, JPN, EUR, KOR
|
||||
- All models
|
||||
- safecerthax
|
||||
- 11.4 - 11.14
|
||||
- All regions
|
||||
- O3DS only
|
||||
- super-skaterhax
|
||||
- 11.15 - 11.17
|
||||
- USA / EUR / JPN / KOR
|
||||
- N3DS only
|
||||
- MSET9
|
||||
- 11.4 - 11.17
|
||||
- All regions
|
||||
- All models
|
||||
*/
|
||||
function redirect() {
|
||||
const major = document.getElementById("major").value;
|
||||
const minor = document.getElementById("minor").value;
|
||||
const nver = document.getElementById("nver").value;
|
||||
const region = document.getElementById("region").value;
|
||||
const isN3DS = document.getElementById("new3DS").checked;
|
||||
const isO3DS = document.getElementById("old3DS").checked;
|
||||
document.getElementById("result_noneSelected").style.display = "none";
|
||||
document.getElementById("result_invalidVersion").style.display = "none";
|
||||
if ((!isN3DS) && (!isO3DS)) {
|
||||
document.getElementById("result_noneSelected").style.display = "block";
|
||||
return;
|
||||
}
|
||||
|
||||
// Realistically only one of these should be possible with the given elements
|
||||
let model = -1;
|
||||
if(isO3DS) model = DEVICE_O3DS
|
||||
else if(isN3DS) model = DEVICE_N3DS;
|
||||
|
||||
if (!validate_version(major, minor, nver, region, model)) {
|
||||
document.getElementById("result_invalidVersion").style.display = "block";
|
||||
return;
|
||||
}
|
||||
|
||||
const redirected = [
|
||||
can_soundhax,
|
||||
can_ssloth,
|
||||
can_safecerthax,
|
||||
can_superskaterhax,
|
||||
can_mset9
|
||||
].some(func => func(major, minor, nver, region, model));
|
||||
if (redirected) return true;
|
||||
|
||||
// if it actually got to this point, there is no exploit available.
|
||||
document.getElementById("result_methodUnavailable").style.display = "block";
|
||||
return false;
|
||||
}
|
BIN
docs/public/assets/steelhax-release.zip
Normal file
BIN
docs/public/assets/steelhax-release.zip
Normal file
Binary file not shown.
BIN
docs/public/assets/torrents.zip
Normal file
BIN
docs/public/assets/torrents.zip
Normal file
Binary file not shown.
Reference in New Issue
Block a user