We use switches this year on our OI. The robot and OI are in full communication when you set them out on the field (just PWM and relay outputs are squelched), and inputs are only set to neutral when you go into autonomous. So, to do this: figure out which digital inputs you want to use, and in your program, capture the *previous* values of those inputs (the program makes one more sweep with neutral values, so you need the good ones from before that).
Basically just set up variables for the previous values and set them at the bottom of User_Routines, and in your Main function, create a variable that amalgamates those variables. Now you have one variable you can use for a switch statement in your autonomous code.
PM or IM me if you have trouble getting it to work, its a little difficult to explain in a static post

.