始めよう!HSP3
たくさんの方々が既存のHSP2を経験し、本講座に来られているかと思われますが、
中には初めての方も当然いらっしゃることでしょう。
ですので、改めまして概要等の紹介の方からお話させていただきたいと思います。
パソコン上で動いているあらゆるソフトウェアは何かしらのプログラム言語で組まれています。
プログラム言語には、皆さんが耳にしたことがある(はずの)C言語やJAVA、COBOL等と様々存在し、
今からお話させていただくHSPもスクリプト言語システムと呼ばれるソフトを作成する為のものです。
ソフト作成はテキストによるソース(以下、スクリプト)データをある程度の決まりに則って自由に書きます。
HSPによるソフト作成も例外ではなく、スクリプトと呼ばれるテキストデータを作成することで
パソコン上で動作するあらゆるソフトウェアを初心者にも手軽に作成することが出来るようになっています。
HSPについてもう少し掘り下げてみましょう。
HSPというのは、ご承知のことと思われますがHotSoupProcessorの省略形で、
OnionSoftwareのおにたま氏が作成されたインタプリタのことです。
開発環境としては「Win98、Me、2000、XP」でハードディスク空き容量が10MB以上が必要です。
他にも解像度が800×600以上の256色以上である、等が条件になることと思われますが、
現在普及してまともにお使いいただいているパソコンであれば、大半がクリアしているはずです。
HSP製ソフトの動作環境としてはIE4.0以上がインストールされている環境であれば、
Win95、Win98、Win2000、WinMe、WinXPといった32bitアプリケーションが動作するWindows環境にて
ほぼ同等の動作をさせることが出来るようになっています。
また、作成したソフトの著作権等の権利は自分に帰属します。
上記により、利用者の環境を必要以上には気にすることなく営利・非営利問わずに自由に配布できますので、
自作ソフトをインターネット上に公開し自慢しよう!
さて、HSPではどの程度のソフトを作ることが出来るのでしょうか?
この疑問は誰しもが抱くものでしょう。
単刀直入に答えから申し上げると、既存のWindows上で動作している全てのアプリケーションと同等、
または可能性としてはそれ以上の機能を持ったソフトを作ることが出来ます。
ただし、以上のようなものを作る為には1つだけ条件があり、
HSPに限ったことではありませんが、完成度は製造者の力量により大きく左右されます。
…と、コレではどの程度のものであるかは計り知ることが出来ませんので、
もう少し具体的に書くとするならば、
簡単な命令セットを覚えることで1日目2日目から実行ファイルを作成することも可能です。
飲み込みの速さとアイデア・その他言語の習得度合いにもよりますが、オフィシャルページだけでなく
うちのようにHSPユーザーにより情報を取得できるサイトが多数存在しますので、
3日〜2週間程度でHSPの使い方・基本的な命令セットのパターンを把握して
1,2ヶ月ほどでダウンロードサイトVectorにて公開できるレベルになることも十分に可能です。
もちろん本人のヤル気が大前提ですし、高度な機能を要するものはそれなりの知識も必要ですけどね。
エディターやビューワー、テキストのみの簡単なゲーム(High&Low等)位の簡易アプリケーションから
ネットワークやデータベース・OLE機能を使用した他ソフトとの連携・3DバリバリのゲームまでOK。
以下の手順通りにインストールして、早速HSPワールドを楽しもう。

HSPはOnionSoftware内のHSP紹介とダウンロードページ「HSPTV」より取得してください。
ダウンロードはEXE形式によるインストーラ版とZIP形式によるアーカイブ版の2通り存在します。
インストーラは初心者にお勧めでウィザード形式により
インストール先・スタートメニュー登録・デスクトップへのショートカットを設定できます。
一方のアーカイブ版は、他圧縮ファイル同様にアーカイブを任意のディレクトリに展開します。
アーカイブ版はHSPダウンロードリストのページよりダウンロードが出来ます。
インストーラ版ページにはインストーラ版のダウンロードの他、
HSPの最新情報やメルマガをメールにて受け取られるサービスの登録も存在します。
気になる方は登録しておいても損はないでしょう。

出来上がったディレクトリを見てみると、上記のようになっているはずです。
場合によっては、DLLファイルが表示されていないかもしれません。
ネット上に公開・配布する場合はHSP実行ファイルとは別途DLLを必要とする場合があるかもしれません。
DLLを必要とする場合は特別な記述が必要となりますので、
スクリプト内にDLLを呼び出す命令セットを記述していない場合はそのままでもかまいませんが、
DLLが見えている必要のある人や確認をしたい方は、エクスプローラのフォルダオプションメニュー
表示タグにある「ファイルとフォルダの表示」を「全て表示」にしておきましょう。
ディレクトリにはたくさんのファイルやサブディレクトリが入っています。
軽く説明しておきましょう。
「common」ディレクトリ
標準付属DLLの命令を呼び出す為のファイルが多数入ったディレクトリ。
通常、外部ファイルの相対パス指定は現在のカレントディレクトリが基準となりますが、
このディレクトリもASファイルによるスクリプトファイル結合であれば、
ディレクトリ指定なしのルートディレクトリファイルとしてパス指定することが出来ます。
詳しい説明は後の章で詳しく説明します。
現在は、HSP2でも解説をしていますので、今ご覧になりたい方はコチラより参照してください。
「docs」ディレクトリ
読み物系ファイル一式が入ったディレクトリ。
DLLリファレンスやHSP入門・システムドキュメント・前Versionからのアップデートガイド等が入ってます。
また、HSPスクリプトエディタ外部ツールAPIマニュアルなども入っています。
拡張したい方は一度覗いてみるのもいいのではないでしょうか。
「hsphelp」ディレクトリ
HSP命令リファレンスとsprocketさんが作成されたHspHelpBrowserが入っています。
HelpBrowserはスクリプトエディタからのワンキーヘルプにも対応しており、便利です。
「hsptv」ディレクトリ
HSPのポータルサイト「HSPTV」と連携するHSPTVブラウザに関するファイルがあるディレクトリです。
ブラウザのマニュアルやスキンファイル、ブラウザで動作するコンテンツのキャッシュファイルがあります。
「runtime」ディレクトリ
実行ファイル作成時に使用するランタイムが入ったディレクトリです。
中には、下記3ファイルが存在します。状況に応じてランタイム切り替えましょう。
hsp3c.hrt 標準命令からCOM関連機能、及びgrectgrotategsquare命令が削除されたものです。
HSP2.XXではJPEGファイルの読み込みも出来なくなってしまいましたが、
HSP3ではJPEGファイルの読み込みは可能となっています。
標準ランタイム「hsprt」に比べて大体24KBほど小さくすることが出来ます。
hsp3cl.hrt コンソール版HSP(HSPCL)のランタイムです。
コマンドプロンプト上で動作するバッチの代用やWEBサーバでのCGI実行
その他、テキストのみのEXE時として有効です。
このランタイムを使用すると、実行時のCPU使用率・メモリ使用率の軽減だけでなく、
実行ファイルサイズも標準ランタイム「hsprt」に比べ37KB弱も縮められます。
HSPdir/sample/hspcl」ディレクトリにHSPCL用サンプルが置いています。
ウィンドウ・オブジェクト・マルチメディアを使用しない場合にご利用ください。
hsp3hg.hrt 標準の命令以外にHGIMG3の機能をDLLなしで使用できるようにするランタイム。
HGIMG3の命令を使用しているけど、プラグインなしで配布したい場合にご利用ください。
hsp3mt.hrt HSP3.2で追加されたマルチスレッド対応ランタイム。
HSP3.2時点では標準ランタイムと機能的な差はなく、
マルチコアCPUを使用してマルチスレッドな処理を行う場合、
標準ランタイムよりもパフォーマンス(全体の処理速度)が向上するようです。
現在は実験的に追加されたもので、標準ランタイムに比べて大体64KBほど大きくなります。
「sample」ディレクトリ
HSP3で実行できるサンプルスクリプトの入ったディレクトリ。
基本からCOM操作・標準付属DLL・スクリーンセイバ・HSP3で出来るようになった機能のサンプル集。
初めての方は最低でも「HSPDIR/sample/basic」は見ておくことを推奨します。
sampleディレクトリのファイルには「HSPDIR/sampview.exe」から閲覧・実行することも出来ます。
その他の「HSPDIR」直下にある主要なファイル
index.htm HSPマニュアルの総合インデックスファイルです。
HSPDIR/doc」のファイル、「HSPDIR/hsphelp」の命令リファレンスにアクセスします。
hsed3.exe HSP3の新スクリプトエディタです。
タブ分け・キーワード毎の色分け・複数回アンドゥと言った機能が付いています。
hsed3le.exe Version2.XX同一形式のエディタ。
Version2.XXから慣れ親しんで使いやすいと思う方や新エディタでは重い方はどうぞ。
hsp3demo.exe HSPとはどういったものかを簡単に確認することが出来るデモです。
hsp3.exe HSPスクリプトエディタのデバッグ時に必要な実行ファイルです。
hsptv.exe HSPTVブラウザです。
マニュアルについては「HSPDIR/hsptv/hsptv.htm」をご覧ください。
hsptmp
hsptmp.i
obj
スクリプトファイル・実行オブジェクトの一時ファイルです。
HSPスクリプトエディタを実行した際に自動的に生成されるもので、
作成直後には削除しても全然問題のないものとなっています。
HSPディレクトリが出来た一番初期の段階では作成されていません。
start.ax 中間オブジェクトファイルです。
このファイルが「HSPDIR」に存在すると「HSPDIR/HSP3.exe」実行時確認できます。
実行ファイル作成時に必要となるもので、EXEを作成した後は削除して問題ありません。
packfile 実行ファイル作成時にEXEファイルに同梱するファイルリストです。
packfileは削除してしまっても問題はありませんが、
次回のEXE作成時に再度パックするファイルを選択する必要があります。
(「実行ファイル自動生成」時を除く)
hsprt 標準ランタイムファイルです。
拡張子がなく一見、上記ファイルのように一時ファイルと勘違いしそうですが
重要なファイルですので削除してしまわないように注意してください。
LSUin000.exe HSP3のアンインストーラです。
HSPファイルやショートカット・レジストリを削除します。
使用しなくなって削除したくなった場合に直接実行するか、
コントロールパネルのプログラム削除でHSP3を選択すると起動します。
細かいものとしてはまだ他にもありますが、上記を抑えておけば主要なことは把握したも同然です。
index.htmからHSPに関する様々な情報を入手できますので、
時間があるのならココを抑えておくともっと深くまで知ることが出来ることでしょう。
ただ、かなりの情報量であり、読むと丸一日費やす結果になることでしょう。
どこが重要でどこが重要でないかの切り分けは各々違いますので一概には申せません。
スクリプトや各命令構文でのポイントについては当講座でしっかり説明する予定です。
次章からは早速「HSPDIR/hsed3.exe」を使用してHSPによるプログラム作成が始まります。
HSP2の入門講座では、ココでヘルプを見ると、と言う書き方をしている箇所が多数ありました。
HSP3では「ヘルプレス(ヘルプを用いない)」講座を目指しますので、
原則はヘルプがなくても大丈夫なはずです。
だからといってヘルプを捨ててもいいのか等と解釈はしないでくださいね。
ヘルプに載っていること全てを当講座から吸収することは難しいです。(更新頻度も知れてるし)
それでも当講座を活用してもらえることを望みますのでヨロシク!