Archive for 11月, 2006

バグつぶし

水曜日, 11月 15th, 2006

 今日はOSAkkieのバグをつぶして色々作るぞー!と張り切っていたのですが、テレビに見とれてしまい、やっと脱出してPCに向かったところで津波警報発令がきたもんですから、すっかり時間が遅くなってしまいました。ちなみに、ウチは根室市でも一番標高(?)が高い所に住んでいるので、避難したり津波におびえる心配は皆無でした。
 さて、バグつぶしですが、まずはアプリが起動しない問題から。原因は、cmd_appで圧縮ファイルに対応したときに、ファイルサイズの指定を間違えていました。凡ミスです。次はコマンド履歴にメモリの中身が出てくる問題。コレは、memman_alloc_4kした後にメモリの中身をクリアしていないのが原因でした。
 ちょっと時間があったので、起動時のコンソールのlangmodeが、ウィンドウを作る前が0、作った後が1になる(→フォントがそろわない)件について色々考えてみたのですが、どうも面倒なのであきらめました。
 その他の変更は、スタートアップスクリプトのosakkie.hsfに、壁紙を表示するように書き足しておきました。コレで、起動時に自動でマロが出てきます。やったー!

壁紙対応/langmodeいろいろ/cmdlineのバグ

火曜日, 11月 14th, 2006

 gviewとか、はりぼて友の会にアップされている壁紙対応はりぼてOSを参考に、壁紙表示機能を追加しました。
 OSAkkieでは、wallpaperコマンドで表示できるようにしてみました。「wallpaper ファイル名」で表示して、消すときは「wallpaper 0」です。形式もbmp, jpg, ico(いるのか?)の全部に対応です。

 それと、今日はlangmode周りを改造。struct TASKにlangmode0というのを追加して、アプリ起動時のlangmodeを記録しておいて、アプリで変更されて終了時には元に戻すようにしたり、アプリ強制終了時のメッセージ(task_aのlangmodeが反映される)を一時的にタスクにあわせるようにしました。日本語フォントと半角フォントで書体の違いの大きいOSAkkieにとって、langmodeの変わり目はとても気になりますからね。
 課題としては、コンソールのタイトルバーがlangmode 0になっているのをどうにかする、というところかな。

 という訳で、今日はいろいろ付け足していたんですが、気がついたら、変なバグが出来ていました。起動直後から、コマンド履歴呼び出しで文字化けしたようなものがズラズラと出てきてしまいます。
 どこかでメモリがはみ出しているんだとは思うのですが、一体どこだ……。今日はもう遅いので、これまた明日の課題ということになりそうです。

スクリーンショット

スタートアップ機能を作ろう!(startup)

火曜日, 11月 14th, 2006

カンタンでした?。

しかし、OSAkkieはrebootコマンドを書かれると永久に再起動を繰り返してしまうという欠点が……orz

6×12フォント実装

火曜日, 11月 14th, 2006

8×16の半角フォントを応用して、念願の6×12フォントを実装してみました。makefont.exeも改造して、専用の変換ツールも作りました。0x20?0x7fまでは全部書き終わり、半角カタカナは「コ」まで書けました。結構目が疲れる作業なので、続きはまた明日に……。
で、ナオミさんの吹き出しで使ってみました。小さい!!
スクリーンショット
オマケの写真はマロです。OSAkkieにバンドル中。

OSをもっと小さくしよう!(その1) (smaller1)

日曜日, 11月 12th, 2006

おぉ!本当に10KB弱減った!

読破後の改造点まとめ

日曜日, 11月 12th, 2006

自作本読破後から開発日誌設置までの改造点はこちら

・langmodeを指定するAPIを追加
 OSAkkieはlangmode 0じゃないと困るアプリが多いです。bonnoはバックスペースがうまく出ませんし、walkはOSAkkieフォントに依存したアプリなので文字化け状態になるでしょう。そこでlangmodeを指定できるAPIを追加したわけです。
 ただ、アプリが終了すると、langmodeがコンソールに引き継がれてしまうので、そこはうまく直さないといけないですね。

・ナオミさん再びシート化&吹き出し復活
 前に一度開発してみたものの、シートの上下関係の調整に失敗して、コメントアウトしていたのですが、自作本読破で再びチャレンジしてみました。今度は予定通り、ナオミさんを常に手前に置くことができました。
 吹き出しは、window.c内でmake_balloon8という関数を作って、新しいシートの上に描いています。スクリーンショットでは、その上に文字を書いてナオミさんが自己紹介をしています。
 次の目標は、右D&Dでナオミさんを移動させることです。

オマケとして、gviewでアイコンファイルを表示しています。

スクリーンショット

OSAkkie開発日誌スタート

日曜日, 11月 12th, 2006

さて、今日からOSAkkieの開発日誌をまじめにつけようかと思います。
というのも、これから自分なりに色々改造・改良していく上で、いつ・どこを・どういじったかという記録は重要かなぁと思ったのです。
不定期更新かとは思いますが、なにとぞよろしくお願いしますm(_ _)m

うおおおお読み終わったあああああ!!!!!

土曜日, 11月 11th, 2006

 つ……、ついに……、OS自作入門読み終わったああああああああ!!長かったぁぁぁぁぁぁぁ。・゚・(ノ∀`)・゚・。
 さて、ここからOSAkkieワールド炸裂で行きますよ!次々と変なものを実装していきますからね?(゚∀゚)

CSVV

土曜日, 11月 11th, 2006

ついにCSVVをOSAkkieに移植しました。といっても、Ver.0.1相当なので、スクロールバーがなかったり、ウィンドウのサイズを変えたり出来ませんが、なかなかいい感じです。ちなみに、動作には、カーソルキーとPageUp,PageDownキーの取得に対応している必要があります。
↓スクリーンショット
http://koya.marokun.net/osakkie/osakkie/33.png