Anyone know where I might find some NBASIC tutorials? Bob Rost hasn't made any, and I have zip programming experience, so I know absolutely nothing about what NBASIC (and 6502 assembly) does. >.> I've read the lecture PDFs on his site, and I've also looked at the NBASIC Reference Manual, and I even poured over the code in a few samples, but I still don't really have a clue what it all does. I need something that will describe — in depth — what each command does, how to use it, and a small example that uses it all.
Can anyone find (or make) me something like that? >.>;
Considering that his "Sack of flour" game for which NBASIC was developed doesn't work on a NES, I would urge you to stay away from it altogether.
Somebody really oughta make modifications to make that game work on a real NES. Somebody oughta then call Bob Rost on his mistakes and tell him to learn from them.
And by somebody I mean not me. I'm busy.
Bananmos wrote:
Considering that his "Sack of flour" game for which NBASIC was developed doesn't work on a NES, I would urge you to stay away from it altogether.
It doesn't? o.O I didn't know… rats. ._.
In that case, any tutorials on 6502 assembly? >.> Like 'NES 6502 ASM for Dummies' or something? XD
I played Sack of Flour on a devcart on the NES and it worked pretty well except for some graphics corruption occasionally.
http://www.patatersoft.info/gbaguy/nesasm.htm
Kizul Emeraldfire wrote:
In that case, any tutorials on 6502 assembly? >.> Like 'NES 6502 ASM for Dummies' or something? XD
I seem to remember
NES 101 being decent.
The Sack of Flour game doesn't even work right on the emuators I use. The first level is ok but then the second has missing tiles, and the 3rd there are no background tile at all. Definitely learn to do it in ASM. NES isn't fast enough for having the luxury of some kind of high level language anyway.
MottZilla wrote:
NES isn't fast enough for having the luxury of some kind of high level language anyway.
Is this always the case? Apple II Plus had a CPU only 57% as fast as that of the NES. MECC's
The Oregon Trail for Apple II Plus was written in BASIC with some assembly language support routines.
hmm, good point (wow only half nes speed
)
Oregon Trail also had little/no animation or AI... and pretty much entirely was "prompt user for information and draw a new screen to respond". So it being compiled in BASIC doesn't seem too far out of left field.
If you want to write a program that requires any sort of actual performance, however, then I'm sure you're stuck with direct 6502.
Also: I only glanced at NES 101 that was linked but happened to go to a page where he was like "this code doesn't work, anyone know why?". And he also talked about mapper 2 but failed to mention bus conflicts (in fact he says "it doesn't matter where" you do your register writes). Both I guess are relatively minor goofs but it got me thinking...
Why does it seem like all the tutorials on nes deving are written by people who are still learning themselves?
Sadly no one that is really familar and experienced with the NES writes any tutorials for noobs, that's why. The only people thinking about the noobs are the noobs. I've noticed alot of homebrew and such doesn't even work too. Makes it alot harder to learn. I've been poking around and using Nestopia and Nintendulator for testing. It's interesting too because a demo I wrote that simply scrolls the name tables endlessly works fine on both, but an older versionof FCEUltra flips out and then crashes. I hope there's more PowerPAKs available soon.
Disch wrote:
Why does it seem like all the tutorials on nes deving are written by people who are still learning themselves?
Just a guess, but a good way to learn/memorize something is to go through it step by step, making a tutorial does that fairly well I think.
MottZilla wrote:
I hope there's more PowerPAKs available soon.
Should be within a few weeks IIRC
You think the NES could use an Oregon Trail port?
If someone can document the underlying game model used by Oregon Trail in a way that doesn't infringe MECC's copyright, then yes, we could use a clone. But how likely would it be that someone would be enough of an Oregon Trail fanatic to come up with something as comprehensive as
Tetriswiki?
Well part of the game mechanics run mostly on chance, so that pretty much irons out all the weird event crap like thieves, diseases and other crap. The remainder of it that requires strategy doesn't require very much, apparently. I didn't find it that to get to Oregon as a farmer with all five party members alive, even though it took a little doing. ;-P
And about 75% of you peeps would probably waste most of the time on the hunting mini-game anyways. :-P
Because I felt like poking around, I was looking at Sack of Flour - Heart of Gold tonight. When running it on Nintendulator previously and when testing it on a real NES I found that seemingly randomly the name tables would get trashed when it loaded a level. I also noticed on the title screen and level start screen (where it says the level's name) has seemingly random junk on them.
I traced out one subroutine which seemed to be like a "clear screen" sort of routine which was zeroing the entire name table. But he expected he could write the entire name table within vblank. So I corrected it and fixed the garbage on those 2 screens. That left the main problem of when you start a level or die the nametables could be trashed and it's impossible to see what you are doing. I "think" I fixed this as it didn't happen to me when testing on the emulator or on the NES.
There's still 2 problems. Randomly weird corruption seems to happen on some tiles. I'm not really sure how this is possible since it uses CHRROM which shouldn't be writable.... The other problem is whenever you are scrolling the screen and it has to update the name tables, it's taking too long and my guess is Sprite DMA doesn't finish and falls into rendering. Later on this causes some interesting sprites that never seem to move.
Still it's more playable than it was before, now you can play it to the ending credits screen where it crashes/locks up from an invalid opcode. Who knows if there was anything after that or if it just meant to reset the game.
Anyway if you care to see the patched SoF is
here.
Well, I actually WAS writing a document for absolute beginners of NESdev. When I get time to finish it, which I doubt will be any time soon, it should be pretty decent. I'm going to try to make it as beginner-friendly as possible, because I totally know how it is to be a beginner. I came here not knowing what a byte or bit was. When I finish it, I'll definitely release it. I just don't really have that much time to work on it. I'll be sure to cover many things, and I'll try to make sure that everything makes perfect sense to someone who doesn't even know what a sprite is. I think it will take a lot of patience on my part.