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

Last change on this file since 369 was 369, checked in by gregli@…, 13 years ago

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.

File size: 2.6 KB
Line 
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;--------------------------------------------------------------------
19ALIGN MENU_JUMP_ALIGN
20Menu_FunctionFromDI:
21 push si
22 push dx
23 push cx
24 push bx
25 call di
26 pop bx
27 pop cx
28 pop dx
29 pop si
30 ret
31
32
33 %define DisplayWithHandlerInBXandUserDataInDXAX MenuInit_DisplayMenuWithHandlerInBXandUserDataInDXAX
34 ;%define Close MenuInit_CloseMenuWindow ; Special case in CALL_MENU_LIBRARY
35 %define RefreshWindow MenuInit_RefreshMenuWindow
36
37 ;%define SetUserDataFromDSSI MenuInit_SetUserDataFromDSSI ; Special case in CALL_MENU_LIBRARY
38 ;%define GetUserDataToDSSI MenuInit_GetUserDataToDSSI ; Special case in CALL_MENU_LIBRARY
39
40 ;%define SetTitleHeightFromAL MenuInit_SetTitleHeightFromAL ; Special case in CALL_MENU_LIBRARY
41 %define ClearTitleArea MenuText_ClearTitleArea
42 %define RefreshTitle MenuText_RefreshTitle
43
44 %define HighlightItemFromAX MenuInit_HighlightItemFromAX
45 ;%define SetTotalItemsFromAX MenuInit_SetTotalItemsFromAX ; Special case in CALL_MENU_LIBRARY
46 %define RefreshItemFromAX MenuText_RefreshItemFromAX
47
48 ;%define SetInformationHeightFromAL MenuInit_SetInformationHeightFromAL ; Special case in CALL_MENU_LIBRARY
49 %define ClearInformationArea MenuText_ClearInformationArea
50 %define RefreshInformation MenuText_RefreshInformation
51
52 %define StartSelectionTimeoutWithTicksInAX MenuTime_StartSelectionTimeoutWithTicksInAX
53
54%ifdef INCLUDE_MENU_DIALOGS
55 %define StartProgressTaskWithIoInDSSIandParamInDXAX DialogProgress_StartProgressTaskWithIoInDSSIandParamInDXAX
56 %define SetProgressValueFromAX DialogProgress_SetProgressValueFromAX
57
58 %define DisplayMessageWithInputInDSSI DialogMessage_DisplayMessageWithInputInDSSI
59 %define GetSelectionToAXwithInputInDSSI DialogSelection_GetSelectionToAXwithInputInDSSI
60 %define GetWordWithIoInDSSI DialogWord_GetWordWithIoInDSSI
61 %define GetStringWithIoInDSSI DialogString_GetStringWithIoInDSSI
62 %define GetFileNameWithIoInDSSI DialogFile_GetFileNameWithIoInDSSI
63 %define GetDriveWithIoInDSSI DialogDrive_GetDriveWithIoInDSSI
64%endif
65
Note: See TracBrowser for help on using the repository browser.