Try this:
Begin Condition : (Joystick 1 Button 8 Is Pressed AND [{STATE_JOYSTICK1POV1}] Equals 'UP')
Set date [~pressStart] to [~pressStart] plus [1] seconds
End Condition - Exit when condition not met
Start Loop While : (Joystick 1 Button 8 Is Pressed AND [{STATE_JOYSTICK1POV1}] Equals 'UP')
Begin Date Compare : [~pressStart] Is Less Than Current Date/Time
Say, 'Say something'
Loop Break
End Condition
End Loop
You'll need to change the joystick assignments to how they're mapped on your system, of course.
This will wait approximately one second, as processing overhead may add additional delay(milliseconds, not seconds).