Hi
XP has a mechanism similar to autounattend.xml which is txtsetup.oem.
txtsetup.oem allows you to install a driver automatically by setting a [Default] driver. XP Setup only reads two floppies, thus you can install two default drivers using 'F6' floppies.
In the case of FiraDisk, this causes the FiraDisk driver to load.
When the FiraDisk driver loads it searches the first sector of all 'floppy' real-mode devices for a [Firadisk] string which contains commands for Firadisk, in our case the string is
cdrom,vmem=find:\_ISO\Windows\XP\XP.ISO;
So this tells firadisk to look for this ISO in memory
Also, if you look at the firadisk.inf file created by DPMS2, you will see a section
[Config.firadisk]
###E2B###################################################################################################=PATCHED WITH ISO NAME
This is patched by the code to
[Config.firadisk]
value=Parameters,StartOptions,REG_SZ,"cdrom,vmem=find:\_ISO\Windows\XP\XPPROSP3.iso;"
;#################=PATCHED WITH ISO NAME
This also writes the registry entry showing firadisk the ISO name for the 2nd boot (though this reg write should also be done by the firadisk driver too???).
newwinvblock.ima.gz is an F6 floppy too, when the driver is loaded it also looks for a string on a 'floppy'
(any grub4dos device below 128 (80h) is a 'floppy' device.)
Firadisk seems to require the ISO to be loaded into memory on the first boot which is a shame.
WinVblock does not, however by experiment it does not always work on every type of system (may be due to connection with the USB drive being lost during early PnP enumeration?)
Firadisk project is here.
P.S. There is an (old) Firadisk guide here.
HTH
Steve