I absolutely don’t believe him at all , he’s got to be joking ,the video at the end cannot be from an actual nes ,framebuffering those respbarry pie images from a snes emulator, am mean it just can’t be real.
If anyone ever questions the legitimacy of your PhD, just give them a link to this video, which aims to tell a joke, so you start by defining definitions of existing terminology around jokes, and then you go on to define a new type of joke so that you may later produce an example fitting this new definition. You definitely have a PhD.
Oh my god can you imagine giving someone that cartridge at a time when the nintendo entertainment system _just_ came out? What i wouldn't give to see the recipient's face.
Technically he can run SM64 on it. If it runs on a raspberry pi, it can run on the NES. He is running the game on the Pi, and just rendering the image.
@@ricarleite well, that doesn't sound amazing really at all. I mean I'm certainly not able to take a soldering iron to anything without breaking it myself, but just saying, you make it seem like all he's doing is inserting a bad, pixelly filter using a nes. Ah well
@@Oxxyjoe Essentially that is what it is. It's running the game on super hardware, and using the console as a glorified input/output medium. That said, there is a LOT of genius in getting the NES to display these things smoothly.
The controller bits being the same was probably because the SNES was originally planned to be compatible with NES games but that was removed to lower costs.
it's also worth noting that the snes has a 65816, which is basically a 16-bit version of the 6502 (which was used on the nes), which further proves that nintendo planned backwards compatibility
Alpha Doge I know RGMechEx mentioned that in his overview of how the SNES controller works, but for info beyond that I’d ask google about a backwards compatible SNES
Modifying past technology with new technology is a very interesting 'artificial nostalgia' or 'augmented nostalgia' Vaporwave, lofi, and this project are ways that we're essentially creating a new future, using intentionally old parts. I'm interested in seeing this 'niche' develop as time goes on. Truly loved this video.
@@eliel1815shadow demo scene is a scene of people that make homebrew video games, soundtracks, art, etc with video game systems - they've been doing it since atari 2600 and before that too
Most of the technical bits were over my head, but the idea of using our own memories to bootstrap advanced functions is so otherworldly that the sci-fi practically writes itself.
did you actually watch this video 2 years ago? Or did you brain just bootstrap the contents into your memory on the fly whilst you sit in a vat of pickle juice?
Man disliking eating a boot: understandable Man liking eating a boot: ok Mario eating a boot: that could be funny Samus eating a tide pod: literally lol'd
Well, the boot was a metaphor for a really tough steak anyways. The disheveled man crying eating a boot is him realizing he got a horrible steak and powering through eating it because he's starving otherwise. The wealthy man eating the boot is him being a snob and saying "if you haven't eaten a steak this way, you've not truly lived" or some other such nonsense. Mario eating a boot happens all the time when he's jumped on by enemies anyways, and Samus eating a Tide Pod is just downright hilarious, no explanation needed.
@@rpgaholic8202 I thought the hilarious part was that the poorest people used to still be able to afford bad steaks before Reagan told everybody that wage slavery is cool, and now I'm still paying off loans for a steak I ate in 2006 while people tell me how much harder things used to be and that I should just eat cardboard
@@alakani USAian wages have only risen to match inflation, ie. stagnated in real terms, as early as the mid 70s. Reagan sure helped keep it that way, but it's not this one guy's fault. The capitalist system is failing to reward the actual creators of value and is instead accumulating capital with the business owners - and it can't work in any other way, because why else would capital owners invest in a business.
Easiest way would be to stream it to the Pi and show it on the NES, but the hardware wouldn't really be running it, nor would even the cartridge hardware - however, you could hook the NES controller up to the PC through the Pi's networking and a custom driver on the PC. ;3
I revisited this after a year or so, and I honestly still consider this a work of art. Very cool idea but no less important is the details of presentation and philosophy.
As I understood it “blowing on the cartridge” was the folk remedy for ANY case where a cartridge failed to boot, whether from a CIC verification error & reset accompanied by the blinking light and error message or an actual problem of the cartridge not making proper contact with the slot connector contacts-blowing wasn’t a good solution to the problem, but that problem existed even without the CIC chip, and without any checks would allow the game to run with tons of glitches caused by bad reads and the like. The CIC was added for antipiracy reasons, and could be overzealous in doing that job, but if a legit cartridge wasn’t booting, SOMETHING was clearly wrong with how it was connecting to the console so just ignoring that and letting the game run anyway instead of throwing and error and writing “try cleaning the contacts or call Nintendo support” in the troubleshooting part of the manual would be a major QA problem.
Yeah, it occured to me as I was reading your comment that the "blow into the cartridge" meme seems like an elaborate way to trick people into reseating the cartridge and trying again. Pretty much like modern rebooting. "did you reboot it?" "OF COURSE I DID!" (they didn't).
@@Resonantfate Ye. I always make sure to specifically ask if they held down the power button on the "hard disk" as some elder folks refer to the PC for 10 seconds before turning it on again. Most of the time, it just works. Happy client equals happy IT technician.
OH my god, I've been thinking for years about this idea of feeding something smarter than a cartridge into original NES hardware (but I have no CE skills whatsoever)! Awesome video!
@@Longbowgun And with a few other consoles too, like the 32X for the Megadrive. Even the N64 had an add-on that was used for some games. But this stopped with the PlayStation and the PlayStation One, after that we only got smaller versions of the same console or upgraded versions of it.
You can actually plug an snes controller into an nes with just a passive adapter, then you can just change the controller read loop on the nes to read in 16 bits, the last four of which will be constant (I think it’s %0001.)
this is one of the most surreal videos i have ever seen. the utter strangeness of the beginning. the roundabout way everything is said and explained in. the utter refusal to call the NES anything other than "a nintendo" despite this person seeming way too young to be calling it that. the completely plain and matter-of-fact manner of speaking and telling jokes. to top it all off, it's just got lots of technical info i don't fully understand. this video has it all!
You don't have to harvest CIC chips, you can now make new ones, it's fully reverse engineered. There's an ATTiny13A firmware that emulates it, AVRCIC. You can even buy ones from someone who's luckier than you at programming fusebits, something like $5 from a place that sells repro cartridge supplies. Also if it was my NES, i would have just opened it up and lifted the reset pin from internal CIC. Nobody needs that thing. But then, i understand that you want it to be specifically an "unmodified" NES, so I C. I have a hard time believing Pi isn't fast enough for Nintendo cartridge bus, it must be just system overhead. You'll probably have more luck with a kernel driver than with a user space write. Otherwise, ATMega, STM32, something like that? You can make the timing crisp and correct, you can do it. Maybe i should do it.
I'm writing directly to the memory mapped registers on the BCM chip (even disabling memory barriers), so I think this is as fast as it gets? It may just not be designed for MHz GPIO. An embedded microcontroller is surely the right way to go, but it's very appealing to have ssh and all my development tools on the machine itself. Lesson learned!
Is the PI running a realtime kernel? medium.com/@metebalci/latency-of-raspberry-pi-3-on-standard-and-real-time-linux-4-9-kernel-2d9c20704495 I'm also thinking github.com/bugblat/pif might be an interesting approach.
Might be worth looking into a BeagleBone - the Black and the PocketBeagle both have two 400MHz onboard "PRU" microcontrollers with predictable timing that are specifically intended for bitbanging and other shenanigans. PS I wonder if you could do this trick in reverse by getting an emulator to read the ROM from a special file (FUSE or network mount or something similar) that changes while being read?
I think at least for the latency you could just write a kernel driver which uses the GPIO pin as an interrupt and bitbangs some data. Not sure what the latency is there but it is worth a try, since then you could get rid of the prediction. Also from a kernel driver you can disable interrupts for a core at your own discretion while bitbanging stuff outside of the interrupt handler (if you need it).
The 6502 family is notoriously demanding and finicky for memory access speeds. Since you're emulating the system bus, you have to keep up with the CPU (and PPU, since in the NES that has it's own bus in the cartridge) or things go badly wrong. Most flash cart developers have found microcontrollers can't keep up. Someone was trying to develop one for SNES, but even though the maximum speed on the cartridge bus is 3.58 mhz, for various reasons they found that even a 100 mhz CPU was nowhere close to being able to keep up if it had to feed the bus in realtime. This is why pretty much every flash cart ever uses an FPGA. Those can be optimised to do the bus transfers with the proper timing without much hassle, where for a microprocessor or the like it's a really tricky bit of realtime coding. Even if you can get it working, the timing of it means you'll struggle to do much else at the same time, even on a very fast processor.
I actually did give this talk (or something pretty close) in Seattle last week in an opera hall at a conference called Deconstruct. It was a 40' screen! :)
Wow! You actually made me feel not nerdy enough. This was one of the most impressive technical feats I have seen. Great work, man! I cannot express how impressed I am.
I remember hearing that blowing in the cartridge slot does nothing to help and can be harmful. So I decided that the next cartridge I inserted that didn't read properly wouldn't get that treatment. It would be removed and reinserted, cleaned with a cotton swab, the works. I tried fifty times in a row to make that cartridge read, and it never did. Then I blew in the cartridge and the port, and it worked immediately.
So your telling me that your rasberry pie in your NES cart is like the SA-1 chip in an SNES cart. In other words you created an off the shelf enhancement "chip" for NES cartridges. You are a legend!!!
Your giving the Nes blast processing! Your work is quite good and I encourage you to make demos showing what the Nes can do. There are contests all over the world that do this. I have witnessed both the Nes and Master System do things that would blow your mind. Look up the witch running on the Master System. It's basically an FMV that wouldn't look out of place on say...a PS2. I saw this as any higher and you hit a wall with resolution. It's like a full 3-4 minute FMV with heavy trance and house music playing. Check it out as I think you sir, have the chops to compete. Addendum- I have watched a guy run Doom through the Nes...I believe it's a Raspberry Pi running through the Nes's PPU.
16:44 English is not my native language. So let me understand. *He put a Raspberry Pi 3 inside a NES cartridge and made it run the Super Mario World for SNES on the original NES hardware?* Is it? If yes it's amazing!
To be more speciifc, one of the jobs of the CPU is to handle the controller buffer. Because all the buttons on the NES are actually buffered and read into the console one bit at a time.
I think the funniest joke would be to have a cartridge that appears normal and looks like it plays a regular Nintendo game, but part way through it becomes 3D or something, and then give the cartridge to somebody who wouldn't know that's what's on the cartridge.
I thought about trolling people by creating sonic for SNES then sticking an actual Z80 and YM2612 in the cartridge and feeding the sound through the audio input pins on the cartridge. Or maybe sonic is too obvious. Just the thought of trolling people by using a Mega Drive's sound chip in a SNES amuses me somehow. XD
Love this! As far as I remember, the SNES controller uses the same shift register as the NES, but two of them instead. Likely, they put Y, B, L, and R on the 2nd one.
My boyfriend bought NES Maker, and I watched him program all the graphics himself with the pallete editor. The program, supports Real Mode, which is the auto-converted plate from the actual NES pallete. THE AMOUNT OF HOURS you may have put into this single video actually hurts me.
So, breaking this down to it’s most basic level. In essence you basically just used a RasPi to convolutedly feed the NES a video stream of the Pi itself in a form that uses the NES’ graphical capability. Basically acting to the console as if it were an enchancement chip, all while taking inputs from the controller while it was running videos and an emulator on the Pi. In other words, the NES acted like the Pi was a game, but all the real heavy lifting was on the Pi.
It would have been humorous but, I think, outside of the message of "improper hierarchy." Running a SNES game on an NES was the anachronism, and emulating an NES game on the NES cart to be played on the NES was the strange loop.
It wouldn't make much sense without the narration and homebrews like this aren't very impressive, incorporating it into a video is pretty impressive though.
Well, I need two cores, unfortunately. I used isolcpus and nohz_all and cpu affinity and everything else I could find, but nothing seemed to help. It seems that interrupts are happening on all four cores, and that the BCM chip doesn't actually support per-cpu interrupt masking. :/ There may be a shallow solution to this problem, though. I'm certainly not a linux expert!
Did you try using a realtime kernel? I'm not a linux expert either (or even a raspberry pi amateur), but I believe if you can get a realtime kernel running, linux will never interrupt the user processes (it waits for user processes to yield to it, instead)
this got very very quickly from messing with a NES to gradual neural transfer/substitution... ...and you have all my support (I can't help. BUT) I'm starting biomedicine Some years later, if you haven't worked on that yet by then, well, I'd be glad to have your help :D
I watched this twice because I felt like I was right on the edge of learning something important... and I'm not sure what it is. I gotta say, though, this is nuts amount of work.
As a heads up, The space in the cart is from when they initally shipped famicom pinout boards with a converter board to US 72 pin inside. These can be harvested to let you play famicom games on a toploader.
News report about parents being upset over the SNES and how Super Mario World won't play on the NES: Parent: Why can't you just buy the cassette? Reporter: Because it doesn't play in the regular one, you have to buy the "Super" unit. Man, that aged badly. -Now that's funny-
how to turn this into ted talk 1. remove video 2. MAKE SURE TO KEEP AUDIO 3. get footage of already existing ted talk 4. remove video above person (or whatever) 5. add echo to audio 6. remember step 5? change video to original video congrats
Speaking as someone familiar with neuroscience, the brain is very dynamic. I would be very surprised if human 'hardware injection' became viable. It's very hard to use a rom address if the hardware substrate changes unpredictably any time you read/write anything semi-related. And there are human subjects ethical concerns about making that neural substrate process any more predictable than it already is. High spatial resolution (MRI) neuroimaging methods have already gotten to the point where higher resolution is unsafe for the prolonged exposures we would need to examine neural level memory access. ECoG is exciting work, but it's still only for rare brain surgery cases, and only at the cortex. Instead, we can look to philosophers who would claim that your cellphone is already a hardware injection. It offloads memory and, if considered a part of 'you', makes you way more capable at certain tasks than you already are.
It'd be difficult to hack directly into the brain, yes, but would it be easier to add a bypass into, let's say, one of your optic nerves. Let's say we could use the muscle contraction signals from the brain to work out what point the eye is looking and focusing on at any given moment, and if the eye is looking at wherever we want to render our HUD, intercept and replace the output from the relevant rod/cone nerves with the relevant signal. You wouldn't have to know what's going on inside the brain to convert that data into a sense of vision, you'd only need to know what signals the nerves send for each colour/shade. And if you do it only on one eye, hopefully you'd still be able to tell that it's not actually there, like listening to mono audio out of one ear of your headphone. When i say easier, i mean it wouldn't require much new knowledge. Building that probably wouldn't be very easy.
Hell. let's make it easier. Teach someone braille then hook up a handful of the nerves in their pinky finger to electrodes and you're already sending information directly into the nervous system. And as far as I can tell we could probably do that today.
@@RAFMnBgaming there's people putting small magnets in their fingers to feel electromagnetic fields, and apparently the brain comfortably assimilates it as a new sense. You even get a "stereo image" with multiple fingers modified. I suspect you could make something like this work.
Step away from the imagined necessity for physical connection for a second - we are already doing this and have been doing so since the industrial revolution.
Fascinating stuff, it reminds me of the Chinese SNES accessory that enables you to play Mega Drive games on it, but that's a lot simpler in operation, basically just a cart containing a Mega Drive on a chip, that draws power from the SNES and reads the pads, and has it's own AV output.
Nice! NES (emulated) on a NES is certainly where the humor lay for me (as someone who's dev'd on both NES and SNES). There used to be a site called 256b dedicated to 256 byte demos which had some brilliant self decompiling executables. Surprising, and probably most amusing, was how many versions people came up with! Good luck with continued work on the project. You could possibly do a frame-buffer / tile bank-switcher to avoid some screen artifacts; although I kinda like it's straight-to-pie little visual oddities :-)
Super impressive work! I love your projects, so creative and fun. SMW on the NES was a great punchline. I hope the bionic replacement technology that you talked about at the end develops within my lifetime.
you could use the realtime kernel for finer control over that 4-core version, with some thoughtful scheduling you might be able to avoid the linux interruption hiccups.
I love your channel, you are a mad genius. EDIT: Also I love how meta it gets with the presentation. I had an idea kinda like the types of ideas that you have; hear me out. Get a powerful calculator like the Texas or the HP and load up some electronics programs, karnaugh or anything you need. Now only using the calculator itself as a tool and pen and paper (maybe an oscilloscope too); try to reverse engineer the calculator. The calculator is trying to understand itself through you.
BREAKING: Man uses NES to play NES game, but wrong
Now THATS comedy!
I absolutely don’t believe him at all , he’s got to be joking ,the video at the end cannot be from an actual nes ,framebuffering those respbarry pie images from a snes emulator, am mean it just can’t be real.
@@johneygd the nes allows 25 simultaneous colors. People have done insane shit on this system such as a basic raycaster and a high quality song loop.
@@connorm6916 didnt he say 13 tho
Didn't take you 22 minutes to get to your punch line like it did this poor fella🤣🤣🤣🤣
If anyone ever questions the legitimacy of your PhD, just give them a link to this video, which aims to tell a joke, so you start by defining definitions of existing terminology around jokes, and then you go on to define a new type of joke so that you may later produce an example fitting this new definition. You definitely have a PhD.
Pin this
You missed the fact that by starting the joke by explaining the joke, it also fit the criteria of this new category of joke.
@Esteban Toby It worked! I managed to hack your girlfriend's Instagram account. Thanks man!
Anti-anti-anti-joke
PhD or autism?
Running SNES games on a NES is just awesome. Running NES emulator software on the NES hardware? Now THAT's funny.
yes
It's running on the raspberry pi. The nintendo is just handling the graphic output.
He was using the NES as a display by reprogramming the character set/tiles on the fly since it doesn't have a true frame buffer.
Know what would be funnier? Going one step deeper, emulating an NES emulating an NES
And that's way the fuck more interesting.
Using an NES as a PowerPoint presentation is a power move I can respect
if he only used the power glove
Man invents forwards compatibility
Now that is funny!
I feel like this is the type of thing you'd show a person to prove you're a time traveler.
Oh my god can you imagine giving someone that cartridge at a time when the nintendo entertainment system _just_ came out? What i wouldn't give to see the recipient's face.
If you time travel you will end up in space.
@@seanhunt138 you must be fun at parties.
lol
@@seanhunt138 what if you just reverse time
So what you're saying is you can run DOOM on the NES.
My toaster can run nasa. But it won't. It's too UPPITY
What about Quake
Technically he can run SM64 on it. If it runs on a raspberry pi, it can run on the NES.
He is running the game on the Pi, and just rendering the image.
@@ricarleite well, that doesn't sound amazing really at all. I mean I'm certainly not able to take a soldering iron to anything without breaking it myself, but just saying, you make it seem like all he's doing is inserting a bad, pixelly filter using a nes. Ah well
@@Oxxyjoe Essentially that is what it is. It's running the game on super hardware, and using the console as a glorified input/output medium. That said, there is a LOT of genius in getting the NES to display these things smoothly.
You basically created something incredible and added about 50 metaphors and possible future technology. You are a genius.
Agreed. Novel and creative thinking combined with the tenacity and capacity to realise his ideas.
I’ve been emulating hardware for years and I must say this is one the coolest feats of emulation I’ve ever seen.
Get your ass over to MiSTer.. please
This is obviously reverse emulation
the virgin software-emulated hardware vs the chad hardware-emulated software.
@@Poldovico No to all you wrote.
@@JSSMVCJR2.1 whatever
this video turned out way weirder and cooler than I thought it would before I clicked on it
The controller bits being the same was probably because the SNES was originally planned to be compatible with NES games but that was removed to lower costs.
That's a spirit breaker.
@@RocMegamanX Yeah its a shame.
it's also worth noting that the snes has a 65816, which is basically a 16-bit version of the 6502 (which was used on the nes), which further proves that nintendo planned backwards compatibility
You have any info regarding snes playing nes games? I remember looking into a prototype photo or aomething like that
Alpha Doge I know RGMechEx mentioned that in his overview of how the SNES controller works, but for info beyond that I’d ask google about a backwards compatible SNES
Modifying past technology with new technology is a very interesting 'artificial nostalgia' or 'augmented nostalgia'
Vaporwave, lofi, and this project are ways that we're essentially creating a new future, using intentionally old parts. I'm interested in seeing this 'niche' develop as time goes on.
Truly loved this video.
Jarren Horrocks this phenomenon isn’t new, it’s existed since the demo scene
@@ariss3304 demo scene? What do you mean?
@@eliel1815shadow demo scene is a scene of people that make homebrew video games, soundtracks, art, etc with video game systems - they've been doing it since atari 2600 and before that too
its kinda loop on how we all got here isnt it.
It's called retrofitting.
"But first, we have to talk about parallel universes"
thats a deep cut
I bet Tom can perform 1/10 of a button press
best comment in youtube XDDD you sir, made my day.
@@edhc44 Playstation controller buttons have multiple analog states, I don't know about 10, but it can be done :^)
MARIOS, KING KOOPA HAS KIDNAPPED THE PEACH AND STOLE MY EGGS.
Most of the technical bits were over my head, but the idea of using our own memories to bootstrap advanced functions is so otherworldly that the sci-fi practically writes itself.
did you actually watch this video 2 years ago? Or did you brain just bootstrap the contents into your memory on the fly whilst you sit in a vat of pickle juice?
Man disliking eating a boot: understandable
Man liking eating a boot: ok
Mario eating a boot: that could be funny
Samus eating a tide pod: literally lol'd
Well, the boot was a metaphor for a really tough steak anyways. The disheveled man crying eating a boot is him realizing he got a horrible steak and powering through eating it because he's starving otherwise. The wealthy man eating the boot is him being a snob and saying "if you haven't eaten a steak this way, you've not truly lived" or some other such nonsense. Mario eating a boot happens all the time when he's jumped on by enemies anyways, and Samus eating a Tide Pod is just downright hilarious, no explanation needed.
@@rpgaholic8202 I thought the hilarious part was that the poorest people used to still be able to afford bad steaks before Reagan told everybody that wage slavery is cool, and now I'm still paying off loans for a steak I ate in 2006 while people tell me how much harder things used to be and that I should just eat cardboard
@@alakani you're in debt because of Obongo, don't blame Reagan for it.
@@rpgaholic8202 the explanation is that Sami’s eating a tide pod is an anachronism, and the juxtaposition creates humor
@@alakani USAian wages have only risen to match inflation, ie. stagnated in real terms, as early as the mid 70s. Reagan sure helped keep it that way, but it's not this one guy's fault. The capitalist system is failing to reward the actual creators of value and is instead accumulating capital with the business owners - and it can't work in any other way, because why else would capital owners invest in a business.
please port Skyrim to NES and fulfill Bethesda's dream.
YES YES YESSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
FUS RETRO DAAAAAAA
no
It just works.
Easiest way would be to stream it to the Pi and show it on the NES, but the hardware wouldn't really be running it, nor would even the cartridge hardware - however, you could hook the NES controller up to the PC through the Pi's networking and a custom driver on the PC. ;3
7:20 OMG!
Every half a year or so, I feel glad I subscribed to you :D
No SIGBOVIK this year?!?!?!
This was a slow burn but at the 17 minute mark I actually burst out laughing. I really appreciate the work you put into this.
Scott Paladin your avatar is your... beard... ?
I feel completely...whelmed.
Like it's funny, I didn't laugh, but it's a slowly metabolizing joke, like refried beans.
10:18 for me. Mother🍆er!
I revisited this after a year or so, and I honestly still consider this a work of art. Very cool idea but no less important is the details of presentation and philosophy.
As I understood it “blowing on the cartridge” was the folk remedy for ANY case where a cartridge failed to boot, whether from a CIC verification error & reset accompanied by the blinking light and error message or an actual problem of the cartridge not making proper contact with the slot connector contacts-blowing wasn’t a good solution to the problem, but that problem existed even without the CIC chip, and without any checks would allow the game to run with tons of glitches caused by bad reads and the like. The CIC was added for antipiracy reasons, and could be overzealous in doing that job, but if a legit cartridge wasn’t booting, SOMETHING was clearly wrong with how it was connecting to the console so just ignoring that and letting the game run anyway instead of throwing and error and writing “try cleaning the contacts or call Nintendo support” in the troubleshooting part of the manual would be a major QA problem.
Yeah, it occured to me as I was reading your comment that the "blow into the cartridge" meme seems like an elaborate way to trick people into reseating the cartridge and trying again. Pretty much like modern rebooting. "did you reboot it?" "OF COURSE I DID!" (they didn't).
@@Resonantfate Ye. I always make sure to specifically ask if they held down the power button on the "hard disk" as some elder folks refer to the PC for 10 seconds before turning it on again.
Most of the time, it just works. Happy client equals happy IT technician.
... Nintendo Power Point - I'm going to guess this whole concept was inspired by the desire to tell that joke. :-)
You should put Super Mario All Stars on this baby so we can come full circle.
this
I second this
Holy shazbot.
This
the wii-version of All-stars of course =)
If your humor were any drier, it would evaporate.
The ocean evaporates all day every day... and it's pretty wet...
And then I said that's not a camel, that's my wife.
and then i said that's not the saharan desert, no, that is my sense of humor
So is good humor *wet* humor? Thanks, now when I smell good humor, I'll know the proper thing to say is "Hahah, that joke was sopping wet!".
@@kidyomu89 haha thanks
This was fun to watch.
Eh love your channel, cool to see you around!
Hi Darby! Your one of my favorite you tubers!
Ayy
Ha!
I watched BTG videos when I was younger. Completely forgot they existed.
OH my god, I've been thinking for years about this idea of feeding something smarter than a cartridge into original NES hardware (but I have no CE skills whatsoever)! Awesome video!
They did this with the Atari 2600. A cart fed RAM data with a cassette tape: tapes were cheaper than ROMs (at the time). THE STARPATH SUPERCHARGER!
dwarf fortress fan
Nice pfp
@@Longbowgun And with a few other consoles too, like the 32X for the Megadrive. Even the N64 had an add-on that was used for some games. But this stopped with the PlayStation and the PlayStation One, after that we only got smaller versions of the same console or upgraded versions of it.
Now you should run Genesis games on that.... Wrong system games being played on the wrong generation hardware. :D
What about Saturn/N64 games on an SNES? Wrong system, wrong generation, wrong dimensional game.
@@mariannmariann2052 F*** it.
Play Grand Theft Auto 5 on the NES
That would be funny.
Nintendo does what nintendont.
@@Known_as_The_Ghost Nah dude, Crysis on Fairchild Channel F.
You can actually plug an snes controller into an nes with just a passive adapter, then you can just change the controller read loop on the nes to read in 16 bits, the last four of which will be constant (I think it’s %0001.)
less elegant
Hah, NES games are more expensive than SNES games? What an amusingly improper hierarchy!
And Super Famicom games are an order of magnitude cheaper than their western (European or US) equivalents.
US game? $300. Japanese equivalent? Eh. $15
Also that isn’t a hierarchy...
Ho ho ho, how improper!
Not an improper hierarchy. Rarity and demand are the driving factor. Logically people from the NES era have more money than the SNES era(my people).
Jake Bishop
Whom'st DOM?
this is one of the most surreal videos i have ever seen. the utter strangeness of the beginning. the roundabout way everything is said and explained in. the utter refusal to call the NES anything other than "a nintendo" despite this person seeming way too young to be calling it that. the completely plain and matter-of-fact manner of speaking and telling jokes. to top it all off, it's just got lots of technical info i don't fully understand.
this video has it all!
Holy crap! This is so much more than a joke. I know enough 6502 Assembly to know that's a ridiculous amount of work! Nice job! :)
You don't have to harvest CIC chips, you can now make new ones, it's fully reverse engineered. There's an ATTiny13A firmware that emulates it, AVRCIC. You can even buy ones from someone who's luckier than you at programming fusebits, something like $5 from a place that sells repro cartridge supplies.
Also if it was my NES, i would have just opened it up and lifted the reset pin from internal CIC. Nobody needs that thing. But then, i understand that you want it to be specifically an "unmodified" NES, so I C.
I have a hard time believing Pi isn't fast enough for Nintendo cartridge bus, it must be just system overhead. You'll probably have more luck with a kernel driver than with a user space write. Otherwise, ATMega, STM32, something like that? You can make the timing crisp and correct, you can do it. Maybe i should do it.
I'm writing directly to the memory mapped registers on the BCM chip (even disabling memory barriers), so I think this is as fast as it gets? It may just not be designed for MHz GPIO. An embedded microcontroller is surely the right way to go, but it's very appealing to have ssh and all my development tools on the machine itself. Lesson learned!
Is the PI running a realtime kernel? medium.com/@metebalci/latency-of-raspberry-pi-3-on-standard-and-real-time-linux-4-9-kernel-2d9c20704495
I'm also thinking github.com/bugblat/pif might be an interesting approach.
Might be worth looking into a BeagleBone - the Black and the PocketBeagle both have two 400MHz onboard "PRU" microcontrollers with predictable timing that are specifically intended for bitbanging and other shenanigans.
PS I wonder if you could do this trick in reverse by getting an emulator to read the ROM from a special file (FUSE or network mount or something similar) that changes while being read?
I think at least for the latency you could just write a kernel driver which uses the GPIO pin as an interrupt and bitbangs some data. Not sure what the latency is there but it is worth a try, since then you could get rid of the prediction. Also from a kernel driver you can disable interrupts for a core at your own discretion while bitbanging stuff outside of the interrupt handler (if you need it).
The 6502 family is notoriously demanding and finicky for memory access speeds.
Since you're emulating the system bus, you have to keep up with the CPU (and PPU, since in the NES that has it's own bus in the cartridge) or things go badly wrong.
Most flash cart developers have found microcontrollers can't keep up.
Someone was trying to develop one for SNES, but even though the maximum speed on the cartridge bus is 3.58 mhz, for various reasons they found that even a 100 mhz CPU was nowhere close to being able to keep up if it had to feed the bus in realtime.
This is why pretty much every flash cart ever uses an FPGA. Those can be optimised to do the bus transfers with the proper timing without much hassle, where for a microprocessor or the like it's a really tricky bit of realtime coding.
Even if you can get it working, the timing of it means you'll struggle to do much else at the same time, even on a very fast processor.
You gotta do a TED talk using only this 14' TV (20'?), remotely from your bedroom. Wearing shorts.
I actually did give this talk (or something pretty close) in Seattle last week in an opera hall at a conference called Deconstruct. It was a 40' screen! :)
This is amazing, I will promote you for sure!
Huzzah!
And you did
ProtoMario shut tubby
hey proto!
Neither of these are jokes but they are very clever engineering
Wow! You actually made me feel not nerdy enough. This was one of the most impressive technical feats I have seen. Great work, man! I cannot express how impressed I am.
have you seen flappy bird on super mario world?
"in case you're wondering, the reason this is funny..."
you got me
it was unexpected that you would be so nonchalant about it xD
😂😂😂😂😂😂😂💯💯💯💯💯💯👌👌👌
The set-up is golden. You get six minutes in, and suddenly it clicks into place. Well done.
"and that's all I've got for you..." Possibly the greatest understatement I have ever seen.
I remember hearing that blowing in the cartridge slot does nothing to help and can be harmful. So I decided that the next cartridge I inserted that didn't read properly wouldn't get that treatment. It would be removed and reinserted, cleaned with a cotton swab, the works. I tried fifty times in a row to make that cartridge read, and it never did. Then I blew in the cartridge and the port, and it worked immediately.
NOW YOURE PLAYING WITH POWER
point.
tahu nuva Yes, that was the joke.
Haha smash 4 amirite
Oh my dear lord, that's brilliant.
Hi John Riggs!
So your telling me that your rasberry pie in your NES cart is like the SA-1 chip in an SNES cart. In other words you created an off the shelf enhancement "chip" for NES cartridges. You are a legend!!!
Your giving the Nes blast processing! Your work is quite good and I encourage you to make demos showing what the Nes can do. There are contests all over the world that do this. I have witnessed both the Nes and Master System do things that would blow your mind. Look up the witch running on the Master System. It's basically an FMV that wouldn't look out of place on say...a PS2. I saw this as any higher and you hit a wall with resolution. It's like a full 3-4 minute FMV with heavy trance and house music playing. Check it out as I think you sir, have the chops to compete.
Addendum- I have watched a guy run Doom through the Nes...I believe it's a Raspberry Pi running through the Nes's PPU.
Why is TH-cam showing me this now, and not 6 years ago?
16:44 English is not my native language. So let me understand. *He put a Raspberry Pi 3 inside a NES cartridge and made it run the Super Mario World for SNES on the original NES hardware?* Is it? If yes it's amazing!
+Vikrinox The NES does a little more than simply show an image from the pi from what i understand. It also renders it.
@@gytux0258 The CPU side does rather little. The graphics chip (PPU) takes and renders everything.
To be more speciifc, one of the jobs of the CPU is to handle the controller buffer. Because all the buttons on the NES are actually buffered and read into the console one bit at a time.
NO. He put the actual raspberry pie on the NES cartridge!
But how does the ppu render so many colors? It can only display a max of 16 colors at any time right?
if you went back to the 80s and showed a gamer the 3D-ified Zelda at 0:12 , I wonder what they’d say
"what?"
"It's The Legend of Zelda and it's really rad! Those creatures from Ganon are pretty bad!"
WOAH NICE GRAPHICS I'D LIKE TO GET MY HANDS ON THAT GAME!
@@halationmaster9224 That sounds familiar
aliens!
_Tom7 runs a SNES game on the NES_
*Nintendo would like to know your location*
Wow. I was blown away as soon as I saw the ‘Nintendo presents’ screen. Insane! Good explanation. You show mastery of your craft!
love catching glimpses of your raw devotion to gesticulating to the crt whenever a black frame comes along
This video is absolutely amazing, not only is it technically very interesting, it is interesting in general. Would love to see more like this!
Thank you! :)
Seriously this is fantastic, I hope you keep screwing with cartridge reverse emulating for other systems, or just more of this, I can't get enough.
I think the funniest joke would be to have a cartridge that appears normal and looks like it plays a regular Nintendo game, but part way through it becomes 3D or something, and then give the cartridge to somebody who wouldn't know that's what's on the cartridge.
LimeGreenTeknii Ah yes the ol switcheroo
I thought about trolling people by creating sonic for SNES then sticking an actual Z80 and YM2612 in the cartridge and feeding the sound through the audio input pins on the cartridge.
Or maybe sonic is too obvious. Just the thought of trolling people by using a Mega Drive's sound chip in a SNES amuses me somehow. XD
Love it! :D
And that is how true creepypastas are made.
the Octocat Adventures of NES games
still the most underrated channel ever.
Love this! As far as I remember, the SNES controller uses the same shift register as the NES, but two of them instead. Likely, they put Y, B, L, and R on the 2nd one.
I haven't gotten to the final joke yet, but at 7:32, there is a beauty of a joke : "Nintendo Power Point"
My boyfriend bought NES Maker, and I watched him program all the graphics himself with the pallete editor. The program, supports Real Mode, which is the auto-converted plate from the actual NES pallete. THE AMOUNT OF HOURS you may have put into this single video actually hurts me.
@Leofashionista1, I think they were commenting on the possibly massive amount of time it took him to make this video. It was a positive comment.
Brain: Ok I need to think of a joke.
Raspberry Pi: Gotcha fam, here it is.
Brain: Accessing memory.
_this might cause graphical glitches..._
I hate when the write happens before the read and I think of the punchline before the joke.
So I just found this video again after about a year and I still love it and find it confusingly amazing.
Sinom yay!
I watched this video on mushrooms once and it blew my mind. Thought it was the drugs but now, sober, it's just as mind blowing
This kinda reminds me of the Full Motion Video fad in the 90's
So, breaking this down to it’s most basic level. In essence you basically just used a RasPi to convolutedly feed the NES a video stream of the Pi itself in a form that uses the NES’ graphical capability. Basically acting to the console as if it were an enchancement chip, all while taking inputs from the controller while it was running videos and an emulator on the Pi.
In other words, the NES acted like the Pi was a game, but all the real heavy lifting was on the Pi.
TheLastAnalogJunkie yeah, it's almost like a super fx chip, but on crack.
use a toploader NES, no CIC chip. or just jump pin 4 to ground.
You gave me the expectation that this would be funny and then you violated that expectation. Hilarious...
Now THAAATS funny!
No joke, that last bit about using memories for transhumanism literally gave me some ideas for a cyberpunk plot I've been thinking on.
samus eating tide pods in 1986 is hilarious
Great video! One thing I will say though is you missed a golden opportunity to try run sonic on a nes, that woulda been great!
It would have been humorous but, I think, outside of the message of "improper hierarchy." Running a SNES game on an NES was the anachronism, and emulating an NES game on the NES cart to be played on the NES was the strange loop.
Sorry, Genesis does what Nintendon't!
That's why you emulate the Master System Sonic games
There's one, Somari.
guys remember some on made sonic 2 on snes? search it up ps dam amazing but not the bootleg * the real game*
you should give this cartridge to someone else with a Nintendo and get their reaction to it
U would watch it.
I* not u
+UAVwaffle U would watch it
+
「 OKAY 」
It's pretty cool that you can have a game cartridge that plays a newer game than the console would normally support
It wouldn't make much sense without the narration and homebrews like this aren't very impressive, incorporating it into a video is pretty impressive though.
If you use PID masking to force your code, and only your code to run on one core on the Pi3 then that should hopefully help with the interruptions.
Well, I need two cores, unfortunately. I used isolcpus and nohz_all and cpu affinity and everything else I could find, but nothing seemed to help. It seems that interrupts are happening on all four cores, and that the BCM chip doesn't actually support per-cpu interrupt masking. :/ There may be a shallow solution to this problem, though. I'm certainly not a linux expert!
Write your own OS!
Did you try using a realtime kernel? I'm not a linux expert either (or even a raspberry pi amateur), but I believe if you can get a realtime kernel running, linux will never interrupt the user processes (it waits for user processes to yield to it, instead)
Exactly my thoughts when I saw the flashing, you could potentially bypass Linux entirely.
You really should try a realtime kernel, as suggested above. That was the first thing that came into my mind watching the video
Congrats! You just reinvented SNES enhancement chips.
this got very very quickly from messing with a NES to gradual neural transfer/substitution...
...and you have all my support (I can't help. BUT)
I'm starting biomedicine
Some years later, if you haven't worked on that yet by then, well, I'd be glad to have your help :D
I watched this twice because I felt like I was right on the edge of learning something important... and I'm not sure what it is. I gotta say, though, this is nuts amount of work.
As a heads up, The space in the cart is from when they initally shipped famicom pinout boards with a converter board to US 72 pin inside. These can be harvested to let you play famicom games on a toploader.
Absolutely brilliant! Big fan of your comedic timing and mad, mad science.
Running a SNES game on an NES is an amazing accomplishment. Running an NES emulator on an NES, on the other hand, is top tier humor.
How does this not have 10 million views and likes by now???!? it's god tier
News report about parents being upset over the SNES and how Super Mario World won't play on the NES:
Parent: Why can't you just buy the cassette?
Reporter: Because it doesn't play in the regular one, you have to buy the "Super" unit.
Man, that aged badly.
-Now that's funny-
XD
I was so fucking thankful my mother understood the difference when I was a kid.
"why won't it play my Nintendo tapes"
If you tighten up this video, it's a Ted talk. Amazing. 😀
@@mayshack still pretty fkn respectable imo
how to turn this into ted talk
1. remove video
2. MAKE SURE TO KEEP AUDIO
3. get footage of already existing ted talk
4. remove video above person (or whatever)
5. add echo to audio
6. remember step 5? change video to original video
congrats
Its actually a Tom7Talk
I mean, it’s basically like a Super FX chip that’s many generations ahead of the format it’s buffing
Well no, but having co-processors would be handy if writing software for the NES.
Y-Your profile pic is doing wonders with the sarcastic monotone delivery I have in my head.
0o0Zero0o0 is it really. Great, that’s just what I had in mind with it.
My dude literally go-go gadgeted his nes into a snes
"the emulator that I'm working on can run nintendo about 28000 frames per second" I don't know 60 frames per second is enough for me
I like to live life in the fast lane
Speaking as someone familiar with neuroscience, the brain is very dynamic. I would be very surprised if human 'hardware injection' became viable. It's very hard to use a rom address if the hardware substrate changes unpredictably any time you read/write anything semi-related. And there are human subjects ethical concerns about making that neural substrate process any more predictable than it already is. High spatial resolution (MRI) neuroimaging methods have already gotten to the point where higher resolution is unsafe for the prolonged exposures we would need to examine neural level memory access. ECoG is exciting work, but it's still only for rare brain surgery cases, and only at the cortex. Instead, we can look to philosophers who would claim that your cellphone is already a hardware injection. It offloads memory and, if considered a part of 'you', makes you way more capable at certain tasks than you already are.
It'd be difficult to hack directly into the brain, yes, but would it be easier to add a bypass into, let's say, one of your optic nerves. Let's say we could use the muscle contraction signals from the brain to work out what point the eye is looking and focusing on at any given moment, and if the eye is looking at wherever we want to render our HUD, intercept and replace the output from the relevant rod/cone nerves with the relevant signal. You wouldn't have to know what's going on inside the brain to convert that data into a sense of vision, you'd only need to know what signals the nerves send for each colour/shade. And if you do it only on one eye, hopefully you'd still be able to tell that it's not actually there, like listening to mono audio out of one ear of your headphone.
When i say easier, i mean it wouldn't require much new knowledge. Building that probably wouldn't be very easy.
Hell. let's make it easier. Teach someone braille then hook up a handful of the nerves in their pinky finger to electrodes and you're already sending information directly into the nervous system. And as far as I can tell we could probably do that today.
@@RAFMnBgaming there's people putting small magnets in their fingers to feel electromagnetic fields, and apparently the brain comfortably assimilates it as a new sense. You even get a "stereo image" with multiple fingers modified. I suspect you could make something like this work.
Step away from the imagined necessity for physical connection for a second - we are already doing this and have been doing so since the industrial revolution.
Fascinating stuff, it reminds me of the Chinese SNES accessory that enables you to play Mega Drive games on it, but that's a lot simpler in operation, basically just a cart containing a Mega Drive on a chip, that draws power from the SNES and reads the pads, and has it's own AV output.
I really enjoy listening to your ideas. Thank you for sharing your knowledge, wit, and wisdom!
Oxford Comma YEAH
Wasn't ready for the existential crisis at the end haha
This is the most creative yt video I’ve seen in a while, definitely stands out
Is this the ultimate troll? :P "Why use the HDMI output when you can use the data bus of the Nintendo."
Nice! NES (emulated) on a NES is certainly where the humor lay for me (as someone who's dev'd on both NES and SNES). There used to be a site called 256b dedicated to 256 byte demos which had some brilliant self decompiling executables. Surprising, and probably most amusing, was how many versions people came up with! Good luck with continued work on the project. You could possibly do a frame-buffer / tile bank-switcher to avoid some screen artifacts; although I kinda like it's straight-to-pie little visual oddities :-)
My favorite 256 byte demo is "A Mind is Born" : th-cam.com/video/sWblpsLZ-O8/w-d-xo.html
Super impressive work! I love your projects, so creative and fun. SMW on the NES was a great punchline. I hope the bionic replacement technology that you talked about at the end develops within my lifetime.
I think I get recommended this once every year. It's still awesome
I was mainly thinking that I don't know how or why you are doing any of this until the moment you revealed a SNES game running on an unmodified NES. 😲
...but can it run Crysis?
through game streaming it might work.
Install wine for arm and give it a go, maybe i can run if you set the graphics to potato. The limiting factor i guess would be vram
wine for arm runs arm binaries. it does not emulate x86.
just stick a small x86 based board in there
can u download fresh memes?
Man, this is one of the best made videos that I’ve seen in a long time despite being a camera pointed at a NES
Benjamin Brady that was part of the greatness
Okay, the stuff you're doing with your NES and the Pi Zero are stuff I've been toying with in my head for ages and well, well beyond. Good show!
I audibly laughed towards the end of the video when you said “Let’s get back to the Nintendo Power Point”. Got me to subscribe
you could use the realtime kernel for finer control over that 4-core version, with some thoughtful scheduling you might be able to avoid the linux interruption hiccups.
I was confused as to where the QPU was on the NES motherboard, but I remembered that they didn't add that until the N64.
H A L F
A
P R E S S
Descartes? Or *NES* cartes? Amirite?
Damn.
go make dinosaurs
Or NES Cartridge.
Kind of reminds me of the upgrade addons that Sega made for the genesis. Can we get a Nintendo Tower of Power?
Chris LeeWoo oof
Lol
this is like the presentation that a expert gives, which sounds interesting, but actually goes over your head
This is insane. Can’t believe I’ve been sleeping on this channel, Dr.
Like I always say: Never sleep
I love your channel, you are a mad genius.
EDIT: Also I love how meta it gets with the presentation. I had an idea kinda like the types of ideas that you have; hear me out.
Get a powerful calculator like the Texas or the HP and load up some electronics programs, karnaugh or anything you need. Now only using the calculator itself as a tool and pen and paper (maybe an oscilloscope too); try to reverse engineer the calculator.
The calculator is trying to understand itself through you.