Index: trunk/Assembly_Library/Inc/AssemblyLibrary.inc
===================================================================
--- trunk/Assembly_Library/Inc/AssemblyLibrary.inc	(revision 593)
+++ trunk/Assembly_Library/Inc/AssemblyLibrary.inc	(revision 596)
@@ -9,10 +9,9 @@
 %include "BiosData.inc"
 %include "BiosFunctions.inc"
+%include "CgaSnow.inc"
 %include "CMOS.inc"
-%include "CgaSnow.inc"
 %include "Debug.inc"
 %include "Delay.inc"
 %include "DosFunctions.inc"
-%include "CMOS.inc"
 %include "File.inc"
 %include "Math.inc"
@@ -27,5 +26,5 @@
 	%define INCLUDE_KEYBOARD_LIBRARY
 	%define INCLUDE_TIME_LIBRARY
-	
+
 	%ifdef INCLUDE_MENU_DIALOGS
 		%include "Dialog.inc"
Index: trunk/Assembly_Library/Inc/BiosFunctions.inc
===================================================================
--- trunk/Assembly_Library/Inc/BiosFunctions.inc	(revision 593)
+++ trunk/Assembly_Library/Inc/BiosFunctions.inc	(revision 596)
@@ -66,5 +66,5 @@
 
 ; BIOS PCI 2.0+ functions
-PCI_INSTALLATION_CHECK				EQU		0B101h
+PCI_INSTALLATION_CHECK			EQU		0B101h
 
 
Index: trunk/Assembly_Library/Inc/Emulate.inc
===================================================================
--- trunk/Assembly_Library/Inc/Emulate.inc	(revision 593)
+++ trunk/Assembly_Library/Inc/Emulate.inc	(revision 596)
@@ -18,4 +18,11 @@
 ;%define USE_386				; Define to use 386 instructions
 ;%define USE_AT					; Define for AT class machine
+
+%ifdef USE_NEC_V				; This will run on NEC V20/V30 processors only
+	%define USE_186				; Define to use 18x/V20/V30 instructions
+	%ifdef USE_UNDOC_INTEL OR USE_286 OR USE_386
+		%fatal "Conflicting processor define used together with USE_NEC_V!"
+	%endif
+%endif
 
 %ifdef USE_386
@@ -87,4 +94,9 @@
 	%endif
 %endmacro
+
+
+%ifdef USE_NEC_V
+	%include "NEC_V.inc"
+%endif
 
 
Index: trunk/Assembly_Library/Inc/Macros.inc
===================================================================
--- trunk/Assembly_Library/Inc/Macros.inc	(revision 593)
+++ trunk/Assembly_Library/Inc/Macros.inc	(revision 596)
@@ -125,5 +125,5 @@
 
 ;--------------------------------------------------------------------
-; Small delay between I/O port accessess if needed.
+; Small delay between I/O port accesses if needed.
 ;
 ; IO_DELAY
Index: trunk/Assembly_Library/Src/Menu/Dialog/DialogDrive.asm
===================================================================
--- trunk/Assembly_Library/Src/Menu/Dialog/DialogDrive.asm	(revision 593)
+++ trunk/Assembly_Library/Src/Menu/Dialog/DialogDrive.asm	(revision 596)
@@ -29,5 +29,5 @@
 ;		Nothing
 ;	Corrupts registers:
-;		AX, BX, CX, DX, SI, DI
+;		AX, BX, CX, DX, DI
 ;--------------------------------------------------------------------
 ALIGN JUMP_ALIGN
Index: trunk/Assembly_Library/Src/Menu/Dialog/DialogFile.asm
===================================================================
--- trunk/Assembly_Library/Src/Menu/Dialog/DialogFile.asm	(revision 593)
+++ trunk/Assembly_Library/Src/Menu/Dialog/DialogFile.asm	(revision 596)
@@ -49,5 +49,8 @@
 	pop		dx
 	cmp		BYTE [si+FILE_DIALOG_IO.bUserCancellation], TRUE
-	je		Drive_SetDefaultFromDL
+	jne		SHORT .UserDidNotCancel
+	jmp		Drive_SetDefaultFromDL
+
+.UserDidNotCancel:
 	ret
 
Index: trunk/Assembly_Library/Src/Menu/Dialog/DialogMessage.asm
===================================================================
--- trunk/Assembly_Library/Src/Menu/Dialog/DialogMessage.asm	(revision 593)
+++ trunk/Assembly_Library/Src/Menu/Dialog/DialogMessage.asm	(revision 596)
@@ -30,5 +30,5 @@
 ;		Nothing
 ;	Corrupts registers:
-;		AX, BX, CX, DX, SI, DI
+;		AX, BX, CX, DX, DI
 ;--------------------------------------------------------------------
 ALIGN JUMP_ALIGN
Index: trunk/Assembly_Library/Src/Menu/Dialog/DialogProgress.asm
===================================================================
--- trunk/Assembly_Library/Src/Menu/Dialog/DialogProgress.asm	(revision 593)
+++ trunk/Assembly_Library/Src/Menu/Dialog/DialogProgress.asm	(revision 596)
@@ -30,5 +30,5 @@
 ;		Nothing
 ;	Corrupts registers:
-;		AX, BX, CX, DX, SI, DI
+;		AX, BX, CX, DX, DI
 ;--------------------------------------------------------------------
 ALIGN JUMP_ALIGN
Index: trunk/Assembly_Library/Src/Menu/Dialog/DialogSelection.asm
===================================================================
--- trunk/Assembly_Library/Src/Menu/Dialog/DialogSelection.asm	(revision 593)
+++ trunk/Assembly_Library/Src/Menu/Dialog/DialogSelection.asm	(revision 596)
@@ -30,5 +30,5 @@
 ;		Nothing
 ;	Corrupts registers:
-;		AX, BX, CX, DX, SI, DI
+;		AX, BX, CX, DX, DI
 ;--------------------------------------------------------------------
 ALIGN JUMP_ALIGN
Index: trunk/Assembly_Library/Src/Menu/Dialog/DialogString.asm
===================================================================
--- trunk/Assembly_Library/Src/Menu/Dialog/DialogString.asm	(revision 593)
+++ trunk/Assembly_Library/Src/Menu/Dialog/DialogString.asm	(revision 596)
@@ -29,5 +29,5 @@
 ;		Nothing
 ;	Corrupts registers:
-;		AX, BX, CX, DX, SI, DI
+;		AX, BX, CX, DX, DI
 ;--------------------------------------------------------------------
 ALIGN JUMP_ALIGN
Index: trunk/Assembly_Library/Src/Menu/Dialog/DialogWord.asm
===================================================================
--- trunk/Assembly_Library/Src/Menu/Dialog/DialogWord.asm	(revision 593)
+++ trunk/Assembly_Library/Src/Menu/Dialog/DialogWord.asm	(revision 596)
@@ -30,5 +30,5 @@
 ;		Nothing
 ;	Corrupts registers:
-;		AX, BX, CX, DX, SI, DI
+;		AX, BX, CX, DX, DI
 ;--------------------------------------------------------------------
 ALIGN JUMP_ALIGN
@@ -93,5 +93,5 @@
 ;		Nothing (User input stored to WORD_DIALOG_IO)
 ;	Corrupts registers:
-;		AX, BX, CX, DX, SI, DI
+;		AX, BX, CX, DX, SI, DI, DS
 ;--------------------------------------------------------------------
 ALIGN JUMP_ALIGN
Index: trunk/Assembly_Library/Src/Util/Registers.asm
===================================================================
--- trunk/Assembly_Library/Src/Util/Registers.asm	(revision 593)
+++ trunk/Assembly_Library/Src/Util/Registers.asm	(revision 596)
@@ -21,4 +21,9 @@
 SECTION .text
 
+%ifdef EXCLUDE_FROM_XUB
+	%ifndef MODULE_EBIOS
+		%define EXCLUDE
+	%endif
+%endif
 ;--------------------------------------------------------------------
 ; Registers_ExchangeDSSIwithESDI
@@ -30,4 +35,5 @@
 ;		Nothing
 ;--------------------------------------------------------------------
+%ifndef EXCLUDE
 ALIGN JUMP_ALIGN
 Registers_ExchangeDSSIwithESDI:
@@ -38,4 +44,6 @@
 	xchg	si, di
 	ret
+%endif
+%undef EXCLUDE
 
 
@@ -48,5 +56,5 @@
 ;		Nothing
 ;	Returns:
-;		Copies farm pointer to different segment/pointer register pair
+;		Copies far pointer to different segment/pointer register pair
 ;	Corrupts registers:
 ;		Nothing
Index: trunk/Assembly_Library/Src/Util/Size.asm
===================================================================
--- trunk/Assembly_Library/Src/Util/Size.asm	(revision 593)
+++ trunk/Assembly_Library/Src/Util/Size.asm	(revision 596)
@@ -159,5 +159,5 @@
 ALIGN UTIL_SIZE_JUMP_ALIGN
 Size_ConvertSectorCountInBXDXAXtoKiB:	; unused entrypoint ok
-Size_DivideBXDXAXbyTwo:
+Size_DivideBXDXAXbyTwo:					; unused entrypoint ok
 	shr		bx, 1					; Divide sector count by 2...
 	rcr		dx, 1					; ...to get disk size in...
