DVD-Video 內部/指令集詳細資訊
有關基本指令集概念的解釋,請參閱上一頁。
在每個顯示指令位模式的表格中,頂行顯示從 0 到 7 的位元組號,以及可選地顯示每個位元組內的位號(從 7 到 0 編號),用冒號分隔。例如,位元組 1 的最高位寫成“1:7”。包含多個位的欄位用連字元分隔起始和結束(含)位號,例如,位元組 2 的最底四位寫成“2:3-0”。
頂行下面是一到兩行。每行描述一組指令的有效形式。
用cccc....填充的欄位用於條件格式,而用llll....填充的欄位可以從任何 Link 指令的相應欄位中複製,也以相同的顏色突出顯示。無關緊要的欄位用以下方式填充: .
| 0:7-5 | 0:4-0 | 1:7-4 | 1:3-0 | 2 | 3 | 4 | 5 | 6 | 7 | |
|---|---|---|---|---|---|---|---|---|---|---|
| 0 | 0 | |||||||||
無操作。
| 0:7-5 | 0:4-0 | 1:7-4 | 1:3-0 | 2 | 3 | 4 | 5 | 6 | 7 |
|---|---|---|---|---|---|---|---|---|---|
| 0 | cccc | 1 | cccccccc | cccccccc | cccccccc | instrnr |
將控制權轉移到當前序列中指定的指令號。多個指令的序列僅在 FPC 以及 PGC 的前後部分允許,因此這些是唯一可以使用此指令的地方。序列中的指令從 1 開始編號。
條件格式:1。
| 0:7-5 | 0:4-0 | 1:7-4 | 1:3-0 | 2 | 3 | 4 | 5 | 6 | 7 |
|---|---|---|---|---|---|---|---|---|---|
| 0 | cccc | 2 | cccccccc | cccccccc | cccccccc | ||||
終止當前指令序列。多個指令的序列僅在 FPC 以及 PGC 的前後部分允許,因此這些是唯一可以使用此指令的地方。
條件格式:1。
| 0:7-5 | 0:4-0 | 1:7-4 | 1:3-0 | 2 | 3 | 4 | 5 | 6:7-4 | 6:3-0 | 7 |
|---|---|---|---|---|---|---|---|---|---|---|
| 0 | cccc | 3 | cccccccc | cccccccc | cccccccc | level | instrnr |
設定新的臨時家長管理級別,這可能要求使用者在提高級別時輸入密碼。成功後將控制權轉移到指定的指令。多個指令的序列僅在 FPC 以及 PGC 的前後部分允許,因此這些是唯一可以使用此指令的地方。序列中的指令從 1 開始編號。
條件格式:1。
| 0:7-5 | 0:4-0 | 1:7-4 | 1:3-0 | 2 | 3 | 4 | 5 | 6 | 7 |
|---|---|---|---|---|---|---|---|---|---|
| 1 | 0 | ||||||||
無操作。
| 0:7-4 | 0:3-0 | 1:7-4 | 1:3-0 | 2 | 3 | 4 | 5 | 6:7-2 | 6:1-0 | 7:7-5 | 7:4-0 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 2 | cccc | 1 | cccccccc | cccccccc | | cccccccc | hl_bn | lnk | ||||
如果 hl_bn 不為零(如果 hl_bn 為零,則保持按鈕突出顯示設定不變),則突出顯示按鈕號 hl_bn,並將控制權轉移到由 lnk 標識的目標
| Lnk | 名稱 |
|---|---|
| 0 | 不轉移控制權(如果指定,則只突出顯示按鈕) |
| 1 | LinkTopCell(“連結到單元格頂部”,即 重新開始當前單元格的播放) |
| 2 | LinkNextCell |
| 3 | LinkPrevCell |
| 5 | LinkTopPG(“連結到節目頂部”,即 重新開始當前節目的播放) |
| 6 | LinkNextPG |
| 7 | LinkPrevPG |
| 9 | LinkTopPGC(“連結到 PGC 頂部”,即 重新開始當前 PGC 的播放,可能重新執行預命令) |
| 10 | LinkNextPGC |
| 11 | LinkPrevPGC |
| 12 | LinkGoupPGC(“向上”) |
| 13 | LinkTailPGC(停止播放 PGC 並跳轉到後命令) |
| 16 | RSM(從最後一個 Call 處恢復執行) |
請注意,PGC 之間的“下一個”、“上一個”和“向上”關係是由每個 PGC 的 IFO 條目中的欄位明確定義的。
條件格式:1。
| 0:7-4 | 0:3-0 | 1:7-4 | 1:3-0 | 2 | 3 | 4 | 5 | 6 | 7 |
|---|---|---|---|---|---|---|---|---|---|
| 2 | cccc | 4 | cccccccc | cccccccc | cccccccc | pgcn | |||
連結到編號的 PGC。PGC 必須在同一域中。
條件格式:1。
| 0:7-4 | 0:3-0 | 1:7-4 | 1:3-0 | 2 | 3 | 4 | 5 | 6:7-2 | 6:1-0 | 7 |
|---|---|---|---|---|---|---|---|---|---|---|
| 2 | cccc | 5 | cccccccc | cccccccc | cccccccc | hl_bn | pttn | |||
連結到編號的章節 (PTT)。只能在標題內使用,用於在同一標題內轉移。
條件格式:1。
| 0:7-4 | 0:3-0 | 1:7-4 | 1:3-0 | 2 | 3 | 4 | 5 | 6:7-2 | 6:1-0 | 7 |
|---|---|---|---|---|---|---|---|---|---|---|
| 2 | cccc | 6 | cccccccc | cccccccc | cccccccc | hl_bn | 0 | pgn |
連結到編號的節目。只能在 PGC 內轉移。
條件格式:1。
| 0:7-4 | 0:3-0 | 1:7-4 | 1:3-0 | 2 | 3 | 4 | 5 | 6:7-2 | 6:1-0 | 7 |
|---|---|---|---|---|---|---|---|---|---|---|
| 2 | cccc | 7 | cccccccc | cccccccc | cccccccc | hl_bn | 0 | cn |
連結到編號的單元格。只能在 PGC 內轉移。
條件格式:1。
| 0:7-4 | 0:3-0 | 1:7-4 | 1:3-0 | 2 | 3 | 4 | 5 | 6 | 7 |
|---|---|---|---|---|---|---|---|---|---|
| 3 | cccc | 1 | cccccccc | cccccccc | |||||
停止播放。等同於按下遙控器上的停止按鈕。
條件格式:2。
| 0:7-4 | 0:3-0 | 1:7-4 | 1:3-0 | 2 | 3 | 4 | 5 | 6 | 7 |
|---|---|---|---|---|---|---|---|---|---|
| 3 | cccc | 2 | ttn | cccccccc | cccccccc | ||||
| 在以下位置有效 | FPC | VMGM | VTSM | VTST |
|---|---|---|---|---|
| Y | Y | N | N |
跳轉到編號的標題的入口 PGC(標題對映中的索引?)。
條件格式:2。
| 0:7-4 | 0:3-0 | 1:7-4 | 1:3-0 | 2 | 3 | 4 | 5 | 6 | 7 |
|---|---|---|---|---|---|---|---|---|---|
| 3 | cccc | 3 | ttn | cccccccc | cccccccc | ||||
| 在以下位置有效 | FPC | VMGM | VTSM | VTST |
|---|---|---|---|---|
| N | N | Y | Y |
跳轉到編號的 VTS 標題入口 PGC(當前標題集中的索引?)。只能在同一標題集中轉移。
條件格式:2。
| 0:7-4 | 0:3-0 | 1:7-4 | 1:3-0 | 2 | 3 | 4 | 5 | 6 | 7 |
|---|---|---|---|---|---|---|---|---|---|
| 3 | cccc | 5 | pttn | ttn | cccccccc | cccccccc |
| 在以下位置有效 | FPC | VMGM | VTSM | VTST |
|---|---|---|---|---|
| N | N | Y | Y |
跳轉到編號的指定標題 (當前標題集中的索引?) 的 VTS 章節 (PTT)。只能在同一標題集中轉移。
條件格式:2。
| 0:7-4 | 0:3-0 | 1:7-4 | 1:3-0 | 2 | 3 | 4 | 5:7-6 | 5:5 | 5:4-0 | 6 | 7 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 3 | cccc | 6 | 0 | cccccccc | cccccccc | ||||||
| 在以下位置有效 | FPC | VMGM | VTSM | VTST |
|---|---|---|---|---|
| N | Y | Y | N |
跳轉到 FPC。
條件格式:2。
| 0:7-4 | 0:3-0 | 1:7-4 | 1:3-0 | 2 | 3 | 4 | 5:7-6 | 5:5 | 5:4-0 | 6 | 7 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 3 | cccc | 6 | 1 | 選單 | cccccccc | cccccccc | |||||
| 在以下位置有效 | FPC | VMGM | VTSM | VTST |
|---|---|---|---|---|
| Y | N | Y | N |
跳轉到 VMG 條目選單。menu 的唯一有效值為 2,表示標題選單。
條件格式:2。
| 0:7-4 | 0:3-0 | 1:7-4 | 1:3-0 | 2 | 3 | 4 | 5:7-6 | 5:5 | 5:4-0 | 6 | 7 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 3 | cccc | 6 | ttn | vts | 2 | 選單 | cccccccc | cccccccc |
| 在以下位置有效 | FPC | VMGM | VTSM | VTST |
|---|---|---|---|---|
| Y | Y | N | N |
跳轉到 VTS 條目選單。menu 的有效值為
| 選單 | 條目型別 |
|---|---|
| 3 | 根 |
| 4 | 子畫面(字幕) |
| 5 | 音訊 |
| 6 | 角度 |
| 7 | 章節 |
條件格式:2。
| 0:7-4 | 0:3-0 | 1:7-4 | 1:3-0 | 2 | 3 | 4 | 5:7-6 | 5:5 | 5:4-0 | 6 | 7 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 3 | cccc | 6 | pgcn | 3 | cccccccc | cccccccc | |||||
| 在以下位置有效 | FPC | VMGM | VTSM | VTST |
|---|---|---|---|---|
| Y | Y | Y | N |
跳轉到 VMGM PGC。
條件格式:2。
| 0:7-4 | 0:3-0 | 1:7-4 | 1:3-0 | 2 | 3 | 4 | 5:7-6 | 5:5 | 5:4-0 | 6 | 7 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 3 | cccc | 8 | rsm_cell | 0 | cccccccc | cccccccc | |||||
| 在以下位置有效 | FPC | VMGM | VTSM | VTST |
|---|---|---|---|---|
| N | N | N | Y |
儲存恢復點並轉移控制到 FPC。rsm_cell 指定非零時恢復的單元編號(在哪個單元內?當前程式或 PGC?),否則在下一個單元恢復。
條件格式:2。
| 0:7-4 | 0:3-0 | 1:7-4 | 1:3-0 | 2 | 3 | 4 | 5:7-6 | 5:5 | 5:4-0 | 6 | 7 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 3 | cccc | 8 | rsm_cell | 1 | 選單 | cccccccc | cccccccc | ||||
| 在以下位置有效 | FPC | VMGM | VTSM | VTST |
|---|---|---|---|---|
| N | N | N | Y |
儲存恢復點並轉移控制到 VMG 條目選單。rsm_cell 指定非零時恢復的單元編號(在哪個單元內?當前程式或 PGC?),否則在下一個單元恢復。menu 的唯一有效值為 2,表示標題選單。
條件格式:2。
| 0:7-4 | 0:3-0 | 1:7-4 | 1:3-0 | 2 | 3 | 4 | 5:7-6 | 5:5 | 5:4-0 | 6 | 7 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 3 | cccc | 8 | rsm_cell | 2 | 選單 | cccccccc | cccccccc | ||||
| 在以下位置有效 | FPC | VMGM | VTSM | VTST |
|---|---|---|---|---|
| N | N | N | Y |
儲存恢復點並轉移控制到當前標題集中選單。rsm_cell 指定非零時恢復的單元編號(在哪個單元內?當前程式或 PGC?),否則在下一個單元恢復。menu 的有效值為
| 選單 | 條目型別 |
|---|---|
| 3 | 根 |
| 4 | 子畫面(字幕) |
| 5 | 音訊 |
| 6 | 角度 |
| 7 | 章節 |
條件格式:2。
| 0:7-4 | 0:3-0 | 1:7-4 | 1:3-0 | 2 | 3 | 4 | 5:7-6 | 5:5 | 5:4-0 | 6 | 7 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 3 | cccc | 8 | pgcn | rsm_cell | 3 | cccccccc | cccccccc | ||||
| 在以下位置有效 | FPC | VMGM | VTSM | VTST |
|---|---|---|---|---|
| N | N | N | Y |
儲存恢復點並轉移控制到 VMGM PGC。rsm_cell 指定非零時恢復的單元編號(在哪個單元內?當前程式或 PGC?),否則在下一個單元恢復。
條件格式:2。
| 0:7-5 | 0:4 | 0:3-0 | 1:7 | 1:6-0 | 2 | 3 | 4 | 5 | 6 | 7 |
|---|---|---|---|---|---|---|---|---|---|---|
| 2 | 0 | 0 | ||||||||
無操作。
| 0:7-5 | 0:4 | 0:3-0 | 1:7-4 | 1:3-0 | 2 | 3:7 | 3:6-0 | 4:7 | 4:6-0 | 5:7 | 5:6-0 | 6 | 7 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2 | immed | 1 | cccc | 0 | af | asrc | sf | ssrc | vf | vsrc | cccccccc | cccccccc | |
| 0 | llll | llllllll | llllllll |
此指令可以一次性設定所有音訊、子畫面和視角註冊器(分別為 SPRM 1、2 和 3),或設定其中任意組合。
- 如果 af 為 1,則音訊 SPRM 從 asrc 設定。如果 af 為 0,則 asrc 被忽略,SPRM 1 不變。
- 如果 sf 為 1,則子畫面 SPRM 從 ssrc 設定。如果 sf 為 0,則 ssrc 被忽略,SPRM 2 不變。
- 如果 vf 為 1,則角度 SPRM 從 vsrc 設定。如果 vf 為 0,則 vsrc 被忽略,SPRM 3 不變。
asrc、ssrc 和 vsrc 的解釋由 immed 標誌控制。如果它為 1,則所有這些欄位都是對應註冊器的 7 位新值的字面值。如果 immed 為 0,則每個欄位的最低 8 位是包含目標註冊器新值的源註冊器的編號。
asrc 和 ssrc 生成的值不是直接的流編號,而是當前 PGC 中 PGC_AST_CTL 和 PGC_SPST_CTL 表的索引。PGC_SPST_CTL 可以包含每個條目中的四個流編號,選擇哪個流編號取決於當前影片播放模式(參見上面 SPRM 14 的描述)。
條件格式:2。
| 0:7-5 | 0:4 | 0:3-0 | 1:7-4 | 1:3-0 | 2 | 3 | 4 | 5 | 6 | 7 |
|---|---|---|---|---|---|---|---|---|---|---|
| 2 | immed | 2 | cccc | 0 | src | pgcn | cccccccc | cccccccc | ||
| 0 | llll | llllllll | llllllll | |||||||
設定導航計時器:將 pgcn 放入 NV_PGCN(SPRM 10)中,將 src 的值放入 NVTMR(SPRM 9)中,NVTMR 每秒遞減一次。當 NVTMR 達到 0 時,如果 pgcn 非零,則跳轉到 pgcn。
將 src 和 pgcn 都(或其中一個)指定為零似乎是清除導航計時器在觸發之前最明顯的方式。
src 的解釋由 immed 標誌控制。如果它為 1,則 src 是 16 位字面值。如果 immed 為 0,則 src 的最低 8 位是包含該值的註冊器的編號。
條件格式:2。
| 0:7-5 | 0:4 | 0:3-0 | 1:7-4 | 1:3-0 | 2 | 3 | 4 | 5:7 | 5:6-4 | 5:3-0 | 6 | 7 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2 | immed | 3 | cccc | 0 | src | mode | reg | cccccccc | cccccccc | |||
| 0 | llll | llllllll | llllllll | |||||||||
將 GPRM reg 設定為由 src 給定的值;如果 mode 為 1,則啟用計數器模式,如果 mode 為 0,則停用計數器模式。在計數器模式下,GPRM 每秒遞增一次,否則,其值保持不變直到再次更改。
src 的解釋由 immed 標誌控制。如果它為 1,則 src 是 16 位字面值。如果 immed 為 0,則 src 的最低 8 位是包含該值的註冊器的編號。
條件格式:2。
| 0:7-5 | 0:4 | 0:3-0 | 1:7-4 | 1:3-0 | 2 | 3 | 4 | 5 | 6 | 7 |
|---|---|---|---|---|---|---|---|---|---|---|
| 2 | immed | 4 | cccc | 0 | src | cccccccc | cccccccc | |||
| 0 | llll | llllllll | llllllll | |||||||
將卡拉 OK 混音模式(SPRM 11)設定為 src 的值。
src 的解釋由 immed 標誌控制。如果它為 1,則 src 是 16 位字面值。如果 immed 為 0,則 src 的最低 8 位是包含該值的註冊器的編號。
條件格式:2。
| 0:7-5 | 0:4 | 0:3-0 | 1:7-4 | 1:3-0 | 2 | 3 | 4 | 5 | 6 | 7 |
|---|---|---|---|---|---|---|---|---|---|---|
| 2 | immed | 6 | cccc | 0 | src | cccccccc | cccccccc | |||
| 0 | llll | llllllll | llllllll | |||||||
將 HL_BTNN(SPRM 8)設定為 src 的值。這將設定當前突出顯示的按鈕,1-36 或 0 表示沒有按鈕。請注意,該值必須是按鈕編號乘以 1024。
src 的解釋由 immed 標誌控制。如果它為 1,則 src 是 16 位字面值。如果 immed 為 0,則 src 的最低 8 位是包含該值的註冊器的編號。
條件格式:2。
| 0:7-5 | 0:4 | 0:3-0 | 1:7-4 | 1:3-0 | 2 | 3:7-4 | 3:3-0 | 4 | 5 | 6 | 7 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 3 | immed | op | cccc | 0 | cccccccc | reg | src | cccccccc | cccccccc | ||
| 0 | llll | 0 | llllllll | llllllll | |||||||
將 GPRM 設定為根據其現有值和源運算元的值計算出的函式(並且在交換的情況下,還可以更改源運算元)。它是否保持計數器模式不變?op 根據設定操作(以上)確定要執行的操作。
src 的解釋由 immed 標誌控制。如果它為 1,則 src 是 16 位字面值。如果 immed 為 0,則 src 的最低 8 位是包含該值的註冊器的編號。但是,請注意 src 的限制,如設定操作表中所列。
條件格式:3。
| 0:7-5 | 0:4 | 0:3-0 | 1:7 | 1:6-4 | 1:3-0 | 2 | 3 | 4 | 5 | 6:7-2 | 6:1-0 | 7 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 4 | simmed | op | cimmed | cmp | reg | ssrc | csrc | hl_bn | lnk | |||
根據操作 op 將 GPRM reg 設定為它和 ssrc 的函式,然後根據 cmp 將更新後的 reg 與 csrc 的值進行比較,如果條件為真,則執行由 hl_bn 和 lnk 定義的連結操作。這些欄位的解釋與連結子集指令(以上)相同。
ssrc 的解釋由 simmed 標誌控制。如果此標誌為 1,則 ssrc 是字面上的 16 位值。如果 simmed 為 0,則 ssrc 的低 8 位是包含該值的暫存器的編號。但請注意,ssrc 有設定操作表中列出的限制。
csrc 的解釋由 cimmed 標誌控制。如果此標誌為 1,則 csrc 是字面上的 16 位值。如果 cimmed 為 0,則 csrc 的低 8 位是包含該值的暫存器的編號。
| 0:7-5 | 0:4 | 0:3-0 | 1:7 | 1:6-4 | 1:3-0 | 2 | 3 | 4 | 5 | 6:7-2 | 6:1-0 | 7 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 5 | 0 | op | cimmed | cmp | reg | srcreg | creg1 | csrc2 | hl_bn | lnk | ||
| 1 | 0 | simmed | creg1 | creg2 | ||||||||
根據 cmp 對暫存器 creg1 與暫存器 creg2 或運算元 csrc2 進行比較,如果結果為真,則根據 op 使用暫存器 srcreg 的值或立即值 simmed 將 GPRM reg 設定為計算結果,並執行由 hl_bn 和 lnk 定義的連結子集操作。如果條件為假,則不會執行設定或連結操作。
csrc2 的解釋由 cimmed 標誌控制。如果此標誌為 1,則 csrc2 是字面上的 16 位值。如果 cimmed 為 0,則 csrc2 的低 8 位是包含該值的暫存器的編號。
| 0:7-5 | 0:4 | 0:3-0 | 1:7 | 1:6-4 | 1:3-0 | 2 | 3 | 4 | 5 | 6:7-2 | 6:1-0 | 7 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 6 | 0 | op | cimmed | cmp | reg | srcreg | creg1 | csrc2 | hl_bn | lnk | ||
| 1 | 0 | simmed | creg1 | creg2 | ||||||||
根據 cmp 對暫存器 creg1 與暫存器 creg2 或運算元 csrc2 進行比較,如果結果為真,則根據 op 使用暫存器 srcreg 的值或立即值 simmed 將 GPRM reg 設定為計算結果。無論比較結果如何,都會執行由 hl_bn 和 lnk 定義的連結子集操作。
csrc2 的解釋由 cimmed 標誌控制。如果此標誌為 1,則 csrc2 是字面上的 16 位值。如果 cimmed 為 0,則 csrc2 的低 8 位是包含該值的暫存器的編號。