После записи только с редактированием, хотя бы однократным.
Если можно запустить скрипт только 1 раз для достижения цели, а там цикл, надо все длительности ожиданий заменить на просто переменную WAITMS($waitx), которую вначале объявить равной, например, 50 (мс) или и с числом множителем, где нужно ожидание во сколько-нибудь раз меньше или больше этого. Для изменения её в процессе работы, вставить регулярные проверки, нажата ли клавиша, и назначить увеличение или уменьшение этой переменной, например, на "+" $waitx=$waitx+10, а на "-" $waitx=$waitx-10 (но не меньше 0).
Если много раз, то придётся дополнительно в конце скрипта в ini файл сохранять, чему там было в последний раз равно $waitx и читать его оттуда в начале скрипта при следующем его запуске. Как-то так.