ブログパーツ Twitter

« のっぽさんは71歳! | トップページ | 体調不良 »

2006.05.08

30日でOSを作る本・続報3

まずは最新の画面から、どうぞ!

起動直後の画面
(注:画像は縮小しています。実サイズ640×480。)

「な、なにぃ!ほとんどなんにもないじゃないか!!」と思われるでしょうが、

起動直後はこのように「なんにもない」状態からスタートするようになりました。

で、前回の画面に近い状況までに動作させたのが、こちらです。

改良点の説明
(赤枠で囲った点が、おもな改良点です。)


・改良点その1

従来は「音符メニュー」(新たに「ノートメニュー」と命名)をクリックすると、いきなりコンソールが起動するようになっていましたが、

今回から「プルダウンメニュー」が出るようになりました。

クリック前後の比較
(左がクリック前。右がクリック後です。)

プルダウンメニュー内の項目は、適当につけました。

希望としては「Program」をクリックすると次のプルダウンメニューが出て、そこから起動するアプリを選べるようにしたいのですが、

そこまでいっていません。
(現行では、「Program」をクリックするとコンソールが起動するようになっている。)

また、プルダウンメニューが出る前後で、「音符」の形を変えてみました。


・改良点その2

従来は完全な「はりぼて」だった、タスクのタブ表示ですが、

ウインドウを作成すると追加され、ウインドウを消すと削除されるようになりました。

タブが追加されていく様子
(なお、メニュー表示はまだ「はりぼて」です。)

ただし、タブをクリックしてのアプリ切り替えはできていませんし、

アプリのウィンドウをクリックして、アクティブウインドウを切り替えたとしても、タブの表示に変化はありません。


・改良点その3

ウインドウの、最小化・最大化・クローズ用のボタンの表現が変わりました。
(Vistaを「多少」意識している、かな?)

表現が変わっただけでなく、新機能が付きました。

マウスを各ボタンに合わせると(クリックしなくても)、各ボタンの色が変わります。

変わるボタンの色
(これでボタンが押せる位置までカーソルが来ているのかが、一目瞭然!)

ただし実際に動作するのは、相変わらず「クローズ用」ボタンだけです。


・改良点その4

時計が「はりぼて」ではなくなりました。

時計表示
(最初の画像と、表示している時刻が違うでしょ。)



こんなOSですが、新たにプロジェクト名を付けてみました。

名付けて、「HariTiger OS」。

「はりぼて」からスタートして、せめて「張り子のトラ」ぐらいにはなってほしいという願いを込めてみました。

「HariTaiger」は省略すると「HT」ですから、ロゴは「H」と「T」を重ねたものがいいかな?

おおっ!そうすると、「ものすごくかっこいい」ロゴになるぞ!!(笑)
(注:作者は、某在阪プロ野球球団のファンです。)




プロジェクト名までつけてみましたが、表示関係の修正はひとまずこれで置いておこうと思っています。

これからは、もともとの目的である「マルチタスク」関係の部分を、いろいろいじって(そして破壊して)みたいと思っています。
(「時刻表示タスク」も作ったことだし、これを利用する予定。)

結論:Googleで「Haribote OS」で検索すると、このBlogがトップになっているぅ!

※「続報4」はこちら

« のっぽさんは71歳! | トップページ | 体調不良 »

コメント

上のメルアドにソースファイル送ってもらえませんか?
貴方のOSのソースファイルができれば欲しいです。

上のメルアドにソースファイル送ってもらえませんか?
貴方のOSのソースファイルができれば欲しいです。

「続報2」へのコメントで書いたものが、ソースを9割以上説明しています。
C言語ではなく日本語である点が違うだけです。

残りの1割として、シートへの文字列表示があるくらいですが、Haribote OSのソースの中にいくらでも見つけることができるでしょう。

ですから、open_constask や console_task の内容が理解できていれば、あの説明とHaribote OSのソースとを見比べることで、必要なものが得られるはずです(何回かの試行錯誤は必要だとしても)。

「open_constask や console_task の内容がさっぱりわからない」のであれば、本に戻って、コンソール関係の部分を復習してください。

「仕事で今日明日中に問題を解決しないといけない」というわけではないのでしょう。
時間は十分過ぎるほどあるはずですから、まず自分でとことんやってみようとしてください。
少しきつい言い方になるかもしれませんが、私のコメントからあの程度の時間で「ソース下さい」では、「本当に自分で考えようとしたの?」と疑われても仕方ありません。

ソースを教えるのは簡単ですが、他人に教えてもらったソースばかりでOSができて、あなたはうれしいですか?

じゃあ、貴方はソースを公開してくれないわけですね

コンソールの頭に
「OSの情報をかきたいのですが・・・」
putcharに付け足すと悪くなってしまいます。
どうやって宣言するのですか?
putchar~'>'~~の前に宣言することは分かっています。

はじめまして。著者の川合です。

こんなに楽しんでいただけて著者冥利に尽きます。
ありがとうございました。

Cloverさんはhrb-wikiでも自分で考えずに人に聞いてばかりいるように思います。とても残念です。
これをきっかけに自分で考えてプログラミングをする人になってほしいです。そう強く感じていたので、Kanachanさんのお返事がたいへん適切だと感じました。
ありがとうございました。

もしさらに改造が進むことがありましたら、是非それをこのblog上でまた紹介してください。そうしていただけたらとてもうれしいです。

それでは失礼いたします。

Kさんもう私作れちゃいました。
マウスの位置の取得も本を振り返ったら分かったし、
時計宣言も取得できればなんとなくできそうです。
あまりにも、僕を責めすぎじゃないですか?
それなら、こっちもやめますよ。

川合さん、コメントありがとうございます。
まさか直々にコメントいただけるとは、思ってもいませんでした。
(「rumors」に載せていただいただけでも、感謝感激あめあられ、だったのに。)
外観の改造を続けていて、すこしずつ仕組みがわかってきたので、これからは内部の仕組みをいろいろいじってみようと思っています。
とりあえず、キーボードとマウスの別タスク化、かな?

Cloverさん、あなたはどうしてOSを作ってみようと思い立ったのでしょうか?
私の場合は、OSの仕組みへの興味と、自分自身の技術向上のためです。
もしあなたも自分の能力を向上させたいと思っているのなら、自分自身で試行錯誤してみるほかありません。
回答を見ながらテストを解いても、100点は取れるかもしれませんが、実力はつかないのと同じです。
学校とちがって、OS作りで間違えても、誰からも怒られません。
だったら「いろいろ経験したものの勝ち」ですよ。

今のコメントでやったんだけど・・・。
メニューを書くために工夫してきたのですが・・・。
HariMainの無限ループの中に、押されたかの判断文を入れてみました。
そして、コンソールが起動できるようにしてみたらできたので、次にメニューを表示したいために boxfill8の関数を使って、表示させたらうまくいきませんでした。
何か別の方法はあるのでしょうか・・。
ずーーと考えても思いつきませんでした。
時計のほうはなんとかできそうなので。

Kanachanさん。何とかできそうなので上の質問は無しにしておいてください。
時計は、Noodleというプログラムのカウント機能を移植して設定をしようとしています。
あれは、24時間制として簡単に設定できるプログラムなので一回CMOSから入手するだけで自動にカウントができそうです。
メニューの方もがんばってみます。

コメントを書く

コメントは記事投稿者が公開するまで表示されません。

(ウェブ上には掲載しません)

« のっぽさんは71歳! | トップページ | 体調不良 »

2020年3月
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31        

お気に入り

無料ブログはココログ