VDI API
	Load()
		EAX: dwError
		EDX: pVDI
	Unload(pVDI)
		EAX: dwError
	Read(pVDI, pBuffer, dwLen, nTrack, nSide, nSector)
		EAX: dwError
		ECX: dwSectorSize
		EDX: dwSectorDensity (0:Single, 1:Double)
	Write(pVDI, pBuffer, dwLen, nTrack, nSide, nSector)
		EAX: dwError
	Get(pVDI, nIndex)
		nIndex:
			VDI_GET_TRACKS
			VDI_GET_SIDES
			VDI_GET_SPT
			VDI_GET_DENSITY
			VDI_GET_FIRST_TRACK
			VDI_GET_LAST_TRACK
			VDI_GET_FIRST_SIDE
			VDI_GET_LAST_SIDE
			VDI_GET_FIRST_SECTOR
			VDI_GET_LAST_SECTOR
		EAX: dwInfo
OSI API
	Load()
		EAX: dwError
		EDX: pOSI
	Unload(pOSI)
		EAX: dwError
	Find(pOSI, nFlag)
		nFlag:
			OSI_FIND_FIRST
			OSI_FIND_NEXT
		EAX: dwError
		EDX: pFPDE
	Open(pOSI, pName, nMode)
		nMode:
			OSI_OPEN_RO
			OSI_OPEN_RW
		EAX: dwError
		EDX: pFPDE
	Seek(pOSI, pFPDE, dwPos)
		EAX: dwError
	Read(pOSI, pFPDE, pBuffer, dwLen)
		EAX: dwError
	Write(pOSI, pFPDE, pBuffer, dwLen)
		EAX: dwError
	Rename(pOSI, pFPDE, pName)
		EAX: dwError
	Delete(pOSI, pFPDE)
		EAX: dwError
	GetFileName(pOSI, pFPDE, pBuffer, dwLen)
		EAX: dwError
	GetFileExt(pOSI, pFPDE, pBuffer, dwLen)
		EAX: dwError
	GetFileSize(pOSI, pFPDE)
		EAX: dwSize
	GetFileDate(pOSI, pFPDE)
		EAX: dwDate (YYYYMMDD)
	SetFileDate(pOSI, pFPDE, dwDate)
		EAX: dwError
	GetFileAttr(pOSI, pFPDE)
		EAX: dwAttr (0000MISA)
	SetFileAttr(pOSI, pFPDE, dwAttr)
		EAX: dwError
	GetDosVer(pOSI)
		EAX: dwVersion
	GetDiskName(pOSI, pBuffer, dwLen)
		EAX: dwError
	SetDiskName(pOSI, pName)
		EAX: dwError
	GetDiskDate(pOSI, pBuffer, dwLen)
		EAX: dwError
	SetDiskDate(pOSI, pDate)
		EAX: dwError
