You could update the content of the screen every second using screenVarName.setcontent(content) or you could have a function that updates the buttons on the screen every so often:
function reloadbuttons(screen as object, time as string) as object
screen.clearbuttons()
if time <> "0:00" then
screen.addbutton(0,time+" till show start")
else
screen.addbutton(0,"Play")
end if
return screen
end function
The trick is to set your msg=wait to a non-zero time so that it doesn't block execution and updates while waiting for a keypress:
msg=wait(1000,port) 'a one second wait.