DSbasic 入門してみる(5)slot命令
次は、2つの機関車を動かしていきたいので、アドレスベタ打ちのコードをslotに直しておこうと思います。
Slotって?
Slotとは、下図のキャブ画面右側にある4つのロコアドレス登録箇所のことを指します。
上記画面だと、Slot0がアドレス3、Slot1がアドレス51、Slot2がアドレス4、Slot3がアドレス22 となります。要は、よく使うロコのアドレスを4つ登録しておくことで、これをクリックするだけで切り替えることができて便利だよー、という機能です。
※スロット番号は、0~3です。1~4ではないので注意。
DSbasicでも、このスロットを指定して命令を出すことができます。
Wikiを見てみると、Slot関連の命令として以下4つが記載されてます。
まずは基本的な命令の「getslotaddr」の動きを確認します。
これは指定したスロットのアドレスを取得するコマンドなので、スロット0~3のアドレスを取得し、それを変数に格納して警笛を鳴らす動きをみてみました。
screen(7)
s88startpwr 1
print "START S88 Control -slot test-"SLOT0 = getslotaddr(0)
SLOT1 = getslotaddr(1)
SLOT2 = getslotaddr(2)
SLOT3 = getslotaddr(3)print SLOT0
print SLOT1
print SLOT2
print SLOT3sleep 10000
fnx SLOT1,2end
実行結果は以下の通り。
スロットに設定した、アドレス3,51,4,22 と取得できました。
また18行目のfnxで、SLOT1(アドレス51)のロコが警笛を鳴らすのも確認できました。
以上で、 ある程度の動きを把握できたので、前回のアドレスベタ打ちコードをSlotベースに修正しつつ、2両を動かすコードを作ってみます。
つづく