Corrupt.wiki
  • Videogame corruptions
    • Introduction
    • Communities
    • Safety and Ethics of Corruptions
    • What makes a good corruption?
  • Real-Time Corruptor
    • RTC Discord
    • Download RTC
    • Beginner Guides
      • Tutorial Video Guide
      • Corruption Classroom
      • Cheat Sheet Guide
    • In-Depth Guide
      • Introduction
      • Frequently Asked Questions
      • Simple Mode
      • Concepts and Vocabulary
      • General Parameters
      • Corruption Engines
      • Emulation-centric features
      • Classic Vector Lists
      • Glitch Harvester
      • Blast Editor
      • Blast Generator
      • Virtual Memory Domains
      • VMD Generator (Advanced)
      • Cluster Engine (Advanced)
      • Hotkeys
      • Tips, tricks and quirks
    • More RTC Guides
      • RTCV Dev Startup Guide
      • Running RTCV on Linux
      • How to make Passthrough Lists
      • Sequence Loader Plugin
  • Other Corruptors
    • Classic Corruptors
      • Vinesauce ROM Corruptor
      • VineCorrupt
      • Windows Glitch Harvester
      • Android Vinesauce ROM Corruptor
      • Lesser known corruptors
      • Old Corruptors
    • Scares Scrambler
    • Super Simple Rom Corruptor
    • Cheat Engine
    • Web-Based Corruptors
  • Systems
    • NES
      • Corrupting the NES
      • NES Architechture
      • NES Memory Domains
    • SNES
      • Corrupting the SNES
      • SNES Architechture
      • SNES Memory Domains
      • SNES Audio Tinkering
    • Sega Genesis
      • Corrupting the Sega Genesis
      • Genesis Architecture
      • Genesis Memory Domains
      • Cracking the Checksum Routine
    • N64
      • Corrupting the N64
      • N64 Architecture
      • N64 Memory Domains
      • N64 Basic/Advanced ROM Corruption
      • N64 Expert ROM Corruption
    • Gameboy Advance
      • Corrupting the GBA
      • GBA Architecture
      • GBA Memory Domains
    • Nintendo DS
      • Corrupting the DS
      • MelonDS Memory Domains
      • MelonDS-Specific Lists
      • Rom Corruption (Deprecated)
    • Nintendo 3DS
      • Corrupting the 3DS
      • Memory Domains
    • Gamecube/Wii
      • Corrupting the GC/Wii
      • Dolphin Memory Domains
      • Dolphin-Specific Lists
      • Using a real Wiimote with Dolphin
      • Dolphin Narry's mod (Deprecated)
    • Playstation 1
      • Corrupting the PSX
      • Advanced corruptions
    • Playstation 2
      • Corrupting the PS2
      • PCSX2 Memory Domains
      • PCSX2-specific Lists
    • Playstation 3
      • Playstation 3 Executable Corruptions
    • Xbox 360
      • Xbox 360 Executable Corruptions (Real Console)
      • Xbox 360 Executable Corruptions (Xenia)
    • Nintendo Switch
      • Switch ROM Corruptions
    • Computers & Mobile
      • Corrupting Android Unity games
      • Corrupting Files with FileStub
      • Corrupting PC Games with ProcessStub
      • Corrupting VMware snapshots
    • Java
      • Java Corruptor Plugin
      • Corrupting Minecraft with the Java Corruptor Plugin and FileStub
      • Corrupting Project Zomboid with the Java Corruptor Plugin and FileStub
Powered by GitBook
On this page
  • Corrupting the 3DS
  • About the System
  • Recommended Settings
  • Architecture:

Was this helpful?

  1. Systems
  2. Nintendo 3DS

Corrupting the 3DS

Corrupting the 3DS

About the System

The 3DS is an ARM-based Nintendo handheld console that succeeded the Nintendo DS. It shares many attributes, such as a foldable design, while also adding new features for developers to use. Most importantly, Nintendo added a floating-point processor for enhanced 3D graphics. As such, its corruption process is very similar to other 3D systems, such as the GameCube/Wii and PS2.

As of 5.2.0, the best way to corrupt the 3DS is with Bizhawk via the RTC Launcher. For prior versions, you must use the Citra emulator, which is slower and less stable.

Recommended Settings

Use VMDs extensively

Vector Engine with Default RTC Lists

Limiter: Extended -> Value: Extended

Limiter: One -> Value: Two

Vector Engine with Lists from the Package Downloader: VFP-Specific Lists

Limiter: VFP_Load and store -> Value: ARM_NOP

Limiter: VFP_Math -> Value: ARM_NOP

The custom VFP lists from the Package Downloader are the best for corrupting the 3DS. They provide consistent results without many crashes. You can also use other ARM lists, but they are less stable and will usually crash.

In addition to the Vector Engine, creating VMDs (#link=Virtual Memory Domains) is crucial for getting results on the system. The target area for each domain is large, and the data is very concentrated. The FCRam domain in the range 7000000-8000000 houses most of the code, so it’s a good idea to create a VMD within that range to start.

Architecture:

A custom SoC developed by Nintendo. It includes four ARM CPUs of three types: two ARM11 MPCores, an ARM946E-S, and an ARM7TDMI. Fun fact, the latter two were used in the Nintendo DS and GameBoy Advance respectively. It also included a PICA200 GPU, which helped render the 3d graphics.

For more information, visit the following website: https://www.copetti.org/writings/consoles/nintendo-3ds/

PreviousNintendo 3DSNextMemory Domains

Last updated 8 hours ago

Was this helpful?