3DS extension on DS(i) hosmebrew ROMs

mrparrot2

Well-Known Member
OP
Member
Joined
Nov 29, 2021
Messages
106
Trophies
0
Age
29
Location
SP, Brazil
XP
561
Country
Brazil
Hi, folks.

I was looking at the gbarunner2 thread and found that there is a way to address 32mb of RAM in DS(i) mode while running in a 3DS.

Hence I am wondering:
- How can I detect and address this extra 16mb of memory If running on a 3DS.
- What are the other extensions provided in DS(i) mode when running on a 3DS?
 

Pk11

A catgirl with a DSi
Member
Joined
Jun 26, 2019
Messages
1,285
Trophies
1
Age
22
Location
米国
Website
pk11.us
XP
3,896
Country
United States
You can just write something to the upper part of memory and see if it works
https://github.com/DS-Homebrew/TWiLightMenu/blob/master/title/arm9/source/main.cpp#L2532-L2533
C:
// Not sure if there's a particular reason for using exactly 0x0DFFFE0C,
// 0x53524C41 is just the ASCII "SRLA" which I think is just arbitrary as it's TWiLight Menu++'s title ID
// Note that this will detect both developer DSi's and 3DS's, if you want to detect *only* 3DS consoles
// there's a way to do it with some I2C register on ARM7
*(vu32*)(0x0DFFFE0C) = 0x53524C41;		// Check for 32MB of RAM
bool isDevConsole = (*(vu32*)(0x0DFFFE0C) == 0x53524C41);

I don't think 3DS has anything else normally, there is rtcomm if you have TWPatch though.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    HiradeGirl @ HiradeGirl: Coming.