source: xtideuniversalbios/trunk/Assembly_Library/Src/Menu/Menu.asm@ 372

Last change on this file since 372 was 370, checked in by krille_n_@…, 13 years ago

Changes:

  • Added some missing PIO mode timings to ATA_ID.inc (based on info from http://www.singlix.net/specs/cfspc4_0.pdf)
  • Updated Configuration_FullMode.txt but it may need additional changes as the Tandy info doesn't match the wiki.
  • Optimizations.
  • Excluded some unused code from XTIDECFG.
File size: 2.7 KB
RevLine 
[41]1; Project name : Assembly Library
2; Description : Menu Library functions for CALL_MENU_LIBRARY macro
3; that users should use to make library call.
4
5; Section containing code
6SECTION .text
7
8;--------------------------------------------------------------------
9; MenuFunctionFromDI
10; Parameters:
11; DI: Function to call (MENU_LIB.functionName)
12; BP: Menu handle
13; Others: Depends on function to call
14; Returns:
15; Depends on function to call
16; Corrupts registers:
17; AX (unless used as a return register), DI
18;--------------------------------------------------------------------
[369]19ALIGN MENU_JUMP_ALIGN
[41]20Menu_FunctionFromDI:
21 push si
22 push dx
23 push cx
24 push bx
[177]25 call di
[41]26 pop bx
27 pop cx
28 pop dx
29 pop si
30 ret
31
32
[181]33 %define DisplayWithHandlerInBXandUserDataInDXAX MenuInit_DisplayMenuWithHandlerInBXandUserDataInDXAX
34 ;%define Close MenuInit_CloseMenuWindow ; Special case in CALL_MENU_LIBRARY
35 %define RefreshWindow MenuInit_RefreshMenuWindow
[41]36
[181]37 ;%define SetUserDataFromDSSI MenuInit_SetUserDataFromDSSI ; Special case in CALL_MENU_LIBRARY
38 ;%define GetUserDataToDSSI MenuInit_GetUserDataToDSSI ; Special case in CALL_MENU_LIBRARY
[41]39
[181]40 ;%define SetTitleHeightFromAL MenuInit_SetTitleHeightFromAL ; Special case in CALL_MENU_LIBRARY
41 %define ClearTitleArea MenuText_ClearTitleArea
42 %define RefreshTitle MenuText_RefreshTitle
[41]43
[181]44 %define HighlightItemFromAX MenuInit_HighlightItemFromAX
45 ;%define SetTotalItemsFromAX MenuInit_SetTotalItemsFromAX ; Special case in CALL_MENU_LIBRARY
46 %define RefreshItemFromAX MenuText_RefreshItemFromAX
[41]47
[181]48 ;%define SetInformationHeightFromAL MenuInit_SetInformationHeightFromAL ; Special case in CALL_MENU_LIBRARY
49 %define ClearInformationArea MenuText_ClearInformationArea
50 %define RefreshInformation MenuText_RefreshInformation
[41]51
[370]52%ifndef EXCLUDE_FROM_XTIDECFG
[181]53 %define StartSelectionTimeoutWithTicksInAX MenuTime_StartSelectionTimeoutWithTicksInAX
[370]54%endif
[41]55
56%ifdef INCLUDE_MENU_DIALOGS
[181]57 %define StartProgressTaskWithIoInDSSIandParamInDXAX DialogProgress_StartProgressTaskWithIoInDSSIandParamInDXAX
58 %define SetProgressValueFromAX DialogProgress_SetProgressValueFromAX
[41]59
[181]60 %define DisplayMessageWithInputInDSSI DialogMessage_DisplayMessageWithInputInDSSI
61 %define GetSelectionToAXwithInputInDSSI DialogSelection_GetSelectionToAXwithInputInDSSI
62 %define GetWordWithIoInDSSI DialogWord_GetWordWithIoInDSSI
63 %define GetStringWithIoInDSSI DialogString_GetStringWithIoInDSSI
64 %define GetFileNameWithIoInDSSI DialogFile_GetFileNameWithIoInDSSI
65 %define GetDriveWithIoInDSSI DialogDrive_GetDriveWithIoInDSSI
[41]66%endif
[177]67
Note: See TracBrowser for help on using the repository browser.