The DEVICE file has a field called OPEN PARAMETERS that stores the parameters to be included when the device utility performs the actual open. However, I just noticed something. According to the GT.M documentation LENGTH (virtual page length) is a USE parameter only. Some sequential file "deviceparameters" work with OPEN, some with USE, and some with either OPEN or USE, etc. Chapter 9 of the GT.M Programmer Manual has a table showing allowed M commands for each parameter. Since LENGTH is a USE parameter only, it would go in the USE PARAMETERS field of the DEVICE file entry. For example, if there are no other USE parameters you could put (LENGTH=80) as the value for this field. I don't have a recent GT.M version of the device utility and haven't studied where the USE parameters are applied, but a simple experiment should tell whether or not this works.

Lloyd

PS Your workaround seems okay. It would be interesting to know, though, if the problem can be addressed without modifying the code.

----- Original Message ----- From: "Kevin Toppenberg" <[EMAIL PROTECTED]>
To: <hardhats-members@lists.sourceforge.net>
Sent: Friday, January 14, 2005 4:11 PM
Subject: Re: [Hardhats-members] Endless printer loop caused by $Y bug (??!?)




Lloyd,

Thanks for getting back to me.  Below is the fix I
came up with.

new tempY set tempY=$Y
I (IOT'="HFS")!(IOSL<250) F  do  Q:tempY+6'<IOSL
. W ! ;moves ftr to pg bottom
. set tempY=tempY+1

Tell me more about the OPEN PARAMETERS.  Is this a
field of M code that gets executed, or are they
parameters like this:
OPEN Filename:(My Open Parameters):TIMEOUT

Would I put LENGTH=80 in the OPEN PARAMETERS field, or
SET LENGTH=80?

Thanks
Kevin




--- Lloyd Milligan <[EMAIL PROTECTED]> wrote:

That is interesting.  According to the GT.M
Programmer Manual (chapter 9)
the virtual page length of a sequential file can be
set using the LENGTH=
parameter.  For example, LENGTH=80 would set the
page length to 80 lines (to
agree with the IOSL value).  You could try adding
this to the OPEN
PARAMETERS.  I assume that 80 is the length desired
for the target printer.
If the VistA page length for the sub-type were set
to 250 or more lines,
then filling with blank lines would be bypassed.

Lloyd

----- Original Message ----- From: "Kevin Toppenberg" <[EMAIL PROTECTED]>
To: "Hardhats Sourceforge"
<hardhats-members@lists.sourceforge.net>
Sent: Friday, January 14, 2005 8:15 AM
Subject: [Hardhats-members] Endless printer loop
caused by $Y bug (??!?)



> Well, I have narrowed the printing problem to the > following endless loop. Is this an issue of how GTM > updates $Y? > > (Code from TIUPRPN2.m) > FTR I (IOT'="HFS")!(IOSL<250) F do Q:$Y+6'<IOSL > . U $P write "//kt In loop to move footer to" > . write " pg bottom. IOT=",IOT," IOSL=",IOSL > . write " $Y=",$Y,! U IO > . W ! ;moves ftr to pg bottom > > (Below is the orginial line before I stretched it out) > FTR I (IOT'="HFS")!(IOSL<250) F Q:$Y+6'<IOSL W ! > ;moves ftr to pg bottom > > > Here is a screen log: > > //kt In loop to move footer to pg bottom. IOT=HFS > IOSL=80 $Y=17 > //kt In loop to move footer to pg bottom. IOT=HFS > IOSL=80 $Y=18 > //kt In loop to move footer to pg bottom. IOT=HFS > IOSL=80 $Y=19 > //kt In loop to move footer to pg bottom. IOT=HFS > IOSL=80 $Y=20 > //kt In loop to move footer to pg bottom. IOT=HFS > IOSL=80 $Y=21 > //kt In loop to move footer to pg bottom. IOT=HFS > IOSL=80 $Y=22 > //kt In loop to move footer to pg bottom. IOT=HFS > IOSL=80 $Y=23 > //kt In loop to move footer to pg bottom. IOT=HFS > IOSL=80 $Y=24 > //kt In loop to move footer to pg bottom. IOT=HFS > IOSL=80 $Y=25 > //kt In loop to move footer to pg bottom. IOT=HFS > IOSL=80 $Y=26 > //kt In loop to move footer to pg bottom. IOT=HFS > IOSL=80 $Y=27 > //kt In loop to move footer to pg bottom. IOT=HFS > IOSL=80 $Y=28 > //kt In loop to move footer to pg bottom. IOT=HFS > IOSL=80 $Y=29 > //kt In loop to move footer to pg bottom. IOT=HFS > IOSL=80 $Y=30 > //kt In loop to move footer to pg bottom. IOT=HFS > IOSL=80 $Y=0 > //kt In loop to move footer to pg bottom. IOT=HFS > IOSL=80 $Y=1 > //kt In loop to move footer to pg bottom. IOT=HFS > IOSL=80 $Y=2 > //kt In loop to move footer to pg bottom. IOT=HFS > IOSL=80 $Y=3 > //kt In loop to move footer to pg bottom. IOT=HFS > IOSL=80 $Y=4 > //kt In loop to move footer to pg bottom. IOT=HFS > IOSL=80 $Y=5 > //kt In loop to move footer to pg bottom. IOT=HFS > IOSL=80 $Y=6 > //kt In loop to move footer to pg bottom. IOT=HFS > IOSL=80 $Y=7 > //kt In loop to move footer to pg bottom. IOT=HFS > IOSL=80 $Y=8 > //kt In loop to move footer to pg bottom. IOT=HFS > IOSL=80 $Y=9 > //kt In loop to move footer to pg bottom. IOT=HFS > IOSL=80 $Y=10 > //kt In loop to move footer to pg bottom. IOT=HFS > IOSL=80 $Y=11 > //kt In loop to move footer to pg bottom. IOT=HFS > IOSL=80 $Y=12 > //kt In loop to move footer to pg bottom. IOT=HFS > IOSL=80 $Y=13 > //kt In loop to move footer to pg bottom. IOT=HFS > IOSL=80 $Y=14 > //kt In loop to move footer to pg bottom. IOT=HFS > IOSL=80 $Y=15 > //kt In loop to move footer to pg bottom. IOT=HFS > IOSL=80 $Y=16 > //kt In loop to move footer to pg bottom. IOT=HFS > IOSL=80 $Y=17 > //kt In loop to move footer to pg bottom. IOT=HFS > IOSL=80 $Y=18 > //kt In loop to move footer to pg bottom. IOT=HFS > IOSL=80 $Y=19 > //kt In loop to move footer to pg bottom. IOT=HFS > IOSL=80 $Y=20 > ///kt In loop to move footer to pg bottom. IOT=HFS > IOSL=80 $Y=21 > %GTM-F-FORCEDHALT, Image HALTed by MUPIP STOP > > > > So it appears that the problem is that $Y is being > reset somehow after 30. So $Y+6 is never > 80 --> > endles loop. > > So how and why is $Y going from 30 to 0? > > > Thanks > Kevin > > > > > __________________________________ > Do you Yahoo!? > Yahoo! Mail - 250MB free storage. Do more. Manage less. > http://info.mail.yahoo.com/mail_250 > > >

-------------------------------------------------------
> The SF.Net email is sponsored by: Beat the
post-holiday blues
> Get a FREE limited edition SourceForge.net t-shirt
from ThinkGeek.
> It's fun and FREE -- well,
almost....http://www.thinkgeek.com/sfshirt
> _______________________________________________
> Hardhats-members mailing list
> Hardhats-members@lists.sourceforge.net
>

https://lists.sourceforge.net/lists/listinfo/hardhats-members
>




-------------------------------------------------------
The SF.Net email is sponsored by: Beat the
post-holiday blues
Get a FREE limited edition SourceForge.net t-shirt
from ThinkGeek.
It's fun and FREE -- well,
almost....http://www.thinkgeek.com/sfshirt
_______________________________________________
Hardhats-members mailing list
Hardhats-members@lists.sourceforge.net

https://lists.sourceforge.net/lists/listinfo/hardhats-members





__________________________________
Do you Yahoo!?
All your favorites on one personal page - Try My Yahoo!
http://my.yahoo.com


------------------------------------------------------- The SF.Net email is sponsored by: Beat the post-holiday blues Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek. It's fun and FREE -- well, almost....http://www.thinkgeek.com/sfshirt _______________________________________________ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members




------------------------------------------------------- The SF.Net email is sponsored by: Beat the post-holiday blues Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek. It's fun and FREE -- well, almost....http://www.thinkgeek.com/sfshirt _______________________________________________ Hardhats-members mailing list Hardhats-members@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/hardhats-members

Reply via email to