Changeset 184 in xtideuniversalbios for trunk/Assembly_Library


Ignore:
Timestamp:
Nov 15, 2011, 5:21:19 AM (13 years ago)
Author:
gregli@…
google:author:
gregli@hotmail.com
Message:

Space optimization, added a new format character 'I' which is the same as 'u' but shows a dash if the operand is zero. Replaces the PushIRQ functionality in bootmenuprintcfg.asm. This only saves a few bytes now, but saves significantly more with the string compression code.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Assembly_Library/Src/Display/DisplayFormat.asm

    r181 r184  
    128128.rgcFormatCharToLookupIndex:
    129129%ifndef EXCLUDE_FROM_XTIDE_UNIVERSAL_BIOS
    130     db      "aAduxsSct-+%"
     130    db      "aIAduxsSct-+%"
    131131%else
    132     db      "Auxsc-"        ; Required by XTIDE Universal BIOS
     132    db      "IAuxsc-"       ; Required by XTIDE Universal BIOS
    133133%endif
    134134.rgcFormatCharToLookupIndexEnd:
     
    138138    dw      a_FormatAttributeForNextCharacter
    139139%endif
     140    dw      I_FormatDashForZero
    140141    dw      A_FormatAttributeForRemainingString
    141142%ifndef EXCLUDE_FROM_XTIDE_UNIVERSAL_BIOS
     
    320321%endif
    321322
    322 ALIGN JUMP_ALIGN
     323ALIGN JUMP_ALIGN       
    323324u_FormatUnsignedDecimalWord:
    324325    mov     ax, [bp]
     
    335336
    336337ALIGN JUMP_ALIGN
     338I_FormatDashForZero:
     339    mov     ax, [bp]
     340    test    ax,ax
     341    jnz     u_FormatUnsignedDecimalWord     
     342    mov     [bp], word g_szDashForZero
     343;;; fall-through
     344       
     345ALIGN JUMP_ALIGN
    337346s_FormatStringFromSegmentCS:
    338347    xchg    si, [bp]
Note: See TracChangeset for help on using the changeset viewer.