About the 3DS

3dbrew is a really great resource, please check it out!

Hardware

The 3DS packs multiple CPUs, a GPU and many gimmicks. We will only briefly explain some hardware of the 3DS so if you’re interested
in more info, here you have a great article by Rodrigo Copetti

Families

The 3DS comes in two different families, the CTR and LGR.

CTR (O3DS)

2DS
The Nintendo 2DS a.k.a FTR

Contains the Nintendo 3DS a.k.a CTR,
Nintendo 3DS XL a.k.a SPR and Nintendo 2DS
a.k.a FTR.

LGR (N3DS)

N3DS
The New Nintendo 3DS XL a.k.a RED

Contains the New Nintendo 3DS a.k.a KTR,
New Nintendo 3DS XL a.k.a RED and New
Nintendo 2DS XL a.k.a JAN.

Both families have basically the same gimmicks, the main difference is compute and memory;
the most important bits are:

  • ARM9 and ARM7 CPUs mainly for backwards compatibility with TWL (Nintendo DSi) and AGB (Gameboy Advance)
  • PICA200 GPU 1@268Mhz with 6MB VRAM allowing advanced 3D acceleration (not fully OpenGL compliant though!)
    driving the two screens of size 240x800 (where only 240x400 pixels are used in retail 2D mode)
    and 240x320

O3DS

  • ARMv6K ARM11 @268Mhz with 2 cores used as the main processor.
  • 128MB RAM, by default applications have 64MB available and can request up to 96MB. Requesting more RAM means the OS
    will have less for other tasks thus some features are disabled when more RAM is requested, e.g the user not being able to jump to
    HOME without exiting the application.

N3DS

  • ARMv6K ARM11 @268Mhz/804Mhz with 4 cores used as the main processor.
  • 256MB RAM, applications developed for the N3DS family have 124MB available by default and can request up to 178MB.
  • 2MB Level 2 Cache allowing for even higher throughput in memory-intensive applications.

Software

The 3DS packs a full microkernel-based custom operating system named Horizon