Ignore:
Timestamp:
Nov 13, 2011, 3:38:40 PM (12 years ago)
Author:
krille_n_@…
google:author:
krille_n_@hotmail.com
Message:

Changes to all parts of the project:

  • Size optimizations.
  • Added a define (EXCLUDE_FROM_XTIDECFG) to exclude unused library code from XTIDECFG.
  • Tried to minimize time spent with interrupts disabled.
  • Some minor attempts to improve speed (reordering instructions etc).
  • Tried to improve readability, did some cleanup and fixed some errors in comments.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/XTIDE_Universal_BIOS/Src/VariablesAndDPTs/CreateDPT.asm

    r175 r181  
    6666%ifdef MODULE_SERIAL
    6767    cmp     byte [cs:bp+IDEVARS.bDevice], DEVICE_SERIAL_PORT
    68     jnz     .around
     68    jnz     .StoreAddressing
    6969    or      byte [di+DPT.bFlagsHigh], FLGH_DPT_SERIAL_DEVICE
    70 .around:               
    71 %endif     
    72 
     70%endif
    7371    ; Fall to .StoreAddressing
    7472
     
    117115
    118116    ; We need to get number of bits to shift for translation
    119     push    bx
    120117    push    ax
    121118    eMOVZX  dx, bl                      ; Heads now in DX
    122     xchg    bx, ax                      ; Sectors now in BX
    123     call    AccessDPT_ShiftPCHinBXDXtoLCH
     119    xchg    bx, ax                      ; Cylinders now in BX
     120    call    AccessDPT_ShiftPCHinBXDXtoLCH   ; Leaves AX untouched
     121    xchg    bx, ax                      ; Restore HeadsAndSectors to BX
    124122    or      cl, ADDRESSING_MODE_PCHS<<ADDRESSING_MODE_FIELD_POSITION
    125123    or      [di+DPT.bFlagsLow], cl      ; Store bits to shift
    126124    pop     ax
    127     pop     bx
    128125    ; Fall to .StoreChsFromAXBX
    129126
Note: See TracChangeset for help on using the changeset viewer.