------------------------------------------------------------------------------
HSP3Dish ver3.5                                     HSP : Hot Soup Processor  
Users Manual                               copyright 2016 (c) onion software  
------------------------------------------------------------------------------

・HSP3UTFとは

	HSP3UTFは、HSP3の標準ランタイムをunicode(UTF-8)文字ベースで動作させるものです。
	通常のHSP3ランタイムと同等の機能を持っていますが、文字列の扱いのみ
	unicode(UTF-8)となっています。
	SJISの文字コードを扱う標準のHSPでは表現できない文字を扱うことのできる
	新しいHSP3として今後も進化を続ける予定です。


・HSP3Dishの使用方法

	最初の行に、以下のコードを追加する必要があります。

	#include "hsp3utf.as"

	以降は、通常のHSP3スクリプトと同様にソースを記述することができます。
	文字列の操作や扱いは通常と変わりませんが、noteload,notesave命令で
	扱うテキストファイルはUTF-8のコードになります。

	サンプルスクリプトが、sample/hsp3utfフォルダに含まれていますので、
	参考にしてみてください。


・hspcmpによる変換

	現在のバージョンでは、スクリプトエディタで編集する文字コードは
	SJISになりますので、ソースコード自体をunicodeで記述することはできません。
	ただし、独自のエディタでソースコードをUTF-8形式で記述し、
	コマンドラインコンパイラ(hspcmp)でコンパイルすることで、
	UTF-8形式によるソースの記述も可能になります。
	コマンドラインから、

		hspcmp -i script.hsp

	のように実行することで、script.hspをUTF-8形式としてscript.axに変換します。


・新規に追加された命令

	HSP3UTFランタイム使用時は、SJIS形式の文字列をサポートするために
	いくつかの追加命令を使用することができます。

		cnvatos(p1) 		ANSI文字列を通常文字列に変換

		p1=変数 : 内容を読み出す元の変数名

		変数に保存されたデータをANSI(ShiftJIS)文字列として読み取り、
		 通常の文字列に変換したものを返す関数です。

		cnvstoa p1,"string"	通常文字列をANSI文字列に変換

		p1=変数  : 結果を書き込む変数名
		"string" : 変換元の文字列

		"文字列"で指定されたデータをANSI(ShiftJIS)文字列に変換して
		変数バッファに保存します。
		p1で指定される変数には、あらかじめ文字列型として変換に
		十分なバッファサイズを確保しておく必要があります。

	これらの命令は、標準のHSP3ではエラーとなりますので注意してください。


・今後の予定

	HSP3UTFランタイムは、今後動作の安定を目指してテストを行ない
	ゆくゆくはHSP3Dish,HGIMG4,HSP3_64,HSP3MTのランタイムを
	UTF-8ベースに置き換えていくことを検討しています。
	(HSP3Dishのandroid,iOS,emscripten上では既にUTF-8ベースで動作しています)

	尚、通常版のHSP3,HGIMG3はそのままの文字コードで引き続き提供されます。


・謝辞

	hsp3utfは、tds12さんが作成し公開されているものをベースに同梱させていただきました。
	OpenHSP及びHSPTV!掲示板で多くの修正及び助言を頂いた皆様に感謝致します。


-------------------------------------------------------------------------------
                                                HSP users manual / end of file 
-------------------------------------------------------------------------------
