ザビタン開発日記
2009
| 01
1月 20 (日曜日) 2008 | ||
21:29
|
ブライシンクロンマキシム!
|
|
さてさて。ウィンドゥの可変化。どうしたらええじゃろ?
おっとその前に。 サイズが変化した場合の挙動って、Windowsとか見てると何種類かが あるのがわかるね。
うーーーん・・・どれから手を付けようかな。 とりあえず3番辺りをやってみるか・・・テキストビューアーの 改造という形でどうだろう。 |
||
1月 18 (金曜日) 2008 | ||
13:31
|
ザムザ復活!
|
|
・・・あれ〜?
「在来のインベーダの移植は無理!」 と切って捨てて新しいのを作ってたんだけど・・・・ なんか数箇所弄ったら動いてしまいましたとさ! (^^; (ラッキー! 実はちょっとインベーダ作りに飽きてたので) そんなわけで新インベーダの開発は一旦凍結〜。 ・・・つーことで、とりあえずははりぼて付属のアプリは 一通り新APIで動くってところかな。 (実はまだスクロールAPIがハンパなんだけど・・・) 横道はこれくらいにして、ウィンドゥ可変に戻らねば・・・ リビジョン124
|
||
1月 17 (木曜日) 2008 | ||
13:07
|
ドッキングアウトだぁ〜!! (了解!)
|
|
えっと。開発日記じゃないんですがね。
このサイトではBWikiというPukiWiki派生のモジュールを使っているんですが ちょっと実験的に新しいのを使ってみようかなぁと。 簡単に複数設置が出来そうなのがミソでしょうかねぇ。 ゴッチャゴチャに溜まりまくってしまったページ達をいくつかに 分離できそうな感じなので。(まだわかりませんが) ・・・・う〜む・・・・・・ ちょっとこの新しいモジュール、まだまだ問題が多いなぁ。 そんなわけで一時撤退・・・・(実験は続けるけどね) |
||
1月 13 (日曜日) 2008 | ||
14:35
|
ジョリーと僕とで半分こ!(プッチーの分は?)
|
|
まいったなぁ〜。引数が多すぎ・・・・
そこでこうしてみました。
shortは0xFFFFまで。つまり65535まで。ウィンドゥの座標でこんな値はまあ、 将来は当たり前になるかもしれないけどね。少なくとも今&BBLでは 10年はいらないだろうから・・・(^^; さーて・・・これ、実装ではどーすりゃいいんだろう。これでいいのかなぁ・・・
よおぉぉっしゃぁ!!!!! これでどーーだぁ!!!! (EFLAGSを退避させてるのはシフト命令で影響が出るそうなので念のため・・・) |
||
12:16
|
空間は存在しない! あるのは物質だけだ
|
|
いくつかのAPIを実装してて考えたこと・・・・・
たとえばblockmove。ある領域をドンと別の場所に移動させるAPI なんだけど、じゃ、移動した後はどーするか?? 単純にあるパラメータを置いてその指定色で塗りつぶす・・・ まぁこれでもいいっちゃぁいいんだけど・・・ 例えばだけど、シートのクライアント領域に「標準色」を 設けるってのはどーだろ? ・・・うーん。でもおんなじことかなぁ・・・ おぉ!いいこと思いついた! 「塗りつぶし」の引数を設ける。それによって空いてしまった 空間は塗りつぶすことができる。 で! これを-1とかに指定すると、コピー元になにもしない。 つまり、blockcopyが成り立つじゃないか!!! (^^ ・・・げえぇぇぇぇぇ!!! 大問題発生! レジスタが足りない!!!! 今ってこういう状態。
引数がええと・・・8つ・・・ EAX,ECX,EBX,ESI,EDI,EBP・・・足りねぇ〜!!!!! |
||
12月 23 (日曜日) 2007 | ||
13:16
|
「バードミサイル!」と言ってハザードを押すな!
|
|
久々に復習コーナー。
えっと・・・キーボードからの入力。
|
||
11:07
|
5人? 2人でMAXじゃなかったの!?
|
|
さて。BBLははりぼてから大きく仕様変更してしまったAPI郡がある。
ウィンドゥ関係だ。 以下が元々あったものを仕様変更したもの。
で、仕様変更によって直接ウィンドゥに書き込むことができなくなったのでブロック単位でメモリを転送するapiを1個追加してある。
で! インベーダーをゴニョゴニョ作っている最中に、さらにこんなapiがほしくなったのであります。 api_blockgetblocksendの逆。ウィンドゥのある領域を変数に取り込む api_pointgetblockgetのドット単位版 api_blockmoveアプリ側に変数を用意せず、直接ウィンドゥ内である領域を別の位置に移動させる。 api_scrollwinblockmoveでも出来るが出来るだけコードを短くしてすこしでも反応をよくしたいので専用に設置 api_slidewin横方向のスクロール。同上 ・・・もしかしたら助長かもしれませんが、まあとりあえずはこのあたりがあると便利かな〜なんて・・・(^^ |
||
12月 21 (金曜日) 2007 | ||
20:17
|
怪我の功名争い
|
|
「横道もいいとこ」とはじめた新インベーダーですが、プログラムそのものが
楽しいのとは別に、大改造した描画APIのボロをどんどん叩き出してくれます。 また、「こんなAPIがあったらもっと便利なのに・・・」なんてのも。 新インベーダーが完成することには、各APIももうすこしまともになってるかな?? |
||
12月 19 (水曜日) 2007 | ||
21:23
|
行き止まりだと解ったからいいんでありますよ!
|
|
はうあ〜・・・
やっとこさ方向がまとまってきた・・・ 各APIもほぼ出来上がってきて、アプリ郡の改造も進んでるけど・・・ インベーダーの改良はムリ!!! でもそれじゃくやしいので作り直しております <横道もいいとこ! |
||
12月 15 (土曜日) 2007 | ||
12:46
|
こーほーかくほ〜 「うわーー!このぉ!」
|
|
なんとか管理の分離はできたしマウス直下のシートを設置することもできた・・・。さて問題は、アプリが作ったウィンドゥ。
シート・・・ シート内にはバッファがある。vramに直接データを書くのではなく、 まずこのバッファと名づけられたメモリに描画する。 で、それらを元に実際にvramにデータを書くのはシステムの仕事。 アプリが作ったシートにも当然バッファがあるんだけど、この場合、そのアプリの権限でのメモリ。まあこれはいい。 問題はそのシートがウインドゥだった場合、タイトルバーやらだけはOSが管理しなくちゃいけないんじゃないかと思うわけ。 (たとえば今だと、シートのバッファ全てがアプリに管理されている。っということは、アプリ側からタイトルバーを壊したりができるわけ。これがどうしても出来ない。そういうふうにすべきではないかと・・・) すぐに思いつくのが、ひとつのウィンドゥでシートを二枚使うこと。二枚をピッタリ重ねて一枚のようにする。で、後ろ側をシステムが管理してタイトルバーやらを書き込む。アプリが確保したバッファはウィンドゥのクライアント領域だけ! ・・・しかし、どうなんだろう。かなり描画が遅くなりそうな悪寒・・・ ・・・まてよおぉぉ?? 例えばだけど、これまでのシート。仮に100x100ドットだとするよね? そーすると、どっち道、10000回メモリを書き換えないといけない。 シートを丸々2枚だと20000回の書き換えだから倍になっちゃうけど、 クライアント領域の座標の時だけは読み込む元を切り替えればすこしif判断が入るだけなのでそんなに遅くならない・・・ってふうにできないかな・・・ ちといろいろやりそうなので、例によってここいらへんにて妄想開始。 |
||
1 (2) 3 4 5 6 7 8 9 10 11 »  |
PopnupBlog V3 Denali created by Bluemoon inc. |