Changeset 505 in xtideuniversalbios for trunk/XTIDE_Universal_BIOS/Src/Menus/HotkeyBar.asm
- Timestamp:
- Feb 25, 2013, 4:23:09 PM (12 years ago)
- google:author:
- krille_n_@hotmail.com
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/XTIDE_Universal_BIOS/Src/Menus/HotkeyBar.asm
r500 r505 34 34 call HotkeyBar_ScanHotkeysFromKeyBufferAndStoreToBootvars 35 35 ; Fall to HotkeyBar_DrawToTopOfScreen 36 37 36 37 38 38 ;-------------------------------------------------------------------- 39 39 ; HotkeyBar_DrawToTopOfScreen … … 127 127 call FormatFunctionHotkeyString 128 128 %endif 129 ; Fall to .PrintRomBootHotkey 129 ; Fall to .PrintRomBootHotkey 130 130 131 131 ;-------------------------------------------------------------------- … … 169 169 ;-------------------------------------------------------------------- 170 170 HotkeyBar_ClearRestOfTopRow: 171 CALL_DISPLAY_LIBRARY 171 CALL_DISPLAY_LIBRARY GetColumnsToALandRowsToAH 172 172 eMOVZX cx, al 173 CALL_DISPLAY_LIBRARY 173 CALL_DISPLAY_LIBRARY GetSoftwareCoordinatesToAX 174 174 sub cl, al 175 175 mov al, ' ' 176 CALL_DISPLAY_LIBRARY PrintRepeatedCharacterFromALwithCountInCX 177 ret 176 JMP_DISPLAY_LIBRARY PrintRepeatedCharacterFromALwithCountInCX 178 177 179 178 … … 216 215 217 216 mov si, ATTRIBUTE_CHARS.cHurryTimeout ; Selected hotkey 218 j zSHORT GetDescriptionAttributeToDX ; From compare with bScancode above217 je SHORT GetDescriptionAttributeToDX ; From compare with bScancode above 219 218 220 219 GetNonSelectedHotkeyDescriptionAttributeToDX: … … 226 225 call MenuAttribute_GetToAXfromTypeInSI 227 226 xchg dx, ax ; DX = Description attribute 228 ;; fall through to PushHotkeyParamsAndFormat 227 ;; fall through to PushHotkeyParamsAndFormat 229 228 230 229 … … 232 231 233 232 mov dx, (COLOR_ATTRIBUTE(COLOR_YELLOW, COLOR_CYAN) << 8) | MONO_REVERSE_BLINK 234 j z SHORT SelectAttributeFromDHorDLbasedOnVideoMode; From compare with bScancode above233 je SHORT SelectAttributeFromDHorDLbasedOnVideoMode ; From compare with bScancode above 235 234 236 235 GetNonSelectedHotkeyDescriptionAttributeToDX: … … 245 244 mov dl, dh 246 245 .AttributeLoadedToDL: 247 ;; fall through to PushHotkeyParamsAndFormat 246 ;; fall through to PushHotkeyParamsAndFormat 248 247 249 248 %endif ; MODULE_BOOT_MENU … … 277 276 push di ; Description string 278 277 push cx ; Description string parameter 279 278 280 279 push si ; Key attribute for last space 281 280 … … 308 307 ;-------------------------------------------------------------------- 309 308 HotkeyBar_RestoreCursorCoordinatesFromAX: 310 CALL_DISPLAY_LIBRARY SetCursorCoordinatesFromAX 311 ret 309 JMP_DISPLAY_LIBRARY SetCursorCoordinatesFromAX 312 310 313 311 … … 325 323 HotkeyBar_StoreHotkeyToBootvarsForDriveLetterInDL: 326 324 eMOVZX ax, dl 327 xor al, 32 ; Upper case drive letter to lower case keystroke325 or al, 32 ; Upper case drive letter to lower case keystroke 328 326 jmp SHORT HotkeyBar_StoreHotkeyToBootvarsIfValidKeystrokeInAX 329 327 … … 364 362 ; All scancodes are saved, even if it wasn't a drive letter, 365 363 ; which also covers our function key case. Invalid function keys 366 ; will not do anything (won't be printed, won't be accepted as input) 364 ; will not do anything (won't be printed, won't be accepted as input) 367 365 mov [es:di], ah 368 366 369 367 ; Drive letter hotkeys remaining, allow 'a' to 'z' 370 368 call Char_IsLowerCaseLetterInAL 371 369 jnc SHORT .KeystrokeIsNotValidDriveLetter 372 xor al,32 ; We want to print upper case letters370 and al, ~32 ; We want to print upper case letters 373 371 374 372 ; Clear HD First flag to assume Floppy Drive hotkey … … 377 375 378 376 ; Determine if Floppy or Hard Drive hotkey 379 eMOVZX cx, al ; Clear CH to clear scancode377 xchg cx, ax 380 378 call DriveXlate_GetLetterForFirstHardDriveToAX 381 379 cmp cl, al … … 386 384 387 385 .StoreDriveLetter: 388 sbb di, BYTE 1 ; Sub CF if Floppy Drive386 sbb di, BYTE 1 ; Sub CF if Floppy Drive 389 387 xchg ax, cx 390 mov [es:di], al ; AH = zero to clear function hotkey391 392 .KeystrokeIsNotValidDriveLetter: 388 mov [es:di], al 389 390 .KeystrokeIsNotValidDriveLetter: 393 391 NoHotkeyToProcess: 394 392 mov al, [es:BOOTVARS.hotkeyVars+HOTKEYVARS.bScancode] … … 407 405 HotkeyBar_GetBootDriveNumbersToDX: 408 406 mov dx, [es:BOOTVARS.hotkeyVars+HOTKEYVARS.wFddAndHddLetters] 409 test BYTE [es:BOOTVARS.hotkeyVars+HOTKEYVARS.bFlags], FLG_HOTKEY_HD_FIRST 407 test BYTE [es:BOOTVARS.hotkeyVars+HOTKEYVARS.bFlags], FLG_HOTKEY_HD_FIRST 410 408 jnz .noflip 411 409 xchg dl, dh 412 .noflip: 410 .noflip: 413 411 call DriveXlate_ConvertDriveLetterInDLtoDriveNumber 414 412 xchg dl, dh 415 ; Fall to HotkeyBar_FallThroughTo_DriveXlate_ConvertDriveLetterInDLtoDriveNumber 416 417 HotkeyBar_FallThroughTo_DriveXlate_ConvertDriveLetterInDLtoDriveNumber: 418 413 ; Fall to HotkeyBar_FallThroughTo_DriveXlate_ConvertDriveLetterInDLtoDriveNumber 414 415 HotkeyBar_FallThroughTo_DriveXlate_ConvertDriveLetterInDLtoDriveNumber: 416
Note:
See TracChangeset
for help on using the changeset viewer.