−<□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□■□>−


	ワコムの新デバイス(?)ミニタブレット
		ArtPad KT-0405-R(相当品)をマウスとして使うドライバー
							その名も
			      ArtPad.x

				ver 0.53

			Copyright 1994 TNB製作所



−<□■□ これは □■□>−


 ワコムの新デバイス(?)ミニタブレット、ArtPad KT-0405-R(相当品)をマ

ウスとしてしようするドライバーです。


 また、マウスエミュレータとして使う以外、専用コールを使い直接タブレットの

ステイタスを使用することも可能です。これは、TnTABLET 同梱のリファレンス

[ TABLET.REF ]を参照して下さい。ソフトの方を対応させれば相対座標モード、絶

対座標モードの切り替えはもちろん、タブレットのペンが接触しているか、筆圧が

いくつかも判ります。


 T-EXTENSION MOUSE CALLにも対応しています(TMS.x同梱ファイルを参照のこと)。



−<□■□ 実行 □■□>−


[使用法]  ArtPad [switch]

	/R ・・・・ 常駐解除します。


	/D ・・・・ 相対座標モードでドライヴします。(def.)

	/D[n] ・ [n]は0〜3で、タブレットの向きを指定し、相対座標モードで
		ドライヴします。向きは相対座標でしか意味をなしません。

	/P ・・・・ 絶対座標モード1でドライヴします。モード1は MS_CURST によ
		る座標設定を行っています。移動量は0になります。

	/P[n] ・ 最大移動値[n]で絶対座標モード2でドライヴします。最大移動
		値は、HIOCS.x -ms2 使用時 15ぐらいがいいようです。モード
		2は目標のポイントへ移動していく方式をとっています。そのた
		め、移動量も存在します。

	/N ・・・・ マウスのエミュレーションをしません。


	/S0 ・・・ 絶対座標用。MS_LIMIT の範囲による移動範囲を判別します。
		MS_LIMIT を使用してマウスの移動範囲を抑えたり変更しまくる
		ものには対応出来ない(しづらい)でしょう。(def.)

	/S1 ・・・ 絶対座標用。IOCS CRTMOD による移動範囲を判別します。ほとん
		どのソフトは問題なく使用出来ますが、特殊な画面モード(IOCS
		を使わず画面を変更したもの)や実画面を使っている(マウスによっ
		てスクロールしていく)ものには対応出来ないでしょう。

	/S2 ・・・ 絶対座標用。512x512を画面サイズとします。


	/B0 ・・・ マウスボタンモードを WINDOWSで使用時と同じにします。
			ノーマル型 [左=プレス,右=サイドスイッチ] (def.)

	/B1 ・・・ マウスボタンモードを WINDOWSで使用時と反対にします。
			リバース型 [左=サイドスイッチ,右=プレス]

	/B2 ・・・ マウスボタンモードを PC-9801Pの使い方と同じにします。
			PC-9801P型 [左=プレス,右=サイドスイッチ+プレス]

	/BP[n]  マウスボタンエミュのとき、ペン先プレスは[n]以上の時、クリッ
		クされたとします。プレス最大値は127で、16〜100の範囲で指定
		出来ます(def.64)。


	/K0 ・・・ キーによる割り込み無しにします。

	/K1 ・・・ シフトキー[-KSで設定]+[XF3]〜[XF5]キーによりマウスエミュレー
		トモードをいつでも変更出来るようになります。

	/K2 ・・・ [XF1],[XF2]キーによりマウスカーソルの水平垂直移動制限を付
		けます。

	/K3 ・・・ [XF1],[XF2]キーによりマウスカーソルの水平垂直移動制限を付
		けます。シフトキー[-KSで設定]+[XF3]〜[XF5]キーによりマウス
		エミュレートモードをいつでも変更出来るようになります。

			*[XF3]=相対座標モードでマウスエミュレートします
			*[XF4]=絶対座標モードでマウスエミュレートします
			*[XF5]=マウスエミュレートしません

	/KS[n]  キー機能のシフトキー設定(def.8 = [OPT2])。
		[OPT.2]=8,[OPT.1]=4,[CTRL]=2,[SHIFT]=1 で、シフトキーに当
		てる数をたしていった数値を[n]に設定します。例えば[CTRL]+
		[SHIFT]なら 2+1=3 を設定します。


	/I ・・・・ 強制常駐する。

			常駐時でも常駐状態でも設定を変えられます。



−<□■□ 絶対座標 □■□>−


 絶対座標モード1はタブレットのポイントされた座標をX68の画面の大きさに

変換して、IOCS コールの MS_CURST を使用してマウスを飛ばしています。そのた

め、移動量は0になります。この移動量をみているソフトは動かないことになりま

す(例えばSX)。


 絶対座標モード2はタブレットのポイントされた座標をX68の画面の大きさに

変換して、現在のマウスカーソルの座標との差を移動量として動かしています。こ

の移動量の最大値設定が大きすぎるとマウスポインタがぶれることがあります。少

なければ少ないほどぶれなくなるようですがレスポンスが遅くなります。大きすぎ

ると飛び回ります。X68000 のマウスドライバーはある一定以上動くと加速するよ

うになっています(30ポイントマウスを動かした場合、30ドット以上動くよう

になっている)。これは、操作性向上のためですが、その仕様のため、絶対座標モー

ド2では正確な大きい移動がうまく行っていません。ご了承下さい。確認している

のでは、HIOCS.x -ms2 使用時、最大移動値は15で安定します。



 絶対座標の計算関係のスイッチ /S はほとんどの場合 /S0 でいいでしょう。こ

れは画面の大きさを MS_LIMIT で設定されている IOCS ワークをみて画面サイズを

みているものです。普通、スクリーンモードを変えた場合 MS_LIMIT に画面サイズ

の最大が設定されるので問題がないのです。そのため、MS_LIMIT を使用してマウ

スの行動を抑えたり変更しまくるものに対しては、絶対座標関係動作が不安定にな

ります。そう言ったものに対しては /S1 ,/S2を使用して下さい。


 絶対座標の計算の時、画面が512x512の正比特殊モードになっている場合、タブ

レットの右1/3は無視され、正方でしか使えません。比率を考えれば仕方のないこ

とです。



−<□■□ 注意 □■□>−


 常駐した時に RS-232C 関連の IOCS コールのアドレスを ArtPad.x 内のワーク

に取り込み、それを使用し、RS命令を実行します。つまり、ArtPad.x 常駐以後に 

RS-232C 関連の常駐物を実行しても相手にされません。また、逆に ArtPad.x 常駐

前に常駐しておいた RS 関連のものを解除するとまず、エラー(最悪ハング)します

ので気をつけてください(TMSIO.xは上常駐チェックをせずに解除してしまうのでご

注意!)。


 ミニタブレット'ArtPad'は、X68のマウス割り込み内で処理し切れないほど非

常に多くのデータを次々と送ってきます(ペンが動いている時のみ)。そのため、

ArtPad.x ではパッファに多くたまりすぎるとデータをカットすることをしていま

す。つまり、ミニタブレット'ArtPad'との通信タイミングが不安定(一定間隔でな

い)になっています。お蔭で絶対座標ではなんら問題はでないのですが、相対座標

の場合、マウスカーソルが飛ぶことがあります(X68000のマウスドライバーはある

一定以上動くと加速するようになっているためおきる)。余り高速かつ連続に動か

さない方がいいでしょう。


 市販ソフトなどマウス割り込みを禁止されていると、IOCS コールでデータを拾

えないことがあります。その場合、-N を使用して下さい。マウスと関係なく要求

を受けた時に、タブレットをチェックします。


 ドライバ常駐時、常時0.05%MHzの消費します(10Mhz実測)。ただし、-N(マウスエ

ミュレートをしない)の場合、消費はほとんどありません。


 [XF1],[XF2]キーによるマウスカーソルの水平垂直移動制限は ArtPad.x より前

に常駐させた、マウスドライバーのデバイスには影響しません。


 相対座標時のマウスカーソルの速度などは HIOCS の -ms で変更可能なので特に

スイッチは付けていません。



−<□■□ マチエール □■□>−


 残念ながら、このドライバーを使っても、マチエールの[WACOM TABLET]モードに

してもタブレットとして使用することが出来ません。ですが、当所の TnCALEMU.x

を使用することで筆圧をエミュレートすることが出来ます。基本的な使用方法は

TnCALEMU.xのドキュメントを見てください。他に1つ以下のことを注意してくださ

い。

 マチエールでタブレットモードにすると RS-232C の設定を変えられてしまい、

タブレットがきかなくなります。あわてず、[OPT.2]+[XF3]/[XF4](-Kで設定したも

の)としてください。RS-232Cを初期化し動くようになります。また、マチエールの

タブレットモードは「カルコンプ」の方にしてください。

 以上で、筆圧が使えるようになります。



−<□■□ 紹介 □■□>−


 使用したタブレットは、WINDOWS 用のもので、ペンタッチ有効部は多少ちいさめ

ではありますが、筆圧も検出可能、値段も定価で¥29800。実売価格¥20000

前後(94'12月秋葉原)と手ごろです。


 ただ、RS-232C で接続なために他の RS-232C 周辺機器との併用は出来ないでしょ

う。また、WINDOWS 用と言っても、付属のドライバー WINDOWS 用であって、RS-232C 

があり、ドライバーさえかければ WINDOWS 用だけでなく、繋がる(はず)ものです。


 これはまだ未確認ですが、従来のワコムのタブレットとデータの互換はあるらし

いのですが、ソフトの別対応が必要と思われます。マチエールは実行ファイルの一

部を書き替えることで、対応出来るらしいですが、どちらにしても「ワコム」なの

でマチエールで筆圧に対応できません。



−<□■□ 参考,使用ツール □■□>−


	*  電脳倶楽部vol.80 ARTPAD.TEC 'ArtPad'(WACOM)技術情報 舩本昇竜氏
	*  TnTABLET.x ver 0.93 TNB製作所
	*  TnCALEMU.x ver 0.03 TNB製作所
	*  SUPERED.X ver 1.18 T.Nishikawa氏作
	*  gcc.x  真里子バージョン TOOL#1 Based on GCC 1.42
	*  has.x ver 3.08 YuNK氏作
	*  hlk.x ver 3.01 SALT氏作

							企画:電脳魔術団
							文責:田圃(TNB製作所)
							制作:ひで(TNB製作所)

============================================================================



 某月某日:	満開の舩本昇竜氏と雑談(!)中に、「タブレットだったら、最近、
		標準価格25000円のやつが発売されたらしい」というツッコ
		ミ。読み取りサイズA6で標準価格¥25000のタブレットだ!

12/16(月):あれから二週間あまり、見後に購入されていた。そこでコソコ
		ソと持ってきた(嘘)。

12/18(日):電脳倶楽部80号購入。舩本昇竜氏の書かれたタブレット技術情
		報を確認。簡単な常駐型でないマウスコントロールプログラムを
		書き調整。技術情報があるから非常に楽だった(感謝感謝)。
		んーちょっと動かすだけであまりにも多くの情報が送られて処理
		しきれない。RSパッファにたまり、後からついてくる感じになっ
		ている。やはりRS-INの割り込みをフックして・・・。

		 フックすると面倒なので素直にIOCSコールにした。が、やっぱ
		りドライバーにして割り込みが多くかけても処理が間に合わない。
		タブレットなんだから、多少間引きしてもいいはず。抜く!うま
		く行かない! ねる!

		 単純に7倍数バイト空読みすればいいのではと思い付きやって
		みる。おっけー。でも、相対座標がおかしい。

		 相対も安定した、としよう! はやり、ドライバー常駐したま
		ま、通信などのRSを使う物は使えない(たまに落ちる)。RS割り込
		みをフックしていればなんとかなりそうだが、場所が場所だけに
		余りしたくない。

		 このタブレットの最大の欠点を見つけてしまった。(ペンの)座
		標を動かさないで、筆圧だけ変わってもデータを送ってこない!
		ペン圧=クリックになるわけでダブルクリックがやりにくい・・
		んー、何か方法があるのか。
	ver 0.50
12/19(月):TnTABLET(TownsTABLET用ドライバ)付属のTnCALEMUに対応。マチ
		エールで使えるようになった。
		RS IOCS のアドレスを常駐時に記憶してそれを使うので、TnCALEMU
		がフックしても大丈夫なわけだ。逆にArtPad常駐以降に RS-IOCS
		をフックしたり、常駐前にフックした物を解除するとまず、バズ
		エラーが出る!
		TEMCALLに対応。
	ver 0.51
12/20(火):微調整。相対座標の計算方法を改善。安定したようだ。
	ver 0.52

 某月某日:	にゃらぴん様からタブレットについて教えて貰うも反映されず・・・。

'95
 3/18(土):コールの微調整
	ver 0.53


============================================================================


	
>