Changeset 491 in xtideuniversalbios for trunk/XTIDE_Universal_BIOS/Src/Initialization


Ignore:
Timestamp:
Dec 15, 2012, 2:46:29 PM (12 years ago)
Author:
krille_n_@…
google:author:
krille_n_@hotmail.com
Message:

Changes:

  • Added a new define (USE_UNDOC_INTEL) that enables optimizations possible by using undocumented instructions available on all Intel processors and truly compatible clones. AFAIK the only exceptions are the NEC V-series and the Sony CXQ70108 processors so this option should be safe for use on the AT builds.
  • Building BIOSDRVS or the BIOS without MODULE_STRINGS_COMPRESSED would fail due to the recent code exclusions so I changed them a bit. Also fixed the mistaken change to Main.asm
  • Changed the Tandy specific info in Configuration_FullMode.txt so it matches the info in the Wiki.
  • Optimizations and fixes in general.
Location:
trunk/XTIDE_Universal_BIOS/Src/Initialization
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/XTIDE_Universal_BIOS/Src/Initialization/AtaID.asm

    r487 r491  
    3636    ; corrupted. We start by making sure P-CHS values are valid.
    3737    ; If they are, we assume the ATA ID to be valid. Fortunately we can do
    38     ; futher checking for ATA-5 and later since they contain signature and
     38    ; further checking for ATA-5 and later since they contain signature and
    3939    ; checksum bytes. Those are not available for ATA-4 and older.
    4040
  • trunk/XTIDE_Universal_BIOS/Src/Initialization/DetectDrives.asm

    r474 r491  
    33
    44;
    5 ; XTIDE Universal BIOS and Associated Tools 
     5; XTIDE Universal BIOS and Associated Tools
    66; Copyright (C) 2009-2010 by Tomi Tilli, 2011-2012 by XTIDE Universal BIOS Team.
    77;
     
    1010; the Free Software Foundation; either version 2 of the License, or
    1111; (at your option) any later version.
    12 ; 
     12;
    1313; This program is distributed in the hope that it will be useful,
    1414; but WITHOUT ANY WARRANTY; without even the implied warranty of
    1515; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    16 ; GNU General Public License for more details.     
     16; GNU General Public License for more details.
    1717; Visit http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
    18 ;       
     18;
    1919
    2020; Section containing code
     
    153153;--------------------------------------------------------------------
    154154StartDetectionWithDriveSelectByteInBHandStringInCX:
     155%ifdef MODULE_8BIT_IDE
    155156    ; Autodetect port for XT-CF
    156 %ifdef MODULE_8BIT_IDE
    157157    call    DetectDrives_DoesIdevarsInCSBPbelongToXTCF
    158158    jne     SHORT .SkipXTCFportDetection
     
    165165    ; for next drive (another XT-CF card on same system)
    166166.DetectNextPort:
    167     call    BootVars_GetNextXTCFportToDetectToDX
    168     cmp     dx, XTCF_BASE_PORT_4
     167    mov     dx, [es:BOOTVARS.wNextXTCFportToScan]
     168    xor     dl, 40h
     169    jnz     SHORT .StoreNextXTCFportToScan
     170    inc     dh
     171    cmp     dh, XTCF_BASE_PORT_4 >> 8
    169172    ja      SHORT .SkipXTCFportDetection        ; XT-CF not found from any port
     173.StoreNextXTCFportToScan:
     174    mov     [es:BOOTVARS.wNextXTCFportToScan], dx
    170175
    171176    call    AH1Eh_DetectXTCFwithBasePortInDX
     
    178183    jmp     SHORT .DriveDetectionStringPrintedOnScreen
    179184
    180     ; Print detect string for devices that do not support autodetection     
     185    ; Print detect string for devices that do not support autodetection
    181186.SkipXTCFportDetection:
    182187    push    dx
  • trunk/XTIDE_Universal_BIOS/Src/Initialization/Interrupts.asm

    r489 r491  
    33
    44;
    5 ; XTIDE Universal BIOS and Associated Tools 
     5; XTIDE Universal BIOS and Associated Tools
    66; Copyright (C) 2009-2010 by Tomi Tilli, 2011-2012 by XTIDE Universal BIOS Team.
    77;
     
    1010; the Free Software Foundation; either version 2 of the License, or
    1111; (at your option) any later version.
    12 ; 
     12;
    1313; This program is distributed in the hope that it will be useful,
    1414; but WITHOUT ANY WARRANTY; without even the implied warranty of
    1515; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    16 ; GNU General Public License for more details.     
     16; GNU General Public License for more details.
    1717; Visit http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
    18 ;       
     18;
    1919
    2020; Section containing code
     
    9797.InitializeHardwareIrqHandlers:
    9898    call    RamVars_GetIdeControllerCountToCX
    99     mov     di, ROMVARS.ideVars0            ; CS:SI points to first IDEVARS
     99    mov     di, ROMVARS.ideVars0+IDEVARS.bIRQ   ; CS:SI points to first IDEVARS
    100100.IdeControllerLoop:
    101     mov     al, [cs:di+IDEVARS.bIRQ]
     101    mov     al, [cs:di]
    102102    add     di, BYTE IDEVARS_size           ; Increment to next controller
    103103    call    .InstallLowOrHighIrqHandler
Note: See TracChangeset for help on using the changeset viewer.