This change only affects the 720º driver in Mame. It allows the player to control the game with an 8-way joystick in the same way that the Commodore 64 and Nintendo versions worked. When you point the joystick in a direction, the skateboarder will immediately point in that direction. When I play this way, I am always holding the joystick in a direction so that it works very similarly to the way it worked in the arcade using the circular spinner joystick.

See the bottom of this page for source code and binary executables.

Please email me with any questions, problems, or requests at:


How to use the executable for 720º:

To make it play correctly, you have to go into the control settings and set it up in the following manner:

(*A)Right: J1 Right and not J1 Down and not J1 Up
(*A)Right/Up: J1 Right J1 Up
Up: J1 Up and not J1 Right and not J1 Left
Up/Left: J1 Up J1 Left
Left: J1 Left and not J1 Up and not J1 Down
Left/Down: J1 Left J1 Down
Down: J1 Down and not J1 Left and not J1 Right
Down/Right: J1 Down J1 Right

To set Right, Up, Left, or Down (in the standard build of Mame for Windows)
1) Press tab to bring up the settings menu
2) Select 'Input (this game)'
3) Select 'Right' (or 'Up', 'Left', or 'Down')
4) When entering the controls, push your joystick in the following series of directions:
     a) J1 Right ' Set the control to 'Right'
     b) J1 Down
     c) J1 Down ' Double clicking the direction makes for 'not J1 Down'
     d) J1 Up
     e) J1 Up

To set up the diagonals, simply choose the control (Right/Up) and move the joystick into the diagonal.

Here is how the settings should end up looking:



How to add the source code changes by hand:
(NOTE: The source code I have listed here is for the changes I made - the actual source code which is now in MAME: Analog+ is slightly different.)

U_rebelscum gave me some additional information about the driver:

The biggest thing I'd like to say is than 720 is tracking a 144 per rotation with a 256 size port. Each new number is used relative to the last number. So this means that:

Each prior_value is the "zero point" the new_value is compared to, 256 is really -127 to 127, with a relative 128 (-128) delta handled with that funny spin slowly action you must have seen, and A change of +127 ~= 315 degrees (as shown in you 8way testing).

This leads to the problem you had with going to that last 16th
(SEE ??? IN THE IMAGE BELOW) direction with your 8way code, and why 128 wouldn't with the 8 way code, but will work with the normal dial and added analog joystick code.

The 8 way code I used does not fix for the above; all the position values passed to the ROM by the code are positive rotations relative to zero, thus with max 315 degrees. I can't get as many spin points with it as with an analog joystick, and guess that's because the ROM thinks I go +315 degrees at "regular spin speed", then zip -315 degrees before continuing to spin in the prior direction. Analog joystick control is much better anyway, right?

The other thing is your 8way code spins the opposite direction mine does with a positive increase. That's because your default was ACTIVE_LOW, which is a default of all ones in binary; when activated, the number changes to low (zero).


(Spinner values for each position)


In the file, atarisy2.c where "INPUT_PORTS_START( 720 )" is defined, replace

PORT_START /* LETA0/1 */
PORT_ANALOG( 0xffff, 0x0000, IPT_DIAL | IPF_PLAYER1, 30, 10, 0, 0 )
with:
PORT_START /* LETA0/1 */
PORT_BIT( 0, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT | IPF_4WAY )
PORT_BITX( 16, IP_ACTIVE_LOW, IPT_BUTTON3, "P1 Up/Right", IP_KEY_DEFAULT, IP_JOY_DEFAULT)
PORT_BIT( 34, IP_ACTIVE_LOW, IPT_JOYSTICK_UP | IPF_4WAY )
PORT_BITX( 50, IP_ACTIVE_LOW, IPT_BUTTON4, "P1 Up/Left" , IP_KEY_DEFAULT, IP_JOY_DEFAULT)
PORT_BIT( 68, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT | IPF_4WAY )
PORT_BITX( 88, IP_ACTIVE_LOW, IPT_BUTTON5, "P1 Left/Down" , IP_KEY_DEFAULT, IP_JOY_DEFAULT)
PORT_BIT( 106, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN | IPF_4WAY )
PORT_BITX( 122, IP_ACTIVE_LOW, IPT_BUTTON6, "P1 Down/Right" , IP_KEY_DEFAULT, IP_JOY_DEFAULT)



Downloads:

The updated 720º driver is in Mame Analog+ as of version version 0.67.1. Get it from the download section of this site.
Download the