Changeset 30 for trunk/BOOTCODE/REGULAR/BOOTMENU.ASM
- Timestamp:
- May 6, 2011, 4:25:19 AM (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/BOOTCODE/REGULAR/BOOTMENU.ASM
r29 r30 20 20 ;--------------------------------------------------------------------------- 21 21 22 IFDEF ModuleNames 23 DB 'BOOTMENU',0 24 ENDIF 25 22 26 BOOTMENU_BuildBackground Proc Near Uses es di 23 27 call VideoIO_CursorOff … … 32 36 BOOTMENU_BuildBackground EndP 33 37 38 CLR_COPYRIGHT_CLASSIC = 0f00h 39 CLR_COPYRIGHT_BM = 0700h 40 34 41 BOOTMENU_BuildMain Proc Near Uses es di 35 42 ; 1st line with Copyright information... 36 43 mov cx, 0101h 37 44 call VideoIO_Locate 38 mov cx, 0F00h45 mov cx, CLR_COPYRIGHT_BM 39 46 call VideoIO_Color 40 47 mov si, offset Copyright … … 42 49 43 50 ; Boot-Window... 44 mov cx, 0901h 51 CLR_BOOT_WINDOW_CLASSIC = 0901h 52 CLR_BOOT_WINDOW_BM = 0701h 53 54 mov cx, CLR_BOOT_WINDOW_BM 45 55 call VideoIO_Color 46 56 mov bx, 0201h … … 53 63 mov al, TextChar_WinLineRight 54 64 mov cl, 78 55 call VideoIO_Internal_MakeWinRight 65 call VideoIO_Internal_MakeWinRight 56 66 57 67 mov dl, 18h … … 63 73 64 74 ; Display Top-Infos in Boot-Window 65 mov cx, 0B01h 75 76 CLR_TOP_INFOS_CLASSIC = 0b01h 77 CLR_TOP_INFOS_BM = 0301h 78 79 mov cx, CLR_TOP_INFOS_BM 66 80 call VideoIO_Color 67 81 mov ch, 03h … … 91 105 92 106 ; Now make the separating vertical lines... 93 mov cx, 0901h 107 CLR_SEP_VERT_LINES_CLASSIC = 0901h 108 CLR_SEP_VERT_LINES_BM = 0701h 109 110 mov cx, CLR_SEP_VERT_LINES_BM 94 111 call VideoIO_Color 95 112 mov ch, 03h … … 157 174 ; Boot-Window is DONE 158 175 159 mov cx, 0C04h 160 call VideoIO_Color 176 ; Rousseau: = Colors = 177 ; FG 178 ; BG 179 ; 7 = grey 180 ; 6 = brown 181 ; 5 = magenta 182 ; 4 = red 183 ; 3 = cyan 184 ; 2 = green 185 ; 1 = blue 186 187 CLR_INFO_WINDOW_CLASSIC = 0c04h 188 CLR_INFO_WINDOW_BM = 0701h 189 190 mov cx, CLR_INFO_WINDOW_BM 191 ;mov cx, 0C06h ; brown, main background 192 call VideoIO_Color ; Rousseau: color info window 193 161 194 mov bx, 1401h 162 195 mov dx, 1950h … … 173 206 mov cx, 1703h 174 207 call VideoIO_Locate 175 mov cx, 0F04h 176 call VideoIO_Color 208 209 CLR_INFO_TEXT_CLASSIC = 0f04h 210 CLR_INFO_TEXT_BM = 0701h 211 212 mov cx, CLR_INFO_TEXT_BM ; Info text 213 call VideoIO_Color ; Rousseau: color info text 214 177 215 mov si, offset TXT_BootMenuHelpText1 178 216 call VideoIO_Print … … 182 220 call VideoIO_Print 183 221 184 mov cx, 0C04h 222 223 CLR_F10_SETUP_CLASSIC = 0c04h 224 CLR_F10_SETUP_BM = 0901h 225 226 mov cx, CLR_F10_SETUP_BM ; background F10 enter Setup 185 227 call VideoIO_Color 186 228 … … 198 240 call VideoIO_PrintSingleChar 199 241 ; HelpWindow done... 242 243 244 ; Rousseau: Debug Stuff, put here after building Main Menu 245 ;call VideoIO_DBG_WriteString 246 ;call VideoIO_DBG_WriteString2 247 200 248 ret 201 249 BOOTMENU_BuildMain EndP 250 251 202 252 203 253 BOOTMENU_BuildGoodBye Proc Near Uses es di … … 209 259 rep stosw 210 260 ; ------------------------------------------- 211 mov cx, 0D05h 261 262 CLR_GOODBYE_WINDOW_CLASSIC = 0d05h 263 CLR_GOODBYE_WINDOW_BM = 0f01h 264 265 mov cx, CLR_GOODBYE_WINDOW_BM 212 266 call VideoIO_Color 213 267 mov bx, 0101h … … 221 275 mov cx, 9 222 276 mov al, WinCharRight 223 mov ah, 05Dh 277 278 ; Little part before version in goodbye-window 279 ; Does not use color-function 280 ;mov ah, 05Dh 281 mov ah, 01fh 224 282 rep stosw 283 225 284 mov cx, 010Bh 226 285 call VideoIO_Locate … … 240 299 mov al, TextChar_WinRep4 241 300 call VideoIO_PrintSingleChar 242 mov cx, 0E01h 301 302 CLR_GOODBYE_AB_VERSION_CLASSIC = 0e01h 303 CLR_GOODBYE_AB_VERSION_BM = 0e03h 304 305 mov cx, CLR_GOODBYE_AB_VERSION_BM 243 306 call VideoIO_Color 244 307 mov si, offset Copyright 245 308 mov cl, 11+CopyrightVersionLen 246 309 call VideoIO_FixedPrint 247 mov cx, 0D05h 310 311 mov cx, CLR_GOODBYE_WINDOW_BM 312 248 313 call VideoIO_Color 249 314 mov al, TextChar_WinRep5 … … 251 316 mov cx, 020Dh 252 317 call VideoIO_Locate 253 mov cx, 0F05h 318 319 CLR_GOODBYE_WINDOW_CLASSIC_2 = 0f05h 320 CLR_GOODBYE_WINDOW_BM_2 = 0701h 321 322 mov cx, CLR_GOODBYE_WINDOW_BM_2 254 323 call VideoIO_Color 255 324 inc si … … 272 341 BOOTMENU_BuildGoodBye EndP 273 342 343 344 274 345 ; Must preserve AX! 275 346 BOOTMENU_BuildTimedBootText Proc Near Uses ax cx si es di 276 mov cx, 1503h 277 call VideoIO_Locate 278 mov cx, 0E04h 347 mov cx, 1503h ; 348 call VideoIO_Locate 349 350 CLR_NON_TIMED_BAR_CLASSIC = 0e04h 351 CLR_NON_TIMED_BAR_BM = 0701h 352 353 mov cx, CLR_NON_TIMED_BAR_BM ; non-timed time bar 279 354 call VideoIO_Color 280 355 call VideoIO_Internal_SetRegs … … 294 369 mov cx, 1503h 295 370 call VideoIO_Locate 296 mov cx, 0E04h 371 372 CLR_TIMED_BAR_CLASSIC = 0e04h 373 CLR_TIMED_BAR_BM = 0e04h 374 375 mov cx, CLR_TIMED_BAR_BM ; timed time bar, yellow on red 297 376 call VideoIO_Color 298 377 mov si, offset TXT_TimedBootLine ; will print TimedBootEntryName too … … 325 404 BOOTMENU_RefreshPartitionText EndP 326 405 406 407 CLR_VOLUME_INDEX_CLASSIC = 0f01h 408 CLR_VOLUME_INDEX_BM = 0f01h 409 327 410 ; Writes Partition-Information to Screen (Boot-Menu) 328 411 ; In: CH - Line to print info … … 339 422 mov dh, cl 340 423 call VideoIO_Locate 341 mov cx, 0F01h; Bwhite, blue424 mov cx, CLR_VOLUME_INDEX_BM ; Bwhite, blue 342 425 call VideoIO_Color 343 426 mov al, dl … … 347 430 ; === Display Drive-Number and Size (Size only in detailed view) === 348 431 add dh, 5 349 movzx cx, dh 350 call VideoIO_Locate 351 mov cx, 0D01h 432 ;movzx cx, dh 433 mov cl,dh 434 mov ch,0 435 436 call VideoIO_Locate 437 438 CLR_HD_INDEX_CLASSIC = 0d01h 439 CLR_HD_INDEX_BM = 0701h 440 441 mov cx, CLR_HD_INDEX_BM 352 442 call VideoIO_Color ; Violet, blue 353 443 mov si, PartPointer … … 367 457 BMBPT_IsHarddrive: 368 458 ; Now display Size-Element... 369 mov cx, 0501h 459 460 CLR_HD_SIZE_CLASSIC = 0501h 461 CLR_HD_SIZE_BM = 0701h 462 463 mov cx, CLR_HD_SIZE_BM 370 464 call VideoIO_Color ; Dark-Violet, Blue 371 465 mov al, '/' 372 466 call VideoIO_PrintSingleChar 373 mov cx, 0D01h467 mov cx, CLR_HD_SIZE_BM 374 468 call VideoIO_Color ; Violet, Blue 375 469 mov ax, PartPointer ; Get Size-Element from PartPtr (AX) … … 383 477 384 478 ; === Display Label === 385 movzx cx, dh 386 call VideoIO_Locate 387 mov cx, 0E01h 479 ;movzx cx, dh 480 mov cl,dh 481 mov ch,0 482 483 call VideoIO_Locate 484 485 CLR_LABEL_CLASSIC = 0e01h 486 CLR_LABEL_BM = 0f01h 487 488 mov cx, CLR_LABEL_BM 388 489 call VideoIO_Color ; Yellow, blue 389 490 mov si, PartPointer … … 394 495 ; === Display Type === 395 496 add dh, 14 396 movzx cx, dh 497 ;movzx cx, dh 498 mov cl,dh 499 mov ch,0 500 397 501 call VideoIO_Locate 398 502 mov si, PartPointer 399 503 mov al, [si+LocIPT_SystemID] 400 504 call PART_SearchFileSysName 401 mov cx, 0C01h 505 506 CLR_FS_NAME_CLASSIC = 0c01h 507 CLR_FS_NAME_BM = 0701h 508 509 mov cx, CLR_FS_NAME_BM 402 510 call VideoIO_Color ; Hrot, Blau 403 511 mov cl, 8 … … 410 518 ; Out: DX - will get returned (fixed, if needed) 411 519 BOOTMENU_BuildChoiceBar Proc near Uses ax es di 520 521 ;call SOUND_Beep 522 412 523 call VideoIO_WaitRetrace 524 525 526 ;call SOUND_Beep 527 413 528 mov cl, 10h ; Color BLUE, Partition DL 414 529 call BOOTMENU_ReColorPart 530 531 ;call SOUND_Beep 415 532 416 533 ; Check, if clipping needed... … … 448 565 call BOOTMENU_RefreshPartitionText 449 566 567 568 ; Keuze bar 569 ; 00h black 570 ; 10h blue 571 ; 20h green (also nice) 572 ; 30h cyan (also nice) 573 ; 40h red 574 ; 50h magenta 575 ; 60h brown (nice) 576 ; 70h white 577 ; 80h grey 578 ; 90h light blue (nice) 579 ; 0a0h bright green 580 ; 0b0h bright cyan 581 ; 0c0h bright red 582 ; 0d0h bright magenta 583 ; 0e0h bright yellow 584 ; 0f0h bright white 585 586 587 CLR_SELECTION_BAR_CLASSIC = 50h 588 CLR_SELECTION_BAR_BM = 090h 589 590 591 450 592 BMBCB_AfterScrolling: 451 mov cl, 50h; Color PINK, Partition DL593 mov cl, CLR_SELECTION_BAR_BM ; Color PINK, Partition DL 452 594 call BOOTMENU_ReColorPart 453 595 ret … … 457 599 ; Destroyed: None, but Locate-Pointer gets set 458 600 BOOTMENU_ReColorPart Proc Near Uses bx cx es di 601 602 ; call SOUND_Beep 603 459 604 mov bh, cl ; Color to BH 460 605 ; First calculate location of bar … … 475 620 and al, 0Fh 476 621 or al, bh ; Adds background color (from BH) 622 623 ;mov al,97h 624 477 625 mov es:[di], al 478 626 add di, 2 … … 615 763 ; Got it, so display bar... 616 764 mov dh, dl 765 766 ;call SOUND_Beep 767 617 768 call BOOTMENU_BuildChoiceBar ; DH - Active, DL - Last Active 769 770 ;call SOUND_Beep 771 618 772 call SOUND_PreBootMenu 619 773 774 620 775 BME_MainLoop: 776 777 ;call VideoIO_DBG_WriteString2 ; Rousseau 778 621 779 test TimedBootEnable, 1 622 780 jz BME_NoTimedBoot
Note:
See TracChangeset
for help on using the changeset viewer.