[syslinux] 5.10 DISPLAY files (and SAY directive) issues

Ady ady-sf at hotmail.com
Thu Mar 21 08:25:35 PDT 2013


> On Thu, 2013-03-21 at 14:17 +0200, Ady wrote:
> 
> > Note: in "help.txt", there are no initial nor ending blank lines. 
> > After the last line:
> > "                   USE F1 TO TEST"
> > there is no additional LF/CR.
> 
> 
> > After booting with the above cfg file, the third "say" directive is 
> > presented in the SAME row as the last line of "help.txt" (shown by 
> > the DISPLAY directive), right after the last character of "help.txt" 
> > (at least the SAY statement doesn't overwrite the last line of 
> > "help.txt"). The expected behavior for the SAY directive should be to 
> > present a new (next) line; right?
> 
> No, what you describe is exactly the behavior I would expect.  The
> DISPLAY directive prints only what is in the file.  If there is no CRLF
> at the end of the last line, then none is printed, and the next output,
> whatever it is, picks up at that point.  It is a feature, not a bug,
> that Syslinux does not imagine a newline where there wasn't one.
> 
 
You are talking about the content of the DISPLAY file. In this 
particular case, I am talking about the SAY directive.

When a SAY directive is about to print the message, the pseudo-code 
should be: if the cursor is not at column 1, go to column 1 of the 
next row before printing the message.
 
> > After booting with the above cfg file (and after noting the 
> > aforementioned behavior), press F1. Note that the last line of 
> > "help.txt" is now OVERWRITTEN by the "boot:" prompt. In this case, 
> > the expected behavior for the F1-F12 keys should be to show the 
> > "boot:" prompt (when the F1-F12 key was pressed while being in CLI) 
> > right after the last character of the displayed "help.txt" file, in 
> > the same line (so the already displayed text is not scrolled up and 
> > its last line not overwritten either).
> 
> I agree -- it sounds like a CR (but not LF) is being emitted just before
> the "boot:" prompt, even though there is not one in the file.  That
> seems wrong.
> 
 
The behavior seems to be related to the "boot:" prompt.

During 5.00 pre-releases, after a text was shown by means of the 
DISPLAY directive, the "boot:" prompt used to go back to column 1, 
overwriting the last displayed row of "help.txt". At some point 
during the development, this was corrected for the DISPLAY directive, 
by leaving (showing) the "boot:" prompt at the next column of the 
same row after the last character of "help.txt".

It would seem that a similar effect needs to be implemented for 
F1-F12.

TIA,
Ady.



More information about the Syslinux mailing list