- Timestamp:
- Oct 22, 2011, 9:31:12 PM (13 years ago)
- google:author:
- gregli@hotmail.com
- Location:
- trunk/Assembly_Library
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Assembly_Library/Inc/Display.inc
r134 r177 25 25 call DisplayContext_PrepareOffScreenBufferInESBXwithLengthInCX 26 26 %else 27 mov di, DISPLAY_LIB.%127 mov di, %1 28 28 call Display_FunctionFromDI 29 29 %endif 30 30 %endmacro 31 31 32 %if 0 33 ;;; 34 ;;; struc no longer needed with direct calls to functions 35 ;;; 32 36 33 37 ; Display library functions … … 70 74 .ClearScreenWithCharInALandAttrInAH resb 2 71 75 endstruc 76 %endif 72 77 73 78 ; Attribute flags for DISPLAY_LIB.SetCharacterOutputFunctionFromAXwithAttributeFlagInDL -
trunk/Assembly_Library/Inc/Menu.inc
r105 r177 48 48 49 49 %else 50 mov di, MENU_LIB.%150 mov di, %1 51 51 call Menu_FunctionFromDI 52 52 %endif 53 53 %endmacro 54 55 %if 0 56 ;;; 57 ;;; struc no longer needed with direct call to function 58 ;;; 54 59 55 60 ; Menu library functions … … 89 94 %endif 90 95 endstruc 91 96 %endif 92 97 93 98 ; Menu initialization parameters -
trunk/Assembly_Library/Src/Display/Display.asm
r134 r177 24 24 cld 25 25 LOAD_BDA_SEGMENT_TO ds, dx 26 mov dx, [cs:di+.rgfnDisplayLibraryFunctions]26 mov dx, di 27 27 les di, [VIDEO_BDA.displayContext+DISPLAY_CONTEXT.fpCursorPosition] 28 28 call dx … … 35 35 36 36 ;-------------------------------------------------------------------- 37 ; .FormatNullTerminatedStringFromCSSI37 ; Display_FormatNullTerminatedStringFromCSSI 38 38 ; Parameters: 39 39 ; Same as DisplayPrint_FormattedNullTerminatedStringFromCSSI … … 44 44 ;-------------------------------------------------------------------- 45 45 ALIGN JUMP_ALIGN 46 .FormatNullTerminatedStringFromCSSI:46 Display_FormatNullTerminatedStringFromCSSI: 47 47 pop ax ; Discard return address to inside Display_FunctionFromDI 48 48 call DisplayPrint_FormattedNullTerminatedStringFromCSSI … … 57 57 jmp ax 58 58 59 60 ALIGN WORD_ALIGN 61 .rgfnDisplayLibraryFunctions: 62 istruc DISPLAY_LIB 63 at DISPLAY_LIB.InitializeDisplayContext, dw DisplayContext_Initialize 59 60 %define InitializeDisplayContext DisplayContext_Initialize 64 61 65 62 %ifndef EXCLUDE_FROM_XTIDE_UNIVERSAL_BIOS 66 at DISPLAY_LIB.SetCharacterPointerFromBXAX, dwDisplayContext_SetCharacterPointerFromBXAX63 %define SetCharacterPointerFromBXAX DisplayContext_SetCharacterPointerFromBXAX 67 64 %endif 68 at DISPLAY_LIB.SetCharOutputFunctionFromAXwithAttribFlagInBL, dwDisplayContext_SetCharOutputFunctionFromAXwithAttribFlagInBL69 at DISPLAY_LIB.SetCharacterOutputParameterFromAX, dwDisplayContext_SetCharacterOutputParameterFromAX70 at DISPLAY_LIB.SetCharacterAttributeFromAL, dwDisplayContext_SetCharacterAttributeFromAL71 at DISPLAY_LIB.SetCursorShapeFromAX, dwDisplayCursor_SetShapeFromAX72 at DISPLAY_LIB.SetCursorCoordinatesFromAX, dwDisplayCursor_SetCoordinatesFromAX73 at DISPLAY_LIB.SetNewPageFromAL, dwDisplayPage_SetFromAL74 at DISPLAY_LIB.SynchronizeDisplayContextToHardware, dwDisplayContext_SynchronizeToHardware65 %define SetCharOutputFunctionFromAXwithAttribFlagInBL DisplayContext_SetCharOutputFunctionFromAXwithAttribFlagInBL 66 %define SetCharacterOutputParameterFromAX DisplayContext_SetCharacterOutputParameterFromAX 67 %define SetCharacterAttributeFromAL DisplayContext_SetCharacterAttributeFromAL 68 %define SetCursorShapeFromAX DisplayCursor_SetShapeFromAX 69 %define SetCursorCoordinatesFromAX DisplayCursor_SetCoordinatesFromAX 70 %define SetNewPageFromAL DisplayPage_SetFromAL 71 %define SynchronizeDisplayContextToHardware DisplayContext_SynchronizeToHardware 75 72 76 73 %ifndef EXCLUDE_FROM_XTIDE_UNIVERSAL_BIOS 77 at DISPLAY_LIB.GetCharacterPointerToBXAX, dwDisplayContext_GetCharacterPointerToBXAX74 %define GetCharacterPointerToBXAX DisplayContext_GetCharacterPointerToBXAX 78 75 %endif 79 at DISPLAY_LIB.GetSoftwareCoordinatesToAX, dwDisplayCursor_GetSoftwareCoordinatesToAX80 at DISPLAY_LIB.GetColumnsToALandRowsToAH, dwDisplayPage_GetColumnsToALandRowsToAH76 %define GetSoftwareCoordinatesToAX DisplayCursor_GetSoftwareCoordinatesToAX 77 %define GetColumnsToALandRowsToAH DisplayPage_GetColumnsToALandRowsToAH 81 78 82 at DISPLAY_LIB.FormatNullTerminatedStringFromCSSI, dw .FormatNullTerminatedStringFromCSSI79 %define FormatNullTerminatedStringFromCSSI Display_FormatNullTerminatedStringFromCSSI 83 80 %ifndef EXCLUDE_FROM_XTIDE_UNIVERSAL_BIOS 84 at DISPLAY_LIB.PrintSignedWordFromAXWithBaseInBX, dwDisplayPrint_SignedWordFromAXWithBaseInBX81 %define PrintSignedWordFromAXWithBaseInBX DisplayPrint_SignedWordFromAXWithBaseInBX 85 82 %endif 86 at DISPLAY_LIB.PrintWordFromAXwithBaseInBX, dwDisplayPrint_WordFromAXWithBaseInBX87 at DISPLAY_LIB.PrintCharBufferFromBXSIwithLengthInCX, dwDisplayPrint_CharacterBufferFromBXSIwithLengthInCX88 at DISPLAY_LIB.PrintNullTerminatedStringFromBXSI, dwDisplayPrint_NullTerminatedStringFromBXSI89 at DISPLAY_LIB.PrintNullTerminatedStringFromCSSI, dwDisplayPrint_NullTerminatedStringFromCSSI90 at DISPLAY_LIB.PrintRepeatedCharacterFromALwithCountInCX, dwDisplayPrint_RepeatCharacterFromALwithCountInCX91 at DISPLAY_LIB.PrintCharacterFromAL, dwDisplayPrint_CharacterFromAL92 at DISPLAY_LIB.PrintNewlineCharacters, dwDisplayPrint_Newline83 %define PrintWordFromAXwithBaseInBX DisplayPrint_WordFromAXWithBaseInBX 84 %define PrintCharBufferFromBXSIwithLengthInCX DisplayPrint_CharacterBufferFromBXSIwithLengthInCX 85 %define PrintNullTerminatedStringFromBXSI DisplayPrint_NullTerminatedStringFromBXSI 86 %define PrintNullTerminatedStringFromCSSI DisplayPrint_NullTerminatedStringFromCSSI 87 %define PrintRepeatedCharacterFromALwithCountInCX DisplayPrint_RepeatCharacterFromALwithCountInCX 88 %define PrintCharacterFromAL DisplayPrint_CharacterFromAL 89 %define PrintNewlineCharacters DisplayPrint_Newline 93 90 %ifndef EXCLUDE_FROM_XTIDE_UNIVERSAL_BIOS 94 at DISPLAY_LIB.ClearAreaWithHeightInAHandWidthInAL, dwDisplayPrint_ClearAreaWithHeightInAHandWidthInAL91 %define ClearAreaWithHeightInAHandWidthInAL DisplayPrint_ClearAreaWithHeightInAHandWidthInAL 95 92 %endif 96 at DISPLAY_LIB.ClearScreenWithCharInALandAttrInAH, dwDisplayPrint_ClearScreenWithCharInALandAttributeInAH97 iend 93 %define ClearScreenWithCharInALandAttrInAH DisplayPrint_ClearScreenWithCharInALandAttributeInAH 94 -
trunk/Assembly_Library/Src/Menu/Menu.asm
r104 r177 23 23 push cx 24 24 push bx 25 call [cs:di+.rgfnMenuLibraryFunctions]25 call di 26 26 pop bx 27 27 pop cx … … 31 31 32 32 33 ALIGN WORD_ALIGN 34 .rgfnMenuLibraryFunctions: 35 istruc MENU_LIB 36 at MENU_LIB.DisplayWithHandlerInBXandUserDataInDXAX, dw MenuInit_DisplayMenuWithHandlerInBXandUserDataInDXAX 37 ;at MENU_LIB.Close, dw MenuInit_CloseMenuWindow ; Special case in CALL_MENU_LIBRARY 38 at MENU_LIB.RefreshWindow, dw MenuInit_RefreshMenuWindow 33 %define DisplayWithHandlerInBXandUserDataInDXAX MenuInit_DisplayMenuWithHandlerInBXandUserDataInDXAX 34 ;%define Close MenuInit_CloseMenuWindow ; Special case in CALL_MENU_LIBRARY 35 %define RefreshWindow MenuInit_RefreshMenuWindow 39 36 40 ;at MENU_LIB.SetUserDataFromDSSI, dwMenuInit_SetUserDataFromDSSI ; Special case in CALL_MENU_LIBRARY41 ;at MENU_LIB.GetUserDataToDSSI, dwMenuInit_GetUserDataToDSSI ; Special case in CALL_MENU_LIBRARY37 ;%define SetUserDataFromDSSI MenuInit_SetUserDataFromDSSI ; Special case in CALL_MENU_LIBRARY 38 ;%define GetUserDataToDSSI MenuInit_GetUserDataToDSSI ; Special case in CALL_MENU_LIBRARY 42 39 43 ;at MENU_LIB.SetTitleHeightFromAL, dwMenuInit_SetTitleHeightFromAL ; Special case in CALL_MENU_LIBRARY44 at MENU_LIB.ClearTitleArea, dwMenuText_ClearTitleArea45 at MENU_LIB.RefreshTitle, dwMenuText_RefreshTitle40 ;%define SetTitleHeightFromAL MenuInit_SetTitleHeightFromAL ; Special case in CALL_MENU_LIBRARY 41 %define ClearTitleArea MenuText_ClearTitleArea 42 %define RefreshTitle MenuText_RefreshTitle 46 43 47 at MENU_LIB.HighlightItemFromAX, dwMenuInit_HighlightItemFromAX48 ;at MENU_LIB.SetTotalItemsFromAX, dwMenuInit_SetTotalItemsFromAX ; Special case in CALL_MENU_LIBRARY49 at MENU_LIB.RefreshItemFromAX, dwMenuText_RefreshItemFromAX44 %define HighlightItemFromAX MenuInit_HighlightItemFromAX 45 ;%define SetTotalItemsFromAX MenuInit_SetTotalItemsFromAX ; Special case in CALL_MENU_LIBRARY 46 %define RefreshItemFromAX MenuText_RefreshItemFromAX 50 47 51 ;at MENU_LIB.SetInformationHeightFromAL, dwMenuInit_SetInformationHeightFromAL ; Special case in CALL_MENU_LIBRARY52 at MENU_LIB.ClearInformationArea, dwMenuText_ClearInformationArea53 at MENU_LIB.RefreshInformation, dwMenuText_RefreshInformation48 ;%define SetInformationHeightFromAL MenuInit_SetInformationHeightFromAL ; Special case in CALL_MENU_LIBRARY 49 %define ClearInformationArea MenuText_ClearInformationArea 50 %define RefreshInformation MenuText_RefreshInformation 54 51 55 at MENU_LIB.StartSelectionTimeoutWithTicksInAX, dwMenuTime_StartSelectionTimeoutWithTicksInAX52 %define StartSelectionTimeoutWithTicksInAX MenuTime_StartSelectionTimeoutWithTicksInAX 56 53 57 54 %ifdef INCLUDE_MENU_DIALOGS 58 at MENU_LIB.StartProgressTaskWithIoInDSSIandParamInDXAX, dwDialogProgress_StartProgressTaskWithIoInDSSIandParamInDXAX59 at MENU_LIB.SetProgressValueFromAX, dwDialogProgress_SetProgressValueFromAX55 %define StartProgressTaskWithIoInDSSIandParamInDXAX DialogProgress_StartProgressTaskWithIoInDSSIandParamInDXAX 56 %define SetProgressValueFromAX DialogProgress_SetProgressValueFromAX 60 57 61 at MENU_LIB.DisplayMessageWithInputInDSSI, dwDialogMessage_DisplayMessageWithInputInDSSI62 at MENU_LIB.GetSelectionToAXwithInputInDSSI, dwDialogSelection_GetSelectionToAXwithInputInDSSI63 at MENU_LIB.GetWordWithIoInDSSI, dwDialogWord_GetWordWithIoInDSSI64 at MENU_LIB.GetStringWithIoInDSSI, dwDialogString_GetStringWithIoInDSSI65 at MENU_LIB.GetFileNameWithIoInDSSI, dwDialogFile_GetFileNameWithIoInDSSI66 at MENU_LIB.GetDriveWithIoInDSSI, dwDialogDrive_GetDriveWithIoInDSSI58 %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 67 64 %endif 68 iend 65
Note:
See TracChangeset
for help on using the changeset viewer.