Contra - Behind the Code

  Рет қаралды 219,347

Displaced Gamers

Displaced Gamers

Күн бұрын

Пікірлер: 443
@DavidWonn
@DavidWonn 4 жыл бұрын
Fun fact: You can split the Konami code across two controllers alternating as often as you like, and the code will be accepted. Furthermore, 1P mode allows you to press down on one controller and up on the other to fire a standing shot while ducking.
@Xonatron
@Xonatron 3 жыл бұрын
What!!! Wow.
@erikhendrickson59
@erikhendrickson59 2 жыл бұрын
LOL
@casedistorted
@casedistorted 2 жыл бұрын
The more you know!
@KopperNeoman
@KopperNeoman Жыл бұрын
Can you press Up and Down on the same controller for that effect?
@DavidWonn
@DavidWonn Жыл бұрын
@@KopperNeoman Perhaps with a 3rd party controller or a broken one that allows both inputs simultaneously. Having a 2nd controller just makes it more universally compatible with stock controllers, though just for 1P mode.
@thedrunkmonkshow
@thedrunkmonkshow 4 жыл бұрын
I really appreciate these Assembly Language breakdowns and I hope people realize that despite the explanations being focused on the 6502 CPU and NES hardware, the conventions and gaming logic largely works the exact same way whether it be on other contemporary 8-bit systems of the time or all the way up to the more complicated modern systems of today. The important thing is it shows you how clever the programmers were back then with cramming these same, fundamental ideas with such limited memory and space to work with.
@Andrew-sm1df
@Andrew-sm1df 4 жыл бұрын
4 minutes into the video: Explaining what a byte and a nibble is. 6 minutes into the video: Manipulating RAM and assembly registers. This escalated quickly
@DisplacedGamers
@DisplacedGamers 4 жыл бұрын
lol
@starleaf-luna
@starleaf-luna 3 жыл бұрын
@@DisplacedGamers lol
@fzxfzxfzx
@fzxfzxfzx 2 жыл бұрын
@@starleaf-luna lol
@alloounou6900
@alloounou6900 2 жыл бұрын
@@fzxfzxfzx lol
@traumatizedgeworth
@traumatizedgeworth 2 жыл бұрын
@@alloounou6900 lol
@nanodrive
@nanodrive 4 жыл бұрын
As someone who understands binary and hexadecimal but has struggled to wrap their head around assembly this was a really through and easy to understand explanation! Even Retro Game Mechanics Explained goes over my head sometimes. Excellent video and I can't wait to see more deep dives into the code!
@DisplacedGamers
@DisplacedGamers 4 жыл бұрын
Thanks, NanoDrive!
@shinyhappyrem8728
@shinyhappyrem8728 4 жыл бұрын
try this for 6502 ASM: kzbin.info/www/bejne/nIjUc6CjhbaDapI
@sergrojGrayFace
@sergrojGrayFace 4 жыл бұрын
Retro Game Mechanics Explained is often hard to follow even for a programmer very familiar with Asm and code hacking like me. This video is very detailed and nicely explained, but it's laser-focused on a single very basic routine, while Retro Game Mechanics Explained tackles SNES in all of its complexity, so it's understandable that it ends up complicated.
@scaredfolks5923
@scaredfolks5923 4 жыл бұрын
You should check out Pico8 it’s a tiny fantasy console built with a lot of limitations. Celeste was first made on Pico8 before the devs upgraded to a modern engine. I love Pico8 it has a lot of charm and the limitations breed a lot of creativity.
@lunasophia9002
@lunasophia9002 4 жыл бұрын
Looking at this executable data from a modern programmer's perspective and I'm thinking "wait a second shouldn't that be in a different segment?" and then I realize this was released in 1987 :D This is a lovely deep dive, certainly some of the most technical stuff I've seen on the platform. More, please!
@Guineh76
@Guineh76 4 жыл бұрын
Chris oh! Looking at things through an x86 lens for sure. The only processor family that uses the segmented model as far as I’m aware. I actually find the 64k address space and ROM banking somewhat refreshing in contrast to the confusing segmentation of x86 :)
@africabytoto4681
@africabytoto4681 4 жыл бұрын
Aw hell yeah, it seems after Summoning Salt's video on Contra, this game is going to be a hot topic on KZbin for a while. Nice!
@DisplacedGamers
@DisplacedGamers 4 жыл бұрын
I was at the halfway point of making this video when Summoning Salt's video hit. I couldn't believe it! My first thought was, "I need to finish this Contra - BtC video NOW!" Love Salt's videos, btw.
@B3Band
@B3Band 4 жыл бұрын
Nah, confirmation bias. Two videos != everyone will now be taking about contra.
@bedwablackburn
@bedwablackburn 4 жыл бұрын
Add the big 20 race next weekend and this is an exciting time for Contra for sure.
@jamesmerkel1932
@jamesmerkel1932 4 жыл бұрын
Now if we could only get a decent update to the series that includes all the old 2D versions as a bonus. Hell, even if they were unlockables that'd be fine. I just want a good platforming shooter that doesn't involve anthropomorphic characters lol
@Tom_Van_Zandt
@Tom_Van_Zandt 4 жыл бұрын
Not that it means two craps to anyone, but coincidentally I'm going to upload my review for the original Contra on the NES later this evening. I do rapid 60 second reviews. I plan on releasing 2 reviews every week; 1 on Monday and 1 on Friday. Contra will be my 4th such review. Keep on gaming, gamer dudes!
@PadChords
@PadChords 4 жыл бұрын
Right video at the right time. I'm working on a game where the player can balance points between different weapon properties, including rate of fire, to design the kind of gun they want. Especially when it comes to maintaining accurate, or at least good enough, collision detection, it's a challenge. I'm starting to appreciate why game developers (engineers, really) impose certain limitations as well as why it's so important when they're able to push past those limitations to achieve something no one else has.
@raszop
@raszop 4 жыл бұрын
Lol
@vuurniacsquarewave5091
@vuurniacsquarewave5091 4 жыл бұрын
I've come across this inherent limitation as well. The fastest permitted movement can not exceed the smallest possible hitbox width/height, otherwise things can potentially pass through eachother. That is, unless your CPU is fast enough for you to check collision at every pixel, instead of adding the offset directly.
@thenoseguy
@thenoseguy 3 жыл бұрын
did anything come of that? it sounds interesting.
@aaroncarsonart
@aaroncarsonart 4 жыл бұрын
I was not aware of the extra content in the Famicom version, so thanks for pointing that out! Also, I have to say I really appreciate the quality and depth of these dives into the inner workings of the game. As a computer science major, it was fun to learn more about how they program old games like these. Kudos to your excellent work here!
@DisplacedGamers
@DisplacedGamers 4 жыл бұрын
Thanks, Aaron!
@platinumhawke
@platinumhawke 4 жыл бұрын
That hacked Rapid Spread shot is a thing of alien mulching beauty.
@hybridgaming8341
@hybridgaming8341 4 жыл бұрын
KZbin needs way more creators with this level of skill and knowledge.
@chambres
@chambres 4 жыл бұрын
GODDAMN man that was really interesting, please do more!!
@gabrielhermel6932
@gabrielhermel6932 3 жыл бұрын
Neat way to do a looping switch statement. I like how you highlight the little bits of ingenuity we'd otherwise never notice.
@deusexaethera
@deusexaethera 4 жыл бұрын
Man. I haven't had to parse assembly code since college. This was a good quick refresher.
@ಠಎಠ
@ಠಎಠ 3 жыл бұрын
I love this series. I'm one of those sickos who prefers assembly over OOP, and I grew up on these games. Still play em!
@neerajdikshit5302
@neerajdikshit5302 4 жыл бұрын
Props to KZbin's algorithm for learning my latest uber niche interest and recommending this channel to me, seeing as I follow Coding Secrets and a few others as well. Plus I'm teaching myself 6502 assembly so this is a godsend.
@williamdrum9899
@williamdrum9899 3 жыл бұрын
I'm trying to learn it too. I still don't quite understand how the code worked. I get that the Konami Code inputs are like a table and Y is used to load each item in the table during the loop but I still don't understand how the table is created in the first place
@jodysgamingchannel9480
@jodysgamingchannel9480 4 жыл бұрын
I'm taking EE at school (in the states), and these videos are actually really great! Not only do they illustrate things from class, they are a great motivator when I get into a "What am I going to USE this for?" funk. Thanks for taking the time!!
@ZVINTAO
@ZVINTAO 4 жыл бұрын
PLEASE BRING MORE VIDEOS LIKE THESE!!! I TRULY LOVE THEM ALL
@Komeuppance
@Komeuppance 4 жыл бұрын
Anyone who disliked this extremely well produced and informational video is not even capable of entering the Konami code.
@taemien9219
@taemien9219 4 жыл бұрын
I like how the modified spread turned its damage potential up. It lost its vertical spread, but concentrated the damage in line with where it was aimed. Also I'm always fascinated by assembly. Its a language we use to get machines to function in a way we want them to.
@ivragi
@ivragi 2 жыл бұрын
In a similar fashion speedruners with high button press per second and a right rithm to it can transform spread to almost a single line and do impressive fast kills of the bosses.
@ballandpaddle
@ballandpaddle 4 жыл бұрын
Awesome video! I didn't expect you to show us how to *program our own NES codes,* but thank you!! One of the reasons why this channel is so awesome.
@DisplacedGamers
@DisplacedGamers 4 жыл бұрын
Thanks, ballandpaddle. Starting with the Mario 2 video, I thought it would be fun to try to create a new code in each "Behind the Code" video I make. I'll try to keep the tradition alive as best I can.
@mistermoo7602
@mistermoo7602 4 жыл бұрын
I've wanted to know exactly how cheats like the Konami Code worked under the hood since I was 13. Totally adding you to my Patreon pledges.
@nickwallette6201
@nickwallette6201 4 жыл бұрын
Yeah, these things that track sequences are much easier for people than computers, and I was also curious how exactly they did it. Glad to have that itch scratched!
@patrickbennett439
@patrickbennett439 4 жыл бұрын
Im 38 years old and have too much time on my hands today, so i thought id watch a contra video, a game i played when i was like 6 and learn complicated stuff about a 30 lives code today. YOu have helped me complete my mission. That was all i needed to do today.
@dragonore2009
@dragonore2009 2 жыл бұрын
What amazes me, is this is how NES games were made, via assembler. Isn't that just amazing? None of us knew this as kids, it would be difficult to make games like that today.
@beipiaosaurus
@beipiaosaurus 4 жыл бұрын
Very interesting video series on something I've never given much thought to. I would love to see a video on how our modern ability to watch code in real time compares to whatever programmers had to do in the 80s when designing it. What amount of documentation did they create, what resources did they have for debugging, etc..
@ayjanu
@ayjanu Жыл бұрын
The first game I ever remember playing... Still holds a soft spot in my heart. Thanks for diving into some of the code!
@ChrisR
@ChrisR 4 жыл бұрын
Well done. I played this one a bunch decades ago...one of the best NES titles IMHO.
@press_pause2236
@press_pause2236 4 жыл бұрын
What a great video and great explaination! I don’t understand why you do not have more subscribers and this other Vintage Gaming Dude who does not explain anything is rocking KZbin. You seriously explained the code line by line - so interesting, so nice. Thanks a lot!
@BoundaryBreak
@BoundaryBreak 3 жыл бұрын
Dang my Contra video didnt do well at ALL! Im glad you had more success with yours
@romulopereira4030
@romulopereira4030 4 жыл бұрын
It's 6am, I didn't sleep yet and I'm watching this wonderful piece of retro tech curiosity. I lost control of my life.
@lis6502
@lis6502 4 жыл бұрын
As an 6502 assembly enthusiast i've found this explanation entertaining and comprehensive, yet understandable for non-6502 folks. I really appreciate effort and thourougness that was put into this material, it's like kind of deep diving without actually drowning ;d
@welbow
@welbow 4 жыл бұрын
Great video! Definitely falls into the category of never have thought about how it works, but once you see the video, you must watch immediately :)
@Bryan-lu4du
@Bryan-lu4du 3 жыл бұрын
I absolutely love these. I used to be part of the rom hacking scene during the early days, but never got much further beyond dumping and inserting scripts for potential translations, changing fonts, writing a few documents on pointers, and using brute force to help me figure out much of Ninja Gaiden 2’s level data to code a potential level level editor. Learning assembly was always beyond my capabilities but I no less find these videos interesting and enjoy seeing how you dissect everything. One game I would love to see you tackle is Dragon Warrior 3 and the fun you could have with it. I once made a game genie code (which I can no longer find) that allowed us to push any of NPCs in the game as you would the moveable boulder object. I remember it was a lot of fun because in the town that slowly builds up later in the game there is an NPC that blocks an entrance to a room that has a staircase in it and there were no events in the game that would cause them to move so that we could access the stairs to see where it went. Well, with the game genie code I was able to push them out of the way and finally access those stairs. It just went to a generic room with nothing in it but it was still cool to do. The funniest thing I did was push an NPC into the town’s pond and it simply disappears into it and does not walk back out. I can imagine this would be fun to use early in the access areas in a different order or cause general shenanigans. It might be asking a lot but I would love it if you could figure out how to do this in the game via modification of the memory or rom and have a useable game genie code so everyone can experience the fun I had with it. Thanks!
@AndyGamezoldschool
@AndyGamezoldschool 4 жыл бұрын
Konami always had these codes in all the games they made.I would put random stuff in passwords and controllers or names in Metal gear and find super cool strange weapons. I didn't understand tho cause I was a kid.Great video here.
@unstablepacifist1672
@unstablepacifist1672 4 жыл бұрын
A really wonderful channel. Even though you're speaking some alien language to my ears, I'm fascinated with it and wanted to say thanks.
@davidhand9721
@davidhand9721 Жыл бұрын
Work like this is one of my favorite things to do in the universe. I like to reverse damage equations and stat upgrades when the game isn't forthcoming about them. That's typically less involved with dynamics like this, but it's a very similar process. Figure out where the game is storing HP with a few simple searches of ram. Set a breakpoint for writing it. Get hit to trigger the breakpoint. Step out at the RTS or RTL to get the address of the JSR or JSL, look at the operand to find the address of the function that was running. Breakpoint that for execution, wait for it, log and fill in the blanks with a disassembler I wrote, and dig through the code to figure out what's going on, where it's stored, set more breakpoints to investigate what data is where... So much fun! The moment when all the seemingly random and meaningless addresses and calculations finally look like a cohesive, sensible system that performs a meaningful function, that "a-ha!", is like a drug. Very satisfying. I imagine this is what archaeologists and anthropologists feel as they sort through a heap of refuse and broken artifacts to reconstruct a story of what real people did with their lives in the past. I'm a lot better at figuring out what coders are doing than people, but it's a similar task.
@xRocketzFighterx
@xRocketzFighterx 4 жыл бұрын
I'm a contra noob but I love this series. Studying game programming code, this video is pretty helpful getting me to understand how code works.
@edmund-osborne
@edmund-osborne 4 жыл бұрын
I love this style of video, so few youtubers are willing to dive into assembly code and explain how it works. I subbed from this video alone and hope to see more like it! Keep up the good work!
@RICHUNCLEPENNYBAGS77
@RICHUNCLEPENNYBAGS77 4 жыл бұрын
This is cool. We're kind of spoiled these days and rarely have to dive into code this low-level but it's a really fun thought exercise if nothing else.
@brianwindson9656
@brianwindson9656 4 жыл бұрын
this was amazing I'm really glad you made this video. I loved learning assembly in my university, it's really cool seeing someone talking about the code in games and accumulators and such
@Kawa-oneechan
@Kawa-oneechan 4 жыл бұрын
THANK YOU for not considering Start a part of the Code! I saw this video in the list and I just *knew* the Code would come up. Even Konami themselves messed it up so it is *very* good to see the record put straight by someone else besides me.
@jessejennings3828
@jessejennings3828 4 жыл бұрын
Good luck having access to what code unlocks without start..
@tiradouken2854
@tiradouken2854 3 жыл бұрын
@@jessejennings3828 lol burned 🔥😂!
@ramakrishnamishra8179
@ramakrishnamishra8179 4 жыл бұрын
I have a hacked multi cart with 100 lives from the start! Love it!
@ismaelfarfan2990
@ismaelfarfan2990 4 жыл бұрын
I just love how a single Java object requires as much memory space as a (super optimized) whole NES game.
@machouchacha
@machouchacha 4 жыл бұрын
This is absolutely fantastic content. Thank you so much! It would be incredibly interesting to look behind the code of game bugs that speedrunners use!
@DisplacedGamers
@DisplacedGamers 4 жыл бұрын
I really enjoy watching the speedrunning community. There are so many fun people to watch. As a side note, I was near the halfway point of creating this video when Summoning Salt released his Contra World Records video. I couldn't believe it! So I pushed a bit to try to get this one out sooner. I may look into some of those bugs/exploits of speedrunners in the future. Best case - I stumble upon something they can use.
@CynHicks
@CynHicks 4 жыл бұрын
I know it's been said way too many times but for my generation it's so deeply imbeded in our mental and muscle memories that even when we're old and senile, forgetting our own children and spouses we will remember this code. Lol
@joeknowsavings
@joeknowsavings 4 жыл бұрын
I need more of this behind the code series! These have been fascinating!
@cactoidpinata
@cactoidpinata 4 жыл бұрын
Thank you for another great video! You tackle so many interesting topics. I always look forward to your next video, so please keep up the awesome work!
@mjallen1308
@mjallen1308 3 жыл бұрын
My cousin LOVED this game. I used to watch him play this on his NES. I still remember that big ass C in Contra lolmao
@kraftwerk974
@kraftwerk974 4 жыл бұрын
Didn't know it was possible to disassemble the code in a catridge ROM. Very interesting thank you.
@InsaneFirebat
@InsaneFirebat 4 жыл бұрын
I'm interested in learning more assembly. Thanks for sharing!
@Poisonjam7
@Poisonjam7 4 жыл бұрын
I love this series! Even though I know next to nothing about programming (especially assembly) I love seeing how games work and what’s going on under the hood, so to speak.
@OMGicantwayyyyyyyyyy
@OMGicantwayyyyyyyyyy 4 жыл бұрын
Awesome work. You cover a lot of great MCU basics here for new programmers as well as providing some interesting bits for the more experienced.
@bad-people6510
@bad-people6510 6 ай бұрын
Wanted my first attempt to be a side-shooter. Glad to see projectile movement is easier than expected.
@NameNotAlreadyTaken2
@NameNotAlreadyTaken2 Жыл бұрын
The assembly for the konami code is amazingly compact considering how simplistic the 6502 instruction set is (compared to, say, the Z80).
@barowt
@barowt 3 жыл бұрын
If someone watches enough of your videos, they're going to be able to make the best NES game ever in Assembly. 😁 Man, Nintendo developers would have been watching your videos back in the day as tutorials.
@HotwheelsDaniel
@HotwheelsDaniel 4 жыл бұрын
Crazy underrated channel! You just earned a sub!
@BlackHoleForge
@BlackHoleForge 4 жыл бұрын
I just came across your content about behind the code yesterday. I watched a few episodes, and I really like them. I was happily surprised to see a new video today. Thank you and keep up the good work, and don't worry if it gets a little too technical, we'll eventually figure it out.
@DisplacedGamers
@DisplacedGamers 4 жыл бұрын
Thanks, George. Your comment means a lot.
@ggsgonzales
@ggsgonzales 4 жыл бұрын
More! More! More! Loved assembly back in college (long time ago) and these videos certainly reel in a lot of nostalgia.
@tchitchouan
@tchitchouan 4 жыл бұрын
even though i didn't understand the technical stuff i still enjoyed the video thouroughly
@atomicnoexcept
@atomicnoexcept 4 жыл бұрын
Thank you for taking the time to do this video! I am learning NES style 6502 asm with your videos :)
@opelman5173
@opelman5173 4 жыл бұрын
This Channel was an awesome Discovery. I'm learning a lot.
@herschell64
@herschell64 3 жыл бұрын
I know nothing about coding yet I really enjoy your videos as explains what's going on in the code though sometimes it half goes over my head like the Zelda 2 one which I had to rewatch and I then understood it more
@williamdrum9899
@williamdrum9899 3 жыл бұрын
As someone trying to learn 6502 this is incredibly helpful
@Binxalot
@Binxalot 4 жыл бұрын
These are great, please keep making these videos they're very interesting. If you're taking requests mike tyson's punch out is said to have secrets that have still yet to be discovered by players including the recent easter egg of the guy in the crowd.
@DisplacedGamers
@DisplacedGamers 4 жыл бұрын
Love that guy in the crowd. I watched a good deal of Sinister1 and Summoning Salt on Twitch, so MTPO has been on my "list." The question is how much time do I want to devote to it. Hmm
@matthewrease2376
@matthewrease2376 4 жыл бұрын
I've always been curious about the code behind the Konami Code. Thank you so much. It's probably much easier to do it this way when you only have the 8 inputs, vs a computer game with 102+ inputs...
@vuurniacsquarewave5091
@vuurniacsquarewave5091 4 жыл бұрын
Now, there's also nothing stopping you from including impossible button presses, like up-down or left-right simultaneously. This is merely a physical limitation of an NES controller D-pad. The circuit has no problem representing this in binary. But many games were not meant to handle these inputs, so funky things can happen. Just check out the TAS run of Mega Man 1 for reference.
@ElvisAaronBU
@ElvisAaronBU 4 жыл бұрын
Awesome video! I love hearing all those technical details!
@anonneymous9949
@anonneymous9949 4 жыл бұрын
Super thanks for this video. All my life i thought my memory was wrong, as the contra in my head usually different compared to other people i know. The roms i played also feel different from my memory. Turned out i played the japanese version!
@brynshannon6692
@brynshannon6692 4 жыл бұрын
I understood more of the programming segment than I thought I would. Seems my programming experience - though admittedly not in assembly - is helping me a bit.
@djhaloeight
@djhaloeight 4 жыл бұрын
Awesome! Another Displaced Gamers upload!
@ChadDoebelin
@ChadDoebelin 4 жыл бұрын
You broke it down barney style. Excellent presentation on the code trace.
@comcfi
@comcfi 4 жыл бұрын
This is some good stuff. I’m working on my CS degree and am taking an assembly language class that covers a lot of what you talked about. Awesome job on all your vids.
@comcfi
@comcfi 4 жыл бұрын
referral madness Thanks. I’m learning x86 Assembly.
@SergioBobillierC
@SergioBobillierC 4 жыл бұрын
Nice video. I did noticed a few of Anders Enger Jensen's tracks on the background. Nice touch. :)
@jeremyarroyo
@jeremyarroyo 4 жыл бұрын
I speedrun this game and I'm pretty tight with the contra community. This was a very well done video and your explanations were done very simple and very easy to understand. I dropped this to the community so they can also check this out. Looking forward to more videos 👍🏻👊🏻💪🏻
@ciscornBIG
@ciscornBIG 3 жыл бұрын
Did you guys know i was speedrunning this in kindergarten in '88 to the applause of no one?
@bortzanator3018
@bortzanator3018 4 жыл бұрын
I love your voice and videos. Keep up the great work! PS your MSX vid was probably my favorite.
@AICJDR
@AICJDR 4 жыл бұрын
One of the best gaming channels on here. Love this stuff!
@ChupoCro
@ChupoCro 4 жыл бұрын
*6502 and Z80 based arcade machines from Golden age - Behind the code* series would break all video views records!! :-) For the very first 6502 hardware/code analysis I am voting for *Phoenix* and for the very first Z80 hardware based arcade machine to be analysed I am voting for *Scramble* arcade machine. Some true gems of m/c programming were used in many of early arcade machines to overcome the limitations of the hardware and many really interesting routines could be found in known arcade machines from early 80s (for example, Z80 routine for calculating the address of the mirrored position in Pac-Man's video RAM is brilliant and very interesting). Another interesting topic would be explaining why video RAM to screen position mapping in various systems was really strange. For example ZX Spectrum's video RAM was organised in a particular way in order to be able to "calculate" the next row address by doing just INC H (if HL was holding the address in video RAM). Pac-Man's video RAM organisation is quite interesting as well.
@lustechsource5197
@lustechsource5197 4 жыл бұрын
Awesome vid! Always good to see what's going on in the NES's brain while a game is running.
@dblczx6819
@dblczx6819 4 жыл бұрын
I love this. This appeals to my love for gaming and my programmer experience. You've got yourself a sub, and I look forward to seeing what you do next.
@gl0wcat
@gl0wcat 2 жыл бұрын
This is the most fascinating thing I've seen in a long time. Really well put together, well explained, and visually organized to simplify something that seems like hieroglyphics to us non cheatengine users. Great video
@mresturk9336
@mresturk9336 4 жыл бұрын
Using this video as a reference I hacked my version of the Japan Contra to active the 30 lives code by simply pressing B once. Though ironically I may never use the hacked version as it lacks the charm of inputting the Konami code. Was still a fun and quick little experiment.
@Rolo-Tony
@Rolo-Tony 4 жыл бұрын
Top quality content and we'll explained for multiple levels of familiarity with assembly! thanks!
@jonathanmckinnley4104
@jonathanmckinnley4104 4 жыл бұрын
Keep up the great work man, I recently found your channel but I binge watched nearly all your content.
@gonzalotorres5282
@gonzalotorres5282 4 жыл бұрын
Nice knowing something wonderful like the Konami Code.
@justsupersteve
@justsupersteve 4 жыл бұрын
Woooowwww! This is an amazing video, and let me tell you man, don't apologize for excessive use of technical language here ! Every piece of information on this video was very interesting and thought I understood half of it, it still was very interesting!
@O.M.JaYY3
@O.M.JaYY3 4 жыл бұрын
WOW! Man, this was a great video! Loved this game when I was a kid. Thank YOU!
@dkast5
@dkast5 4 жыл бұрын
Man this was a great video. Thank you for these insights and please keep making great content like this!
@PronatorTendon
@PronatorTendon 3 жыл бұрын
I've been making my own codes for NES and SNES games for a decade and I still don't know what other memory registers apply to Funny, I've always just poked the memory location that applies to quantity of lives. Now I know where to poke in order to make the Konami code automatically activate 💪🏽💪🏽
@SyphistPrime
@SyphistPrime 4 жыл бұрын
Three only thing I would recommend next time for the assembly sections is to mention that branch instructions and whatnot check the processor state. I was confused as to how it knew the previous value was equal and had to look it up. Assembly walkthroughs like this though are helpful as I'm not experienced with it but I hopefully plan on trying to program in assembly for something at some point.
@ShadowSumac
@ShadowSumac 4 жыл бұрын
Amazing video. Thank you! I'd suggest Batman: Return for the Joker on NES to study for this channel. Or Recca, Summer Carnival' 92, not really sure which one is the real name.
@Diablokiller999
@Diablokiller999 2 жыл бұрын
Looking at ASM code gives me some inner peace and I don't know why. Same with soldering, could do this all day, like vacation for my brain :D
@lean.drocalil
@lean.drocalil 4 жыл бұрын
BCC actually means Branch if Carry Clear (jump if Y < $0A). I believe you said it checks for equality for the purpose of cleanliness 😉 EDIT: this commented has been edited due to a mistake I made attempting to reference the behavior of the carry flag. The 6502 instead resets the carry flag on borrow, effectively making BCC the same as "branch if less than". Great video!
@DisplacedGamers
@DisplacedGamers 4 жыл бұрын
I originally scripted this to use a more structured/literal assembly presentation but then elected to streamline it by simplifying the flow a bit. Heh. Thanks for your comment, Leandro!
@firebladex8586
@firebladex8586 4 жыл бұрын
that would be the intel equivalent of JNC
@cesarkopp2
@cesarkopp2 4 жыл бұрын
Olha só... um brasileiro perdido por aqui. :D
@lean.drocalil
@lean.drocalil 3 жыл бұрын
@@cesarkopp2 Resposta atrasada é melhor que nunca responder 😁😁 Estamos na área 😎
@lean.drocalil
@lean.drocalil 3 жыл бұрын
@@DisplacedGamers Hey, man! Thank you for answering! I've just edited my comment because my explanation of instruction BCC was inaccurate. It's still branch on carry clear, but the 6502 acts in much the same way as the PIC and will RESET the carry flag on borrow.
@Heisenberg2097
@Heisenberg2097 2 жыл бұрын
Nice video. I was ten years old when I first used LDA, LDX, LDY, CMP, BEQ, RTS... that was in 1981... great memories. THX for the nice video. All computer science students should start learning programming on a good old eight bit machine to understand that computer science is not computer science but rather the science of information processing... and some tech... As nowadays the young people have a ridiculous amount of wasted code and burned bits and bytes. As we all know. EVERY SINGLE BIT COUNTS.
@GreenShoeGarageTV
@GreenShoeGarageTV 4 жыл бұрын
Very well done, love the assembly walkthrough!
@QuiteOldOrange
@QuiteOldOrange 4 жыл бұрын
Awesome series of videos, keep up with great work!
@torrentthom4734
@torrentthom4734 4 жыл бұрын
This is really interesting and valuable. Thank you for sharing your insights!
@matthewmorgan1715
@matthewmorgan1715 4 жыл бұрын
I love these videos. Keep up the amazing work!!!
@ಠಎಠ
@ಠಎಠ 3 жыл бұрын
I remember thinking it odd that if I paused the game with bullets onscreen, they disappeared - but only sometimes. And now I know why. I spent 30 years wondering if I was crazy.
@SpeakChinglish
@SpeakChinglish 4 жыл бұрын
If my university coursework for learning assembly was creating a contra mod, I'd be so good with assembly right now
@Echooff3
@Echooff3 4 жыл бұрын
So good! More of this please!
@UpcycleElectronics
@UpcycleElectronics 4 жыл бұрын
this is worth the bell notifications, set
Zelda 2 - Behind the Code
28:28
Displaced Gamers
Рет қаралды 291 М.
The Hidden Source Code in Dragon's Lair (NES)
20:29
Displaced Gamers
Рет қаралды 162 М.
If people acted like cats 🙀😹 LeoNata family #shorts
00:22
LeoNata Family
Рет қаралды 43 МЛН
Quando eu quero Sushi (sem desperdiçar) 🍣
00:26
Los Wagners
Рет қаралды 13 МЛН
Contra NES speedrun in 10:23 by Arcus
13:45
Arcus
Рет қаралды 178 М.
How we fit an NES game into 40 Kilobytes
12:04
Morphcat Games
Рет қаралды 3,6 МЛН
ALL Bosses Comparison - Contra Remake vs Original
12:55
mlane_otta
Рет қаралды 775 М.
35 Broken NES Games - Will Cleaning Fix Them?
28:43
Restorish
Рет қаралды 10 М.
How Speedrunners BROKE Castlevania's Scrolling - Behind the Code
17:24
Displaced Gamers
Рет қаралды 97 М.
SECRETS, CODES, & INTEL | Metroid Declassified NES | NESComplex
25:46
If people acted like cats 🙀😹 LeoNata family #shorts
00:22
LeoNata Family
Рет қаралды 43 МЛН