Changeset 40 for trunk/BOOTCODE/SETUP/PART_SET.ASM
- Timestamp:
- Apr 11, 2014, 9:58:17 PM (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/BOOTCODE/SETUP/PART_SET.ASM
r38 r40 25 25 26 26 ; This here is called from Menu in AIR-BSET.asm 27 PARTSETUP_Main Proc Near Uses27 PARTSETUP_Main Proc Near 28 28 ; Build Fixed Content... 29 29 call PARTSETUP_DrawMenuBase … … 53 53 cmp ah, Keys_F1 54 54 je PSM_KeyF1 55 cmp ah, Keys_E nter55 cmp ah, Keys_ENTER 56 56 je PSM_KeyENTER 57 57 ; Flags-Change … … 110 110 jmp PSM_MainLoop 111 111 112 ; Disabling editing for type 0x35 is currently implemented 113 ; in PARTSETUP_ChangePartitionName. 112 114 PSM_KeyENTER: 113 115 call PARTSETUP_ChangePartitionName … … 120 122 PSM_KeyBootAble: 121 123 call PART_GetPartitionPointer ; Gets Partition (DL) Pointer -> SI 124 ; See if this is an eCS LVM Volume. 125 ; In that case, we don't allow it to be made bootable. 126 ; We also show a popup to inform the user. 127 call PARTSETUP_IsType35 128 je PSM_KeyBootAble_istype35 129 130 PSM_KeyBootAble_notype35: 122 131 mov al, [si+LocIPT_Flags] 123 xor al, Flags_Boot Able132 xor al, Flags_Bootable 124 133 mov [si+LocIPT_Flags], al 125 134 call PARTSETUP_DrawPartitionInfo 126 135 call PARTSETUP_BuildChoiceBar 136 PSM_KeyBootAble_istype35: 127 137 jmp PSM_MainLoop 128 138 … … 164 174 PARTSETUP_Main EndP 165 175 176 177 ; See if this is a partition of type 0x35 and display error 178 ; when user tries to set it as bootable. 179 ; IN: SI = Pointer to partition 180 ; OUT: ZF = Set if 0x35, clear otherwise 181 PARTSETUP_IsType35 Proc Near 182 mov al, [si+LocIPT_SystemID] 183 cmp al, 35h 184 jne PARTSETUP_IsType35_end 185 pushf 186 pusha 187 ; Cannot boot LVM-Data partitions 188 mov cx, 0C04h 189 mov si, offset TXT_SETUP_NoBootType35 190 call SETUP_ShowErrorBox 191 popa 192 call PARTSETUP_DrawMenuBase 193 call PARTSETUP_RefreshPartitions 194 call PARTSETUP_BuildChoiceBar 195 popf 196 PARTSETUP_IsType35_end: 197 ret 198 PARTSETUP_IsType35 EndP 199 200 166 201 ; Draw all standard-things for Partition Setup, dynamic content not included. 167 202 PARTSETUP_DrawMenuBase Proc Near Uses dx … … 251 286 call VideoIO_FixedPrint 252 287 253 mov si, offset TXT_SETUPHELP_P ARTSETUP288 mov si, offset TXT_SETUPHELP_PartSetup 254 289 call SETUP_DrawMenuHelp 255 290 ret … … 370 405 mov cl, 11 371 406 call VideoIO_FixedPrint 372 pop si cx 407 pop si 408 pop cx 373 409 374 410 ; Display "Flags" field aka "BVHL" … … 379 415 mov bh, bl 380 416 mov al, TXT_SETUP_FlagLetterBootable 381 and bl, Flags_Boot Able417 and bl, Flags_Bootable 382 418 call PARTSETUP_DrawOneFlag 383 419 mov bl, bh … … 429 465 ; DH - New Active (to be activated) 430 466 ; Destroyed: None 431 PARTSETUP_BuildChoiceBar Proc Near Uses467 PARTSETUP_BuildChoiceBar Proc Near 432 468 cmp dl, dh 433 469 je PSBCB_SkipRetrace … … 666 702 cmp byte ptr [si+LocIPT_SystemID], 035h 667 703 jnz no_type_35h 704 705 ; Cannot boot LVM-Data partitions 706 pusha 707 mov cx, 0C04h 708 mov si, offset TXT_SETUP_NoEditType35 709 call SETUP_ShowErrorBox 710 popa 711 712 668 713 jmp PSCPN_AllDone 669 714 no_type_35h: 670 715 671 716 mov cx, 11 ; Partition-Name-Length = 11 Bytes 672 push si di 717 push si 718 push di 673 719 add si, LocIPT_Name ; DS:SI -> Partition-Name 674 720 repz cmpsb 675 pop di si 721 pop di 722 pop si 676 723 jne PSCPN_LetUserEditPartName ; -> No BR/LVM Changing/Saving 677 724 … … 741 788 742 789 ; ----------------------------------------------[LVM SAVE PARTITION NAME]--- 743 ; Copy 11 bytes from IPT into LVM Partit onName, back-padd with zero's790 ; Copy 11 bytes from IPT into LVM PartitionName, back-padd with zero's 744 791 mov cx, 11 745 792 push si … … 848 895 cmp ah, Keys_F1 849 896 je PHSM_KeyF1 850 cmp ah, Keys_E nter897 cmp ah, Keys_ENTER 851 898 je PHSM_KeyToogle 852 899 cmp ah, Keys_Plus … … 958 1005 sub dl, cl ; Adjust position 959 1006 sub dl, 2 960 push cx si ; SI == Label Field 1007 push cx 1008 push si ; SI == Label Field 961 1009 mov cx, dx 962 1010 call VideoIO_Locate … … 965 1013 mov si, offset TXT_SETUP_HideFeature2 966 1014 call VideoIO_Print 967 pop si cx 1015 pop si 1016 pop cx 968 1017 call VideoIO_FixedPrint 969 1018 mov al, '>' … … 1134 1183 ; DH - New Active (to be activated) 1135 1184 ; Destroyed: None 1136 PARTHIDESETUP_BuildChoiceBar Proc Near Uses1185 PARTHIDESETUP_BuildChoiceBar Proc Near 1137 1186 cmp dl, dh 1138 1187 je PHSBCB_SkipRetrace … … 1265 1314 mov di, offset HidePartitionTable 1266 1315 add di, ax ; We got the pointer 1267 push di di 1316 push di 1317 push di 1268 1318 mov cx, LocIPT_MaxPartitions 1269 1319 mov al, 0FFh … … 1367 1417 cmp ah, Keys_ESC 1368 1418 je PSDLS_KeyDONE 1369 cmp ah, Keys_E nter1419 cmp ah, Keys_ENTER 1370 1420 je PSDLS_KeyDONE 1371 1421 ; Direct-Letter-Input
Note:
See TracChangeset
for help on using the changeset viewer.