[syslinux] Incompatibility using pxelinux 3.80 or later and setupldr.exe from windows XP 32 bits
Miller, Shao
Shao.Miller at yrdsb.edu.on.ca
Mon Aug 17 07:09:05 PDT 2009
Good day Thierry,
Regarding your RIS-like setup for Windows XP using PXELINUX:
The Windows XP RIS setup code is known to read and use a portion of
memory which is uninitialized. Nobody but MS would know why for sure,
but at least one person suspects that it is filled-in by some process
and expected to persist after a reboot. Or perhaps it is expected to be
populated by a previous process which chains to this point. The memory
read is at 0x000FAF0. It appears that this memory location is expected
to be a null-terminated string for an alternative filename for
WINNT.SIF. If a previous boot-loader has used that memory for something
else, it is filled with garbage, but still used as the alternative
WINNT.SIF filename, which results in failure, of course. I suspect that
this alternative filename logic is intended to support either a
language-specific alternative filename, or a client/model-specific
filename, to allow for different setup options for different clients.
H. Peter recently addressed this in PXELINUX here:
http://git.kernel.org/?p=boot/syslinux/syslinux.git;a=commit;h=18ca4d8cc
87761c6a5ab763069fad562fec69b59. It might be worth trying with a
PXELINUX built after that source code change.
You might also enjoy Gianluigi's information at:
http://oss.netfarm.it/guides/ris-linux.php and
http://oss.netfarm.it/guides/pxe.php and
http://oss.netfarm.it/guides/ris-linux.pdf. You might also search the
Boot-Land forums for relevant discussion.
You might also enjoy the pxechain.com COMBOOT module included with
Syslinux. You can use it to chain startrom.n12 from PXELINUX, where RIS
lives on a different box than your TFTP box. Details are in its source
code at Syslinux/modules/pxechain.asm.
Good luck in your PXELINUX-enabled Windows XP RIS adventures!
- Shao Miller
More information about the Syslinux
mailing list