Changeset 96 for trunk/bootcode/setup/main.asm
- Timestamp:
- Apr 8, 2017, 12:26:41 AM (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/bootcode/setup/main.asm
r76 r96 773 773 SETUP_EnterMenu_ExtendedOptions EndP 774 774 775 ; [Linux support removed since v1.02]776 ;SETUP_EnterMenu_LinuxCommandLine Proc Near Uses dx bp777 ; test GotLinux, 1778 ; jz SEMLCL_NoLinux779 ; call SETUP_EnterMenu_EnterLinuxCmdLine780 ; ret781 ; SEMLCL_NoLinux:782 ; mov cx, 0C04h783 ; mov si, offset TXT_SETUP_NoLinuxInstalled784 ; call SETUP_ShowErrorBox785 ; ret786 ;SETUP_EnterMenu_LinuxCommandLine EndP787 788 775 SETUP_EnterMenu_DefineMasterPassword Proc Near 789 776 mov di, offset CFG_MasterPassword … … 799 786 800 787 ; ============================================================================ 801 802 ; [Linux support removed since v1.02]803 ;SETUP_EnterMenu_EnterLinuxCmdLine Proc Near804 ; mov cx, 0D05h805 ; call VideoIO_Color806 ; mov bx, 0C02h807 ; mov dx, 0F4Fh808 ; call VideoIO_MakeWindow809 ; mov cx, 0F05h810 ; call VideoIO_Color811 ;812 ; mov si, offset TXT_SETUP_EnterLinuxCmdLine813 ; call GetLenOfString ; CX - Len of Error Message814 ; mov dx, cx815 ; mov cx, 0D28h816 ; call VideoIO_LocateToCenter ; LocateToCenter 13, 40 using LenOfStr817 ; call VideoIO_Print ; Writes 'Please enter Linux-CmdLine'818 ;819 ; mov cx, 0E05h820 ; call VideoIO_Color821 ; mov cx, 0E04h822 ; call VideoIO_Locate823 ; mov al, ' '824 ; mov cl, 74825 ; call VideoIO_PrintSingleMultiChar826 ; mov cx, 0E04h827 ; call VideoIO_Locate828 ; mov si, offset CFG_LinuxCommandLine829 ; push si830 ; call VideoIO_Print ; Writes Linux Command-Line831 ; pop si832 ; mov cx, 0E04h833 ; call VideoIO_Locate834 ;835 ; push cs836 ; pop es ; ES == CS837 ; mov di, offset TmpSector838 ; mov cx, 37839 ; rep movsw ; Copy LinuxCmdLine -> TmpSectorSpace840 ;841 ; mov si, offset TmpSector842 ; mov cx, 74843 ; call VideoIO_LetUserEditString ; -> does actual editing844 ; jnc SEMELCL_UserAbort ; Did user abort ?845 ;846 ; ; Otherwise copy TmpSectorSpace to LinuxCmdLine847 ; mov di, offset CFG_LinuxCommandLine848 ; mov cx, 74849 ; call GetLenOfName ; Get real length of Cmd-Line into CX850 ; jz SEMELCL_NulLine851 ; rep movsb852 ; SEMELCL_NulLine:853 ; mov ax, 75854 ; sub ax, cx855 ; mov cx, ax856 ; xor al, al857 ; rep stosb ; Fill up with NULs858 ;859 ; SEMELCL_UserAbort:860 ; ret861 ;SETUP_EnterMenu_EnterLinuxCmdLine EndP862 788 863 789 ; In: di - Place for Password to be defined … … 1466 1392 SETUPMAGIC_ChangeDefaultSelection EndP 1467 1393 1468 ; [Linux support removed since v1.02]1469 ;SETUPMAGIC_ChangeLinuxKernelPart Proc Near Uses ax cx dx si es di1470 ; mov di, si1471 ; mov dl, ds:[bx] ; Cur Partition No.1472 ; push bx1473 ; jc SMCLKP_DoNotModify1474 ; SMCLKP_NowGoOn:1475 ; mov dh, CFG_Partitions ; CFG_Partitions is Base==11476 ; inc dl ; +1 -> 00h instead FFh -> Disabled1477 ; SMCLKP_RejectPartition:1478 ; call SETUPMAGIC_InternalCheckUp ; CheckUp DL (max. CFG_Partitions)1479 ; SMCLKP_DoNotModify:1480 ; or dl, dl1481 ; jz SMCLKP_FunctionDisabled1482 ; ; Get Partition-Pointer (SI) to Partition-To-Boot (DL)1483 ; dec dl1484 ; call PART_GetPartitionPointer1485 ; inc dl1486 ; cmp bptr ds:[si+LocIPT_SystemID], 06h ; FAT-16 required1487 ; jne SMCLKP_RejectPartition1488 ; pop bx1489 ; add si, LocIPT_Name ; Location of Name1490 ; push cs1491 ; pop es1492 ; add di, LocMENU_ItemPack ; DI points to ItemPack1493 ; mov cx, 111494 ; rep movsb ; Copy cur PartitionName to ItemPack1495 ; xor al, al1496 ; stosb ; Ending Zero1497 ; SMCLKP_WriteNewValue:1498 ; dec dl1499 ; mov ds:[bx], dl ; Set new partition number1500 ; ret1501 ;1502 ; SMCLKP_FunctionDisabled:1503 ; pop bx1504 ; mov si, offset TXT_SETUP_MAGIC_Disabled1505 ; push cs1506 ; pop es1507 ; add di, LocMENU_ItemPack ; DI points to ItemPack...1508 ; call SETUPMAGIC_InternalCopyTillNUL1509 ; jmp SMCLKP_WriteNewValue1510 ;SETUPMAGIC_ChangeLinuxKernelPart EndP1511 1512 ; [Linux support removed since v1.02]1513 ;SETUPMAGIC_ChangeLinuxRootPart Proc Near Uses ax cx dx si es di1514 ; mov di, si1515 ; pushf ; lame, but it's not working other ways1516 ; test ds:[GotLinux], 11517 ; jnz SMCLRP_GotLinux1518 ; popf1519 ; add di, LocMENU_ItemPack ; DI points to ItemPack1520 ; mov si, offset TXT_SETUP_MAGIC_NoLinux1521 ; push cs1522 ; pop es1523 ; call SETUPMAGIC_InternalCopyTillNUL1524 ; ret1525 ; SMCLRP_GotLinux:1526 ; mov dl, ds:[bx] ; Cur Partition No.1527 ; mov dh, CFG_Partitions1528 ; dec dh1529 ; popf1530 ; push bx1531 ; jc SMCLRP_DoNotModify ; Thou shall not modify :)1532 ; SMCLRP_RejectPartition:1533 ; call SETUPMAGIC_InternalCheckUp ; CheckUp DL (max. CFG_Partitions-1)1534 ; SMCLRP_DoNotModify:1535 ; ; Get Partition-Pointer (SI) to Partition-To-Boot (DL)1536 ; call PART_GetPartitionPointer1537 ; cmp bptr ds:[si+LocIPT_SystemID], 083h1538 ; jne SMCLRP_RejectPartition1539 ; pop bx1540 ; mov ds:[bx], dl1541 ; push cs1542 ; pop es1543 ; add di, LocMENU_ItemPack ; DI points to ItemPack...1544 ; push di1545 ; mov cx, 121546 ; xor al, al1547 ; rep stosb ; Fill with NULs1548 ; pop di1549 ; call LINUX_TranslateToDEV ; now translate thingie (DL)1550 ; ret1551 ;SETUPMAGIC_ChangeLinuxRootPart EndP1552 1553 ; [Linux support removed since v1.02]1554 ; CH-ItemNo, CL-Add/Sub, BX-PtrToVariable, SI-ItemPack1555 ;SETUPMAGIC_ChangeLinuxDefaultKernel Proc Near Uses ax cx dx si es di1556 ; mov di, si1557 ; jc SMCLDK_DoNotEdit1558 ;1559 ; ; --- Edit Linux Default Kernel Name ---1560 ; mov cl, 29 ; Left side: 291561 ; test ch, 1000b1562 ; jz SMCLDK_NoRightSide1563 ; and ch, 111b1564 ; mov cl, 68 ; Right side: 681565 ; SMCLDK_NoRightSide:1566 ; add ch, 6 ; Koordinate umberechnen1567 ; push cx1568 ; call VideoIO_Locate1569 ; mov cx, 0E01h1570 ; call VideoIO_Color ; Yellow on Blue1571 ; mov cl, 121572 ; mov si, offset CFG_LinuxDefaultKernel1573 ; call VideoIO_FixedPrint ; Print out [SI] (Length = CL)1574 ; pop cx1575 ; call VideoIO_Locate1576 ; mov cl, 111577 ; mov si, offset CFG_LinuxDefaultKernel1578 ; call VideoIO_LetUserEditString1579 ;1580 ; ; Final-Process string (which means upper-case it)1581 ; mov cl, 111582 ; SMCLDK_FinalProcessLoop:1583 ; mov al, bptr ds:[si]1584 ; cmp al, 'a'1585 ; jb SMCLDK_FinalProcessSkip1586 ; cmp al, 'z'1587 ; ja SMCLDK_FinalProcessSkip1588 ; sub al, 20h1589 ; SMCLDK_FinalProcessSkip:1590 ; mov bptr ds:[si], al1591 ; inc si1592 ; dec cl1593 ; jnz SMCLDK_FinalProcessLoop1594 ; ; --- End of Edit Linux Default Kernel Name ---1595 ;1596 ; SMCLDK_DoNotEdit:1597 ; push cs1598 ; pop es1599 ; add di, LocMENU_ItemPack ; DI points to ItemPack...1600 ; mov si, offset CFG_LinuxDefaultKernel1601 ; mov cx, 6 ; Copy from CFG-Space to ItemPack1602 ; rep movsw1603 ; ret1604 ;SETUPMAGIC_ChangeLinuxDefaultKernel EndP1605 1394 1606 1395 SETUPMAGIC_ChangeTimedKeyHandling Proc Near Uses ax cx dx ds si es di
Note:
See TracChangeset
for help on using the changeset viewer.