Parser

Maybe you have seen one of those old Microsoft DOS and Windows 3.x setup information files already (usually named setup.inf). Most of the software back then was distributed on floppy disks and the setup.inf file has been used to advise the setup program which file is located on which floppy disk.
Many of the old operating systems available at MSDN or other places do not come on floppy disk images — all the setup files are put into one archive or folder instead — which makes it very hard to recreate the setup floppys, because you would have to check the setup.inf for each file and sort all files by hand which is quite a lot of work for 500+ files.

This is where Parser comes into play: It reads the setup information file and sorts the files for you.

How does it work?

Microsofts setup information files usually look like this (excerpt):

tutor = “wintutor.exe ”
NetSetup = FALSE
MouseDrv = TRUE
Version = “3.1.040”

; This is data needed by the MS-DOS half of setup so that it can copy the
; proper kernel and start Windows for the GUI portion of setup.
;
; ** MS-DOS documentation says that first byte of command line for 4a call
; ** should be space. ==> in execcmd RHS leave first space as it is now
[winexec]
execstd = “dosx.exe ”
execcmd = ” krnl286.exe /b /q:”
exechimem = “xmsmmgr.exe”
himemcmd = “”
Krnl386 = 2:krnl386.exe
Krnl286 = 2:krnl286.exe
dosx = 2:dosx.exe

; Names of the disks Setup can prompt for.
[disks]
1 =. ,”Microsoft Windows 3.1 disk #1″,disk1
2 =. ,”Microsoft Windows 3.1 disk #2″,disk2
3 =. ,”Microsoft Windows 3.1 disk #3″,disk3
4 =. ,”Microsoft Windows 3.1 disk #4″,disk4
5 =. ,”Microsoft Windows 3.1 disk #5″,disk5
6 =. ,”Microsoft Windows 3.1 disk #6″,disk6
7 =. ,”Microsoft Windows 3.1 disk #7″,disk7
8 =. ,”Microsoft Windows 3.1 disk #8″,disk8

[oemdisks]
Z =. ,”HP DeskJet Series v2.0 disk (z krabice s tisk├írnou, nebo od HP)”,diskz

[user]
4:setup.ini, noupdate

[windows]
1:setup.hlp
1:install.com
1:setup.txt
1:win.src, Net
1:system.src, Net
1:winhelp.exe
2:control.hlp
2:GLOSSARY.HLP
3:WINHELP.HLP

[windows.system]
1:gdi.exe
2:user.exe
1:win.cnf
1:lzexpand.dll
2:ver.dll

Using regular expressions, Parser looks for every line in the file with matches with that pattern N:FILENAME.EXT (N is the number of the floppy disk on which the file has to be put to).
After scanning the setup.inf file, Parser creates folders for each floppy disk and moves the respective setup files into them. All you have to do after that process is putting the contents from each folder onto a disk image or floppy disk.

PARSER 1.1

Version history

v1.1 – 26/07/2009 – Minor bug fixes
v1.0 – 27/04/2009 – Initital release of Parser

Known issues

  • Parser does not support chars as floppy disk identifiers fixed in version 1.1
  • Parser does not support paths containig spaces at this point

About this entry

Ads