Pi in a Super Famicom Build
-
@moosepr said in Pi in a Super Famicom Build:
@obsidianspider that's looking sweet man! I like the way your keeping everything looking factory made! I was thinking, if you got some slightly milky looking plastic to cover the tft, then had your label have the window to match the screen, it would look really good. And help to keep the screen more subtle and less distracting while your playing
Thanks! I think it's turning out really well.
After spending the afternoon at my friend's house I think I need to look at 3D printers. That stuff is really cool. We made progress today, but there are still quite a few tweaks that need to be done, so I left the SFC shell at my friend's house so he can test fit things. The next thing for me to work on is figuring out how I want to cut out for the screen in the cartridge. I want to do some tests with plastic light switch plates and such to figure out how I want the bezel to work.
I do plan on making a label with a cut-out in it for the screen. I'm not sure what you mean by milky plastic, but I'm thinking even if the screen is inset by the thickness of the cartridge plastic it won't be too bad. Since the cartridge is rounded that adds a challenge.
While my friend works on the power plate I'll be messing with my reset button screen scripts with the weight-reduced version of my SFC Pi build.
-
@obsidianspider great progress! Your eject button sagging fix is a good idea but I was thinking it would be cool if you could add an actual button there and when pressed, it will exit the game you're in and go back to EmulationStation. If you're not in a game it does nothing or some other function. I'm assuming your Reset button will either reset EmulationStation or reset the RPi and the Power button will either turn on the RPi or gracefully shutdown.
You could set the Eject button to run something like "sudo killall retroarch" which would be helpful if a Libretro emulator crashes or freezes and you could use it to get out. I sometimes have to SSH in and run that commend to exit a game that froze. If someone was a really good script writer, they could have it check to see which emulator is running and just kill that one. Or it could just gracefully exit the Libretro emulator like what happens when you press Start+Select on your gamepad.
-
@backstander i think the eject button would be best if it exited out of the game too as that best simulates what you are doing on a real system
-
@backstander said in Pi in a Super Famicom Build:
@obsidianspider I was thinking it would be cool if you could add an actual button there and when pressed, it will exit the game you're in and go back to EmulationStation. If you're not in a game it does nothing or some other function.
The only reason I don't have the actual eject mechanism/lever in place is because of things hitting the Pi. I'm not sure an actual button would fit well in there, especially after I upgrade to a Pi 3 with a decent heatsink. Finding a way to mount another button there is something to think about if I want to add more functionality in the future, but I'm not sure what I'd want that to be right now. Exiting an emulator isn't something I'm worried about since
Start+Select
works really well for that.I'm assuming your Reset button will either reset EmulationStation or reset the RPi and the Power button will either turn on the RPi or gracefully shutdown.
The Reset button is connected to the GPIO and is toggling a script that is enabling or disabling the backlight of the secondary screen. Eventually it will cycle between the game art, system info (temps, disk usage, etc.), and if I can figure out how to parse XML with Python, game info from the approriate game list. I have to consider a lot of cases for when things need to kick off and/or refresh, but for now, turning the light on and off was cool because it means the switch detection is working.
-
@edmaul69 said in Pi in a Super Famicom Build:
@backstander i think the eject button would be best if it exited out of the game too as that best simulates what you are doing on a real system
Right now it does what a real SNES/SFC does if you press the eject button and it's turned on, nothing. ;)
The power switch activates a lever that locks the game cartridge in place so you can't eject the cartridge while the system is powered on.
-
@obsidianspider yes. It is how you change games. Just like if it exited back to the menu to, you know, change games. :D
-
@obsidianspider my 'milky plastic' idea didn't work :( I was basically thinking of you were to get something like this
which you cant see through from a distance, but once its close to something you can, Then I thought if you put that over the screen, it would be all nice and hidden until it was on. However the pixels being as small as they are on the little tft screen, you actually loose a bit of quality
so scrap that!! I was just thinking out loud
-
@backstander said in Pi in a Super Famicom Build:
check to see which emulator is running and just kill that one.
I think the best way to achiev it is looking for the command line used to launch the emulator. It's usually the 4th line in
/dev/shm/runcommand.info
. ;-) -
@meleu said in Pi in a Super Famicom Build:
It's usually the 4th line in
/dev/shm/runcommand.info
. ;-)Wow! I didn't know that
runcommand.info
existed! That will help so I don't have to create a temp file with what's going on with a given game while I'm playing it.From github
/dev/shm/runcommand.info
now contains
system
emulator
rom
full commandline
-
@obsidianspider This thread is very informative and it's a pleasure to see your progress in your SNES build. Keep up the good work
-
Really good stuff here and a great build. I want to thank you sharing everything you have been doing, it is going to save me a lot of time and many headaches because I too was looking to use a secondary screen but I want to try and stuff it in a Gamecube.
-
@darthpaul said in Pi in a Super Famicom Build:
Really good stuff here and a great build. I want to thank you sharing everything you have been doing, it is going to save me a lot of time and many headaches because I too was looking to use a secondary screen but I want to try and stuff it in a Gamecube.
I've seen a few Gamecube builds and it looks very doable. If you do use a second screen, where would you put it?
-
@obsidianspider I would replace plastic circle on the top with clear acrylic and have the screen displayed through it.
-
@darthpaul said in Pi in a Super Famicom Build:
@obsidianspider I would replace plastic circle on the top with clear acrylic and have the screen displayed through it.
Go for it!
-
You should create a how-to thread just on a secondary screen. I'm sure there are many "MAME" users who could find many ways to use that second screen on a full size Arcade cabinet.
-
@darthpaul said in Pi in a Super Famicom Build:
You should create a how-to thread just on a secondary screen. I'm sure there are many "MAME" users who could find many ways to use that second screen on a full size Arcade cabinet.
I'm still working out the kinks, and my code is a hot mess because I don't know what I'm doing, but everything I'm doing with that screen is based on the examples from Adafruit.
-
@obsidianspider it should be done in the disc drive on a gamecube. Hinged so when you open the drive the screen sits vertical.
-
@edmaul69 I like it, the hinge would have to be modified so the lid opens wider but I'm always up for a challenge.
-
Reddit really likes a Super Famicom clock that someone made. Looks like I'll be in good company once I get back from traveling for work and can get my build "done." (Are they ever really done?)
-
Before I hack up the cartridge for my screen I decided to do a test cut on a light switch plate. To keep things simple I'm making it 36mm high and 46mm wide.
I made a rough cut with my Dremel inside the line.
I used a hand file to clean up the edge and get it to the right size.
I set it on the screen and it looks pretty good. Not perfect, but pretty good for a first try.
Now to try it for realβ¦
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.