Index: /trunk/XTIDE_Universal_BIOS/Inc/EBIOS.inc
===================================================================
--- /trunk/XTIDE_Universal_BIOS/Inc/EBIOS.inc	(revision 168)
+++ /trunk/XTIDE_Universal_BIOS/Inc/EBIOS.inc	(revision 169)
@@ -41,7 +41,5 @@
 	.bSize					resb	1	; 0, Size of this packet in bytes
 	.bReservedAt1			resb	1	; 1, Currently unused, must be zero
-	.wSectorCount:
-	.bSectorCount			resb	1	; 2, Number of sectors to process (1...127)
-	.bReservedAt3			resb	1	; 3, Currently unused, must be zero
+	.wSectorCount			resb	2	; 2, Number of sectors to process (1...127)
 	.dwMemoryAddress:
 	.wOffset				resb	2	; 4, Memory offset for transfer
Index: /trunk/XTIDE_Universal_BIOS/Inc/RamVars.inc
===================================================================
--- /trunk/XTIDE_Universal_BIOS/Inc/RamVars.inc	(revision 168)
+++ /trunk/XTIDE_Universal_BIOS/Inc/RamVars.inc	(revision 169)
@@ -54,5 +54,6 @@
 
 	; Parameters for 48-bit LBA
-							resb	1
+	.wSectorCountHighAndLbaLowExt:
+	.bSectorCountHighExt	resb	1
 	.bLbaLowExt				resb	1	; LBA48 31...24
 
Index: /trunk/XTIDE_Universal_BIOS/Src/Device/IDE/IdeCommand.asm
===================================================================
--- /trunk/XTIDE_Universal_BIOS/Src/Device/IDE/IdeCommand.asm	(revision 168)
+++ /trunk/XTIDE_Universal_BIOS/Src/Device/IDE/IdeCommand.asm	(revision 169)
@@ -128,6 +128,5 @@
 
 	; Output Sector Address High (only used by LBA48)
-	xor		ax, ax	; Sector Count High always zero since 127 sector limit
-	mov		ah, BYTE [bp+IDEPACK.bLbaLowExt]
+	mov		ax, [bp+IDEPACK.wSectorCountHighAndLbaLowExt]
 	mov		cx, [bp+IDEPACK.wLbaMiddleAndHighExt]
 	call	OutputSectorCountAndAddress
Index: /trunk/XTIDE_Universal_BIOS/Src/Device/IDE/IdeTransfer.asm
===================================================================
--- /trunk/XTIDE_Universal_BIOS/Src/Device/IDE/IdeTransfer.asm	(revision 168)
+++ /trunk/XTIDE_Universal_BIOS/Src/Device/IDE/IdeTransfer.asm	(revision 169)
@@ -5,10 +5,8 @@
 ; This struct must not be larger than IDEPACK without INTPACK.
 struc PIOVARS
-	.wBlockLeftAndSectorsInLastBlock:
-	.bBlocksLeft			resb	1
-	.bSectorsInLastBlock:	resb	1
+	.wBlocksLeft			resb	2
 	.wBlockSize				resb	2	; Block size in WORDs (256...32768)
 	.wDataPort				resb	2
-							resb	1
+	.bSectorsInLastBlock:	resb	1
 							resb	1	; Offset 7 = IDEPACK.bDeviceControl
 	.fnXfer					resb	2	; Offset to transfer function
@@ -34,4 +32,6 @@
 ALIGN JUMP_ALIGN
 IdeTransfer_StartWithCommandInAL:
+	mov		ah, [bp+IDEPACK.bSectorCountHighExt]
+
 	; Are we reading or writing?
 	test	al, 16	; Bit 4 is cleared on all the read commands but set on 3 of the 4 write commands
@@ -42,24 +42,21 @@
 	; Prepare to read data to ESSI
 	mov		bx, g_rgfnPioRead
-	call	InitializePiovarsToSSBPfromIdepackInSSBP
+	mov		al, [bp+IDEPACK.bSectorCount]
+	call	InitializePiovarsInSSBPwithSectorCountInAX
 	xchg	si, di
-%ifdef USE_186
-	push	ReadFromDriveToESDI
-	jmp		Registers_NormalizeESDI
-%else
 	call	Registers_NormalizeESDI
-	jmp		SHORT ReadFromDriveToESDI
-%endif
+	jmp		SHORT ReadFromDrive
 
 ALIGN JUMP_ALIGN
 .PrepareToWriteDataFromESSI:
 	mov		bx, g_rgfnPioWrite
-	call	InitializePiovarsToSSBPfromIdepackInSSBP
+	mov		al, [bp+IDEPACK.bSectorCount]
+	call	InitializePiovarsInSSBPwithSectorCountInAX
 	call	Registers_NormalizeESSI
-	; Fall to WriteToDriveFromESSI
-
-
-;--------------------------------------------------------------------
-; WriteToDriveFromESSI
+	; Fall to WriteToDrive
+
+
+;--------------------------------------------------------------------
+; WriteToDrive
 ;	Parameters:
 ;		DS:DI:	Ptr to DPT (in RAMVARS segment)
@@ -73,5 +70,5 @@
 ;		AL, BX, CX, DX, SI, ES
 ;--------------------------------------------------------------------
-WriteToDriveFromESSI:
+WriteToDrive:
 	; Always poll when writing first block (IRQs are generated for following blocks)
 	mov		bx, TIMEOUT_AND_STATUS_TO_WAIT(TIMEOUT_DRQ, FLG_STATUS_DRQ)
@@ -81,8 +78,18 @@
 .WriteNextBlock:
 	mov		dx, [bp+PIOVARS.wDataPort]
-	dec		BYTE [bp+PIOVARS.bBlocksLeft]		; Transferring last (possibly partial) block?
+	dec		WORD [bp+PIOVARS.wBlocksLeft]		; Transferring last (possibly partial) block?
 	jz		SHORT .XferLastBlock				;  If so, jump to transfer
 	mov		cx, [bp+PIOVARS.wBlockSize]			; Load block size in WORDs
 	call	[bp+PIOVARS.fnXfer]					; Transfer full block
+
+	; Normalize pointer when necessary
+	mov		ax, si
+	shr		ax, 1								; WORD offset
+	add		ax, [bp+PIOVARS.wBlockSize]
+	jns		SHORT .WaitUntilReadyToTransferNextBlock
+	call	Registers_NormalizeESSI
+
+ALIGN JUMP_ALIGN
+.WaitUntilReadyToTransferNextBlock:
 %ifdef USE_186
 	push	.WriteNextBlock
@@ -110,5 +117,5 @@
 
 ;--------------------------------------------------------------------
-; ReadFromDriveToESDI
+; ReadFromDrive
 ;	Parameters:
 ;		ES:DI:	Normalized ptr to buffer to recieve data
@@ -124,23 +131,31 @@
 ;--------------------------------------------------------------------
 ALIGN JUMP_ALIGN
-ReadFromDriveToESDI:
+ReadFromDrive:
 	; Wait until drive is ready to transfer
 	xchg	di, si								; DS:DI now points DPT
 	call	IdeWait_IRQorDRQ					; Wait until ready to transfer
-	jc		SHORT WriteToDriveFromESSI.ReturnWithTransferErrorInAH
+	jc		SHORT WriteToDrive.ReturnWithTransferErrorInAH
 	xchg	si, di								; ES:DI now points buffer
 
 	; Transfer full or last (possible partial) block
 	mov		dx, [bp+PIOVARS.wDataPort]
-	dec		BYTE [bp+PIOVARS.bBlocksLeft]
+	dec		WORD [bp+PIOVARS.wBlocksLeft]
 	jz		SHORT .XferLastBlock
 	mov		cx, [bp+PIOVARS.wBlockSize]			; Load block size in WORDs
-%ifdef USE_186
-	push	ReadFromDriveToESDI
-	jmp		[bp+PIOVARS.fnXfer]
-%else
 	call	[bp+PIOVARS.fnXfer]					; Transfer full block
-	jmp		SHORT ReadFromDriveToESDI					; Loop while blocks left
-%endif
+
+	; Normalize pointer when necessary
+	mov		ax, di
+	shr		ax, 1								; WORD offset
+	add		ax, [bp+PIOVARS.wBlockSize]
+	jns		SHORT ReadFromDrive
+%ifdef USE_186
+	push	ReadFromDrive
+	jmp		Registers_NormalizeESDI
+%else
+	call	Registers_NormalizeESDI
+	jmp		SHORT ReadFromDrive					; Loop while blocks left
+%endif
+
 
 ALIGN JUMP_ALIGN
@@ -155,27 +170,29 @@
 
 ;--------------------------------------------------------------------
-; InitializePiovarsToSSBPfromIdepackInSSBP
-;	Parameters:
+; InitializePiovarsInSSBPwithSectorCountInAX
+;	Parameters:
+;		AX:		Number of sectors to transfer (1...65535)
 ;		BX:		Offset to transfer function lookup table
 ;		DS:DI:	Ptr to DPT (in RAMVARS segment)
-;		SS:BP:	Ptr to IDEPACK
-;	Returns:
 ;		SS:BP:	Ptr to PIOVARS
+;	Returns:
+;		Nothing
 ;	Corrupts registers:
 ;		AX, BX, CX, DX
 ;--------------------------------------------------------------------
 ALIGN JUMP_ALIGN
-InitializePiovarsToSSBPfromIdepackInSSBP:
+InitializePiovarsInSSBPwithSectorCountInAX:
 	; Store number of blocks to transfer
-	eMOVZX	cx, BYTE [di+DPT_ATA.bSetBlock]		; Block size in sectors, zero CH
-	eMOVZX	ax, BYTE [bp+IDEPACK.bSectorCount]	; AX = sectors to transfer (1...128)
-	div		cl			; AL = Full blocks to transfer
-	test	ah, ah		; AH = Sectors in partial block
+	eMOVZX	cx, BYTE [di+DPT_ATA.bSetBlock]		; Block size in sectors
+	xor		dx, dx		; DX:AX = Sectors to transfer (1...65535)
+	div		cx			; AX = Full blocks to transfer
+	test	dx, dx
+	mov		dh, cl		; DH = Full block size if no partial blocks to transfer
 	jz		SHORT .NoPartialBlocksToTransfer
-	inc		ax			; Add partial block to total block count
-	SKIP2B	dx			; Skip mov ah, cl
+	inc		ax			; Partial block
+	mov		dh, dl		; DH = Size of partial block in sectors
 .NoPartialBlocksToTransfer:
-	mov		ah, cl		; Full block size if no partial blocks to transfer
-	mov		[bp+PIOVARS.wBlockLeftAndSectorsInLastBlock], ax
+	mov		[bp+PIOVARS.wBlocksLeft], ax
+	mov		[bp+PIOVARS.bSectorsInLastBlock], dh
 
 	; Store block size in WORDs
Index: /trunk/XTIDE_Universal_BIOS/Src/Device/Idepack.asm
===================================================================
--- /trunk/XTIDE_Universal_BIOS/Src/Device/Idepack.asm	(revision 168)
+++ /trunk/XTIDE_Universal_BIOS/Src/Device/Idepack.asm	(revision 169)
@@ -39,6 +39,7 @@
 Idepack_ConvertDapToIdepackAndIssueCommandFromAH:
 	mov		[bp+IDEPACK.bCommand], ah
-	mov		al, [es:si+DAP.wSectorCount]
+	mov		ax, [es:si+DAP.wSectorCount]
 	mov		[bp+IDEPACK.bSectorCount], al
+	mov		[bp+IDEPACK.bSectorCountHighExt], ah
 
 	mov		al, [es:si+DAP.qwLBA]		; LBA byte 0
@@ -81,6 +82,9 @@
 ALIGN JUMP_ALIGN
 Idepack_TranslateOldInt13hAddressAndIssueCommandFromAH:
+	mov		[bp+IDEPACK.bCommand], ah
+	test	al, al
+	eCSETZ	ah
 	mov		[bp+IDEPACK.bSectorCount], al
-	mov		[bp+IDEPACK.bCommand], ah
+	mov		[bp+IDEPACK.bSectorCountHighExt], ah
 
 	push	bx
@@ -125,4 +129,5 @@
 	mov		[bp+IDEPACK.wSectorCountAndLbaLow], dx
 	mov		[bp+IDEPACK.wLbaMiddleAndHigh], cx
+	mov		BYTE [bp+IDEPACK.bSectorCountHighExt], 0
 
 	; Drive and Head select byte
Index: /trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/AH2h_HRead.asm
===================================================================
--- /trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/AH2h_HRead.asm	(revision 168)
+++ /trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/AH2h_HRead.asm	(revision 169)
@@ -15,5 +15,5 @@
 ;		SS:BP:	Ptr to IDEPACK
 ;	Parameters on INTPACK:
-;		AL:		Number of sectors to read (1...127)
+;		AL:		Number of sectors to read (1...255, 0=256)
 ;		CH:		Cylinder number, bits 7...0
 ;		CL:		Bits 7...6: Cylinder number bits 9 and 8
@@ -28,7 +28,4 @@
 ALIGN JUMP_ALIGN
 AH2h_HandlerForReadDiskSectors:
-	cmp		al, 0
-	jle		SHORT AH2h_ExitInt13hSinceSectorCountInIntpackIsZero
-
 	call	CommandLookup_GetOldInt13hIndexToBX
 	mov		ah, [cs:bx+g_rgbReadCommandLookup]
@@ -42,14 +39,2 @@
 	jmp		Int13h_ReturnFromHandlerAfterStoringErrorCodeFromAH
 %endif
-
-
-;--------------------------------------------------------------------
-; AH2h_ExitInt13hSinceSectorCountInIntpackIsZero
-;	Parameters:
-;		Nothing
-;	Returns:
-;		Jumps to Int13h_ReturnFromHandlerAfterStoringErrorCodeFromAH
-;--------------------------------------------------------------------
-AH2h_ExitInt13hSinceSectorCountInIntpackIsZero:
-	mov		ah, RET_HD_INVALID
-	jmp		Int13h_ReturnFromHandlerAfterStoringErrorCodeFromAH
Index: /trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/AH3h_HWrite.asm
===================================================================
--- /trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/AH3h_HWrite.asm	(revision 168)
+++ /trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/AH3h_HWrite.asm	(revision 169)
@@ -15,5 +15,5 @@
 ;		SS:BP:	Ptr to IDEREGS_AND_INTPACK
 ;	Parameters on INTPACK:
-;		AL:		Number of sectors to write (1...127)
+;		AL:		Number of sectors to write (1...255, 0=256)
 ;		CH:		Cylinder number, bits 7...0
 ;		CL:		Bits 7...6: Cylinder number bits 9 and 8
@@ -27,7 +27,4 @@
 ALIGN JUMP_ALIGN
 AH3h_HandlerForWriteDiskSectors:
-	cmp		al, 0
-	jle		SHORT AH2h_ExitInt13hSinceSectorCountInIntpackIsZero
-
 	call	CommandLookup_GetOldInt13hIndexToBX
 	mov		ah, [cs:bx+g_rgbWriteCommandLookup]
Index: /trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/AH4h_HVerify.asm
===================================================================
--- /trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/AH4h_HVerify.asm	(revision 168)
+++ /trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/AH4h_HVerify.asm	(revision 169)
@@ -15,5 +15,5 @@
 ;		SS:BP:	Ptr to INTPACK
 ;	Parameters on INTPACK in SS:BP:
-;		AL:		Number of sectors to verify (1...127)
+;		AL:		Number of sectors to verify (1...255, 0=256)
 ;		CH:		Cylinder number, bits 7...0
 ;		CL:		Bits 7...6: Cylinder number bits 9 and 8
@@ -26,7 +26,4 @@
 ALIGN JUMP_ALIGN
 AH4h_HandlerForVerifyDiskSectors:
-	cmp		al, 0
-	jle		SHORT AH2h_ExitInt13hSinceSectorCountInIntpackIsZero
-
 	mov		ah, COMMAND_VERIFY_SECTORS
 	mov		bx, TIMEOUT_AND_STATUS_TO_WAIT(TIMEOUT_DRQ, FLG_STATUS_DRDY)
Index: /trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/EBIOS/AH42h_ExtendedReadSectors.asm
===================================================================
--- /trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/EBIOS/AH42h_ExtendedReadSectors.asm	(revision 168)
+++ /trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/EBIOS/AH42h_ExtendedReadSectors.asm	(revision 169)
@@ -54,8 +54,9 @@
 	mov		es, [bp+IDEPACK.intpack+INTPACK.ds]	; ES:SI to point Disk Address Packet
 	cmp		BYTE [es:si+DAP.bSize], MINIMUM_DAP_SIZE
-	jb		SHORT .DapContentsNotValid
+	jb		SHORT AH42h_ReturnWithInvalidFunctionError
 	cmp		WORD [es:si+DAP.wSectorCount], BYTE 0
-	jle		SHORT .DapContentsNotValid			; Must be 1...127
+	je		SHORT AH42h_ReturnWithInvalidFunctionError
 	ret
-.DapContentsNotValid:
-	jmp		AH2h_ExitInt13hSinceSectorCountInIntpackIsZero
+AH42h_ReturnWithInvalidFunctionError:
+	mov		ah, RET_HD_INVALID
+	jmp		Int13h_ReturnFromHandlerAfterStoringErrorCodeFromAH
Index: /trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/EBIOS/AH43h_ExtendedWriteSectors.asm
===================================================================
--- /trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/EBIOS/AH43h_ExtendedWriteSectors.asm	(revision 168)
+++ /trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/EBIOS/AH43h_ExtendedWriteSectors.asm	(revision 169)
@@ -27,5 +27,5 @@
 AH43h_HandlerForExtendedWriteSectors:
 	cmp		BYTE [bp+IDEPACK.intpack+INTPACK.al], 2	; Verify requested?
-	jae		SHORT .WriteWithVerifyNotSupported
+	jae		SHORT AH42h_ReturnWithInvalidFunctionError
 
 	call	AH42h_LoadDapToESSIandVerifyForTransfer
@@ -40,5 +40,2 @@
 	jmp		Int13h_ReturnFromHandlerAfterStoringErrorCodeFromAH
 %endif
-
-.WriteWithVerifyNotSupported:
-	jmp		AH2h_ExitInt13hSinceSectorCountInIntpackIsZero
Index: /trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/EBIOS/AH47h_ExtendedSeek.asm
===================================================================
--- /trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/EBIOS/AH47h_ExtendedSeek.asm	(revision 168)
+++ /trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/EBIOS/AH47h_ExtendedSeek.asm	(revision 169)
@@ -25,5 +25,5 @@
 	mov		es, [bp+IDEPACK.intpack+INTPACK.ds]	; ES:SI to point Disk Address Packet
 	cmp		BYTE [es:si+DAP.bSize], MINIMUM_DAP_SIZE
-	jb		SHORT .DapContentsNotValid
+	jb		SHORT AH42h_ReturnWithInvalidFunctionError
 
 	mov		ah, COMMAND_SEEK
@@ -36,5 +36,2 @@
 	jmp		Int13h_ReturnFromHandlerAfterStoringErrorCodeFromAH
 %endif
-
-.DapContentsNotValid:
-	jmp		AH2h_ExitInt13hSinceSectorCountInIntpackIsZero
Index: /trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/EBIOS/AH48h_GetExtendedDriveParameters.asm
===================================================================
--- /trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/EBIOS/AH48h_GetExtendedDriveParameters.asm	(revision 168)
+++ /trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/EBIOS/AH48h_GetExtendedDriveParameters.asm	(revision 169)
@@ -34,13 +34,11 @@
 	call	AH25h_GetDriveInformationToBufferInESSI
 	jc		SHORT .ReturnWithError
-	call	AtaID_GetTotalSectorCountToBXDXAXfromAtaInfoInESSI
-	xchg	cx, ax		; Sector count now in BX:DX:CX
 
-	; Point ES:DI to Destination buffer
+	; Point DS:DI to Destination buffer
 	mov		di, [bp+IDEPACK.intpack+INTPACK.si]
-	mov		es, [bp+IDEPACK.intpack+INTPACK.ds]
+	mov		ds, [bp+IDEPACK.intpack+INTPACK.ds]
 	mov		ax, MINIMUM_EDRIVEINFO_SIZE
-	cmp		WORD [es:di+EDRIVE_INFO.wSize], ax
-	jb		SHORT .BufferTooSmall
+	cmp		WORD [di+EDRIVE_INFO.wSize], ax
+	jb		SHORT AH42h_ReturnWithInvalidFunctionError
 	je		SHORT .SkipEddConfigurationParameters
 
@@ -48,31 +46,34 @@
 	xor		ax, ax
 	dec		ax			; AX = FFFFh
-	mov		[es:di+EDRIVE_INFO.fpEDDparams], ax
-	mov		[es:di+EDRIVE_INFO.fpEDDparams+2], ax
+	mov		[di+EDRIVE_INFO.fpEDDparams], ax
+	mov		[di+EDRIVE_INFO.fpEDDparams+2], ax
 	mov		ax, EDRIVE_INFO_size
 
-	; Fill Extended Drive Information Table in ES:DI
+	; Fill Extended Drive Information Table in DS:DI
 .SkipEddConfigurationParameters:
-	stosw				; Store Extended Drive Information Table size
-	mov		al, FLG_DMA_BOUNDARY_ERRORS_HANDLED_BY_BIOS
-	stosw
-	add		di, BYTE 12	; Skip CHS parameters
-	xchg	ax, cx
-	stosw				; LBA WORD 0
-	xchg	ax, dx
-	stosw				; LBA WORD 1
-	xchg	ax, bx
-	stosw				; LBA WORD 2
-	xor		ax, ax
-	stosw				; LBA WORD 3 always zero since 48-bit address
-	mov		ah, 512>>8
-	stosw				; Always 512-byte sectors
+	mov		[di+EDRIVE_INFO.wSize], ax
+	mov		WORD [di+EDRIVE_INFO.wFlags], FLG_DMA_BOUNDARY_ERRORS_HANDLED_BY_BIOS | FLG_CHS_INFORMATION_IS_VALID
+
+	call	AtaID_GetPCHStoAXBLBHfromAtaInfoInESSI
+	xor		cx, cx
+	mov		[di+EDRIVE_INFO.dwCylinders], ax
+	mov		[di+EDRIVE_INFO.dwCylinders+2], cx
+	eMOVZX	ax, bl
+	mov		[di+EDRIVE_INFO.dwHeads], ax
+	mov		[di+EDRIVE_INFO.dwHeads+2], cx
+	mov		al, bh
+	mov		[di+EDRIVE_INFO.dwSectorsPerTrack], ax
+	mov		[di+EDRIVE_INFO.dwSectorsPerTrack+2], cx
+
+	call	AtaID_GetTotalSectorCountToBXDXAXfromAtaInfoInESSI
+	mov		[di+EDRIVE_INFO.qwTotalSectors], ax
+	mov		[di+EDRIVE_INFO.qwTotalSectors+2], dx
+	mov		[di+EDRIVE_INFO.qwTotalSectors+4], bx
+	mov		[di+EDRIVE_INFO.qwTotalSectors+6], cx
+
+	mov		WORD [di+EDRIVE_INFO.wSectorSize], 512
 
 	; Return with success
 	xor		ah, ah
-	jmp		Int13h_ReturnFromHandlerAfterStoringErrorCodeFromAH
-
-.BufferTooSmall:
-	mov		ah, RET_HD_INVALID
 .ReturnWithError:
 	jmp		Int13h_ReturnFromHandlerAfterStoringErrorCodeFromAH
Index: /trunk/XTIDE_Universal_BIOS/Src/Initialization/AtaID.asm
===================================================================
--- /trunk/XTIDE_Universal_BIOS/Src/Initialization/AtaID.asm	(revision 168)
+++ /trunk/XTIDE_Universal_BIOS/Src/Initialization/AtaID.asm	(revision 169)
@@ -7,5 +7,5 @@
 
 ;--------------------------------------------------------------------
-; AtaID_GetPCHS
+; AtaID_GetPCHStoAXBLBHfromAtaInfoInESSI
 ;	Parameters:
 ;		ES:SI:	Ptr to 512-byte ATA information read from the drive
@@ -17,5 +17,5 @@
 ;		Nothing
 ;--------------------------------------------------------------------
-AtaID_GetPCHS:
+AtaID_GetPCHStoAXBLBHfromAtaInfoInESSI:
 	mov		ax, [es:si+ATA1.wCylCnt]	; Cylinders (1...16383)
 	mov		bl, [es:si+ATA1.wHeadCnt]	; Heads (1...16)
Index: /trunk/XTIDE_Universal_BIOS/Src/VariablesAndDPTs/CreateDPT.asm
===================================================================
--- /trunk/XTIDE_Universal_BIOS/Src/VariablesAndDPTs/CreateDPT.asm	(revision 168)
+++ /trunk/XTIDE_Universal_BIOS/Src/VariablesAndDPTs/CreateDPT.asm	(revision 169)
@@ -83,5 +83,5 @@
 	call	AccessDPT_TestIdeVarsFlagsForMasterOrSlaveDrive
 	jnz		SHORT .GetUserSpecifiedPCHS
-	call	AtaID_GetPCHS				; Get from ATA information
+	call	AtaID_GetPCHStoAXBLBHfromAtaInfoInESSI
 	jmp		SHORT .StorePCHStoDPT
 
