NoName Team 電腦資訊討論區

 找回密碼
 我要註冊
搜索
樓主: ss9696

[討論] grub4dos-for_UEFI 設定討論

[複製鏈接]
發表於 2022-7-28 10:54:20 | 顯示全部樓層
感謝大大阿達金田一,另再請教在menu.lst內 很多字尾都有 (0xff) 代表什麼意思?
還有「set a=%@retval% 」 %:是代表什麼思意  @:有代表特殊意義嗎?
發表於 2022-7-28 13:29:59 | 顯示全部樓層
本帖最後由 阿達金田一 於 2022-7-28 13:40 編輯
roger3349 發表於 2022-7-28 10:54
感謝大大阿達金田一,另再請教在menu.lst內 很多字尾都有 (0xff) 代表什麼意思?
還有「set a=%@retval% 」 % ...

(0xff) 是 磁碟號碼 / 磁碟位置
直接用 16進位表示一個磁碟, 等同 (255)
通常是用在 map iso
這和 () (hd0) (cd) (fd0) 之類的意思差不多...只是磁碟的表示法

另外 grub4dos 和 grub4efi 可能有些不同 (我是指硬體底層)
因為早期的 Legacy Bios
gurb4dos 的 ( ) 表示法...其實和 Legacy BIOS 是有關係
所以也等同 BIOS 中的 磁碟位置
例如
(fd0) 是從 (0x0) 開始 到 (0x7f)
而 (hd0) 是從 (0x80) 開始 ... (hd0,0) 也可以用 (0x80,0) 表示
而 CD/DVD 一般是 (0xe0) 開始

註:
Legacy BIOS 中磁碟 0x00-0x7F 為 Floppy Disk, 而 0x80-0xFF 為 Fixed Disk
簡單說除了 Floppy Disk 軟碟 , 其它像 HDD CD/DVD(ISO)  基本都用 0x80 - 0xFF
而 Legacy BIOS HDD 開機...通常是用 (0x80) 開機
所以 BIOS 一般會把要用來 開機 HDD 放到 (0x80)
(所以 grub4dos 這部份和 硬碟位置 是有關係的)
所以早期 USB-HDD 開機...可能是會去佔用到 (0x80) (hd0)
原本的 HDD 可能就會放到 (0x81)

而 UEFI , grub4efi 我猜大概只是延用表示法的習慣
因為硬體上根本不一樣...所以意義上應該不同...
(0xff) 應該只是單純一種 數字表示法 而以
當然 grub4efi 可能會延用習慣 0x0 一樣是 fd0 , 0x80 是 hd0

%變數名% 這和 windows bat/cmd 的 環境變數 一個意思
就是一個變數的表示法
其中 @retval 是指 指令 回應值
例如
calc 1+2+3+4
echo %@retval%
%@retval% 會是 10
因為 calc 是計算 1+2+3+4  回應是 10
發表於 2022-12-3 22:27:56 | 顯示全部樓層
感謝[阿達金田一]再請教 grub4dos-for_UEFI-2022-09-10.7z加入了hide、hiddenflag可是沒有unhide 試了 hiddenflag --clear 沒法unhide,請問要如何unhide
發表於 2022-12-13 15:58:22 | 顯示全部樓層
本帖最後由 阿達金田一 於 2022-12-13 16:18 編輯
roger3349 發表於 2022-12-3 22:27
感謝[阿達金田一]再請教 grub4dos-for_UEFI-2022-09-10.7z加入了hide、hiddenflag可是沒有unhide 試了 hidd ...

這應該是 2022-09-10 的 bug
我個人測試的情況是 (我是直接用 bootice 看分區狀態...看是否隱藏)

hide hiddenflag 對 MBR 操作 隱藏 解除隱藏 都是正常的
對 GPT ...2個指令 都可以隱藏
但是對 隱藏 狀態的判斷 是錯誤的 (推測這個原因導致 解除隱藏 不正常)
例如
(hd1) 是一個 GPT 2分區 0 EFP  , 1 NTFS
hiddenflag (hd1,0)
hiddenflag (hd1,1)
那怕(hd1,0) (hd1,1) 狀態是隱藏的
還是會顯示
Partition (hd1,0) is not hidden
Partition (hd1,1) is not hidden

而 hide 和 hiddenflag
個人感覺好像是會先檢查隱藏狀態...再看要不要執行動作
如果已經 隱藏 ...不會再 隱藏一次
反之...如果 沒隱藏...也不會再次 解除隱藏

而由於 hiddenflag 判斷 GPT 有問題...一直 not hidden
所以 hide 和 hiddenflag ...只能 隱藏 (因為會判斷成 還沒隱藏)
而 hiddenflag 要 --clear 時...也因為判斷為 沒隱藏...所以也不會 解除隱藏

所以除非你能找到可以 處理 GPT 的外部指令
不然這問題是無解...只能坐等新版 debug
您需要登錄後才可以回帖 登錄 | 我要註冊

本版積分規則

小黑屋|手機版|NoName Team 電腦資訊討論區 |網站地圖

GMT+8, 2025-4-6 15:01 , Processed in 0.372719 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回復 返回頂部 返回列表