Changeset 601 in xtideuniversalbios for trunk/Assembly_Library/Inc


Ignore:
Timestamp:
Feb 14, 2019, 7:38:08 PM (6 years ago)
Author:
Krister Nordvall
Message:

Changes:

  • Building the BIOS now works again.
  • Added a new IDE device type/transfer mode for use only with XT-IDE rev 2+ (or Chuck(G)-modded rev 1) cards installed in any of the following machines: Olivetti M24, AT&T PC6300, Xerox 6060 and Logabax Persona 1600. This new transfer mode is slightly faster than the regular XT-IDE rev 1 device type and requires that the card is configured for High Speed mode (or, in case of the card being a rev 1 card, has the Chuck(G) mod done). The new device type is called "XTIDE rev 2 (Olivetti M24)" in XTIDECFG.
  • Made some minor improvements to the library code that handles 'Drive Not Ready' errors in XTIDECFG.
  • Optimizations.
Location:
trunk/Assembly_Library/Inc
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Assembly_Library/Inc/BiosFunctions.inc

    r596 r601  
    55
    66; BIOS interrupts
    7 BIOS_VIDEO_INTERRUPT_10h        EQU     10h
    8 BIOS_EQUIPMENT_INTERRUPT_11h    EQU     11h
    9 BIOS_DISK_INTERRUPT_13h         EQU     13h
    10 BIOS_SYSTEM_INTERRUPT_15h       EQU     15h
    11 BIOS_KEYBOARD_INTERRUPT_16h     EQU     16h
    12 BIOS_BOOT_FAILURE_INTERRUPT_18h EQU     18h
    13 BIOS_BOOT_LOADER_INTERRUPT_19h  EQU     19h
    14 BIOS_TIME_PCI_PNP_1Ah           EQU     1Ah
    15 BIOS_DISKETTE_INTERRUPT_40h     EQU     40h
    16 HD0_DPT_POINTER_41h             EQU     41h
    17 HD1_DPT_POINTER_46h             EQU     46h
     7BIOS_VIDEO_INTERRUPT_10h                EQU     10h
     8BIOS_EQUIPMENT_INTERRUPT_11h            EQU     11h
     9BIOS_DISK_INTERRUPT_13h                 EQU     13h
     10BIOS_SYSTEM_INTERRUPT_15h               EQU     15h
     11BIOS_KEYBOARD_INTERRUPT_16h             EQU     16h
     12BIOS_BOOT_FAILURE_INTERRUPT_18h         EQU     18h
     13BIOS_BOOT_LOADER_INTERRUPT_19h          EQU     19h
     14BIOS_TIME_PCI_PNP_INTERRUPT_1Ah         EQU     1Ah
     15BIOS_SYSTEM_TIMER_TICK_INTERRUPT_1Ch    EQU     1Ch
     16BIOS_DISKETTE_INTERRUPT_40h             EQU     40h
     17HD0_DPT_POINTER_41h                     EQU     41h
     18HD1_DPT_POINTER_46h                     EQU     46h
    1819
    1920; Hardware interrupts
    20 HARDWARE_IRQ_0_INTERRUPT_08h    EQU     08h     ; System timer
    21 HARDWARE_IRQ_1_INTERRUPT_09h    EQU     09h     ; Keyboard
    22 HARDWARE_IRQ_2_INTERRUPT_0Ah    EQU     0Ah
    23 HARDWARE_IRQ_3_INTERRUPT_0Bh    EQU     0Bh
    24 HARDWARE_IRQ_4_INTERRUPT_0Ch    EQU     0Ch
    25 HARDWARE_IRQ_5_INTERRUPT_0Dh    EQU     0Dh
    26 HARDWARE_IRQ_6_INTERRUPT_0Eh    EQU     0Eh
    27 HARDWARE_IRQ_7_INTERRUPT_0Fh    EQU     0Fh
    28 HARDWARE_IRQ_8_INTERRUPT_70h    EQU     70h
    29 HARDWARE_IRQ_9_INTERRUPT_71h    EQU     71h
    30 HARDWARE_IRQ_10_INTERRUPT_72h   EQU     72h
    31 HARDWARE_IRQ_11_INTERRUPT_73h   EQU     73h
    32 HARDWARE_IRQ_12_INTERRUPT_74h   EQU     74h
    33 HARDWARE_IRQ_13_INTERRUPT_75h   EQU     75h
    34 HARDWARE_IRQ_14_INTERRUPT_76h   EQU     76h
    35 HARDWARE_IRQ_15_INTERRUPT_77h   EQU     77h
    36 
     21HARDWARE_IRQ_0_INTERRUPT_08h            EQU     08h     ; System timer
     22HARDWARE_IRQ_1_INTERRUPT_09h            EQU     09h     ; Keyboard
     23HARDWARE_IRQ_2_INTERRUPT_0Ah            EQU     0Ah
     24HARDWARE_IRQ_3_INTERRUPT_0Bh            EQU     0Bh
     25HARDWARE_IRQ_4_INTERRUPT_0Ch            EQU     0Ch
     26HARDWARE_IRQ_5_INTERRUPT_0Dh            EQU     0Dh
     27HARDWARE_IRQ_6_INTERRUPT_0Eh            EQU     0Eh
     28HARDWARE_IRQ_7_INTERRUPT_0Fh            EQU     0Fh
     29HARDWARE_IRQ_8_INTERRUPT_70h            EQU     70h
     30HARDWARE_IRQ_9_INTERRUPT_71h            EQU     71h
     31HARDWARE_IRQ_10_INTERRUPT_72h           EQU     72h
     32HARDWARE_IRQ_11_INTERRUPT_73h           EQU     73h
     33HARDWARE_IRQ_12_INTERRUPT_74h           EQU     74h
     34HARDWARE_IRQ_13_INTERRUPT_75h           EQU     75h
     35HARDWARE_IRQ_14_INTERRUPT_76h           EQU     76h
     36HARDWARE_IRQ_15_INTERRUPT_77h           EQU     77h
    3737
    3838; BIOS video functions
    39 SET_VIDEO_MODE                  EQU     00h
    40 SET_TEXT_MODE_CURSOR_SHAPE      EQU     01h
    41 SET_CURSOR_POSITION             EQU     02h
    42 GET_CURSOR_POSITION_AND_SIZE    EQU     03h
    43 SELECT_ACTIVE_DISPLAY_PAGE      EQU     05h
    44 TELETYPE_OUTPUT                 EQU     0Eh
     39SET_VIDEO_MODE                          EQU     00h
     40SET_TEXT_MODE_CURSOR_SHAPE              EQU     01h
     41SET_CURSOR_POSITION                     EQU     02h
     42GET_CURSOR_POSITION_AND_SIZE            EQU     03h
     43SELECT_ACTIVE_DISPLAY_PAGE              EQU     05h
     44TELETYPE_OUTPUT                         EQU     0Eh
    4545
    4646; BIOS disk functions
    47 READ_SECTORS_INTO_MEMORY        EQU     02h
    48 GET_DRIVE_PARAMETERS            EQU     08h
    49 RESET_HARD_DISK                 EQU     0Dh
    50 GET_DISK_TYPE                   EQU     15h
    51 LOTECH_XTCF_FEATURES            EQU     1Eh
    52 GET_DRIVE_INFORMATION           EQU     25h
    53 CHECK_EXTENSIONS_PRESENT        EQU     41h
    54 GET_EXTENDED_DRIVE_INFORMATION  EQU     48h
     47READ_SECTORS_INTO_MEMORY                EQU     02h
     48GET_DRIVE_PARAMETERS                    EQU     08h
     49RESET_HARD_DISK                         EQU     0Dh
     50GET_DISK_TYPE                           EQU     15h
     51LOTECH_XTCF_FEATURES                    EQU     1Eh
     52GET_DRIVE_INFORMATION                   EQU     25h
     53CHECK_EXTENSIONS_PRESENT                EQU     41h
     54GET_EXTENDED_DRIVE_INFORMATION          EQU     48h
    5555
    5656; BIOS system functions
    57 OS_HOOK_DEVICE_BUSY             EQU     90h
    58 OS_HOOK_DEVICE_POST             EQU     91h
     57OS_HOOK_DEVICE_BUSY                     EQU     90h
     58OS_HOOK_DEVICE_POST                     EQU     91h
    5959
    6060; BIOS keyboard functions
    61 GET_KEYSTROKE                   EQU     00h
    62 CHECK_FOR_KEYSTROKE             EQU     01h
     61GET_KEYSTROKE                           EQU     00h
     62CHECK_FOR_KEYSTROKE                     EQU     01h
    6363
    6464; BIOS system functions
    65 EVENT_WAIT                      EQU     86h
     65EVENT_WAIT                              EQU     86h
    6666
    67 ; BIOS PCI 2.0+ functions
    68 PCI_INSTALLATION_CHECK          EQU     0B101h
    69 
     67; BIOS PCI 2.0c+ functions
     68PCI_INSTALLATION_CHECK                  EQU     0B101h
    7069
    7170%endif ; BIOS_FUNCTIONS_INC
  • trunk/Assembly_Library/Inc/DosFunctions.inc

    r592 r601  
    3636; DOS errors
    3737ERR_DOS_FUNCTION_NUMBER_INVALID                     EQU     01h
     38ERR_DOS_PATH_NOT_FOUND                              EQU     03h
    3839ERR_DOS_INVALID_DRIVE                               EQU     0Fh
     40ERR_DOS_NO_MORE_FILES                               EQU     12h
    3941ERR_DOS_DRIVE_NOT_READY                             EQU     15h
    4042
Note: See TracChangeset for help on using the changeset viewer.