メニュー



自己紹介

ハンドルネーム : ケーボ
性別 : 男
誕生年 : 1994年
趣味 : プログラミング(書くことも考えることも両方好きです)
近況報告 : ホームページはしばらく更新しませんが、OSの開発は続行中です。ネットワークに対応させようと情報収集中です。



はりぼてOSでなんちゃってUTF-8対応(第2水準漢字まで)

方法

配列変数を作り、上から順番に区点コードに対応したUTF-8のコードを入れます(説明がわかりにくいと思うので、[やってみた]の手順1のところに実物があります)。
そして文字を描画するときに、配列変数の中から、描画しようとしている文字と同じコードが入ったものを探し出し、その添字から区点コードがわかり、文字が描画できるというわけです。

やってみた

  • 手順1.配列変数を作る
    実際のものがこちらにあります。
  • 手順2.TASK構造体のlangbyte1をunsinged charからunsigned shortに変える
    これは、UTF-8には3バイト文字もあるからです。
  • 手順3.graphic.cのputfonts8_ascの改造、関数の作成
    実際のものがこちらにあります。
  • 手順4.console.cのcmd_langmodeの改造
    if (mode <= 2)の部分をif (mode <= 3)に変えてください。これで、langmodeの3番を使えるようになります。
    これで一応終わりですが、typeやtviewなどのアプリケーションでも対応させるにはアプリケーションを改造する必要があります


Cloumo

Github https://github.com/kkk669/Cloumo

  • 高速・軽量
    • プログラムの無駄な部分をなくし、より小さくて高速なOSを目指しています。
  • インターネット
    • ウェブアプリケーションを高速に動作させ、かつ個人の情報を守ることもできる、安全で快適なインターネット利用を目指しています。
  • 人に優しい
    • パソコンを使うには知識が必要という常識をなくし、誰でも使えるものにすることを目指しています。

実装済み機能

  • ブラウザ(基本的ないくつかのHTMLタグや特殊文字には対応)
  • UTF-8対応
  • シートの半透明化・透過度
  • グラデーション
  • 時計
  • 色数が32bit(または16bit)
  • 起動音
  • FPU
  • 画像の縮小
  • 綺麗な円

実装したい機能

  • ネットワーク対応
  • スピーカーなどの周辺機器対応
  • 64bitOS(最近のOSよりも、あまりメモリを使わないから、まだまだ32bitで大丈夫?)
  • 画像の拡大
  • ブラウザを選べない!という欠点ができることが予想されるので、拡張機能や見た目の変更を充実させる。


コメント

  • Keboさんはじめまして。Cumo OSの完成を待ちかまえていましたTriangle Ld.です。しかしこれが完成バージョンになったら、ついに自作OSもWebの世界に入るのかぁ...と思うと、自分はなぜかちっぽけに見えます(笑)。半透明の機能もすごいです。私も何度か試したのですが、どうもうまくいかなくて...。 -- Triangle Ld. 2010-02-06 (土) 13:54:23
  • はじめまして。hikarupspです。半透明のシート、すごいですね。ところで、ひとつバグを見つけました。ウィンドウを思いっきり画面外に出すと、シートが誤作動してしまうようです。これからもがんばってください。 -- hikarupsp 2010-02-07 (日) 16:49:32
  • はじめましてhikarupspさん。バグの報告ありがとうございました。早速原因を探したいと思います。 -- ケーボ 2010-02-08 (月) 17:35:46
  • hikarupspさんに教えていただいたバグは、ウィンドウ移動の方法を変えたら直りました。ありがとうございました。 -- ケーボ 2010-02-09 (火) 17:05:27
  • 頑張れ〜 -- Liva 2011-08-15 (月) 22:09:22
  • keboさんはじめまして、impressions にも書いたのですが、気づいていただけないような気がして、改めて質問いたします。はりぼてOSをjavaで開発する時の、bootpack.javaの書き方を教えてください。Cやアセンブラで書かれた関数の呼び出し方がわかりません。ご教授願います。こんなところまで押しかけてしまってすいません。 -- D&J 2012-08-29 (水) 22:58:47
  • 3バイトならintもしくはlongのほうがいいと思います。 -- skyblue 2014-08-20 (水) 14:08:18
  • 確かに3バイト文字もあると書いていますが,ソースコードを見ていただけるとわかるように,実際に langbyte1 に代入して条件分岐に使うのは2バイト分だけなので,ここでは unsigned short で十分というわけです. -- ケーボ 2014-11-05 (水) 01:44:42

コメントお名前NameLink

リロード   新規 編集 差分 添付   トップ 一覧 検索 最終更新 バックアップ   ヘルプ   最終更新のRSS
Last-modified: 2014-11-05 (水) 01:44:42 (4094d)