Changeset 623 in xtideuniversalbios for trunk/XTIDE_Universal_BIOS/Inc/IdeIO.inc


Ignore:
Timestamp:
Jun 15, 2022, 2:48:59 PM (23 months ago)
Author:
krille_n_
Message:

Changes:

  • Reversed the change to IdeDPT.asm in r622 as it didn't work as intended.
  • Reordered some procedures to reduce alignment padding.
  • Added two new defines (EXTRA_LOOP_UNROLLING_SMALL and EXTRA_LOOP_UNROLLING_LARGE) that should improve transfer speeds for some hardware combinations, specifically 808x CPUs with any IDE controller using port I/O and any CPU with XT-IDE controllers.
  • Added a new define (USE_086) for use with 8086 and V30 CPUs only. Unlike the other USE_x86 defines, this define will not change the instruction set used and is therefore compatible with all CPUs. However, it will apply padding to make jump destinations WORD aligned which should improve performance on 8086/V30 CPUs but on 8088/V20 CPUs there is no benefit and, in addition to wasting ROM space, it might in fact be slower on these machines. Since the vast majority of XT class machines are using 8088/V20 CPUs this define is not used in the official XT builds - it's primarily intended for custom BIOS builds.
  • XTIDECFG: The URL to the support forum has been updated.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/XTIDE_Universal_BIOS/Inc/IdeIO.inc

    r618 r623  
    146146%endmacro
    147147
     148%macro UNROLL_SECTORS_IN_CX_TO_16WORDS 0
     149%ifdef USE_186
     150    shl     cx, 4
     151%else
     152    mov     ch, cl
     153    mov     cl, 4
     154    shr     cx, cl
     155%endif
     156%endmacro
     157
     158%macro UNROLL_SECTORS_IN_CX_TO_32WORDS 0
     159%ifdef USE_186
     160    shl     cx, 3
     161%else
     162    shl     cx, 1
     163    shl     cx, 1
     164    shl     cx, 1
     165%endif
     166%endmacro
     167
    148168
    149169%endif ; IDE_IO_INC
Note: See TracChangeset for help on using the changeset viewer.