BIOSを使わないでディスクアクセスするぞ!(FDC)その4

1月 12th, 2007

今日はなんだかいろいろやりましたよ?。

・FDCにコマンドを送る関数を作りました。
 →ソースの見やすさがアップしてぐらいです(笑)。
・fifoバッファ整理
 →タスク間のやり取りと、タイマ用に1コ。割り込み用に1コ。
・コマンドの連続送信ができるようになりました。
・FDDモーターの自動OFFが可能になりました。

……と、だいぶイイカンジになってまいりました!ソースコードをOSAkkieWikiにアップしたので、危険を覚悟で動かしてみたい方はどうぞ(PCとかFDDが壊れても責任は負いませんよ!)。

明日の目標は……、そろそろ読み込みとかやってもいいのかな?

BIOSを使わないでディスクアクセスするぞ!(FDC)その3

1月 10th, 2007

 今日は、リザルトステータスの受け取りをしてみました。シリンダ50にシークした後にリザルトステータスを取得すると、無事にコマンドが終了して、現在地50シリンダという風に返ってきます。

 そして、OSAkkieWikiの[[tmp/FDC]]にコードを載せてみました。ただし、実行は危険ですのでおやめください。まぁ、これだけじゃ動かないですけどね(割り込みの許可とか)。

 明日は、うーん、何やろう?

BIOSを使わないでディスクアクセスするぞ!(FDC)その2

1月 10th, 2007

 今日は、モーターの自動ON,OFFができるようになりました。それだけです。モーター制御だけにFIFOとタイマーを用意してみました。

 次の目標は、コマンド08「割り込み状態の取得」かなぁと思うのですが、どう取得していいものやら、検討もつきません。

 advance/FDCのほかに資料を探してみても、さっぱり見つからず……。こうなったら、OSASKのFDCドライバのソース(ASKAで書かれていた)を読むしかないのかぁ。

 壁は高いぞFDC……。

BIOSを使わないでディスクアクセスするぞ!(FDC)その1

1月 8th, 2007

 Ver.0.1.04をリリースして一区切りできたので、FDC実装に挑戦します!

 advance/FDCのページはまだ書きかけなので、IRCで質問しながら、カンで進めています。今日は、右Shiftキーでモーターを回転させて、F12キーでシークさせて、右Ctrlキーでモーターを停止させるところまで作りました。

 FDC開発で注意すべき点は、色々あった気がするけど、モーターの寿命について。急激にON/OFFを繰り返すとモーターに大ダメージ!だそうです。ふむふむ。

 今日つまづいた所は主に、タスクを作るところ、割り込みの許可設定!しばらくいじっていないところは忘れちゃいますね……。タスクの作り方はコンソールタスクを作るところを参考にするといいです。割り込みの許可設定は、bootpack.cのHariMainの中にある「io_out8(PIC0_IMR, 0xd8

OSAkkie Ver.0.1.04

1月 7th, 2007

OSAkkie Ver.0.1.04をリリースしました。

・カーソルやナオミさんなどの画像を転送するための関数を作成。
・ウィンドウの最小化に対応。
・IPLをシリンダ自動調節型に改良。
・時刻の取得(RTC)に対応。
・clockコマンドを実装。
・メニューアプリが複数ページ切り替えに対応。
・OSAkkieミニフォントの文字を修正
・アプリケーションからのe0拡張キーの取得に対応。
・アプリケーション「1line」「clock」を追加。

近況報告

1月 6th, 2007

 そろそろリリースしようかと思っていたのですが、ふと思い立ってキーボードのメイク・ブレイクの取得実装と、e0拡張系のやり直しをはじめたので、リリースはもう少し後になりそうです。今は、メイク・ブレイクの実装でできたところです。これでBonnoの鐘つきもリアルにできます(笑)。

 キーコード資料を漁っていたら、すごくいいページを発見!OS-Wikiには無い情報もいっぱいで、「読み捨てるべき」とされていたe0 2a, e0 aaなどのキーの解説もされていました(ちなみに、フェイクシフトというもので、テンキーのNumLockがOFFの時に送られるものらしいです)。
URL: http://www.win.tue.nl/~aeb/linux/kbd/scancodes.html

— そのほかの開発 —
・メニューアプリ、複数ページ表示対応
 左右キーでページ切り替えができるようになりました。どれだけアプリを追加してもプログラムに変更はいりません。しかし、キーコード変更中なので、まったく使い物にならなくなっています。
・OSAkkieミニフォントをちょっとだけ修正
 「2」の文字を手直ししました。

BIOSを使わないで時刻を取得するぞ!(RTC)

1月 1st, 2007

 新年明けましておめでとうございます!今年もOSAkkieをよろしくお願い申し上げます。

 さて、新年早々、時刻取得関数を実装しました。(ズッコケた以外は)超カンタンでした!タスクバーなどのような、時計を表示する場所が無いので、ひとまずtimeコマンドで時刻が表示されるようにしてみましたが、将来的にはナオミさんスタートメニュー内に表示されるようになる予定です。

時刻取得対応&最小化中ウィンドウ2コ

サイトほぼ完成

12月 31st, 2006

OSAkkieClassic移転と、アプリ紹介ページは年内(って、あと数時間w)移転見送りにしました。
で、サイトがほぼ完成です!

続々移転中

12月 31st, 2006

 今日は、開発日誌とスクリーンショットのページを移転させました。といっても、まだパソコン小屋にデータが残っていますが、そのうち消します。

 残るはOSAkkie Classic、小物ツール系の移動、はりぼて友の会のリンク、といったところでしょうか……。あ、トップページに出てくるアプリのリンク先は未作成です。アプリ解説が出る予定(?)。

CYLS自動調節型IPLを作ろう!(ipl)

12月 28th, 2006

 そういえば、もうクリスマス前のことなのですが、前々からやりたかった自動調節型のiplを導入しました。
 一通りソースを書き終えて、実行!しかし、起動せず……。OSAkkieのIPLは「男のロマン」という理由でロード中にドットが出るようになっているので、その辺がダメなのかなぁと思って、普通のはりぼてOSからIPLのソースをコピーしてきて作っても、やはり起動しませんでした。
 そこで、Kタンに相談して正しく動くIPLのバイナリをもらって、動かないバイナリと比べながらおかしな所を探し出しました。
———————————————-
MOV BX,18*2-2