Ignore:
Timestamp:
Feb 19, 2023, 9:26:52 PM (15 months ago)
Author:
krille_n_
Message:

Changes:

  • Added a configuration option to let the BIOS store RamVars to an UMB when Full operating mode is enabled. This is primarily for XT class machines with RAM in the UMA (which apparently is a common thing these days).
  • Added two new builds specifically for IBM PS/2 machines. This is for support of the new McIDE adapter from the guys at zzxio.com. Note that the additional hardware specific code (under the USE_PS2 define) is for the PS/2 machines themselves and not for the McIDE adapters, so any controller in an IBM PS/2 machine can be used with the USE_PS2 define.
  • Moved pColorTheme out of the range of ROMVARS being copied over when doing "Load old settings from EEPROM" in XTIDECFG. This fixed a serious bug from r592 where loading a BIOS from file and then loading the old settings from ROM would corrupt 7 bytes of code somewhere in the loaded BIOS.
  • Optimizations (speed and size) to the library. Browsing the menus in XTIDECFG should now feel a little less sluggish.
  • Hopefully fixed a problem with the PostCommitHook script where it sometimes wouldn't find the CommitInProgress file. I say hopefully because testing this is a nightmare.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Assembly_Library/Src/Menu/Dialog/ItemLineSplitter.asm

    r526 r625  
    44;
    55; XTIDE Universal BIOS and Associated Tools
    6 ; Copyright (C) 2009-2010 by Tomi Tilli, 2011-2013 by XTIDE Universal BIOS Team.
     6; Copyright (C) 2009-2010 by Tomi Tilli, 2011-2023 by XTIDE Universal BIOS Team.
    77;
    88; This program is free software; you can redistribute it and/or modify
     
    5151    call    StringProcess_DSSIwithFunctionInDX
    5252
    53     lea     ax, [bx+1]
     53    xchg    bx, ax
     54    inc     ax
    5455    eLEAVE_STRUCT   ITEM_LINE_SPLITTER_size
    5556    pop     di
     
    119120ProcessCharacterFromStringToSplit:
    120121    cmp     al, ' '
    121     ja      SHORT .CheckLineLength
    122     mov     di, si              ; DS:DI now points start of new word
    123     je      SHORT .CheckLineLength
     122    jbe     SHORT .ControlCharacterOrSpace
    124123
    125     cmp     al, LF
    126     je      SHORT .ChangeToNextLine
    127     cmp     al, CR
    128     jne     SHORT .IgnoreUnsupportedControlCharacter
    129     xor     cx, cx              ; Carriage return so reset line length so far
    130 
    131 ALIGN JUMP_ALIGN
    132124.CheckLineLength:
    133125    cmp     [bp+ITEM_LINE_SPLITTER.wMaxTextLineLength], cx
    134126    jb      SHORT .ChangeToNextLine
    135     ret     ; With CF cleared
     127    ret                             ; With CF cleared
    136128
    137129ALIGN JUMP_ALIGN
     
    140132    je      SHORT .WantedLineFound
    141133
    142     inc     bx                  ; Increment line
    143     xor     cx, cx              ; Zero character counter (and clear CF)
    144     mov     si, di              ; Start from complete word
     134    inc     bx                      ; Increment line
     135    mov     si, di                  ; Start from complete word
    145136    mov     [bp+ITEM_LINE_SPLITTER.wStartOfLine], di
     137.CarriageReturn:
     138    xor     cx, cx                  ; Zero character counter (and clear CF)
    146139    ret
    147140
    148141ALIGN JUMP_ALIGN
    149 .IgnoreUnsupportedControlCharacter:
     142.ControlCharacterOrSpace:
     143    mov     di, si                  ; DS:DI now points start of new word
     144    je      SHORT .CheckLineLength  ; Jump if space
     145    cmp     al, LF
     146    je      SHORT .ChangeToNextLine
     147    cmp     al, CR
     148    je      SHORT .CarriageReturn   ; Reset line length
     149    ; Unsupported control character - ignore it
    150150    dec     cx
    151151    clc
Note: See TracChangeset for help on using the changeset viewer.