Woah!!
Thats cool!! : D
I've been using your search code to find addresses recently,
and I found the addresses for attached presents to letters, (Yes, dspet already found them. But I was bored and without a pc)
So I've been trying to write some assembly that will store the first ten items in your dresser in your mail slots.
However, I have been getting errors when compiling. Currently it's a OFFSET_IMM8 error...
Can you, or anyone who is reading this, tell me what I am doing wrong??
(I am trying copyng the items in the first 10 dresser slots, 021ec(200-214), and storing them in the ten letter slots 021d8(014-8a8)
But each address is offset from the previous by a certain amount. The dressers by 2, and the letters by F4. I have not tested these addresses, as I have calculated them from other addresses, and this code still has many features I have not added yet...)

ldr r4, Limit
ldr r5, D
ldr r8, M
ldr r1, Dresser
ldrh r2, r1
ldr r3, Mail
strh r3, [r2]
b Fred

Fred:
add r1, r1, r5
ldrh r2, r1
add r3, r3, r8
strh r3, [r2]
cmp r1, r4
ble John
bx lr

John:
b Fred

Limit:
.long 0x021ec214
Dresser:
.long 0x021ec200
Mail:
.long 0x021d8014
D:
.short 0x0002
M:
.short 0x00f4