Hackpads are smart collaborative documents. .

Jonathan Dahan

858 days ago
Unfiled. Edited by Jonathan Dahan 858 days ago
Jonathan D 0-Player Nintendo
  • Abstract
Does playing video games stress you out? Is watching them more fun than seeing Mario fall into a bottomless pit for the thousandth time? Maybe what you need is a zero-player nintendo!
  • Description
Demo (5 minutes)
I wrote a program to play nintendo/famicom games for me. Specifically, you can load up any playthrough from an emulator onto an arduino, plug it into any unmodified nintendo, and it will press the exact same buttons at the exact same time. I'll explain in 5 minutes a bit of how the nintendo hardware works while having some interesting playthroughs in the background. I can also make the demo longer by asking for a volunteer to play a level of a videogame in an emulator, recording it, and then playing it back on real hardware.
I did this to learn about hardware and signals, and everything is shared up on http://github.com/jedahan/autones.
Community (5 minutes)
I couldn't have attempted this without all the great reverse engineering documented on community sites like nesdev. I can spend a few minutes talking about the resources for programming, and compare and contrast Open Source from Open Knowledge. In addition, the fact that the emulator is open source meant people could extend it with lua scripting, which allowed me to convert the button presses to a format suitable for arduino output.
Future (5 minutes)
I am learning how to sniff memory to auto-identify cartridges using a beagleboneblack. The eventual goal will be to auto-identify cartridges by the first second of startup, search the web for appropriate/interesting playthroughs, download and load them on the arduino automagically. This won't be ready by the time OHS rolls around, but I will chat about what progress I've made so far. It would be really cool if it could work in reverse, where people play through and it uploads new playthroughs for other people to download, but thats a really long term goal.
Q&A/Discussion (5 minutes)
Questions and hopefully answers.
The talk is modular - Demo only, Demo+Community, Demo+Community+Q&A, mix and match. I can also extend the Demo section to talk more than 5 minutes, showcasing how to record and playback live on stage with the help of a volunteer from the audience :)
875 days ago
Unfiled. Edited by Jonathan Dahan 875 days ago
Jonathan D famicom games
Armadillo, Ikki, Argus, New Ghostbuster II, Hi No Tori, Snow Bros, Mappy Land, and All Night Nippon: Super Mario Bros.
Dragon Ball Z
Pac Land
Tetris Flash?
Tetris 2?
Yoshi's Cookie
Yoshi's Egg
Daiku no Gen-San (AKA Hammerin' Harry)
Crisis Force
Gradius 2
Getsu Fuuma Den
Door Door (fun little arcade-style game, programmed a guy who later went on to help create Dragon Quest)
Hello Kitty World
878 days ago
Unfiled. Edited by Jonathan Dahan 878 days ago
Jonathan D
  • learning and competincies
  • Collect as much data as possible, you never know when or why you might use it.
  • Use an analytics platform that is simple to export for processing later (like sending events on how long a user waits to answer a test question to look at hesitation etc).
  • Decide if you want to first nail the gamification, then use that to figure out what analytics to record, or first decide on the analytics
  • Make each core competiency a + 0 + scale, as opposed to 0 bad 5 good, make it a spectrum so someone is either a strong morning person or a strong afternoon person. As opposed to just a strong worker in general. People will game the system (intentionally and unintentionally).
  • This is essentially okcupid...
  • read okcupids blog
  • read the steiner school philosophy
909 days ago
Unfiled. Edited by Jonathan Dahan 909 days ago
If you would like to follow along, I've brutally extracted some source code from openFrameworks and that pull request. 
I highly recommend reading the source code for the real ofMath.cpp as they link to other interesting discussions.
So, open up your favorite text editor, and write this ofMath.cpp
Jonathan D This should work on any unix-y OS (osx, linux, probably bsd). Let's make sure our compiler and libraries are setup ok:
  • g++ ofMath.cpp && ./a.out
Your terminal should output a bunch of random numbers between 1 and 10. Press control+c to exit
911 days ago
Unfiled. Edited by Jonathan Dahan 911 days ago
913 days ago
Unfiled. Edited by Jonathan Dahan 913 days ago
super potato famiac krikzz senseiman フレンツ
http://www.famicomworld.com/forum/index.php?topic=11479.0 http://shop.krikzz.com/EverDrive-N8-Famicom-EDN8FAM.htm http://www.famicomworld.com/forum/index.php?topic=6575.0
famicom 12,100
disk system 6,000
famicom+disk system
twin system
famicom av mod 79,000
smb2 japan $10
everdrive n8 $133
922 days ago
Unfiled. Edited by Jonathan Dahan 922 days ago
Jonathan D
  • Test more demos!
  • Make PCB
  • small heat shrink tube
  • cable - 3 more colors (orange, purple, gray?)
  • alligator clip
  • male header pins
  • oscilloscope GET 8040

Contact Support

Please check out our How-to Guide and FAQ first to see if your question is already answered! :)

If you have a feature request, please add it to this pad. Thanks!

Log in