SimROBOTの転送プログラムの解析1
SimROBOTがどのようなプログラムを転送しているのか、RZ1BasicでSimROBOTが転送したプログラムを吸い出して、デコンパイルしてみました。
転送後、RZ1Basicで、転送されているプログラムを吸い出す。
ポップアップメニューでソースコードを選択すると、逆コンパイルされます。以下のようなコードが転送されていますた。※変数名、ラベル名はオブジェクトコードの中には記述されない為、それらの名称は逆コンパイルの際にRZ1Basicが自動的に付けたものです。
- IF 1=1 THEN....の辺りがなんか変なコードを転送してます。
ま、問題なく動くとは思うけど。。。 - 2つしか転送していませんが、ON...GOTOのルーチンは32個分用意されています。
- PTP ALLON, OFFをルーチンごとに行っている。
あんま必要ないと思うけど。。。 - DELAYやSPEEDの変換は、やっぱ少しズレてる。
例:rsfのインポートではDELAY 2000が、フレーム数66コマとしてSimROBOTに読込まれるんだけど、転送すると、1950になっていた。 - DELAY 0が続くような変換がある。
動かないキーフレームが連続しているので、仕方がないと思う。
以下がソースコード
DIM A0 AS BYTE
DIM A1 AS BYTE
'====================
PTP SETON
PTP ALLON
DIR G6A,1,0,0,1,0,0
DIR G6B,1,1,1,1,1,1
DIR G6C,0,0,0,0,0,0
DIR G6D,0,1,1,0,1,0
GETMOTORSET G6A,1,1,1,1,1,0
GETMOTORSET G6B,1,1,1,0,0,0
GETMOTORSET G6C,1,1,1,0,0,0
GETMOTORSET G6D,1,1,1,1,1,0
SPEED 5
MOTOR G24
IF 1=1 THEN
A0=0
ELSEIF 1=2 THEN
A0=32
ELSEIF 1=3 THEN
A0=64
ELSE
A0=96
ENDIF
A1=0
'====================
LABEL35:
A1=REMOCON(1)
A1=A1-A0
ON A1 GOTO LABEL35,LABEL36,LABEL37,LABEL38,LABEL39,LABEL40,LABEL41,LABEL42,LABEL43,LABEL44,LABEL45,LABEL46,LABEL47,LABEL48,LABEL49,LABEL50,LABEL51,LABEL52,LABEL53,LABEL54,LABEL55,LABEL56,LABEL57,LABEL58,LABEL59,LABEL60,LABEL61,LABEL62,LABEL63,LABEL64,LABEL65,LABEL66,LABEL67
GOTO LABEL35
END
'====================
LABEL36:
A1=0
PTP ALLON
MOVE G24,100,76,145,93,100,100,100,30,80,100,100,100,100,30,80,100,100,100,100,76,145,93,100,100
SPEED 10
MOVE G24,100,58,135,160,100,100,100,30,80,100,100,100,100,30,80,100,100,100,100,58,135,160,100,100
WAIT
DELAY 1950
SPEED 8
MOVE G24,100,76,145,93,100,100,100,30,80,100,100,100,100,30,80,100,100,100,100,76,145,93,100,100
WAIT
DELAY 450
PTP ALLOFF
GOTO LABEL35
'====================
LABEL37:
A1=0
PTP ALLON
MOVE G24,100,76,145,93,100,100,100,30,80,100,100,100,100,30,80,100,100,100,100,76,145,93,100,100
SPEED 7
MOVE G24,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100
WAIT
DELAY 0
DELAY 0
DELAY 0
DELAY 0
SPEED 6
MOVE G24,100,76,145,93,100,100,100,168,150,100,100,100,100,168,150,100,100,100,100,76,145,93,100,100
WAIT
DELAY 450
SPEED 8
MOVE G24,100,76,145,93,100,100,100,30,80,100,100,100,100,30,80,100,100,100,100,76,145,93,100,100
WAIT
DELAY 150
PTP ALLOFF
GOTO LABEL35
'====================
LABEL38:
A1=0
GOTO LABEL35
'====================
LABEL39:
A1=0
GOTO LABEL35
'====================
LABEL40:
A1=0
GOTO LABEL35
'====================
.........
.........
.........
LABEL67までつづきます。
----------------
にほんブログ村
| 固定リンク
「週刊 ロボザック」カテゴリの記事
- 関東ロボット練習会#83に行ってきました(2013.05.06)
- 関東ロボット練習会#83に行く事にした(2013.04.17)
- 週刊 ロボザック、ロボゼロ、ロビ の冊子検索(2012.12.07)
- RBT-001を繋げてみる(20):bt_sample_XeroZak 0.1.0 公開(2011.08.30)
- USB-PS2コントローラでRZ1Basicのシミュレーションをしてみた(2011.08.01)
コメント