Uzebox JAMMA

Topics regarding the Uzebox hardware/AVCore/BaseBoard (i.e: PCB, resistors, connectors, part list, schematics, hardware issues, etc.) should go here.
User avatar
L4rry
Posts: 242
Joined: Sun Dec 28, 2014 7:19 am
Location: Cape Town, South Africa

Re: Uzebox JAMMA

Post by L4rry »

Yup, eagle files as I understand. Thanks for the advice! Let's see if I can get this done. Should be an interesting experience.
User avatar
L4rry
Posts: 242
Joined: Sun Dec 28, 2014 7:19 am
Location: Cape Town, South Africa

Re: Uzebox JAMMA

Post by L4rry »

So I've managed to export the gerber files from the .brd file and ordered a batch of 10 PCBs from that. Yay! Should be receiving those in a couple of weeks. However, exporting the BOM from the .sch file into something useful for finding parts on Digikey is proving difficult. I've attached the exported BOM here. If someone with experience can eyeball that and give me some direction on how I can use this to find the parts, that would be awesome. I'm scared of ordering the wrong components. First prize of course would be if someone already has a parts list lying around somewhere for the uzebox jamma that would make purchasing easier :)
bom.txt
(8.28 KiB) Downloaded 620 times

EDIT: I actually came across the assembly guide on BasementHobbies website. The parts actually have good quality images and descriptions there, so I'll just use that. A little extra manual labour setting up a Digikey BOM, but should be accurate at least. After I've found all the parts (hopefully at one store), I'll export the BOM and make it available on this forum and on the wiki. Should make life easier for anyone else interested in rolling their own Uzebox JAMMA.
User avatar
Jubatian
Posts: 1561
Joined: Thu Oct 01, 2015 9:44 pm
Location: Hungary
Contact:

Re: Uzebox JAMMA

Post by Jubatian »

Larry told me about the Soft DIP switch app, and found it's source. It is in this post of this forum, made by Greg Mapes.

Currently we are facing the problem that the soft DIP switch configuration of this application does not correspond the layout described in the documentations, while it also seems like nobody ever actually used these switches so far. The games Smokey and the Bandit and the Jamma version of Megatris don't access the JAMMA block, and the games listed in the JAMMA EEPROM block reservation list doesn't seem to have JAMMA versions (with the capability of using the coin inputs) or weren't completed.

Does anyone remember any game beyond these having something JAMMA specific (possibly using the DIP switches in some manner)? If not, I think the soft DIP switch app. should be fixed according with the JAMMA documentations.

Another problem is that Mapes didn't add any license note to the program (it has no GPL header). If you are still around, could you clarify this? (by strict legal sense it must be GPL as the Uzebox kernel would enforce that, but still) I would like to add it to the Uzebox Master as a tool, useful for Uzebox JAMMA owners.
User avatar
nicksen782
Posts: 714
Joined: Wed Feb 01, 2012 8:23 pm
Location: Detroit, United States
Contact:

Re: Uzebox JAMMA

Post by nicksen782 »

Smokey and the Bandit is JAMMA only, right?

How do I operate the insert coin part (and the dip switches?) within CUzeBox (For the Online Player?) JAMMA appears rotated and I don't know how to add coins.
User avatar
Artcfox
Posts: 1382
Joined: Thu Jun 04, 2015 5:35 pm
Contact:

Re: Uzebox JAMMA

Post by Artcfox »

nicksen782 wrote: Thu Feb 01, 2018 6:37 pm Smokey and the Bandit is JAMMA only, right?

How do I operate the insert coin part (and the dip switches?) within CUzeBox (For the Online Player?) JAMMA appears rotated and I don't know how to add coins.
The only way I know how to insert coins with Cuzebox is to plug in am actual controller and hit F12 to switch its inputs to player 2 and then press its left shoulder button. I think that cuzebox should be modified to have the ability to switch the keyboard over to player 2 as well.
User avatar
L4rry
Posts: 242
Joined: Sun Dec 28, 2014 7:19 am
Location: Cape Town, South Africa

Re: Uzebox JAMMA

Post by L4rry »

nicksen782 wrote: Thu Feb 01, 2018 6:37 pm Smokey and the Bandit is JAMMA only, right?

How do I operate the insert coin part (and the dip switches?) within CUzeBox (For the Online Player?) JAMMA appears rotated and I don't know how to add coins.
Checkout the JAMMA pin allocation page to see how JAMMA inputs map to standard Uzebox SNES buttons.There's actually nothing special about the dip switches. It's just a reserved eeprom block by the Softswitch application that by contract JAMMA games can use to configure things like coin/credit relationship and attract mode audio toggle etc. Nobody seems to be using it and the documentation doesn't seem to match the functionality at the moment.

EDIT: I think smokey and the bandit was deliberately developed rotated by dev so that it would look good on a flipped wide screen monitor or something. I'm guessing though. It isn't an inherent JAMMA thing.
User avatar
Jubatian
Posts: 1561
Joined: Thu Oct 01, 2015 9:44 pm
Location: Hungary
Contact:

Re: Uzebox JAMMA

Post by Jubatian »

Artcfox wrote: Thu Feb 01, 2018 6:42 pm
nicksen782 wrote: Thu Feb 01, 2018 6:37 pm Smokey and the Bandit is JAMMA only, right?

How do I operate the insert coin part (and the dip switches?) within CUzeBox (For the Online Player?) JAMMA appears rotated and I don't know how to add coins.
The only way I know how to insert coins with Cuzebox is to plug in am actual controller and hit F12 to switch its inputs to player 2 and then press its left shoulder button. I think that cuzebox should be modified to have the ability to switch the keyboard over to player 2 as well.
Rotating the display in CUzeBox is not possible right now due to the architecture of the GUI part (it would demand a large redesign). Smokey and the Bandit is intended for an arcade cabinet which has its CRT "sideways" (or "upright" as it is called in the JAMMA manual).

I will think about something for allowing producing Player 2 controller inputs by keyboard on CUzeBox (I really don't understand why Player 2's Start button is on Player 1's controller in the Uzebox JAMMA while Player 1's coin input being on Player 2's controller. The JAMMA pinout is symmetric, my best guess would be that it might have been some design bug which would have been too costly to fix when discovered). There are several difficulties relating that:
  • It should be something which could stay if some time in the future the GUI was redesigned.
  • It shouldn't interfere with normal 1 player gameplay (preferably even if the player accidentally taps neighboring keys).
  • It is useless for actual 2 player game on cheaper keyboards not supporting the detection of more than 2 buttons held down simultaneously.
  • Moreover there is no region with the current keyboard mapping which could even be used for a sane 2 player layout.
I am leaning towards using AltGr to switch, that is when AltGr is held, the keyboard controller input would be directed to Player 2. It is sufficiantly distant from other keys, and keyboards have their matrices designed with the intention of using AltGr as part of key combos, and it should be sufficient for testing purposes (mainly to insert coins in a JAMMA game or testing 2 player games without any PC game controller).
User avatar
Jubatian
Posts: 1561
Joined: Thu Oct 01, 2015 9:44 pm
Location: Hungary
Contact:

Re: Uzebox JAMMA

Post by Jubatian »

I fixed the soft DIP switch program to use the Cabinet DIPs according to the documentation. The updated Flight of a Dragon JAMMA version should use the credits / coins configuration correctly.

Binaries are included in the package.

License is uncertain, Mapes did not add any note on it. Maybe later it should be rewritten, the code has some weaknesses anyway.
Attachments
jamma_softswitch_source.tar.bz2
Fixed cabinet switches
(183.31 KiB) Downloaded 504 times
User avatar
nicksen782
Posts: 714
Joined: Wed Feb 01, 2012 8:23 pm
Location: Detroit, United States
Contact:

Re: Uzebox JAMMA

Post by nicksen782 »

Jubatian wrote: Thu Feb 01, 2018 7:55 pm Rotating the display in CUzeBox is not possible right now due to the architecture of the GUI part (it would demand a large redesign).
Perhaps in CUzeBox this isn't possible but on the Online Player it is.

Code: Select all

// Rotate the game canvas.
function rotateGameCanvas(degrees){
	// Get handle.
	var canvas       = document.querySelector('#emscripten_iframe').contentDocument.querySelector('#canvas');

	// Set the CSS/style width and height to be equal to the height (gives square display.)
	canvas.style.width      = canvas.style.height ;

	// Rotate on center.
	canvas.style['transform-origin']='center';
	canvas.style.transform='rotate('+degrees+'deg)';
}
This works. I could create a button for the user to click to rotate the screen. If there is a way to determine JAMMA games perhaps I could just auto detect that and then automatically rotate the screen. I have the buttons to do this hidden on the production version but the JavaScript function (the one above) is still visible and callable from the dev console. It works.

How could a JAMMA game be detected?
User avatar
Jubatian
Posts: 1561
Joined: Thu Oct 01, 2015 9:44 pm
Location: Hungary
Contact:

Re: Uzebox JAMMA

Post by Jubatian »

nicksen782 wrote: Sat Feb 03, 2018 7:40 pmThis works. I could create a button for the user to click to rotate the screen. If there is a way to determine JAMMA games perhaps I could just auto detect that and then automatically rotate the screen. I have the buttons to do this hidden on the production version but the JavaScript function (the one above) is still visible and callable from the dev console. It works.

How could a JAMMA game be detected?
The condition you would have to detect is not JAMMA, it would be JAMMA + Upright aligned display in the cabinet. Arcade displays aren't necessarily upright, both Megatris JAMMA and FoaD JAMMA are designed for horizontally aligned display. There is a bit for this in the Soft DIP switch set, but that's something you provide (not the JAMMA game), which a game could possibly use (but I guess it is totally impractical as rotating an Uzebox game's display by 90 degrees is at best nontrivial - maybe a vector game by CunningFellow could do that, but it is totally impractical for bitmapped stuff).

EDIT: Here is an example: http://retroactivearcade.ca/jamma-game-boards/ , see the two items in the top row. There is a JAMMA board for vertical games, and there is one for horizontal games.

(So the conclusion: Detection is not doable: there is nothing in the game which would tell it is intended for an upright display)
Post Reply