Sunday, January 11, 2015

Mac-Man Arcade: 3. Prototype

We Prototype

Setting up RetroPie SD card image on Raspberry Pi.
Download the pre-configured setup for Raspberry Pi "1". I think the Author has compiled a version for Raspberry Pi 2 as well. 

Refer to the RetroPie-Setup wiki for your installation after your first boot up.
This contains things like First Installation, configurations, how to get ROMs on the SD card and so on. Basically, this is all I used for my installation. 

For my initial test, I just used my TV where I hook up my raspberry pi through HDMI port and keyboard. The first loading of RetroPie, you will need to configure the control. The Control is meant for navigation within the "EmulationStation". It is not meant for the game. Game Controller is configured differently.

RetroPie doesn't come with any games, you will need to find your own ROMs and load them into their specific directories and EmulationStation Console will automatically pick them up and display them.

Important!!! It is illegal to play game ROMs that you don't own physically. Don't ask me where to get game ROMs. Ask Google perhaps.

The day I configure my controls.


I was extremely excited when I got my push buttons and joystick delivered. It was a week night, I came back from work and started to work on it, I took the box that they delivered the package and turned it into my joystick console. 

Everything was fine until I start hooking it up. It was frustrating!

tl;dr: Xin-Mo Dual Arcade Driver issue on Raspberry Pi. I read it some where (couldn't recall) that the issue is fixed permanently in the later kernel, so if you use the latest RetroPie, it should not have any problem. Please hook up all Players before you test.



This is probably the part that drives me nuts. The package comes with the Xin-Mo dual player adapter (so I have 2 players controllers). Being a software engineer, I am used to working on a small portion and implement everything once I got it to work. So I thought it would be a good idea to just hook up 1 player first and get it to work before assembling the 2nd player. Mind you, the wiring of the controls & buttons are ugly. Once you got it connected, you need to figure out the ports that each button is wired up to (use evtest) and then edit the configuration file to map the keys to the buttons in the game. Nevermind, I finally figured out how to do it... I thought I got everything connected correctly but the joystick doesn't response to Right and Down. After much frustration, I went to bed. 

The next day, I found this site where this guy had similar issue (doesn't response to Up and Left) using Xin-Mo Dual Arcade driver on Raspberry Pi. It was a bug with the driver. He got a fix to it where he wrote a driver as a patch to the Linux Kernel, GREAT! I had to try that. I went home that night, trying out the fix as described in his site. Raspberry Pi doesn't have a lot of resources, it took the whole night to recompile the kernel. I got up at 5am the next morning eager to find out if it worked. *$&%$#*#$(#! It didn't work!... 

The next few days, I retried my installation, I retried the patch and tried alternatives that I could think of. I was exhausted trying to figure out this issue. The only thing I didn't try is to hook up the 2nd Player. Finally, I hooked up the 2nd player wanting to see if it has the same issue. Little did I know, this damn thing worked... not only did it work.. magically my 1st Player worked as well. Later, I did read that the patch to fix the Xin-Mo issue actually made it into the RetroPie version that I had used. I didn't need to do all that, I should have just hook up the 2nd players and I would have got it working earlier.

Anyway... Hooray! got it working.. I was enjoying the game. My friend Eileen stop by one day and we had a blast. 




No comments:

Post a Comment