Jump to content



Photo
* * * * * 6 votes

FastFlips script (bypassing pinmame flipper callback)


  • Please log in to reply
440 replies to this topic

#221 senseless

senseless

    Pinball Fan

  • Platinum Supporter
  • 513 posts

  • Flag: Netherlands

  • Favorite Pinball: T2, Black Knight 2K, Monster Bash

  • PS3 Gamer Tag: senseless_mind

Posted 06 July 2018 - 08:17 PM

Great work guys! Memory wizards :).



#222 jesperpark

jesperpark

    Enthusiast

  • Silver Supporter
  • 271 posts
  • Location:Edmonton Alberta Canada

  • Flag: Canada

  • Favorite Pinball: Medieval Madness

Posted 07 July 2018 - 03:12 AM

So a question I have is what is the best way to share or show people how this is done? I have done many previously myself and will work through the list. But for others wanting/hoping for a "kids table way" (keeping my existing reference) would it be easier to share modified scripts, or a comprehensive list saying on game x change line whatever to 2 and add the following to line y. I know the Sam tables are more detailed and I have not worked with all yet.

I just feel this is such a game changer, that it should be made easy to change for all. Obviously tables being updated or released are starting to see this added already.

Just my thoughts

 

 

Oh also I found totan needs:

 

Const cSingleLFlip = 0
 
Const cSingleRFlip = 0
 
Added to make work

Edited by jesperpark, 07 July 2018 - 04:43 AM.


#223 DJRobX

DJRobX

    Pinball Fan

  • VP Dev Team
  • PipPipPipPip
  • 941 posts
  • Location:Valencia, CA

  • Flag: United States of America

  • Favorite Pinball: F14 Tomcat

Posted 07 July 2018 - 06:00 AM

I really don't think it can be made any easier than it already is.    I'm surprised nFozzy found a way to make it as simple as changing UseSolenoids to 2.    It's a miracle that's all you have to do in the majority of cases.   If you want to make it easier for the masses, start evangelizing to the table authors who are releasing tables, to get it into their releases.  :) 

In other news, I've done some initial WhiteStar tables.    I've committed initial support for the following tables: 

sopranos, simpprty, sprk_103, austin, monopoly, twst_405

Once the VPM build comes out you will also need an updated sega.vbs:
https://sourceforge....cripts/sega.vbs

Then it works like the others with UseSolenoids=2.   The TSPP table I have needs you to add vpminit me into Table init (that's supposed to always be there anyway).
 
@stumblor, there are lots more of these if you're game to assist!   There are instructions in the se.c file.    You should be able to follow the same WPC process, but look for 192 (decimal) when the flippers are turned on.     These tend not to have simulators so you have to use combos of keys to load the balls into the trough before you can start the table.    But the tilt switch can be done by holding down U+K.  It took me a while to figure out that 192=ON.    There is an additional trick I did to narrow the search down to a small section by looking up the address of the RAM block first before searching in CheatEngine but you probably don't really need that now that we know 192 is the magic number. 

 



#224 Stumblor

Stumblor

    Hobbyist

  • Members
  • PipPip
  • 28 posts
  • Location:London UK

  • Flag: United Kingdom

  • Favorite Pinball: CFTBL, Theatre of Magic

Posted 07 July 2018 - 06:56 AM

I really don't think it can be made any easier than it already is.    I'm surprised nFozzy found a way to make it as simple as changing UseSolenoids to 2.    It's a miracle that's all you have to do in the majority of cases.   If you want to make it easier for the masses, start evangelizing to the table authors who are releasing tables, to get it into their releases.   :)

In other news, I've done some initial WhiteStar tables.    I've committed initial support for the following tables: 

sopranos, simpprty, sprk_103, austin, monopoly, twst_405

Once the VPM build comes out you will also need an updated sega.vbs:
https://sourceforge....cripts/sega.vbs

Then it works like the others with UseSolenoids=2.   The TSPP table I have needs you to add vpminit me into Table init (that's supposed to always be there anyway).
 
@stumblor, there are lots more of these if you're game to assist!   There are instructions in the se.c file.    You should be able to follow the same WPC process, but look for 192 (decimal) when the flippers are turned on.     These tend not to have simulators so you have to use combos of keys to load the balls into the trough before you can start the table.    But the tilt switch can be done by holding down U+K.  It took me a while to figure out that 192=ON.    There is an additional trick I did to narrow the search down to a small section by looking up the address of the RAM block first before searching in CheatEngine but you probably don't really need that now that we know 192 is the magic number. 

 

 

Great! I was going to ask you about these :-)

 

Finding it hard to find a list of the Whitestar games, but these are the ones I think they are?

 

AUSTIN POWERS

ELVIS

GRAND PRIX (Stern)

HARLEY DAVIDSON 3rd EDITION

HIGH ROLLER CASINO

LORD OF THE RINGS

MONOPOLY done

NASCAR

PLAYBOY (Stern)

RIPLEYS BELIEVE IT OR NOT

ROLLER COASTER TYCOON

SHARKEYS SHOOTOUT

SIMPSONS PINBALL PARTY done

SOPRANOS done

STRIKER XTREME

TERMINATOR 3

 

And then maybe these too?

 

APOLLO 13

GODZILLA

GOLDENEYE

HARLEY DAVIDSON (Sega 1999)

INDEPENDENCE DAY

LOST IN SPACE

LOST WORLD JURASSIC PARK

SOUTH PARK done

SPACE JAM

STAR WARS TRILOGY

TWISTER done

VIPER NIGHT DRIVIN

X FILES

 

Happy to help with these!

 

@jesperpark thanks for that have updated my notes.


Edited by Stumblor, 07 July 2018 - 08:54 AM.


#225 jesperpark

jesperpark

    Enthusiast

  • Silver Supporter
  • 271 posts
  • Location:Edmonton Alberta Canada

  • Flag: Canada

  • Favorite Pinball: Medieval Madness

Posted 07 July 2018 - 11:33 AM

Yeah your right @djrobx I started working through the list of wpc95 games and was done quickly. Guess I never really had or worked with a list, more of 1 here and 1 there method. Once you get a rhythm it's quite easy

#226 DJRobX

DJRobX

    Pinball Fan

  • VP Dev Team
  • PipPipPipPip
  • 941 posts
  • Location:Valencia, CA

  • Flag: United States of America

  • Favorite Pinball: F14 Tomcat

Posted 07 July 2018 - 03:01 PM

That list looks good.     Note that Austin Powers is on my initial commit's list.   NFozzy had linked here:

https://www.ipdb.org...advanced&mpu=33

 

But it's missing some like Elvis which I guess are WhiteStar (Modified).   I think in the source these are ones that will show up under MACHINE_INIT(se3) 

https://www.ipdb.org...advanced&mpu=41


Edited by DJRobX, 07 July 2018 - 03:01 PM.


#227 DKong

DKong

    Pinball Fan

  • Platinum Supporter
  • 600 posts

  • Flag: ---------

  • Favorite Pinball: IJ (Williams), TOM, AFM

Posted 08 July 2018 - 05:10 AM

Thank you for all the time you have spent on this. As others have mentioned, this is a game changer for VP. Flipper response time adds so much to the experience and VP keeps getting better, thanks to people like you, DJRobX, the VP Devs and all the table authors and contributors.

 

Many thanks again!



#228 DJRobX

DJRobX

    Pinball Fan

  • VP Dev Team
  • PipPipPipPip
  • 941 posts
  • Location:Valencia, CA

  • Flag: United States of America

  • Favorite Pinball: F14 Tomcat

Posted 08 July 2018 - 06:02 AM

I added a couple of Capcom games.  Big Bang Bar and Pinball Magic.   But these seem to be a bit of a nightmare.    They have a ton of values that seem to zero out when the ball is not in play.  Found a nice 0/1 value for Pinball Magic, but BBB seems very different.   Found one value that seems to go from 0 to 8 pretty reliably. 



#229 Stumblor

Stumblor

    Hobbyist

  • Members
  • PipPip
  • 28 posts
  • Location:London UK

  • Flag: United Kingdom

  • Favorite Pinball: CFTBL, Theatre of Magic

Posted 08 July 2018 - 06:28 AM

@DJRobX - sorry what's the key combo to load balls in these unsimulated sega tables?

 

--

 

edit: Should have read your notes first. disregard!   :dblthumb:


Edited by Stumblor, 08 July 2018 - 06:33 AM.


#230 Ben Logan

Ben Logan

    Pinball Wizard

  • Members
  • PipPipPipPipPip
  • 2,275 posts
  • Location:California

  • Flag: ---------

  • Favorite Pinball: System 11

Posted 08 July 2018 - 06:33 AM

Stumblor, thanks for your contribution here.
:)

#231 Stumblor

Stumblor

    Hobbyist

  • Members
  • PipPip
  • 28 posts
  • Location:London UK

  • Flag: United Kingdom

  • Favorite Pinball: CFTBL, Theatre of Magic

Posted 08 July 2018 - 07:17 AM

First bunch:

 

ELVIS = 0x00000004
GRAND PRIX (Stern) = 0x00000004
HARLEY DAVIDSON 3rd EDITION = 0x00000000
HIGH ROLLER CASINO = 0x00000004
LORD OF THE RINGS = 0x00000004
NASCAR = 0x00000004
PLAYBOY (Stern) = 0x00000004
RIPLEYS BELIEVE IT OR NOT = 0x00000004
ROLLER COASTER TYCOON = not using 192 i think
SHARKEYS SHOOTOUT = 0x00000000
TERMINATOR 3 = 0x00000004


#232 Stumblor

Stumblor

    Hobbyist

  • Members
  • PipPip
  • 28 posts
  • Location:London UK

  • Flag: United Kingdom

  • Favorite Pinball: CFTBL, Theatre of Magic

Posted 08 July 2018 - 09:14 AM

@DJRobX I'm finding that a lot of tables later in the list either don't start due to balls missing (godzilla, goldeneye) or don't seem to have an indicator showing the flippers being active when the game is started (apollo13, independence day, lost in space, lost world jurassic park...). Is this due to them not currently being supported in PinMame?



#233 Slydog43

Slydog43

    Pinball Wizard

  • Platinum Supporter
  • 3,008 posts
  • Location:Hackettstown, NJ

  • Flag: United States of America

  • Favorite Pinball: Addams Family, All Williams 90's Games

Posted 08 July 2018 - 11:03 AM

Thank you stumbler for your work in improving fastflips by adding more tables.  The whole community I think thanks you.

 

I was playing/working on Grandlizard last night and was wondering if fastflips is suppose to work with Williams System 11 tables.  Does any1 know about these type of tables?  thanks   (also space station, 11b)


Edited by Slydog43, 08 July 2018 - 11:06 AM.


#234 Stumblor

Stumblor

    Hobbyist

  • Members
  • PipPip
  • 28 posts
  • Location:London UK

  • Flag: United Kingdom

  • Favorite Pinball: CFTBL, Theatre of Magic

Posted 08 July 2018 - 11:59 AM

Thank you stumbler for your work in improving fastflips by adding more tables.  The whole community I think thanks you.

 

I was playing/working on Grandlizard last night and was wondering if fastflips is suppose to work with Williams System 11 tables.  Does any1 know about these type of tables?  thanks   (also space station, 11b)

 

 

Appreciate all the kind words everyone.

 

Honestly though it is a case of standing on the shoulders of giants!

x

 

With regards to the System 11 tables, they are supposed to be supported - but sometimes certain tables get missed in the 'auto' configuration (ie UseSolenoids=2). Try declare the explicit solenoid number, in the case of Williams System 11 it is 23 (ie UseSolenoids=23)


Edited by Stumblor, 08 July 2018 - 12:05 PM.


#235 DJRobX

DJRobX

    Pinball Fan

  • VP Dev Team
  • PipPipPipPip
  • 941 posts
  • Location:Valencia, CA

  • Flag: United States of America

  • Favorite Pinball: F14 Tomcat

Posted 08 July 2018 - 03:09 PM

@DJRobX I'm finding that a lot of tables later in the list either don't start due to balls missing (godzilla, goldeneye) or don't seem to have an indicator showing the flippers being active when the game is started (apollo13, independence day, lost in space, lost world jurassic park...). Is this due to them not currently being supported in PinMame?

 

When there's no simulator, you get control over every switch by pressing key combinations.  If you hold down Q+A it turns on the first switch,  Q+S turns on the second, W+A turns on the 9th, etc.    So you need to figure out where the ball through is and flip the switches that correspond to it.   For WhiteStar tables the service menu has "CLR" which will show you the trough status with the switch numbers.     You can figure it out pretty fast on that screen.    You can also load the table and look at its script to see the switch numbers or just mash through the rows to find them (easy on some that say "X BALLS MISSING").      When you start the table toggling off the first trough ball and toggling it back on will simulate a ball drain.    If you can find the shooter lane switch it's good too since flipping that will make the game think the ball is in play.  

Most of the whitestar tables I looked at had a 6 ball trough.  Filling it with balls was:

 

W+SDFGHJ


Edited by DJRobX, 08 July 2018 - 03:12 PM.


#236 Stumblor

Stumblor

    Hobbyist

  • Members
  • PipPip
  • 28 posts
  • Location:London UK

  • Flag: United Kingdom

  • Favorite Pinball: CFTBL, Theatre of Magic

Posted 08 July 2018 - 03:12 PM

 

When there's no simulator, you get control over every switch by pressing key combinations.  If you hold down Q+A it turns on the first switch,  Q+S turns on the second, W+A turns on the 9th, etc.    So you need to figure out where the ball through is and flip the switches that correspond to it.   For WhiteStar tables the service menu has "CLR" which will show you the trough status with the switch numbers.     You can figure it out pretty fast on that screen.    You can also load the table and look at its script to see the switch numbers or just mash through the rows to find them (easy on some that say "X BALLS MISSING").      When you start the table toggling off the first trough ball and toggling it back on will simulate a ball drain.    If you can find the shooter lane switch it's good too since flipping that will make the game think the ball is in play.  

 

 

Ok great, that makes sense. What about those tables when the ball is in play, but it appears as though the flippers are deactivated, ie, pressing LShift doesn't result in the usual solenoid light in the debugger?



#237 DJRobX

DJRobX

    Pinball Fan

  • VP Dev Team
  • PipPipPipPip
  • 941 posts
  • Location:Valencia, CA

  • Flag: United States of America

  • Favorite Pinball: F14 Tomcat

Posted 08 July 2018 - 03:21 PM

I think when tables are using the proper VPM flipper constants, you never see the flipper solenoids (annoying!).   They do however show up as dots on the bottom matrix (I think they're really the EOS switches or something like that) 

An alternative is to open core.c around line 1209 and remove that suppression.   Funny - after reading your comment I thought about doing that and figured I'd go hunt in the code for where that was happening.   My visual studio was just sitting on that line out of pure coincidence. 


Edited by DJRobX, 08 July 2018 - 03:23 PM.


#238 Stumblor

Stumblor

    Hobbyist

  • Members
  • PipPip
  • 28 posts
  • Location:London UK

  • Flag: United Kingdom

  • Favorite Pinball: CFTBL, Theatre of Magic

Posted 08 July 2018 - 03:23 PM

I think when tables are using the proper VPM flipper constants, you never see the flipper solenoids (annoying!).   They do however show up as dots on the bottom matrix.  

An alternative is to open core.c around line 1209 and remove that suppression.   Funny - after reading your comment I thought about doing that and figured I'd go hunt in the code for where that was happening.   My visual studio was just sitting on that line out of pure coincidence. 

 

 

Brilliant - Yeah I didn't fancy my chances without getting some kind of feedback I was on the right track! Cheers will have a look for that line and keep chipping away at the remaining tables.



#239 Wob

Wob

    Hobbyist

  • Members
  • PipPip
  • 32 posts

  • Flag: Australia

  • Favorite Pinball: AC\DC, MM, AFM, MB, TAG, TOM

Posted 09 July 2018 - 02:01 AM

Thanks for the awesome work guys, I have updated all my WPC-95 games and they are all working except NBA (which @stumblor has noted), and No Good Gofers (NGG).

 

With NGG the flipper will work for a couple of presses just at the start, then nothing, game plays but flippers don't respond. Most of the scripting is well over my head, but I searched for flipper related lines and they seem similar to the working tables, redownloaded (No-Good-Gofers-Williams-1997-1.0) with the same result. Has anyone got this working?

 

Thanks again, you guys just keep finding improvements.

Wob



#240 Schlabber34

Schlabber34

    Enthusiast

  • Members
  • PipPipPip
  • 311 posts

  • Flag: Germany

  • Favorite Pinball: High Speed

Posted 09 July 2018 - 03:23 PM

First of all thanks for the hard work you guys put into this! Playing with the fast flips enabled really lifts VPX to a new Level!

 

I installed VPX today and started to apply usesolenoids=2 to different tables. Everything works great so far, but when i tried to apply it to my Vector table it acted weird. I was able to play up to the first ball drain. Up to that point the left flipper delay was somewhere between 2 -5 ms. After the drain the flippers went dead. They started working again after the second drain.

 

I have the latest SAM beta 3.1 and the latest VPX5 beta installed.

 

It's possible that the problem is standing right in front of the cab. I'm bad in scripting.

 

It would be really kind if somebody could shed some light on this.

 

Thanks in Advance!