jstout Posted June 21, 2013 Share Posted June 21, 2013 (edited) I'm hoping the links work as this would be cleaner than having a few dozen posts thrown all about. This is still a work in progress with more in the future and the below files are still subject to changes/improvements as I'm not happy with all of them. All demos should contain source files for the ca65 assembler and a working rom. For those that read these please let me know of things that are good, bad, and need much more clarification. Complete Folder 6502:Number FormatsRegistersProcessor Status FlagsOpcodes - Transfer OperationsOpcodes - Other OperationsOpcodes - Programming ModelAddressing ModesComplete OpcodesBasic Math NES Programming:Memory MapNES HeaderPPU RegistersSkeleton ROMPalettes Demo Sprites DemoControllers DemoBackgrounds DemoScrolling DemoSprite 0 Hit DemoAnimated Sprites DemoCamera Window DemoCollision Detection DemoMMC3 Demo Edited July 2, 2013 by jstout GameplayLoop, Neerrm, quince3800 and 3 others 6 Quote Link to comment Share on other sites More sharing options...
DFM Posted June 21, 2013 Share Posted June 21, 2013 This is intense on so many levels! I only went through the Sprites doc, but I am sure the rest is just as awesome. Nice work! More feedback to come! Quote Link to comment Share on other sites More sharing options...
DrunkenGamer Posted June 21, 2013 Share Posted June 21, 2013 Thanks for this. Ive learned a boat load and this will help 10 fold. I already got a couple of new sick hacks added already to our game... just need to learn sprite loading.... hoping these links will get me there. Quote Link to comment Share on other sites More sharing options...
GameplayLoop Posted June 21, 2013 Share Posted June 21, 2013 This is really going above and beyond, Jstout. So great. I'll be sure this thread and the information therein is pushed as much as possible. Quote Link to comment Share on other sites More sharing options...
buck Posted June 21, 2013 Share Posted June 21, 2013 thanks, jstout. Quote Link to comment Share on other sites More sharing options...
pambazos88 Posted June 23, 2013 Share Posted June 23, 2013 This is like chinese, and I dont even understand english!!! Quote Link to comment Share on other sites More sharing options...
jstout Posted June 23, 2013 Author Share Posted June 23, 2013 This I understand: Mega Mario22.png You were always over my head. sorry.. I have a feeling your post is off-topic as editing only TSB isn't the main subject. From the image, its obvious that you know where things are located from yours/others findings and the notes attached. But what else do you know about that info that you understand? Quote Link to comment Share on other sites More sharing options...
pambazos88 Posted June 24, 2013 Share Posted June 24, 2013 I have a feeling your post is off-topic as editing only TSB isn't the main subject. From the image, its obvious that you know where things are located from yours/others findings and the notes attached. But what else do you know about that info that you understand? No, sorry, I dont know why I posted that image link (finding stuff and making a tutorial, anyone can do it). I was talking about the "6502 assembler for the NES" (not any rom in particular) The LINK WAS SUPPOSED TO BE: http://romhacking.org/docs/asm_nes/apend11.html THIS I CERTAINLY CAN UNDERSTAND!!! Because I dont have any knowledge in "programming" whatsoever, I found your links a little (very) "incomprehensible" for me. Yes, you are right I DONT UNDERSTAND shit!. But since you say TSB is not the only subject you are after, (that was exactly the same thing I wanted to link before) there are hundreds of "NEW-HOME BREWS" based not only in hacking, But in UNDERSTANDING what you are doing with the assembler! (that is the whole point) I bet you can even learn something from datasteve and DrKoopa themselves (who are also programmers, not hackers like me, and they can make really "digestible" introductions to the 6502 assembler. Just like 10 steps back from where you start) Y mas aun, si alguien habla español pueden checar las traducciones que ha hecho Darkwizard a los distintos tutoriales del lenguaje ensamblador y de otras herramientas de hackeo: http://romhackhispano.org/principal.php Quote Link to comment Share on other sites More sharing options...
DrunkenGamer Posted June 24, 2013 Share Posted June 24, 2013 I found the links to be great. Learning this stuff takes time. And 4 years ago I would have been grateful to have the info that is being shared now a days. Quote Link to comment Share on other sites More sharing options...
DFM Posted June 24, 2013 Share Posted June 24, 2013 yeah, kinda like pambazos is saying, I am more of (and interested in being) a "TSB hacker" than a "NES programmer". TSB-specific examples would be the best for me, too.This is all killer stuff. If you wanted TSB specific stuff you should have spoken up when he posted his outline of what was going to be covered. I've always wondered about the NES camera and scrolling.doc set me straight. Thanks for this again. Quote Link to comment Share on other sites More sharing options...
DrunkenGamer Posted June 24, 2013 Share Posted June 24, 2013 I agree. Not trying to be a dick, but the title of the thread is NES programming. This is what we asked jstout to do. Give tutorials on asm. Quote Link to comment Share on other sites More sharing options...
DFM Posted June 24, 2013 Share Posted June 24, 2013 ASM is for the birds. I am convinced of this. Quote Link to comment Share on other sites More sharing options...
buck Posted June 24, 2013 Share Posted June 24, 2013 (edited) I agree. Not trying to be a dick, but the title of the thread is NES programming. This is what we asked jstout to do. Give tutorials on asm. all I was saying was that I was hoping that some of the examples would be TSB-based. I wasn't trying to piss on the information given. I just have a hard time taking this sort of stuff out of TSB context. anyways, I deleted my post like a minute after I posted it, dick. Edited June 24, 2013 by buck Quote Link to comment Share on other sites More sharing options...
DrunkenGamer Posted June 24, 2013 Share Posted June 24, 2013 (edited) Dammit boy. I should have started with "with all due respect"?... lol. I can see where youre coming from. I guess I failed at not being a dick. Edited June 24, 2013 by drunken_honkey Quote Link to comment Share on other sites More sharing options...
buck Posted June 24, 2013 Share Posted June 24, 2013 well, I'm with you on NES ASM language tips and tricks. those are always welcome to save space and time. Quote Link to comment Share on other sites More sharing options...
jstout Posted June 24, 2013 Author Share Posted June 24, 2013 all I was saying was that I was hoping that some of the examples would be TSB-based. I wasn't trying to piss on the information given. I just have a hard time taking this sort of stuff out of TSB context. anyways, I deleted my post like a minute after I posted it, dick. I'll see what I can do Buck with making some of the demos like TSB. I wanted to try to make the demos flowing so the entire code setup was vastly overhauled with each segment as TSB does a lot of advanced techniques with some that aren't even possible without the MMC3 mapper. GameplayLoop 1 Quote Link to comment Share on other sites More sharing options...
pambazos88 Posted June 25, 2013 Share Posted June 25, 2013 I dont see why ANYBODY should be pissed at all!!. This is a TSB-BASED forum in the first place. It should be ok if someone tried to keep it in that same line. Jstout, you got me all wrong. If I say I dont understant a thing you are saying, it is almost completely MY PROBLEM. You are doing a fantastic job here and you know it!Since it is my problem, I had to solve it somehow. I found a "comprehensible" solution in the Tutorials at romhacking.org to KEEP UP WITH YOUR TOPIC, thats all!. (because we all know in the end, you will still head in to that TSB direction anyway and come up with another "FANTASTIC FEATURE" for it). Most of us enter a forum because of our own interest, not to hassle.Now, for being so "forthright" (or a dick)... for that maybe I am responsible and I'm sorry. BUT if someone takes it personal when I say: I need "additional support" to catch up with you, then it is almost completely NOT MY PROBLEM. If I were making such a great contribution to this game, I wouldnt be pissed at all, in fact I WOULD BE SMILING ALL FUCKING DAY LONG!!! Quote Link to comment Share on other sites More sharing options...
DrunkenGamer Posted June 25, 2013 Share Posted June 25, 2013 (edited) I dont see why ANYBODY should be pissed at all!!. This is a TSB-BASED forum in the first place. It should be ok if someone tried to keep it in that same line.Jstout, you got me all wrong. If I say I dont understant a thing you are saying, it is almost completely MY PROBLEM. You are doing a fantastic job here and you know it!Since it is my problem, I had to solve it somehow. I found a "comprehensible" solution in the Tutorials at romhacking.org to KEEP UP WITH YOUR TOPIC, thats all!. (because we all know in the end, you will still head in to that TSB direction anyway and come up with another "FANTASTIC FEATURE" for it). Most of us enter a forum because of our own interest, not to hassle.Now, for being so "forthright" (or a dick)... for that maybe I am responsible and I'm sorry. BUT if someone takes it personal when I say: I need "additional support" to catch up with you, then it is almost completely NOT MY PROBLEM.If I were making such a great contribution to this game, I wouldnt be pissed at all, in fact I WOULD BE SMILING ALL FUCKING DAY LONG!!!I "KNEW" I should have began my post with ""with all DUE respect"""".... Ok, I get "it", IT was a "dick" statement"!" Edited June 25, 2013 by drunken_honkey Quote Link to comment Share on other sites More sharing options...
DFM Posted June 25, 2013 Share Posted June 25, 2013 TSB does a lot of advanced techniques with some that aren't even possible without the MMC3 mapper. This statement is being supremely undervalued. You need to understand the above information to even try to crack the case of what TSB is. There is no jumping straight to TSB programming. (Unless you are MT Remix and then and only then do you rewrite the garbage code that is TSB3.) Jstout is doing a great job of starting from the core and building on it. Quote Link to comment Share on other sites More sharing options...
DrunkenGamer Posted June 25, 2013 Share Posted June 25, 2013 One man's garbage is another mans's treasure... DFM 1 Quote Link to comment Share on other sites More sharing options...
DFM Posted November 26, 2013 Share Posted November 26, 2013 Jstout quietly edited his main post and added 3x the content on 07/02. This thread needs WAY more attention from those who asked him to do this. Quote Link to comment Share on other sites More sharing options...
kamphuna8 Posted November 26, 2013 Share Posted November 26, 2013 i'm so behind on "grasping" all this stuff, but I guarantee everytime I try to "grasp" some more, jstout blows my mind. Is there anything jstout CAN'T DO? Quote Link to comment Share on other sites More sharing options...
Primis Posted December 4, 2013 Share Posted December 4, 2013 I delurked here to just say that I am not a programmer or hacker of any level, and I have found these docs extremely interesting. The Camera Window one in particular, and Traps, answered a long-standing question of mine about scrolling in these kind of games. I assume the trap would then just be oriented in a different manner in an up-down game like, say, 10 Yard Fight? Can you "trap" on something other than the ball in TSB? I know there are hacks to control other off-the-ball players, but can the camera be trapped onto them instead of the ball (AFAIK all these hacks still keep the "trap" on the ball)? So you could control a WR downfield and have the camera locked on him instead? Or "trap" on whatever defensive player you control? The Controller one? Interesting as well to see how that's mapped. So it flips a value rapidly between 1 and 0 for "on"/"off" in order to constantly check for button status, is the gist I get. I also have enjoyed the Collision Detection one, I always wondered how that worked in general in a game. "The background is 32 x 30 tiles, (256 x 240 pixels) with the NTSC not displaying the top and bottom rows (256 x 224 pixels)". Wait, so are you saying that NTSC technically displays less than PAL? Why? And does PAL display those rows? This forum is such a repository of NES knowledge in general. Knobbe 1 Quote Link to comment Share on other sites More sharing options...
jstout Posted December 6, 2013 Author Share Posted December 6, 2013 Hopefully, I'll be able to get some new stuff up soon. Primis, for your questions. Yes, you can put a trap onto any specific object. Though it might be quite a hindrance to try and tackle a ballcarrier you can't see because you are watching a receiver downfield. For the NTSC/PAL, this is less a NES issue than a TV standards issue. NTSC, PAL, and SECAM are the Analog TV Standards where NTSC and PAL have different size standards. So the TVs produced in the PAL countries simply have a different display size to support the standard. The PAL standard however also has a slower refresh causing some flickering that doesn't exist on a NTSC display. Quote Link to comment Share on other sites More sharing options...
Primis Posted December 7, 2013 Share Posted December 7, 2013 Primis, for your questions. Yes, you can put a trap onto any specific object. Though it might be quite a hindrance to try and tackle a ballcarrier you can't see because you are watching a receiver downfield. I'm just thinking out loud here... putting the trap focused on your chosen player and not the ball might be pretty cool. If you're a LB blitzing and the ball is thrown downfield out of your camera view, that's the risk you run. For offense it wouldn't matter much though I guess, as the focus auto-changes from QB to RB on a hand-off say. The ball-carrier is who you control on offense, so... it'd only really affect defense, and maybe defense doesn't need to be any more difficult. But it'd be a different feel and kinda' fun. And there are the hacks out there where you play locked on at WR if I'm remembering correctly, so changing the trap on that could be pretty awesome in conjunction with it. Though again, playing defense would suck... These would be single-player roms because boy... it'd completely wreck multiplayer. I'm not sure what havoc would ensue if the trap were taken off the ball. It'd be fun to find out though. Probably a dumb question: can the rom be hacked to support something non-NTSC, non-PAL? Thanks for this stuff jstout. I know some of these are things that have undoubtedly been covered over the years, but this forum has been here so long and it never hurts to ask, especially since the game knowledge changes. There are a number of us here that have been on this forum for a long time (like me) but don't necessarily post much. So this stuff is being seen by far more people than feedback would indicate. There simply isn't a game out there (not just ROM, any game period) that has gotten the attention and research this one has. And every time we think something might be impossible, we find otherwise. It's much appreciated, and it's part of why my Nintendo DS still is solely platform to emulate and play TSB roms & have them portable. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.