近況1: 2010-10-09 - 2012-05-10

2012-05-10

Execian 2.0.2をリリース

Execian 2.0.2をリリースしました。フォントの設定によってはメインウィンドウのレイアウトが崩れる問題を修正してあります。

2012-04-19

D88 Edit 1.0.1をリリース

D88 Edit 1.0.1をリリースしました。

2012-04-16

Execian 2.0.1をリリース

Execian 2.0.1をリリースしました。

2012-04-13

MessageBox関数の奇妙な仕様

Execianの不具合を修正しました。"Open"の実行中にダイアログボックスが表示されないというものです。リリースはもう少し先になります。

WindowsのMessageBox関数のメッセージにNULLを指定すると、ダイアログボックスは表示されず、戻り値は"0"となります。GetLastError関数が"0"を返すことから、エラーとは認識されていません。奇妙な仕様です。

2012-04-12

Execian 2.0.0をリリース

Execian 2.0.0をリリースしました。仮想リストビューとの格闘に決着が着いた…かも。あれこれとひねってみましたが、結局はTaligentのModel-View-Presenter(MVP)に落ち着きました。このMVPはVCLと相性が良いと思います。

ViewにはVCLのコントロールを使い、他に用意したクラスは、Model、Selections、Commands、といったもの。Modelはデータの管理と編集、Selectionsはコントロールの選択状態、Commandsはアクションから呼び出されるコマンド群のファサード、といったように役割を分担させました。

2012-02-16

Flashexam 1.0.0をリリース

Flashexam 1.0.0をリリースしました。フラッシュカードをモデルにした暗記ツールです。カードの裏表を入れ替えて使うこともできます。

KDEで動作するMnemosyneというプログラムのスクリーンショットを見てから、いつかは自分でも作ってみたいと思っていた種類のものです。

Flashexamの原型はVBScriptで書いたスクリプトで、メッセージボックスを使ったインターフェイスを採用していました。

操作に関しては、シンプルさを優先しました。データファイルは読み取り専用、編集はテキストファイルで行う形になりました。これはVBScript版の名残です。

2012-01-26

Wheel Here 1.4.3をリリース

Wheel Hereをバージョン1.4.3に更新しました。フォアグラウンドウィンドウの設定に関する個所を修正してあります。

2011-11-20

デスクトップ上のアイコンの位置を記録・復元する"アイコンの思い出"

Astra Gift Makerで作成したジグソーパズルは、スクリーンの解像度を800x600に切り替えてプレイしています。しかし問題は、解像度を切り替えるたびにデスクトップ上のアイコンが再配置されてしまうことです。

というわけで、デスクトップに置かれたアイコンの位置を記録・復元するプログラムを物色しました。結局、渡邉昌祐氏製作"アイコンの思い出"を使っています。ドロップダウンリストから選択するだけでアイコンの位置を復元できるという手軽な操作性になっています。

2011-11-13

Transylvania III

Transylvania IIIを最後までプレイしました。Transylvaniaシリーズはこの"III"でおしまい。プラットフォームはApple IIGSとMS-DOSのみ。両者の間では、クリアまでの手順が少しだけ異なります。持ち物の数が制限される、よく調べないと出現しないアイテムがあるといった点により、難易度はApple IIGS版の方が高くなっていると思います。

AppleIIGS版の解答はAPPLE2.ORG.ZAの片隅に、MS-DOS版の解答はGamesoverにありました。

2011-11-03

プレゼント用ジグソーパズル作成ソフト

Lena Panktatova氏製作のフリーウェア、"Astra Gift Maker"を使ってみました。プレゼント用のジグソーパズルを作成するソフトです。プログラム本体および作成したジグソーパズルはWindowsで動作します。

解答画像、ピースの形状、完成時に表示されるメッセージの設定を済ませた後、"Save"をクリックすると.EXEファイルが作成されます。作成されるファイルのサイズは、400KB程。もちろん、プレゼント用途に限定せず、自分で遊ぶためにパズルを作成するためにも使用できます。

大きな画像は、800x600ピクセルのスクリーンでプレイするのに丁度よいサイズに縮小されます。プレイする時も、スクリーンの解像度を800x600ピクセルに変更すると遊びやすくなります。

どちらかと言えば、詳細な設定や演出のバリエーションを楽しむと言うより、手軽にジグソーパズルを作成できる、気軽にプレイできる、といったところに重点が置かれています。難易度は、ピースの数を多くすることによって上げることができます。

製作者のウェブサイトでは、他にもプログラムが公開されています。"上海"と同じルールの"Desktop Taipei"、などなど。"Astra Gift Maker"で作成されたジグソーパズルのサンプルも置かれています。

2011-11-02

動き続けるジグソーパズル

いなえ氏製作のフリーウェア、"Jigsaw"をプレイしました。Windows用のジグソーパズルです。ピースの形は伝統的な凹凸型、プレイヤーが解答の画像を指定できます。解答の画像は、奔放な風に運ばれるように移動し続けます。それに合わせて、各ピースに描かれる解答の断片も常に変化します。動画を使わなくても"動くジグソーパズル"は可能だったのです。

画像にはポイントとなる個所があるものです。人物画なら顔やセクシーな部位といった具合に。"動かないジグソーパズル"では、ポイントとなる個所が描かれたピースは、一度はめ込んでしまえはそれ以降触れることはありません。しかし、"動き続けるジグソーパズル"では、ポイントが描かれたピースをはめ込む感動を何度も味わうことができます。

"動き続ける"という仕様には問題点もあります。それは、目を疲れさせること。また、長時間プレイした後では、目を閉じても画像が流れ続けているような感覚が残ります。もう一つの問題点は、マシンパワーを必要とすること。自分の環境では、400x300のサイズがかろうじて遊べる最大サイズでした。ずいぶん旧いモデルなので仕方ないのかもしれませんけれど。

2011-10-27

Seven Open 2.0.0をリリースしました

Seven Open 2.0.0をリリースしました。全てのコードをVBScriptで書き直しました。また、7-Zip File Managerのパスやアーカイブファイルの拡張子をテキスト入力ダイアログで編集できるようになっています。

2011-10-13

VBScriptであれこれ

VBScriptは楽しい。D88EditからN88-BASICへ、そしてより近代的で手っ取り早く始められるということからVBScriptへと興味が移って、あれこれ調べながらコーディングしています。ちょっとしたユーティリティ("送る"メニューからコマンドプロンプトを開くなど)がすぐに作れます。また、HTAでば、HTMLの要素を操作することもできます。

今思うと、JScriptはコンソール用プログラムに、VBScriptはGUI用プログラムに向いているような気がします。VBScriptの強みは、何と言っても文字列の入力ダイアログボックスが利用できることにあります。これひとつでインタラクティブ性の幅が大きく広がります。また、メッセージボックスはWindowsと同等のものを利用できます。これらの点から、WindowsらしいGUI用プログラムを作成するには、JScriptよりもVBScriptの方が向いていると思います(WSHでは他言語のコードを動的に呼ぶこともできるけれど、当然ながら手続きが増えます)。

そして、しばらく使ってみて思うのは、VBScriptの仕様には謎が多いということ。ドキュメントを読み飛ばしてしまっているだけなのかもしれませんが、ネットで調べたり実験してやっとわかるという山や谷をいくつも越えねばなりませんでした。ということで、メモを兼ねてVBScript Tipsのコーナーを開設しました。ぜひご覧ください。

2011-09-22

D88 Edit 1.0.0をリリースしました

D88 Edit 1.0.0をリリースしました。D88ディスクイメージファイルを編集するためのツールです。

2011-09-12

TFormのIsShortCutが呼ばれない

BCB6でTFormのIsShortCutが呼ばれない…。原因はポップアップメニューが先にショートカットを処理していたことにあったようです。プログラムの実行時にポップアップメニューの全てのアイテムからショートカットを外すことで対処できました。

2011-08-27

リストビューの変更に合わせてUIを更新するには

リストビューの変更に合わせてUIを更新するにはどうするか。

アクションリストのOnUpdateイベントで処理する方法があります。しかし、マウスでアイテムが範囲選択される場合、OnUpdateイベントは、マウスのボタンが離された時にのみ発生します。つまり、コマンドの更新はまとめて行われることになります。

一方、フォルダウィンドウ内のファイルオブジェクトを範囲選択すると、アイテムが一個選択される度にステータスバーのメッセージは更新されていきます。この挙動はどうやって実現するのか。

どうやら、ウィンドウメッセージをポスト・ハンドルすればできるようです。具体的には、"アイテムが選択される" => "変更通知のハンドラ内で独自メッセージをフォームにポストする" => "独自メッセージのハンドラでUIの状態を更新する"という手順になります。ただし、更新の頻度を押さえるための、InvaludateやUpdateの類の工夫は必須と思われます。

2011-08-17

".D88"ファイル用アイコン

PC-8801エミュレータの世界では、D88形式がディスクイメージの事実上の標準となりました。D88ディスクイメージのファイル名には"D88"という拡張子を付けることが推奨されています。しかし、".D88"ファイルに関連付けるアイコンには、これと言える定番のデザインがありません。

個人的にはこれまで何のアイコンも設定せずにやり過ごして来たのですが、ファイルの整理を始めると、やはり不便を感じます。そこで自作しました。

自作といっても、AppleWinのプログラムに埋めこまれているアイコンを一部変更しただけです。フロッピーディスクのラベルに描かれている四角形のワンポイントを赤から青に変えました。

青はなんとなくPC-8801のイメージに合致します。また、M88のアイコンではロゴの背景に使われています。これ、なかなかいいと思います。

2011-08-16

ファイル選択ダイアログボックスの"ファイルの種類"欄

Windows標準のファイル選択ダイアログボックスには、"ファイルの種類"というラベルの付いたドロップダウンリストが置かれています。"開く"ダイアログボックスと"保存"ダイアログボックスでは、このドロップダウンリストの用途が異なります。

"ファイルの種類"ドロップダウンリストには、次のようにヒントが表示されます。
 
ダイアログボックスの種類 ヒント
開く 表示するファイルの種類の一覧が表示されます。
保存 保存するファイルの種類を指定します。

"開く"ダイアログボックスでは、このドロップダウンリストは、ファイル一覧のフィルターとして動作します。一方、"保存"ダイアログボックスでは、フィルターとして動作するだけでなく、保存するファイルの拡張子を自動補完するためにも使われます。例えば、"Plain Text (*.txt)"を選択した状態でファイル名に"Document"と指定すると、最終的には"Document.txt"というファイル名が適用されます。加えて、保存するファイルのフォーマット(テキスト、リッチテキスト、Word文書等)も決定します。

ここで注意しなければならないのは、"保存"ダイアログボックスでの"All (*.*)"という選択肢です。これを選択した場合、どの拡張子およびフォーマットが適用されるのでしょうか。どうやら慣習があるようです。

メモ帳のような一種類の拡張子およびフォーマットにしか対応していないプログラムでは、それが適用されるようです。また、ワードパッドのように多種の拡張子およびフォーマットに対応するプログラムでは、"All (*.*)"という選択肢は初めから用意されないようです。

2011-05-22

Wikipediaの"Category:Download websites"

製作したソフトをどこに登録したらよいのか。Wikipediaに"Category:Download websites"というエントリがありました。いくつかの代表的なサイトが解説されています。

2011-05-19

Wheel Here 1.4.2をリリース

Wheel Here 1.4.2をリリースしました。ポインタが指しているコントロールをより正確に検出できるようになりました。

以前のバージョンでは、WindowsFromPointおよびEnumChildWindows APIを使ってポインタの位置情報からコントロールの特定を行っていました。しかし、この方法では上手くいかないアプリケーションがあります(例: mIRC)。このバージョンからは、WindowFromPointおよびChildWindowFromPointEx APIを使うことで問題を回避しています。

また、例えば、テキスト入力コントロールの上に使用不可のボタンが置かれている状況で、両コントロールの重なり合った範囲をクリックするとどうなるか。実験してみると、テキスト入力コントロールに対してクリックの反応が起こりました(フォーカスが移る)。

Wheel Here 1.4.2から、使用不可のコントロールは、ウィンドウメッセージの転送対象から外されるようになっています。

2011-05-08

Apple II用"Transylvania"

Apple II用アドベンチャーゲーム"Transylvania"には三種類のバージョンが存在するようです。オリジナル版Double Hi-Res版Comprehend版、それぞれの違いをまとめます。

オリジナル版は、1982年にリリースされました。シナリオ・グラフィック共にAntonio Antiochiaが担当しています。タイトル場面では、"Transylvania!"と、感嘆符入りでロゴが描かれます。

Double Hi-Res版は、1984年にリリースされました。グラフィックがDouble Hi-Resグラフィックモード用に書き直されています。グラフィックを担当したのは、Marsha Meuse。各場面が画面大に描かれるようになり、これまではテキストエリアの後ろに隠れて見えなかった部分を見ることができます。狼男はズボンと靴を履いている、サブリナ姫のドレスは足がすっぽり隠れる程の丈、といった発見があります。新しく追加されたカットもあります。

Comprehend版は、1985年にリリースされました。"Comprehend"という実行環境で動作するように作り直されたバージョンです。グラフィックは16色ですが、オリジナル版に近い雰囲気に戻っています。描画が格段に速くなり、より多様なコマンドを受け付け、メッセージが大小文字で表示されるようになり、結果として、最も遊びやすいバージョンになっていると思います。ゲーム内容には若干の変更が加えられ、トリックと連携する"ビジネスカード"がパッケージに付属します。このバージョンから、版権の名義がPenguin SoftwareからPolarware/Penguin Softwareに変わっています。

ちなみに、PC-8801用の移植版は、オリジナル版かDouble Hi-Res版を元にしていると思われます。Comparehend版特有のトリックが入っていないからです(参考: "トランシルバニア - レトロAVG攻略")。

2011-04-29

ソフトの登録サイト

出来上がったソフトは、CLS VersionUp.InfoFreeware Filesに登録しています。これまではFreeware Guideにも登録していました。しかし、かのサイトは64ビット版Windows用ソフトしか受け付けなくなりました。

Freeware Guideがなぜ64ビット版にこだわるのか、よくわかりません。64ビット版Windowsでも32ビット版のソフトは動作するわけですから。

2011-04-28

Seven Open 1.2.0をリリース

Seven Open 1.2.0をリリースしました。7-Zip File Manager 9.20および9.22 betaに対応したバージョンです。

2011-04-26

Upside Project製作の"カウンタHIT記念パズルゲーム"シリーズ

Upside Project製作の"カウンタHIT記念パズルゲーム"シリーズをよく遊んでいます。いずれも、ピースを入れ替えて絵柄を完成させる、一種のジグソーパスルとなっています。

最新作の"ぷれ版パズル"には、十種類の絵柄が入っています。一回のプレイ時間は数分程。気分転換に丁度よくできています。

2011-04-23

"Zippy Race"の"Pacman"

リンクのページを作り直していたら、気がつきました。何と"G A M E R i N G"が消滅していました。良質のゲームミュージックが多数置かれていたサイトだったので、とても残念です。

ところが、発見もありました。同サイトからダウンロードしてあったファイルを調べてみると、いくつかのアーカイブファイルには複数の曲が含まれていることがわかりました。なぜか"Zippy Race"のアーカイブファイルに"Pacman"が入っていたり…。

作者の方にはサイトの再開を望みます(と、ここに書くのは、連絡方法が無いからです)。

2011-04-22

Photobucket - 壁紙のあるサイト

Photobucketという、画像・動画のホスティングサービスがあります。デスクトップ用の壁紙を見つけるのにも重宝するサイトです。

2011-04-21

MVC辺りで

あれやこれや。間が空きました。

ただ今、MVC(Model-View-Controller)辺りで試行錯誤してます。

2010-12-14

"ホセ王国…"の見所

天てれ夏のイベント"ホセ王国の不思議な弓矢〜くしゃみ姫を救え!"の再放送がありました。

杏奈ちゃんが"アオゾラララ"のキューを出すところは、見所の一つ。噛み噛みで上がりやすい彼女にとって雰囲気の切り換え役は、ちょっとした試練だったのではないかと思います。でも上手く行きましたね。

2010-12-03

ふにゃー

あれこれとやってみたいことはあるのですが、お菓子を食べてお茶を飲んでとしていると、もうどうでもよくなってます。

2010-11-25

Reuse Bin 1.0.0.0をリリース

Reuse Bin 1.0.0.0をリリースしました。Windowsでは、リムーバブルメディア上に置かれたファイルはごみ箱に移動することができず、即削除となります。一般的にこの仕様への対策は次の通り。
  1. ファイルの削除は慎重に行う。
  2. 削除するファイルは一時的に任意の場所に保管しておく。
  3. 誤って削除したファイルはユーティリティで復旧する。
Reuse Binは、2の方法を手軽に行うソフトと言い換えることができます。

2010-11-03

三角帽子の女の子とクマ

フジパンの二個入りドーナツのラインナップにキャラメルとストロベリーが登場。しかし、どちらのパッケージにも三角帽子の女の子とクマのイラストが付いていません。有ると無しでは大違い。中身はわるくないのですが、結局、手に取るのは従来の方です。

手に持ったドーナツから測って、あの子は30cmくらいの妖精なのでしょうか。それとも大きなドーナツが好きなだけ?

2010-10-21

Seven Open 1.1.0をリリース

Seven Open 1.1.0をリリースしました。7-Zipの最新版に対応したバージョンアップです。今回は日本語版文書を別途用意しました。

2010-10-10

おまけファイル

C++Builderのプロジェクトディレクトリに"The Box in Dahlias"のおまけファイルを見つけました。移転前は一般公開していなかったものですが、このたびアップロードしました。歴史的資料としてご覧ください。中身を見ると、ホームページのアドレスが"tripod"になっていて懐かしい。

2010-10-09

新しいウェブスペースに移転

新しいウェブスペースに移転しました。移転作業はまだ半分程終わったところ。サイト内のあちこちにレガシーが見つかります。目をつぶりたくなります。フジパンの二個入りドーナツと無印良品のローズプーアル茶に逃避したくなります。

戻る