I have always wanted the left saucer kickout to kick out faster, right now it kicks out after the animation of the ball lock or whatever the animation is... it would really speed up the game to kick it out sooner

The WPC code has sort of a master table of indexed callback functions for different features. Code can call this function by passing in the desired function index as a parameter byte (byte after the jsr opcode) or code can call the function directly with the desired index in the A register.

The function that takes the parameter byte looks something like the following. All it does it grab that parameter byte, puts it into the A register, then calls the real feature lookup function (shown below is snippet from dm_lx4):

Most of the callback routines ultimately check if a game is in progress, and if not, do nothing, so first start up a game so that you can observe how different functions behave. Then set a breakpoint at $C7B4. Then hit '5' to coin-up or just wait a few seconds since the game will keep calling this function every few seconds to say "PRESS LAUNCH" on the dmd. When the breakpoint is hit, look at the A-register which is the callback index. What we do next is simply modify value in A register then hit 'esc' to let the code continue and see what happens. This lets you determine the callback index for various features during game play. Once you know the callback index for the part of the game you want to modify, you need to do a litte deeper investigation which I'll describe later if I get some more free time.