〜 スクリプト 〜
システム変数の書換2

システム変数は各種命令または関数を使用することで自動的に書き換えられるタイプの変数で、
取得は出来てもスクリプト上で通常の変数のように値を代入することができません。
コチラにあるように、statrefstr等はreturn命令のパラメータとして設定することで代入できますが、
ソレ以外のstrsizedir_cmdlineで取得できるコマンドライン等にはセットすることができませんね。
statrefstr等も含まれますが、システム変数はコチラで紹介したHSPCTX構造体に格納されています。
ここではwparamiparamlparamを書き換えるサンプルモジュールを紹介しますが、
HSP3ではmref命令を使ってHSPCTX構造体にアクセスできるものの、
HSPCTX構造体の存在自体不明なHSP2でのアクセス方法がわからない為、HSP3用とします。
もし、HSP2のシステム変数情報の保存先をご存知の方はご一報いただければ幸いです。
	

irqdat iparam値, wparam値, lparam
iparam設定するiparamの値を指定する。
wparam設定するwparamの値を指定する。
lparam設定するlparamの値を指定する。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
#module
#deffunc irqdat int i, int w, int l
	mref hspctx, 68
	hspctx.8 = i, w, l
	return
#global

	irqdat 123, 456, 789
	mes iparam
	mes wparam
	mes lparam