HSP3プログラミング入門講座
powered by Let's HSP!
HSPの「バージョン」にまつわるちょっとしたネタ
無料(フリーソフト)でゲームやツールを作成開発できるWindows向けプログラミングツール『HSP』(公式サイト「HSPTV!」)のバージョンに関連した小ネタ。
◇ HSPのバージョンを確認するには?
HSPの開発環境のバージョン番号を確認するには、まずHSP3スクリプトエディタ「hsed3.exe」を起動しましょう。
そして、メニューの[HSP]→[コンパイルのみ]or[エラー表示]の項目を選択します。
結果レポートダイアログというのが表示されるので、エディトボックス内の1行目の「HSP
script preprocessor verX.X」か、2行目の「HSP code generator verX.X」を確認しませう。
◇ 実行ファイルにバージョン情報表示を埋め込む!
実行ファイル(*.exe)を右クリックして表示されるポップアップメニューで[プロパティ]の項目を選択すると、ファイルのプロパティダイアログが表示されます。
そこに下のような[バージョン情報]タブが用意されたプログラムを見かけるかと思います。
たとえば、↓HSP3スクリプトエディタ「hsed3.exe」(Visual C++製)もそうですな。(ちなみに、「hsed3le.exe」はHSP2時代の旧式スクリプトエディタで、命令・関数の色分け機能なんかがない超シンプルなエディタ)
このバージョン情報のデータ(.NETの世界だと「アセンブリ情報」とも呼ばれてる)は、実行ファイルの中に含まれてるもので、HSP製実行ファイルでもEXEファイル作成後にこれを用意することが実は可能なんですが、HSPスクリプトエディタにはそういう追加機能は用意されてません。
拙作「Let's HSPIC!」というHSP向けのアイコン書き換えツールは、バージョン情報データの埋め込み機能もサポートしてます。これで、自作ソフトを公開する雰囲気がグッと沸きますなぁ。(^^
ちなみに、HSPのスクリプトからファイルのプロパティダイアログを表示したい場合はexec命令を使います。
// ファイルのプロパティ表示 dialog "", 16 if stat = 0 : stop exec ""+refstr+"", , "properties"
◇ バージョン番号はどう付ける?
プログラムを製作すると、よくバージョン番号というのを通常付けます。
バージョンアップ(更新)を行って、バグ修正や機能追加なんか行い古いバージョンとの区別をつける目印となります。
さてさて、バージョン番号の付け方ですが、特に決まりというのはありません。製作者の自由です。
ただ、あまりにも独特なバージョン番号を付けると、どちらが新しいものなのか古いものなのかが分からなくなり、利用ユーザーを混乱させてしまう可能性があります。他の有名ソフトウェアのバージョン数値の上げ方なんかを参考にするといいです。
たとえばな例です。
「version 0.x」系はリリースされる前段階の開発バージョン、「version
1.0」(version 1.0.0)になって日の目を見る正式リリースでしょうか。以後、本当にマイナーな変更であれば「version
1.0.1」、「version 1.0.2」という形になります。それなりの一般的な変更であれば、「version
1.1」(version 1.1.0)、「version 1.2」(version 1.2.0)となります。「version
2.0」(version 2.0.0)となれば、大幅な変更となります。
OSのWindowsにもちゃんとバージョンがあります。「XP」とか「Vista」とか「7」というのはあくまで商品名です。 Windows XPは「version 5.1」、Windows Vistaは「version 6.0」、Windows 7は「version 6.1」です。(参照、Wikipedia)
◇ HSPのバージョン変遷
HSP 2.x系はバージョン2.61を最後に開発を終了しました。現在はHSP 3.x系の開発が行われてます。
また、次期リリースとなるバージョン3.2は「OpenHSP」プロジェクトとしてソースコード(C++)を公開しての開発になってます。
HSPスクリプトの互換は、HSP 3.x系として維持されていきます。
HSP 1.x系 - 2.x系 (開発終了) | HSP 3.x系 | ||||||||
1.x 1996年 |
2.1 1997年 |
〜中略〜 | 2.55 2oo1年 |
2.6 2oo3年 |
2.61 2oo4年6月 |
3.0 2oo5年8月 |
3.0a 2oo5年9月 |
3.1 2oo7年7月 |
3.2 2oo9年8月 |
ちなみに、HSP 2.x系からHSP 3.x系のバージョンアップでは、今まで基本的に維持してきたスクリプトの互換をあえて捨てています。HSPの世界に限ってミルト、かつてないほどの変更だったと言えます。
詳しくは、HSP3に付属するマニュアル『以前のバージョンからの変更点(アップデートガイド)
(update.htm)』を参照あれ〜。
たとえば、ある程度コード量があるHSP2(HSP 2.x)時代のソースコードをHSP3(HSP
3.x)環境でコンパイルすると、かなーりの高い確率でHSPエラーになると思います。
ただ、HSP3(HSP 3.x)にあわせてソースコードの書き換え変更をがんばって行えば、まずは大丈夫でしょう。
- 関数の導入 → HSPエラー41
(命令形式だったrnd、gettime、strmid、sysinfo、strlen、getpath、instr、int、strなど) - モジュール機能の仕様変更
- 演算の優先順位の導入 (算数と同じで掛け算・割り算を優先)
HSP用拡張プラグイン(DLL形式/HPI形式)は、内部の仕様が変更されてますが、互換機能もあるためHSP2時代の拡張プラグインもほとんどが利用できるかと思います。(モジュールのヘッダーファイル「*.as」をコンパイルすれば、対応してない趣旨のHSPエラーがでる)
キーワード de HSP
- 無料プログラミング
- HSPダウンロード
- 実行ファイル作成
- HSP動作環境
- 演算子
- 文字列操作
- 命令・関数一覧
- アイコン変更
- PACKFILE
- PACKFILE編集
- #packopt
- #deffunc
- HSPエラー
- HSPエラー番号
- HSPエラー7
- HSPエラー12
- HSPエラー13
- HSPエラー33
- HSPエラー38
- HSPエラー41
- ホームページ作成
- バージョン
- フォント
- オブジェクト
- ボタン
- 入力ボックス
- オブジェクト非表示
- Win32 API
- メニュー
- HSPLet
- サウンド再生
- 画像
- PNGファイル
- HSP質問掲示板
- デバッグ
- ドラッグ&ドロップ
- ブラウザ作成
- HSP書籍本