yeah, the uncompressed images are working like a charm :-)<div><br></div><div>i kept one single driver i am interested in: rtl8139.</div><div><br></div><div>so if i build undi.iso, i get an image capable of booting oven any UNDI interface.</div>
<div><br></div><div>if instead i build ipxe.iso, i get an image capable of booting on any net/driver/* interface. which in my case is just rtl8139.</div><div><div><br></div><div>would there be a way to build a single image that works for rtl8139, or as a fallback any UNDI interface?</div>
<div><br></div><div>thank you!</div><div>-alessandro-</div><div><br></div><div>alessandro@localhost ~/iPXE/src gmake bin/<a href="http://ipxe.iso.info">ipxe.iso.info</a></div><div>Elements : ipxe</div><div>
Prefix : iso</div><div>Drivers : rtl8139</div><div>ROM name : ipxe</div><div>Media : iso</div><div><br></div><div>PCI vendor : </div><div>PCI device : </div>
<div><br></div><div>LD driver symbols : obj_rtl8139</div><div>LD ID symbols : pci_vendor_id=0 pci_device_id=0</div><div>LD entry point : _iso_start</div><div><br></div><div>LD target flags : -u _iso_start --defsym check__iso_start=_iso_start -u obj_rtl8139 --defsym check_obj_rtl8139=obj_rtl8139 -u obj_config --defsym check_obj_config=obj_config --defsym pci_vendor_id=0 --defsym pci_device_id=0 -e _iso_start</div>
<div><br></div><div>Debugging objects : </div><div>Replaced objects : </div><div>alessandro@localhost ~/iPXE/src gmake bin/<a href="http://undi.iso.info">undi.iso.info</a></div><div>Elements : undi</div>
<div>Prefix : iso</div><div>Drivers : undi</div><div>ROM name : undi</div><div>Media : iso</div><div><br></div><div>PCI vendor : </div><div>PCI device : </div>
<div><br></div><div>LD driver symbols : obj_undi</div><div>LD ID symbols : pci_vendor_id=0 pci_device_id=0</div><div>LD entry point : _iso_start</div><div><br></div><div>LD target flags : -u _iso_start --defsym check__iso_start=_iso_start -u obj_undi --defsym check_obj_undi=obj_undi -u obj_config --defsym check_obj_config=obj_config --defsym pci_vendor_id=0 --defsym pci_device_id=0 -e _iso_start</div>
<div><br></div><div>Debugging objects : </div><div>Replaced objects : </div><div> </div></div><div><br clear="all"><div><span style="font-family:monospace;font-size:15px">-Alessandro-<br>
Here i am, A young man,<br> A crashing computer program,<br> Here is a pen, write out my name...<br><br>(from: The Servant - Orchestra)<br></span></div><br>
<br><br><div class="gmail_quote">On Tue, Nov 8, 2011 at 15:49, Alessandro Salvatori <span dir="ltr"><<a href="mailto:sandr8@gmail.com">sandr8@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
more on my progress... i suspected these images might have been just too large. so with the help of ruby-elf and/or objdump, i stripped the source tree from anything i don't necessarily need. this way i got an image that is less than 1/10th of the size and that seems to come up... :)<div>
<br></div><div><div>thank you, thank you!</div><div><div class="im"><div><span style="font-family:monospace;font-size:15px">-Alessandro-<br> Here i am, A young man,<br> A crashing computer program,<br> Here is a pen, write out my name...<br>
<br>(from: The Servant - Orchestra)<br></span></div><br>
<br><br></div><div><div></div><div class="h5"><div class="gmail_quote">On Tue, Nov 8, 2011 at 15:02, Alessandro Salvatori <span dir="ltr"><<a href="mailto:sandr8@gmail.com" target="_blank">sandr8@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
actually i hit the very same issues without patching the embedded script image... seems that the problem is with uncompressed images...<div><br></div><div><div>thanks!<br clear="all"><div><span style="font-family:monospace;font-size:15px">-Alessandro-<br>
Here i am, A young man,<br> A crashing computer program,<br> Here is a pen, write out my name...<br><br>(from: The Servant - Orchestra)<br></span></div><br>
<br><br></div><div><div><div class="gmail_quote">On Tue, Nov 8, 2011 at 14:54, Alessandro Salvatori <span dir="ltr"><<a href="mailto:sandr8@gmail.com" target="_blank">sandr8@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div>the #define COMPRESS 0 seems to do the trick, and after that I can easily patch the embedded script.</div><div><br></div>is there some integrity check? the patched ipxe.iso prints a bunch of colored garbage on the console and then reboots. i assume it has a bogus bzImage kernel container and that might be doing some checksumming.<div>
<br></div><div>the ipxe.dsk instead hangs after emitting "Loading ROM image" and 89 dots...</div><div><br></div><div>i guess if the ipxe.dsk worked, it could be used as an eltorito image for an otherwise empty cdrom, hence bypassing any issue with the bzImage container in the iso?</div>
<div><br></div><div>thanks!<div><br clear="all"><div><span style="font-family:monospace;font-size:15px">-Alessandro-<br> Here i am, A young man,<br> A crashing computer program,<br> Here is a pen, write out my name...<br>
<br>(from: The Servant - Orchestra)<br>
</span></div><br>
<br><br></div><div><div><div class="gmail_quote">On Tue, Nov 8, 2011 at 03:43, Michael Brown <span dir="ltr"><<a href="mailto:mbrown@fensystems.co.uk" target="_blank">mbrown@fensystems.co.uk</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div>On Tuesday 08 Nov 2011 10:52:33 Alessandro Salvatori wrote:<br>
> would it be easily possible to create non-zbin bootable images (rom, iso,<br>
> usb or dsk)?<br>
><br>
> i was thinking of having a script as an embedded image, and having<br>
> placeholders in it that could be "patched" with the desired values just in<br>
> time.<br>
><br>
> alas, the compression gets in the way of easily patching the values in...<br>
> but the fact that my dsk image takes only 80kB out of 1440 available makes<br>
> me wonder if i couldn't do without the compression :-)<br>
<br>
</div>There's no easily-accessible way to create non-compressed images, but you can<br>
try hacking it by setting<br>
<br>
#define COMPRESS 0<br>
<br>
in arch/i386/prefix/libprefix.S. This code path isn't used very often, and may<br>
not be functional.<br>
<br>
A cleaner solution would probably be to add code to lkrnprefix.S to allow iPXE<br>
to pick up and use an initrd image as though it were an embedded image. There<br>
are some complications in doing this, primarily relating to memory allocation.<br>
(initrd images are typically placed at the top of memory, which is exactly<br>
where iPXE will try to install itself, so there's a good chance that iPXE will<br>
overwrite the initrd image.) This would give you a solution for .iso images<br>
(which are based upon .lkrn images); similar schemes could be devised for<br>
other image formats.<br>
<span><font color="#888888"><br>
Michael<br>
</font></span></blockquote></div><br></div></div></div>
</blockquote></div><br></div></div></div>
</blockquote></div><br></div></div></div></div>
</blockquote></div><br></div>