/* * wuzk.exe - UZK frontend on Win2000/WinXP * by uratan! 2018.7.19 * * current version: 0.63 * * see * http://aid.her.jp/uratan/ArmUZK/ * for detail */ ●UZK とは USB Host-to-Host Keyboard/Mouse Emulator のハードウェアです。 UZK には USB のアップストリームポートが 2つついており、2つの PC を接続します。UZK はあなたの高性能なパソコンを、ただの USB キーボードやただの USB マウスにしてしまうものです。 なにしろただの USB キーボードですから、相手先の PC には特別な 設定やドライバは必要なく、USB を認識するものであればだいたい つながります。BIOS 設定もできます。 WIN-->FreeBSD/NetBSD でも WIN-->Mac でもキーボードを共有できました。 (詳しくは上記の web ページをご覧ください) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ●wuzk とは UZK 用の Windows フロントエンドアプリケーションです。Windows OS の WH_KEYBOARD_LL フックと WH_MOUSE_LL フックを使用してキー/マウス イベントを取り上げ、UZK を通して他の PC に送りつけます。そのため、 本アプリケーションは Windows 2000/XP のみでの動作となります。 (Vista/Win7 でもいけるみたいです) ●起動 wuzk の起動には、以下の 2ファイルが必要です。 wuzk.exe uzk_hook.dll オプション設定は、作業フォルダ(カレントディレクトリ)に以下の ファイルを作成して記録します。レジストリは使用しておりません。 wuzk.ini wuzk.exe を起動すると、wuzk のウィンドウと、デバッグ用のコンソール 画面も現れますがあんまり気にしないでください。 (wuzk.ini に console=0 を追加することにより非表示にできます) fup_armuzk.exe は、ArmUZK 専用のファームウエア書き換えツールです。 コマンドラインより、引数に *.hex ファイルを指定して使用します。 drive_uzk.exe は、自動打鍵/任意のキーストロークを生成するため、の プログラムです。キーストロークはスクリプトファイルにより与えます。 コマンドラインより、引数にスクリプトファイルを指定して使用します。 引数に --help を与えることで スクリプトファイルのたたき台が表示されます。 (mouse アクションも原始的に記述できます) str2duzk.awk はテキストファイル中の文字を drive_uzk.exe スクリプト ファイルに変換する AWK スクリプトです。ご参考までに。 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ●接続 device path 名における何番目という指定で UZK を選択し接続します。 デバイスツリーの捜査順に番号が決まるため、複数の UZK を使用した場合でも 一度決定すればほぼ固定となるようです。 ●接続の終了 接続の終了はマウスで「切断」ボタンをクリックするか、ボタンに 表示されている切断用キーバインドを押します。 (なおボタン先頭に表示されている [r] / [A] は absolute_mouse (オプションの状態を表示しています。 ●CTRL-ALT-DEL の送り方 CTRL-ALT-DEL は 子 PC へ送れますが、手元の Windows もひっかかって しまいます。なので CTRL-ALT-INS をおすと、子 PC に CTRL-ALT-DEL を 送るように内部で変換する機能をつけました。 ●オプション [A] wuzk.exe を動かす親 PC 側の設定 「こっちのキー配列は」 ○101/US ○106/JIS 親 PC のキーボードドライバの種別を設定します。同一のキーでも ドライバ種別によって仮想キーコード(Virtual Key Code)の割り 当てが変わるため、正しく指定してください。 「キー追加用に予約」 Mac 向けの特別なキーコードを送出するための、wuzk ローカルの モディファイアーキーを選択します。本キーが押されているときには 以下のようにキーの読み替えを行います。なお、ここで選択された モディファイアーキーは子 PC には送出されません。 RETURN ---> ENTER ESCAPE ---> POWER A ---> VOLUME_DOWN S ---> VOLUME_UP D ---> VOLUME_MUTE F ---> EJECT 「XXXX で切断」 切断に使うキーバインドを選択します。 「アクティブじゃなくなったら中断」 UZK と接続されているときに wuzk ウィンドウがインアクティブに なると一旦 UZK との接続を中断し、再度ウィンドウがアクティブに なったときに接続を復帰します。キー転送がウィンドウフォーカスと 一致するため、より直感的に使用できます。 「マウス送信は都度選択(要再起動)」 マウス送信する/しないを、オプション設定によらず接続ボタンで 選択します。なお「接続」メニューから接続する場合はオプション 設定が使用されます。 本オプションは次回 wuzk.exe 起動後に有効になります。 「101⇔106を自動翻訳(要再起動)」 親子で 101/106キーボード配列が異なる場合に、正しい「文字」が 打鍵されるように wuzk.exe が自動的にキーをすり替えます。 SHIFT の状態も wuzk.exe により自動制御されます。 本オプションは次回 wuzk.exe 起動後に有効になります。 「スクリーン キーボード対応」 ユーザー補助の"スクリーンキーボード"を正常に動作させるために、 SHIFT 系のキーストロークを wuzk.exe で破棄せずに上位アプリにも 再送します。 [B] UZK 接続先の個別の設定 「送るのは」 ○キーだけ 親 PC からキーイベントのみを取り上げて子 PC に送り込みます。 親 PC では自由にマウス操作ができます。 ○マウスも 親 PC からキーイベントとマウスイベントの両方を取り上げて 子 PC に送り込みます。親 PC のマウスポインタはその位置で 固定となり、あたかも親 PC がフリーズしたかのようになります。 本設定では「貼り付け」が使用できません。 「マウス送信は都度選択(要再起動)」の場合は、「接続」メニューから 接続した場合のみ本設定が有効になります。 「リピートは」 ○こっちがやる 本設定では、親 PC のリピートレートに従って、あたかもそのキーを 人間が連打しているがごとく子 PC に送り込みます。ただし子 PC の リピート開始の遅延時間設定を親 PC より遅くしておかないと、 ゆっくり連打しているうちに子 PC が勝手にリピートを開始したり します。 ○あっちまかせ 本設定では、キーが押されっぱなしになっている状態を向こう伝え、 子 PC の設定によりリピートさせます。 「キー配列は」 ○101/US ○106/JIS 通常はキーストロークをそのまま送りつけます。なので、ここを 設定したからといって 106 キーボードの SHIFT なしの「@」を 101 キーボードの [SHIFT] + [2] にすりかえたりはしません。(*) 本設定は「貼り付け」機能を使用する場合のみに影響します。 「貼り付け」機能においては、子 PC の配列にあわせて必要な [SHIFT] を自動発生します。 (*) オプション「101⇔106を自動翻訳(要再起動)」を設定している 場合には正しい「文字」が打鍵されるようすり替えを行います。 □無変/換変換も Apple キーに USB キーボードの規格上は Windows キーがいわゆる Apple キー そのものですので、子 PC に Mac を繋いだ場合もそのまま Windows キーを Apple キーとして使用します。しかしながら、Windows キーの ないキーボードを使っている場合のために、無変換・変換キーを Apple キーとして使用できるようにしました。 「キーを送るときは」 □CTRL-CAPS を交換 □ESC-漢字を交換 子 PC にあなたの趣味でこれらの入れ替えを行う細工をしている 場合のための設定です。子 PC は本物の USB キーボードが刺さって いると思って動作していますので、UZK から送り込まれるこれら キーもやはり交換されてしまいます。なのでこちらから送り込む時に わざわざ入れ替えてやり、交換されて元通りになるようにします。 「マウス移動量の比率」 子 PC にすでにマウスがついている場合には、UZK によって 2つめのマウスがつながることになりますが、子 PC の設定で複数の マウスに個別の感度設定ができない場合のために、やはり親 PC で 面倒をみるための設定項目です。 子 PC のマウス設定は本物のマウスにてあなたの好みに合わせておき、 UZK 経由のマウスの感度をここで加減してやることによりどちらを 使っても満足できるようにな...ればいいですね。 [C] 隠しオプション wuzk.ini を直接編集して設定するオプションです。 「console=n」 (デフォルト: 1) 1: デバッグ用の黒いコンソール画面を表示します。 (いろいろ情報詰まってますよ、よ〜く見てね) 0: デバッグ用の黒いコンソール画面を表示しません。 「broadcast=n」 (デフォルト: 0) 1: 親 PC に接続されているすべての UZK に対してキーストローク 情報ほかを一斉送信します。複数の子 PC に同時に打鍵できます。 子 PC 向けのオプションは、UZK#1 のものが使用されます。 0: 通常動作です。選択した接続対象 1台にのみ打鍵します。 「pos_x=n」 (デフォルト: -1) 「pos_y=n」 (デフォルト: -1) wuzk.exe の window の初期位置を指定します。マイナスの指定により 従来互換の OS まかせの位置になります。 「send_disconn=n」 (デフォルト: 1) 「accept_disconn=n」 (デフォルト: 1) version 0.60 より、従来未使用だった wuzk.exe 同士の通信チャンネル を使用して接続解除のメッセージを渡すようにしました。 相手側が接続中にこちらからも接続すると、従来はキー入力がループする 結果になっていましたが、このメッセージにより相手側を切断でき、 後から接続した方が優先される形になりループを防ぐことができます。 [例] ----------------------------------------- (子) wuzk.exe :::: UZK :::: wuzk.exe (親) ----------------------------------------- 「接続中」 ★「接続」をクリック ---------------------------------↓------ 「接続中」<============= 接続解除メッセージ --------↓-----------------------↓------ 「切断」 「接続中」 ... 子を操作 ------------------↓↓↓----------------- ↓ ★「接続」 「接続中」 子側の接続を押す --------↓------------------------------- (接続解除) ==============>「接続中」 --------↓-----------------------↓------ 「接続中」 「切断」 ----------------------------------------- 従来互換に戻すためには、send_disconn=0 によりメッセージの送信を、 また accept_disconn=0 によりメッセージ受信での切断を禁止します。 (この機能を使うと、切断キーの入力によらず 子 PC での) (マウスの操作で接続を解除できるため、たいへん便利です) (もっと早く気づいていれば…) 「target_offset=n」 (デフォルト: 0) version 0.61 より、3台目以上の UZK に接続するために追加しました。 例えば target_offset=2 では、対象は UZK#3 と UZK#4 になります。 「absolute_mouse=n」 (デフォルト: 0) VNC など絶対値を指定するポインターデバイスの入力から相対値を 算出し使用可能とするためのオプションです。 そのポインタデバイスが相対値なのか絶対値なのかが wuzk.exe では 識別できませんので、使用者が切り替える必要があります。 http://aid.her.jp/uratan/UZK/hack_wuzk.html の、 「broadcast/target_offset 隠しオプションを使用する場合のヒント」を ご参考に本オプション有り・無しの 2つの wuzk.exe を立ち上げて 使うことをお勧めします。 「screen_ratio=n」 (デフォルト: 100) 「テキストやその他の項目の大きさの設定」にて設定するディスプレイの 表示縮尺(150% 等)を設定します。 WH_MOUSE_LL フックでは縮尺設定によらずディスプレイの実サイズでの ポインタ位置となり、縮尺の影響を受ける GetCursorPos() と齟齬が 生じるため本パラメータにて補正します。 ●「貼り付け」について ASCII 文字列を、キーを押す・離す動作に変換して親 PC から子 PC へ伝え ます。よいユーザーインターフェースが思いつかなかったので、現状マウスで しかオペレーションできません。つまり、”「送るのは」キーだけ” の 設定の時しか使えません。 ●ヘルプ ヘルプメニュー内に、すべての「根源」が記してあります。 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ●コンパイルについて 本プログラムは、フリーバージョンである Borland C++ Compiler 5.5 にて 作成いたしました。 http://www.borland.co.jp/cppbuilder/freecompiler/ Hidpi.h, Hidsdi.h, Hidusage.h は Win98 DDK に付属していたヘッダーの ようです。こちらからダウンロードできました。 http://www.usb-by-example.com/ "support files for Visual C++. Required if you do not have the Win98 DDK" (http://www.usb-by-example.com/Examples/ZipFiles/From98DDK.zip) (2005.4.3 ( サイトがこちらに移動しているようです。 ( http://www.intel.com/intelpress/usb/examples/ZipFiles/FromDDK.htm プログラムのコンパイルには上記の開発環境の他にも、windows 版の make と awk と rm が必要です。これらは、以下の web ページよりダウンロード できる make.exe, gawk.exe, rm.exe が使用できます。 "Native Win32 ports of some GNU utilities" (http://sourceforge.net/projects/unxutils/) (旧 http://unxutils.sourceforge.net/) また BCC 付属の MAKE.EXE も使えます。 バイナリファイル iconD.ico の扱いのため xxd.exe を使用するように なりました。xxd.exe は VIM パッケージに含まれます。ファイルをダンプ したり、逆にダンプファイルからバイナリファイルを生成したりできます。 (http://www.vim.org/) (コンパイルに必要なファイルは以下の通りです) ( 00README.txt --- このファイル ( Makefile --- make.exe 用の Makefile ( uzk_hook.h --- フック DLL のヘッダ ( uzk_hook.c --- フック DLL 本体 ( uzk_hksm.c --- フック DLL 共有メモリ定義 ( uzk_hook.def --- DLL のリンク定義(?) ( wuzk.h --- wuzk.exe 関連の共有定義 ( wuzk.c --- wuzk.c 本体 ( resource.h --- GUI リソース ID の定義 ( wuzk.rc --- GUI リソースの定義 ( decode.c --- key, mouse メッセージを文字化するだけ ( keyconv.c --- キーイベントを USB USAGE ID に変換 ( msconv.c --- マウスイベントを USB USAGE ID に変換 ( hid.c --- HID デバイス関連 ( inc_src.awk --- ソースを const char * に変換する awk スクリプト ( dec_src.awk --- 「ヘルプ」上のソースを切り出す awk スクリプト ( fup_armuzk.c --- ArmUZK 専用のファーム書き換えツール ( drive_uzk.c --- 自動打鍵生成プログラム ( (以上「ヘルプ」より取得のこと) ( iconD.ico --- アイコンファイル ( (UZK web より取得、あるいは「ヘルプ」より作成のこと) ( Hidpi.h --- HID 関連の OS 側定義 ( Hidsdi.h --- HID 関連の OS 側定義 ( Hidusage.h --- HID 関連の OS 側定義 ( (DDK あるいは上記 web より取得のこと) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 参考文献 以下の web リソースを参考にさせていただきました。 ◎USB T.A. (http://www.usb.org/developers/hidpage/) より HID デバイスクラス定義 (http://www.usb.org/developers/devclass_docs/HID1_11.pdf) HID Usage Tables (http://www.usb.org/developers/devclass_docs/Hut1_11.pdf) ◎粂井ネット (http://www.kumei.ne.jp/) より 「猫でもわかるプログラミング」 (http://www.kumei.ne.jp/c_lang/) ◎赤坂玲音 WisdomSoft (http://wisdom.sakura.ne.jp/) より 「Win32 API入門」 (http://wisdom.sakura.ne.jp/system/winapi/win.html) ◎MASAPICO'S PAGE (http://nienie.com/~masapico/) より 「Win32 サンプル集」 (http://nienie.com/~masapico/sample_index.html) ◎Microsoft MSDN Library (http://msdn.microsoft.com/library/) ◎Stuart Allman "Using the HID class eases the job of writing USB device drivers (http://www.reed-electronics.com/ednmag/article/CA243218) より "Making USB Device Drivers Easier" (http://www.reed-electronics.com/ednmag/contents/images/20ms872.zip) ◎John Hyde "USB Design By Example" (http://www.usb-by-example.com/) より "a PC Host application program and an EZ-USB firmware program which measures Windows latency." (http://www.usb-by-example.com/Examples/ZipFiles/LatencyT.zip) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ●作者 uratan@miomio.jp - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ●ライセンス このプログラムはフリーソフトウェアです。使用にあたっては、 X11 License に従うこととします。 (http://www.gnu.org/licenses/license-list.ja.html) (http://www.gnu.org/licenses/license-list.html) このプログラムは有用であることを願って頒布されますが、*全くの無保証* です。商業可能性の保証や特定の目的への適合性は、言外に示されたものも 含め全く存在しません。 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ●変更履歴 ---------------------------------------------------------------------------- 2018.07.16 screen_ratio added - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 00README.txt --- version 0.63 wuzk.c --- get screen_ratio from ini file msconv.c --- adjust GetCursorPos()'s pointer position by screen_ratio ---------------------------------------------------------------------------- 2018.07.16 register trial 0.61A as 0.62 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 00README.txt --- version 0.62 (absolute_mouse) ---------------------------------------------------------------------------- ---------------------------------------------------------------------------- ---------------------------------------------------------------------------- 2014.06.14 some trial about absolute-mouse input - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 00README.txt --- version 0.61A ... trial version msconv.c --- try to adapt absolute-mouse (VNC), etc. wuzk.c --- hidden option 'absolute_mouse' added, the mode is displayed at 'disconnect' button, etc ---------------------------------------------------------------------------- ---------------------------------------------------------------------------- ---------------------------------------------------------------------------- 2012.09.19 add 'target_offset' to connect UZK#3,#4, and so on - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 00README.txt --- version 0.61 wuzk.c --- add option 'target_offset', to connect UZK#3,#4,..., display hidden option values ---------------------------------------------------------------------------- 2012.07.01 send/accept 'disconnect-request' thru CTRL-Channel, change structure of source-including-system - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 00README.txt --- version 0.60 wuzk.h --- CTRL_DISCONN added hid.c --- control_data[] added drive_uzk.c --- 'C' command to send 'request-disconnect' wuzk.c --- expand window width a litle, send/accept disconnect-request, change source-include structure, concat_SetWindowText() added, some renamings inc_src.awk --- refined to use const char *xxx[] Makefile --- fix mode value for inc_src.awk decode.c --- fix memory leak(?) ---------------------------------------------------------------------------- ---------------------------------------------------------------------------- (version 0.54--0.59 are skipped) ---------------------------------------------------------------------------- ---------------------------------------------------------------------------- 2012.01.03 initial window position, str2duzk.awk added - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 00README.txt --- version 0.53 wuzk.c --- initial window position from wuzk.ini drive_uzk.c --- modify drive_uzk.tmpl messages str2duzk.awk --- added, AWK to convert plain text to drive_uzk script ---------------------------------------------------------------------------- 2011.10.05 misc small changes, drive_uzk.exe can drive mouse - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 00README.txt --- version 0.52 Makefile --- SYS_HID_DLL for winXP drive_uzk.c --- add 101 chars in drive_uzk.tmpl messages, mouse drive hid.c --- add comments ---------------------------------------------------------------------------- 2010.05.20 101<->106 translation mode, misc fixes about key repeat... - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 00README.txt --- version 0.51 keyconv.c --- add 101<->106 traslation mode (debug more!), fixes resource.h --- IDC_CHECK7_TRANS_101_106 for translation mode wuzk.rc --- option item for translation mode, window layout wuzk.c --- option handling for translation mode, etc. decode.c ---- rubout last SPACEs by str_ll_key(), str_ll_mouse() ---------------------------------------------------------------------------- 2010.02.09 add broadcast mode, drive ALL connected UZKs - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 00README.txt --- version 0.50 wuzk.c --- add broadcast mode, etc. hid.c --- expansion for broadcast mode (pass 99 for search_and_open_uzk()) ---------------------------------------------------------------------------- ---------------------------------------------------------------------------- (version 0.46--0.49 are skipped) ---------------------------------------------------------------------------- ---------------------------------------------------------------------------- 2009.08.21 add "CTRL+BackSpace" to disconnect key-bind choise - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 00README.txt --- version 0.45 wuzk.c --- add "CTRL+BackSpace" to the choise wuzk.rc --- add "CTRL+BackSpace" to the choise keyconv.c --- refine option window layout ---------------------------------------------------------------------------- 2009.08.18 make key bind to disconnect selectable - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 00README.txt --- version 0.44 keyconv.c --- make disconnect key bind selectable resource.h --- IDC_COMBO2_DISCONKEY for disconnect key bind wuzk.rc --- menu item for disconnect key selection wuzk.c --- about option handling for disconnect key, item "pause_need_shift" in wuzk.ini is no more used hid.c --- correct buffer sizes uzk_hksm.c --- correct a comment ---------------------------------------------------------------------------- 2009.01.09 change to make screen-keyboard work correctly - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - uzk_hook.c --- add install_hook() option, pass VK_xSHIFT for upper uzk_hook.h --- has IH_OPT_XXXX, etc. wuzk.c --- add codes about new option "pass_shift_thru" resource.h --- add IDC_CHECK6_PASS_SFT for new option wuzk.rc --- add "screen-keyboard" option, restruct the layout keyconv.c --- convert VK_SHIFT, VK_CONTROL, VK_MENU for VK_LSHIFT, ... 00README.txt --- version 0.43 ---------------------------------------------------------------------------- 2009.01.01 fix drive_uzk 'D'elay command, misc clean ups - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - hid.c --- move modify_usb_keycodes() to here as make_key_usage_data(), search_and_open_uzk() can return UZK version, etc. keyconv.c --- divide modify_usb_keycodes(), move UID_MOD_xxx to wuzk.h, etc. drive_uzk.c --- fix about 'D'elay command, adapt new search_and_open_uzk(), use make_key_usage_data() in hid.c etc. Makefile --- no more need keyconv.obj when making drive_uzk.exe fup_armuzk.c --- adapt new search_and_open_uzk(), etc. wuzk.c --- adapt for new search_and_open_uzk() wuzk.h --- move UID_MOD_xxx here 00README.txt --- version 0.42 ---------------------------------------------------------------------------- 2008.12.26 drive_uzk added, misc clean ups - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Makefile --- merge for drive_uzk, use macro for executables, etc. drive_uzk.c --- added, type thru UZK by script file wuzk.rc --- modify menu message hid.c --- display UZK version number keyconv.c --- a clean up 00README.txt --- version 0.41 ---------------------------------------------------------------------------- 2008.11.22 add new option 'sel_mouse_by_button', merge fup_armuzk.exe, etc. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Makefile --- include iconD.ico and dec_src.awk into zt.c, etc. resource.h --- add IDs for menu 'help', buttons, and a option wuzk.rc --- add menu item in 'help', add new option and restruct layout wuzk.c --- sel_mouse_by_button option, 2 item in 'help' menu, debug code hid.c --- a clean up keyconv.c --- a clean up dec_src.awk --- added, divide source codes from 'help' menu fup_armuzk.c --- added, tool for update ArmUZK firmware 00README.txt --- version 0.40 ---------------------------------------------------------------------------- ---------------------------------------------------------------------------- (version 0.33--0.39 are skipped) ---------------------------------------------------------------------------- ---------------------------------------------------------------------------- 2007.3.24 fix problem with "inactivate==>direct-iconfy" action - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - wuzk.c --- examine 'target_UZK' within connect/disconnect message handler, etc. 00readme.txt --- version 0.32 ---------------------------------------------------------------------------- 2007.3.24 disconnect key assignment is selectable (with/without SHIFT) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - resource.h --- IDC_CHECK4_SFT_PAU added wuzk.rc --- add check-box for disconnect key option wuzk.c --- add option 'pause_need_shift', etc. keyconv.c --- disconnect key assignment selectable 00readme.txt --- version 0.31 ---------------------------------------------------------------------------- 2007.3.23 fix some problems, add suspend-connection mode, SHIFT+PAUSE, etc. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - resource.h --- IDB_SUSP, IDC_CHECK0_SUSP added wuzk.rc --- add check-box for new option, etc. wuzk.c --- add option 'suspend_when_inactive', modify button description, fix about large data paste from ClipBoard, fix about freeing memory 'paste_strokes_top', etc. keyconv.c --- change 'disconnect' key assignment to SHIFT+PAUSE 00readme.txt --- version 0.30 ---------------------------------------------------------------------------- ---------------------------------------------------------------------------- (version 0.23--0.29 are skipped) ---------------------------------------------------------------------------- ---------------------------------------------------------------------------- 2005.4.3 fix some problems, add wuzk modifier for apple special keys - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - resource.h --- add IDC_COMBO0_MODIFIER wuzk.h --- add T_WUZK_MODIFIER_TAB wuzk.rc --- add about IDC_COMBO0_MODIFIER wuzk.c --- add handling of local modifier key, fix cpu 100% when no UZK keyconv.c --- can send Enter/Power/Eject/Vol_Mute/Vol_Up/Vol_Down with local modifier key msconv.c --- re-write about mouse speed conversion 00readme.txt --- version 0.22 ---------------------------------------------------------------------------- 2004.7.30 misc clean ups/comments for release (part 2) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - makefile --- comments wuzk.c --- clean up, comments decode.c --- varibale name, type hid.c --- use 'console_debug', comments keyconv.c --- variable type, clean up, comments msconv.c --- clean up 00readme.txt --- version 0.21 ---------------------------------------------------------------------------- 2004.7.29 misc clean ups/comments for release - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - decode.c --- rename variables hid.c --- move XXX_REPORT_SIZE into wuzk.h, include it keyconv.c --- move VK_Null into wuzk.h makefile --- clean up, comments msconv.c --- clean up, comments resource.h --- comments uzk_hook.h --- add WM_UZK_USER uzk_hook.c --- comments uzk_hksm.c --- comments uzk_hook.def --- clean up wuzk.h --- WM_UZK_xxx here, XXX_REPORT_SIZE, VK_Null wuzk.c --- clean up wuzk.rc --- clean up 00readme.txt --- version 0.20 ---------------------------------------------------------------------------- 2004.7.23 receiving LED/CTRL data from UZK, etc. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - makefile --- zt.awk --> inc_src.awk inc_src.awk --- renamed from zt.awk uzk_hook.h --- 2 local message added hid.c --- modify read_uzk(), some clean ups keyconv.c --- modifier keys are never repeat wuzk.c --- LED monitor thread added 00readme.txt --- version 0.19 ---------------------------------------------------------------------------- 2004.7.11 rewrite keyconv.c, function paste ready, etc. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - decode.c --- VK_KANJI priority hid.c --- about debug info keyconv.c --- rewrite all uzk_hook.h --- move all user define message here uzk_hook.c --- add comments, clean up wuzk.c --- paste from sub thread wuzk.rc --- correct message 00readme.txt --- version 0.18 ---------------------------------------------------------------------------- 2004.7.10 initial file "WUZK.INI", etc. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - uzk_hook.h --- remove unused defines wuzk.c --- use "wuzk.ini" for initial file, etc. 00readme.txt --- version 0.17 ---------------------------------------------------------------------------- 2004.7.04 test IDM_PASTE, etc. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - resource.h --- add IDM_PASTE wuzk.rc --- add IDM_PASTE, change OPT_MAC comments wuzk.c --- IDM_PASTE test handling, initial option value keyconv.c --- only change source layout zt.awk --- only change file header 00readme.txt --- version 0.16 ---------------------------------------------------------------------------- 2004.7.03 host virtual key code sensing (101/106), etc. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - makefile --- include all source files when generating zt.c keyconv.c --- map CTL-ALT-DEL on CTL-ALT-INS, send correctly whether host keyboard driver 101/106 hid.c --- display timestamp when write for UZK 00readme.txt --- version 0.15 ---------------------------------------------------------------------------- 2004.6.27 first registeration - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 00readme.txt --- version 0.14 ----------------------------------------------------------------------------