Page 1 of 1

Integrating Dell Diagnostics in UBCD v5.0

Posted: Sun Dec 14, 2008 4:14 am
by Shank
After quite a struggle, I finally figured out how to integrate Dell Diagnostics into UBCD version 5. Enough work went into this that I felt I really ought to share the wealth. There are two methods I came up with:
1. Launched via Launched via the UBCD FreeDOS image (fdubcd.igz)
2. Launched via Dell's own DOS image (from Win98)

Method #1 works, but takes so much longer to boot than method #2. Also, who knows how the diagnostic utility will be affected by all that extra stuff that fdubcd.igz loads (UBCD devs, chime in if I'm speaking nonsense). For these reasons, I spent fairly little time with this method. I'll post it in a future thread, if desired.

All of this was tested with UBCD v5.0b6. I used Sun VirtualBox to boot and test my UBCD ISOs.

Method 2 - Launched via Dell's own DOS image (from Win98)

This is my preferred method, as it boots as fast as the regular Delldiag CD itself! Software used:
* 7-Zip (for extracting ISOs and archive files, and creating compressed files)
* WinImage (for extracting/injecting files within floppy images) - This is shareware, which sucks, but I looked and I could not find a suitable free utility.

You'll need the UBCD's contents extracted to your hard drive somewhere. I'll assume this directory is called "myubcd".

Download the diagnostics utility from Dell - support.dell.com. It seems that you can't pick a specific version of Delldiag... you need to pick a specific model of Dell PC, and grab the utility meant for that machine. As other threads have mentioned, you want to download the "hard disk version".

The actual downloaded file will be a self-extracting EXE. I don't like to run random EXEs if I can avoid it, so I just used 7-Zip (my favorite free archive utility, available at www.7-zip.org) to indirectly extract the file's contents. Once you've extracted it to a new directory, you can delete the downloaded EXE - you won't need it anymore.

Create a new directory called "delldiag" under the myubcd\ directory. I will assume from here on that you're using Delldiag version A1102 (from the Pentium 3 and early Pentium 4 era), and it's extracted into a directory called "A1102", under \myubcd\delldiag\.

Since I had for quite a while been using the "handmade" Delldiag ISOs available from Bay-Wolf (http://www.bay-wolf.com/downloads.htm), this was my starting point.

Grab the ISO image of Delldiag A1102 from Bay-Wolf. Extract the .img file located in the [BOOT] subdirectory. This is the MS-DOS image that will be used to boot the utility. Rename it to dell1102.img. This will be necessary later on, because MS-DOS only supports filenames up to 8 characters, plus a three-character extension.

Next, you need WinImage to extract autoexec.bat from the floppy. Change its contents to read as follows:

Code: Select all

@echo off
@copy a:\command.com D:\>nul
set comspec=A:\command.com
REM [CD-ROM Drive]
MSCDEX.EXE /D:MSCD000 /M:20  /L:R
R:
CD DELLDIAG
CD A1102
cls
echo Loading Dell Diagnostics...
DELLDIAG
:end
This will cause the utility to run automatically once you select it in the UBCD menu. Use WinImage's "Inject" feature to put the edited file back into the floppy image dell1102.img. This will overwrite the original. Now, save the image and put it in \myubcd\delldiag\.

Now. modify \myubcd\ubcd\custom\custom.cfg with a new entry that reads as such:

Code: Select all

LABEL -
MENU LABEL Dell Diagnostics A1102
KERNEL memdisk
APPEND initrd=/delldiag/dell1102.img
All the customization is done! Now, all you need to do is re-create the ISO with your modifications, using the excellent ubcd2iso utility. There is plenty of information elsewhere on these forums to help you make the ISO using this program.

Enjoy!

Posted: Sun Dec 28, 2008 8:42 am
by Jotnar
If you're revision of the Dell Diagnostics support it, you can just build the bootable hard disk image and boot it with memdisk. That way there's no floppy images involved.

Cheers

Dell diagnostics .img file hangs box

Posted: Sun Jul 12, 2009 9:54 pm
by superchuck
Jotnar wrote:If you're revision of the Dell Diagnostics support it, you can just build the bootable hard disk image and boot it with memdisk. That way there's no floppy images involved.

Cheers
Hello All;

I'm trying to integrate several Dell diagnostics into UBCD 4.1.1.

I downloaded the Dell self-extracting .exe from Dell's site. I then extracted the .exe to c:\cz1282 (this is the version I need for my laptop). I used IMGBURN to create a .img file (it also created cz1282.mds).

I placed both of these files into c:\ubcd\custom\dell1282, and added the following to custom.cfg:

LABEL Dell1282
MENU LABEL Dell Diagnostics v A1282 -- image
KERNEL memdisk
APPEND initrd=/custom/dell1282/A1282.img harddisk=9289728

At first there was no "harddisk" parameter, but I have successfully integrated v1322 into UBCD v4.1.1 from another post on this site. That post used "harddisk" as in:

LABEL Della1322a1
MENU LABEL Dell Diagnostics build v1322.1
KERNEL memdisk
APPEND initrd=/custom/dell1322/A1322A1.img harddisk=4644864

I re-created the .iso, and burned a CD.

All of the other .img files (the Dell diagnostics v1322 comes as a pre-made .img file) that I created from actual floppy disks (DOS v3.30, DOS v6.20, Win98 boot floppy, XP PRO boot floppy, NT4 boot floppy, et. al.) work A-OK.

However, v1282 does not work.

When I try and run it, it starts to load OK, but then I get the msg: "MEMDISK - image seems to have fractional end cylinder", some more stuff, then, "Loading boot section... booting..." and the box hangs. I have to turn the power off and back on to get control.

I presume that my .img file is no good, but after looking for some time, have not come up with a solution.

Can anyone tell me what I am overlooking and what to look for?

TIA.

Charles...

Posted: Thu Jul 16, 2009 12:12 pm
by Icecube
Try to use memdisk of the last syslinux archive:

Also this code is wrong:

Code: Select all

KERNEL memdisk
APPEND initrd=/custom/dell1282/A1282.img harddisk=9289728 
If you use the newer memdisk, the following probably will work:

Code: Select all

KERNEL memdisk
APPEND initrd=/custom/dell1282/A1282.img harddisk
A setting as harddisk=9289728 isn't supported by memdisk AFAIK.
You can use:

Code: Select all

c=  to set the cylinders
h=  to set the amount of heads
s=  to set the amount of sectors of the hard disk image
e.g. (fictive values for c, h and s):

Code: Select all

KERNEL memdisk
APPEND initrd=/custom/dell1282/A1282.img harddisk c=5 h=10 s=63

Posted: Thu Jul 23, 2009 11:57 am
by delicatepc
I am following Shank Method two and have followed his instructions to the dot except for I am using UBCD 5.0b12 vs his UBCD 5.0b6 and it fails.

Jotnar, you refer to creating a bootable hard disk image... How do you do this for say the Dell E6400 diagnostic utility?

BTW when I try to load the initrd=/delldiag/dell1102.img it doesnt do anything - just blinks which seems to indicate it cant find the file.

once I moved the file to custom folder it boots image but then fails saying invalid directory. I do dir and it lists directories on iso but when I try to cd delldiag (or any other directory) it says invalid directory even though dir shows that directory.

Posted: Thu Jul 23, 2009 2:13 pm
by Icecube
@ superchuck

Download the iso version of Dell Diagnostics v A1282.

Put it in /custom/dell1282/cdd_1282.iso

Download memdisk with iso booting capabilities from (you need to register to dowload the file, I think):
http://www.boot-land.net/forums/index.p ... topic=8258
This is only very recent that it is possible to boot iso's with memdisk. The memdisk in Syslinux 3.82 is not capable of that, but the version in v3.83 will hopefully be capable. So for now it is better to rename the file untill a stable version of memdisk is out.
Rename this memdisk to memiso and put it at /boot/syslinux/memiso.

Code: Select all

LABEL -
MENU LABEL Dell Diagnostics v1282
LINUX /boot/syslinux/memiso
INITRD /custom/dell1282/cdd_1282.iso
APPEND iso

Posted: Thu Jul 23, 2009 5:25 pm
by delicatepc
delicatepc wrote:Jotnar, you refer to creating a bootable hard disk image... How do you do this for say the Dell E6400 diagnostic utility?
This actually really easy. Go to Dell.com and download a recent Dell Diagnostics package (I used the one from Dell E6400). Run the install and once it extracts it loads up a program that will either create you a bootable .img file (that you can then use the memdisk to load (it works), or it can create iso for you, or even can install it onto a usb stick for you.

I am working directly with dell to try to get diagnostic utilities for the various machines into one or as few packages as possible - one idea is to have one image for optiplex machines, one for latitudes, and etc. I would welcome a universal dell diagnostic package that gets updated over time with support for new systems (which it should of been from day one). But its all up in the air at the moment.
delicatepc wrote:once I moved the file to custom folder it boots image but then fails saying invalid directory. I do dir and it lists directories on iso but when I try to cd delldiag (or any other directory) it says invalid directory even though dir shows that directory.
see this thread: http://www.boot-land.net/forums/?showtopic=2267&st=3
The money quote is below:
The reason why MSCDEX doesn't work for you is most probably the fact that you are burning the CD with the 1999 .iso extensions.

Briefly, the original format of CD-ROM (ISO 9660) has been changed (amended) introducing in late 1999 some extensions, basically to manage longer paths and "multidot" names:
http://en.wikipedia.org/wiki/ISO_9660

The new format is not entirely compatible with the previous one, so you need an updated driver (SHSUCDX).

But there is NO need whatsoever to use the extensions for a 9x boot CD, unless you want to put the files in a 207 charactes long path or something like that.

To quickly check if the above is the problem, boot a VM with a DOS 7.x (Win9x) floppy configured with MSCDEX and the CD and try a DIR command on the CD, it will work, now try accessing a file on the CD, you should get "File Not Found" error.
Sounds like the error i was getting....

thanks,
dpc

Posted: Mon Mar 15, 2010 9:20 am
by delicatepc
Go to Dell.com and download a recent Dell Diagnostics package (I used the one from Dell E6400). Run the install and once it extracts it loads up a program that will either create you a bootable .img file (that you can then use the memdisk to load (it works), or it can create iso for you, or even can install it onto a usb stick for you.
You will need to create an entry in your UBCD SIMILAR to this

Code: Select all

LABEL -
MENU LABEL Dell Diagnostics E6400
LINUX /boot/syslinux/memdisk
INITRD /custom/E6400.img
APPEND
If this doesnt make sense you can still download the Dell Diagnostic utility and its a little more user friendly (can burn to CD, floppy, or even usb).

~dpc