06-03-2005, 12:44 PM | #1 (permalink) |
Guest
|
Learning Assembly
I want to learn how to code in assembly language - I've found a C64 emulator, and plan to work on that - but can anyone reccomend any resources I might find that will help me learn where to start?
I am an absolute Assembly novice, and would appreciate any pointers |
06-03-2005, 02:42 PM | #2 (permalink) |
Wah
Location: NZ
|
well, first do a web search on "learning c64 assembler" (although technically i think its 6510 assembler). i found some stuff that looked useful.
although once you know one assembly language you can switch to a new one quickly, I'm not sure I'd start with what must be a pretty out of date chip.
__________________
pain is inevitable but misery is optional - stick a geranium in your hat and be happy |
06-04-2005, 12:54 AM | #3 (permalink) |
Tilted
|
i started out doing asm on my ti-83 plus, no emulator which sucked a lot because I had to upload everytime to test my code. In college i learned i386 assembly which was cool, but icky. It's not something i would program in, but knowing assembly a useful skill for debugging and the like.
I'm not sure what stuff there is for c64 in particular, but something with an emulator and fairly popular (i.e. a processor/computer that is still made and used) is a good place to start learning assembly. Hobby robotics is also a fun place to look into, though some of them may not have emulators. Although some things in robotics are done in basic or c, there are still a bunch that use pure assembly. Popular cpus include z80, 68k, 8080, i386, and vairous pics. The simpler the cpu, the easier it is to learn. i386 is very complex compared to some of the others so i would stick away from that for now unless you are very determined. Early consoles can be a good place to start, esp nes/snes where people have made many home brew games for them. http://www.grandtheftendo.com/ is an example of something crazy someone has done for the nes. I'd kinda be tempted to do nes first becuse the guy at the link wrote a ide for nes assembly. If you do choose the console route, www.zsnes.com has links to emulators as well as documentation on the system. If you choose to program calculators, www.ticalc.org has lots of information. Any other route, google should be able to find info for you. Good luck!
__________________
sometimes it just takes a cat |
06-06-2005, 07:05 AM | #4 (permalink) |
Guest
|
Thanks, I downloaded some old instruction manuals from Project 64 that explain assembly for beginners - and have learned some new things already. I still have trouble getting my head around how low-level it is. I'm used to building object-oriented code where you try to get things to be as natural-language sounding as possible. i.e. man.goToWork() etc - but in Machine Code I have to tell each atom how and where to move, one peice at a time.
The thing I'm confused still about (but which I'll read up on as I'm learning) is how to keep track of what everything is doing, when there are only 3 registers (which sound like they are 'active' variables - that you can do things with) It sounds as though there's a lot of juggling to do. Anyway, I'll keep on, and let people know how it goes. |
06-06-2005, 01:01 PM | #5 (permalink) |
Junkie
Location: San Francisco
|
I've found an effective way to learn is to write some code in a higher level language like C, compile it, disassemble it, and see what instructions are generated for each statement. Even if you're doing it on a different architecture than what you're writing assembly for, it's still useful if you don't have any prior knowledge because assembly languages are all more or less the same, just with varying names and numbers of instructions, registers, etc.
__________________
"Prohibition will work great injury to the cause of temperance. It is a species of intemperance within itself, for it goes beyond the bounds of reason in that it attempts to control a man's appetite by legislation, and makes a crime out of things that are not crimes. A Prohibition law strikes a blow at the very principles upon which our government was founded." --Abraham Lincoln |
Tags |
assembly, learning |
|
|