画面の解像度を上げる

今まで解像度を320x200のまま使ってきた
簡単に文字が表示できるのでいいのだが、表示できる文字数が少ないのがネック

そこで解像度を上げる
30日OSの方法をパクろうかと思ったが自作OSは現在GRUBを使っているのでBIOSを使ってビデオモードを変更できない
なのでプロテクトモードでビデオモードを変更する方法を調べた
そしたらなんと30日OSのWikiの方に書いてあった。ありがたや
http://hrb.osask.jp/wiki/?advance/QEMUVGA

OSに手直しは必要だった
具体的には「0xe0000000以降の物理メモリアドレスをアクセス出きるようにする」というもの
VRAMを0xa0000をベースにアクセスすると、64KB以上の大きさの領域しか使えず、
それ以上の大きさの領域のアクセスには面倒な手続きが必要になる
(800x600だと480000=約500kbが必要)

なので物理アドレス0xe0000000以降を仮想メモリマッピングして0xe0000000〜0xe0200000(2MB)までをVRAMとして
マッピングすることで面倒な手続きしないくても済むようにした

今後は文字出力を30日OSの方法をパクって作ろうと思う