Language…
10 users online: Alex No,  AmperSam,  Anorakun, DinoMom, Green, Hiro-sofT, Kerd, Papangu,  Telinc1, yoshisisland - Guests: 288 - Bots: 524
Users: 64,795 (2,368 active)
Latest user: mathew

Ersanio's ASM Tutorial V2.1

Yet another update of my tutorial. Straight from the document description:

This tutorial covers almost every aspect in terms of ASM, but it does not cover the SNES itself-related stuff. It has 39 pages now, while the previous version had 36. Included is a HTML file with a list of opcodes and other stuff related to it. I didn't add a HTML version of the document though.

What's new in this version: A whole chapter about the decimal mode, brief explanation about the overflow flag, brief explanation about little-endian, explained BIT more detailed, fixed minor mistakes and changed some explanations.

If you notice any errors, please contact me as soon as possible so I can fix them! I plan to add interrupts in the next version if I ever learn how they work.

Have fun reading. Download!
My blog. I could post stuff now and then

My Assembly for the SNES tutorial (it's actually finished now!)
Thanks Ersan. I'm planning on learning ASM so this should really help. Thanks! :D
This tutorial is amazing. All the other tutorials I've ever seen me tired. He is not boring and is practical and objective. Thank you for writing this great tutorial!
It's great to hear that you've completely updated your tutorial. I'll be definately sure to give it a read, I'll most definately learn something

World Community Grid: Thread | Team
 
I'll be sure to read it, I would love to learn ASM! I am sure that this will help, thank you!
8 Trials Await (2010) lol|
Originally posted by Tutorial
I am sure you’ve heard about Little Endian many, many, many, many times. It is a more simple term for ‘Reverse-order bytes’. For example, LDA #$00 equals to 00 A9 in hex. See how the bytes reverse? Another example is JSL $018090. It equals to 90 80 01 22. Keep in mind that the nibbles themselves do NOT reverse. So we do not get 09 08 10 22.


lolwut

the opcode is always first. After that, the address/value is stored in little-endian.

So, JSL $018090 = 20 90 80 01

oh and:
Originally posted by Tutorial
Officially, EOR is called XOR. I don’t know what the SNES programmers were smoking while inventing this instruction’s name.


While I did laugh after reading that line, I do know they weren't smoking anything. XOR stands for eXclusive OR, so it makes perfect sense to call it Exclusive OR.
Originally posted by Noobish Noobsicle
Originally posted by Tutorial
I am sure you’ve heard about Little Endian many, many, many, many times. It is a more simple term for ‘Reverse-order bytes’. For example, LDA #$00 equals to 00 A9 in hex. See how the bytes reverse? Another example is JSL $018090. It equals to 90 80 01 22. Keep in mind that the nibbles themselves do NOT reverse. So we do not get 09 08 10 22.


lolwut

the opcode is always first. After that, the address/value is stored in little-endian.

So, JSL $018090 = 20 90 80 01

erwhoops. seems like writing sections at late night isn't a good idea.

I'll fix it and re-update the link

edit: http://www.smwcentral.net/download.php?id=156&type=documents
My blog. I could post stuff now and then

My Assembly for the SNES tutorial (it's actually finished now!)
Maybe I'll learn ASM in 2010. As an intention (I hope I use that word correctly).
With your tutorial of course. =)
Just wanted to say, after seeing this posted last night I decided to give it a read, and it's been really helpful. I tried to learn basic ASM stuff a year or so back but didn't have any luck because what I was reading then was so long, boring, technical, and didn't really show many examples, I just couldn't get into it. This is straight to the point, and shows examples for everything, which made it very easy to pick up.

So basically, great tutorial.