Index: trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h.asm
===================================================================
--- trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h.asm	(revision 492)
+++ trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h.asm	(revision 493)
@@ -93,5 +93,5 @@
 	call	RamVars_GetSegmentToDS
 
-%ifdef MODULE_HOTKEYS
+%ifdef MODULE_DRIVEXLATE
 	call	DriveXlate_ToOrBack
 	mov		[RAMVARS.xlateVars+XLATEVARS.bXlatedDrv], dl
@@ -179,5 +179,5 @@
 	mov		[bp+IDEPACK.intpack+INTPACK.si], si
 	mov		[bp+IDEPACK.intpack+INTPACK.bx], bx
-%ifdef MODULE_HOTKEYS
+%ifdef MODULE_DRIVEXLATE
 	mov		[bp+IDEPACK.intpack+INTPACK.dh], dh
 %else
@@ -190,5 +190,5 @@
 	call	RamVars_GetSegmentToDS
 
-%ifdef MODULE_HOTKEYS
+%ifdef MODULE_DRIVEXLATE
 	cmp		dl, [RAMVARS.xlateVars+XLATEVARS.bXlatedDrv]	; DL is still drive number?
 	je		SHORT .ExchangeInt13hHandlers
@@ -395,5 +395,5 @@
 	dw	UnsupportedFunction							; 1Ch, ESDI Special Functions (PS/2)
 	dw	UnsupportedFunction							; 1Dh,
-%ifdef MODULE_8BIT_IDE
+%ifdef MODULE_8BIT_IDE_ADVANCED
 	dw	AH1Eh_HandlerForXTCFfeatures				; 1Eh, Lo-tech XT-CF features (XTIDE Universal BIOS)
 %else
Index: trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/AH23h_HFeatures.asm
===================================================================
--- trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/AH23h_HFeatures.asm	(revision 492)
+++ trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/AH23h_HFeatures.asm	(revision 493)
@@ -76,5 +76,4 @@
 
 
-%ifdef MODULE_8BIT_IDE
 ;--------------------------------------------------------------------
 ; AH23h_Enable8bitPioMode
@@ -88,6 +87,7 @@
 ;		AL, BX, CX, DX, SI
 ;--------------------------------------------------------------------
+%ifdef MODULE_8BIT_IDE
 AH23h_Enable8bitPioMode:
 	mov		si, FEATURE_ENABLE_8BIT_PIO_TRANSFER_MODE
 	jmp		SHORT AH23h_SetControllerFeatures
-%endif ; MODULE_8BIT_IDE
+%endif
Index: trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/AH24h_HSetBlocks.asm
===================================================================
--- trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/AH24h_HSetBlocks.asm	(revision 492)
+++ trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/AH24h_HSetBlocks.asm	(revision 493)
@@ -59,5 +59,5 @@
 ;--------------------------------------------------------------------
 AH24h_SetBlockSize:
-%ifdef MODULE_8BIT_IDE
+%ifdef MODULE_8BIT_IDE_ADVANCED
 	; XT-CF does not support largest block size in DMA mode.
 	cmp		al, XTCF_DMA_MODE_MAX_BLOCK_SIZE
@@ -66,5 +66,5 @@
 	je		SHORT AH1Eh_LoadInvalidCommandToAHandSetCF
 .NoNeedToLimitBlockSize:
-%endif ; MODULE_8BIT_IDE
+%endif ; MODULE_8BIT_IDE_ADVANCED
 
 	push	bx
Index: trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/AH9h_HInit.asm
===================================================================
--- trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/AH9h_HInit.asm	(revision 492)
+++ trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/AH9h_HInit.asm	(revision 493)
@@ -107,5 +107,5 @@
 
 ;;; Set XT-CF mode
-%ifdef MODULE_8BIT_IDE
+%ifdef MODULE_8BIT_IDE_ADVANCED
 	call	AccessDPT_GetIdevarsToCSBX
 	mov		al, [cs:bx+IDEVARS.bXTCFcontrolRegister]
@@ -113,6 +113,7 @@
 	STORE_ERROR_FLAG_TO_DPT		FLG_INITERROR_FAILED_TO_SET_XTCF_MODE
 .DoNotSetXTCFmode:
-
-
+%endif	; MODULE_8BIT_IDE_ADVANCED
+
+%ifdef MODULE_8BIT_IDE
 ;;; Set 8-bit PIO mode
 	call	AH9h_Enable8bitModeForDevice8bitAta
@@ -266,5 +267,5 @@
 
 
-%ifdef MODULE_8BIT_IDE
+%ifdef MODULE_8BIT_IDE_ADVANCED
 ;--------------------------------------------------------------------
 ; AH9h_SetModeFromALtoXTCF
@@ -284,6 +285,7 @@
 	jne		SHORT IgnoreInvalidCommandError
 	jmp		AH1Eh_ChangeXTCFmodeBasedOnControlRegisterInAL
-
-
+%endif ; MODULE_8BIT_IDE_ADVANCED
+
+%ifdef MODULE_8BIT_IDE
 ;--------------------------------------------------------------------
 ; AH9h_Enable8bitModeForDevice8bitAta
@@ -302,3 +304,3 @@
 	jne		SHORT IgnoreInvalidCommandError
 	jmp		AH23h_Enable8bitPioMode
-%endif ; MODULE_8BIT_IDE
+%endif
Index: trunk/XTIDE_Universal_BIOS/Src/Handlers/Int19h.asm
===================================================================
--- trunk/XTIDE_Universal_BIOS/Src/Handlers/Int19h.asm	(revision 492)
+++ trunk/XTIDE_Universal_BIOS/Src/Handlers/Int19h.asm	(revision 493)
@@ -121,5 +121,5 @@
 	call	HotkeyBar_ScanHotkeysFromKeyBufferAndStoreToBootvars		
 	cmp		al, ROM_BOOT_HOTKEY_SCANCODE
-	jz		JumpToBootSector_or_RomBoot			; CF clear so ROM boot
+	jz		.RomBoot							; CF clear so ROM boot
 %ifdef MODULE_BOOT_MENU
 	cmp		al, BOOT_MENU_HOTKEY_SCANCODE
@@ -135,5 +135,5 @@
 .BootMenu:		
 	call	BootMenu_DisplayAndReturnDriveInDLRomBootClearCF
-	jnc		JumpToBootSector_or_RomBoot			; CF clear so ROM boot
+	jnc		.RomBoot							; CF clear so ROM boot
 
 	mov		dh, dl								; Setup for secondary drive
@@ -158,7 +158,10 @@
 %endif
 
-%ifndef MODULE_BOOT_MENU
-	clc		;  fall through with flag for ROM boot.  Boot Menu goes back to menu and doesn't fall through.
-%endif		
+.RomBoot:
+%ifdef MODULE_DRIVEXLATE
+	call	DriveXlate_Reset					; Clean up any drive mappings before Rom Boot
+%endif
+	clc		
+	;; fall through to JumpToBootSector_or_RomBoot
 
 ;--------------------------------------------------------------------
