AW(Adjustment tool for WCLOCK) 取扱い説明書


-----------------------------------------------------------
                                         アウ
            Adjustment tool for WCLOCK == AW ==
                                       Ver. 1.1
                                       2000-01-06(Thursday)
              Programmed by Kenzi NOIKE(野池賢二)
                E-mail: noike@fairy.ei.tuat.ac.jp
                URL: http://shouchan.ei.tuat.ac.jp/~noike/
                (趣味のページ→ポケット・コンピュータ遊び)
-----------------------------------------------------------
1.はじめに
 リアルタイム・クロック・IC(以降、RTC IC と略記します) を内蔵せずに計時機能を実現するデバイス・ドライバとして WCLOCK(参考文献 [2])があります。 これは、SLOW TIMER 割込みによって計時を行っており、 たいへん手軽で、便利なのですが、電源を切ると計時が止まってしまいます。 そのため、電源を入れるたびに、日付と時刻を設定しなければなりません。 また、SLOW TIMER 割込みは、電源電圧や気温などの変動により、 割込み周期が変動するため、ときどき、 秒の進み具合を調整する必要があります。
 これらの設定を簡単に行うために、日付・時刻の設定、 秒の進み具合の調整を手助けするツール AW を作成しました。 「AW で、合う」というわけです(^^;)。


2.とりあえず使ってみる
 クロック・アップ改造をしてあるときは、通常速にしてください。
 BASIC からは、

  LOADM"AW":CALL &B8000

 とし、HMF(参考文献 [6]) からは、 X キーや H キー(SHELL) を使って単に AW を実行してください。
 まず、SLOW TIMER 割込みの周期が 4 秒間測定され、WCLOCK の 秒の進み具合が自動調整されます。
 次に、WCLOCK から得た日付と時刻が表示されますので、 あたりを見回して時計やカレンダーを探し(^^;)、 現在の日付と時刻を入力してください。 入力は、表示されているものと異なる部分だけ入力すれば十分です。 たとえば、現在の日付と時刻が 1999 年 6 月 29 日 10 時 30 分 40 秒のとき、

  1999/06/28 10:20:40

と表示されていたら、1999/06/28 8 の部分を 9 に、10:20:40 2 の部分を 3 にするだけで十分です。
 入力には、数字キーとカーソル左右移動キーが使えます。
 入力が終ったら、RET キーを押してください。 RET キーを押したときに、入力した日付と時刻が設定されます。


3.AW の起動時オプション
3.0 起動時オプションの指定方法
 起動時オプションは、BASIC からは、

  CLOADM"AW":CALL &B8000"起動時オプション列

とすることで、HMF からは、SHELL(H キー または X キー)から

  AW 起動時オプション列

とすることで指定できます。たとえば、-T- オプションと -L オプションを指定したいときは、BASIC からは、

  CLOADM"AW":CALL &B8000"-T- -L

とし、HMF からは、SHELL から

  AW -T- -L

とします。

3.1 秒の進み具合調整オプション(-T, -T-, -Tnum)
 -T オプションを指定して起動すると、SLOW TIMER 割込みの周期を 4 秒間測定し、秒の進み具合を自動調整します。 この動作がデフォルトですので、-T オプションは、 指定しなくてもかまいません。
 -T- オプションを指定して起動すると、 秒の進み具合の自動調整を行いません。
 -Tnum オプションを指定して起動すると、 SLOW TIMER 割込みの周期の測定時間を num 秒にすることができます。 num のデフォルト値は 4 です。 num の値の範囲は、1 <= num <= 99 を想定していますが、値の範囲のチェックをしていないので、 この範囲外の値を指定したときの動作については保証できません。

3.2 日付・時刻の設定オプション(-S, -S-)
 -S オプションを指定して起動すると、 日付・時刻の設定ができます。 この動作がデフォルトですので、-S オプションは、 指定しなくてもかまいません。
 -S- オプションを指定して起動すると、 日付・時刻の設定を行なわずに終了します。

3.3 液晶表示制御オプション(-L, -L-)
 -L オプションを指定して起動すると、 液晶表示 OFF の状態のまま終了します。 このオプションは、4.で述べる、HMF WELCOME モジュール( 参考文献 [5])から起動するときのためにあります。
 -L- オプションを指定して起動すると、 液晶表示を通常のままの状態で終了します。 この動作がデフォルトですので、-L- オプションは、 指定しなくてもかまいません。
 うっかり、液晶表示 OFF のままの状態になってしまったときは、 電源スイッチを一度 OFF にしてから、再び ON にしてください。 HMF 上で液晶表示 OFF のままの状態になってしまったときは、 BASIC キーを押して HMF を終了し、電源スイッチを OFF, ON してください。


4.HMF WELCOME モジュールで AW を起動する
 HMF に WELCOME モジュール( 参考文献 [5])を組み込み、 常用している人は、WELCOME モジュールで AW を起動するようにすると、 電源投入直後に時刻の設定などができるので、便利です。
 まず、HMF に WELCOME モジュールを組み込んでください。 組込み方は WELCOME モジュールのドキュメント(取扱い説明書) を参照してください。
 次に、HMF.CFG の WELCOME モジュールのための記述を、 次のように書き換えます。

  [WELCOME]
  K00=^OFF  ;AutoPowerOff
  K01=OFF
  M00="15"
  M01="WELCOME.IMG"
  M02="WEL_AW.BAT"

この例の場合、WEL_AW.BAT, AW, WAVE500( 参考文献 [7] )を HMF の PATH が通っている場所に、 BOOT.WAV を S1: においてください。
 書き換えたら、HMFCUST を実行してください。
 これで WELCOME モジュールで AW を起動できるようになりました。 試しに、HMF を起動した状態で電源を OFF, ON してください。 うまくいきましたね?


5.このソフトの扱いについて
 このソフトは、フリーソフトウェアとします。使用に対して対価を要求しません (でも、もし気に入ってくださって、野池に何かあげてもいいと思う人は、 缶コーヒーを 1 本ください(^^;))。
 AW.VOG, AW.TXT, WEL_AW.BAT, AW.1ST の著作権は、 野池賢二が保持します。
 AW の中のランタイム・ルーチンの著作権は、 VOGUE(参考文献 [3])の作者、 近 成人さんが保持します。
 個人的に変更を加え、個人的に使用することは構いませんが、 変更したものを第三者に配布しないでください。
 転載を希望される方は、 noike@fairy.ei.tuat.ac.jp まで、メールでご連絡ください。
 ご意見、ご感想、バグ報告は、 noike@fairy.ei.tuat.ac.jp まで、メールでご連絡ください。ただし、それらに返信したり、 バグを直すことは、義務ではないものとします。


6.おわりに
 今回、VOGUE ではじめて実用的なツールを作ってみました。 VOGUE で生成した実行ファイルは、実行ファイルにランタイム・ ルーチンがリンクされるので、 どうしてもファイルサイズが大きくなってしまいますね。 AW では、グラフィックス描画や並列処理を使用していないので、 VOGUE のミニ版 VOGUEM で実行ファイルを生成したのですが、 それでも 10K バイト以上になってしまいました。 AW の作りが冗長だというのもあるのですが(^^;)、 アセンブラで書けば、数 K バイトでしょうか。 WELCOME モジュールで起動することを考えると、 アセンブラで書いてファイルサイズを小さくしたほうがよさそうですね。
 それにしても、VOGUE は手軽に機械語レベルのプログラミングができて、 いいですね! 実行速度も BASIC に比べてかなり速いです。 これで、ダイナミック・リンク・ライブラリ の機構があれば最高なんですが... 。
 今、VOGUE の MIDI 出力関数を使って、何か作ろうと目論んでいます。 とりあえずは、簡単なゲームかな? 最終的には、 MIDI シーケンサーを作ることを目標にしています。 「お外で MIDI(Copyrighted by たもつさん)」が、 ポケコンでできたらいいと思いませんか?


7.ざれごと
 「さすらいの VOGUE プログラマ(^^;)」と呼ばれるくらい、 VOGUE を極めたいと思います。


8.歴史

謝辞
 手軽に機械語レベルのプログラミングができる VOGUE を開発された、 近成人さんに感謝いたします。
 RTC IC を内蔵しなくても計時機能を実現するデバイス・ドライバ WCLOCK を開発された Aesop・M601(Aesop・M68)さんに感謝いたします。
 Internet 上にポケ通的な場( http://www.kt.rim.or.jp/~tmizuno/pocket/index.html )を提供してくださった、mizuno さんに感謝いたします。 mizuno さんの掲示板のおかげで、 このツールをちゃんと完成させて公開しようという気持ちになりました。
 Internet 上にポケ通とほぼ同じ環境(telnet://pocket.muzik.ge.jp, http://pocket.muzik.gr.jp:8085/)を構築し、提供してくださった Zsy さんに感謝したします。


参考文献

[1] 近 成人:リアルタイム・クロックを内蔵する, PJ '92 Number 12, pp. 16 - 28, 工学社, 1992.
[2] 溝端大介(Aesop・M601(Aesop・M68)):WCLOCK ver. 0.03, http://homepage1.nifty.com/mizobata/pocket/lib.html#WCLOCK, 1997.
[3] 近 成人:VOGUE ver. 1.02, http://www.kt.rim.or.jp/~tmizuno/pocket/library/sharp01.html, 1993.
[4] 近成人, 三木一秀, 塚田徳, 大石純也, CRISIS Hardware: PC-E500 PC-1480U 活用研究, 工学社, 1990.
[5] 溝端大介(Aesop・M601(Aesop・M68)): WELCOME.MDL ver. 0.04, http://homepage1.nifty.com/mizobata/pocket/lib.html#WELCOME, 1996.
[6] 森田久也(HiM):HMFiler, http://www.kt.rim.or.jp/~tmizuno/pocket/library/sharp02.html, 1997.
[7] 桝一憲生(Nmasu):WAVE500 ver. 1.02-956C, http://www3.justnet.ne.jp/~nmasu/p2v3/indexn.html#95jun, 1995.

ご意見・ご感想・リンク希望などは
noike@fairy.ei.tuat.ac.jp
まで、お気軽にどうぞ。
野池の Web ページのトップページへ戻る。
小谷研究室の Web ページへ行く。
小谷研究室音楽情報処理研究班の Web ページへ行く。