While I'm waiting for the risotto to simmer it's way to greatness I figured I should have some more wine and keep going!
In the interest of using up more of the space of that which Saint hath built, I will post more crap.
Alright, so you have the USB-DVG Pi image written to your SD card already so it is time to put that thing in your Pi and get it tied into the network that I hope you have available to you at your house.
We are blessed to live in the middle of frackin nowhere so the only reason I can torture any of you with this stuff is that we get radioed some internet from a few miles away- hence the weird router cube thing.
Pardon my ramble, but plug your Pi into an available port on your router, plug your transformer in and click that little button to turn your Pi on.
Give it a minute to understand that it is alive before you try to log into it through Windows.
If you open an Explorer window on the PC you should be able to type this in and actually get somewhere.
My system here thinks about it for a minute, but it gets there eventually.
This is the folder into which you want to copy your taboo elements.
Don't ask, don't tell.
For the rest of our network enabled adjustments the rest is important.
The following bit is the code that someone FAR smarter than me came up with to add somewhere in the Pi- and it actually works.
If the person who wrote this is reading here please message me and I'll send you something mea culpa style for listing your work unacknowledged!
Do the copy and paste thing with the following mouse additions in the manner I set forth in the following if you want to not agonize over this for (at least) weeks like I did.
device_mouse raw
device_raw_mousedev[0] /dev/input/mouse0
device_raw_mousedev[1] /dev/input/mouse1
device_raw_mousedev[2] /dev/input/mouse2
device_raw_mousedev[3] /dev/input/mouse3
device_raw_mousetype[0] ps2
device_raw_mousetype[1] ps2
device_raw_mousetype[2] ps2
device_raw_mousetype[3] ps2
input_map[p1_dialx] mouse[0,x] mouse[1,x] mouse[2,x] mouse[3,x]
input_map[p1_dialy] mouse[0,y] mouse[1,y]mouse[2,y] mouse[3,y]
input_map[p1_trackballx] mouse[0,x] mouse[1,x] mouse[2,x] mouse[3x]
input_map[p1_trackbally] mouse[0,y] mouse[1,y] mouse[2,y] mouse[3y]
Easy, ain't it?!
Copy and paste EXACTLY this to a notepad file that you can pull up and copy and paste all/portions of (as detailed here shortly) into the proper places in your Pi image files.
And whoever wrote this is brilliant, in that they accomodated FOUR different ways that both you and your Pi could screw this up.
Bear in mind, I am also setting up to use a trackball on a separate panel also and this allows for that.
If you aren't going to use one these lines additions will not break your build as far as I have seen.
Ok, first addition (that I believe helps but at least doesn't break anything?!) is to advmame.rc
Click the little 'one directory up' button while in the rom directory to get to where you need to make the changes that make all this stuff actually work.
You could always type the location of the advancemame.rc file into the nav bar too, but that is for industrious people who know what the hell they are doing here.
Now here is the part that MIGHT be redundant, but since it doesn't break anything apparently and I don't know for sure you can NOT do this and have function without drama.
I have been back and forth with this so many times that I don't have the emotional fortitude for another round as a 'test.'
Anyone who knows better (id est, anyone who knows a Pi and AdvanceMame better than me) please chime in so that we can do away with this step of adding to advmame.rc if it is ok to do so.
Here is what I had up for explorer windows to make this happen.
Open that advmame.rc file, and if you haven't toyed with this on your PC previously then you will probably need to tell it to open these files from your Pi using Notepad.
I literally copied and pasted the entire spinner settings file I show to the end of the advmame.rc file.
Dig in and get that addition made.
Save your changes and close the window.
Done.
Next is adding to advmenu.rc
Navigate into that and roll down until you find the first mouse device line.
The line that shows mouse_device none needs to be
mouse_device raw
The eight lines following the raw_keyhack line in the Pi on the left also need to be updated as shown with what I have highlighted in my spinner settings from the window on the right:
The last four lines of these additions needs to be what is shown in my spinner settings on the right also, so for the sake of clarity scroll down until you hit the i's in your code and then add/overwrite so that what you see looks like this if it isn't already what you need:
As far as things to alter in your code via PC/network connection, that is it.
Don't forget to save, close all the windows you had open in regard to this surgery and then you can shutdown your Pi and unplug it all in preparation to install in your cabinet.
Things to note as you continue:
*As far as I can tell the Pi actually remembers where you had things plugged into it via USB (unlike Windoze, which loves to rearrange crap for you randomly) so make your life easier and be mindful of EXACTLY where you plug things in for future reference.
*I have had ZERO success using a wireless keyboard/mouse combination device in configuring the Pi once in the cabinet.
Do yourself a favor here and just use a plain old corded keyboard for controller configuration.
*I have NO idea if AdvanceMame fails to launch without having an audio device connected (the way
MAME has for me in the past) so do yourself a favor here also and just have something plugged into the Pi that will make some noise. The Pi has a 3.5mm stereo jack so make it happen.
It also helps because you can hear Chad's menu wake up when it starts and hear keystroke and spinner/joystick indications as you navigate and exit too.
*You MUST have a display (in addition to the vector CRT you have hopefully already acquired or built and is connected to your USB-DVG) plugged into HDMI port 0 on the Pi while finishing up or you simply can't do it.
Unlike any other
MAME build I/you may have attempted, NOTHING will show up on the CRT except what the vectormenu or game are doing.
When it comes to getting AdvanceMame to register your control panel inputs (via the 'Tab' key while in a game- or to adjust things later on) the secondary display is imperative.
Ok-
Now that you have your Pi all set up the next thing is to take care of your controls.
You can be cheap if you want to and try to use something else (and a properly configured Arduino board will suffice here of course- but I am not that smart yet PL1 !) however the following detail is written in reference to an I-PAC and a SpinTrak because I can attest that the following just simply works.
Andy at Ultimarc offers top notch customer service and quickly replied when I asked about what my build was gagging on so that I could fix it.
I've been buying stuff from him for years and he always helps.
I have also bought really nice parts from Randy at groovygamegear (whose support is equal to Andy's) and I am sure that he has a board and Twist that will do exactly the same, although the configuration process will probably differ slightly.
If I can get the time to buy stuff from Randy also I'll test that out too and add notes here if anyone would like.
So, before you fire up the machine with the Pi connected and have fits like I did, let's get your control interface set up properly.
One of the cool things about the I-PAC is that there is are a number of utilities to get your board to act the way you need it to.
If you head to Andy's website you will see a few downloads available for I-PAC boards.
https://www.ultimarc.com/control-interfaces/i-pacs/i-pac2/I decided to flash the one in the Cosmic Chasm cabinet with the 'Mixed Mode' firmware as it referenced Retropie and I had tried other iterations with no success.
This MAY be the only way it works, but that may not be the case for you.
Again, I am nervous to break what I have that works so I am not starting over to test something else without a pretty good bribe to do so.
Andy's app and directions are very straightforward so I won't bore you with reiterating.
And after I had flashed the board I mounted it to the panel and wired in my controls appropriately.
There is a header on the I-PAC to plug both the SpinTrak AND trackball (I have a regular old Happ here) into at the SAME time- and they both work.
This is absolutley awesome from my seat since it allows me to play Cosmic Chasm, Tempest, Tac/Scan with this panel and also Quantum with a panel swap.
Love this.
For the sake of being thorough, this particular cabinet was built solely as a vertical game unit.
X Y monitors don't care about orientation really as they are deflecting from center so you can always be smarter than me and just build a wider cabinet with a 25" tube horizontally oriented and be able to play EVERYthing in one cabinet reasonably well as long as you get per-game configuration proper.
I don't do much reasonably it appears.
I need to revisit the vertical vector game possibilities here.