Signetics 2650 & 2636 程式設計/分數
外觀
| $1FC3 | 7 | 6 | 5 | 4 | 3 | 2 | 1 格式 |
0 位置 |
|---|---|---|---|---|---|---|---|---|
| 0 | 兩個兩位數 | 頂部 | ||||||
| 1 | 一個四位數 | 底部 |
可以程式設計四個分數數字顯示在螢幕的頂部或底部。它們可以排列成一組四個數字,或者兩組兩位數字。顯示的數字以 BCD(二進位制編碼的十進位制數)程式設計。如果任何半位元組被設定為大於或等於 $A,則相應的數字將留空。

此教程的程式碼可以在 教程程式碼 - 分數 中找到。一旦它被組裝並執行,你應該看到一個像這裡顯示的螢幕。
這是設定分數的程式的一部分
000F 0403 : lodi,r0 $03 0011 CC1FC3 : stra,r0 scoreformat 0014 0498 : lodi,r0 $98 0016 CC1FC8 : stra,r0 score12 0019 0476 : lodi,r0 $76 001B CC1FC9 : stra,r0 score34
scoreformat 中的兩個位都被設定為 1,因此分數數字顯示為螢幕底部的單個四字元塊。更改此方法的一種方法是編輯組合語言檔案並進行彙編。使用 WinArcadia 中的一些工具可以更快地進行實驗。
我們可以進行更改的一種方法是即時直接編輯 PVI 中的值。從 工具 選單中,開啟 PVI 監視器。頂部面板允許您更改 PVI 中的暫存器。將 SCORELT 從 98 更改為 2A,顯示的分數將從 9876 更改為 2 76。請注意十六進位制數字 A 如何顯示為空白。現在將 SCORECTRL 從 03 更改為 00,看看分數如何移動到螢幕頂部並顯示為兩個兩位數。
還可以更改彙編器建立的機器程式碼。首先,我們應該重新執行我們的程式:檔案 > 重置為遊戲,這應該將螢幕恢復到其原始狀態。
參考上面的程式碼片段,看看放入 scoreformat 暫存器的值 $03 如何出現在地址 $0010 處的機器程式碼中。從 工具 選單中開啟 記憶體編輯器,然後單擊包含 $0010 處 03 的框。這將開啟一個對話方塊,可以在其中更改此位元組。將其設定為 0。請注意,模擬器螢幕沒有改變。這是因為我們只更改了程式,我們仍然需要執行它,我們透過 檔案 > 重置為遊戲 再次執行它。現在分數數字應該顯示為 98 76,位於螢幕頂部。

