Page 1 of 1

syslinux maximum files?

Posted: Wed Aug 27, 2008 2:05 pm
by webduck
Anyone know the maximum number of files you can have in a single directory under syslinux ?

I've made my own custom CD with 467 file in the root directory.

The problem i.m having is the disk won't boot, It just hangs with the first line of text?

Remove the files and alls well again. :roll:

Also can this file limit be increased ?
.

Posted: Wed Aug 27, 2008 10:34 pm
by Icecube
webduck wrote:Anyone know the maximum number of files you can have in a single directory under syslinux ? ]I've made my own custom CD with 467 file in the root directory.
Are you placing UBCD on a USB stick (syslinux <==> custom CD contradiction)? There is a FAT16 limit of 512 root directory entries (files and folders in the root directory).

http://support.microsoft.com/kb/120138
CAUSE
This problem occurs when all 512 root directory entries have been used. This problem can also occur with fewer than 512 files and folders in the root directory because Windows 95 uses additional directory entries to store long file names.

STATUS
To ensure compatibility with MS-DOS, Windows 95 uses a standard file allocation table (FAT) file system. The root directory for a FAT drive has a fixed size and is stored in a fixed location on the disk. All hard disk drives use 32 sectors of 512 bytes each to store the root directory. This limits the root directory on a hard disk drive to 16K: 32 sectors x 512 bytes per sector = 16,384 bytes, or 16K.

MS-DOS uses one directory entry for each file and folder, but Windows 95 uses additional directory entries to store long file names and folder names, and the associated 8.3 aliases. This means that you can run out of directory entries with fewer than 512 files or folders in the root directory.

Folders do not have a fixed size, so the only limitation to the number of files or folders you can store in any folder with Windows 95 is free disk space. For this reason, it is best to store your files (programs and data) in a folder off the root directory.
webduck wrote:The problem i.m having is the disk won't boot, It just hangs with the first line of text? Remove the files and alls well again.
Try to remove only a few files (10 or so) and try again and see if its helps.
You also can place the files in a subdirectory (can contain more than 512 files/folders per subdirectory).
BTW, why do you want so much files in the root directory of your USB thumb drive?
webduck wrote:Also can this file limit be increased ?
You can format your USB thumb drive with FAT32 instead of with FAT16. You also can move a part of the files to a subdirectory.

Offtopic: You also can integrate the last freedos image (dosubcd.igz) on your custom UBCD.
viewtopic.php?t=1422

Posted: Thu Aug 28, 2008 6:35 am
by webduck
Thanks for the reply.:)

I will be trying your ideas thx

Im making a bootable CD not a USB thumb drive. :shock: Which is the way i need to go, as this CD is to be shares with workmates.

The reason I need so many file on the root dir is to run batch files, these batch files navigate to subdirectory to run EXE files.

So I launch a DOS boot disk image, which load the DVD driver & changes to the DVD to run them from the command line.

Without a way to run these from the root I,d have to rewrite them all, this would be quit a chore.

.

Posted: Thu Aug 28, 2008 6:52 am
by as702
There may be another way which may save you some grief.
viewtopic.php?t=1422

If you update your FreeDOS image you have the option of including an .INI that can be populated with all the programs you need (the batch files are created dynamically on runtime).

It's just a suggestion mind.
see below for more details...
viewtopic.php?t=1422&postdays=0&postorder=asc&start=29

Posted: Thu Aug 28, 2008 7:00 am
by Icecube
My previous post concerns booting from an usb thumb drive (FAT16/FAT32 filesystem).

Information about the iso9660 filesystem (for CDs and DVDs):
http://en.wikipedia.org/wiki/Iso9660
Look that you the filenames that you have are only 8 + 3 characters long.

Update isolinux (download the syslinux package from (maybe solves some bugs): http://syslinux.zytor.com/wiki/index.php/Download)

See the relevant part about updating isolinux at: : viewtopic.php?t=1350

Incorporate isolinux-debug.bin instead of isolinux.bin (will give debug information (hopefully). Write it down an post it.

BTW, what was the output of the text that you saw?
When you removed the files, did you burn the iso also to a DVD or to a CD?

Because you are talking about loading a DVD driver from dos, the DVD maybe becomes inaccessible when isolinux kicks in (if you don't have DVD support from the BIOS).

The programs that you are trying to run, are they dos programs?

Posted: Thu Aug 28, 2008 10:21 am
by webduck
Thx for the suggestion as702 but it a little over my head.

Icecube I did say DVD but meant CD :roll:

The easiest way I think is to put all these batch files into a DOS menu reducing the file count to less than 20 (a chore it is then) :?

Thank you all for the help
.