| Andy,
I have a DCL hack that did that, but it relys on an ugly time-out
which did not harm my application (there was actual processing (clock!))
but which might be unacceptable for you. I think you are much better
of providing a silly program to do this (2 lines BASIC?, or 20 lines
macro, or 4 lines pure debugger instructions).
Still, the following code can show you a direction to go...
Have fun,
Hein.
$ESC[0,8]=27 !Handy
$WRITE SYS$OUTPUT ESC+"[H"+ESC+"[JPlease enter Y/N:"
$TIMER:
$WRITE SYS$OUTPUT ESC+"[H"
$WAIT 0:0:2
$SET TERM/NOESC/NOLINE/NOECHO !Set up terminal
$WRITE SYS$OUTPUT ESC+"[6n"+ESC+"[6n" !Ask for cursor (or other) report twice
$READ/PROMPT="" SYS$OUTPUT X !User character terminated by ESC.
$SET TERM/ESC !Entire escape sequence = terminator
$READ/PROMPT="" SYS$OUTPUT Y !Y=Report terminated by second report.
$IF X.EQS."" THEN $GOTO TIMER
$DONE:
$WRITE SYS$OUTPUT "User input was :", X
$SET TERM/NOESC/LINE/ECHO !Reset terminal
|
| There is a hack in the toolshed to do this. I had a friend ask
me this exact question about a year ago. I told him there was no
way to do single character input. He said what about the "mumble"
command at DCL. I told him that such a command does not exist (sorry,
I don't remember its name.) "funny, it works on my machine". Set
command/table strikes again.
Dave()
|