Jump to content











Photo
- - - - -

Manually Updating Syslinux on a CD


  • Please log in to reply
7 replies to this topic

#1 dsolomon

dsolomon

    Frequent Member

  • Advanced user
  • 243 posts

Posted 15 June 2011 - 01:38 PM

so, i have throroughly scoured the net for any information regaurding manualling opening an existing ISO with syslinux 3.86 and updating the syslinux files. (i am using the latest version of ultraiso)
and i have not found a working answer on the reboot.pro forums or anywhere else on google.

my question to the GREAT community of reboot.pro is how would i go about manually updating my syslinux 3.86 ISO to the latest version (as of june 15th, 2011) 4.04?

i already have my entire bootcd configured and working 100% with 3.86.
below is a screenshot of my folder structure

Posted Image

any thoughts?

#2 Wonko the Sane

Wonko the Sane

    The Finder

  • Advanced user
  • 16066 posts
  • Location:The Outside of the Asylum (gate is closed)
  •  
    Italy

Posted 15 June 2011 - 04:00 PM

so, i have throroughly scoured the net for any information regaurding manualling opening an existing ISO with syslinux 3.86 and updating the syslinux files. (i am using the latest version of ultraiso)
and i have not found a working answer on the reboot.pro forums or anywhere else on google.

my question to the GREAT community of reboot.pro is how would i go about manually updating my syslinux 3.86 ISO to the latest version (as of june 15th, 2011) 4.04?

....

any thoughts?


As often happens to a lot of people you are seemingly in danger of slipping on the chocolate covered banana:
http://homepage.ntlw...red-banana.html

:cheers:

If you are asking how to have a .iso with an updated Syslinux, the answer may :cheers: be found here:
http://www.boot-land...showtopic=12406
http://www.boot-land...pic=12406&st=31

If you are asking how to have it by using the method you presume to be right, no answer, sorry :(.

:cheers:
Wonko

#3 sbaeder

sbaeder

    Gold Member

  • .script developer
  • 1338 posts
  • Location:usa - massachusettes
  •  
    United States

Posted 15 June 2011 - 06:37 PM

any thoughts?

If you can make it work OK with the older version, you should just be able to
  • Download the syslinux files
  • update ALL the isolinux files (like the *.c32 modules as well as the isolinux.bin
  • Build the ISO using the isolinux bootloader
Not sure what the "issue" is...

#4 dsolomon

dsolomon

    Frequent Member

  • Advanced user
  • 243 posts

Posted 16 June 2011 - 05:26 AM

thank you guys for your constructive criticisms.
i have really dug into the syslinux wiki and figured out how to update my iso to the 4.04.
and the MENU IMMEDIATE works as documented.
i put MENU IMMEDIATE in the header of my *.cfg menus.
EXAMPLE:

default vesamenu.c32

prompt 0

noescape 1

allowoptions 0



menu width 78

menu margin 4

menu rows 6

menu background sardu.jpg

menu immediate









menu title Umbrella Multiboot Rescue Kit V4 - Bios



#menu notabmsg Press [Tab] to edit options



menu color border 0 #ffffffff #ee000000 std

menu color title 0 #ffffffff #ee000000 std

menu color sel 0 #ffffffff #85000000 std

menu color unsel 0 #ffffffff #ee000000 std

menu color pwdheader 0 #ff000000 #99ffffff rev

menu color pwdborder 0 #ff000000 #99ffffff rev

menu color pwdentry 0 #ff000000 #99ffffff rev

menu color hotkey 0 #ff00ff00 #ee000000 std

menu color hotsel 0 #ffffffff #85000000 std


with the above setup - i can hit any of my hotkeys and itll automatically boot that selection without having to hit ENTER.


as for updating an existing 3.86 ISO to 4.04 all i had to do is

1. extract all of my existing ISOs contents to a directory
2. downloaded the latest syslinux package
3. extract the 4.04 *.c32, isolinux.bin, memdisk, & ldlinux.sys and replace the 3.86 files in the ISOs extracted contents
4. download the cdrtools and use the mkisofs.exe with the following command
mkisofs -o output.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table CD_root

where "CD_root" is the name of the folder where the contents of my ISOs extracted contents.

worked like a champ! no longer will i use the evil tools of the wicked! (ultraiso)

=)

thanks again!

#5 Wonko the Sane

Wonko the Sane

    The Finder

  • Advanced user
  • 16066 posts
  • Location:The Outside of the Asylum (gate is closed)
  •  
    Italy

Posted 16 June 2011 - 12:32 PM

4. download the cdrtools and use the mkisofs.exe with the following command

mkisofs -o output.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table CD_root

where "CD_root" is the name of the folder where the contents of my ISOs extracted contents.

worked like a champ! no longer will i use the evil tools of the wicked! (ultraiso)

It's not like it is an "evil tool", simply in many cases, editing an existing .iso makes it either unbootable or however NOT working as supposed. :smiling9:

The given link was expecially because IF the "original .iso" was made with mkisofs.exe, you can get the "original" command parameters given to it (that not necessarily are always those you used) and that in many cases are needed EXACTLY as they are in the "original" to get a working "new" .iso.

:cheers:
Wonko

#6 wendy

wendy

    Frequent Member

  • Lady
  • 290 posts
  • Location:one mile from the QR main line
  • Interests:Operating systems, Weights and Measures, Geometry
  •  
    Australia

Posted 19 June 2011 - 07:36 AM

I unpack syslinux into a working directory, and then update the source tapes by way of a batch file. After this, ye recut the disk.

This is a 4nt batch. This is updated and run to install syslinux. Note that apart from the cdrom files, it updates the working DOS and win32 stuff. Note we don't touch the menu, which is handled by two other batch files.


:: @echo off

:: This batch updates SYSLINUX from source layout.

::

:: These are the source and target directories.

set ysrc=%@path[%_batchname]\source\isolinux

set ytgt=%@path[%_batchname]



set yto=%ytgt%\cdroot\boot\isolinux



copy %ysrc%\com32\samples\cat.c32 %yto%

copy %ysrc%\com32\modules\chain.c32 %yto%

copy %ysrc%\com32\modules\config.c32 %yto%

copy %ysrc%\com32\modules\disk.c32 %yto%

copy %ysrc%\com32\modules\dmitest.c32 %yto%

copy %ysrc%\com32\modules\elf.c32 %yto%

copy %ysrc%\com32\modules\ethersel.c32 %yto%

copy %ysrc%\sample\fd.c32 %yto%

copy %ysrc%\com32\modules\gpxecmd.c32 %yto%

copy %ysrc%\com32\gfxboot\gfxboot.c32 %yto%

copy %ysrc%\com32\hdt\hdt.c32 %yto%

copy %ysrc%\com32\modules\ifcpu.c32 %yto%

copy %ysrc%\com32\modules\ifcpu64.c32 %yto%

copy %ysrc%\core\isolinux.bin %yto%

copy %ysrc%\com32\modules\kbdmap.c32 %yto%

copy %ysrc%\com32\modules\linux.c32 %yto%

copy %ysrc%\com32\modules\ls.c32 %yto%

copy %ysrc%\com32\mboot\mboot.c32 %yto%

copy %ysrc%\memdisk\memdisk %yto%

copy %ysrc%\memdump\memdump.com %yto%

copy %ysrc%\com32\modules\meminfo.c32 %yto%

copy %ysrc%\com32\menu\menu.c32 %yto%

copy %ysrc%\com32\modules\pcitest.c32 %yto%

copy %ysrc%\com32\modules\pmload.c32 %yto%

copy %ysrc%\com32\modules\reboot.c32 %yto%

copy %ysrc%\com32\rosh\rosh.c32 %yto%

copy %ysrc%\com32\modules\sanboot.c32 %yto%

copy %ysrc%\com32\modules\sdi.c32 %yto%

copy %ysrc%\com32\modules\vesainfo.c32 %yto%

copy %ysrc%\com32\menu\vesamenu.c32 %yto%

copy %ysrc%\com32\modules\vpdtest.c32 %yto%

copy %ysrc%\com32\modules\whichsys.c32 %yto%



set yto=%ytgt%\dosver\all

copy %ysrc%\dosutil\copybs.com %yto%

copy %ysrc%\dosutil\eltorito.sys %yto%

copy %ysrc%\dosutil\mdiskchk.com %yto%





set yto=%ytgt%\cdroot\dos\syslinux

copy %ysrc%\dos\syslinux.com %yto%

copy %ysrc%\dosutil\copybs.com %yto%

copy %ysrc%\dosutil\eltorito.sys %yto%

copy %ysrc%\dosutil\mdiskchk.com %yto%

copy %ysrc%\win32\syslinux.exe %yto%





#7 sbaeder

sbaeder

    Gold Member

  • .script developer
  • 1338 posts
  • Location:usa - massachusettes
  •  
    United States

Posted 20 June 2011 - 01:51 AM

I unpack syslinux into a working directory, and then update the source tapes by way of a batch file. After this, ye recut the disk.

This is a 4nt batch. This is updated and run to install syslinux. Note that apart from the cdrom files, it updates the working DOS and win32 stuff. Note we don't touch the menu, which is handled by two other batch files.

Thanks - while not everyone uses 4nt, it is great to have in one place all the locations of all the different modules, etc. :smart:

Scott
:cheers:

#8 wendy

wendy

    Frequent Member

  • Lady
  • 290 posts
  • Location:one mile from the QR main line
  • Interests:Operating systems, Weights and Measures, Geometry
  •  
    Australia

Posted 20 June 2011 - 08:02 AM

The 4nt stuff is just two lines in the batch file. You replace %@path[%_batchname] with an absolute name, eg k:\diskette. The tree looks like this



K:\diskette

  + cdroot    (the root of the cdrom

  + dosver    (dos diskettes produced on demand by bfi)

  + hidden    (stuff put on ice)

  + source    (original distributives)

     + airboot

     + cbtprog  

         +  dosapps

         +  hdt

         +  memtest

         +  sbm

     + isolinux

     + zips

1_doscfg.cmd    (extproc cmd to create the dos configs+autoexec)

2_dosdisk.cmd   (generated by 1, creates diskettes on cd_root)

8_isomenu.cmd   (creates isolunux.cfg, and 9_disk.cmd)

9_disk.cmd      (creates the cdrom as an iso file.)

usyslin.cmd     (copies from source to dosver and cdroot)






0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users