Keep code in the "setup" until button press?

Yes, try this:

while (digitalRead (Pin18) == LOW){
// keep reading until get a HIGH
}

should keep reading Pin18 until it sees a HIGH.

Yeah, like spycatcher said :slight_smile: