There are two aspects to your question that might help.
First of all, there is no default timeout on
display dialog, so the script shouldn't timeout after 2 minutes - it should sit there indefinitely.
For example, try this script and see what happens:
display dialog "waiting..."
beep
It will sit there indefinitely.
Timeouts only come into play when in a 'tell application' block, and it relates to how long AppleScript will wait for that app to execute the command.
Therefore, this script
will timeout:
tell
application "Finder"
display dialog "waiting..."
beep
end
tell
Now this will timeout after two minutes, but it's the 'tell application' that's timing out, not the display dialog.
So your first solution is to ensure the display dialog command is not in any 'tell' block.
Secondly, if it needs to be in a tell block, you can use a try/end try block to catch the timeout expiring.
When the script times out, AppleScript throws a -1712 error which you can trap:
try
tell
application "Finder"
display dialog "waiting..."
end
tell
on
error
number
errNo
if
errNo = -1712
then --
timeout!
display dialog "Oops. Time's up!"
buttons {"OK"}
default button 1
end
if
end
try