diff -aur lilo-22.7.2/first.S lilo-22.7.2-modified/first.S
--- lilo-22.7.2/first.S	2005-10-19 20:03:41.000000000 -0400
+++ lilo-22.7.2-modified/first.S	2006-08-02 14:46:36.000000000 -0400
@@ -18,7 +18,10 @@
 # define DEBUG_NEW
 
 # undef VIDEO_ENABLE
-# define VIDEO_ENABLE 3
+! --------------------------- MODIFIED BY ALEX: -----------------------------
+! # define VIDEO_ENABLE 3
+# define VIDEO_ENABLE 0
+! -------------------------- END OF ALEX'S MODS  ----------------------------
 
 # define VALIDATE !DEBUG	/* adds 0Dh bytes */
 # define SECOND_CHECK !DEBUG	/* adds  5h bytes */
@@ -531,11 +534,13 @@
 ; display - write byte in AL to console
 ;	preserves all register contents
 ; 
-display: pusha		! make sure no register is changed
-	mov	bx,#7		!  BH=0, BL=07
-	mov	ah,#14
-	int	0x10
-	popa		! restore all the registers
+! -------------------------- MODIFED BY ALEX -------------------------------
+display: !pusha		! make sure no register is changed
+	!mov	bx,#7		!  BH=0, BL=07
+	!mov	ah,#14
+	!int	0x10
+	!popa		! restore all the registers
+! ------------------------- END OF ALEX'S MODS -----------------------------
 	ret
 
 #ifdef DEBUG_LARGE
diff -aur lilo-22.7.2/Makefile lilo-22.7.2-modified/Makefile
--- lilo-22.7.2/Makefile	2006-07-05 12:03:14.000000000 -0400
+++ lilo-22.7.2-modified/Makefile	2004-02-13 17:04:59.000000000 -0500
@@ -63,9 +63,14 @@
 #		  requested by VMware users (new, experimental)
 #   XL_SECS=n	  Support for extra large (non-standard) floppies.
 
-CONFIG=-DBDATA -DDSECS=3 -DEVMS -DIGNORECASE -DLVM -DNOKEYBOARD -DONE_SHOT \
-   -DPASS160 -DREISERFS -DREWRITE_TABLE -DSOLO_CHAIN -DVERSION -DVIRTUAL \
-   -DATARAID -DMDPRAID
+#CONFIG=-DBDATA -DDSECS=3 -DEVMS -DIGNORECASE -DLVM -DNOKEYBOARD -DONE_SHOT \
+#   -DPASS160 -DREISERFS -DREWRITE_TABLE -DSOLO_CHAIN -DVERSION -DVIRTUAL \
+#   -DATARAID -DMDPRAID
+
+# I removed EVMS, LVM, PASS160, VIRTUAL, ATARAID, MDPRAID, REISERFS,
+# and added NOSERIAL
+CONFIG=-DBDATA -DDSECS=3 -DIGNORECASE -DNOKEYBOARD -DONE_SHOT \
+   -DREWRITE_TABLE -DSOLO_CHAIN -DVERSION -DNOSERIAL
 
 # set the compiler optimization level
 
@@ -77,16 +82,19 @@
 CFG_DIR=/etc
 BOOT_DIR=/boot
 USRSBIN_DIR=/usr/sbin
+
+# I commented that line out -AH
 # set the following if you wish LILO.COM to be installed
-DOS_DIR=/dosC/boot
+#DOS_DIR=/dosC/boot
+
 #
 #MAN_DIR=`if [ -z "$(whereis lilo | grep 'lilo.8')" ]; then \
 #	whereis lilo | sed -e "sX.* /usrX/usrX" -e "sX/man8/lilo.8.*XX" ; \
 #	elif [ -f /usr/bin/manpath ]; then \
 #  manpath | sed "s/:.*//"; else echo /usr/man; fi`
 #
-MAN_DIR=`if [ -f /usr/bin/manpath ]; then \
-	manpath | sed "s/:.*//"; else echo /usr/man; fi`
+# I changed this to /tmp -AH
+MAN_DIR=/tmp
 BUILTIN=1
 
 PCONFIG=$(KVER) $(LILO) `( if [ -r $$ROOT/etc/lilo.defines ]; then \
@@ -155,9 +163,10 @@
 # everything needed to run, just short of installation
 #
 all:	lilo bootsect.b diag1.img # OBSOLETE:  $(BOOTS) edit dparam.com activate
-	if [ -x /usr/bin/bcc -o -x /usr/local/bin/bcc ]; then \
-		make diagnostic; \
-		make dosexe; fi
+# commented this stuff below -AH
+#	if [ -x /usr/bin/bcc -o -x /usr/local/bin/bcc ]; then \
+#		make diagnostic; \
+#		make dosexe; fi
 
 #
 # everything above plus the statically linked version
diff -aur lilo-22.7.2/second.S lilo-22.7.2-modified/second.S
--- lilo-22.7.2/second.S	2006-07-05 12:02:55.000000000 -0400
+++ lilo-22.7.2-modified/second.S	2006-08-05 14:30:06.000000000 -0400
@@ -662,11 +662,65 @@
 #endif
 kbd_present:
 #endif
-	BEG_FS
-	SEG_FS		; enter boot prompt ?
-	test	byte ptr par1_prompt+SSDIFF,#FLAG_PROMPT	;DSC_OFF+15+SSDIFF,#0
-	END_FS
+
+; -------------------------------------------------------
+; BEGIN ALEX'S INSERTED CODE:
+; function isAlexBios
+; Tests a byte in the BIOS to see if it's my cool magical
+; modified graphical-boot BIOS.
+; If it IS my BIOS, the ZERO flag will be set.  Otherwise
+; the flag will be cleared.
+; -------------------------------------------------------
+; BIOS's system rom code is mapped so that address 0x10000
+; in the rom file starts at address 0xF0000.  So this is
+; represented by segment 0xF000 offset 0x0000.  In the
+; rom file, byte 1F4D9 was originally 0xCD (INT), in my
+; new (pure-graphical-boot) code the value is 0x90 (NOP).
+
+; whatever code was executing above, skip over this
+; inserted function.
+
+	jmp EndOfIsAlexBios
+
+IsAlexBios:
+	; NOTE: lodsb loads a byte from [DS:SI] into AL
+	push ax
+	push ds
+	push si
+	mov ax, #0xF000
+	mov ds, ax
+	mov ax, #0xF4D9
+	mov si, ax
+	lodsb
+	cmp byte al, #0x90	; do compare
+	pop si
+	pop ds
+	pop ax
+	ret
+EndOfIsAlexBios:
+; -------------------------------------------------------
+; END OF ALEX'S INSERTED CODE
+; -------------------------------------------------------
+
+; -------------------------------------------------------
+; START OF ALEX'S MOD:
+; Original code:
+; -------------------------------------------------------
+;	BEG_FS
+;	SEG_FS		; enter boot prompt ?
+;	test	byte ptr par1_prompt+SSDIFF,#FLAG_PROMPT	;DSC_OFF+15+SSDIFF,#0
+;	END_FS
+
+; -------------------------------------------------------
+; New code:
+; -------------------------------------------------------
+	call IsAlexBios
+; -------------------------------------------------------
+; END OF ALEX'S MOD
+; -------------------------------------------------------
+
 	jnz	extp		; yes -> check for external parameters
+
 skip_prompt:
 	mov	nodfl,#bfirst	; boot first image if falling through
 	call	waitsh		; wait for a shifting key
@@ -695,6 +749,7 @@
 	mov	si,EX_OFF+4	; pointer to the command line
 	END_FS
 	seg	es
+
 	cmp	byte ptr (si),#0 ; empty ?
 	je	iloop		; yes -> enter interactive mode
 	jmp	niloop		; enter non-interactive mode
@@ -2262,7 +2317,23 @@
 
 ! Display a NUL-terminated string on the console
 
-say:	mov	al,(bx)		; get byte
+; -------------------------------------------------------
+; START OF ALEX'S MOD:
+; Original code:
+; -------------------------------------------------------
+;say:	mov	al,(bx)		; get byte
+; -------------------------------------------------------
+; New code:
+; -------------------------------------------------------
+say:
+	call IsAlexBios
+	jnz say_continue
+	ret
+say_continue:
+	mov	al,(bx)
+; -------------------------------------------------------
+; END OF ALEX'S MOD
+; -------------------------------------------------------
 	or	al,al		; NUL ?
 	jnz	say_loop	; not the end
 	ret
@@ -2278,9 +2349,19 @@
 
 ! Display one character on the console
 
+
 display:
+; -------------------------------------------------------
+; ALEX'S INSERTED CODE:
+; -------------------------------------------------------
+	call IsAlexBios
+	jnz display_continue
+	ret
+display_continue:
+; -------------------------------------------------------
+; END OF ALEX'S MOD
+; -------------------------------------------------------
 	push	bx		; save BX
-
 #ifndef LCF_NOSERIAL
 	call	serdisp
 #endif
