5: 2007-11-27 (火) 13:01:27  |
現: 2024-01-06 (土) 22:39:11  |
| | | | |
| | MOV AX,0x4f00 ;AXにファンクション番号である0x4f00を | | MOV AX,0x4f00 ;AXにファンクション番号である0x4f00を |
| | + | |
| | MOV AX,0x9000 ;ここはようするに、ES:DIに0x9000:0を | | MOV AX,0x9000 ;ここはようするに、ES:DIに0x9000:0を |
| | MOV ES,AX ;書き込みたいだけ。ESは直接代入できない | | MOV ES,AX ;書き込みたいだけ。ESは直接代入できない |
| | MOV DI,0 ;のでこうしているだけ | | MOV DI,0 ;のでこうしているだけ |
| | + | |
| | INT 0x10 ;BIOSコール! | | INT 0x10 ;BIOSコール! |
| | | | |
| | MOV ES,AX ;書き込みたいだけ。ESは直接代入できない | | MOV ES,AX ;書き込みたいだけ。ESは直接代入できない |
| | MOV DI,0 ;のでこうしているだけ | | MOV DI,0 ;のでこうしているだけ |
| | + | |
| | INT 0x10 ;BIOSコール! | | INT 0x10 ;BIOSコール! |
| | | | |
| | | | |
| | | | |
| - | 02h BYTE window A attributes | + | -0x90002:1バイト: window A の属性 |
| - | bit 0: exists if set | + | --bit 0: exists if set |
| - | 1: readable if set | + | --1: readable if set |
| - | 2: writable if set | + | --2: writable if set |
| - | bits 3-7 reserved | + | --bits 3-7 reserved |
| - | |0x90003|1バイト|window B attributes (as for window A) ???| | + | -0x90003:1バイト:window B の属性。上記Aと同じフォーマット |
| | 04h WORD window granularity in K | | 04h WORD window granularity in K |
| | 06h WORD window size in K | | 06h WORD window size in K |
| | 10h WORD bytes per scan line | | 10h WORD bytes per scan line |
| | ---remainder is optional for VESA modes, needed for OEM modes--- | | ---remainder is optional for VESA modes, needed for OEM modes--- |
| - | 12h WORD width in pixels | + | -0x90012:2バイト: 画面のX方向のサイズ(ピクセル単位) |
| - | 14h WORD height in pixels | + | -0x90014:2バイト: 画面のY方向のサイズ(ピクセル単位) |
| - | 16h BYTE width of character cell in pixels | + | -0x90016:1バイト: 1文字のX方向のサイズ(ピクセル単位)。高解像度テキスト用? |
| - | 17h BYTE height of character cell in pixels | + | -0x90017:1バイト: 1文字のY方向のサイズ(ピクセル単位)。高解像度テキスト用? |
| - | 18h BYTE number of memory planes | + | -0x90018:1バイト: プレーンの数?(たとえば4なら赤青黄輝とか?) |
| - | |0x90019|1バイト|画面の1ピクセルが何ビットで構成されているか?| | + | -0x90019:1バイト: 画面の1ピクセルが何ビットで構成されているか? |
| - | 1Ah BYTE number of banks | + | -0x9001A:1バイト: バンクの数。 ?? |
| | | | |
| | -0x9001B | | -0x9001B |
| - | --1バイト:メモリーモデルタイプ? | + | --1バイト:メモリーモデルタイプ。0x04だと256色パレットタイプ。0x06だとダイレクトカラー? |
| | ---0 Text | | ---0 Text |
| | ---1 CGA graphics | | ---1 CGA graphics |
| | ---10h-0FFh Reserved for OEM | | ---10h-0FFh Reserved for OEM |
| | | | |
| - | 1Ch BYTE size of bank in K~1Dh BYTE number of image pages | + | -0x9001C:1バイト: バンクの大きさ(KB単位) |
| - | 1Eh BYTE reserved(1) | + | 1Dh BYTE number of image pages |
| | + | -0x9001E:1バイト: 予約らしい。常に1になっているらしい |
| | ------VBE v1.2+ -------------------------- | | ------VBE v1.2+ -------------------------- |
| | 1Fh BYTE Red mask size | | 1Fh BYTE Red mask size |
| | truly reserved. | | truly reserved. |
| | --- VBE v2.0 --- | | --- VBE v2.0 --- |
| - | 28h DWORD Physical address of linear video buffer | + | -0x90028:4バイト:リニアフレームバッファ時のVRAMの開始番地。 |
| | 2Ch DWORD Pointer to start of offscreen memory | | 2Ch DWORD Pointer to start of offscreen memory |
| | 30h WORD Offscreen memory in Kbytes | | 30h WORD Offscreen memory in Kbytes |
| | The buffer is defined as 256bytes | | The buffer is defined as 256bytes |
| | + | |
| | + | ***豆知識! [#nb8254f8] |
| | + | -枝豆ってやぁ〜・・・大豆やねんでぇ(コラなぜ殴る痛いじゃないか) |
| | + | |
| | + | -COLOR(red){VESAではバンク切り替えのバンクをウィンドゥと呼称するらしい!!} |
| | + | |
| | + | |
| | + | |
| | + | |
| | + | **戯言 [#d7a92b74] |
| | + | むむむ・・・? |
| | + | ウチのVESA1.2のボロノートは256パレットもリニアフレームバッファもサポートしていないのではりぼては動かせない・・・ |
| | + | ではこのモードで描画するにはどうしたらいいのか???? |
| | + | ・・・どうも、バンク切り替え?というような方法で行うような感じがしてきた。 |
| | + | ようするに、赤青黄などの成分に分けて、色ごとになんらかの方法で切り替えを行って描画する・・・そんな方式のような気がしてきた・・・ |
| | + | |
| | + | |
| | + | もちろんこれはそれなりに煩雑なのだろうけど、なんか思ったより大変じゃないような気がしてくる・・・どうなんだろうか? |
| | + | |
| | + | 少なくともVGAのように1ドットが1ビットなんてややこしい方式でなければ・・・・ |