Main Restorations Software Audio/Jukebox/MP3 Everything Else Buy/Sell/Trade
Project Announcements Monitor/Video GroovyMAME Merit/JVL Touchscreen Meet Up Retail Vendors
Driving & Racing Woodworking Software Support Forums Consoles Project Arcade Reviews
Automated Projects Artwork Frontend Support Forums Pinball Forum Discussion Old Boards
Raspberry Pi & Dev Board controls.dat Linux Miscellaneous Arcade Wiki Discussion Old Archives
Lightguns Arcade1Up Try the site in https mode Site News

Unread posts | New Replies | Recent posts | Rules | Chatroom | Wiki | File Repository | RSS | Submit news

  

Author Topic: Marble Madness trackball settings in MAME  (Read 9630 times)

0 Members and 1 Guest are viewing this topic.

mimic

  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 805
  • Last login:Today at 01:53:26 pm
  • ...
Marble Madness trackball settings in MAME
« on: June 14, 2015, 12:36:06 am »
I'm looking at this page: http://wiki.arcadecontrols.com/wiki/Spinner_Turn_Count and can't figure out how to calculate this correctly is it:

100x24x4/167.4 = 57
or
100x24/167.4x4 = ~4
or
100x167.4/24x4 = ~174??

Why can't they provide more examples, so it's easier to just replace the numbers, they just picked one that is easiest to calculate anyway!

PL1

  • Global Moderator
  • Trade Count: (+1)
  • Full Member
  • *****
  • Online Online
  • Posts: 9671
  • Last login:Today at 07:34:34 pm
  • Designated spam hunter
Re: Marble Madness trackball settings in MAME
« Reply #1 on: June 14, 2015, 11:20:13 am »
I'm looking at this page: http://wiki.arcadecontrols.com/wiki/Spinner_Turn_Count and can't figure out how to calculate this correctly is it:

100x24x4/167.4 = 57
or
100x24/167.4x4 = ~4
or
100x167.4/24x4 = ~174??

Why can't they provide more examples, so it's easier to just replace the numbers, they just picked one that is easiest to calculate anyway!
If you'd like to update the new wiki page at http://newwiki.arcadecontrols.com/index.php?title=Spinner_Turn_Count with an example, I'd be appy to help.   ;D

It might be easier to test/verify which version of the formula is accurate using Crystal Castles.
Quote
Crystal Castles, 1st screen BB moves length of line above his head from center of trackball moved to one side

The wiki says to use a 2x multiplier for Crystal Castles instead of the 4x for Marble Madness.

100x24x2/167.4 = ~29
or
100x24/167.4x2 = ~7
or
100x167.4/24x2 = ~349

There is one other note on the wiki that might be relevant.
Quote
Atari LETA Chip: several of Atari's optical-control games used the LETA quadrature-decoder chip. It could be set to a 2x or 4x resolution. Therefore all of the below games are either 2x or 4x.
. . .
Marble Madness
Crystal Castles
. . .

Based on the wiki, one of those six settings should work for Crystal Castles and one should work for Marble Madness:   :dunno
    (4x settings)
  57
  4
  174
    (2x settings)
  29
  7
  349

If someone with a 3" Happ trackball (0.43 inch roller, 24 tooth encoder disc) could test these settings, it would be greatly appreciated.   :cheers:


Scott

mimic

  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 805
  • Last login:Today at 01:53:26 pm
  • ...
Re: Marble Madness trackball settings in MAME
« Reply #2 on: June 14, 2015, 12:19:28 pm »

100x167.4/24x2 = ~349



That setting can't be right since sensitivity settings only go up to 255. So that just zapped that formula

it is  100 x effective tooth count / resolution, right?

100x24x4/167.4 = 57

The problem is Marble Madness plays like crap with that setting, with the higher one was much much better.
Then again I have never played Marble Madness and have no idea how it supposed to feel. It seems as I'm making a lot of spinning with the trackball at 57 setting.

EDIT: I don't understand how people are playing with trackballs/spinners on their machines? I hardly see questions about it. Either everyone just understands that wiki page and I am the only dope or no one cares to play properly?
« Last Edit: June 14, 2015, 12:23:37 pm by mimic »

PL1

  • Global Moderator
  • Trade Count: (+1)
  • Full Member
  • *****
  • Online Online
  • Posts: 9671
  • Last login:Today at 07:34:34 pm
  • Designated spam hunter
Re: Marble Madness trackball settings in MAME
« Reply #3 on: June 14, 2015, 01:16:33 pm »
Have you tried Crystal Castles?

The "BB moves length of line above his head from center of trackball moved to one side" note should provide a fairly accurate picture of which setting/formula is correct.

I don't understand how people are playing with trackballs/spinners on their machines? I hardly see questions about it. Either everyone just understands that wiki page and I am the only dope or no one cares to play properly?
They are probably just tweaking the settings until it "feels right" so they don't have to ask.    :embarassed:  :lol

The wiki could definitely use some clarification in the trackball section, but Marble Madness may not be the best game to verify the correct formulas/settings.


Scott

welash

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 54
  • Last login:February 01, 2020, 04:52:44 pm
  • I'm a llama!
Re: Marble Madness trackball settings in MAME
« Reply #4 on: June 14, 2015, 04:29:53 pm »

it is  100 x effective tooth count / resolution, right?



Isn't it 100 x resolution of original / resolution of your trackball ?

So if you are playing with the same trackball, it would be 100, and if you were playing with 2.5 inch happ it would be

100 x 167.4/149.2

The resolution stated is a calculation of (D/d) * C where D is the diameter of the trackball, d the diameter of the roller and C is the count of teeth. so (3/0.43)*24 is 167.4

That being said, as I remeber from the arcade, you really had to spin the trackball fast in Marble Madness, so maybe your 57 is correct.

Xiaou2

  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 4134
  • Last login:June 11, 2025, 11:55:17 pm
  • NOM NOM NOM
Re: Marble Madness trackball settings in MAME
« Reply #5 on: June 14, 2015, 04:40:02 pm »
Ive stated this before... that MAME really needs to document the actual arcade controllers.   For without the correct controls/settings .. these games dont play as they were intended to play.

 I used to play Marble Madnesss a lot...  so I personally know that its a game which requires a Lot of fast trackball movement to get the ball moving at a decent rate.   There are those people whom have never played the game... or whos memory is "fuzzy".

 Yeah, you can crank the settings way up... to make the Marble move much faster with less effort... but thats pretty much "Cheating".   Its not how the game was balanced for its Time limits.   And being that the game only has a few very short levels... One can see why they made the marble move slow, and need a lot of Trackball movement.

 Mame should auto calculate the proper settings based on which controls you select that you have installed:

 Trackball Diameter Roller Diameter (Its possible some Trackballs used different sizes, resulting in different ratios), Encoder Tooth / Hole Count, and Opto Type (Probably standard -vs- Arcade Original variants)

 These settings should also, if possible, over-ride / disable... any windows acceleration formulas.  (or at least pop up a Warning about it)


  BTW - Theres a trick that you can do on an Arcade Marble Madness machine... that Im not certain can be done in Mame...   When playing with One player, you can use BOTH trackballs at the same time, and your marble will be accelerated and turn far more quickly and accurately.  Even this seems like a bit of a cheat... however,  the Programmers seem to have left it in there / allowed it ... so...

 

mimic

  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 805
  • Last login:Today at 01:53:26 pm
  • ...
Re: Marble Madness trackball settings in MAME
« Reply #6 on: June 14, 2015, 04:52:21 pm »
That's why I'm trying to find out what the proper settings are. "Feel right" like PL1 suggested some people like doesn't interest me much (maybe when I'm tired of losing and want to progress further?) Other than that I want an authentic feel.

I never played MM and when I looked at it in mame I though it seems as it requires precision movement but then again it was supposed to suck quarters so maybe they wanted to you to spin a lot so it would be difficult to slow down?

Back to formula on the WIKI page it says for 3" Happ resolution is 167.4 so trying to apply it to the example they have used for tempest that would have to be the last number, no?

so I think in this case is 100 x 24 (tooth count) x4 (multiplier for LETA) / (divied) by resolution 167.4 = 57 = a lot of rolling of the trackball, but it sounds as you guys are saying that how MM felt.

Of course I think ultimate test would be to do what PL1 suggested and try Crystal Castles, because it  gives an idea how much movement there should be. If it passes, then I think that's the formula

welash

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 54
  • Last login:February 01, 2020, 04:52:44 pm
  • I'm a llama!
Re: Marble Madness trackball settings in MAME
« Reply #7 on: June 14, 2015, 05:11:31 pm »
Actually, the example for tempest was why I thought it was 100 * original counts per turn / cabinet counts per turn.  They say that the original tempest had 72 counts per turn, and they are using a 1200 counts per turn spinner, so the sensitivity is 100 * 72/1200.  If you were using a 72 counts per turn spinner in your cabinet, the sensitivty would be 100.

I assumed that the same would apply to the trackball.

mimic

  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 805
  • Last login:Today at 01:53:26 pm
  • ...
Re: Marble Madness trackball settings in MAME
« Reply #8 on: June 14, 2015, 05:31:13 pm »
the 100 isn't really explained what it is exactly, or I am not seeing it? That's why I've replaced the numbers I did.
I'm assuming that where someone wrote sensitivity=100 they don't mean that sensitivity equals 100, but formula for SENSITIVITY equals=
100 x tooth count divided by resolution
Nowhere else is suggested that 100 is sensitivity.

I guess that's why WIKI page is so confusing

I gotta test that Crystal Castles right now

welash

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 54
  • Last login:February 01, 2020, 04:52:44 pm
  • I'm a llama!
Re: Marble Madness trackball settings in MAME
« Reply #9 on: June 14, 2015, 05:44:12 pm »
I think the 100 is 100 percent.  So a value of 100 is 1:1.  They didn't want to use a floating point number, so used a percentage.  The first link has a little more information about the example he used.

mimic

  • Trade Count: (+1)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 805
  • Last login:Today at 01:53:26 pm
  • ...
Re: Marble Madness trackball settings in MAME
« Reply #10 on: June 14, 2015, 05:53:39 pm »
I somehow totally disregarded the links... ooops?

Anyway just tested the Crystal Castles the 29 doesn't work more like double that works nicely.

My head hurts from all of it. I need others to figure out these kind of things for me. That's why I'm not a rocket scientist. I'm gonna take a break now.

knightrdrx

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 130
  • Last login:June 06, 2020, 10:45:36 pm
  • I want to build my own arcade controls!
Re: Marble Madness trackball settings in MAME
« Reply #11 on: June 14, 2015, 11:11:31 pm »
what feels right to me is playing with a NES controller. That's how I played it growing up and I got very good at keeping the ball straight.
I tried with a trackball and it is tiring! Plus I don't think there's a turbo speed button like the NES version has?  Or maybe there is and I never looked at the mapping.

DarthMarino

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 567
  • Last login:July 17, 2025, 06:40:42 am
Re: Marble Madness trackball settings in MAME
« Reply #12 on: June 15, 2015, 03:17:16 pm »
what feels right to me is playing with a NES controller. That's how I played it growing up and I got very good at keeping the ball straight.
I tried with a trackball and it is tiring! Plus I don't think there's a turbo speed button like the NES version has?  Or maybe there is and I never looked at the mapping.

The turbo button = roll the ball faster. They had to add the button on many of the ports like NES so you could have more control with a digital d-pad.  It's not necessary with a trackball.

p1mrx

  • Trade Count: (0)
  • Jr. Member
  • **
  • Offline Offline
  • Posts: 3
  • Last login:May 04, 2025, 04:14:03 pm
  • I want to build my own arcade controls!
Re: Marble Madness trackball settings in MAME
« Reply #13 on: December 12, 2024, 02:14:14 pm »
what feels right to me is playing with a NES controller. [...] Plus I don't think there's a turbo speed button like the NES version has?

In order to play Marble Madness on my MAME cabinet with 8-way sticks, I wrote this Lua script that adds fast and slow buttons:

Code: [Select]
-- mame marble -autoboot_script marble.lua
-- Set all Analog inputs to "None" in the menu.

players = {
  {x_port = ":IN0", x_field = "Trackball X",
   y_port = ":IN1", y_field = "Trackball Y",
   prefix = "JOYCODE_1_",
   xv = 0, yv = 0, text = ""},
  {x_port = ":IN2", x_field = "Trackball X 2",
   y_port = ":IN3", y_field = "Trackball Y 2",
   prefix = "JOYCODE_2_",
   xv = 0, yv = 0, text = ""}
}

function process_input(p)
  local x_port = manager.machine.ioport.ports[p.x_port].fields[p.x_field]
  local y_port = manager.machine.ioport.ports[p.y_port].fields[p.y_field]
  local input = manager.machine.input

  local delta = 16
  p.text = "normal"

  if input:code_pressed(input:code_from_token(p.prefix .. "BUTTON1")) then
    delta = 64
    p.text = "fast"
  elseif input:code_pressed(input:code_from_token(p.prefix .. "BUTTON2")) then
    delta = 4
    p.text = "slow"
  end

  if input:code_pressed(input:code_from_token(p.prefix .. "XAXIS_LEFT_SWITCH")) then
    p.xv = (p.xv + delta) % 256
    x_port:set_value(p.xv)
  end
  if input:code_pressed(input:code_from_token(p.prefix .. "XAXIS_RIGHT_SWITCH")) then
    p.xv = (p.xv - delta) % 256
    x_port:set_value(p.xv)
  end
  if input:code_pressed(input:code_from_token(p.prefix .. "YAXIS_UP_SWITCH")) then
    p.yv = (p.yv - delta) % 256
    y_port:set_value(p.yv)
  end
  if input:code_pressed(input:code_from_token(p.prefix .. "YAXIS_DOWN_SWITCH")) then
    p.yv = (p.yv + delta) % 256
    y_port:set_value(p.yv)
  end
end

frame_sub = emu.add_machine_frame_notifier(function()
  process_input(players[1])
  process_input(players[2])
end)

emu.register_frame_done(function()
  local s = manager.machine.screens[":screen"]
  s:draw_text(280, 5,
              "P1: " .. players[1].text .. "\nP2: " .. players[2].text,
              0xFFFFFFFF, 0xFF000000)
end)

The same technique can control any game with analog inputs.  I briefly experimented with a script for Super Off Road where you spin the stick to emulate a steering wheel, but that was too ridiculous to be practical.
« Last Edit: March 04, 2025, 12:40:41 am by p1mrx »

KenToad

  • Trade Count: (0)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 1509
  • Last login:Today at 03:46:38 pm
  • Flap Flap Flap
Re: Marble Madness trackball settings in MAME
« Reply #14 on: December 12, 2024, 05:38:48 pm »
http://forum.arcadecontrols.com/index.php/topic,164121.msg1729123.html#msg1729123

That thread has all the settings for trackball games in MAME and an explanation of the methodology.