2009-02-01から1ヶ月間の記事一覧

udevにルールを追加する

wacomのパーミッションを自動的に変える # cat /etc/udev/rules.d/z99-mydevices.rules KERNEL=="event[0-9]*", ATTRS{idVendor}=="056a", MODE="0666" 新しいルールのリロード。次回usb差し込み時から有効になる。 # udevadm control reload_rules 情報源 h…

コンパイルを途中で止める

コンパイルを途中で止めてアセンブラのコードを得る。 main.c int sum(int a, int b) { return a+b; } int main() { return sum(1, 2); } これを途中までコンパイルしてみる。 gcc-4.3(cygwin) gasのコードを得る $ gcc -s main.c $ cat main.s .file "main.…

アセンブラ関数をCからリンクする

http://homepage1.nifty.com/herumi/prog/prog10.html を見てやってみる。 gas(linux) リンカに拘ると前に進めない。 gas仕様のsum.Sを写経してリンクする。 $ gcc -c main.c $ as sum.S -o sum.o $ ld -o sum main.o sum.o -e main undefined reference to …

Hello World

nasm(linux) とりあえず伝統に則ってHello Worldをやってみる。 参考ソースはこちら。http://www.csee.umbc.edu/help/nasm/sample.shtml コメント満載でわかりやすい。対象アセンブラはnasm。インデントの流儀はラベルを0列からはじめて、 それ以外をインデ…

cygwin-1.7のUTF8環境手順

別のマシンにも入れてみたので手順。 setup-1.7.exe http://www.cygwin.com/ml/cygwin-apps/2008-07/msg00060.html C:\cygwin-1.7 に保存した。RootDirectoryとLocalPackageDirectoryをC:\cygwin-1.7に指定。 インストールパッケージ gcc-4 make patchutils …

修行開始

SIMDをやるには順を追っていかねばならないので ぼちぼち修行開始。http://homepage1.nifty.com/herumi/prog/prog.html http://www.ibm.com/developerworks/jp/linux/library/l-gas-nasm.htmlこの辺を参考にnasmとmasmとgasを平行して進めていくことに。 ひ…

Wu's Lineアルゴリズム

DDAで線をひきつつ透明度をY軸の小数部分から直接求める。 http://en.wikipedia.org/wiki/Xiaolin_Wu%27s_line_algorithm http://freespace.virgin.net/hugo.elias/graphics/x_wuline.htm unsigned longをオーバーフローさせる実装 http://www.reportbase.co…

Gupta-Sproullアルゴリズム

さらに 「コンピュータグラフィックス 理論と実践」を参照して書いてみた。 前回の中点線分アルゴリズムを拡張してアンチエイリアス機能を追加した Gupta-Sproullアルゴリズム。動作原理は、ブレゼンハム的に線のピクセルを求めたのちに ピクセルと線分の中…

中点線分アルゴリズム

スキャンラインの材料とすべく 「コンピュータグラフィックス 理論と実践」を参照して線分アルゴリズムを書いてみた。 中点線分アルゴリズムはBresenhamアルゴリズムの亜種で 右と右上のピクセルのどちらを選択するかの判断を 両ピクセルの中点位置で線分の…

1.7のutf8環境

LANG=ja_JP.UTF8 cygterm ENV_1=CYGWIN=codepage:utf8 putty UTF8(CJK) gnu screenのgit版(4.10.0) screen -U w3m-0.52+w3m-cvs-1.914-ambwidth.patch vim(cygwinで普通にインストール) の組み合わせでいい感じになった。utf8でのsshd登録(/usr/bin/ssh-host…

gccが妙に古いと思ったら

下までスクロールしたらgccじゃなくてgcc4という別パッケージがあった。 意外にもすでに4.3になっているのであった。 で、本題はそれではなくて 最近cygwin-1.7が出たらしいので入れてみるという方デス。 古い方と混ぜるとよろしくないとのことなので 環境変…

PS3の方を起動させる

gentooだからか # ps3-boot-game-osという頭にps3-が多いコマンド名だった。http://forums.qj.net/archive/index.php/t-90959.html

lucilleコンパイルしてみた

http://d.hatena.ne.jp/tueda_wolf/20090214/p1 でちょうどgitのリポジトリが紹介されていたので それならば早いということでやってみた。 環境はGentoo Linux。 scons0.97だと AddOption is not defined とかエラーがでるので1.00に sconsをアップグレード …

スキャンラインのソースを発見

http://www.lysator.liu.se/~mikaelk/doc/perspectivetexture/ 一番下にあるサンプルソースの線形補間のものを動かしてみた。 やってみると簡単ではあるのだがそのままではコンパイルできないので ちょっと困った。 どうせならそのままで動くものか、もう少…

ゲット

PS3

機が熟したような気がしたので購入してみた。 cellで遊ぶにはまずLinuxを入れなければならない。 ならばGentooだ。 http://www.gentoo.org/doc/en/handbook/handbook-ppc64.xml?part=1 を見ながらGentooをインストール予定。むしろこっち http://overlays.ge…

スキャンラインへの道

なんとなく開始。 とりあえず最初のパーツとして2次元の三角形描画からはじめる。 GL_TRIANGLESのような頂点配列処理を想定して書いてみる。 三角形その1 ピクセル毎に2次元外積で三角形の内外を判定して描画するコード。 手元の本の最初に載っていた方法。…

cairoの日本語テスト

Linuxでは何の問題もなし。 Windows+VCの環境ではマルチバイト文字列を出力することができなかった。 多分リテラルはutf8でいいと思うのだが、 フォントの指定がよろしくないのだろうか。 cairoがどうやってフォントを引っ張って来ているのかあたりから 調べ…

復習中

SDLは普通にglutの代わりに使えるなぁ。 event loopを自分で書かねばならないが むしろ変なglobal変数を使わないで済む分こちらの方がやりやすいかもしれない。 cairoでテクスチャを生成する実験。 ここら辺のコードを混ぜた http://book.geocities.jp/gtkmm…

SDL_WINDOWIDでOpenGLが動いた

いったんwxWidgets+wxGLCanvasを使うことにしたのだが、 今度はLinuxのwxGTK側でSegmentationFault発生。 じつは、うちのGentooでは動かないことが発覚した。再考した結果、 SDL_WINDOWIDがWindowsでうまくいかないところを追求する方向に転進。 SDLのソース…

SDL_WINDOWIDでOpenGLは使えるのか

haskellはモナドが気になってさっぱり進まなくなったので、 C++でOpenGLやることにした。 そこで、OpenGLのPlatformなのだが LinuxとWindowsの両方で動きGUIのパーツがいろいろある環境という 要求からgtkmm+SDLでできないか調べてみた。 (無理だったらwxWid…

Windowsでのビルド

wx

gtkのSocketはPlugしか挿せない。 しかし、SDLの窓をPlugにする方法が見つからない。 というわけでgtkmm+SDLでOpenGL案は頓挫してしまった。 そろそろ動くのがわかっている環境で前に進めるとしよう。 ということでwxWidgets-2.8.9をWindows XPでビルドする…