3 ms·
Wow... programming in Lisp is already not that mainstream... and on top of it, for the NES? Impressive. I so want to start learning to program in NES now. Not
by saganus 12y ago
Wow... programming in Lisp is already not that mainstream... and on top of it, for the NES?
Impressive.
I so want to start learning to program in NES now. Not really in Lisp as I would like to learning curve to be gentler, but this article definitely sparked my interest into learning one of the devices I used most during my childhood.
Great work!
- jimmaswell 12y agoYou should take a look at the NES programming IDE I've been working on: https://github.com/ldyeax/icarusnet https://github.com/ldyeax/icarusnet I've already been productively using it for myself doing a bit of ROM hacking. It feels like a much nicer environment to me than the usual romhacking setup. Still has some rough edges, though. One of the best parts of it for me is seeing the assembly assemble as I type it, telling where it goes in the file, what the PC should be at that point, and if the line has an error, it shows it. http://i.imgur.com/JfEwJ9U.png http://i.imgur.com/JfEwJ9U.png
- saganus 12y agoNice! Thanks!
- kazinator 12y agoHefner is not really programming the machine in Lisp. The developer appears to have created a 6502 assembler as a "domain specific language" in Lisp, and then is programming the machine in that notation. This could have tremendous advantages over using some clunky conventional assembler; it can likely be made smarter, with less work. You could probably use his tool without knowing Lisp, if it were suitably packaged or documented. (But not without knowing 6502 machine language, in all likelihood!) Knowing Lisp would help you easily understand and extend the assembler, so you could do things like create yourself some badly needed program organization abstractions and then use them. Otherwise you could just ask the author, or people in a mailing list. "Hey I would like a feature whereby if I write (foo bar) in the code, such and such an effect takes place in the generation of the 6502 image."
- saganus 12y agoThat's what I thought as well. I guess I was not that off course. But I would still need to refresh the very basic Lisp I used in college. In any case, learning 6502 asm seems like a must like you say. I'm gonna have to try to learn a bit.