Hi Neil,
by now I have identified the problem: for me, the problem was in USBMSD.ADD.
Very early in the system start process, OS2DASD.DMD and OS2CDROM.DMD call into USBMSD.ADD in order to find out what units it knows about. At that point in time, USBMSD.ADD knows of no unit because it has not even reset the HC controllers and started the device enumeration (at least with my driver set).
That's also the reason why you need the /REMOVABLES switch: it reserves units so that if USB MSD devices eventually show up, these can be assigned to one of these reserved unit slots.
And here comes the difference:
LVM.EXE expects that an error was reported to OS2DASD.DMD and OS2CDROM.DMD that no unit is yet ready. But Minilvm.EXE and LVMGUI can happily live with a NO_ERROR return.
So: how is your ZIP disk connected to your system ? Via IDE, USB or even via the parallel interface that required the proprietary PPAOS2.ADD driver ?
If it is via IDE (and therefore managed by DANIS506.ADD) I would think that you need to experiment with the various DANIS506.ADD switches so that DANIS506.ADD will return an error on that initial request for units.
If it is via USB, then I can say that the latest available code from IBM (that all existing USB drivers of today are based upon) was not doing the right thing.