資源描述:
《dos真彩色模式下真彩色圖像顯示技術(shù)(1)》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫。
1、DOS真彩色模式下真彩色圖像顯示技術(shù)(1)摘要該文通過介紹CirrusGD5434卡等幾種高、真彩色卡及其顯示模式,詳述了DOS環(huán)境下與硬件無關(guān)的VESA高彩色仿真真彩色、真彩色圖像全息顯示的一般性方法,還提示了24位PCX真彩色圖像解壓縮快速顯示編程的要點。最后給出C語言編程示例。一、高、真彩色顯示卡近年來,順應(yīng)CAD、CG及多媒體技術(shù)進(jìn)步的要求,許多彩色適配器板卡廠商先后推出性能價格比較高的一系列高彩色(HighColor)和真彩色(TrueColor)SuperVGA顯示卡。如TridentMicrosystems公司的T
2、GUI94XX、TGUI96XX,CirrusLogic的GD543X、GD544X,TsengLaboratories的ET4000,ARKLogic的ARK1000,、ARK2000,S3Incorporated的S386CXXX等等。它們除了繼續(xù)支持標(biāo)準(zhǔn)VGA模式外,都支持16色、256色、32K高彩色、64K高彩色及16.7M真彩色VESABIOS擴(kuò)展模式,版本大多為VESA1.2,卡上具有32K、64K及16.7MDAC,有16位ISA、32位VESA、32位PCI總線等多種接口,顯示VRAM配置一般有1M、2M、4M
3、,一般都帶有硬件加速的32位或64位圖形加速引擎(GraphicsEngine),滿足了當(dāng)今386~586各種檔次的PC機(jī)對更多色彩、更高分辨率的要求。表1整理了市場上常見的GD5434(64位GUI)、TGUI9440AGi(32位GUI)和ARK2000PV(64位GUI)三種PCI總線高、真彩色顯示卡的OEMBIOS調(diào)用模式號、色彩數(shù)、分辨率、VESA模式對照及其相應(yīng)的VRAM占用等數(shù)據(jù)。其他支持VESA1.2的顯示卡只要查閱卡附手冊得到OEM(原始設(shè)備制造商)自定義的高、真彩色模式號或其對應(yīng)的VESA模式號。有些配4MV
4、RAM的顯示卡甚至可支持1280×102416M色(VESA1.211BH模式)。表1二、高、真彩色編程與256色編程的異同高、真彩色模式編程在寫視頻緩沖區(qū)端口索引號、頁切換方式、置模式號等方面類同擴(kuò)展256色編程,例如,Trident的高、真彩色顯示卡,寫視頻緩沖區(qū)端口索引號仍是(0x3C4,0xE)和(0x3C5,page),視頻窗口頁粒度仍是64,頁切換方式仍是64K頁、128K頁任選。不同點在于:高、真彩色模式已經(jīng)不再使用256組DAC寄存器索引號及調(diào)色板概念,而使用像素字長的RGB分量數(shù)據(jù)直接描述色彩及飽和度,寫視頻
5、緩沖區(qū)映射到VRAM后由新的64KDAC或16MDAC將色彩數(shù)據(jù)轉(zhuǎn)為模擬信號送多頻彩色顯示器,256色編程中有關(guān)調(diào)色板的BIOS中斷全部失去作用;其次,由于用多個字節(jié)表示一個像素,高、真彩色DAC轉(zhuǎn)換的時間成倍增加,顯示速度過分依賴卡上圖形引擎(GraphicsEngine)的效率,再加上數(shù)據(jù)成倍占用RAM或VRAM,所以顯示速度明顯慢于256色圖像顯示。(作文網(wǎng)zP、24位TGA等圖像文件的顯示。下面就640X480分辨率介紹32K、64K高彩色、16M真彩色模式顯示24位PCX圖像。四、32K、64K高彩色仿真16M真彩色編
6、程現(xiàn)成的64K色圖像很少,彩色掃描儀掃出的多為256色或24位真彩色,許多圖像處理軟件包的圖例也是同樣情形。這里只好用24位真彩色圖像經(jīng)下述圖示過程的位移合并,做成16位的64K高彩色像素字。這種取24位RGB分量高位的方法仿真顯示真彩色圖像,明亮部分的色彩層次能較好還原,低暗部分的色彩層次有微小損失,仿真效果很好。讀者也可根據(jù)需要作其他位的取舍(如舍兩頭留中間),以使色彩還原最小失真。圖圖示中的空格為零。32K高彩色仿真與此類似,只需將綠色分量也右移3位,與紅色、藍(lán)色分量一道做成最高位為零,低15位有效的一個字,送視頻緩沖區(qū)便
7、可。具體編程要點如下:1.調(diào)用VESABIOS4f02H號功能置高彩色圖形模式,成功后調(diào)用VESABIOS4f01H號功能返回每線字節(jié)數(shù)Line-bytes及窗口頁粒度頁的情況。例程根據(jù)各種卡不同模式的窗口頁粒度真彩色編程真彩色編程的關(guān)鍵是要了解圖像數(shù)據(jù)的存放順序及解壓方法,其次注意讀圖像數(shù)據(jù)后按順序要求作轉(zhuǎn)換,否則圖像色彩失真。其余過程同高彩色模式。具體編程要點如下:1.調(diào)用VESABIOS4F02H號中斷置真彩色圖形模式;成功后調(diào)用VESABIOS4F01H號功能,返回每線字節(jié)數(shù)Line-bytes及窗口頁粒度Color)下
8、,不同顯示適配卡的每線字節(jié)數(shù)是不一樣的,如ARK2000PV為1920,GD5434及TGUI9440為2048,S386C868為2560,但由于使用VESA編程,4F01H號功能能準(zhǔn)確返回每線字節(jié)Line-bytes值,并預(yù)先算出每條掃描線始址存于addr數(shù)