==== FS_DOPAGEIO ==== **Purpose** Performs all the I/O operations in a PageCmdList. **Calling Sequence** int far pascal FS_DOPAGEIO(psffsi, psffsd, pList) struct sffsi far * psffsi; struct sffsd far * psffsd; struct PageCmdHeader far * pList; **Where** //psffsi// is a pointer to the file-system-independent portion of an open file instance. //psffsd// is a pointer to the file-system-dependent portion of an open file instance. //pList// is a pointer to a PageCmdHeader structure. The //PageCmdHeader// structure has the following format: struct PageCmdHeader { unsigned char InFlags; /* Input Flags */ unsigned char OutFlags; /* Output Flags - must be 0 on entry */ unsigned char OpCount; /* Number of operations */ unsigned char Pad; /* Pad for DWORD alignment */ unsigned long Reserved1; /* Currently Unused */ unsigned long Reserved2; /* Currently Unused */ unsigned long Reserved3; /* Currently Unused */ struct PageCmd PageCmdList; /* Currently Unused */ } The //PageCmd// structure has the following format: struct PageCmd { unsigned char Cmd; /* Cmd Code (Read,Write,Verify) */ unsigned char Priority; /* Same values as for req packets */ unsigned char Status; /* Status byte */ unsigned char Error; /* I24 error code */ unsigned long Addr; /* Physical(0:32) or Virtual(16:16) */ unsigned long FileOffset; /* Byte Offset in page file */ } **Remarks** //FS_DOPAGEIO// performs all the I/O operations specified in the //PageCmdList//. If the disk driver Extended Strategy requests, a request list will be built from the //PageCmdList// and issued to the driver. If the disk driver does not support Extended Strategy requests, the FSD can either let the kernel do the emulation (See //FS_OPENPAGEFILE// to set this state) or has the option to do the emulation itself. For a detailed description of the Extended Strategy request interface please see the OS/2 Version 2.0 Physical Device Driver Reference.