Changeset 491 in xtideuniversalbios for trunk/Assembly_Library/Src/Serial


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.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Assembly_Library/Src/Serial/SerialServer.asm

    r376 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
    1818;
    19        
     19
    2020
    2121%include "SerialServer.inc"
     
    7575
    7676        mov     al,83h
    77         add     dl,Serial_UART_lineControl
     77        add     dl, Serial_UART_lineControl ; Clears CF
    7878        out     dx,al
    7979
     
    8282        out     dx,al
    8383
     84%ifdef USE_UNDOC_INTEL
     85        eSALC   ; Clear AL using CF
     86%else
    8487        xor     ax,ax
     88%endif
    8589        inc     dx              ; divisor high
    8690        push    dx
     
    103107
    104108        pop     dx              ; base, interrupts disabled
     109%ifdef USE_UNDOC_INTEL
     110        eSALC   ; Clear AL using CF
     111%else
    105112        xor     ax,ax
     113%endif
    106114        out     dx,al
    107115
Note: See TracChangeset for help on using the changeset viewer.