I am having no luck at scanning the device list and skipping the ones that are not fully mounted yet (Activate=0; in mountlist and not accessed yet). All the functions I have been using activates it when it should be skipping it.

I wrote the ACTION_STARTUP dospacket documentation to show how it all works...Also, "if (dl->dol_Type==DLT_DEVICE)" is redundant, because the FindDosEntry() filters by flags.

====================================================================* FUNCTION* This action has the same value as ACTION_NIL (0) * however it is always used by dos.library as a handshake mechanism* to start up handlers and filesystems.* * When dos.library sends this packet to the process message port of a * handler or filesystem, the following sequence will occur.** (1) DOS will first check if this handler is already running by looking* to see if devicenode->dn_Port != NULL then (6), otherwise ...** (2) DOS library will check if the module requires loading by looking* to see if the devicenode->dn_SegList != ZERO, if it is already* loaded then (4), otherwise ...** (3) DOS will obtain the loadable name from devicenode->dn_Handler,* if that is valid, DOS will attempt to IDOS->LoadSeg() it,* once loaded, the devicenode->dn_SegList will be initialised.** (4) A DOS process will be started for this handler device, the name of* this process will default to the same as the devicenode->dn_Name,* from V53.102 handler version information is appended to the name.** (5) The ACTION_STARTUP packet will be sent to the default process * message port, DOS will wait for the packet to return.** (6) The message port will be extracted from either the result of* the startup packet (from dp_Arg4) or the devicenode->dn_Port.* (See notes below).*====================================================================