From: "Theodore E. Dennison" <dennison@escmail.mmc.orl.com>
Subject: Re: Unbuffered Keyboard I/O
Date: 8 Feb 1995 15:38:50 GMT
Date: 1995-02-08T15:38:50+00:00 [thread overview]
Message-ID: <3haoia$3aj@theopolis.orl.mmc.com> (raw)
In-Reply-To: 1995Feb3.071931.1@clstcs
amlombardi@vms4.sci.csupomona.edu wrote:
>
> I posted earlier about unbuffered keyboard io, well it works really well (i
> used the one at owens.ridgecrest.ca.us) but when the package initializes itself
> it must screw with the i/o channels some how because the PUT statement does not
> work but all the others like PUT_LINE and NE~W_LINE work... PUT actually will
> show up after a PUT_LINE or a NE~W_LINE or quitting the program... anyone have
> any ideas on how to fix this? Thanx in advance
Actually, this is quite common behavior for PUT. On many systems, PUT
I/Os are buffered, and only PUT_LINEs and NEW_LINEs flush that buffer.
In many OS's (VMS for one) exitting a program automaticly flushes all
I/O buffers.
I know VAX Ada exihibts this behavior. There may be other Ada's that
do it as well.
The solution to this in VMS is to either
- Use PUT_LINE or NEW_LINE when the text absolutely HAS to be
displayed.
- Use the SMG package instead of Text_IO
- Use QIOs (YUUUUCK!)
- Use the FORM parameter when you open the text file to get Text_IO
to not buffer any writes (I hope you are an RMS expert!)
If you ARE using VAX Ada, I suggest SMG.
T.E.D.
prev parent reply other threads:[~1995-02-08 15:38 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <1995Feb3.071931.1@clstcs>
1995-02-06 14:19 ` Unbuffered Keyboard I/O Do-While Jones
1995-02-08 15:38 ` Theodore E. Dennison [this message]
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox