mirror of
https://github.com/reactos/reactos.git
synced 2024-12-28 10:04:49 +00:00
Changes in v1.8.2 (1/24/2003) (ekohl)
- Relaxed check for Int13-Extension support. Some BIOSes have a strange opinion about what is supported. :-/ svn path=/trunk/; revision=4057
This commit is contained in:
parent
9a5403580f
commit
1ce736a133
4 changed files with 26 additions and 8 deletions
|
@ -1,3 +1,8 @@
|
||||||
|
Changes in v1.8.2 (1/24/2003) (ekohl)
|
||||||
|
|
||||||
|
- Relaxed check for Int13-Extension support.
|
||||||
|
Some BIOSes have a strange opinion about what is supported. :-/
|
||||||
|
|
||||||
Changes in v1.8.1 (1/20/2003) (ekohl)
|
Changes in v1.8.1 (1/20/2003) (ekohl)
|
||||||
|
|
||||||
- Fixed the ISO filesystem detection code.
|
- Fixed the ISO filesystem detection code.
|
||||||
|
|
|
@ -343,12 +343,25 @@ BOOL DiskInt13ExtensionsSupported(U32 DriveNumber)
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!(RegsOut.w.cx & 0x01))
|
// Note:
|
||||||
|
// The original check is too strict because some BIOSes report that
|
||||||
|
// extended disk access functions are not suported when booting
|
||||||
|
// from a CD (e.g. Phoenix BIOS v6.00PG). Argh!
|
||||||
|
#if 0
|
||||||
|
if (!(RegsOut.w.cx & 0x0001))
|
||||||
{
|
{
|
||||||
// CX = API subset support bitmap
|
// CX = API subset support bitmap
|
||||||
// Bit 0, extended disk access functions (AH=42h-44h,47h,48h) supported
|
// Bit 0, extended disk access functions (AH=42h-44h,47h,48h) supported
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// Use this relaxed check instead
|
||||||
|
if (RegsOut.w.cx == 0x0000)
|
||||||
|
{
|
||||||
|
// CX = API subset support bitmap
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
@ -420,7 +433,7 @@ U32 DiskGetCacheableBlockCount(U32 DriveNumber)
|
||||||
|
|
||||||
// If LBA is supported then the block size will be 64 sectors (32k)
|
// If LBA is supported then the block size will be 64 sectors (32k)
|
||||||
// If not then the block size is the size of one track
|
// If not then the block size is the size of one track
|
||||||
if (DiskInt13ExtensionsSupported)
|
if (DiskInt13ExtensionsSupported(DriveNumber))
|
||||||
{
|
{
|
||||||
return 64;
|
return 64;
|
||||||
}
|
}
|
||||||
|
|
|
@ -41,7 +41,7 @@ BOOL IsIsoFs(U32 DriveNumber)
|
||||||
{
|
{
|
||||||
PUCHAR Sector = (PUCHAR)DISKREADBUFFER;
|
PUCHAR Sector = (PUCHAR)DISKREADBUFFER;
|
||||||
|
|
||||||
if (!DiskReadLogicalSectorsLBA(DriveNumber, 16, 1, Sector))
|
if (!DiskReadLogicalSectors(DriveNumber, 16, 1, Sector))
|
||||||
{
|
{
|
||||||
FileSystemError("Failed to read the PVD.");
|
FileSystemError("Failed to read the PVD.");
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
@ -68,7 +68,7 @@ BOOL IsoOpenVolume(U32 DriveNumber)
|
||||||
IsoRootSector = 0;
|
IsoRootSector = 0;
|
||||||
IsoRootLength = 0;
|
IsoRootLength = 0;
|
||||||
|
|
||||||
if (!DiskReadLogicalSectorsLBA(DriveNumber, 16, 1, Pvd))
|
if (!DiskReadLogicalSectors(DriveNumber, 16, 1, Pvd))
|
||||||
{
|
{
|
||||||
FileSystemError("Failed to read the PVD.");
|
FileSystemError("Failed to read the PVD.");
|
||||||
return FALSE;
|
return FALSE;
|
||||||
|
@ -179,7 +179,7 @@ static PVOID IsoBufferDirectory(U32 DirectoryStartSector, U32 DirectoryLength)
|
||||||
//
|
//
|
||||||
for (i = 0, Ptr = DirectoryBuffer; i < SectorCount; i++, Ptr += SECTORSIZE)
|
for (i = 0, Ptr = DirectoryBuffer; i < SectorCount; i++, Ptr += SECTORSIZE)
|
||||||
{
|
{
|
||||||
if (!DiskReadLogicalSectorsLBA(IsoDriveNumber, DirectoryStartSector + i, 1, (PVOID)DISKREADBUFFER))
|
if (!DiskReadLogicalSectors(IsoDriveNumber, DirectoryStartSector + i, 1, (PVOID)DISKREADBUFFER))
|
||||||
{
|
{
|
||||||
MmFreeMemory(DirectoryBuffer);
|
MmFreeMemory(DirectoryBuffer);
|
||||||
return NULL;
|
return NULL;
|
||||||
|
@ -391,7 +391,7 @@ BOOL IsoReadFile(FILE *FileHandle, U32 BytesToRead, U32* BytesRead, PVOID Buffer
|
||||||
//
|
//
|
||||||
// Now do the read and update BytesRead, BytesToRead, FilePointer, & Buffer
|
// Now do the read and update BytesRead, BytesToRead, FilePointer, & Buffer
|
||||||
//
|
//
|
||||||
if (!DiskReadLogicalSectorsLBA(IsoDriveNumber, SectorNumber, 1, (PVOID)DISKREADBUFFER))
|
if (!DiskReadLogicalSectors(IsoDriveNumber, SectorNumber, 1, (PVOID)DISKREADBUFFER))
|
||||||
{
|
{
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
|
@ -22,7 +22,7 @@
|
||||||
|
|
||||||
|
|
||||||
/* just some stuff */
|
/* just some stuff */
|
||||||
#define VERSION "FreeLoader v1.8.1"
|
#define VERSION "FreeLoader v1.8.2"
|
||||||
#define COPYRIGHT "Copyright (C) 1998-2003 Brian Palmer <brianp@sginet.com>"
|
#define COPYRIGHT "Copyright (C) 1998-2003 Brian Palmer <brianp@sginet.com>"
|
||||||
#define AUTHOR_EMAIL "<brianp@sginet.com>"
|
#define AUTHOR_EMAIL "<brianp@sginet.com>"
|
||||||
#define BY_AUTHOR "by Brian Palmer"
|
#define BY_AUTHOR "by Brian Palmer"
|
||||||
|
@ -36,7 +36,7 @@
|
||||||
//
|
//
|
||||||
#define FREELOADER_MAJOR_VERSION 1
|
#define FREELOADER_MAJOR_VERSION 1
|
||||||
#define FREELOADER_MINOR_VERSION 8
|
#define FREELOADER_MINOR_VERSION 8
|
||||||
#define FREELOADER_PATCH_VERSION 1
|
#define FREELOADER_PATCH_VERSION 2
|
||||||
|
|
||||||
|
|
||||||
PUCHAR GetFreeLoaderVersionString(VOID);
|
PUCHAR GetFreeLoaderVersionString(VOID);
|
||||||
|
|
Loading…
Reference in a new issue