[syslinux] To pause each screen text using syslinux

Murali Krishnan Ganapathy gmurali at cs.uchicago.edu
Tue Dec 6 12:27:26 PST 2005


Nazo wrote:

>On 12/6/05, Jin Suh <jinssuh at yahoo.com> wrote:
>  
>
>>Hello syslinux,
>>
>>I am trying to add a page break in the license file. Could you help me to add a
>>page break in the text file? I tried "^L" in every 25 lines but it didn't work.
>>
>>What I want to do is this. In the boot prompt, I want to display the license
>>file by pressing F2 but the file is about 300 lines so it just scrolls up very
>>quickly. Do you have any idea how to pause in each page?
>>
>>Thanks,
>>Jin
>>
>>_______________________________________________
>>SYSLINUX mailing list
>>Submissions to SYSLINUX at zytor.com
>>Unsubscribe or set options at:
>>http://www.zytor.com/mailman/listinfo/syslinux
>>Please do not send private replies to mailing list traffic.
>>
>>
>>    
>>
>The official means of managing this is to split into multiple files
>instead.  Eg, F1 would show page 1, F2 page 2, and so on.  I hate to
>say, but, syslinux doesn't support any kind of scrolling handling so
>far as I know.  It occurs to me that you might be able to come up with
>something using labels (page1, page2, etc) and the display command to
>display seperate pages as well, but, I haven't tested it.  It may be
>that a label is required to have boot options and will return an error
>at the very least (which would be a distracting out of place but
>mostly harmless line of text at the end of the page of text) or it may
>even do something such as restart syslinux and redraw the screen,
>erasing the text.  Well, the best solution of all would be to build a
>com32 module specifically for displaying text.  This method would give
>you the most control and do exactly what you want it to. 
>Unfortunately, for many this isn't possible.  Still, I think we're
>talking pretty simple C code to display text on the screen, wait for a
>keypress, then display more, repeat, and eventually exit.  Hopefully
>someone who knows more details can come along and tell you if it needs
>to do anything more complex such as some special command to start
>syslinux back up when it finishes.
>
>_______________________________________________
>SYSLINUX mailing list
>Submissions to SYSLINUX at zytor.com
>Unsubscribe or set options at:
>http://www.zytor.com/mailman/listinfo/syslinux
>Please do not send private replies to mailing list traffic.
>
>
>  
>
In case you are going the COM32 route, you may find parts of advanced 
menu code useful. Specifically
the "help.c" has code which reads a file and dumps its contents onto the 
screen. Two things you need to
worry about

(1) If file is too long, scrolls very fast -- you will need to add code 
to wait for key press and re-print
(2) This uses BIOS to write to the screen directly and hence will NOT 
work over a serial console

If (2) is not a big deal for you then you can use one of the functions 
in "help.c" as a starting point.

- Murali




More information about the Syslinux mailing list