From 1a11a76ba2c852c116775bfe462cc464de22f2fa Mon Sep 17 00:00:00 2001 From: Kaisaan <34224128+Kaisaan@users.noreply.github.com> Date: Thu, 18 Feb 2021 19:47:53 -0500 Subject: [PATCH] Rename THUMB section as Assembly --- pages/_en-US/ds-index/retail-roms.md | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/pages/_en-US/ds-index/retail-roms.md b/pages/_en-US/ds-index/retail-roms.md index fb25acd9..bb03fb33 100644 --- a/pages/_en-US/ds-index/retail-roms.md +++ b/pages/_en-US/ds-index/retail-roms.md @@ -32,20 +32,16 @@ Though rare, there are DS Cartridges with NAND based saves: WarioWare DIY & Jam There are different formats to use depending on the loader, but nds-bootstrap uses the raw `.sav` format. If you use a different format, here is a website you can use to convert it: http://www.shunyweb.info/convert.php +### Assembly +Assembly is the native language used for all DS software. Assembly code comes in the form of either ARM or THUMB instructions. THUMB instructions are a subset of the ARM instructions. THUMB is useful to save memory bandwidth as it uses 16-bit instrcutions over the regular 32-bit instructions that ARM uses. +You can find more info on Assembly instructions, as well as a lot more technical information for the DS and DSi, at [gbatek](https://problemkaputt.de/gbatek.htm). + ### Card Read DMA Card DMA (stands for Direct Memory Access) is a more efficient way to read cartridge data than by software. When there isn't any data available, code can still execute. In software cartridge data reads, polling the register to see if there is new data wastes times. It is the preferred way of accessing data. You can spot a game that uses dma via no$gba by enabling the DMA log on ARM9. A DMA access to the card uses AF000001 as the third parameter. - For example: `DMA2: 04100010 023C18C0 AF000001` -### THUMB Instructions -Instead of the 32-bit regular ARM instructions, THUMB use 16-bit instructions. This is useful when memory bandwidth is a bottleneck. - -### Donor ROM -In previous nds-bootstrap versions, a Mario Kart DS ROM was needed for SDK3-4 games to work or save. -The ROM acted as a Donor ROM. nds-bootstrap grabs the donor's arm7 binary, replacing the original ROM's arm7 binary, in order for the save patches to work, and there was a few side effects as a result. -In later nds-bootstrap versions, a Donor ROM is needed for certain THUMB or SDK5 games to boot, as well as save. - ### Action Replay Cheats Action Replay cheat codes are codes that allow you to make low-level programmable changes in the memory region of your favorite game(s). These changes range from simple value tweaks to extremely advanced ASM tweaks, both of which can alter the experience of the game(s) being played altogether.