After two hours of trying to debug MIPS assembly code I finally found out how to push the return address into the stack before over writing it so that I could jump to another function.. ahhh....
It's awesome learning computer architecture, but programming in assembly is like trying to chop down a tree with a pocket knife >:{