Technically, you're not simulating an ASM file, that's just the source. You're simulating the execution of a complete program, which an object file isn't. You simulate assembled/compiled HEX files, and MPLAB's debugger shows you the corresponding source code line in the ASM file. It's rather important to understand that subtlety.
Yes, I understand that. And I have built the .hex file.
It looks like you are using random code from other people and use them to try the simulator?... Why don't you try to write your own code and create your own projects and use other projects as references only? It might soften the learning curve quite a bit. No, I wrote the code myself (I used the delay routine from Nigel's tut for part of it). I have written several relatively complex programmes successfully in the past using MPLAB v5.7. I am simply trying to learn v7.21.