Manipulable Iso's?

S

Santiago Allen

Hi All,

I am trying to create an El-Torito XPE image Iso that can be
edited/updated by MagicIso, a standard Iso manipulating tool. With
HD2ISO, the image is ruined if the user tries to add/modify files on
the ISO (its 640 mb size drops to 200 mb). This is also the case
creating a Nero CD using Slobodan's procedure. Is there some way to
create a manipulable ISO or is there an ISO updater tool that will work
correctly with this type of Iso?

Thanks,

Santiago Allen
 
M

Matt Kellner \(MS\)

Hi Santiago. The problem with most ISO-editing utilities is that they do
not take into account empty space within a file system. Most ISO-editors
are designed to manipulate CD-specific images, which have a different file
system entirely - CDFS or UFS - and do not depend on a fixed partition size.
When working with an El Torito boot image, however, the image stored in the
ISO is an exact copy of a FAT/NTFS partition, and both of these file systems
depend on having a known, fixed size. When an ISO editor cuts down the
physical size of the partition, it doesn't refactor the file system (or in
some cases, it can replace the file system completely), and you end up with
an invalid "partition" as a result.

I am not currently aware of any utilities that can handle El Torito ISO
images in this manner. If you find one, please let us know! In the
meantime, you can use an ISO editor to "unpack" the ISO onto a primary
active partition of the same size as the CD image, make whatever changes to
the image you need, then run HD2ISO on that partition again to create a new
CD image. This is a bit more laborious, but it'll get around this problem.
To simplify things further, I'd recommend storing an offline copy of your
post-etprep runtime image so that you don't need to worry about unpacking
ISOs, etc.

Hope this helps. =)

--
Matt Kellner ([email protected])
STE, Windows Embedded Group

This posting is provided "AS IS" with no warranties, and confers no rights.
===============================
 
S

Slobodan Brcin \(eMVP\)

Santiago,

I do not know why would you want to do such thing?
Just create new image from HDD.

If this is not good enough for you then easiest way would be to edit
beginning of ISO file so that it mimic format of SDI file with DISK BLOB.
With this ISO/SDI like file you can mount it as virtual disk with SDILoader
tool and modify files then you can unload it and record it as ISO.
If there is problem with this few bytes on beginning of file then just
restore original zeroes.

Regards,
Slobodan
 
S

Santiago Allen

Hi Matt, Slobodan,

The reason I want this, is because it will greatly simplify updating
procedures. Let me explain. While the platform itself will remain
relatively stable, the program that this platform is intended to run is
contantly being updated. For testing purposes we would need a fast and
reliable way to create new CD's with the new program files. Since many
people work on the project, many people would need access to the image.
Currently I am the only one with access to XPE to create new images.
So everyone trying to test their new executable would have to come to
me to create a CD.

Our back-up plan is to use the HD imaging tool Acronis True Image to
make a copy of the post-etpreped XPE image. Then restore this image to
an extra HDD, update the files and re-hd2iso. This requieres every
person working on the program to have an extra HD on their machine.
Not only that but it takes longer. So we would have a longer testing
prep time, that requires more steps (more room for error), and more
hardware to achieve the same results.

Ill be looking around for an Iso updating Utility that may be able to
read and update the image correctly. I did notice that files added to
the image via Nero using the Nero process were viewable but no new
files could be added to the image. It may be possible that these extra
files may be modified however, so Ill try on that end first.

Thanks,

Santiago Allen
 
S

Slobodan Brcin \(eMVP\)

I told you want to do then.

Patch iso file so that sdiloader can recognize format and access it as disk.

Simple and efficient. Just analyze format of SDI file header you will see
how simple it is.

Regards,
Slobodan
 
S

Santiago Allen

Thanks Slobodan,

Ill try the aproach you suggest. Where exactly does the header
Start/End on the sdi file? I know that at Hex 0000:0070 there is an
SOH control character. Is everything above that the header or is that
the beginning of the header?

Another more important question would be, now everyone that would need
to create Test CD's would need an SDILoader. Can this be installed by
itself? Is it legal to do this on our 1 license of embedded studio?

Thanks,

Santiago Allen
 
S

Slobodan Brcin \(eMVP\)

Santiago,

Offset 0x0000: place "$SDI0001"
Offset 0x0070: place 0x01
Offset 0x01F8: place 0x3A
Offset 0x0400: place "DISK"
Offset 0x0410 int64 offset in file to disk MBR. Place value so that it point
in ISO file to your MBR.
Offset 0x0418 int64 disk size. take image file size and substract MBR
offset.

This should be enough and it should not collide with ISO data so once you
make this file you should be able to use it without removal of these
signatures.

Another more important question would be, now everyone that would need
to create Test CD's would need an SDILoader. Can this be installed by
itself?

SDILoader do not need to be installed. Only thing that you might need to
install is sdi driver from Windows Embedded\drivers folder.
Is it legal to do this on our 1 license of embedded studio?

This is side tool like bootprep, hd2iso or sdi2hd. And as long as you use
it for legal XPe related tasks I do not see any problems. (Although layer
guys sometimes think differently from us developers)

Regards,
Slobodan
 
S

Santiago Allen

Hi Slobodan,

Thanks again, this method works and I can now modify ISO and burn new
version. Are there any command line parameters for the SDILoader? It
would be nice to script the process. Can the SDI manager script be
used in the same fashion?

Thanks Again,

Santiago Allen
 
S

Slobodan Brcin \(eMVP\)

Hi Santiago,

I'm glad that this work for you :)
Regarding the SDILoader and command line switches I would like to know them
also.
Or API for starting and closing driver with certain file would be even
better thing, but I do not know about existence of such.

Regards,
Slobodan
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top