Hey guys. This is my first post, so... yeah, I hope I don't sound too n00bish or anything. Also, I'm not very good at keeping forum posts compact, so if you get bored with reading this probably over-winded post, just JMP down to theTL:DR section at the bottom...
Anyway, so, recently I started becoming interested in programming games for the NES (obviously). My original wish was to make games for the N64, which I'll probably get around to eventually, but which I also can't do right now because all the compilers I've found are for PC, and all I have ATM is an Android tablet . Fortunately enough for me, someone else on this site did an indirect jump to my rescue (haha, see what I did there) and compiled a copy of ASM6 that will work for Android with a command line tool. Not *exactly* what I was looking for, but at least I can make retro Nintendo games. Plus, it gives me an excuse to learn a new programming language Besides, the homebrew scene for the N64 seems to be pretty bunk, and I'm afraid that if I ever have any trouble with something along that front, I wont be able to receive too terribly much aid.
So, after doing some looking about, I found Bunnyboy's Nerdy Nights tutorials, which from what I've read\heard are some of the best. So, I read them, and they indeed are very good at explaining things related to NES programming (and 6502 programming in general). But of course, reading something doesn't matter a bit (or a byte) unless you can actually put what you read to use. Aaand unfortunately for me, the Nerdy Nights tutorials are designed for NESASM, not ASM6. Which is what I'm writing here about.
So, I downloaded a ZIP file that contained the source for this NN sound engine tutorial. I'm a pretty big fan of chiptune music, so I wanted to write my own tunes and get them bumping right away. Unfortunately I can't for the life of me get the code to correctly assemble mainly because it uses a lot of NESASM specific directives (.bank, inesprg, etc). Not to mention the slightly different syntax for things like indirection. I tried reworking the code quite a bit to make it more ASM6 friendly, but it still doesn't assemble correctly. What the program is SUPPOSED to be is a simple music player that lets you listen to your songs and change songs with the controller. At best, all I get when I assemble it and run it in an emulator is a black screen and this annoying sound on the noise channel. I know the code itself isn't bad (unless I screwed it up somehow by tinkering with it), so the issue is probably with how the assembler is building it, meaning the directives I'm using are probably off. Here's a copy of the main file. There are includes in there, but those don't have much of anything that would get in the way. PS: sorry if it looks a little messy. I commented out the NESASM code and left it in there so that I could see what my own stuff needed to look like.
TL:DR: ;reader got bored, so they'll read this
I need help with modifying a Nerdy Nights source code file so that it assembles in ASM6. I've included a copy of the file so that you can see what's up.
Edit: Damn, the file browser on my tab won't open when I click Choose File. Looks like I'll have to copy-paste it in a separate post
Anyway, so, recently I started becoming interested in programming games for the NES (obviously). My original wish was to make games for the N64, which I'll probably get around to eventually, but which I also can't do right now because all the compilers I've found are for PC, and all I have ATM is an Android tablet . Fortunately enough for me, someone else on this site did an indirect jump to my rescue (haha, see what I did there) and compiled a copy of ASM6 that will work for Android with a command line tool. Not *exactly* what I was looking for, but at least I can make retro Nintendo games. Plus, it gives me an excuse to learn a new programming language Besides, the homebrew scene for the N64 seems to be pretty bunk, and I'm afraid that if I ever have any trouble with something along that front, I wont be able to receive too terribly much aid.
So, after doing some looking about, I found Bunnyboy's Nerdy Nights tutorials, which from what I've read\heard are some of the best. So, I read them, and they indeed are very good at explaining things related to NES programming (and 6502 programming in general). But of course, reading something doesn't matter a bit (or a byte) unless you can actually put what you read to use. Aaand unfortunately for me, the Nerdy Nights tutorials are designed for NESASM, not ASM6. Which is what I'm writing here about.
So, I downloaded a ZIP file that contained the source for this NN sound engine tutorial. I'm a pretty big fan of chiptune music, so I wanted to write my own tunes and get them bumping right away. Unfortunately I can't for the life of me get the code to correctly assemble mainly because it uses a lot of NESASM specific directives (.bank, inesprg, etc). Not to mention the slightly different syntax for things like indirection. I tried reworking the code quite a bit to make it more ASM6 friendly, but it still doesn't assemble correctly. What the program is SUPPOSED to be is a simple music player that lets you listen to your songs and change songs with the controller. At best, all I get when I assemble it and run it in an emulator is a black screen and this annoying sound on the noise channel. I know the code itself isn't bad (unless I screwed it up somehow by tinkering with it), so the issue is probably with how the assembler is building it, meaning the directives I'm using are probably off. Here's a copy of the main file. There are includes in there, but those don't have much of anything that would get in the way. PS: sorry if it looks a little messy. I commented out the NESASM code and left it in there so that I could see what my own stuff needed to look like.
TL:DR: ;reader got bored, so they'll read this
I need help with modifying a Nerdy Nights source code file so that it assembles in ASM6. I've included a copy of the file so that you can see what's up.
Edit: Damn, the file browser on my tab won't open when I click Choose File. Looks like I'll have to copy-paste it in a separate post