Changeset 568 in xtideuniversalbios for trunk/Assembly_Library/Src/Menu/MenuBorders.asm
- Timestamp:
- Dec 21, 2014, 5:37:53 PM (10 years ago)
- google:author:
- krille_n_@hotmail.com
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Assembly_Library/Src/Menu/MenuBorders.asm
r526 r568 56 56 push RefreshTitleBorders 57 57 push MenuBorders_GetNumberOfMiddleCharactersToDX 58 jmp MenuBorders_AdjustDisplayContextForDrawingBorders58 jmp SHORT MenuBorders_AdjustDisplayContextForDrawingBorders 59 59 %endif 60 60 … … 120 120 CALL_DISPLAY_LIBRARY SetCursorCoordinatesFromAX 121 121 122 mov si,ATTRIBUTE_CHARS.cBordersAndBackground122 xor si, si ; SI = ATTRIBUTE_CHARS.cBordersAndBackground 123 123 jmp MenuAttribute_SetToDisplayContextFromTypeInSI 124 124 … … 141 141 142 142 ;-------------------------------------------------------------------- 143 ; RefreshItemBorders 143 144 ; RefreshTitleBorders 144 ; Parameters145 ; DX: Number of times to repeat middle character146 ; SS:BP: Ptr to MENU147 ; Returns:148 ; Nothing149 ; Corrupts registers:150 ; AX, BX, CX, SI, DI151 ;--------------------------------------------------------------------152 ALIGN MENU_JUMP_ALIGN153 RefreshTitleBorders:154 call DrawTopBorderLine155 eMOVZX cx, [bp+MENUINIT.bTitleLines]156 jmp SHORT DrawTextBorderLinesByCXtimes157 158 ;--------------------------------------------------------------------159 145 ; RefreshInformationBorders 160 ; Parameters161 ; DX: Number of times to repeat middle character162 ; SS:BP: Ptr to MENU163 ; Returns:164 ; Nothing165 ; Corrupts registers:166 ; AX, BX, CX, SI, DI167 ;--------------------------------------------------------------------168 ALIGN MENU_JUMP_ALIGN169 RefreshInformationBorders:170 call DrawSeparationBorderLine171 eMOVZX cx, [bp+MENUINIT.bInfoLines]172 jmp SHORT DrawTextBorderLinesByCXtimes173 174 ;--------------------------------------------------------------------175 ; RefreshItemBorders176 146 ; Parameters 177 147 ; DX: Number of times to repeat middle character … … 186 156 call DrawSeparationBorderLine 187 157 call MenuScrollbars_GetMaxVisibleItemsOnPageToCX 188 ; Fall to DrawTextBorderLinesByCXtimes 189 190 ;-------------------------------------------------------------------- 158 jmp SHORT DrawTextBorderLinesByCXtimes 159 160 ALIGN MENU_JUMP_ALIGN 161 RefreshTitleBorders: 162 call DrawTopBorderLine 163 mov cl, [bp+MENUINIT.bTitleLines] 164 jmp SHORT DrawTextBorderLinesByCLtimes 165 166 ALIGN MENU_JUMP_ALIGN 167 RefreshInformationBorders: 168 call DrawSeparationBorderLine 169 mov cl, [bp+MENUINIT.bInfoLines] 170 ; Fall to DrawTextBorderLinesByCLtimes 171 172 ;-------------------------------------------------------------------- 173 ; DrawTextBorderLinesByCLtimes 191 174 ; DrawTextBorderLinesByCXtimes 192 175 ; Parameters 193 ; C X:Number of border lines to draw176 ; CL/CX: Number of border lines to draw 194 177 ; DX: Number of times to repeat middle character 195 178 ; SS:BP: Ptr to MENU … … 199 182 ; AX, CX, SI, DI 200 183 ;-------------------------------------------------------------------- 184 DrawTextBorderLinesByCLtimes: 185 xor ch, ch 201 186 DrawTextBorderLinesByCXtimes: 202 187 jcxz .NoBorderLinesToDraw … … 213 198 ; DrawSeparationBorderLine 214 199 ; DrawBottomBorderLine 215 ; DrawTimeoutCounterOverBottomBorderLine216 200 ; DrawBottomShadowLine 217 201 ; DrawTextBorderLine … … 242 226 243 227 call DrawTimeoutCounterString 228 push dx 244 229 sub dx, BYTE MENU_TIMEOUT_STRING_CHARACTERS 245 230 mov si, g_BottomBorderWithTimeoutCharacters 246 231 call PrintBorderCharactersFromCSSIandShadowCharacter 247 add dx, BYTE MENU_TIMEOUT_STRING_CHARACTERS232 pop dx 248 233 ret 249 234 … … 403 388 mov si, ATTRIBUTE_CHARS.cNormalTimeout 404 389 cmp di, BYTE MENU_TIMEOUT_SECONDS_FOR_HURRY 405 eCMOVB si, ATTRIBUTE_CHARS.cHurryTimeout 390 jnb SHORT .NormalTimeout 391 dec si ; SI = ATTRIBUTE_CHARS.cHurryTimeout 392 .NormalTimeout: 406 393 call MenuAttribute_GetToAXfromTypeInSI 407 394
Note:
See TracChangeset
for help on using the changeset viewer.