[syslinux] Syslinux LUA -- output not visible in UEFI mode?

William R. Somsky somsky at uw.edu
Mon Sep 30 14:07:16 PDT 2019

I've been looking at this issue again, and I've found that it has
something to do with the functionality invoked by the openconsole()

I find if I create and compile the file com32/modules/no.c:

  #include <stdio.h>
  #include <console.h>
  int main(int argc, char *argv[])
  openconsole(&dev_null_r, &dev_stdcon_w);
  fprintf(stdout, "STDOUT...\n");
  fprintf(stderr, "STDERR...\n");

I get the "invisible text" behavior under UEFI. However, if I comment out
the 'openconsole' line, it works fine.  (I got this from comparing cat.c
and ifmemdsk.c, as the former has visible text, and the latter doesn't.)

Similarly, if I comment out the 'openconsole' line w/in com32/lua/src/lua.c,
lua.c32 then seem to behave as expected, and all text is visible, at least to
a casual perusal.

Unfortunately, I don't know what all 'openconsole' does behind the
scenes, so I don't know if omitting that call breaks some other
needed functionality. (Possibly needed for BIOS behavior or on some
other systems?)

- WRSomsky

On Sat, Apr 06, 2019 at 07:59:52AM +0000, Ady Ady via Syslinux wrote:
> > We're having the following issue: when in UEFI mode,
> > any output/errors from a lua script is invisible!
> > 
> > This occurs even just running 'lua -v'.  It runs and returns to
> > a (visible) 'boot:' prompt, but there is simply no output visible
> > from lua!  (It does do a linefeed, but no visible text appears.)
> Yes, the report can be confirmed.
> FWIW, the invisible output is not just a linefeed; rather, the "same" output 
> that would be expected is not seen.
> To replicate, from a boot prompt using 6.04-pre1 in _BIOS_ mode:
> _ the output of 'lua.c32 -v' (in lower-case) is correctly shown, in one 
> line/row;
> _ the output of 'lua.c32 -V' (in upper-case) is correctly shown, spanning 
> several lines/rows.
> Repeating the above 2 commands in UEFI mode (with the corresponding _UEFI_ 
> binaries) shows the same amount of lines/rows (respectively) in between "boot:" 
> prompts, but the text is not seen.
> I don't know whether this is about some background/foreground output colors, or 
> somewhat related to the problems with "clear screen" methods under UEFI mode 
> (which show similar unwanted behaviors), or specific to lua.c32.
> Regards,
> Ady.
> _______________________________________________
> Syslinux mailing list
> Submissions to Syslinux at syslinux.org
> Unsubscribe or set options at:
> https://lists.syslinux.org/syslinux

Dr. William R. Somsky           	                   somsky at uw.edu
Department of Physics, Box 351560		    B217 Phys-Astro Bldg
Univ. of Washington, Seattle WA 98195-1560		    206-616-2954

More information about the Syslinux mailing list