[Info-vax] Timeout in a write using QUIW.
Johnny Billquist
bqt at softjar.se
Thu Jun 22 07:01:53 EDT 2023
On 2023-06-21 23:36, Jan-Erik Söderholm wrote:
> Den 2023-06-21 kl. 23:25, skrev Stephen Hoffman:
>> On 2023-06-21 20:45:12 +0000, Jan-Erik Sderholm said:
>>
>>> Now, here is a technical one...
>>>
>>> When doing a *read* from a terminal device using QIOW, one
>>> can use IO$M_TIMED and supply a timeout value in P3. That
>>> works perfectly and we use that a lot...
>>
>> I've never had great success...
>
>
> I'm sorry about that. As I wrote, it works perfectly. In the
> case of reads, of course, where it is supported.
>
> My question was about writes, and it has been confirmed that
> timeout paramaters are not supported there. Thanks Arne.
>
> Now we need to weight the coding work against getting
> network cables installed to the printers. Wired printers
> will also "solve" the issue with the current code. We have
> 15-20 older similar Zebra label printers, all wired, and
> we do not see these error scenarios with those.
> All using the same C routine for the QIOW calls.
I would think/hope the following works in VMS. It's a fairly common
trick in RSX anyway.
Issue the QIOW, as usual. But before, issue a mark time for the timeout
you want. For both of these, use the same event flag. The QIOW will wake
up either because the QIO completed, or the mark time expired. Check the
IOSB to see if the QIO completed.
Cancel the mark time anyway, so you don't have one lingering around in
case you want to do the same again. And if the QIO hadn't completed,
cancel it.
Johnny
More information about the Info-vax
mailing list