Index: trunk/Assembly_Library/Inc/Debug.inc
===================================================================
--- trunk/Assembly_Library/Inc/Debug.inc	(revision 589)
+++ trunk/Assembly_Library/Inc/Debug.inc	(revision 590)
@@ -22,6 +22,6 @@
 
 	mov		ax, %1
-	mov		bx, %2
-	CALL_DISPLAY_LIBRARY PrintWordFromAXwithBaseInBX
+	mov		bl, %2
+	CALL_DISPLAY_LIBRARY PrintWordFromAXWithBaseInBL
 %ifndef EXCLUDE_FROM_XTIDE_UNIVERSAL_BIOS
 	call	Keyboard_RemoveAllKeystrokesFromBuffer
Index: trunk/Assembly_Library/Inc/Display.inc
===================================================================
--- trunk/Assembly_Library/Inc/Display.inc	(revision 589)
+++ trunk/Assembly_Library/Inc/Display.inc	(revision 590)
@@ -82,7 +82,7 @@
 	.FormatNullTerminatedStringFromCSSI				resb	2
 %ifndef EXCLUDE_FROM_XTIDE_UNIVERSAL_BIOS
-	.PrintSignedWordFromAXWithBaseInBX				resb	2
-%endif
-	.PrintWordFromAXwithBaseInBX					resb	2
+	.PrintSignedWordFromAXWithBaseInBL				resb	2
+%endif
+	.PrintWordFromAXWithBaseInBL					resb	2
 %ifndef EXCLUDE_FROM_XTIDE_UNIVERSAL_BIOS OR EXCLUDE_FROM_XTIDECFG
 	.PrintQWordFromSSBPwithBaseInBX					resb	2
Index: trunk/Assembly_Library/Src/Display/Display.asm
===================================================================
--- trunk/Assembly_Library/Src/Display/Display.asm	(revision 589)
+++ trunk/Assembly_Library/Src/Display/Display.asm	(revision 590)
@@ -97,7 +97,7 @@
 	%define FormatNullTerminatedStringFromCSSI				Display_FormatNullTerminatedStringFromCSSI
 %ifndef EXCLUDE_FROM_XTIDE_UNIVERSAL_BIOS
-	%define PrintSignedWordFromAXWithBaseInBX				DisplayPrint_SignedWordFromAXWithBaseInBX
+	%define PrintSignedWordFromAXWithBaseInBL				DisplayPrint_SignedWordFromAXWithBaseInBL
 %endif
-	%define PrintWordFromAXwithBaseInBX						DisplayPrint_WordFromAXWithBaseInBX
+	%define PrintWordFromAXWithBaseInBL						DisplayPrint_WordFromAXWithBaseInBL
 %ifndef EXCLUDE_FROM_XTIDE_UNIVERSAL_BIOS OR EXCLUDE_FROM_XTIDECFG
 	%define PrintQWordFromSSBPwithBaseInBX					DisplayPrint_QWordFromSSBPwithBaseInBX
Index: trunk/Assembly_Library/Src/Display/DisplayFormat.asm
===================================================================
--- trunk/Assembly_Library/Src/Display/DisplayFormat.asm	(revision 589)
+++ trunk/Assembly_Library/Src/Display/DisplayFormat.asm	(revision 590)
@@ -334,6 +334,6 @@
 d_FormatSignedDecimalWord:
 	mov		ax, [bp]
-	mov		bx, 10
-	jmp		DisplayPrint_SignedWordFromAXWithBaseInBX
+	mov		bl, 10
+	jmp		DisplayPrint_SignedWordFromAXWithBaseInBL
 %endif
 
@@ -341,12 +341,12 @@
 u_FormatUnsignedDecimalWord:
 	mov		ax, [bp]
-	mov		bx, 10
-	jmp		DisplayPrint_WordFromAXWithBaseInBX
+	mov		bl, 10
+	jmp		DisplayPrint_WordFromAXWithBaseInBL
 
 ALIGN DISPLAY_JUMP_ALIGN
 x_FormatHexadecimalWord:
 	mov		ax, [bp]
-	mov		bx, 16
-	call	DisplayPrint_WordFromAXWithBaseInBX
+	mov		bl, 16
+	call	DisplayPrint_WordFromAXWithBaseInBL
 	mov		al, 'h'
 	jmp		DisplayPrint_CharacterFromAL
@@ -354,8 +354,7 @@
 ALIGN DISPLAY_JUMP_ALIGN
 I_FormatDashForZero:
-	mov		ax, [bp]
-	test	ax,ax
-	jnz		u_FormatUnsignedDecimalWord
-	mov		[bp], word g_szDashForZero
+	cmp		WORD [bp], 0
+	jne		SHORT u_FormatUnsignedDecimalWord
+	mov		WORD [bp], g_szDashForZero
 ;;; fall-through
 
@@ -366,5 +365,5 @@
 	mov		si, [bp]
 
-	cmp		si, byte 07fh		;  well within the boundaries of ROMVARS_size
+	cmp		si, BYTE 7Fh		; well within the boundaries of ROMVARS_size
 	jb		.notFormatted
 
Index: trunk/Assembly_Library/Src/Display/DisplayPrint.asm
===================================================================
--- trunk/Assembly_Library/Src/Display/DisplayPrint.asm	(revision 589)
+++ trunk/Assembly_Library/Src/Display/DisplayPrint.asm	(revision 590)
@@ -83,20 +83,20 @@
 
 ;--------------------------------------------------------------------
-; DisplayPrint_SignedWordFromAXWithBaseInBX
+; DisplayPrint_SignedWordFromAXWithBaseInBL
 ;	Parameters:
 ;		AX:		Word to display
-;		BX:		Integer base (binary=2, octal=8, decimal=10, hexadecimal=16)
-;		DS:		BDA segment (zero)
-;		ES:DI:	Ptr to cursor location in video RAM
-;	Returns:
-;		DI:		Updated offset to video RAM
-;	Corrupts registers:
-;		AX, DX
+;		BL:		Integer base (binary=2, octal=8, decimal=10, hexadecimal=16)
+;		DS:		BDA segment (zero)
+;		ES:DI:	Ptr to cursor location in video RAM
+;	Returns:
+;		DI:		Updated offset to video RAM
+;	Corrupts registers:
+;		AX, BH, DX
 ;--------------------------------------------------------------------
 %ifndef EXCLUDE_FROM_XTIDE_UNIVERSAL_BIOS
 ALIGN DISPLAY_JUMP_ALIGN
-DisplayPrint_SignedWordFromAXWithBaseInBX:
-	test	ax, ax
-	jns		SHORT DisplayPrint_WordFromAXWithBaseInBX
+DisplayPrint_SignedWordFromAXWithBaseInBL:
+	sahf
+	jns		SHORT DisplayPrint_WordFromAXWithBaseInBL
 
 	push	ax
@@ -105,26 +105,27 @@
 	pop		ax
 	neg		ax
-	; Fall to DisplayPrint_WordFromAXWithBaseInBX
-%endif
-
-
-;--------------------------------------------------------------------
-; DisplayPrint_WordFromAXWithBaseInBX
+	; Fall to DisplayPrint_WordFromAXWithBaseInBL
+%endif
+
+
+;--------------------------------------------------------------------
+; DisplayPrint_WordFromAXWithBaseInBL
 ;	Parameters:
 ;		AX:		Word to display
-;		BX:		Integer base (binary=2, octal=8, decimal=10, hexadecimal=16)
-;		DS:		BDA segment (zero)
-;		ES:DI:	Ptr to cursor location in video RAM
-;	Returns:
-;		DI:		Updated offset to video RAM
-;	Corrupts registers:
-;		AX, DX
+;		BL:		Integer base (binary=2, octal=8, decimal=10, hexadecimal=16)
+;		DS:		BDA segment (zero)
+;		ES:DI:	Ptr to cursor location in video RAM
+;	Returns:
+;		DI:		Updated offset to video RAM
+;	Corrupts registers:
+;		AX, BH, DX
 ;--------------------------------------------------------------------
 %ifndef MODULE_STRINGS_COMPRESSED
 ALIGN DISPLAY_JUMP_ALIGN
-DisplayPrint_WordFromAXWithBaseInBX:
+DisplayPrint_WordFromAXWithBaseInBL:
 	push	cx
 
 	xor		cx, cx
+	xor		bh, bh				; Base now in BX
 ALIGN DISPLAY_JUMP_ALIGN
 .DivideLoop:
Index: trunk/Assembly_Library/Src/LibraryTests.asm
===================================================================
--- trunk/Assembly_Library/Src/LibraryTests.asm	(revision 589)
+++ trunk/Assembly_Library/Src/LibraryTests.asm	(revision 590)
@@ -598,8 +598,8 @@
 	pop		ds
 	mov		si, .rgwItems
-	mov		bx, 16
+	mov		bl, 16
 .Loop:
 	lodsw
-	CALL_DISPLAY_LIBRARY PrintSignedWordFromAXWithBaseInBX
+	CALL_DISPLAY_LIBRARY PrintSignedWordFromAXWithBaseInBL
 	CALL_DISPLAY_LIBRARY PrintNewlineCharacters
 	loop	.Loop
