Changeset 492 in xtideuniversalbios for trunk/Assembly_Library/Src/Menu


Ignore:
Timestamp:
Dec 21, 2012, 1:01:55 AM (11 years ago)
Author:
gregli@…
google:author:
gregli@hotmail.com
Message:

Removed the dependency between MODULE_BOOT_MENU and MODULE_HOTKEYS. With these changes, 0, 1, or 2 of them can be included in a build. This change also means that the hotkeys don't work while the menu is up. But the most important hotkey there was for Rom Boot, and that has been added to the menu as a choice proper. Lots of changes across the board in the hotkeys code - even if we eventually back this change out (becaue, for example we want hotkeys to work in the menu) we should probably start from this base and add that functionality back in, as these changes results in approximately 120 bytes of savings and includes new functionality, such as the Rom Boot menu item and the Com Detect hotkey.

Location:
trunk/Assembly_Library/Src/Menu
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Assembly_Library/Src/Menu/MenuEvent.asm

    r376 r492  
    5252;       AX, BX, DX
    5353;--------------------------------------------------------------------
     54%ifndef MENU_NO_ESC
    5455ALIGN MENU_JUMP_ALIGN
    5556MenuEvent_ExitMenu:
    5657    mov     bl, MENUEVENT_ExitMenu
    5758    jmp     SHORT MenuEvent_SendFromBX
    58 
     59%endif
     60       
    5961
    6062%ifdef MENUEVENT_IDLEPROCESSING_ENABLE
     
    153155;       AX, BX, DX
    154156;--------------------------------------------------------------------
     157%ifdef MENUEVENT_KeyStrokInAX
    155158ALIGN MENU_JUMP_ALIGN
    156159MenuEvent_KeyStrokeInAX:
    157160    mov     bl, MENUEVENT_KeyStrokeInAX
    158161    SKIP2B  dx  ; mov dx, <next instruction>
    159 
     162%endif
    160163
    161164;--------------------------------------------------------------------
  • trunk/Assembly_Library/Src/Menu/MenuLoop.asm

    r376 r492  
    8585    xchg    ax, cx
    8686    call    .ProcessMenuSystemKeystrokeFromAX
     87%ifdef MENUEVENT_KeyStrokeInAX
    8788    jc      SHORT NoKeystrokeToProcess
    8889    jmp     MenuEvent_KeyStrokeInAX
    89 
     90%else
     91    jmp     SHORT NoKeystrokeToProcess
     92%endif
     93       
    9094;--------------------------------------------------------------------
    9195; .ProcessMenuSystemKeystrokeFromAX
     
    104108ALIGN MENU_JUMP_ALIGN
    105109.ProcessMenuSystemKeystrokeFromAX:
     110%ifndef MENU_NO_ESC
    106111    cmp     al, ESC
    107112    je      SHORT .LeaveMenuWithoutSelectingItem
     113%endif
    108114    cmp     al, CR
    109115    je      SHORT .SelectItem
     
    113119    ret     ; Return with CF cleared since keystroke not processed
    114120
     121%ifndef MENU_NO_ESC     
    115122ALIGN MENU_JUMP_ALIGN
    116123.LeaveMenuWithoutSelectingItem:
     
    122129    stc
    123130    ret
    124 
     131%endif
     132       
    125133ALIGN MENU_JUMP_ALIGN
    126134.SelectItem:
Note: See TracChangeset for help on using the changeset viewer.