gbadev.org forum archive

This is a read-only mirror of the content originally found on forum.gbadev.org (now offline), salvaged from Wayback machine copies. A new forum can be found here.

ASM > ARM Assembler Newbie questions

#2931 - I.C.E - Fri Feb 14, 2003 5:07 pm

I have the following questions:

1. What does "!" do? According to a ARM Quick Reference Card here it stands for Updates base register after data transfer. But what does that mean?

2. Why do I have to use "=" in instructions like that: LDR r1,=REG_DISPCNT? I think It has something to do with the addressing mode because according to QRC the syntax for LDR is LDR{cond} Rd, <a_mode2>. If I look at the addressing mode 2, there are some examples for pre/post indexing with immediate offset and so on. So I think that beacuse REG_DISPCNT is just a value and not a register (which are used in addressing mode 2) I have to use the "=" sign. But what does it exactly do?

3. For what is a Soft Preload (Memory system hint) PLD <a_mode2> usefull?

4. About assembler instruction description. The registers in documents are often called Rd, Rm, Rs, Rn. Do the "d" "m" "s" and "n" have a special meaning or are they just variables for any register? I ask because the naming scheme is a bit odd.

Thanks :)
_________________
To this day, many C programmers believe that "strong typing" just means pounding extra hard on the keyboard.
- Peter van der Linden