VESA

  • リアルモードからINT(0x10);で呼び出す。

VESAのファンクション

  • VESAインフォメーション取得
    • AX = 0x4f00;
    • ES:DI = サポート情報を受け取るためのアドレス (最低256バイト);
    • 戻り値:
    • AL == VESAのサポートがあれば0x4f、それ以外の値の場合VESAサポートはない
    • AH == 0ならファンクションの正常終了、それ以外はファンクションのエラー終了
    • ES:DIにストアされる情報
      オフセット長さ内容
      +0x00dwシグネチャ 'VESA'
      +0x04wVESAのバージョン(例:1.02なら0x0102)
      +0x06seg:ofs16OEM名ストリングへのポインタ(ASCIZ)
      +0x0adw各種フラグ
      +0x0eseg:ofs16ビデオモード列挙配列へのポインタ、word配列、終端は0xffff
      +0x12wVESAがサポートするVRAM容量(KB単位)
      +0x14236bytesリザーブ
  • 画面モード情報取得
    • AX = 0x4f01;
    • CX = 情報を得る画面モード番号;
    • ES:DI = 画面モード情報を受け取るためのアドレス (最低256バイト);
    • 戻り値:
    • AL == VESAのサポートがあれば0x4f、それ以外の値の場合VESAサポートはない
    • AH == 0ならファンクションの正常終了、それ以外はファンクションのエラー終了
    • ES:DIにストアされる情報
      オフセット長さ内容
      +0x00wモード属性
      +0x02bウィンドウA属性
      +0x03bウィンドウB属性
      +0x04wウィンドウのアドレス指定単位(KB単位)
      +0x06wウィンドウのサイズ(KB単位)
      +0x08wウィンドウAの開始アドレス(パラグラフ単位)
      +0x0awウィンドウBの開始アドレス(パラグラフ単位)
      +0x0cseg:ofs16リアルモード用のウィンドウ変更ルーチンへのCS:IP
      +0x10w1ラインのVRAM上のバイト数
      +0x12wXの解像度
      +0x14wYの解像度
      +0x16b1キャラクタのX方向のドット数
      +0x17b1キャラクタのY方向のドット数
      +0x18b
      +0x19b1ピクセルが何ビットか(要するに色数)
      +0x1ab
      +0x1bbメモリモデル(0x04=256パレット、0x06=ダイレクトカラー)
      +0x1cb
      +0x1db
      +0x1eb
      +0x1fb
      +0x20b
      +0x21b
      +0x22b
      +0x23b
      +0x24b
      +0x25b
      +0x26b
      +0x27b
      +0x28dwVRAMベースアドレス
      +0x2cdw画面外の先頭VRAMオフセット(画面外の空きVRAMを使う人向け)
      +0x30w画面外のVRAMのサイズ(KB単位)
      +0x32206bytesリザーブ
  • 画面モード設定
    • AX = 0x4f02;
    • BX = 画面モード番号;
      • bit0-13 : ビデオモード番号
      • bit14 : リニアアクセスモード要請(1で要請) -- ただし VESA 2.0以降
      • bit15 : VRAMクリア省略(1で省略)
    • 戻り値:
    • AL == このファンクションに対応していれば0x4f、それ以外の値の場合は非対応
    • AH == 0ならファンクションの正常終了、それ以外はファンクションのエラー終了

標準的な画面モードリスト

  • グラフィックスモード
    解像度4bit8bit15bit16bit32bit/24bit
    320x 2000x10d0x10e0x10f
    640x 4000x100
    640x 480(VGA)0x1010x1100x1110x112
    800x 6000x1020x1030x1130x1140x115
    1024x 7680x1040x1050x1160x1170x118
    1280x10240x1060x1070x1190x11a0x11b
    1600x12000x11c0x11d0x11e0x11f
  • テキストモード
    解像度モード
    80x 600x108
    132x 1320x109
    132x 500x10b
    132x 600x10c
  • 0x100 : 640x 400 - 8bit
  • 0x101 : 640x 480 - 8bit
  • 0x102 : 800x 600 - 4bit (VGA-compatible)
  • 0x103 : 800x 600 - 8bit
  • 0x104 : 1024x 768 - 4bit
  • 0x105 : 1024x 768 - 8bit
  • 0x106 : 1280x1024 - 4bit
  • 0x107 : 1280x1024 - 8bit
  • 0x108 : 高解像度テキストモード(80x 60)
  • 0x109 : 高解像度テキストモード(132x 132)
  • 0x10a : 高解像度テキストモード(解像度?)
  • 0x10b : 高解像度テキストモード(132x 50)
  • 0x10c : 高解像度テキストモード(132x 60)
  • 0x10d : 320x 200 -15bit
  • 0x10e : 320x 200 -16bit
  • 0x10f : 320x 200 -32bit/24bit
  • 0x110 : 640x 480 -15bit
  • 0x111 : 640x 480 -16bit
  • 0x112 : 640x 480 -32bit/24bit
  • 0x113 : 800x 600 -15bit
  • 0x114 : 800x 600 -16bit
  • 0x115 : 800x 600 -32bit/24bit
  • 0x116 : 1024x 768 -15bit
  • 0x117 : 1024x 768 -16bit
  • 0x118 : 1024x 768 -32bit/24bit
  • 0x119 : 1280x1024 -15bit
  • 0x11a : 1280x1024 -16bit
  • 0x11b : 1280x1024 -32bit/24bit
  • 0x11c : 1600x1200 - 8bit
  • 0x11d : 1600x1200 -15bit
  • 0x11e : 1600x1200 -16bit
  • 0x11f : 1600x1200 -32bit/24bit
  • 0x140以降 : ベンダが自由に定義可能
  • 15bit : R5/G5/B5
  • 16bit : R5/G6/B5
  • 24bit : R8/G8/B8
  • 32bit : i8/R8/G8/B8 (i=ignore)
  • 15bitのサポートがあるのはマイナーなのであまり期待できない。
  • 24bit/32bitというのはどちらであるかは規定されていないもの。どちらかというと32bitのほうがメジャーだとは思う。

こめんと欄

  • どなたが、運営されているのか分からないのですけど、VGAや他の項目を細かく調べて詳述されているのには大感謝です。 -- hanpen 2006-08-09 (水) 06:45:19
  • Hi!la pajina esta muy chida pero me gustaria que agregaran una opcion para anunciarce en perros de mexico!!! -- BAILEY 2007-01-15 (月) 14:36:20
  • kasou8086 -- 名無しさん 2007-01-30 (火) 15:25:29
  • http://tkralia.hp.infoseek.co.jp/mona/mona1017/vbe.htmlによれば最近のビデオカードではプロテクトモードでも画素数の設定ができるようです。これを生かせば動的に画素数を変更することも可能かもしれません。 -- 通りすがり 2008-03-17 (月) 19:43:21
  • 9821シリーズにもある程度32ビットまで出来る機種もある。その方法を教えてもらいたいが -- 2010-04-07 (水) 15:24:45
  • 今のVESA-BIOSはビデオモード一覧が壊れてるっぽいんだよなー。変なところに -- 名無しさん 2012-01-13 (金) 22:18:59
  • 変なところにモード一覧が書いてあるの。 -- tarosuke 2012-01-13 (金) 22:19:31

コメントお名前NameLink

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2014-09-19 (金) 13:20:41 (1582d)