SMART JOYPAD 3の延命2014-11-20

Windows98の頃からSMART JOYPAD 3でプレイステーションのコントローラをPCで使ってきました。が、Windows 7になると認識はするもののボタンが反応しません。もちろんWindows 7用の専用ドライバなど提供されるはずもなく、とうとうお役御免かと思っていました。

ところがふと思い立って、PS3のUSB端子に刺してみたところ、あっさり認識してメニューが操作できるではありませんか!試しに一つゲーム起動してみると、ちゃんと2コンとして認識され操作できました。左右のアナログスティックもばっちりです。

ちなみにコントローラはSCPH-1200。初代DUAL SHOCKです。PS1用のコントローラがPS3でも使えるとは胸熱。

Windows 7メモ:ローカルHDDのデータをNASへ退避する2014-07-29

Documents(マイ ドキュメント)フォルダの場所をNASのリモートフォルダにすると、オフラインフォルダになりシステムドライブ(C:)にキャッシュが作られます。ノートPCなど、外で使う可能性がある場合には有用ですが、システムドライブ(C:)の容量を圧迫するのであまりスマートだと思えませんでした。

そこで、デスクトップPCではシンボリックリンクを使うことにしました。

コマンドプロンプトを管理者権限で立ち上げ、以下のコマンドを入力すると個人用フォルダにシンボリックリンクができます。

> cd %USERPROFILE%
> mklink /d \\ホスト名\フォルダ名 リンク名

mklinkコマンドの/dは、フォルダへのシンボリックリンクを作る為のオプションです。これで通常のフォルダと同じように扱えるようになります。

フォルダのショートカットとよく似ていますが、エクスプローラ以外のアプリケーションからもフォルダに見える点が異なります。

meadowも.emacsファイルをNAS上に移動し、install.exeを再実行して作成したシンボリックリンクを指定すると、環境をそのまま引き継いでmeadowを起動できました。ただし、.emacsファイルの読み込みに時間がかかるようになりました。

[REGZA Z2] GmailでEメール録画予約2011-07-03

Eメール録画予約がGmailに対応していないのをなんとかしようと調べたところ、 Windowsで動くMELONというソフト使っている例が見つかりました。ただ、いつ使うか分からないEメール録画予約のためにWindows PCをつけっ放しにしておくというのは、昨今の電力事情を顧みるまでもなく、もったいないなので却下です。

NASとして使っているQNAP TS-119でなんとかできないかと中を覗いていたら、stunnelが動いていました。これを利用して、GmailでEメール録画予約できるようにしてみました。

構成

SSLでsmtpやpop3のコネクションがはれない37Z2に成り代わって、TS-119のstunnelでSSLのセッションをはります。TS-119はあくまでトンネリングするだけで、認証などは37Z2で行います。元々動いているstunnelを使いますので、パッケージなどのインストールは不要です。

stunnelの設定

/etc/stunnel/stunnel.confを編集して、TS-119に対してはられたsmtpやpop3をgmailへトンネリングするように設定します。以下に変更個所を記述します。

;output = /dev/null
output = /var/log/stunnel.log

; Use it for client mode
;client = no
client = yes

[smtp]
accept  = 587
connect = smtp.gmail.com:465

[pop3]
accept  = 110
connect = pop.gmail.com:995

最初のoutputでログを残す用にしています。動作確認やトラブル時の原因を探るためなので、うまくいったら元に戻してかまいません。

clientはクライアントモードでの動作を許可しています。

[smtp]と[pop3]セクションは追加しました。それぞれ587番ポートと110番ポートで接続してきたコネクションをgmailの各サーバの465番ポートと995番ポートへトンネリングする設定です。smtpポートを設定できないREGZAの場合は、587の代りに25を指定すればうまくいくかもしれません(未確認)。

設定し終えたら、stunnelを再起動して設定を再読み込みさせます。また、動作を確認するためログファイルを常に表示するようにしておきます。

[~] # /etc/init.d/stunnel.sh restart
[~] # tail -f /var/log/stunnel.log

Eメール録画予約設定

TS-119をメールサーバと見なして、TS-119に接続するように設定します。実際の接続先はGmailですので、アカウント情報等はGmailnoものを設定します。

設定内容は以下の通りです。()内は環境に応じて読み替えてください。

  • POP3サーバーアドレス:(TS-119のIPアドレス)
  • POP3ユーザー名:(Gmailのメールアドレス(@以下も含む))
  • POP3パスワード:(Gmailのパスワード)
  • APOP:使用しない
  • SMTPサーバーアドレス:(TS-119のIPアドレス)
  • SMTPサーバーポート番号:587
  • SMTPサーバー認証:POP3サーバーと同じ
  • メールアドレス:(Gmailのメールアドレス)

設定が終ったら、確認テストを実施します。すると先ほど監視するようにしたログファイルにいろいろ出力されますので、うまく接続できているか確認します。うまく設定できていれば、REGZAの方にテストが成功した旨が表示されます。

テスト

試しに録画予約メールを送ったところ、無事予約録画できました。しかし、予約設定結果通知メールが送られてきません。REGZAと同じように設定したOutlook Expressでは、メールの送受信ができたので、stunnelの設定やOP25Bの問題はなさそうです。REGZA側にまだ問題があるのでしょうか?

[TS-119] QNAP TS-119 Turbo NAS (トラブル編)2011-07-02

ファイル共有の速度が遅くなってる気がしたので、管理画面を開こうとしたら開きませんでした。しょうがないので、電源ボタンを長押ししてshutdownしようとしたのですが、長押ししすぎて強制終了させてしまいました。結果、起動しなくなってしまいました。ちゃんと何秒でshutdownになるか確認すべきでした……。

幸い外付HDDにバックアップしてありますので、失われたデータはありません。

QNAP Finderには表示されるので、最初から構築することにしました。HDDを外した状態で電源を入れ、QNAP Finderから初期化を行って領域確保からやり直してみました。

……やたらとフォーマットに時間がかかります。最初にセットアップしたときより明らかに遅く、3日くらいかかってようやく終りました。が、これでも起動しません。どうやらHDDが逝ってしまったようです。

しかたがないのでHDDを交換することにしました。せっかくなので容量単価もリーズナブルになったWD30EZRXにしようと、最新のサポートHDDリストを確認すると、載ってません(ついでに今まで使ってたWD20EARSも「非推奨」になってました)。どうしようかとさらに調べてみたら、別モデルですがWD30EZRXの動作報告がありましたので、WD30EZRXにしました。

BestDo!の方が微妙に安かったのですが、数十円の差だったのでクレジットカードが使えるPC1'sで他の小物と一緒に購入しました。バックアップ用も含めて2台購入。以前のWD20EARSはRMA非対応でしたが、今度のWD30EZRXはRMA対応でした。

購入時にやたらと念を押された(ブートドライブにするには~、データドライブとして使う場合も~)ので、もしかしたら問合せやトラブルが多いのかも知れません。

そんなトラブルの予感とは裏腹に、TS-119ではあっさりと全領域認識されてセットアップ完了。保存してあった設定ファイルをロードして、バックアップドライブからrsyncでコピーして復元完了です。1.2Tくらいあったので、rsyncは1日強かかりましたが。

復元が終ったら、バックアップドライブもWD30EZRXに入れ替えて、HDD換装完了です。初回バックアップはまた1日強かかりますが、たぶん問題ないでしょう。

ちなみに、バックアップドライブとして使っていたWD20EARSは、REGZA 37Z2の録画用ドライブに転用しました。こちらもあっさり全領域認識されて、録画も無事できています。

x11vnc 0.9.9でシフトキーが効かなくて困った2010-10-18

Ubuntu 10.04 LTSをインストールしたPCをリモートから使おうと思い、x11vncとUltraVNCの組合せを試してみました。

x11vncはUbuntuソフトウェアセンターからパッケージでインストールし、xinetdから起動するようにしました。UltraVNCで接続してみると、画面がが乱れることもなく、うまくいったように思えました。が、シフトキーが効きません。manには-sloppy_keysオプションに、「このようなことがあった場合のみ試せ」みたいな記述があったので試してみましたがだめでした。

Ubuntu 8.04 LTSのx11vncとの組合せでは、問題なくシフトキーが効きます。こちらのx11vncのバージョンは0.9.3でしたので、x11vncの問題だとあたりをつけて調べてみました。

Googleったところ、やはりx11vncのバグのようです。現在はFixされて新しいバージョンではなおっているような感じです。ただ、Ubuntu 10.04 LTSのアップデート・マネージャーにはx11vncの新バージョンは現れてくれません。

仕方がないので一時しのぎとして紹介されていた「起動時のオプションに-xkbオプションをつける」方法を試してみたらうまくいきました。新しいx11vncのパッケージが提供されるまで、これで逃げることにします。

上記のことは英語のWebページ(Ubuntuのフォーラム)で見つけたのですが、日本語でこのことについてかかれたWebページは見つけられませんでした。実はみんな困ってない?(私の環境だけ?)

[PS3] 近接2台のPS3でアドホックパーティー2010-08-22

まれなケースだと思いますが近くにPS3が2台以上いて、別々にアドホックパーティに参加する場合の問題と解決方法について書いておきます。

デフォルトの設定では、無線LANのチャンネル設定が「自動」になっているので、そのままだと1台のPSPが両方のPS3に接続していまいます。さらにPS3同士もつながって、相手のPS3につながっているPSPも接続してしまいます。このため酷いときはそれぞれのPS3に3つのPSPが接続下状態になります。

例) PS3がA,B、PSPが1,2であるとき、PS3(A)にはPSP(1)と(2)が接続した状態になり、PS3(B)にもPSP(1)と(2)が接続した状態になります。

1台のPS3に2台のPSPをつなげることもできるのですが、この場合はチャットできるのは一人だけになってしまいます(ボイスチャットは、ヘッドセットを2つ認識させれば二人同時に使えるらしいです(未確認))。

近くにあるPS3とPSPの組を別の組と混線させなければ良いので、それぞれの組で別々のチャンネルを指定すればこの問題は避けられます。上の例では、PS3(A)とPS3(B)を別々のチャンネルに設定し、PSP(1)をPS3(A)と同じチャンネル、PSP(2)をPS3(B)と同じチャンネルに設定します。

チャンネルの指定は、PS3の場合、アドホックパーティでSELECTを押すとメニューが出てきますので、そこで指定します。

PSPの場合は、メニューから「設定」→「ネットワーク設定」→「アドホックモード」で、接続したいPS3と同じチャンネルを指定します。

これで、混信すること無くアドホックパーティで遊ぶことができます。ただし、上の例のPSP(1)と(2)で直接遊ぶことはできななってますので、その場合はどちらかのPSPのチャンネルをもう一方のPSPと同じ(あるいは「自動」)にする必要があります。

続・Open Officeで年賀状の宛名印刷2009-01-02

ようやく年賀状を書き終りました。宛名印刷も4人までの連名に対応してみました。

完全に時期を逸してしまいましたが、コメントでリクエストがあったのでテンプレートを公開しておきます。暑中見舞や来年の年賀状の際に参考にしてください。

OpenOffice用宛名印刷(縦書き)テンプレート

以下、使い方とか(READMEとほぼ同じ)です。

始めに

WindowsのOpenOffice 2.4で確認しました。その他のプラットフォーム、バージョンでも動くとは思いますが確認してないのでわかりません。

  • 2011.1.20追記 Windows版OpenOffice 3.2でも動作しました。
  • 2013.1.1追記 Windows版LibraOffice 3.6.5.2でも動作しました。

こちらでウィルスチェックは行っていますが、改竄されている可能性も0ではないので、念のためダウンロードしたファイルをウィルスチェックしてください。

  • 2014.2.21追記 展開後のファイル名が文字化けしていた場合は、Readme.txtに書かれたファイル名に修正してください。(ご指摘ありがとうございます > 2013.12.22のやまもさん)

住所録の整備

「はがき住所録テンプレート.ods」を開いて、宛名の情報を入力してください。

注意点

  • 「〒」は半角で入力してください(ハイフン入り)。「n1」~「n7」が自動で入ります。100人以上入力する場合は、「n1」~「n7」の数式をコピーして使ってください。
  • 長い住所は「住所1」と「住所2」に分割します。「住所1」に市区町村番地、「住所2」に建物名等を入れることを想定しています。
  • 4人連名にする場合は、「姓0」に姓を、「名0」~「名3」に名前を入力します。
  • 連名が3人以下の場合は、「姓」に姓を、「名1」~「名3」に名前を入力します。
  • 敬称は「名0」~「名3」に含めてください。

範囲指定は、 OpenOffice.org 3.0/2.0 で簡単はがき宛名印刷 の通りです。範囲名は「印刷用住所」にしてあります。

データソースの作成

これも、 OpenOffice.org 3.0/2.0 で簡単はがき宛名印刷 の通りですが、データソースの名前は、「はがき住所録」にしておきます。レイアウトファイルのフィールドにデータソース名が含まれているので、違う名前にすると、そちらも変更しなければなりません。

住所録を変更した場合は、住所録を保存してからodbファイルを開きなおして、変更が反映されていることを確認してください。反映されていない場合は変更箇所が範囲指定外になっているかもしれないので、範囲指定を見直すか、最後に追加するのではなく途中に行を挿入して追加してみてください。

レイアウトの整備

「カスタム縦書き印刷テンプレート.odt」を開いて、差出人の住所や氏名、郵便番号を変更します。裏面に書く場合は、バッサリ削除してかまいません。

印刷

「カスタム縦書き印刷テンプレート.odt」で普通に印刷すれば、差し込み印刷をするか聞いてきます。「はい」と答えて、印刷するレコードを指定すればOKです。

エラーになる場合は、データソースの指定が間違っているのだと思います。「編集→データベースの交換」で、2.で作ったデータソースが指定されているかを確認してください。

その他

OpenOffice.org 3.0/2.0 で簡単はがき宛名印刷 にあるファイルをいじっただけなので、分からないことがあれば上記のページを見てください。

  • 2013.1.1追記 LibraOffice 3.6.5.2で1枚ごとに空白ページが印刷される場合は、「ファイル→プリンタの設定→オプション→その他」の「自動的に挿入された空白ページを印刷」のチェックボックスをはずしてみてください。

以上です。

閏秒(うるうびょう)2008-12-31

2009年1月1日に閏秒が挿入されます。これによりシステムにどんな影響があるか少し調べてみました。

関連用語

  • 国際原子時(TAI)

約300個の原子時計の加重平均によって維持される時刻。協定世界時の基礎となる国際標準。略語はTemps Atomique International(フランス語)の略。閏秒は含みません。1958/1/1 00:00:00スタート。

  • 世界時(UT)

地球の自転に基づいて決められる世界共通の時刻。略語はUniversal Timeの略。UT0からUT2まであります。

    • UT0:地方平均恒星時と観測位置から求まる時刻。
    • UT1:UT0 から地球の極運動を補正したもの。単にUTといえば大抵これです。
    • UT2:UT1 から季節変動を補正したもの。
  • 協定世界時(UTC)

TAIを基にUTとの誤差が1秒未満になるように維持されている世界共通標準時。閏秒が挿入されるのはこの時刻。英語ではCoordinated Universal Timeですが、ITUが各国での略語を統一するためUTCと決めたらしいです。1972/1/1 0:0:0にTAI-10でスタート。

  • UNIX time

1970/1/1 00:00:00からの累積秒数。日付に変換する場合、POSIX標準では閏秒は考慮ません。最近では、タイムゾーン情報に閏秒実施データが含まれていれば、閏秒を考慮してUTCに対応させることができます。この場合、同じUNIX timeでもPOSIX標準のシステムと表している時刻が異なるので、システム内でどちらかに統一しておいた方がよいです。

  • NTP time

1900/1/1 00:00:00からの累積秒数。日付に変換する場合閏秒を考慮しません。

閏秒が挿入されるとどうなる?

  • UTC

2008/12/31 23:59:60が追加されます(日本では08:59:60)。これによりUTC-TAIの値が1つ増加します。

  • UNIX time

POSIX標準の場合閏秒は考慮しないので、何もしなければ1秒進んでしまいます。UTC対応システムで、タイムゾーン情報に閏秒実施データが含まれていればUTCとの同期は保たれます。

  • NTP time

前日の2008/12/31 00:00:00からNTPパケットの中のLI(Leap Indicator)が"01"になり閏秒の予告が始まります。2009/01/01 00:00:00のときは、2008/12/31 23:59:60と同じ値で、LIが"00"に戻ります。

参照しているNTPサーバが閏秒に対応していないと、上記の動作はおこなわれません(LIがセットされない)。また、使用しているNTPクライアント(ntpd等)が閏秒に対応していないと、LIがセットされてもさくっと無視されます。

具体的には?

システム時計が未対応の場合

閏秒挿入時にシステムの時刻がUTCより1秒進むことになります。POSIX標準のUNIXやWindowsがこれに該当します。

しかし、NTPで同期を取っていれば、そのうち1秒進んでいることに気付いて調整されるはずです。一瞬たりとも時間のズレが許されないようなシステムでもなければ影響は少ないです。ちなみにWindowsは少なくともXPまでは、システム時計、NTPクライアント/サーバすべて閏秒に未対応のようです(Server 2008やVISTAについては未確認)。

この場合、NTP クライアントがstepモードで実行されていると、時刻戻りが起こる可能性があり、時刻指定で起動するプログラムが複数回実行される恐れがあります。これを防ぐにはNTPクライアントをslewモード(1秒の間隔を調整してじわじわ時刻をあわす)にしておきます。

システムが閏秒に対応している場合

2008/12/31 23:59:60(UTC)をとります。時刻をDBMS等に記録している場合、この時刻が記録される可能性があります。プログラムやDBMSが閏秒に対応していない(秒は0~59秒しか取らないものとしている)場合、この時刻うまく扱えずにエラーとなるおそれがあります。

結局どうすれば?

1秒も狂わせたくない場合は、システム、ミドルウェア、NTPクライアント、参照するNTPサーバのすべてを閏秒に対応させる必要があります。

それほどシビアでなければ、システム時計を「非対応」にしておき、NTPクライアントで修正させれば十分だと思います。ある時刻の解釈でズレが生じる可能性があるので、システム時計以外も「非対応」に統一しておいたほうが安全です。

参考

以下のページを参考にさせていただきました。

続:Windows XP x64でXlink-Kai2008-04-20

2月に行った仮想マシンを利用したチャレンジは玉砕しましたが、そのエントリに「x64用のドライバがある」とのコメントをいただきました(通りすがりさんありがとうございます)。早速……というには間が空きすぎですが、ようやく試してみることができました。

まず、x64用のドライバですが、通りすがりさんが書かれていたとおり、ユーティリティをインストールしたフォルダのサブフォルダにありました。てっきりユーティリティプログラムしか入ってないと思い込んで、まったくのノーマークでした。私の環境の場合、以下のファイルがx64用のドライバになります。

C:\Program Files (x86)\bRoad Lanner Wave\GW-US54GXS\InsDrvTemp_USB\ZD11BU64.sys

ダウンロードしたEXEファイルを実行すると、ドライバのインストールに失敗したようなメッセージが出ますが、無視して上記のドライバをデバイスマネージャから再インストールすればOKです。

Xlink-Kaiの設定は通常と同じでOKです。ブルースクリーン落ち対応暫定パッチは、このパッチが出た当初は本家のサイトのダウンロードページに「32bit only」という記述があったので、使っていません。(全部入れ替えると、ライブラリが不足しているというようなエラーになります)

最初に試したときは、アリーナをいくつか降りたところでブルースクリーン落ちになりました。念のため、暫定パッチの実行ファイルでも試してみましたが、同じ症状でした。

で、ここで悩んでいたのですが、良く考えたらPSPを起動せずKai単体でテストしていました。そこで、ちゃんとPSPとアドホックモードで接続してから試したところ、無事つながりました。

Monster Hunter Portable 2nd Gで、2回ほどクエストに行きましたが、問題なく遊べました。これでゴムタイなクエストも協力してクリアできそうです。

ちなみにアリーナの構造や利用ルールが2ndのころと大幅に変わっていますので、遊ぶ前に一度MHP2Gサブアリーナ構造を読んでおくとスムーズに遊べると思います。

続:GW-US54Mini2の設定(APモード)2008-02-09

やはり設定に苦労されている方が多いようで、少し前から以前書いた記事がアクセス数No.1になっていました。コメントでも書き込みをいただきましたので、覚えている範囲でもう少しくわしく書いてみます。ただし、手元にGW-US54Mini2がないのと、設定してから時間が経っているので大したことは書けないので、過度な期待はなさらないでください。

※ある程度ネットワークに関する知識をお持ちであると仮定して書きますので、分からない用語等がありましたらGoogleってみてください。

PLANEXが提供しているマニュアルを(もう一度)確認します。このマニュアルのポイントは、「モード切り替え方法」の2.の画面です。私が試したときはルータとつながっているNICが出てこなくて困りました。APモードに切り替えたあとでSelectCard.exeを直接起動すると、表示されるようになったのは以前書いたとおりです。

あと、はっきりとした記述は見つけられなかったのですが、このツールでGW-US54Mini2をAPモードにすると、GW-US54Mini2自身のIPアドレスとして192.168.0.1を使おうとしたと思います。このため、ブロードバンドルータとつながっているネットワークのアドレスが192.168.0.xだとうまくいきません。この場合は以下のいずれかの方法で使えるようになると思います。

  1. ブロードバンドルータとつながっているネットワークのアドレスを192.168.1.x等の別のネットワークアドレスに変更する
  2. 付属ツールでのICSをあきらめて、GW-US54Mini2に別のネットワークアドレスを割当て、手動でICSを設定する(参考)
  3. 付属ツールでのICSをあきらめて手動でブリッジ接続を設定する(参考)

ステーションモードとAPモードを切り替えるのに、付属のツールが使えると便利なので1.がお勧めです。私の場合は、1.の方法で設定しました(有線LANのネットワークアドレスが最初から192.168.0.0/24ではなかった)。なので、2.と3.の方法は試していません。

1.の方法はすでに192.168.0.0/24の機器がたくさんあると、そのすべてを変更しなければならないので大変です。このような場合は、2.や3.の方法で設定して、そのGW-US54Mini2はAPモード専用にしてしまうのもアリかもしれません。