Changeset 369 in xtideuniversalbios


Ignore:
Timestamp:
Mar 29, 2012, 9:29:28 AM (13 years ago)
Author:
gregli@…
google:author:
gregli@hotmail.com
Message:

Removed align directives for initalization code and added define for align in boot-time calls to the assembly library (defaulting to 1), resulting in a significant savings for the AT and 386 builds. Fixed a bug with switch command line handling in the serial server. Put in CR characters in licesnse.txt, so that it properly displays on Windows. In the configurator, added default values for user supplied CHS and LBA values, defaulting to values within range when those features are enabled. Updated the copyright message in the configurator as the literal word Copyright is important.

Location:
trunk
Files:
48 edited

Legend:

Unmodified
Added
Removed
  • trunk/Assembly_Library/Src/AssemblyLibrary.asm

    r280 r369  
    77
    88%ifdef INCLUDE_DISPLAY_LIBRARY
     9  %ifndef DISPLAY_JUMP_ALIGN
     10    %define DISPLAY_JUMP_ALIGN 1
     11  %endif
    912    %include "CgaSnow.asm"
    1013    %include "Display.asm"
     
    2932
    3033%ifdef INCLUDE_KEYBOARD_LIBRARY
     34  %ifndef KEYBOARD_JUMP_ALIGN
     35    %define KEYBOARD_JUMP_ALIGN 1
     36  %endif       
    3137    %include "Keyboard.asm"
    3238%endif
    3339
    3440%ifdef INCLUDE_MENU_LIBRARY
     41  %ifndef MENU_JUMP_ALIGN
     42    %define MENU_JUMP_ALIGN 1
     43  %endif               
    3544    %include "CharOutLineSplitter.asm"
    3645    %include "Menu.asm"
     
    6170
    6271%ifdef INCLUDE_STRING_LIBRARY
     72  %ifndef STRING_JUMP_ALIGN
     73    %define STRING_JUMP_ALIGN 1
     74  %endif               
    6375    %include "Char.asm"
    6476    %ifndef EXCLUDE_FROM_XTIDE_UNIVERSAL_BIOS
     
    8698
    8799%ifdef INCLUDE_UTIL_LIBRARY
     100  %ifndef UTIL_SIZE_JUMP_ALIGN
     101    %define UTIL_SIZE_JUMP_ALIGN 1
     102  %endif       
    88103    %ifndef EXCLUDE_FROM_XTIDE_UNIVERSAL_BIOS
    89104        %include "Bit.asm"
  • trunk/Assembly_Library/Src/Display/CgaSnow.asm

    r223 r369  
    1515;       AX
    1616;--------------------------------------------------------------------
    17 ALIGN JUMP_ALIGN
     17ALIGN DISPLAY_JUMP_ALIGN
    1818CgaSnow_IsCgaPresent:
    1919    cmp     WORD [BDA.wVidPort], CGA_STATUS_REGISTER - OFFSET_TO_CGA_STATUS_REGISTER
     
    2525    stc
    2626    ret
    27 ALIGN JUMP_ALIGN
     27ALIGN DISPLAY_JUMP_ALIGN
    2828.CgaNotFound:
    2929    clc
     
    4848;       AX, DX
    4949;--------------------------------------------------------------------
    50 ALIGN JUMP_ALIGN
     50ALIGN DISPLAY_JUMP_ALIGN
    5151CgaSnow_Stosb:
    5252    call    LoadCgaStatusRegisterAddressToDXifCgaPresent
     
    6262    ret
    6363
    64 ALIGN JUMP_ALIGN
     64ALIGN DISPLAY_JUMP_ALIGN
    6565CgaSnow_Stosw:
    6666    push    bx
     
    9191;       AX, CX, DX
    9292;--------------------------------------------------------------------
    93 ALIGN JUMP_ALIGN
     93ALIGN DISPLAY_JUMP_ALIGN
    9494CgaSnow_RepMovsb:
    9595    call    LoadCgaStatusRegisterAddressToDXifCgaPresent
     
    119119;       Nothing
    120120;--------------------------------------------------------------------
    121 ALIGN JUMP_ALIGN
     121ALIGN DISPLAY_JUMP_ALIGN
    122122LoadCgaStatusRegisterAddressToDXifCgaPresent:
    123123    test    BYTE [VIDEO_BDA.displayContext+DISPLAY_CONTEXT.bFlags], FLG_CONTEXT_CGA
    124124    jz      SHORT .NoCgaDetected
    125125    mov     dx, CGA_STATUS_REGISTER
    126 ALIGN JUMP_ALIGN, ret
     126ALIGN DISPLAY_JUMP_ALIGN, ret
    127127.NoCgaDetected:
    128128    ret
  • trunk/Assembly_Library/Src/Display/Display.asm

    r341 r369  
    1616;       AX (unless used as a return register), DI
    1717;--------------------------------------------------------------------
    18 ALIGN JUMP_ALIGN
     18ALIGN DISPLAY_JUMP_ALIGN
    1919Display_FunctionFromDI:
    2020    push    es
     
    4343;       AX
    4444;--------------------------------------------------------------------
    45 ALIGN JUMP_ALIGN
     45ALIGN DISPLAY_JUMP_ALIGN
    4646Display_FormatNullTerminatedStringFromCSSI:
    4747    pop     ax                  ; Discard return address to inside Display_FunctionFromDI
  • trunk/Assembly_Library/Src/Display/DisplayCharOut.asm

    r101 r369  
    2121;       AX, DX
    2222;--------------------------------------------------------------------
    23 ALIGN JUMP_ALIGN
     23ALIGN DISPLAY_JUMP_ALIGN
    2424DisplayCharOut_TeletypeOutputWithAttribute:
    2525    cmp     al, ' '                         ; Printable character?
     
    2828    ret
    2929
    30 ALIGN JUMP_ALIGN
     30ALIGN DISPLAY_JUMP_ALIGN
    3131DisplayCharOut_TeletypeOutput:
    3232    cmp     al, ' '                         ; Printable character?
     
    4545;       AX, DX
    4646;--------------------------------------------------------------------
    47 ALIGN JUMP_ALIGN
     47ALIGN DISPLAY_JUMP_ALIGN
    4848DisplayCharOut_BiosTeletypeOutput:
    4949    push    ax
     
    7676;       AX, DX
    7777;--------------------------------------------------------------------
    78 ALIGN JUMP_ALIGN
     78ALIGN DISPLAY_JUMP_ALIGN
    7979DisplayCharOut_Attribute:
    8080    xchg    al, ah              ; Swap character and attribute
     
    8383    ret
    8484
    85 ALIGN JUMP_ALIGN
     85ALIGN DISPLAY_JUMP_ALIGN
    8686DisplayCharOut_Character:
    8787    WAIT_RETRACE_IF_NECESSARY_THEN stosb
     
    8989    ret
    9090
    91 ALIGN JUMP_ALIGN
     91ALIGN DISPLAY_JUMP_ALIGN
    9292DisplayCharOut_CharacterWithAttribute:
    9393    WAIT_RETRACE_IF_NECESSARY_THEN stosw
     
    107107;       AX, DX
    108108;--------------------------------------------------------------------
    109 ALIGN JUMP_ALIGN
     109ALIGN DISPLAY_JUMP_ALIGN
    110110DisplayCharOut_WriteCharacterToBuffer:
    111111    cmp     WORD [VIDEO_BDA.displayContext+DISPLAY_CONTEXT.wCharOutParam], BYTE 0
  • trunk/Assembly_Library/Src/Display/DisplayContext.asm

    r287 r369  
    1414;       AX, DX, DI
    1515;--------------------------------------------------------------------
    16 ALIGN JUMP_ALIGN
     16ALIGN DISPLAY_JUMP_ALIGN
    1717DisplayContext_Initialize:
    1818    mov     WORD [VIDEO_BDA.displayContext+DISPLAY_CONTEXT.fnCharOut], DEFAULT_CHARACTER_OUTPUT
     
    7979;       AX, DX
    8080;--------------------------------------------------------------------
    81 ALIGN JUMP_ALIGN
     81ALIGN DISPLAY_JUMP_ALIGN
    8282DisplayContext_SynchronizeToHardware:
    8383    call    DisplayPage_SynchronizeToHardware
     
    9595;       AX, DI
    9696;--------------------------------------------------------------------
    97 ALIGN JUMP_ALIGN
     97ALIGN DISPLAY_JUMP_ALIGN
    9898DisplayContext_Push:
    9999    mov     di, ds                  ; Backup DS
     
    121121;       AX, DI
    122122;--------------------------------------------------------------------
    123 ALIGN JUMP_ALIGN
     123ALIGN DISPLAY_JUMP_ALIGN
    124124DisplayContext_Pop:
    125125    mov     di, ds                  ; Backup DS
     
    154154;--------------------------------------------------------------------
    155155%ifndef EXCLUDE_FROM_XTIDE_UNIVERSAL_BIOS
    156 ALIGN JUMP_ALIGN
     156ALIGN DISPLAY_JUMP_ALIGN
    157157DisplayContext_PrepareOffScreenBufferInESBXwithLengthInCX:
    158158    push    ds
     
    185185;--------------------------------------------------------------------
    186186%ifndef EXCLUDE_FROM_XTIDE_UNIVERSAL_BIOS
    187 ALIGN JUMP_ALIGN
     187ALIGN DISPLAY_JUMP_ALIGN
    188188DisplayContext_SetCharacterPointerFromBXAX:
    189189    mov     [VIDEO_BDA.displayContext+DISPLAY_CONTEXT.fpCursorPosition], ax
     
    205205;--------------------------------------------------------------------
    206206%ifndef EXCLUDE_FROM_XTIDE_UNIVERSAL_BIOS
    207 ALIGN JUMP_ALIGN
     207ALIGN DISPLAY_JUMP_ALIGN
    208208DisplayContext_GetCharacterPointerToBXAX:
    209209    mov     ax, [VIDEO_BDA.displayContext+DISPLAY_CONTEXT.fpCursorPosition]
     
    224224;       BL
    225225;--------------------------------------------------------------------
    226 ALIGN JUMP_ALIGN
     226ALIGN DISPLAY_JUMP_ALIGN
    227227DisplayContext_SetCharOutputFunctionFromAXwithAttribFlagInBL:
    228228    and     bl, FLG_CONTEXT_ATTRIBUTES
     
    243243;       Nothing
    244244;--------------------------------------------------------------------
    245 ALIGN JUMP_ALIGN
     245ALIGN DISPLAY_JUMP_ALIGN
    246246DisplayContext_SetCharacterAttributeFromAL:
    247247    mov     [VIDEO_BDA.displayContext+DISPLAY_CONTEXT.bAttribute], al
     
    259259;       Nothing
    260260;--------------------------------------------------------------------
    261 ALIGN JUMP_ALIGN
     261ALIGN DISPLAY_JUMP_ALIGN
    262262DisplayContext_SetCharacterOutputParameterFromAX:
    263263    mov     [VIDEO_BDA.displayContext+DISPLAY_CONTEXT.wCharOutParam], ax
     
    275275;--------------------------------------------------------------------
    276276%ifndef EXCLUDE_FROM_XTIDE_UNIVERSAL_BIOS OR EXCLUDE_FROM_XTIDECFG  ; This is currently unused (dead code)
    277 ALIGN JUMP_ALIGN
     277ALIGN DISPLAY_JUMP_ALIGN
    278278DisplayContext_GetCharacterOutputParameterToDX:
    279279    mov     dx, [VIDEO_BDA.displayContext+DISPLAY_CONTEXT.wCharOutParam]
     
    293293;--------------------------------------------------------------------
    294294%ifndef MODULE_STRINGS_COMPRESSED
    295 ALIGN JUMP_ALIGN
     295ALIGN DISPLAY_JUMP_ALIGN
    296296DisplayContext_GetCharacterOffsetToAXfromByteOffsetInAX:
    297297    test    BYTE [VIDEO_BDA.displayContext+DISPLAY_CONTEXT.bFlags], FLG_CONTEXT_ATTRIBUTES
     
    313313;--------------------------------------------------------------------
    314314%ifndef MODULE_STRINGS_COMPRESSED
    315 ALIGN JUMP_ALIGN
     315ALIGN DISPLAY_JUMP_ALIGN
    316316DisplayContext_GetByteOffsetToAXfromCharacterOffsetInAX:
    317317    test    BYTE [VIDEO_BDA.displayContext+DISPLAY_CONTEXT.bFlags], FLG_CONTEXT_ATTRIBUTES
    318318    jz      SHORT ReturnOffsetInAX
    319319    sal     ax, 1       ; WORD count to BYTE count
    320 ALIGN JUMP_ALIGN, ret
     320ALIGN DISPLAY_JUMP_ALIGN, ret
    321321ReturnOffsetInAX:
    322322    ret
  • trunk/Assembly_Library/Src/Display/DisplayCursor.asm

    r101 r369  
    1515;       Nothing
    1616;--------------------------------------------------------------------
    17 ALIGN JUMP_ALIGN
     17ALIGN DISPLAY_JUMP_ALIGN
    1818DisplayCursor_SetShapeFromAX:
    1919    mov     [VIDEO_BDA.displayContext+DISPLAY_CONTEXT.wCursorShape], ax
     
    3232;       AX, DX
    3333;--------------------------------------------------------------------
    34 ALIGN JUMP_ALIGN
     34ALIGN DISPLAY_JUMP_ALIGN
    3535DisplayCursor_SetCoordinatesFromAX:
    3636    xchg    dx, ax
     
    5757;       Nothing
    5858;--------------------------------------------------------------------
    59 ALIGN JUMP_ALIGN
     59ALIGN DISPLAY_JUMP_ALIGN
    6060DisplayCursor_GetSoftwareCoordinatesToAX:
    6161    mov     ax, [VIDEO_BDA.displayContext+DISPLAY_CONTEXT.fpCursorPosition]
     
    7777;       DX
    7878;--------------------------------------------------------------------
    79 ALIGN JUMP_ALIGN
     79ALIGN DISPLAY_JUMP_ALIGN
    8080DisplayCursor_GetHardwareCoordinatesToAX:
    8181    push    cx
     
    101101;       AX, DX
    102102;--------------------------------------------------------------------
    103 ALIGN JUMP_ALIGN
     103ALIGN DISPLAY_JUMP_ALIGN
    104104DisplayCursor_SynchronizeShapeToHardware:
    105105    mov     dx, [VIDEO_BDA.displayContext+DISPLAY_CONTEXT.wCursorShape]
     
    138138;       AX, DX
    139139;--------------------------------------------------------------------
    140 ALIGN JUMP_ALIGN
     140ALIGN DISPLAY_JUMP_ALIGN
    141141DisplayCursor_SynchronizeCoordinatesToHardware:
    142142    call    DisplayCursor_GetSoftwareCoordinatesToAX
  • trunk/Assembly_Library/Src/Display/DisplayFormat.asm

    r341 r369  
    1818;       AX, BX, CX, DX, BP
    1919;--------------------------------------------------------------------
    20 ALIGN JUMP_ALIGN
     20ALIGN DISPLAY_JUMP_ALIGN
    2121DisplayFormat_ParseCharacters:
    2222    call    ReadCharacterAndTestForNull
     
    6969;       AX
    7070;--------------------------------------------------------------------
    71 ALIGN JUMP_ALIGN
     71ALIGN DISPLAY_JUMP_ALIGN
    7272ParsePlaceholderSizeDigitFromALtoCX:
    7373    mov     [VIDEO_BDA.displayContext+DISPLAY_CONTEXT.fpCursorPosition], di
     
    9090;       Nothing
    9191;--------------------------------------------------------------------
    92 ALIGN JUMP_ALIGN
     92ALIGN DISPLAY_JUMP_ALIGN
    9393ReadCharacterAndTestForNull:
    9494    cs lodsb                                ; Load from CS:SI to AL
     
    106106;       AX, BX
    107107;--------------------------------------------------------------------
    108 ALIGN JUMP_ALIGN
     108ALIGN DISPLAY_JUMP_ALIGN
    109109GetFormatSpecifierParserToAX:
    110110    mov     bx, .rgcFormatCharToLookupIndex
    111 ALIGN JUMP_ALIGN
     111ALIGN DISPLAY_JUMP_ALIGN
    112112.CheckForNextSpecifierParser:
    113113    cmp     al, [cs:bx]
     
    118118    mov     ax, c_FormatCharacter
    119119    ret
    120 ALIGN JUMP_ALIGN
     120ALIGN DISPLAY_JUMP_ALIGN
    121121.ConvertIndexToFunctionOffset:
    122122    sub     bx, .rgcFormatCharToLookupIndex
     
    171171;       AX, BX, CX, DX
    172172;--------------------------------------------------------------------
    173 ALIGN JUMP_ALIGN
     173ALIGN DISPLAY_JUMP_ALIGN
    174174PrependOrAppendSpaces:
    175175    mov     ax, di
     
    210210;       AX, BX, CX, DX
    211211;--------------------------------------------------------------------
    212 ALIGN JUMP_ALIGN
     212ALIGN DISPLAY_JUMP_ALIGN
    213213.PrependWithSpaces:
    214214    xchg    ax, cx
     
    248248;       AX, CX, DX, SI
    249249;--------------------------------------------------------------------
    250 ALIGN JUMP_ALIGN
     250ALIGN DISPLAY_JUMP_ALIGN
    251251.ReverseCopyCXbytesFromESSItoESDI:
    252252    test    BYTE [VIDEO_BDA.displayContext+DISPLAY_CONTEXT.bFlags], FLG_CONTEXT_ATTRIBUTES
     
    256256    dec     di                  ; Point to preceeding character instead of attribute
    257257    ret
    258 ALIGN JUMP_ALIGN
     258ALIGN DISPLAY_JUMP_ALIGN
    259259.CopyWithoutDisplayProcessing:
    260260    eSEG_STR rep, es, movsb
     
    271271;   Corrupts registers:
    272272;       AX, CX, DX
    273 ALIGN JUMP_ALIGN
     273ALIGN DISPLAY_JUMP_ALIGN
    274274.ReversePrintAXspacesStartingFromESDI:
    275275    call    DisplayContext_GetCharacterOffsetToAXfromByteOffsetInAX
     
    292292;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    293293%ifndef EXCLUDE_FROM_XTIDE_UNIVERSAL_BIOS
    294 ALIGN JUMP_ALIGN
     294ALIGN DISPLAY_JUMP_ALIGN
    295295a_FormatAttributeForNextCharacter:
    296296    mov     bl, [bp]
     
    307307%endif
    308308
    309 ALIGN JUMP_ALIGN
     309ALIGN DISPLAY_JUMP_ALIGN
    310310A_FormatAttributeForRemainingString:
    311311    mov     al, [bp]
     
    314314
    315315%ifndef EXCLUDE_FROM_XTIDE_UNIVERSAL_BIOS
    316 ALIGN JUMP_ALIGN
     316ALIGN DISPLAY_JUMP_ALIGN
    317317d_FormatSignedDecimalWord:
    318318    mov     ax, [bp]
     
    321321%endif
    322322
    323 ALIGN JUMP_ALIGN
     323ALIGN DISPLAY_JUMP_ALIGN
    324324u_FormatUnsignedDecimalWord:
    325325    mov     ax, [bp]
     
    327327    jmp     DisplayPrint_WordFromAXWithBaseInBX
    328328
    329 ALIGN JUMP_ALIGN
     329ALIGN DISPLAY_JUMP_ALIGN
    330330x_FormatHexadecimalWord:
    331331    mov     ax, [bp]
     
    335335    jmp     DisplayPrint_CharacterFromAL
    336336
    337 ALIGN JUMP_ALIGN
     337ALIGN DISPLAY_JUMP_ALIGN
    338338I_FormatDashForZero:
    339339    mov     ax, [bp]
     
    343343;;; fall-through
    344344
    345 ALIGN JUMP_ALIGN
     345ALIGN DISPLAY_JUMP_ALIGN
    346346s_FormatStringFromSegmentCS:
    347347    push    si
     
    367367    ret
    368368
    369 ALIGN JUMP_ALIGN
     369ALIGN DISPLAY_JUMP_ALIGN
    370370z_FormatStringFromSegmentZero:
    371371    xchg    si, [bp]
     
    376376
    377377%ifndef EXCLUDE_FROM_XTIDE_UNIVERSAL_BIOS
    378 ALIGN JUMP_ALIGN
     378ALIGN DISPLAY_JUMP_ALIGN
    379379S_FormatStringFromFarPointer:
    380380    mov     bx, [bp-2]
     
    387387%endif
    388388
    389 ALIGN JUMP_ALIGN
     389ALIGN DISPLAY_JUMP_ALIGN
    390390c_FormatCharacter:
    391391    mov     al, [bp]
     
    393393
    394394%ifndef EXCLUDE_FROM_XTIDE_UNIVERSAL_BIOS
    395 ALIGN JUMP_ALIGN
     395ALIGN DISPLAY_JUMP_ALIGN
    396396t_FormatRepeatCharacter:
    397397    push    cx
     
    404404    ret
    405405
    406 ALIGN JUMP_ALIGN
     406ALIGN DISPLAY_JUMP_ALIGN
    407407percent_FormatPercent:
    408408    mov     al, '%'
     
    410410%endif
    411411
    412 ALIGN JUMP_ALIGN
     412ALIGN DISPLAY_JUMP_ALIGN
    413413PrepareToPrependParameterWithSpaces:
    414414    neg     cx
    415415    ; Fall to PrepareToAppendSpacesAfterParameter
    416416
    417 ALIGN JUMP_ALIGN
     417ALIGN DISPLAY_JUMP_ALIGN
    418418PrepareToAppendSpacesAfterParameter:
    419419    add     sp, BYTE 2              ; Remove return offset
  • trunk/Assembly_Library/Src/Display/DisplayFormatCompressed.asm

    r241 r369  
    151151    ; fall through to DisplayFormat_ParseCharacters
    152152
    153 ALIGN JUMP_ALIGN
     153ALIGN DISPLAY_JUMP_ALIGN
    154154DisplayFormat_ParseCharacters:
    155155;
     
    184184
    185185
    186 ALIGN JUMP_ALIGN
     186ALIGN DISPLAY_JUMP_ALIGN
    187187DisplayFormatCompressed_TranslatesAndFormats:
    188188;
  • trunk/Assembly_Library/Src/Display/DisplayPage.asm

    r194 r369  
    1616;--------------------------------------------------------------------
    1717%ifndef EXCLUDE_FROM_XTIDE_UNIVERSAL_BIOS
    18 ALIGN JUMP_ALIGN
     18ALIGN DISPLAY_JUMP_ALIGN
    1919DisplayPage_SetFromAL:
    2020    xor     ah, ah
     
    3535;       Nothing
    3636;--------------------------------------------------------------------
    37 ALIGN JUMP_ALIGN
     37ALIGN DISPLAY_JUMP_ALIGN
    3838DisplayPage_GetColumnsToALandRowsToAH:
    3939    mov     al, [VIDEO_BDA.wColumns]        ; 40 or 80
     
    5151;       AX, DX
    5252;--------------------------------------------------------------------
    53 ALIGN JUMP_ALIGN
     53ALIGN DISPLAY_JUMP_ALIGN
    5454DisplayPage_SynchronizeToHardware:
    5555    xor     dx, dx
  • trunk/Assembly_Library/Src/Display/DisplayPrint.asm

    r341 r369  
    4242;       AX, DX
    4343;--------------------------------------------------------------------
    44 ALIGN JUMP_ALIGN
     44ALIGN DISPLAY_JUMP_ALIGN
    4545DisplayPrint_FormattedNullTerminatedStringFromCSSI:
    4646    push    bp
     
    7979;--------------------------------------------------------------------
    8080%ifndef EXCLUDE_FROM_XTIDE_UNIVERSAL_BIOS
    81 ALIGN JUMP_ALIGN
     81ALIGN DISPLAY_JUMP_ALIGN
    8282DisplayPrint_SignedWordFromAXWithBaseInBX:
    8383    test    ax, ax
     
    106106;       AX, DX
    107107;--------------------------------------------------------------------
    108 ALIGN JUMP_ALIGN
     108ALIGN DISPLAY_JUMP_ALIGN
    109109DisplayPrint_WordFromAXWithBaseInBX:
    110110    push    cx
     
    112112
    113113    xor     cx, cx
    114 ALIGN JUMP_ALIGN
     114ALIGN DISPLAY_JUMP_ALIGN
    115115.DivideLoop:
    116116    xor     dx, dx              ; DX:AX now holds the integer
     
    123123PrintAllPushedDigits:
    124124    mov     bx, g_rgcDigitToCharacter
    125 ALIGN JUMP_ALIGN
     125ALIGN DISPLAY_JUMP_ALIGN
    126126.PrintNextDigit:
    127127    pop     ax                  ; Pop digit
     
    149149;--------------------------------------------------------------------
    150150%ifndef EXCLUDE_FROM_XTIDECFG   ; Not used in XTIDECFG
    151 ALIGN JUMP_ALIGN
     151ALIGN DISPLAY_JUMP_ALIGN
    152152DisplayPrint_QWordFromSSBPwithBaseInBX:
    153153    push    cx
     
    156156    mov     cx, bx              ; CX = Integer base
    157157    xor     bx, bx              ; BX = Character count
    158 ALIGN JUMP_ALIGN
     158ALIGN DISPLAY_JUMP_ALIGN
    159159.DivideLoop:
    160160    call    Math_DivQWatSSBPbyCX; Divide by base
     
    183183;--------------------------------------------------------------------
    184184%ifndef EXCLUDE_FROM_XTIDE_UNIVERSAL_BIOS
    185 ALIGN JUMP_ALIGN
     185ALIGN DISPLAY_JUMP_ALIGN
    186186DisplayPrint_CharacterBufferFromBXSIwithLengthInCX:
    187187    jcxz    .NothingToPrintSinceZeroLength
     
    189189    push    cx
    190190
    191 ALIGN JUMP_ALIGN
     191ALIGN DISPLAY_JUMP_ALIGN
    192192.PrintNextCharacter:
    193193    mov     ds, bx
     
    216216;       AX, DX
    217217;--------------------------------------------------------------------
    218 ALIGN JUMP_ALIGN
     218ALIGN DISPLAY_JUMP_ALIGN
    219219DisplayPrint_ClearScreenWithCharInALandAttributeInAH:
    220220    push    di
     
    248248;--------------------------------------------------------------------
    249249%ifndef EXCLUDE_FROM_XTIDE_UNIVERSAL_BIOS
    250 ALIGN JUMP_ALIGN
     250ALIGN DISPLAY_JUMP_ALIGN
    251251DisplayPrint_ClearAreaWithHeightInAHandWidthInAL:
    252252    push    si
     
    259259    xor     cx, cx
    260260
    261 ALIGN JUMP_ALIGN
     261ALIGN DISPLAY_JUMP_ALIGN
    262262.ClearRowLoop:
    263263    mov     cl, bl                          ; Area width now in CX
     
    291291;       DX
    292292;--------------------------------------------------------------------
    293 ALIGN JUMP_ALIGN
     293ALIGN DISPLAY_JUMP_ALIGN
    294294DisplayPrint_RepeatCharacterFromALwithCountInCX:
    295295    jcxz    .NothingToRepeat
    296296    push    cx
    297297
    298 ALIGN JUMP_ALIGN
     298ALIGN DISPLAY_JUMP_ALIGN
    299299.RepeatCharacter:
    300300    push    ax
     
    324324;;; All strings in CSSI should go through the DisplayFormatCompressed code to be decoded.
    325325;;;
    326 ALIGN JUMP_ALIGN
     326ALIGN DISPLAY_JUMP_ALIGN
    327327DisplayPrint_NullTerminatedStringFromCSSI:
    328328    push    bx
     
    350350;--------------------------------------------------------------------
    351351%ifdef MODULE_STRINGS_COMPRESSED
    352 ALIGN JUMP_ALIGN
     352ALIGN DISPLAY_JUMP_ALIGN
    353353DisplayPrint_Newline_FormatAdjustBP:
    354354    inc     bp                  ; we didn't need a parameter after all, readjust BP
     
    357357%endif
    358358
    359 ALIGN JUMP_ALIGN
     359ALIGN DISPLAY_JUMP_ALIGN
    360360DisplayPrint_Newline:
    361361    mov     al, LF
     
    376376;       AX, DX
    377377;--------------------------------------------------------------------
    378 ALIGN JUMP_ALIGN
     378ALIGN DISPLAY_JUMP_ALIGN
    379379DisplayPrint_CharacterFromAL:
    380380    test    al,al
     
    396396;       AX, DX
    397397;--------------------------------------------------------------------
    398 ALIGN JUMP_ALIGN
     398ALIGN DISPLAY_JUMP_ALIGN
    399399DisplayPrint_NullTerminatedStringFromBXSI:
    400400    push    si
     
    402402
    403403    xor     cx, cx
    404 ALIGN JUMP_ALIGN
     404ALIGN DISPLAY_JUMP_ALIGN
    405405.PrintNextCharacter:
    406406    mov     ds, bx              ; String segment to DS
     
    412412    jmp     SHORT .PrintNextCharacter
    413413
    414 ALIGN JUMP_ALIGN
     414ALIGN DISPLAY_JUMP_ALIGN
    415415.EndOfString:
    416416    pop     cx
  • trunk/Assembly_Library/Src/Keyboard/Keyboard.asm

    r145 r369  
    2121;--------------------------------------------------------------------
    2222%ifndef EXCLUDE_FROM_XTIDE_UNIVERSAL_BIOS
    23 ALIGN JUMP_ALIGN
     23ALIGN KEYBOARD_JUMP_ALIGN
    2424Keyboard_ReadUserInputtedWordWhilePrinting:
    2525    push    ds
     
    7171;--------------------------------------------------------------------
    7272%ifndef EXCLUDE_FROM_XTIDE_UNIVERSAL_BIOS
    73 ALIGN JUMP_ALIGN
     73ALIGN KEYBOARD_JUMP_ALIGN
    7474Keyboard_ReadUserInputtedStringToESDIWhilePrinting:
    7575    push    di
     
    8282    dec     cx                                  ; Decrement buffer size for NULL
    8383    cld
    84 ALIGN JUMP_ALIGN
     84ALIGN KEYBOARD_JUMP_ALIGN
    8585.GetCharacterFromUser:
    8686    call    Keyboard_GetKeystrokeToAXandWaitIfNecessary ; Get ASCII to AL
     
    121121;       AX, BX, SI
    122122;--------------------------------------------------------------------
    123 ALIGN JUMP_ALIGN
     123ALIGN KEYBOARD_JUMP_ALIGN
    124124.PrepareDisplayContextForKeyboardInput:
    125125    pop     bx                  ; Pop return address to BX
     
    150150;       AH
    151151;--------------------------------------------------------------------
    152 ALIGN JUMP_ALIGN
     152ALIGN KEYBOARD_JUMP_ALIGN
    153153.ProcessControlCharacter:
    154154    cmp     al, CR                              ; ENTER to terminate string?
     
    193193;--------------------------------------------------------------------
    194194%ifndef EXCLUDE_FROM_XTIDE_UNIVERSAL_BIOS
    195 ALIGN JUMP_ALIGN
     195ALIGN KEYBOARD_JUMP_ALIGN
    196196Keyboard_PrintBackspace:
    197197    mov     al, BS
     
    214214;--------------------------------------------------------------------
    215215%ifndef EXCLUDE_FROM_XTIDE_UNIVERSAL_BIOS
    216 ALIGN JUMP_ALIGN
     216ALIGN KEYBOARD_JUMP_ALIGN
    217217Keyboard_PlayBellForUnwantedKeystroke:
    218218    mov     al, BELL
     
    230230;--------------------------------------------------------------------
    231231%ifndef EXCLUDE_FROM_XTIDE_UNIVERSAL_BIOS
    232 ALIGN JUMP_ALIGN
     232ALIGN KEYBOARD_JUMP_ALIGN
    233233Keyboard_PrintInputtedCharacter:
    234234    push    di
     
    250250;--------------------------------------------------------------------
    251251%ifndef EXCLUDE_FROM_XTIDE_UNIVERSAL_BIOS   ; Only used when debugging
    252 ALIGN JUMP_ALIGN
     252ALIGN KEYBOARD_JUMP_ALIGN
    253253Keyboard_RemoveAllKeystrokesFromBuffer:
    254254    call    Keyboard_GetKeystrokeToAX
     
    272272;       Nothing
    273273;--------------------------------------------------------------------
    274 ALIGN JUMP_ALIGN
     274ALIGN KEYBOARD_JUMP_ALIGN
    275275Keyboard_GetKeystrokeToAXandLeaveItToBuffer:
    276276    mov     ah, CHECK_FOR_KEYSTROKE
    277277    int     BIOS_KEYBOARD_INTERRUPT_16h
    278278    ret
    279 ALIGN JUMP_ALIGN
     279ALIGN KEYBOARD_JUMP_ALIGN
    280280Keyboard_GetKeystrokeToAX:
    281281    call    Keyboard_GetKeystrokeToAXandLeaveItToBuffer
    282282    jz      SHORT Keyboard_GetKeystrokeToAXReturn
    283283    ; Fall to Keyboard_GetKeystrokeToAXandWaitIfNecessary
    284 ALIGN JUMP_ALIGN
     284ALIGN KEYBOARD_JUMP_ALIGN
    285285Keyboard_GetKeystrokeToAXandWaitIfNecessary:
    286286    xor     ah, ah                      ; GET_KEYSTROKE
  • trunk/Assembly_Library/Src/Menu/CharOutLineSplitter.asm

    r181 r369  
    1414;       AX, DX, DI
    1515;--------------------------------------------------------------------
    16 ALIGN JUMP_ALIGN
     16ALIGN MENU_JUMP_ALIGN
    1717CharOutLineSplitter_PrepareForPrintingTextLines:
    1818    ; Get first text line column offset to DX
     
    4141;       Nothing
    4242;--------------------------------------------------------------------
    43 ALIGN JUMP_ALIGN
     43ALIGN MENU_JUMP_ALIGN
    4444CharOutLineSplitter_GetFirstBorderLineColumnOffsetToAX:
    4545    call    MenuLocation_GetTitleBordersTopLeftCoordinatesToAX
     
    6060;       DX
    6161;--------------------------------------------------------------------
    62 ALIGN JUMP_ALIGN
     62ALIGN MENU_JUMP_ALIGN
    6363CharOutLineSplitter_IsCursorAtTheEndOfTextLine:
    6464    push    ax
     
    8686;       AX, DX
    8787;--------------------------------------------------------------------
    88 ALIGN JUMP_ALIGN
     88ALIGN MENU_JUMP_ALIGN
    8989CharOutLineSplitter_MovePartialWordToNewTextLine:
    9090    push    si
     
    106106    mov     cx, di
    107107    mov     si, di
    108 ALIGN JUMP_ALIGN
     108ALIGN MENU_JUMP_ALIGN
    109109.ScanNextCharacter:     ; Space will always be found since one comes after border
    110110    dec     si
  • trunk/Assembly_Library/Src/Menu/Menu.asm

    r181 r369  
    1717;       AX (unless used as a return register), DI
    1818;--------------------------------------------------------------------
    19 ALIGN JUMP_ALIGN
     19ALIGN MENU_JUMP_ALIGN
    2020Menu_FunctionFromDI:
    2121    push    si
  • trunk/Assembly_Library/Src/Menu/MenuAttributes.asm

    r223 r369  
    2828;       AX, SI, DI
    2929;--------------------------------------------------------------------
    30 ALIGN JUMP_ALIGN
     30ALIGN MENU_JUMP_ALIGN
    3131MenuAttribute_SetToDisplayContextFromTypeInSI:
    3232    call    MenuAttribute_GetToAXfromTypeInSI
     
    4444;       SI
    4545;--------------------------------------------------------------------
    46 ALIGN JUMP_ALIGN
     46ALIGN MENU_JUMP_ALIGN
    4747MenuAttribute_GetToAXfromTypeInSI:
    4848    push    ds
     
    5959    jmp     SHORT .LoadAttributeAndReturn
    6060
    61 ALIGN JUMP_ALIGN
     61ALIGN MENU_JUMP_ALIGN
    6262.LoadMonoAttribute:
    6363    add     si, .rgcMonochromeAttributes
    6464    jmp     SHORT .LoadAttributeAndReturn
    6565
    66 ALIGN JUMP_ALIGN
     66ALIGN MENU_JUMP_ALIGN
    6767.LoadColorAttribute:
    6868    add     si, .rgcColorAttributes
  • trunk/Assembly_Library/Src/Menu/MenuBorders.asm

    r293 r369  
    2222;       AX, BX, CX, DX, SI, DI
    2323;--------------------------------------------------------------------
    24 ALIGN JUMP_ALIGN
     24ALIGN MENU_JUMP_ALIGN
    2525MenuBorders_RefreshAll:
    2626%ifndef USE_186
     
    5252;       AX, BX, DX, SI, DI
    5353;--------------------------------------------------------------------
    54 ALIGN JUMP_ALIGN
     54ALIGN MENU_JUMP_ALIGN
    5555MenuBorders_RedrawBottomBorderLine:
    5656    call    MenuBorders_AdjustDisplayContextForDrawingBorders
     
    7171;--------------------------------------------------------------------
    7272%ifndef EXCLUDE_FROM_XTIDE_UNIVERSAL_BIOS
    73 ALIGN JUMP_ALIGN
     73ALIGN MENU_JUMP_ALIGN
    7474MenuBorders_RefreshItemBorders:
    7575    call    MenuBorders_AdjustDisplayContextForDrawingBorders
     
    9191;       AX, BX, SI, DI
    9292;--------------------------------------------------------------------
    93 ALIGN JUMP_ALIGN
     93ALIGN MENU_JUMP_ALIGN
    9494MenuBorders_AdjustDisplayContextForDrawingBorders:
    9595    mov     bl, ATTRIBUTES_ARE_USED
     
    116116;       Nothing
    117117;--------------------------------------------------------------------
    118 ALIGN JUMP_ALIGN
     118ALIGN MENU_JUMP_ALIGN
    119119MenuBorders_GetNumberOfMiddleCharactersToDX:
    120120    eMOVZX  dx, [bp+MENUINIT.bWidth]
     
    133133;       AX, BX, CX, SI, DI
    134134;--------------------------------------------------------------------
    135 ALIGN JUMP_ALIGN
     135ALIGN MENU_JUMP_ALIGN
    136136RefreshTitleBorders:
    137137    call    DrawTopBorderLine
     
    149149;       AX, BX, CX, SI, DI
    150150;--------------------------------------------------------------------
    151 ALIGN JUMP_ALIGN
     151ALIGN MENU_JUMP_ALIGN
    152152RefreshInformationBorders:
    153153    call    DrawSeparationBorderLine
     
    165165;       AX, BX, CX, SI, DI
    166166;--------------------------------------------------------------------
    167 ALIGN JUMP_ALIGN
     167ALIGN MENU_JUMP_ALIGN
    168168RefreshItemBorders:
    169169    call    DrawSeparationBorderLine
     
    184184DrawTextBorderLinesByCXtimes:
    185185    jcxz    .NoBorderLinesToDraw
    186 ALIGN JUMP_ALIGN
     186ALIGN MENU_JUMP_ALIGN
    187187.DrawBordersWithFunctionInBX:
    188188    call    DrawTextBorderLine
     
    207207;       AX, SI, DI
    208208;--------------------------------------------------------------------
    209 ALIGN JUMP_ALIGN
     209ALIGN MENU_JUMP_ALIGN
    210210DrawTopBorderLine:
    211211    mov     si, g_rgbTopBorderCharacters
     
    213213    jmp     SHORT PrintNewlineToEndBorderLine
    214214
    215 ALIGN JUMP_ALIGN
     215ALIGN MENU_JUMP_ALIGN
    216216DrawSeparationBorderLine:
    217217    mov     si, g_rgbSeparationBorderCharacters
    218218    jmp     SHORT PrintBorderCharactersFromCSSIandShadowCharacter
    219219
    220 ALIGN JUMP_ALIGN
     220ALIGN MENU_JUMP_ALIGN
    221221DrawBottomBorderLine:
    222222    mov     si, g_rgbBottomBorderCharacters
     
    231231    ret
    232232
    233 ALIGN JUMP_ALIGN
     233ALIGN MENU_JUMP_ALIGN
    234234DrawBottomShadowLine:
    235235    CALL_DISPLAY_LIBRARY GetSoftwareCoordinatesToAX
     
    243243    ret
    244244
    245 ALIGN JUMP_ALIGN
     245ALIGN MENU_JUMP_ALIGN
    246246DrawTextBorderLine:
    247247    mov     si, g_rgbTextBorderCharacters
     
    259259;       AX, SI, DI
    260260;--------------------------------------------------------------------
    261 ALIGN JUMP_ALIGN
     261ALIGN MENU_JUMP_ALIGN
    262262PrintBorderCharactersFromCSSIandShadowCharacter:
    263263    call    PrintBorderCharactersFromCSSI
     
    277277;       AX, DI
    278278;--------------------------------------------------------------------
    279 ALIGN JUMP_ALIGN
     279ALIGN MENU_JUMP_ALIGN
    280280PrintNewlineToEndBorderLine:
    281281    CALL_DISPLAY_LIBRARY PrintNewlineCharacters
     
    293293;       AX, SI, DI
    294294;--------------------------------------------------------------------
    295 ALIGN JUMP_ALIGN
     295ALIGN MENU_JUMP_ALIGN
    296296PrintShadowCharactersByDXtimes:
    297297    CALL_DISPLAY_LIBRARY PushDisplayContext
     
    323323;       AX, SI, DI
    324324;--------------------------------------------------------------------
    325 ALIGN JUMP_ALIGN
     325ALIGN MENU_JUMP_ALIGN
    326326PrintBorderCharactersFromCSSI:
    327327    cs lodsb        ; Load from [cs:si+BORDER_CHARS.cLeft] to AL
     
    346346;       AX, DI
    347347;--------------------------------------------------------------------
    348 ALIGN JUMP_ALIGN
     348ALIGN MENU_JUMP_ALIGN
    349349MenuBorders_PrintSingleBorderCharacterFromAL:
    350350    CALL_DISPLAY_LIBRARY PrintCharacterFromAL
    351351    ret
    352352
    353 ALIGN JUMP_ALIGN
     353ALIGN MENU_JUMP_ALIGN
    354354MenuBorders_PrintMultipleBorderCharactersFromAL:
    355355    push    cx
     
    369369;       AX, SI, DI
    370370;--------------------------------------------------------------------
    371 ALIGN JUMP_ALIGN
     371ALIGN MENU_JUMP_ALIGN
    372372DrawTimeoutCounterString:
    373373    call    MenuTime_GetTimeoutSecondsLeftToAX
  • trunk/Assembly_Library/Src/Menu/MenuCharOut.asm

    r293 r369  
    2121;       AX, DX
    2222;--------------------------------------------------------------------
    23 ALIGN JUMP_ALIGN
     23ALIGN MENU_JUMP_ALIGN
    2424MenuCharOut_MenuTeletypeOutputWithAutomaticLineChange:
    2525    call    CharOutLineSplitter_IsCursorAtTheEndOfTextLine
     
    3030    ; Fall to MenuCharOut_MenuTextTeletypeOutputWithAttribute
    3131
    32 ALIGN JUMP_ALIGN
     32ALIGN MENU_JUMP_ALIGN
    3333MenuCharOut_MenuTeletypeOutput:
    3434    cmp     al, CR
     
    5151;       AX, DX
    5252;--------------------------------------------------------------------
    53 ALIGN JUMP_ALIGN
     53ALIGN MENU_JUMP_ALIGN
    5454MenuCharOut_PrintLFCRandAdjustOffsetForStartOfLine:
    5555    mov     al, LF
     
    5757    ; Fall to PrintCRandAdjustOffsetForStartOfLine
    5858
    59 ALIGN JUMP_ALIGN
     59ALIGN MENU_JUMP_ALIGN
    6060PrintCRandAdjustOffsetForStartOfLine:
    6161    mov     al, CR
  • trunk/Assembly_Library/Src/Menu/MenuEvent.asm

    r189 r369  
    1616;       AX, BX, DX
    1717;--------------------------------------------------------------------
    18 ALIGN JUMP_ALIGN
     18ALIGN MENU_JUMP_ALIGN
    1919MenuEvent_InitializeMenuinit:
    2020    push    ss
     
    3535;       AX, BX, DX
    3636;--------------------------------------------------------------------
    37 ALIGN JUMP_ALIGN
     37ALIGN MENU_JUMP_ALIGN
    3838MenuEvent_ExitMenu:
    3939    mov     bl, MENUEVENT_ExitMenu
     
    5252;       AX, BX, DX
    5353;--------------------------------------------------------------------
    54 ALIGN JUMP_ALIGN
     54ALIGN MENU_JUMP_ALIGN
    5555MenuEvent_IdleProcessing:
    5656    mov     bl, MENUEVENT_IdleProcessing
     
    7070;       AX, CX, BX, DX
    7171;--------------------------------------------------------------------
    72 ALIGN JUMP_ALIGN
     72ALIGN MENU_JUMP_ALIGN
    7373MenuEvent_RefreshTitle:
    7474    mov     bl, MENUEVENT_RefreshTitle
     
    9393;       AX, BX, DX
    9494;--------------------------------------------------------------------
    95 ALIGN JUMP_ALIGN
     95ALIGN MENU_JUMP_ALIGN
    9696MenuEvent_RefreshItemFromCX:
    9797    mov     bl, MENUEVENT_RefreshItemFromCX
     
    109109;       AX, BX, DX, SI, DI
    110110;--------------------------------------------------------------------
    111 ALIGN JUMP_ALIGN
     111ALIGN MENU_JUMP_ALIGN
    112112MenuEvent_HighlightItemFromCX:
    113113    mov     dx, cx
     
    136136;       AX, BX, DX
    137137;--------------------------------------------------------------------
    138 ALIGN JUMP_ALIGN
     138ALIGN MENU_JUMP_ALIGN
    139139MenuEvent_KeyStrokeInAX:
    140140    mov     bl, MENUEVENT_KeyStrokeInAX
     
    171171;       BX
    172172;--------------------------------------------------------------------
    173 ALIGN JUMP_ALIGN
     173ALIGN MENU_JUMP_ALIGN
    174174MenuEvent_SendFromBX:
    175175    push    es
  • trunk/Assembly_Library/Src/Menu/MenuInit.asm

    r289 r369  
    1515;       All except segments
    1616;--------------------------------------------------------------------
    17 ALIGN JUMP_ALIGN
     17ALIGN MENU_JUMP_ALIGN
    1818MenuInit_DisplayMenuWithHandlerInBXandUserDataInDXAX:
    1919    push    es
     
    4949;       All, except SS:BP
    5050;--------------------------------------------------------------------
    51 ALIGN JUMP_ALIGN
     51ALIGN MENU_JUMP_ALIGN
    5252MenuInit_EnterMenuWithHandlerInBXandUserDataInDXAX:
    5353    mov     [bp+MENU.fnEventHandler], bx
     
    7676;       AX, BX, CX, DX, SI, DI
    7777;--------------------------------------------------------------------
    78 ALIGN JUMP_ALIGN
     78ALIGN MENU_JUMP_ALIGN
    7979MenuInit_RefreshMenuWindow:
    8080    call    MenuBorders_RefreshAll          ; Draw borders
     
    9494;--------------------------------------------------------------------
    9595%ifndef EXCLUDE_FROM_XTIDE_UNIVERSAL_BIOS
    96 ALIGN JUMP_ALIGN
     96ALIGN MENU_JUMP_ALIGN
    9797MenuInit_CloseMenuIfExitEventAllows:
    9898    call    MenuEvent_ExitMenu
     
    111111;       Nothing
    112112;--------------------------------------------------------------------
    113 ALIGN JUMP_ALIGN
     113ALIGN MENU_JUMP_ALIGN
    114114MenuInit_CloseMenuWindow:
    115115    or      BYTE [bp+MENU.bFlags], FLG_MENU_EXIT
     
    127127;       AX, BX, CX, DX, SI, DI
    128128;--------------------------------------------------------------------
    129 ALIGN JUMP_ALIGN
     129ALIGN MENU_JUMP_ALIGN
    130130MenuInit_HighlightItemFromAX:
    131131    sub     ax, [bp+MENUINIT.wHighlightedItem]
     
    142142;--------------------------------------------------------------------
    143143%ifndef EXCLUDE_FROM_XTIDE_UNIVERSAL_BIOS
    144 ALIGN JUMP_ALIGN
     144ALIGN MENU_JUMP_ALIGN
    145145MenuInit_GetHighlightedItemToAX:
    146146    mov     ax, [bp+MENUINIT.wHighlightedItem]
     
    162162;--------------------------------------------------------------------
    163163%ifndef EXCLUDE_FROM_XTIDE_UNIVERSAL_BIOS
    164 ALIGN JUMP_ALIGN
     164ALIGN MENU_JUMP_ALIGN
    165165MenuInit_SetTitleHeightFromAL:
    166166    mov     [bp+MENUINIT.bTitleLines], al
    167167    ret
    168168
    169 ALIGN JUMP_ALIGN
     169ALIGN MENU_JUMP_ALIGN
    170170MenuInit_SetInformationHeightFromAL:
    171171    mov     [bp+MENUINIT.bInfoLines], al
    172172    ret
    173173
    174 ALIGN JUMP_ALIGN
     174ALIGN MENU_JUMP_ALIGN
    175175MenuInit_SetTotalItemsFromAX:
    176176    mov     [bp+MENUINIT.wItems], ax
     
    191191;--------------------------------------------------------------------
    192192%ifndef EXCLUDE_FROM_XTIDE_UNIVERSAL_BIOS
    193 ALIGN JUMP_ALIGN
     193ALIGN MENU_JUMP_ALIGN
    194194MenuInit_SetUserDataFromDSSI:
    195195    mov     [bp+MENU.dwUserData], si
     
    197197    ret
    198198
    199 ALIGN JUMP_ALIGN
     199ALIGN MENU_JUMP_ALIGN
    200200MenuInit_GetUserDataToDSSI:
    201201    lds     si, [bp+MENU.dwUserData]
  • trunk/Assembly_Library/Src/Menu/MenuLocation.asm

    r293 r369  
    1616;       Nothing
    1717;--------------------------------------------------------------------
    18 ALIGN JUMP_ALIGN
     18ALIGN MENU_JUMP_ALIGN
    1919MenuLocation_GetTextCoordinatesToAXforItemInAX:
    2020    sub     ax, [bp+MENU.wFirstVisibleItem]     ; Item to line
     
    4242    jmp     SHORT AddItemBordersTopLeftCoordinatesToAX
    4343
    44 ALIGN JUMP_ALIGN
     44ALIGN MENU_JUMP_ALIGN
    4545MenuLocation_GetTitleTextTopLeftCoordinatesToAX:
    4646    mov     ax, (MENU_TEXT_ROW_OFFSET<<8) | MENU_TEXT_COLUMN_OFFSET
     
    5050    jmp     SHORT MenuLocation_AddTitleBordersTopLeftCoordinatesToAX
    5151
    52 ALIGN JUMP_ALIGN
     52ALIGN MENU_JUMP_ALIGN
    5353MenuLocation_GetInformationTextTopLeftCoordinatesToAX:
    5454    mov     ax, (MENU_TEXT_ROW_OFFSET<<8) | MENU_TEXT_COLUMN_OFFSET
    5555    jmp     SHORT AddInformationBordersTopLeftCoordinatesToAX
    5656
    57 ALIGN JUMP_ALIGN
     57ALIGN MENU_JUMP_ALIGN
    5858MenuLocation_GetBottomBordersTopLeftCoordinatesToAX:
    5959    xor     ax, ax
     
    7777    stc                         ; Compensate for Information top border
    7878    adc     ah, [bp+MENUINIT.bInfoLines]
    79 ALIGN JUMP_ALIGN
     79ALIGN MENU_JUMP_ALIGN
    8080AddInformationBordersTopLeftCoordinatesToAX:
    8181    push    cx
     
    8484    add     ah, cl
    8585    pop     cx
    86 ALIGN JUMP_ALIGN
     86ALIGN MENU_JUMP_ALIGN
    8787AddItemBordersTopLeftCoordinatesToAX:
    8888    stc                         ; Compensate for Title top border
    8989    adc     ah, [bp+MENUINIT.bTitleLines]
    90 ALIGN JUMP_ALIGN
     90ALIGN MENU_JUMP_ALIGN
    9191MenuLocation_AddTitleBordersTopLeftCoordinatesToAX:
    9292    push    di
     
    112112;       Nothing
    113113;--------------------------------------------------------------------
    114 ALIGN JUMP_ALIGN
     114ALIGN MENU_JUMP_ALIGN
    115115MenuLocation_GetMaxTextLineLengthToAX:
    116116    eMOVZX  ax, [bp+MENUINIT.bWidth]
  • trunk/Assembly_Library/Src/Menu/MenuLoop.asm

    r189 r369  
    1414;       AX, BX, CX, DX, SI, DI
    1515;--------------------------------------------------------------------
    16 ALIGN JUMP_ALIGN
     16ALIGN MENU_JUMP_ALIGN
    1717MenuLoop_Enter:
    1818    call    KeystrokeProcessing
     
    3636;       All, except SS:BP
    3737;--------------------------------------------------------------------
    38 ALIGN JUMP_ALIGN
     38ALIGN MENU_JUMP_ALIGN
    3939KeystrokeProcessing:
    4040    call    Keyboard_GetKeystrokeToAX
     
    4343    ret
    4444
    45 ALIGN JUMP_ALIGN
     45ALIGN MENU_JUMP_ALIGN
    4646TimeoutProcessing:
    4747    call    MenuTime_UpdateSelectionTimeout
     
    6262;       AX, BX, CX, DX, SI, DI
    6363;--------------------------------------------------------------------
    64 ALIGN JUMP_ALIGN
     64ALIGN MENU_JUMP_ALIGN
    6565ProcessKeystrokeFromAX:
    6666    xchg    cx, ax
     
    8585;       BX, CX, DX, SI, DI
    8686;--------------------------------------------------------------------
    87 ALIGN JUMP_ALIGN
     87ALIGN MENU_JUMP_ALIGN
    8888.ProcessMenuSystemKeystrokeFromAX:
    8989    cmp     al, ESC
     
    9696    ret     ; Return with CF cleared since keystroke not processed
    9797
    98 ALIGN JUMP_ALIGN
     98ALIGN MENU_JUMP_ALIGN
    9999.LeaveMenuWithoutSelectingItem:
    100100    call    MenuEvent_ExitMenu
     
    106106    ret
    107107
    108 ALIGN JUMP_ALIGN
     108ALIGN MENU_JUMP_ALIGN
    109109.SelectItem:
    110110    mov     cx, [bp+MENUINIT.wHighlightedItem]
     
    128128;       BX, CX, DX, SI, DI
    129129;--------------------------------------------------------------------
    130 ALIGN JUMP_ALIGN
     130ALIGN MENU_JUMP_ALIGN
    131131MenuLoop_ProcessScrollingKeysFromAX:
    132132    xchg    ah, al
     
    148148    ret
    149149
    150 ALIGN JUMP_ALIGN
     150ALIGN MENU_JUMP_ALIGN
    151151.ChangeToPreviousPage:
    152152    call    MenuScrollbars_GetMaxVisibleItemsOnPageToCX
     
    157157    jge     SHORT .MoveHighlightedItemByAX  ; No rotation for PgUp
    158158    ; Fall to .SelectFirstItem
    159 ALIGN JUMP_ALIGN
     159ALIGN MENU_JUMP_ALIGN
    160160.SelectFirstItem:
    161161    mov     ax, [bp+MENUINIT.wHighlightedItem]
     
    163163    jmp     SHORT .MoveHighlightedItemByAX
    164164
    165 ALIGN JUMP_ALIGN
     165ALIGN MENU_JUMP_ALIGN
    166166.ChangeToNextPage:
    167167    call    MenuScrollbars_GetMaxVisibleItemsOnPageToCX
     
    172172    jb      SHORT .MoveHighlightedItemByAX  ; No rotation for PgDn
    173173    ; Fall to .SelectLastItem
    174 ALIGN JUMP_ALIGN
     174ALIGN MENU_JUMP_ALIGN
    175175.SelectLastItem:
    176176    stc
     
    179179    jmp     SHORT .MoveHighlightedItemByAX
    180180
    181 ALIGN JUMP_ALIGN
     181ALIGN MENU_JUMP_ALIGN
    182182.DecrementSelectedItem:
    183183    mov     ax, -1
     
    185185.IncrementSelectedItem:
    186186    mov     al, 1   ; AH is already 0
    187 ALIGN JUMP_ALIGN
     187ALIGN MENU_JUMP_ALIGN
    188188.MoveHighlightedItemByAX:
    189189    call    MenuScrollbars_MoveHighlightedItemByAX
  • trunk/Assembly_Library/Src/Menu/MenuScrollbars.asm

    r293 r369  
    1515;       AX
    1616;--------------------------------------------------------------------
    17 ALIGN JUMP_ALIGN
     17ALIGN MENU_JUMP_ALIGN
    1818MenuScrollbars_AreScrollbarsNeeded:
    1919    xchg    ax, cx
     
    3434;       AH, CX, DX
    3535;--------------------------------------------------------------------
    36 ALIGN JUMP_ALIGN
     36ALIGN MENU_JUMP_ALIGN
    3737MenuScrollbars_GetScrollCharacterToALForLineInDI:
    3838    call    MenuScrollbars_GetMaxVisibleItemsOnPageToCX
     
    4545    call    .GetLastThumbLineToAX
    4646    cmp     ax, di              ; After last thumb line?
    47 ALIGN JUMP_ALIGN
     47ALIGN MENU_JUMP_ALIGN
    4848.ReturnTrackCharacter:
    4949    mov     al, SCROLL_TRACK_CHARACTER
    5050    jb      SHORT .Return
    5151    mov     al, SCROLL_THUMB_CHARACTER
    52 ALIGN JUMP_ALIGN, ret
     52ALIGN MENU_JUMP_ALIGN, ret
    5353.Return:
    5454    ret
     
    6464;       CX, DX
    6565;--------------------------------------------------------------------
    66 ALIGN JUMP_ALIGN
     66ALIGN MENU_JUMP_ALIGN
    6767.GetLastThumbLineToAX:
    6868    call    MenuScrollbars_GetLastVisibleItemOnPageToAX
     
    8080;       CX, DX
    8181;--------------------------------------------------------------------
    82 ALIGN JUMP_ALIGN
     82ALIGN MENU_JUMP_ALIGN
    8383.CalculateFirstOrLastThumbLineToAX:
    8484    mul     cx
     
    9797;       AX, BX, CX, DX, SI, DI
    9898;--------------------------------------------------------------------
    99 ALIGN JUMP_ALIGN
     99ALIGN MENU_JUMP_ALIGN
    100100MenuScrollbars_MoveHighlightedItemByAX:
    101101    mov     cx, [bp+MENUINIT.wHighlightedItem]
     
    120120    jae     SHORT .ScrollPageForNewItemInCX
    121121
    122 ALIGN JUMP_ALIGN
     122ALIGN MENU_JUMP_ALIGN
    123123.RotateNegativeItemInCX:
    124124    add     cx, dx
     
    135135;       AX, BX, CX, DX, SI, DI
    136136;--------------------------------------------------------------------
    137 ALIGN JUMP_ALIGN
     137ALIGN MENU_JUMP_ALIGN
    138138.ScrollPageForNewItemInCX:
    139139    call    MenuScrollbars_IsItemInCXonVisiblePage
     
    154154    cwd     ; This won't work if MaxFirstVisibleItem > 32767
    155155
    156 ALIGN JUMP_ALIGN
     156ALIGN MENU_JUMP_ALIGN
    157157.DXisPositive:
    158158    cmp     ax, dx
     
    160160    xchg    dx, ax
    161161
    162 ALIGN JUMP_ALIGN
     162ALIGN MENU_JUMP_ALIGN
    163163.AXisLessThanDX:
    164164    mov     [bp+MENU.wFirstVisibleItem], ax
    165165    call    MenuText_RefreshAllItems
    166166
    167 ALIGN JUMP_ALIGN
     167ALIGN MENU_JUMP_ALIGN
    168168.HighlightNewItemOnCX:
    169169    jmp     MenuEvent_HighlightItemFromCX
     
    181181;       AX
    182182;--------------------------------------------------------------------
    183 ALIGN JUMP_ALIGN
     183ALIGN MENU_JUMP_ALIGN
    184184MenuScrollbars_IsItemInCXonVisiblePage:
    185185    cmp     [bp+MENU.wFirstVisibleItem], cx
     
    190190    ja      SHORT .ItemIsNotVisible
    191191    stc     ; Item is visible
    192 ALIGN JUMP_ALIGN, ret
     192ALIGN MENU_JUMP_ALIGN, ret
    193193.ItemIsNotVisible:
    194194    ret
     
    204204;       Nothing
    205205;--------------------------------------------------------------------
    206 ALIGN JUMP_ALIGN
     206ALIGN MENU_JUMP_ALIGN
    207207MenuScrollbars_GetLastVisibleItemOnPageToAX:
    208208    xchg    cx, ax
     
    223223;       Nothing
    224224;--------------------------------------------------------------------
    225 ALIGN JUMP_ALIGN
     225ALIGN MENU_JUMP_ALIGN
    226226MenuScrollbars_GetActualVisibleItemsOnPageToCX:
    227227    call    MenuScrollbars_GetMaxVisibleItemsOnPageToCX
     
    229229    jb      SHORT .Return
    230230    mov     cx, [bp+MENUINIT.wItems]
    231 ALIGN JUMP_ALIGN, ret
     231ALIGN MENU_JUMP_ALIGN, ret
    232232.Return:
    233233    ret
     
    243243;       Nothing
    244244;--------------------------------------------------------------------
    245 ALIGN JUMP_ALIGN
     245ALIGN MENU_JUMP_ALIGN
    246246MenuScrollbars_GetMaxVisibleItemsOnPageToCX:
    247247    eMOVZX  cx, [bp+MENUINIT.bHeight]
  • trunk/Assembly_Library/Src/Menu/MenuText.asm

    r194 r369  
    1616;--------------------------------------------------------------------
    1717%ifndef EXCLUDE_FROM_XTIDE_UNIVERSAL_BIOS
    18 ALIGN JUMP_ALIGN
     18ALIGN MENU_JUMP_ALIGN
    1919MenuText_ClearTitleArea:
    2020    CALL_DISPLAY_LIBRARY PushDisplayContext     ; Save cursor coordinates
     
    2424%endif
    2525       
    26 ALIGN JUMP_ALIGN
     26ALIGN MENU_JUMP_ALIGN
    2727MenuText_ClearInformationArea:
    2828    CALL_DISPLAY_LIBRARY PushDisplayContext     ; Save cursor coordinates
     
    5050;       AX, BX, CX, DX, SI, DI
    5151;--------------------------------------------------------------------
    52 ALIGN JUMP_ALIGN
     52ALIGN MENU_JUMP_ALIGN
    5353MenuText_RefreshTitle:
    5454    cmp     BYTE [bp+MENUINIT.bTitleLines], 0
     
    5757    jmp     MenuEvent_RefreshTitle
    5858
    59 ALIGN JUMP_ALIGN
     59ALIGN MENU_JUMP_ALIGN
    6060MenuText_RefreshInformation:
    6161    cmp     BYTE [bp+MENUINIT.bInfoLines], 0
     
    7474;       AX, BX, DX, SI, DI
    7575;--------------------------------------------------------------------
    76 ALIGN JUMP_ALIGN
     76ALIGN MENU_JUMP_ALIGN
    7777PrepareToDrawTitleArea:
    7878    mov     si, ATTRIBUTE_CHARS.cTitle
     
    8080    jmp     SHORT FinishPreparationsToDrawTitleOrInformationArea
    8181
    82 ALIGN JUMP_ALIGN
     82ALIGN MENU_JUMP_ALIGN
    8383MenuText_PrepareToDrawInformationArea:
    8484    mov     si, ATTRIBUTE_CHARS.cInformation
     
    9898;       AX, BX, DX, SI, DI
    9999;--------------------------------------------------------------------
    100 ALIGN JUMP_ALIGN
     100ALIGN MENU_JUMP_ALIGN
    101101MenuText_RefreshAllItems:
    102102    push    cx
     
    104104    call    MenuScrollbars_GetActualVisibleItemsOnPageToCX
    105105    mov     ax, [bp+MENU.wFirstVisibleItem]
    106 ALIGN JUMP_ALIGN
     106ALIGN MENU_JUMP_ALIGN
    107107.ItemRefreshLoop:
    108108    call    MenuText_RefreshItemFromAX
     
    124124;       BX, DX, SI, DI
    125125;--------------------------------------------------------------------
    126 ALIGN JUMP_ALIGN
     126ALIGN MENU_JUMP_ALIGN
    127127MenuText_RefreshItemFromAX:
    128128    push    cx
     
    151151;       AX, BX, DX, SI, DI
    152152;--------------------------------------------------------------------
    153 ALIGN JUMP_ALIGN
     153ALIGN MENU_JUMP_ALIGN
    154154MenuText_AdjustDisplayContextForDrawingItemFromCX:
    155155    mov     ax, cx
     
    171171;       AX, BX, DX, SI, DI
    172172;--------------------------------------------------------------------
    173 ALIGN JUMP_ALIGN
     173ALIGN MENU_JUMP_ALIGN
    174174AdjustDisplayContextForDrawingTextsAtCoordsInAXwithAttrTypeInSIandCharOutFunctionInDX:
    175175    CALL_DISPLAY_LIBRARY SetCursorCoordinatesFromAX
     
    192192;       AX, BX, DX, DI
    193193;--------------------------------------------------------------------
    194 ALIGN JUMP_ALIGN
     194ALIGN MENU_JUMP_ALIGN
    195195ClearPreviousItem:
    196196    CALL_DISPLAY_LIBRARY GetSoftwareCoordinatesToAX
     
    217217;       Nothing
    218218;--------------------------------------------------------------------
    219 ALIGN JUMP_ALIGN
     219ALIGN MENU_JUMP_ALIGN
    220220GetItemTextAttributeTypeToSIforItemInCX:
    221221    mov     si, ATTRIBUTE_CHARS.cItem
     
    226226    jne     SHORT .ReturnAttributeTypeInSI
    227227    sub     si, BYTE ATTRIBUTE_CHARS.cItem - ATTRIBUTE_CHARS.cHighlightedItem
    228 ALIGN JUMP_ALIGN, ret
     228ALIGN MENU_JUMP_ALIGN, ret
    229229.ReturnAttributeTypeInSI:
    230230    ret
     
    241241;       AX, CX, BX, DX, SI, DI
    242242;--------------------------------------------------------------------
    243 ALIGN JUMP_ALIGN
     243ALIGN MENU_JUMP_ALIGN
    244244DrawScrollbarCharacterForItemInCXifNecessary:
    245245    call    MenuScrollbars_AreScrollbarsNeeded
     
    247247    ret
    248248
    249 ALIGN JUMP_ALIGN
     249ALIGN MENU_JUMP_ALIGN
    250250.DrawScrollbarCharacter:
    251251    call    MenuBorders_AdjustDisplayContextForDrawingBorders
  • trunk/Assembly_Library/Src/Menu/MenuTime.asm

    r133 r369  
    1515;       AX, BX
    1616;--------------------------------------------------------------------
    17 ALIGN JUMP_ALIGN
     17ALIGN MENU_JUMP_ALIGN
    1818MenuTime_StartSelectionTimeoutWithTicksInAX:
    1919    push    ds
     
    3434;       AX, BX, DX, SI, DI
    3535;--------------------------------------------------------------------
    36 ALIGN JUMP_ALIGN
     36ALIGN MENU_JUMP_ALIGN
    3737MenuTime_StopSelectionTimeout:
    3838    test    BYTE [bp+MENU.bFlags], FLG_MENU_TIMEOUT_COUNTDOWN
     
    5252;       AX, BX, SI, DI
    5353;--------------------------------------------------------------------
    54 ALIGN JUMP_ALIGN
     54ALIGN MENU_JUMP_ALIGN
    5555MenuTime_UpdateSelectionTimeout:
    5656    test    BYTE [bp+MENU.bFlags], FLG_MENU_TIMEOUT_COUNTDOWN
     
    6666    ret
    6767
    68 ALIGN JUMP_ALIGN
     68ALIGN MENU_JUMP_ALIGN
    6969.RedrawSinceNoTimeout:
    7070    call    MenuBorders_RedrawBottomBorderLine
     
    8484;       AX
    8585;--------------------------------------------------------------------
    86 ALIGN JUMP_ALIGN
     86ALIGN MENU_JUMP_ALIGN
    8787MenuTime_GetTimeoutSecondsLeftToAX:
    8888    push    ds
     
    117117;       Nothing
    118118;--------------------------------------------------------------------
    119 ALIGN JUMP_ALIGN
     119ALIGN MENU_JUMP_ALIGN
    120120PointDSBXtoTimeoutCounter:
    121121    push    ss
  • trunk/Assembly_Library/Src/Serial/SerialServerScan.asm

    r277 r369  
    2525;       AL, BX, CX, DX, DI
    2626;--------------------------------------------------------------------
    27 ALIGN JUMP_ALIGN
    2827SerialServerScan_ScanForServer:     
    2928        mov     cx, 1           ; one sector, not scanning (default)
     
    117116;       AL, BX
    118117;--------------------------------------------------------------------
    119 ALIGN JUMP_ALIGN
    120118SerialServerScan_CheckForServer_PortAndBaudInDX:
    121119        push    bp              ; setup fake SerialServer_Command
  • trunk/Assembly_Library/Src/String/Char.asm

    r201 r369  
    3535;       Nothing
    3636;--------------------------------------------------------------------
    37 ALIGN JUMP_ALIGN
     37ALIGN STRING_JUMP_ALIGN
    3838Char_IsLowerCaseLetterInAL:
    3939    IS_BETWEEN_IMMEDIATES al, 'a', 'z'
     
    5151;--------------------------------------------------------------------
    5252%ifndef EXCLUDE_FROM_XTIDE_UNIVERSAL_BIOS
    53 ALIGN JUMP_ALIGN
     53ALIGN STRING_JUMP_ALIGN
    5454Char_IsUpperCaseLetterInAL:
    5555    IS_BETWEEN_IMMEDIATES al, 'A', 'Z'
     
    6969;--------------------------------------------------------------------
    7070%ifndef EXCLUDE_FROM_XTIDE_UNIVERSAL_BIOS
    71 ALIGN JUMP_ALIGN
     71ALIGN STRING_JUMP_ALIGN
    7272Char_IsHexadecimalDigitInAL:
    7373    call    Char_IsDecimalDigitInAL
     
    8989;--------------------------------------------------------------------
    9090%ifndef MODULE_STRINGS_COMPRESSED
    91 ALIGN JUMP_ALIGN
     91ALIGN STRING_JUMP_ALIGN
    9292Char_IsDecimalDigitInAL:
    9393    IS_BETWEEN_IMMEDIATES al, '0', '9'
     
    108108;--------------------------------------------------------------------
    109109%ifndef EXCLUDE_FROM_XTIDE_UNIVERSAL_BIOS
    110 ALIGN JUMP_ALIGN
     110ALIGN STRING_JUMP_ALIGN
    111111Char_ConvertIntegerToALfromDigitInALwithBaseInBX:
    112112    push    dx
     
    119119    jbe     SHORT .ConvertToDecimalDigit
    120120    sub     al, 'a'-'0'-10          ; Convert to hexadecimal integer
    121 ALIGN JUMP_ALIGN
     121ALIGN STRING_JUMP_ALIGN
    122122.ConvertToDecimalDigit:
    123123    sub     al, '0'                 ; Convert to decimal integer
     
    137137;--------------------------------------------------------------------
    138138%ifndef EXCLUDE_FROM_XTIDE_UNIVERSAL_BIOS
    139 ALIGN JUMP_ALIGN
     139ALIGN STRING_JUMP_ALIGN
    140140Char_CharIsValid:
    141141    stc
     
    143143%endif
    144144
    145 ALIGN JUMP_ALIGN
     145ALIGN STRING_JUMP_ALIGN
    146146Char_CharIsNotValid:
    147147    clc
     
    159159;--------------------------------------------------------------------
    160160%ifndef EXCLUDE_FROM_XTIDE_UNIVERSAL_BIOS
    161 ALIGN JUMP_ALIGN
     161ALIGN STRING_JUMP_ALIGN
    162162Char_ALtoLowerCaseLetter:
    163163    call    Char_IsUpperCaseLetterInAL  ; Is upper case character?
     
    174174;       Nothing
    175175;--------------------------------------------------------------------
    176 ALIGN JUMP_ALIGN
     176ALIGN STRING_JUMP_ALIGN
    177177Char_ALtoUpperCaseLetter:
    178178    call    Char_IsLowerCaseLetterInAL  ; Is lower case character?
     
    205205;--------------------------------------------------------------------
    206206%ifndef EXCLUDE_FROM_XTIDE_UNIVERSAL_BIOS
    207 ALIGN JUMP_ALIGN
     207ALIGN STRING_JUMP_ALIGN
    208208Char_GetFilterFunctionToDXforNumericBaseInBX:
    209209    mov     dx, Char_IsDecimalDigitInAL
  • trunk/Assembly_Library/Src/String/String.asm

    r293 r369  
    1515;       Nothing
    1616;--------------------------------------------------------------------
    17 ALIGN JUMP_ALIGN
     17ALIGN STRING_JUMP_ALIGN
    1818String_ConvertDSSItoLowerCase:
    1919    push    dx
     
    4242;       Nothing
    4343;--------------------------------------------------------------------
    44 ALIGN JUMP_ALIGN
     44ALIGN STRING_JUMP_ALIGN
    4545String_ConvertWordToAXfromStringInDSSIwithBaseInBX:
    4646    push    di
     
    6868;       Nothing
    6969;--------------------------------------------------------------------
    70 ALIGN JUMP_ALIGN
     70ALIGN STRING_JUMP_ALIGN
    7171String_CopyDSSItoESDIandGetLengthToCX:
    7272    push    ax
    7373
    7474    xor     cx, cx
    75 ALIGN JUMP_ALIGN
     75ALIGN STRING_JUMP_ALIGN
    7676.CopyNextCharacter:
    7777    lodsb                       ; Load from DS:SI to AL
     
    8282    jmp     SHORT .CopyNextCharacter
    8383
    84 ALIGN JUMP_ALIGN
     84ALIGN STRING_JUMP_ALIGN
    8585.EndOfString:
    8686    pop     ax
     
    9797;       Nothing
    9898;--------------------------------------------------------------------
    99 ALIGN JUMP_ALIGN
     99ALIGN STRING_JUMP_ALIGN
    100100String_GetLengthFromDSSItoCX:
    101101    push    ax
  • trunk/Assembly_Library/Src/String/StringProcess.asm

    r162 r369  
    3333;       Nothing (processing function can corrupt BX,DI,ES)
    3434;--------------------------------------------------------------------
    35 ALIGN JUMP_ALIGN
     35ALIGN STRING_JUMP_ALIGN
    3636StringProcess_DSSIwithFunctionInDX:
    3737    push    si
     
    3939
    4040    xor     cx, cx
    41 ALIGN JUMP_ALIGN
     41ALIGN STRING_JUMP_ALIGN
    4242.ProcessNextCharacter:
    4343    lodsb
     
    4848    jnc     SHORT .ProcessNextCharacter
    4949
    50 ALIGN JUMP_ALIGN
     50ALIGN STRING_JUMP_ALIGN
    5151.EndOfString:
    5252    pop     ax
     
    6565;       AL
    6666;--------------------------------------------------------------------
    67 ALIGN JUMP_ALIGN
     67ALIGN STRING_JUMP_ALIGN
    6868StringProcess_ConvertToLowerCase:
    6969    call    Char_ALtoLowerCaseLetter
     
    8484;       AX
    8585;--------------------------------------------------------------------
    86 ALIGN JUMP_ALIGN
     86ALIGN STRING_JUMP_ALIGN
    8787StringProcess_ConvertToWordInDIWithBaseInBX:
    8888    call    Char_ConvertIntegerToALfromDigitInALwithBaseInBX
  • trunk/Assembly_Library/Src/Util/Size.asm

    r142 r369  
    3030;       BX, DH
    3131;--------------------------------------------------------------------
    32 ALIGN JUMP_ALIGN
     32ALIGN UTIL_SIZE_JUMP_ALIGN
    3333Size_GetSizeToAXAndCharToDLfromBXDXAXwithMagnitudeInCX:
    3434%ifndef USE_186     ; If 8086/8088
     
    3737    push    si
    3838
    39 ALIGN JUMP_ALIGN
     39ALIGN UTIL_SIZE_JUMP_ALIGN
    4040.MagnitudeConversionLoop:
    4141    ePUSH_T di, .MagnitudeConversionLoop; DI corrupted only on 8086/8088 build
     
    8080;       Nothing
    8181;--------------------------------------------------------------------
    82 ALIGN JUMP_ALIGN
     82ALIGN UTIL_SIZE_JUMP_ALIGN
    8383Size_DivideSizeInBXDXAXby1024andIncrementMagnitudeInCX:
    8484    push    cx
    8585    xor     si, si                  ; Zero remainder
    8686    mov     cl, 10                  ; Divide by 1024
    87 ALIGN JUMP_ALIGN
     87ALIGN UTIL_SIZE_JUMP_ALIGN
    8888.ShiftLoop:
    8989    call    Size_DivideBXDXAXbyTwo
     
    107107;       Nothing
    108108;--------------------------------------------------------------------
    109 ALIGN JUMP_ALIGN
     109ALIGN UTIL_SIZE_JUMP_ALIGN
    110110Size_ConvertSectorCountInBXDXAXtoKiB:
    111111Size_DivideBXDXAXbyTwo:
  • trunk/Serial_Server/win32/Win32.cpp

    r338 r369  
    1717#include "../library/flatimage.h"
    1818
    19 void usage(void)
    20 {
    21     char *usageStrings[] = {
    22         "SerDrive - XTIDE Universal BIOS Serial Drive Server",
    23         "Version 2.0.0 Beta1, Built " __DATE__,
    24         "",
    25         "SerDrive is released under the GNU GPL v2.  SerDrive comes with ABSOLUTELY",
    26         "NO WARRANTY.  This is free software, and you are welcome to redistribute it",
    27         "under certain conditions.  See LICENSE.TXT (included with this distribution)",
    28         "for more details, or visit http://www.gnu.org/licenses/gpl-2.0.html.",
    29         "",
    30         "Usage: SerDrive [options] imagefile [[slave-options] slave-imagefile]",
    31         "",
    32         "  -g [cyl:head:sect]  Geometry in cylinders, sectors per cylinder, and heads",
    33         "                      -g also implies CHS addressing mode (default is LBA28)",
    34         "",
    35         "  -n [megabytes]      Create new disk with given size or use -g geometry",
    36         "                      Maximum size is " USAGE_MAXSECTORS,
    37         "                      Floppy images can also be created, such as \"360K\"",
    38         "                      (default is a 32 MB disk, with CHS geometry 65:16:63)",
    39         "",
    40         "  -p [pipename]       Named Pipe mode for emulators",
    41         "                      (must begin with \"\\\\\", default is \"" PIPENAME "\")",
    42         "",
    43         "  -c COMPortNumber    COM Port to use (default is first found)",
    44         "                      Available COM ports on this system are:",
    45      "COM                          ",
    46         "",
    47         "  -b BaudRate         Baud rate to use on the COM port, with client machine",
    48         "                      rate multiplier in effect:",
    49         "                          None:  2400,  4800,  9600,  28.8K,  57.6K, 115.2K",
    50         "                          2x:    4800,  9600, 19200,  57.6K, 115.2K, 230.4K",
    51         "                          4x:    9600, 19200, 38400, 115.2K, 230.4K, 460.8K",
    52         "                          and for completeness:               76.8K, 153.6K",
    53         "                      (default is 9600, 115.2K when in named pipe mode)",
    54         "",
    55         "  -t                  Disable timeout, useful for long delays when debugging",
    56         "",
    57         "  -r                  Read Only disk, do not allow writes",
    58         "",
    59         "  -v [level]          Reporting level 1-6, with increasing information",
    60         "",
    61         "On the client computer, a serial port can be configured for use as a hard disk",
    62         "with xtidecfg.com.  Or one can hold down the ALT key at the end of the normal",
    63         "IDE hard disk scan and the XTIDE Universal BIOS will scan COM1-7, at each of",
    64         "the six speeds given above for BaudRate.  Note that hardware rate multipliers",
    65         "must be taken into account on the server end, but are invisible on the client.",
    66         "",
    67         "Floppy images may also be used.  Image size must be exactly the same size",
    68         "as a 2.88MB, 1.44MB, 1.2MB, 720KB, 360KB, 320KB, 180KB, or 160KB disk.",
    69         "Floppy images must be the last disks discovered by the BIOS, and only",
    70         "two floppy drives are supported by the BIOS at a time.",
    71         NULL };
    72 
    73     for( int t = 0; usageStrings[t]; t++ )
    74     {
    75         if( !strncmp( usageStrings[t], "COM", 3 ) )
     19char *bannerStrings[] = {
     20    "SerDrive - XTIDE Universal BIOS Serial Drive Server",
     21    "Copyright (C) 2012 by XTIDE Universal BIOS Team",
     22    "Released under GNU GPL v2, with ABSOLUTELY NO WARRANTY",
     23    "Version 2.0.0 Beta1, Built " __DATE__,
     24    "",
     25    NULL };
     26
     27char *usageStrings[] = {
     28    "This is free software, and you are welcome to redistribute it under certain",
     29    "conditions.  For more license details, see the LICENSE.TXT file included with",
     30    "this distribution, visit the XTIDE Universal BIOS wiki (address below), or",
     31    "http://www.gnu.org/licenses/gpl-2.0.html",
     32    "",
     33    "Visit the wiki on http://code.google.com/p/xtideuniversalbios for detailed",
     34    "serial drive usage directions.",
     35    "",
     36    "Usage: SerDrive [options] imagefile [[slave-options] slave-imagefile]",
     37    "",
     38    "  -g [cyl:head:sect]  Geometry in cylinders, sectors per cylinder, and heads",
     39    "                      -g also implies CHS addressing mode (default is LBA28)",
     40    "",
     41    "  -n [megabytes]      Create new disk with given size or use -g geometry",
     42    "                      Maximum size is " USAGE_MAXSECTORS,
     43    "                      Floppy images can also be created, such as \"360K\"",
     44    "                      (default is a 32 MB disk, with CHS geometry 65:16:63)",
     45    "",
     46    "  -p [pipename]       Named Pipe mode for emulators",
     47    "                      (must begin with \"\\\\\", default is \"" PIPENAME "\")",
     48    "",
     49    "  -c COMPortNumber    COM Port to use (default is first found)",
     50    "                      Available COM ports on this system are:",
     51 "COM                          ",
     52    "",
     53    "  -b BaudRate         Baud rate to use on the COM port, with client machine",
     54    "                      rate multiplier in effect:",
     55    "                          None:  2400,  4800,  9600,  28.8K,  57.6K, 115.2K",
     56    "                          2x:    4800,  9600, 19200,  57.6K, 115.2K, 230.4K",
     57    "                          4x:    9600, 19200, 38400, 115.2K, 230.4K, 460.8K",
     58    "                          and for completeness:               76.8K, 153.6K",
     59    "                      (default is 9600, 115.2K when in named pipe mode)",
     60    "",
     61    "  -t                  Disable timeout, useful for long delays when debugging",
     62    "",
     63    "  -r                  Read Only disk, do not allow writes",
     64    "",
     65    "  -v [level]          Reporting level 1-6, with increasing information",
     66    "",
     67    "On the client computer, a serial port can be configured for use as a hard disk",
     68    "with xtidecfg.com.  Or one can hold down the ALT key at the end of the normal",
     69    "IDE hard disk scan and the XTIDE Universal BIOS will scan COM1-7, at each of",
     70    "the six speeds given above for BaudRate.  Note that hardware rate multipliers",
     71    "must be taken into account on the server end, but are invisible on the client.",
     72    "",
     73    "Floppy images may also be used.  Image size must be exactly the same size",
     74    "as a 2.88MB, 1.44MB, 1.2MB, 720KB, 360KB, 320KB, 180KB, or 160KB disk.",
     75    "Floppy images must be the last disks discovered by the BIOS, and only",
     76    "two floppy drives are supported by the BIOS at a time.",
     77    NULL };
     78
     79void usagePrint( char *strings[] )
     80{
     81    for( int t = 0; strings[t]; t++ )
     82    {
     83        if( !strncmp( strings[t], "COM", 3 ) )
    7684        {
    7785            char logbuff[ 1024 ];
    7886
    7987            SerialAccess::EnumerateCOMPorts( logbuff, 1024 );
    80             fprintf( stderr, "%s%s\n", usageStrings[t]+3, logbuff );
     88            fprintf( stderr, "%s%s\n", strings[t]+3, logbuff );
    8189        }
    8290        else
    83             fprintf( stderr, "%s\n", usageStrings[t] );
    84     }
    85 
    86     exit( 1 );
    87 }
     91            fprintf( stderr, "%s\n", strings[t] );
     92    }
     93}
     94
     95#define usage() { usagePrint( usageStrings ); exit(1); }
    8896
    8997int verbose = 0;
     
    115123    Image *images[2] = { NULL, NULL };
    116124
     125    usagePrint( bannerStrings );
     126
    117127    for( int t = 1; t < argc; t++ )
    118128    {
     129        char *next = (t+1 < argc ? argv[t+1] : NULL );
     130
    119131        if( argv[t][0] == '/' || argv[t][0] == '-' )
    120132        {
     
    128140            {
    129141            case 'c': case 'C':
    130                 a = atol( argv[++t] );
     142                if( !next )
     143                    usage();
     144                t++;
     145                a = atol( next );
    131146                if( a < 1 )
    132147                    usage();
     
    135150                break;
    136151            case 'v': case 'V':
    137                 if( atol(argv[t+1]) != 0 )
    138                     verbose = atol(argv[++t]);
     152                if( next && atol(next) != 0 )
     153                {
     154                    t++;
     155                    verbose = atol(next);
     156                }
    139157                else
    140158                    verbose = 1;
     
    144162                break;
    145163            case 'p': case 'P':
    146                 if( argv[t+1][0] == '\\' && argv[t+1][1] == '\\' )
    147                     ComPort = argv[++t];
     164                if( next && next[0] == '\\' && next[1] == '\\' )
     165                {
     166                    t++;
     167                    ComPort = next;
     168                }
    148169                else
    149170                    ComPort = PIPENAME;
     
    152173                break;           
    153174            case 'g': case 'G':
    154                 if( atol(argv[t+1]) != 0 )
     175                if( next && atol(next) != 0 )
    155176                {
    156                     if( !Image::parseGeometry( argv[++t], &cyl, &head, &sect ) )
     177                    t++;
     178                    if( !Image::parseGeometry( next, &cyl, &head, &sect ) )
    157179                        usage();
    158180                }
     
    164186            case 'n': case 'N':
    165187                createFile = 1;
    166                 if( atol(argv[t+1]) != 0 )
     188                if( next && atol(next) != 0 )
    167189                {
    168                     double size = atof(argv[++t]);
     190                    double size = atof(next);
    169191                    struct floppyInfo *fi;
    170192                    char *c;
     193
     194                    t++;
    171195
    172196                    size *= 2;
     
    193217                break;
    194218            case 'b': case 'B':
    195                 if( !(baudRate = baudRateMatchString( argv[++t] )) || !baudRate->rate )
    196                     log( -2, "Unknown Baud Rate \"%s\"", argv[t] );
     219                if( !next )
     220                    usage();
     221                t++;
     222                if( !(baudRate = baudRateMatchString( next )) || !baudRate->rate )
     223                    log( -2, "Unknown Baud Rate \"%s\"", next );
    197224                break;
    198225            default:
  • trunk/XTIDE_Universal_BIOS/Src/Boot/BootMenu.asm

    r294 r369  
    1616;       All General Purpose Registers
    1717;--------------------------------------------------------------------
    18 ALIGN JUMP_ALIGN
    1918BootMenu_DisplayAndReturnSelectionInDX:
    2019    call    DriveXlate_Reset
     
    3938;       AX, DI
    4039;--------------------------------------------------------------------
    41 ALIGN JUMP_ALIGN
    4240BootMenu_GetDriveToDXforMenuitemInCX_And_RamVars_GetSegmentToDS:
    4341    call    RamVars_GetSegmentToDS
    4442;;; fall-through
    4543
    46 ALIGN JUMP_ALIGN
    4744BootMenu_GetDriveToDXforMenuitemInCX:
    4845    cmp     cl, NO_ITEM_HIGHLIGHTED
     
    7370;       AX, BX, DI
    7471;--------------------------------------------------------------------
    75 ALIGN JUMP_ALIGN
    7672BootMenu_Enter:
    7773    mov     bx, BootMenuEvent_Handler
     
    9288;       CX
    9389;--------------------------------------------------------------------
    94 ALIGN JUMP_ALIGN
    9590BootMenu_GetMenuitemCountToAX:
    9691    call    RamVars_GetHardDiskCountFromBDAtoAX
     
    110105;       AL, CX, DI
    111106;--------------------------------------------------------------------
    112 ALIGN JUMP_ALIGN
    113107BootMenu_GetHeightToAHwithItemCountInAL:
    114108    add     al, BOOT_MENU_HEIGHT_WITHOUT_ITEMS
     
    119113    jb      SHORT .Return
    120114    mov     ah, cl
    121 ALIGN JUMP_ALIGN, ret
     115
    122116.Return:
    123117    ret
     
    133127;       CX
    134128;--------------------------------------------------------------------
    135 ALIGN JUMP_ALIGN
    136129BootMenu_GetMenuitemToAXforAsciiHotkeyInAL:
    137130    call    Char_ALtoUpperCaseLetter
     
    144137    sub     al, 'A'                     ; Letter to Floppy Drive menuitem
    145138    ret
    146 ALIGN JUMP_ALIGN
     139
    147140.StartFromHardDiskLetter:
    148141    sub     cl, al                      ; Hard Disk index
     
    165158;       AX
    166159;--------------------------------------------------------------------
    167 ALIGN JUMP_ALIGN
    168160BootMenu_GetLetterForFirstHardDiskToAL:
    169161    call    FloppyDrive_GetCountToAX
     
    172164    ja      .Return
    173165    mov     al, 'C'
    174 ALIGN JUMP_ALIGN, ret
     166       
    175167.Return:
    176168    ret
     
    186178;       AX
    187179;--------------------------------------------------------------------
    188 ALIGN JUMP_ALIGN
    189180BootMenu_GetMenuitemToDXforDriveInDL:
    190181    xor     dh, dh                      ; Drive number now in DX
     
    211202;       AX, CX
    212203;--------------------------------------------------------------------
    213 ALIGN JUMP_ALIGN
    214204BootMenu_IsDriveInSystem:
    215205    test    dl, dl                              ; Floppy drive?
  • trunk/XTIDE_Universal_BIOS/Src/Boot/BootMenuEvent.asm

    r258 r369  
    1616;       All
    1717;--------------------------------------------------------------------
    18 ALIGN JUMP_ALIGN
    1918BootMenuEvent_Handler:
    2019
     
    6665; Returns:
    6766;   DS:SI:      Ptr to initialized MENUINIT struct
    68 ALIGN JUMP_ALIGN
    6967.FirstEvent:   
    7068.InitializeMenuinitFromDSSI:
     
    8583    ret
    8684
    87 ALIGN JUMP_ALIGN
    8885.GetDefaultMenuitemToDX:
    8986    mov     dl, [cs:ROMVARS.bBootDrv]   ; Default boot drive
     
    9289    call    DriveXlate_SetDriveToSwap
    9390    jmp     BootMenu_GetMenuitemToDXforDriveInDL
    94 ALIGN JUMP_ALIGN
     91
    9592.DoNotSetDefaultMenuitem:
    9693    xor     dx, dx                      ; Whatever appears first on boot menu
     
    10198;   CX:         Index of new highlighted item
    10299;   DX:         Index of previously highlighted item or NO_ITEM_HIGHLIGHTED
    103 ALIGN JUMP_ALIGN
    104100.ItemHighlightedFromCX:
    105101    push    cx
     
    124120;   AL:         ASCII character for the key
    125121;   AH:         Keyboard library scan code for the key
    126 ALIGN JUMP_ALIGN
    127122.KeyStrokeInAX:
    128123    cmp     ah, ROM_BOOT_HOTKEY_SCANCODE
     
    130125    ;; NOTE: carry flag will be clear after compare above that resulted in zero
    131126    jmp     Int19hMenu_JumpToBootSector_or_RomBoot     
    132 ALIGN JUMP_ALIGN
     127
    133128.CheckDriveHotkeys:
    134129    call    BootMenu_GetMenuitemToAXforAsciiHotkeyInAL
     
    147142; Parameters:
    148143;   CX:         Index of selected item
    149 ALIGN JUMP_ALIGN
    150144.ItemSelectedFromCX:
    151145    CALL_MENU_LIBRARY Close
  • trunk/XTIDE_Universal_BIOS/Src/Boot/BootMenuInfo.asm

    r365 r369  
    5555;       CX
    5656;--------------------------------------------------------------------
    57 ALIGN JUMP_ALIGN
    5857BootMenuInfo_GetTotalSectorCount:
    5958    test    BYTE [di+DPT.bFlagsLow], FLG_DRVNHEAD_LBA
  • trunk/XTIDE_Universal_BIOS/Src/Boot/BootMenuPrint.asm

    r294 r369  
    1515;       AX, BX, DX, SI, DI
    1616;--------------------------------------------------------------------
    17 ALIGN JUMP_ALIGN
    1817BootMenuPrint_RefreshItem:
    1918    call    BootMenu_GetDriveToDXforMenuitemInCX_And_RamVars_GetSegmentToDS
     
    5958;       AX, SI, DI
    6059;--------------------------------------------------------------------
    61 ALIGN JUMP_ALIGN
    6260BootMenuPrint_TitleStrings:
    6361    mov     si, ROMVARS.szTitle
     
    7674;       AX, DI
    7775;--------------------------------------------------------------------
    78 ALIGN JUMP_ALIGN
    7976BootMenuPrint_NullTerminatedStringFromCSSIandSetCF:
    8077;
     
    9996;       AX, BX, CX, DX, SI, DI, ES
    10097;--------------------------------------------------------------------
    101 ALIGN JUMP_ALIGN
    10298BootMenuPrint_RefreshInformation:
    10399    CALL_MENU_LIBRARY ClearInformationArea
     
    188184;       BX, CX, DX, SI, DI, ES
    189185;--------------------------------------------------------------------
    190 ALIGN JUMP_ALIGN
    191186.HardDiskRefreshInformation:
    192187    jc      .HardDiskMenuitemInfoForForeignDrive        ; Based on CF from FindDPT_ForDriveNumberInDL (way) above
     
    229224;       AX, DI
    230225;--------------------------------------------------------------------
    231 ALIGN JUMP_ALIGN
    232226BootMenuPrint_FormatCSSIfromParamsInSSBP:
    233227    CALL_DISPLAY_LIBRARY FormatNullTerminatedStringFromCSSI
     
    246240;       AX, DI
    247241;--------------------------------------------------------------------
    248 ALIGN JUMP_ALIGN
    249242BootMenuPrint_ClearScreen:
    250243    call    BootMenuPrint_InitializeDisplayContext
     
    265258;       AX, BX, CX, DX, SI, DI
    266259;--------------------------------------------------------------------
    267 ALIGN JUMP_ALIGN
    268260BootMenuPrint_TheBottomOfScreen:
    269261    call    FloppyDrive_GetCountToAX
     
    351343;       AX, SI, DI
    352344;--------------------------------------------------------------------
    353 ALIGN JUMP_ALIGN
    354345PushHotkeyParamsAndFormat:
    355346    push    bp
     
    378369;       AX, DI
    379370;--------------------------------------------------------------------
    380 ALIGN JUMP_ALIGN
    381371BootMenuPrint_InitializeDisplayContext:
    382372    CALL_DISPLAY_LIBRARY InitializeDisplayContext
  • trunk/XTIDE_Universal_BIOS/Src/Boot/BootPrint.asm

    r241 r369  
    1414;       AX, CX, SI, DI
    1515;--------------------------------------------------------------------
    16 ALIGN JUMP_ALIGN
    1716BootPrint_FailedToLoadFirstSector:
    1817    push    bp
     
    3534;       AX, SI, DI
    3635;--------------------------------------------------------------------
    37 ALIGN JUMP_ALIGN
    3836BootPrint_TryToBootFromDL:
    3937    push    bp
  • trunk/XTIDE_Universal_BIOS/Src/Boot/BootSector.asm

    r294 r369  
    1717;       AX, CX, DH, SI, DI, (DL if failed to read boot sector)
    1818;--------------------------------------------------------------------
    19 ALIGN JUMP_ALIGN
    2019BootSector_TryToLoadFromDriveDL:
    2120    call    BootPrint_TryToBootFromDL
     
    5251;       AL, CX, DH, DI
    5352;--------------------------------------------------------------------
    54 ALIGN JUMP_ALIGN
    5553LoadFirstSectorFromDriveDL:
    5654    LOAD_BDA_SEGMENT_TO es, bx              ; ES:BX now points to...
    5755    mov     bx, BOOTVARS.rgbBootSect        ; ...boot sector location
    5856    mov     di, BOOT_READ_RETRY_TIMES       ; Initialize retry counter
    59 ALIGN JUMP_ALIGN
     57
    6058.ReadRetryLoop:
    6159    call    .ResetBootDriveFromDL
     
    7876;       AL
    7977;--------------------------------------------------------------------
    80 ALIGN JUMP_ALIGN
    8178.ResetBootDriveFromDL:
    8279    xor     ax, ax                          ; AH=0h, Disk Controller Reset
     
    10198;       AL, CX, DH
    10299;--------------------------------------------------------------------
    103 ALIGN JUMP_ALIGN
    104100.LoadFirstSectorFromDLtoESBX:
    105101    mov     ax, 0201h                       ; Read 1 sector
  • trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/AH0h_HReset.asm

    r316 r369  
    2121;       CF:     0 if successful, 1 if error
    2222;--------------------------------------------------------------------
    23 ALIGN JUMP_ALIGN
    2423AH0h_HandlerForDiskControllerReset:
    2524    eMOVZX  bx, dl                      ; Copy requested drive to BL, zero BH to assume no errors
  • trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/AH11h_HRecal.asm

    r294 r369  
    1717;       CF:     0 if successful, 1 if error
    1818;--------------------------------------------------------------------
    19 ALIGN JUMP_ALIGN
    2019AH11h_HandlerForRecalibrate:
    2120%ifndef USE_186
  • trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/AH15h_HSize.asm

    r294 r369  
    2424;           CF:     1
    2525;--------------------------------------------------------------------
    26 ALIGN JUMP_ALIGN
    2726AH15h_HandlerForReadDiskDriveSize:
    2827%ifdef MODULE_SERIAL_FLOPPY
  • trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/AH23h_HFeatures.asm

    r294 r369  
    2626;       CF:     0 if successful, 1 if error
    2727;--------------------------------------------------------------------
    28 ALIGN JUMP_ALIGN
    2928AH23h_HandlerForSetControllerFeatures:
    3029    xchg    si, ax      ; SI = Feature Number
     
    5554;       AL, BX, CX, DX
    5655;--------------------------------------------------------------------
    57 ;ALIGN JUMP_ALIGN
    5856AH23h_SetControllerFeatures:
    5957    mov     al, COMMAND_SET_FEATURES
  • trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/AH25h_HDrvID.asm

    r322 r369  
    2020;       CF:     0 if successful, 1 if error
    2121;--------------------------------------------------------------------
    22 ALIGN JUMP_ALIGN
    2322AH25h_HandlerForGetDriveInformation:
    2423    mov     ax, (COMMAND_IDENTIFY_DEVICE << 8 | 1)      ; Read 1 sector
  • trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/AHDh_HReset.asm

    r363 r369  
    1717;       CF:     0 if successful, 1 if error
    1818;--------------------------------------------------------------------
    19 ALIGN JUMP_ALIGN
    2019AHDh_HandlerForResetHardDisk:
    2120%ifndef USE_186
  • trunk/XTIDE_Universal_BIOS/Src/Handlers/Int13h/EBIOS/AH41h_CheckIfExtensionsPresent.asm

    r294 r369  
    2121;       CF:     0 if successful, 1 if error
    2222;--------------------------------------------------------------------
    23 ALIGN JUMP_ALIGN
    2423AH41h_HandlerForCheckIfExtensionsPresent:
    2524    cmp     WORD [bp+IDEPACK.intpack+INTPACK.bx], 55AAh
  • trunk/XTIDE_Universal_BIOS/Src/Initialization/FloppyDrive.asm

    r294 r369  
    109109;       AX, CX, DX, DI, ES
    110110;--------------------------------------------------------------------
    111 ALIGN JUMP_ALIGN
    112111FloppyDrive_GetType:
    113112    mov     ah, 08h         ; Get Drive Parameters
     
    126125;       AX:     Number of Floppy Drives
    127126;--------------------------------------------------------------------
    128 ALIGN JUMP_ALIGN
    129127FloppyDrive_GetCountToAX:
    130128%ifdef MODULE_SERIAL_FLOPPY
     
    146144    ret
    147145
    148 ALIGN JUMP_ALIGN
    149146FloppyDrive_GetCountFromBIOS_or_BDA:
    150147    push    es
     
    166163;--------------------------------------------------------------------
    167164%ifdef USE_AT
    168 ALIGN JUMP_ALIGN
    169165.GetCountFromBIOS:
    170166    push    di
     
    197193;--------------------------------------------------------------------
    198194%ifndef USE_AT
    199 ALIGN JUMP_ALIGN
    200195.GetCountFromBDA:
    201196    LOAD_BDA_SEGMENT_TO es, ax
  • trunk/XTIDE_Universal_BIOS/makefile

    r366 r369  
    193193    @perl ..\tools\checksum.pl $(TARGET)_xt.bin $(ROMSIZE)
    194194    @perl ..\tools\checksum.pl $(TARGET)_jr8k.bin $(ROMSIZE)
     195    @perl ..\tools\checksum.pl $(TARGET)_386.bin $(ROMSIZE)
    195196
    196197xt_unused: xt
  • trunk/XTIDE_Universal_BIOS_Configurator_v2/Src/Buffers.asm

    r293 r369  
    107107    and     WORD [g_cfgVars+CFGVARS.wFlags], ~FLG_CFGVARS_UNSAVED
    108108    ret
     109
     110;--------------------------------------------------------------------       
     111; Buffers_TestLoaded
     112;   Parameters:
     113;       SS:BP:  Menu handle
     114;   Returns:
     115;       CF:     Set = BIOS Loaded
     116;   Corrupts registers:
     117;       AX
     118;--------------------------------------------------------------------               
     119ALIGN JUMP_ALIGN
     120Buffers_TestLoaded:
     121    test    word [cs:g_cfgVars+CFGVARS.wFlags], FLG_CFGVARS_FILELOADED    ; Clears CF
     122    jz      .done
     123    stc
     124.done: 
     125    ret                     
    109126
    110127
  • trunk/XTIDE_Universal_BIOS_Configurator_v2/Src/Menuitem.asm

    r293 r369  
    152152    call    GetConfigurationBufferToESDIforMenuitemInDSSI
    153153    add     di, [si+MENUITEM.itemValue+ITEM_VALUE.wRomvarsValueOffset]
     154       
     155    push    bx
     156    mov     bx,[si+MENUITEM.itemValue+ITEM_VALUE.fnValueWriter]
     157    test    bx,bx
     158    jz      SHORT .NoWriter
     159    call    bx
     160.NoWriter:
     161    pop     bx
     162       
    154163    jmp     [cs:bx+.rgfnJumpToStoreValueBasedOnItemType]
    155164.InvalidItemType:
     
    231240ALIGN JUMP_ALIGN
    232241.StoreByteOrWordValueFromAXtoESDIwithItemInDSSI:
    233     push    bx
    234     mov     bx,[si+MENUITEM.itemValue+ITEM_VALUE.fnValueWriter]
    235     test    bx,bx
    236     jz      SHORT .NoWriter
    237 
    238     call    bx
    239 
    240 .NoWriter:
    241     pop     bx
    242242    test    BYTE [si+MENUITEM.bFlags], FLG_MENUITEM_MASKVALUE
    243243    jz      SHORT .StoreByteOrWord
  • trunk/XTIDE_Universal_BIOS_Configurator_v2/Src/Menupages/MasterSlaveMenu.asm

    r360 r369  
    7070    at  MENUITEM.itemValue + ITEM_VALUE.rgszValueToStringLookup,    dw  g_rgszValueToStringLookupForFlagBooleans
    7171    at  MENUITEM.itemValue + ITEM_VALUE.wValueBitmask,              dw  FLG_DRVPARAMS_USERCHS
     72    at  MENUITEM.itemValue + ITEM_VALUE.fnValueWriter,              dw  MasterSlaveMenu_WriteCHSFlag       
    7273iend
    7374
     
    8586    at  MENUITEM.itemValue + ITEM_VALUE.wMinValue,                  dw  1
    8687    at  MENUITEM.itemValue + ITEM_VALUE.wMaxValue,                  dw  16383
     88%define                 MASTERSLAVE_CYLINDERS_DEFAULT                   65
    8789iend
    8890
     
    100102    at  MENUITEM.itemValue + ITEM_VALUE.wMinValue,                  dw  1
    101103    at  MENUITEM.itemValue + ITEM_VALUE.wMaxValue,                  dw  16
     104%define                 MASTERSLAVE_HEADS_DEFAULT                       16     
    102105iend
    103106
     
    115118    at  MENUITEM.itemValue + ITEM_VALUE.wMinValue,                  dw  1
    116119    at  MENUITEM.itemValue + ITEM_VALUE.wMaxValue,                  dw  63
     120%define                 MASTERSLAVE_SECTORS_DEFAULT                     63
    117121iend
    118122
     
    131135    at  MENUITEM.itemValue + ITEM_VALUE.rgszValueToStringLookup,    dw  g_rgszValueToStringLookupForFlagBooleans
    132136    at  MENUITEM.itemValue + ITEM_VALUE.wValueBitmask,              dw  FLG_DRVPARAMS_USERLBA
     137    at  MENUITEM.itemValue + ITEM_VALUE.fnValueWriter,              dw  MasterSlaveMenu_WriteLBAFlag               
    133138iend
    134139
     
    148153    at  MENUITEM.itemValue + ITEM_VALUE.fnValueReader,              dw  ValueReaderForUserLbaValue
    149154    at  MENUITEM.itemValue + ITEM_VALUE.fnValueWriter,              dw  ValueWriterForUserLbaValue
     155%define             MASTERSLAVE_USERLBA_DEFAULT                     1
    150156iend
    151157
     
    384390    pop     dx
    385391    ret                     ; AX will be stored by our menu system
     392
     393;
     394; No change to CHS flag, but we use this opportunity to change defaults stored in the CHS values if we are
     395; changing in/out of user CHS settings (since we use these bytes in different ways with the LBA setting).
     396;
     397ALIGN JUMP_ALIGN       
     398MasterSlaveMenu_WriteCHSFlag:
     399        test    word [es:di], FLG_DRVPARAMS_USERCHS
     400        jnz     .alreadySet
     401
     402        push    ax
     403        push    di
     404        push    si
     405
     406        mov     ax, MASTERSLAVE_CYLINDERS_DEFAULT
     407        mov     si, g_MenuitemMasterSlaveCylinders
     408        call    Menuitem_StoreValueFromAXtoMenuitemInDSSI
     409       
     410        mov     ax, MASTERSLAVE_HEADS_DEFAULT       
     411        mov     si, g_MenuitemMasterSlaveHeads
     412        call    Menuitem_StoreValueFromAXtoMenuitemInDSSI       
     413
     414        mov     ax, MASTERSLAVE_SECTORS_DEFAULT                     
     415        mov     si, g_MenuitemMasterSlaveSectors
     416        call    Menuitem_StoreValueFromAXtoMenuitemInDSSI       
     417       
     418        pop     si                     
     419        pop     di
     420        pop     ax
     421
     422.alreadySet:
     423        ret
     424
     425;
     426; No change to LBA flag, but we use this opportunity to change defaults stored in the LBA value if we are
     427; changing in/out of user LBA settings (since we use these bytes in different ways with the CHS setting).
     428;
     429ALIGN JUMP_ALIGN                       
     430MasterSlaveMenu_WriteLBAFlag:
     431        test    word [es:di], FLG_DRVPARAMS_USERLBA
     432        jnz     .alreadySet
     433
     434        push    ax
     435        push    di
     436        push    si
     437
     438        mov     ax, MASTERSLAVE_USERLBA_DEFAULT
     439        mov     si, g_MenuitemMasterSlaveUserLbaValue
     440        call    Menuitem_StoreValueFromAXtoMenuitemInDSSI               
     441
     442        pop     si
     443        pop     di
     444        pop     ax
     445                       
     446.alreadySet:
     447        ret     
  • trunk/XTIDE_Universal_BIOS_Configurator_v2/Src/Strings.asm

    r362 r369  
    7474g_szNfoMainConfigure:   db  "Configure XTIDE Universal BIOS settings.",NULL
    7575g_szNfoMainFlash:       db  "Flash loaded BIOS image to EEPROM.",NULL
    76 g_szNfoMainLicense:     db  "XTIDE Universal BIOS and XTIDECFG (C) 2009-2010 by Tomi Tilli, 2011-2012 by XTIDE Universal BIOS Team. Released under GNU GPL v2, with ABSOLUTELY NO WARRANTY. Details...",NULL
     76g_szNfoMainLicense:     db  "XTIDE Universal BIOS and XTIDECFG Copyright (C) 2009-2010 by Tomi Tilli, 2011-2012 by XTIDE Universal BIOS Team. Released under GNU GPL v2, with ABSOLUTELY NO WARRANTY. Press ENTER for more details...",NULL
    7777g_szNfoMainHomePage:    db  "Visit http://code.google.com/p/ xtideuniversalbios (home page) and http://vintage-computer.com/ vcforum (support)",NULL
    7878
Note: See TracChangeset for help on using the changeset viewer.