
Change log for eltorito.asm, by Bart Lagerweij

Jun 25, 2009 - License source code under the MIT license

Jun 6, 2002 - v1.2
Eltorito.sys does now also finds the correct driver number for the booted CD-Rom
on a Dell PC with very buggy BIOS. It does not clear the carry flag after a
succesfull call to int13/ax=4b01h call. Other PC's also using Phoenix BIOS
version 1.10 A14, or alike maybe also benefit from this "workaround".

Mar 9, 2002
- All read requests are now retried 5 times.
- Bug fix, had...
	cmp	ax, 3FFFh		;Too large?
	ja	ReadLBad		;If yes
  seperated from...
	mov	ax,es:[bx+18]		;Get number of sectors to read
	mov	word ptr [SpecPkt+2],ax
  so, it was checking "wild" ax values...
- Some cleanup and small changes
- The tracers give trouble when using SHCD..
- Reverted proc ReadL back to Rev. 0.15BETA

Mar 5, 2002
- Bug fix, when changing CD media some machines would "hang" in the PriVolDesc
  routine.
- Added printing of TRACER characters to trace the bug above
- Major cleanup and now using ASCIIZ strings

May 9, 2001
- Fixed a "pad devicename with spaces" bug, this only happened when a device
  name was used with less than 8 characters, for example, "MSCD000" became
  "MSCD000("
- Bug fix, when eltorito.sys was called with invalid command line parameters,
  garbage was printed and sometimes followed by "system halted" that has been
  there since the very first version of eltorito.sys. I know that because I
  had the bug back then. When loading eltorito.sys using a device loader,
  for example "device.com eltorito.sys /test:123" garbage was printed instead
  of "No device name found." "driver not installed".
  Changed the error message to include a "usage" string.

May 8, 2001
- If diskemu.bin is loaded eltorito.sys uses the drivenumber from diskemu
  A call is made to "diskemu/Get status" (INT13/AX=5400) and the drivenumber is returned in CL
  This should fix boot problems on Dell PCs (YES!)
  When diskemu.bin is not loaded, eltorito still loops all drive numbers using eltorito calls.
- Removed "press Escape..."
- When the Alt-key is pressed (and holded) more info is printed and eltorito.sys halts

