:P well
First of all, you need to understand how ASM works. Basically any ASM code you make is gonna load something, mess with that, and then store it somewhere, or some variation of that.
To load something you use a "ldr" operation. You can think of it as standing for "load directly into register"
To load a byte, youd use ldrb, a halfword would use ldrh, and a word would use ldr
A code like, 121D88FE 0000XXXX is a 16 bit write. So, to make this in ASM

ldr r0, =0x21D88FE @load where the value will be written to (in this case slot 1 address)
ldrh r1, =0x1566 @load 16bit value to write
strh r1, [r0] @store 0x1566 into 0x21D88FE
bx lr @this ends the code