Nintendo (NES) Controller - Electronics

  Рет қаралды 133,262

Displaced Gamers

Displaced Gamers

Күн бұрын

Пікірлер: 297
@JamieBainbridge
@JamieBainbridge 5 жыл бұрын
Absolutely beautiful. Some of us learn the theory and code a microcontroller to use a real controller. You attack the same problem from the entire other direction and make an entire pretend controller to interact with a real console, then view it on a scope. Not having either an oscilloscope or the experience to use one, this sort of low-level investigation was thoroughly enjoyable. Well done and thanks as always for your videos!
@etansivad
@etansivad 5 жыл бұрын
As someone who just bought his first breadboard this week, this video was really helpful in understanding the fundamentals with a controller I grew up using :D
@stillrabit73
@stillrabit73 5 жыл бұрын
Biggest thing I will urge any new electrical hobbyist / maker to learn (beyond basic components) is multiplexers, opamps, and shift registers. You can make so much cool shit with just those three things and complementary components of course.
@VoidHalo
@VoidHalo 5 жыл бұрын
Welcome to the world of electronics. I just got into it myself a couple of years ago. Two sites I'd strongly recommend checking out are Circuitmod on Paul Falstad's site, which is a great circuit simulator that really helps to visualize what's happening in a circuit, as well as helps to design and understand simple circuits. It has some great examples of fundamental circuits, both digital and analog. The other is the textbook section of allaboutcircuits.com It's laid out in order of what you should start with, going through DC, AC semiconductors and digital circuits in many detailed, but easy to understand chapters. Both sites were instrumental in helping me to get where I am today in terms of my knowledge, though I had many other resources to help me. These are just the two main ones. As a bonus, I'll also recommend checking out a program called Logisim. It's another circuit simulator, but it focuses purely on digital circuits. It's flexible enough that you could design and simulate a full computer within it. In terms of advice, the most important thing I can tell you is don't rush the learning process. And don't shy away from the math. I can't overstate how important math is for this. A lot of people are scared of it, but I found in the context of a practical application, it's not nearly as painful as it was to learn math in school. But enjoy the journey, and don't worry too much about the destination. There is a ton of stuff to learn in electronics. College students don't even get into transistors until 2nd year. So just try to take your time so you don't end up with any gaps in your knowledge. It's better to spend a few days or weeks making sure you learn something proper than to spend years being hindered by a gap in your knowledge. There's no harm in jumping ahead if you're curious about something, but take care not to get distracted and forget about the fundamentals. So many times I've tried to jump ahead, only to find I need to know about half a dozen other things if I want to have any understanding of whatever I jumped ahead to. And don't be put off by failure. Failure is what helps us learn more than anything else. Cheers. And happy learning. :)
@vasili1207
@vasili1207 5 жыл бұрын
@@stillrabit73 ok i will take that on board.... how much more intrest did you get when you switched banks? 😊👐
@stefanegger
@stefanegger 4 жыл бұрын
what is a breadboard ? He talks about NES console
@livefreeprintguns
@livefreeprintguns 3 жыл бұрын
I've only been a subscriber for about a week now, but my god the amount of appreciation that I took for granted as a child in regards to televisions, consoles and how to interface them (ie: RF modulators, RCA cables, etc...) grows exponentially with each video of yours I watch. Truly next-level amazing stuff my dude!
@benjaminbrady2385
@benjaminbrady2385 5 жыл бұрын
I just found this channel and I just needed to say how amazing it is!!
@RustoKomuska
@RustoKomuska 5 жыл бұрын
just recently started learning electronics in college, cool to recognise the stuff ive learned in class while screwing around on youtube
@colestunden7572
@colestunden7572 5 жыл бұрын
New favorite channel! Love the topics you cover like sound preservation or the history/explanation of television signals. On a binge now. This channel deserves more eyes from the gaming community. I found the channel on a algorythm reccommendation, hope others do too.
@DisplacedGamers
@DisplacedGamers 5 жыл бұрын
Thanks, Cole!
@Oyocat
@Oyocat 4 жыл бұрын
Anyone else have no idea what hes talking about but is listening intently anyway? Listening to someone know what they're doing feels so relaxing for some reason.
@Hamster07
@Hamster07 3 жыл бұрын
this was so well made you made me think i knew what you were talking about
@iCach0
@iCach0 5 жыл бұрын
Amazing! You do a great job at explaining technical stuff in a way that anyone can understand and find interesting.
@DisplacedGamers
@DisplacedGamers 5 жыл бұрын
Thanks!
@SdudyoyO
@SdudyoyO 5 жыл бұрын
Makes you appreciate the engineers who built these sorts of devices in the first place. Don't get me wrong, breaking this stuff down in an easy to digest way is complicated, but imagine having to design a controller before one existed. I think we take for granted just how complicated our every day devices are.
@KuraIthys
@KuraIthys 4 жыл бұрын
Well, game machine designers had an advantage here, because the kind of things they built existed in industrial control systems long before game systems. Joystick-like devices were developed hand in hand with aircraft. And while those were mechanical... Electrical switches also existed since electricity became mainstream. And well, not to be too blunt about it, but you know what an Atari 2600 controller looks like on the inside? Yeah, it's literally just a set of switches connected between wires that run to the console itself. It's about as basic as wiring a switch directly to a microcontroller at that point. This might've been novel in relation to it's use in gaming, but it was something that was in widespread use in electrical devices for decades by that point. The mechanical design of stuff like a D-pad is a lot more interesting overall. And more complex designs of course, yes, they did get pretty clever, but they had the older designs as a reference. (and many companies literally copied atari - right down to the connector used. - the various systems could all use the exact same controllers. You can even still attach a Mega Drive controller to an Atari 2600 and it mostly still works) Plus, a shift register is a very common component with a well understood purpose. (it converts parallel data to serial data and vice versa). These designs are very clever, don't get me wrong. But from an electrical engineering point of view they are extremely trivial. (the design of the plastic casing, d-pads, exact feel of the buttons and so on is actually considerably more challenging.)
@twn5858
@twn5858 4 жыл бұрын
Just a bunch of switches. Doesn't seem like it should be that complicated.
@Nordlicht05
@Nordlicht05 4 жыл бұрын
@@twn5858 Happens to me often at work... Why haven't you see this it's obvious... Yes now in this moment it's also obvious for me. But last week. Why didn anyone say a word... Yes!
@DiThi
@DiThi 3 жыл бұрын
I bet they started by wiring the buttons directly to the CPU, then ran out of IO pins so they added the shift register to the motherboard, to then realize they can move the shift register to the controller to use half as many wires. If they wanted to reduce the 4 player lag they could have used 2 or 4 IO pins instead of one.
@bearmatic
@bearmatic 4 жыл бұрын
This channel is a hidden gem. So glad it popped up as a suggestion after watching some Adrian Black's Basement. Your approach is thourough, yet light! So many topics I thought: "I've seen this kins of video before elsewhere, why should I bother?" just to be drawn in, marvel at the detail, listening to your crystal clear means of explanations and understanding most of it! So good. You're highly undersubbed!
@dsuess
@dsuess 5 жыл бұрын
Damn, i tip my hat to those engineers who made the system. That's badass! Thank you for exploring this breakdown, as the pint glass is raised to you
@Cab895
@Cab895 4 жыл бұрын
this blew my mind. How can someone be so thorough explaining something, yet at the same time make it so easy to digest.
@r.g.thesecond
@r.g.thesecond 8 ай бұрын
This channel is a goldmine for homebrew noobs (like me). Thank you for your unapologetic deep dives!
@JuanesChiwirosky
@JuanesChiwirosky 4 жыл бұрын
It Would be So cool if you can make a similar video about the N64 controller, since I was a child I was impressed with the fact that its connection only uses 3 pins.. Also thanks for sharing all this information and for making it as easy to understand as possible
@null_state
@null_state 4 жыл бұрын
Awesome channel. A lot is over my head, I admit, but I love how professionally done your videos are, and the retro 80s music keeps me glued as well!
@Komagb
@Komagb 4 жыл бұрын
This is the most in-depth analysis of the NES controller I've ever seen. Kudos!
@danielturner1891
@danielturner1891 5 жыл бұрын
Wow! This video is incredible. I’ve learned so much in just one video. I feel like everything should have just flown over my head, but I was able to grasp a lot more than I’d expect due to the excellent teaching leaving in even what feels like some of the more basic information so someone like me can “catch up”. Subscribed.
@danieljimenez1989
@danieljimenez1989 5 жыл бұрын
It's important to note that the latch pulse doesn't just mean 'gimme the sate of A'. The timing of the latch pulse defines the sample time for all buttons, the latch pulse says 'capture the state of all buttons right now and output A in the data pin'. The clock pulses then shift the output to the next button, but these clock pulses don't define when the buttons are sampled. Many snes games clock out slower than nes games did, because of the use of a hardware feature that automatically reads controllers, so they are 'more laggy' in that sense.
@DisplacedGamers
@DisplacedGamers 5 жыл бұрын
"Let's go. Gimme A" was a slang way to say that the NES latch-signals the moment in time to take a snapshot of the pressed buttons as soon as the register hits parallel mode, and the register immediately starts outputting the state of "A" to the NES. This is always the first button the NES is expecting. I mentioned it signaling a capture like a "snapshot" or a "photo" of the buttons states during the PCB section of the explanation, I believe. I suppose I could have mentioned it again in the scope section. I just wanted a bit of slang to help take away from the complexity of the scope. :) Appreciate you dropping the word about the slower clock out on the SNES, Daniel! I'd like to examine the SNES in a bit more detail in a future video. Always welcome your feedback!
@danieljimenez1989
@danieljimenez1989 5 жыл бұрын
@@DisplacedGamers To be clear, I think this video (and all of your others) are pretty good. The explanation was ok, but I thought I'd made sure to note that, just because there may be some confusion as to when things happen, exactly. Cheers.
@sa3270
@sa3270 5 жыл бұрын
I noticed on the oscilloscope it showed 8 shift pulses following the latch pulse. So am I right that the 8th shift pulse was not necessary? I suppose it's just the way the software loop was written.
@intel386DX
@intel386DX 5 жыл бұрын
16:58 in PAL NESes you have a diodes on controller imputes to prevent controllers without resistors (NTSC or clone ones) to work on the PAL console
@KuraIthys
@KuraIthys 4 жыл бұрын
Yeah, I had heard that applied to SNES systems as well. But I've had no problem using my Super Famicom controllers on a PAL SNES... Then again sometimes the protections are literally only to prevent US stuff working with anything else... Still funny to me though that Super Famicom carts fit in PAL SNES consoles and vice versa but have software lockouts... While the only reason a US SNES can't play Super Famicom games (and vice versa) is because of the respective shapes of the cartridges. (the US cart is simply too big to fit into a Super Famicom - while the Super Famicom cartridge has a solid back while the US console contains two plastic tabs that fit into cutouts on the US cartridge. - otherwise the two machines are completely inter-operable.)
@intel386DX
@intel386DX 4 жыл бұрын
@@KuraIthys heh yes I know very "smart" :protection (US vs JP) :D
@donchaput8278
@donchaput8278 2 жыл бұрын
I'd would be interested in additional breakdowns of controllers and the differences! Part 2?
@Riley_MDS
@Riley_MDS 5 жыл бұрын
So, After LGR, and other channel that cover up this type of content ( I forgot the channel name ), your video got into my Recommendation.. Finally I can watch more content like this while doing my Fanmade project.. Thanks for making me stay up and not get bored :3
@ahobimo732
@ahobimo732 4 жыл бұрын
This is one hell of an awesome video. It takes a complicated subject and explains it with perfect clarity, at the level of a total beginner. Everything is explained so rigorously and logically. This is high quality education.
@Kippykip
@Kippykip 5 жыл бұрын
I thought I was the only one that thought the NES pins didn't make sense with the amount of buttons on there. This makes way more sense now
@fintux
@fintux 4 жыл бұрын
I always wondered as a kid how the controller worked as there were less pins than there were buttons, and considered also that even if the d-pad only had one position, it would take three bits (none, up, left, down, right), so it didn't explain. So I figured there must be something smarter there, but I never dug out what it was... But now I know. I liked the style of the video: it explains everything from the ground up, but still progresses quickly enough even for somebody that already knows at least the basic concepts. Maybe a video on the Zapper at some point? :)
@AndyGoth111
@AndyGoth111 4 жыл бұрын
6:30 It's possible to read the controller any number of times per video frame. For example, check out the pause feature in Dragon Warrior. Whenever Start is pressed, the game goes into a tight spin reading the controller as fast as it can until Start is pressed again. During this time the game does almost nothing else. The important exception is its common read-controller routine also increments the global random number generator each time. Thus, with sub-frame accurate timing, it becomes possible to use Start to continuously manipulate RNG without the game ever visibly pausing.
@cerno_b
@cerno_b 3 ай бұрын
Very helpful, thank you! I was trying to connect an NES controller to a Raspberry Pico and this helped me understand the concept of what is happening much better. It took me some time to figure out that the Latch and Clock lines are actually sent from the NES to the controller, but now it makes perfect sense. I am sitting here grinning like an idiot with a 64x64 matrix display hooked up to a Raspberry Pico and an NES controller that switches 0s to 1s on the screen when I press a button. I love it.
@Mr76Pontiac
@Mr76Pontiac 4 жыл бұрын
This video is almost a year old to where I'm watching it, but, it made me giddy watching it, and I feel the need to learn more about how this style of electronics work. I was always mystified to how multi-button controllers could work with so few wires coming out (Before the advent of USB, that is). Awesome video. Thanks.
@CAHSR2020
@CAHSR2020 5 жыл бұрын
Enjoyed the content and was able to keep up despite no electronics background. Well done. 👍
@twoodall88
@twoodall88 5 жыл бұрын
Well said all around! I really like the visual aid of the scope.
@Michirin9801
@Michirin9801 5 жыл бұрын
How have I only just found this channel? It's awesome! I'm subscribing now!
@DisplacedGamers
@DisplacedGamers 5 жыл бұрын
Thanks, Michirin!
@sickregret
@sickregret 4 жыл бұрын
Your videos are the most indepth and detailed gaming videos on here. You deserve a million subs!
@cyntwix
@cyntwix 4 жыл бұрын
Hey really great video! I took a class in college where I had to interface an NES controller to an FPGA. I was responsible for generating the clock and latch signals as well as receiving the data signal, processing it, and using it to interface with a computer. It's been a few years now and your video was a perfect refresher for what I had to figure out myself back then. If your video was out at the time, it would've made the project so much easier! great job
@malik641
@malik641 4 жыл бұрын
This content is incredibly high quality. Amazing. Great work! I look forward to watching more from your channel.
@OlujaDoTokija
@OlujaDoTokija 5 жыл бұрын
KZbin recommended some of your videos yesterday and I'm not going to lie. I have been subbed and watching your videos since then.
@Ryan-bn6kq
@Ryan-bn6kq 5 жыл бұрын
Your channel is awesome, dude!
@jn_gutierrez
@jn_gutierrez 5 жыл бұрын
Your channel is something my subconscious had been craving for quite a while. Congratulations and keep up the amazing work.
@DisplacedGamers
@DisplacedGamers 5 жыл бұрын
Thanks!
@Eddies_Bra-att-ha-grejer
@Eddies_Bra-att-ha-grejer 3 жыл бұрын
17:05 The Scandinavian NES was actually different from the continental European one, in that it did accept NTSC controllers. The Scandinavian SNES also used the same DC connector as the Super Famicom, while the continental one had a slightly thinner one.
@Clouds095
@Clouds095 3 жыл бұрын
4:31 "Because we would otherwise tie power directly to ground whenever we press a button. If this happened it would be bad" - Could someone explain why this is bad?
@antivanti
@antivanti Жыл бұрын
Fun fact. UK/EU (except Scandinavia) PAL NES systems has a bunch diodes in the ports and controllers to make them only compatible with these controllers. The other way around works fine however. I learned this the hard way when I imported an RGB modded NES from England and it didn't work with my Swedish controllers and ended up having to modify the controller ports. The reason Scandinavian NES uses the same non-region locked controllers as the US is because before Nintendo themselves launched the NES in Europe a Swedish company Bergsala got an exclusive import deal for Scandinavia. Not sure exactly why the controllers were region locked in the rest of Europe but I suspect that the partner Nintendo worked with didn't want their customers buying controllers sold via Bergsala or something. I think Mattel was the initial producer of European NES before Nintendo eventually took it inhouse. Bergsala btw still has that Scandinavian distribution exclusivity for Nintendo products. A deal that was sealed via the gift of a crystal ashtray btw 😊
@doge-of-venice
@doge-of-venice 5 жыл бұрын
Very well-made and informative video. Keep up the good work.
@volo870
@volo870 3 жыл бұрын
Wow! This is the longest and most detailed tutorial to shift registers on KZbin. I'd say you may recommend it to tinkerers, who are not even gamers.
@ImperatorScab
@ImperatorScab 5 жыл бұрын
Excellent video! I enjoy this technical, "deep in the weeds" type of stuff. Watching this and seeing how the old NES controller works got me thinking about something. How did the controllers with turbo buttons work?
@DisplacedGamers
@DisplacedGamers 5 жыл бұрын
Thanks, ImperatorScab! I will probably talk about turbo functionality in a future video.
@erniesdeck7550
@erniesdeck7550 5 жыл бұрын
I'm a new subscriber to your channel. I've been looking for a while for a channel just like this where things get explained on a technical level. I've been taking electronics apart since my parents VCR when I was 10. So I know my way. I'm happy I found this channel keep up the great videos.
@AsilarWindsailor
@AsilarWindsailor 5 жыл бұрын
Nicely done! I think this explanation might even be better than the one given by The 8-Bit Guy
@YNGBLD80
@YNGBLD80 Жыл бұрын
Love your content dude you're one very smart cat!, keep educating the masses with 8bit goodness
@TheKrensada
@TheKrensada 4 жыл бұрын
Thanks to this video, I can make a nintendo controller that fits my big hands.
@eburgos021
@eburgos021 4 жыл бұрын
Thank's for making the wiring easy to understand ! great help. Mr.G
@AndrewChalkley
@AndrewChalkley 4 жыл бұрын
This is a great explanation for an enthusiast like me who knows enough but not how to decipher circuit diagrams.
@RestoreTechnique
@RestoreTechnique 4 жыл бұрын
This is awesome, thanks!
@geckoo9190
@geckoo9190 3 жыл бұрын
this reminds me when i was a kid and tried to design my own joystick with some arcade spare parts, everything was going well until I reached that integrated circuit, years latter I made some experimental snes joysticks, i made one with a globe, one with a cardboard box and one with a sponge, the last one was very sensitive, one of the best joysticks that i ever had
@lennonmclean
@lennonmclean 2 жыл бұрын
Fun fact: the other two pins on the controller port are used for the zapper gun. One is for the trigger and the other is for the light sensor.
@FLUFFSQUEAKER
@FLUFFSQUEAKER 2 жыл бұрын
Beautiful in-depth, but easy to understand explaination!
@SamuelCarrier
@SamuelCarrier 4 жыл бұрын
Amazing stuff. Perfect channel for thinkering retro gamers!
@ThePerfectKiosk
@ThePerfectKiosk 3 жыл бұрын
The DMC bug causes a read operation from the CPU to be performed twice, and reading the controller state register is what sends the clock pulse to the controller. The controller state is corrupted because one of the button states is lost when this happens. In 2014, it was found that the DMC read occurs on only even (maybe it was only odd?) CPU cycles, as well as the object DMA function. When DMA completes, the CPU is always on an even or odd cycle (I forget which it is), so controller state can be reliably processed even while DMC samples are in use.
@GregStrike
@GregStrike Жыл бұрын
What an awesome explanation man, thank you! Some good information for my next video!
@davidklein8608
@davidklein8608 4 жыл бұрын
I would be very interested in learning how an analog controller like the N64 works or even the Gamecube controller with its analog shoulder buttons.
@williamdrum9899
@williamdrum9899 3 жыл бұрын
If I had to guess how the gamecube shoulder buttons worked, I would imagine it used an 8 bit number to store the pressure. For example: 0000 0000: Not pressed at all 0000 0001: Bare Minimum 0000 0011: A little more ... 1111 1111: All the way down That's how I would do it
@KopperNeoman
@KopperNeoman 2 жыл бұрын
The GameCube treats a digital press differently from an analogue one, as does the Wii Classic Controller. You can remove the analogue component entirely and the digital will still work.
@Kylefassbinderful
@Kylefassbinderful 5 жыл бұрын
The SNES controller is just adding another 8 bit shift register. There's a pin on the register that will shift the data into the next register allowing for 4 more buttons to be pressed X, Y, L, R. I believe they used 16 bit registers instead of two 8 bit registers. This is why you can use a snes controller on a nes if you just wire the correct for plug. Thb Shift Registers are my fav components.
@karld4737
@karld4737 5 жыл бұрын
How likely are the shift register chips to go bad? I have a few original controllers that no longer work. I assumed the wires were broken near the controllers case as I naively used to wrap them as a kid, but never found any breaks in the wires of the one I took apart and stripped. Solder joints looked good to me too. I assumed it was a problem with this chip tho I never knew what it actually was or called to this point.
@JBiggsNewJersey
@JBiggsNewJersey 4 жыл бұрын
Wow this is great! Excellent presentation and speaking. I was just searching for this specific subject but subbed for whatever you post
@alejmc
@alejmc 4 жыл бұрын
This is incredibly fascinating. As an BSEE myself, I wish we would have done a deep dive on video game gadgets and electronics just like you just did, we didn’t do that at all... would have been a great way to motivate the crowd. Electronics Engineering in my time at least had a very high percentage of flunked or, in the worst case, expelled students. A sad sight.
@Zeldagamer9000
@Zeldagamer9000 5 жыл бұрын
Dang! Where was this video a year ago when I was building my own custom controller? This will be incredibly helpful with finishing that project!
@liveness2006
@liveness2006 9 ай бұрын
2:46 What are the unused white and brown (ground) pads on the circuit? In the top right of the controller boared.
@WalrusFPGA
@WalrusFPGA 5 жыл бұрын
Thanks; I learned a lot from this video. Well-explained and great visual presentation for the information shared. Can't ask for more than that!
@dlang6487
@dlang6487 5 жыл бұрын
I love your videos! Keep the great content coming!
@SleepingCocoon
@SleepingCocoon 5 жыл бұрын
ha, i remember the original release of Rockman 4 MI (fantastic hack!) had the DPCM bug, i had no clue what the hell was going on until a new hardware compatible build was rolled out again, incredible work on the videos
@nensondubois
@nensondubois 4 жыл бұрын
The SNES Mouse are compatible with the NES and even setup to work with a very small amount of homebrew games. The Virtual Boy controller is also theoretically compatible but it is not implemented in any known homebrew.
@averywellsand888
@averywellsand888 5 жыл бұрын
Instead of a shift registry could they have used voltage levels to indicate what buttons are being pressed? Power ground and data. A being 5kohms or so and B being 4kohm... etc etc. Kinda like how some cars handle door lock input
@iwir3d
@iwir3d 5 жыл бұрын
This was either the 3rd or 4th video I have seen from this channel. The quality of your videos seems to be impressive so I went ahead and subscribed. Keep up the great work, I really enjoyed watching these videos.
@DisplacedGamers
@DisplacedGamers 5 жыл бұрын
Thanks!
@emmettturner9452
@emmettturner9452 5 жыл бұрын
I've actually found these with bad shift registers and replaced them. The FC dogbone also has a much shorter cord. I had a very late model one that also had the SMD shift register when I used to buy junk ones for repair. FYI: junk ones are often simply unplugged inside. They share components like buttons and rubber membranes with SNES and Game Boy controls. ;) It was parts-bin engineering in order to keep costs low.
@ranger81de
@ranger81de 5 жыл бұрын
Awesome explanation! Thanks!
@shadymaint1
@shadymaint1 4 жыл бұрын
I built an arcade stick for my NES. Even has turbo. Wish I had one when I was a kid.
@tastymonkey
@tastymonkey 4 жыл бұрын
I still have my NES Advantage and SNES Advantage controllers.
@john-tk2dn
@john-tk2dn 4 жыл бұрын
Funny. I am working on the same project. However I am running into an issue. Every 6 seconds, the nintendo will not recieve any inputs, then it will work for 6 seconds, and then not again for another 6. Kinda stumped
@shadymaint1
@shadymaint1 4 жыл бұрын
@@john-tk2dn sounds like a clock timing issue. Are you DIYing the circuitry or robbing parts from a controller. If your DIYing your shift register may be wrong. I took the guts out of a old turbo controller . Tapped into the ground plane and to each button. Was cheaper to go that route as opposed to building one. Controller only cost a couple bucks on eBay. Plus you get a cord.
@john-tk2dn
@john-tk2dn 4 жыл бұрын
@@shadymaint1 HA! i literally just came to post that yah, somehow i had one of my grounds connected to the clock pin LOL Not using breadboard, just using some prototyping board. And im well aware I can just tap into an existing board, but wanted to build from the ground up. I actually bout some of those really crappy controllers just for the cord and the connector :) Im just laying everything out and gonna have a custom PCB printed so i dont have to use jumper wires and have actual traces. Its just been a fun project :)
@shadymaint1
@shadymaint1 4 жыл бұрын
@@john-tk2dn right on man.
@CoolDudeClem
@CoolDudeClem 5 жыл бұрын
For a long time, I thought the NES used the same 9 pin game connector as the Atari, Master System and many other computers and consoles of the time. 8 "buttons", 9 pins, one pin being the "common" pin, makes sense right? Never having played a real NES, but seeing that 9 pin connector on famiclones also made me think that.
@redseagaming7832
@redseagaming7832 3 жыл бұрын
what's astonishing is that the the Nintendo Entertainment System or at least a time were patching a console was impossible so they had to make sure this console worked when they released it to the stores something I can really respect Nintendo for
@Megarushing
@Megarushing 4 жыл бұрын
Another incredibly interesting video! So much to learn from the devices that lived in our childhood
@KuraIthys
@KuraIthys 4 жыл бұрын
Ah, The good old atari joystick port. As used by Atari, Commodore, Sega and a ton of other companies... Sometimes with incompatibilities, and later on with very strange workarounds... I'm most familiar with it on the 800XL... Where it has so many functions mapped to the same pins it's kinda crazy. The basics are obvious enough; 5 'buttons', ground, an unconnected pin (technically held at +5 volts), and two analogue input pins. The buttons map to the standard controller, and the analogue pins are used for the paddles... But also for a mouse, if you use one (never officially had one, but you can use both Amiga and Atari ST mice with the system if you do the programming correctly), and the atari drawing tablet. You can also use the analogue pins as extra buttons if you build a controller a certain way and program the software the right way. So, is that everything? Actually, no it isn't. See, the 4 'button' pins that the joystick directions map to are technically a serial port. If you write to appropriate registers you can set the communications direction. By default they're all set as input pins (understandable), but you can also write to them and use them as outputs. And thus we got things like an electronics lab, a modem, and an 80 column text display device that all connected to the controller ports. This observation also means you can, with some basic conversion circuitry, wire up an NES or SNES controller and communicate with it properly as long as you write a custom program to do so. The NES approach is certainly interesting though. It's very flexible but also quite expandable, and uses quite simple circuitry (shift registers are very basic generic parts) The proof of this is that the SNES is electrically compatible with the NES, and the SNES contains internal logic to read controllers the way the NES does. The SNES controller simply has a larger shift register, hence more buttons. The Sega Master system (and turbographx in fact - which uses the same circuitry) as well as the 3 button mega drive controller also use a fairly simple bit of circuitry - a multiplexer chip, which takes an input line and a set of output lines to 'select' which set of buttons you can read at once. This is a fairly clever solution, but it doesn't scale easily with simple circuitry. Hence the 6 button Mega Drive controller contains a microprocessor and some fairly complicated timing logic to give the extra buttons without adding more lines to the connector... The SNES meanwhile would really only have to change the controller access programming to increase the buttons even further. (also there's a FLASH memory storage device that attaches to controller port 2. RPG maker uses it to let you save your work on something other than the RPG maker cartridge.)
@ryjelsum
@ryjelsum 2 жыл бұрын
You didn't mention the most fun part of the DPCM controller conflicts - because of that, in games that use the workaround you showed, if you mash buttons *really really really* fast, faster than a human or even a controller itself can likely physically do, you can basically influence when code executes, and eventually gain control of execution. Did I say eventually? I meant before the titlescreen loads. That's what the infamous TAS for SMB3 that beats the game in less than a second does.
@chafacorpTV
@chafacorpTV 5 жыл бұрын
Me, unaware on what the video is about: "I have no idea whats going on but I love it." * watched till the very end * Me, now wiser and well lectured on electronics: "What the hell? I have an actual understanding on what's going on."
@GilbertTang
@GilbertTang 4 жыл бұрын
Magnificent. I continue to devour your channel.
@GustavoValdiviesso
@GustavoValdiviesso 5 жыл бұрын
Great video. Very instructive!
@vuurniacsquarewave5091
@vuurniacsquarewave5091 4 жыл бұрын
You literally have to write the code for the NES to send those pulses. It is pretty easy, but you are literally using a single bit in the byte to communicate with the controllers. Latch, Set to serial, [read from the data line, save input to a variable, repeat 7x] and for games with DPCM samples, this can happen up to three times. That is, if there was a corrupted read somewhere in there.
@jessewilcox7475
@jessewilcox7475 5 жыл бұрын
Hey bro I've watched a few of your videos now and they're all really well done. I wanted to encourage you to keep making videos, and suggest you put a few more out there. You're a little bit older than me but I was playing DOS games from the time I was a young child, so I really appreciate not only your expertise but your perspective. I was super stoked to see a video on Jill of the Jungle! I think you should do more opinion/retrospective content about what makes old games continually compelling, maybe touch on how the technical limits affected developer creativity in producing such a diverse range of games as was enjoyed in that era. Your videos on dithering were outstanding in giving a glimpse into this, and in general I think your videos stand out relative to other KZbinrs on the topic, my only complaint being that most of your videos are too short and there's not enough of them. I'd really strongly encourage you to make more videos and a couple of deep dives into gaming history sometime. I'm sure this is easier said than done in terms of time, but I felt compelled to say I think your videos are not only really informative but really engaging. You're able to present the content really well too, and it's very endearing to see such an authentic passion for this era of gaming presented by an authentic person. I was pretty surprised to find out after I watched the first video of yours I saw that this channel wasn't huge. It's great stuff man, keep it up.
@bengineer8
@bengineer8 4 жыл бұрын
I am designing my own controller so this will be a massive help!
@jpjokela1
@jpjokela1 4 жыл бұрын
Nice video. The only thing missing was showing the Konami Code on oscilloscope :-)
@supasimon
@supasimon 5 жыл бұрын
You are massively under-subbed my friend. Awesome video quality!
@aceoft3482
@aceoft3482 4 жыл бұрын
Thank you for the very clear explanation! Fascinating stuff.
@gochadc
@gochadc 5 ай бұрын
Great video, truly clear and informative.
@NeoCortex3
@NeoCortex3 5 жыл бұрын
Who would think controller could be that interesting. Loved it.
@mirqjejq
@mirqjejq 5 жыл бұрын
Would love to see similar video regarding dualshock 2.
@DisplacedGamers
@DisplacedGamers 5 жыл бұрын
It might happen...
@MyLittleWalrus
@MyLittleWalrus 5 жыл бұрын
This video and the Luma video are really well done. I'd love to see more like this.
@DisplacedGamers
@DisplacedGamers 5 жыл бұрын
Thanks! I have one in the works...
@MyLittleWalrus
@MyLittleWalrus 5 жыл бұрын
[eyes emoji intensifies]
@dallase1
@dallase1 5 жыл бұрын
Intellivision had 15 buttons plus 16 directions on the disc for a total of 31 different connections or what you could technically call buttons since the controller is digital.
@stefanegger
@stefanegger 4 жыл бұрын
Nice video, not too bad. Some used a pin to determine the function, e.g. RGBI signal is I for Intensity so the 8 colors can be doubled to 16 by using the state of the I pin. I guess the Mega Drive works similar to make 8 buttons (4 direction, A, B, C and START) out of the usual 5 pins (standard Atari plug/layout).
@SuperCuriousFox
@SuperCuriousFox 3 жыл бұрын
`Thanks for teaching me why pull-up resistors are called that way!
@Rebateman
@Rebateman 4 жыл бұрын
And to think these came from the same species that drew on rocks...
@DashRetro
@DashRetro 4 жыл бұрын
Excellent video! My only question is, what made you go with 39K resistors in the mock-up controller, and how does the value of this resistor affect the behavior?
@YNGBLD80
@YNGBLD80 Жыл бұрын
Just revisited this again as super impressed just wondering though if you do read this can you just clarify how having a current limiting resistor stops the full effect of a 5v to GRND short. I appreciate we need to have some resistance to the current being drawn to ground in respect to the 5v supply but how does a little resistor with very little voltage drop across it act as "short breaker"? Cheers Franky
@cosmicrdt
@cosmicrdt 5 жыл бұрын
Would love to see more videos with electronics. Great stuff 👍
@JuneNafziger
@JuneNafziger 5 жыл бұрын
If anyone’s wondering, the extra pins on the port are for the zapper gun.
@rulojuka
@rulojuka 3 жыл бұрын
That was awesome. Thanks! I have researched for some related info on the SNES for ages and could not find much other than scattered txts around the web. Do you know some references on that or even intend to do a similar video on the SNES in the future?
@DisplacedGamers
@DisplacedGamers 3 жыл бұрын
I should probably do a SNES controller video. Wow. It has been a little while since I made this one. I don't have any references handy, but there might be one on console5.com?
@KryptekDragon
@KryptekDragon 5 жыл бұрын
Your videos are amazing. Thank you
NES Scrolling Basics featuring Super Mario Bros. - Behind the Code
17:25
Displaced Gamers
Рет қаралды 130 М.
Building a new NES in 2021: Introducing the NESessity DIY NES board!
22:34
Long Island Retro Gaming
Рет қаралды 318 М.
IL'HAN - Qalqam | Official Music Video
03:17
Ilhan Ihsanov
Рет қаралды 700 М.
Что-что Мурсдей говорит? 💭 #симбочка #симба #мурсдей
00:19
Леон киллер и Оля Полякова 😹
00:42
Канал Смеха
Рет қаралды 4,7 МЛН
Правильный подход к детям
00:18
Beatrise
Рет қаралды 11 МЛН
How Vintage Game Controllers Worked
10:35
The 8-Bit Guy
Рет қаралды 1,1 МЛН
Nintendo (NES) Controller - Ergonomics
13:17
Displaced Gamers
Рет қаралды 58 М.
Homemade Controllers and Baby Pac-Man 7800
11:23
Displaced Gamers
Рет қаралды 10 М.
How we fit an NES game into 40 Kilobytes
12:04
Morphcat Games
Рет қаралды 3,6 МЛН
MMC2 Magic - How Punch-Out's Graphics Work
14:57
Displaced Gamers
Рет қаралды 58 М.
NES Sprites, OAM, and the Battle for Priority - Behind the Code
19:17
Displaced Gamers
Рет қаралды 46 М.
Contra - Behind the Code
23:02
Displaced Gamers
Рет қаралды 220 М.
How Pokémon Fit on a Gameboy - Compression Explained
9:10
JustBorisX
Рет қаралды 14 М.
NES Architecture Explained
18:28
NesHacker
Рет қаралды 291 М.
IL'HAN - Qalqam | Official Music Video
03:17
Ilhan Ihsanov
Рет қаралды 700 М.