Espozo wrote:
Hell no! If he starts of in ca65 (which is a dedicated 6502 assembler,) than the syntax or whatever won't bother him and he won't have to deal with the buggy piece of sh*t that is WLA DX. Although koitsu helped me, I made the switch and I have no regrets.
Also, don't use C.
I know this won't really help though, but I used bazz's tutorials on superfamicom.org to get me started with SNES development. (Which unfortunately use WLA DX, but oh well.) I tried something called "Nerdy Nights" for the NES before I could find anything on the SNES, but I didn't get it at all. Some have found it useful though.
Okay okay... Maybe WLA is a bad idea for 6502, since you don't have to deal with ca65's direct page BS. Still, I believe if someone could just fix WLA's few stupid little bugs and annoyances, it could be the gold standard for 65816. I never gave ca65 a fair chance, true, but several things about it STILL confuse me.
NES is a simpler system so maybe it doesn't matter so much there. In SNES though, the learning curve to get started was so damn vertical I'd say it's worth learning a slightly clunkier language just to be able to make use of the tutorials, and hopefully not get immediately scared off. I believe I read bazz's tutorials all the way through at least 50 times, with reference to koitsu's old documents here and there, before I really understood. Were I a less obsessive-compulsively-driven person, I probably would have given up before I even made anything appear on screen. Once I had the framework set up and could SEE the effects of what I was doing though, everything was suddenly incredibly easy with or without WLA's annoyances.
Personally I think the severe lack of recent SNES developers is largely because most can't get through that first week. I was extremely close to switching to Genesis, myself.
Agree on "Don't code in C" though. Maybe if you want to do Sega work, I know they have some kind of C dev kit available... But I don't think you'll find much help using it for NES/SNES, and it's just by definition going to result in less efficient code. Would be a total waste of time instead of just learning the assembly you have to get to know anyway, imho.