2011-03-11 49 views
0

標題說明。我想在PowerPC/POWER架構的機器上將字符打印到屏幕上,或者只需調用一些BIOS功能。據我瞭解,BIOS通常與CPU實際連接有關,所以我們假設一開始我只想關注qemu提供的機器。我想我不是在尋找'sc'命令,實際上我不知道在這樣的機器上使用哪種方法來做類似的事情。作爲我希望能夠做的一個例子,讓我提供以下x86程序集片段,它應該在TTY模式下使用BIOS中斷打印字符'a'。如何使用asm在PowerPC/POWER架構上觸發BIOS中斷(例如,以TTY模式打印字符)?


mov al, 0x97 
mov bh, 0x00 
mov bl, 0x07 
mov ah, 0x0E 
int 0x10 

謝謝!

+0

您需要覆蓋機器提供的與PC BIOS類似的文檔,並根據文檔調用它。真的沒有比這更多(或更少)。 – 2011-03-11 23:00:10

+0

這是否意味着例如PowerPC原型板和開發工具包可能或可能是二元的(以及'功能性')不兼容? ( - 不像大多數/所有的x86個人電腦) – HotHead117 2011-03-11 23:12:52

+1

是的 - 至少我曾經工作過的少數人與其他人不一樣,除了他們自己和可能來自同一製造商的同一行中的其他人。 – 2011-03-11 23:14:16

回答

1

BIOS特定於x86體系結構。 BIOS INT調用不適用於Power架構。

您的電源開發板可能有自己的固件,並帶有自己的API。您需要查閱適用於您的平臺的固件開發文檔。

+0

不完全正確...... – 2011-04-06 23:32:43

+0

什麼PowerPC平臺有一個標準的PC INT調用API的BIOS? – 2011-04-07 23:22:43

+0

「BIOS專用於x86體系結構」並非如此,除非您專門提到事實上的IBM PC BIOS,由第三方進行各種擴展,並且通常不遵守「標準」。顯然這個術語實際上來自CP/M,它也在Z80上運行。雖然引導加載程序/ ROM代碼在其他平臺上可能沒有被稱爲「BIOS」,但實際上它們是相同的。 – 2011-04-12 01:51:20

0

對於CPU以外的架構,確實沒有一個事實上的標準(特別是當你開始瘋狂的事情,比如開啓little-endian模式,主板可能正在做一些字節交換擁有...)。還有非PC x86體系結構(可能是各種奇怪的超級計算體系結構)。 Linux可以編譯爲這些。

如果qemu提供了在PPC Mac之後建模的附加硬件仿真,那麼將會有一個支持引導的ROM映像,並且可能還有一些基本的盒/文本繪圖以及某種視頻訪問。據我所知,PPC Macs從來沒有像PC的「文本模式」(其中繪圖是用顯卡上加載的字體完成的)的東西; OS X控制檯將緩慢滾動。

+0

那些VGA兼容的視頻硬件呢?不要那些至少具有文本模式(無論固件是否提供了接口,以及達爾文是否利用它)?例如,這款G5 iMac擁有GeForce FX 5200 ... – SamB 2012-07-08 14:01:57

+0

@SamB:我的理解是,在「PC」硬件上,該卡包含一個「視頻BIOS」,它基本上是x86代碼,它知道如何與視頻卡交談,並且設置了中斷表以在正確的中斷上調用該代碼。祝你好運讓任何這些運行在PowerPC上。還要注意的是,雖然它可能與PC顯卡是相同的GPU,但視頻BIOS可能位於不同的芯片上,並且最終它不是相同的硬件。 - 很長一段時間,「mac」顯卡是完全不同的產品由於排序問題(爲什麼司機不能解決這個問題,我不知道...)。 – 2012-07-08 22:19:21