Retro video games delivered to your door every month!
Click above to get retro games delivered to your door ever month!
X-Hacker.org- Interrupts & Ports - Norton Guide http://www.X-Hacker.org [<<Previous Entry] [^^Up^^] [Next Entry>>] [Menu] [About The Guide]

        DOS Critical error handler address (INT 24h)

        Automatically called upon detection of unrecoverable
        I/O error. Normally points to routine in resident part
        of COMMAND.COM that prints "Abort, Retry, Ignore, Fail ?"
        message and takes the reply, but may be overridden if desired.

        Provides the following values in registers on entry to
        interrupt handler:

          AH: bit 7 = 0 disk I/O error
                    = 1 other error -- if block device, bad FAT
                                  -- if char device, code in DI
              bit 6  unused
              bit 5 = 1 if Ignore allowed, 0 if not (DOS 3.2 ???)
              bit 4 = 1 if Retry allowed, 0 if not (DOS 3.2 ???)
              bit 3 = 1 if Fail allowed, 0 if not (DOS 3.2+)
              bit 2 \ disk area of error  00 = DOS area  01 = FAT
              bit 1 /                     10 = root dir  11 = data area
              bit 0 = 1 if write, 0 if read

          AL: Drive number if AH bit 7 = 1, otherwise undefined

          BP:SI = address of device header for which error occurred
                  block device if high bit of BP:SI+4 = 1

          Low byte of DI:
              00h   Write-protect error
              01h   Unknown unit
              02h   Drive not ready
              03h   Unknown command
              04h   Data error (bad CRC)
              05h   Bad request structure length
              06h   Seek error
              07h   Unknown media type
              08h   Sector not found
              09h   Printer out of paper
              0Ah   Write fault
              0Bh   Read fault
              0Ch   General failure
              0Dh   Sharing violation
              0Eh   Lock violation
              0Fh   Invalid disk change
              10h   FCB unavailable
              11h   Sharing buffer overflow

        Handler must return
          AL = 00 ignore error
             = 01 retry operation
             = 02 terminate program through INT 22h
             = 03 fail system call in progress (DOS 3.2+)

Online resources provided by: http://www.X-Hacker.org --- NG 2 HTML conversion by Dave Pearson