‘何かを創ろう’ カテゴリーのアーカイブ

OSを自作する(12) [文字の描画]

2007年8月14日 火曜日

すでに1年以上が経過してしまいましたが5日目まで来ました。4日目までは章の見出しを見てもどうしていいかわからず、本文とサンプルとを見比べながら理解を進めるしかなかったのですが、5日目(の最初の方)は最初のページの章立てを見て、本文とサンプルを見ずに自分でソースコードを書いてみました。こなした(つもり)のは以下の6項目です。

  • 起動情報の受け取り
  • 構造体を使ってみる
  • 矢印表記を使ってみる
  • とにかく文字を出したい
  • フォントを増やしたい
  • 文字列を書きたい

(続きを読む…)

OSを自作する(11) [矩形の描画]

2007年1月31日 水曜日

間隔があいてしまいました。
まだまだ4日目です。

前回、いろいろ疑問が出てきたのですが、
まだ疑問を解消するレベルまで僕が達していないと思うので
とりあえずもう少し進めることにしました。

さて前回までは描画を行うために、いちいちVRAMとして使われているメモリにアクセスしていました。しかしこれではただ点を打つだけでも、大変です。

そこで今回はVRAMへのアクセス処理を隠蔽した、DrawRectという関数を作成しました。(本文中でやっていることとほぼ同じです。)

 (続きを読む...)

OSを自作する(10) [パレットの変更]

2006年12月30日 土曜日

4日目の後半はシステムパレットの変更方法について書かれていました。
具体的にはビデオDAコンバータという装置に対して、
アセンブラのOUT命令を使用して
パレット番号と番号に対応するパレットの色のデータを送るという
処理を行っていました。

(続きを読む…)

OSを自作する(9)

2006年12月9日 土曜日

さて4日目です。

この日はいよいよC言語を用いて画面を彩っていっています。
最初は地味な描画で練習して徐々にいろいろな描画処理が
説明されていました。

(続きを読む…)

OSを自作する(8)

2006年11月27日 月曜日

OS自作入門読書継続中。。

前回の続き。

使用されているツールを一つ一つ確認しながら、
何がそんなに難しいのか考えてみたところ、
3日目の終わりごろからC言語でコードを書き出しています。
それによりコンパイルして実行イメージを作る際に
多くの中間ファイルが生成されていることがややこしい原因になっているように感じました。基本的にはC言語の知識しかない僕にとってはgas形式やnask形式のアセンブラやオブジェクトファイルというものが概念として理解できていても、実際にそれらのコードやフォーマットに触れていないので動作がイメージできない状態なのです。

しかし、そう愚痴ばかりこぼしていても仕方ないので、
Makeファイルの中身をひとつずつ紐解いていくことにします。

(続きを読む…)