Hi Chris,
The single solenoid will only stay on as long as the button is depressed, if you're setting the relay controlling it directly equal to the button. To control it sort of like a double solenoid (it'll still act like a single when the power is off), try something like this:
Code:
if (p1_sw_trig == 1) relay1_fwd = 1;
if (p1_sw_top == 1) relay1_fwd = 0;
This would make a single solenoid hooked up to relay1 turn on when p1_sw_trig is pressed, and stay on until p1_sw_top is pressed.