===========================================================================

        R-CODE for ERS-7

        Copyright (C) 2004 Sony Corporation
        All Rights Reserved.

===========================================================================
yύXz
y dvȒ z
y R-CODE \LK z
y @\ R-CODE Command ꗗ z
y  R-CODE Command ꗗ z

y R}ht@X z

y R-CODE Operator \ z
y R-CODE System ϐꗗ z
   [ϐ]
   [F  ID ꗗ]
   [AiboSound ID ꗗ]
   [AiboTone  ID ꗗ]

y R-CODE̎s@ z
y Wireless LAN ʐM z
y LED, MIDI Ή\ z

yύXz
  2005.2.16 
   E32bit̑召rƎlZsȂC܂B
  2005.12.06 
   EERS-7M3 Ή
   EL 32ms -> 16ms
y dvȒ z
  vW[͒ԂnmԂɂƎ̕ij܂B 𒷎Ԃnm
  Ȃ悤ĂB

y R-CODE \LK z

  1) R[h ASCII (Shift-JIS) łB
     sR[h CR, LF, CR+LF, LF+CR ׂ̂Ă󂯕t܂B
     1s̒iRgщsׂĊ܂߂āj 127byte ܂łłB

@2) s̓ɕt Space ܂ Tab ͖܂Biėpj

  3) ŝPڂ p  : () łȂśARgsƂĖ܂B

  4) : () Ŏn܂śAxsƌȂ܂B

        :Label

@5) R-CODE R}h́AP(Word)  : () ŋ؂ĕׂ`Ă܂B

        Word1:Word2:Word3

  6) P(Word)Ɏgp\ȕ p  _ (ް) ݂̂łB
     ̑̓L͓ʂȈӖ܂̂ŒӂĂB

  7) s // ܂܂ĂꍇAȍ~̓̕RgƂĖ܂B

        Word1:Word2:Word3  // comment

  8) : (), Space, Tab, s ͋ؕƂĈ܂̂ŁAOȂǂ
     gp邱Ƃ͏o܂B
     񓙂ł܂߂ꍇ́AŜ "" ň͂łB

        PRINT:"x = %d":x

  9) Pڂ +-0123456789 łṔAlƌȂ܂B
     ŏ̂Q 0x ܂ 0X łꍇ́A16iƌȂ܂B
     ŏ̂Q 0o ܂ 0O łꍇ́AWiƌȂ܂B
     ŏ̂Q 0b ܂ 0B łꍇ́AQiƌȂ܂B

        SET:x:0x03FC
        SET:y:0o0777
        SET:z:0b00001111

 10) ׂđ啶̒ṔAR-CODE VXepɗ\񂳂Ă܂B
     [U[ϐȂǂɎgpȂłB

        ~  SET:USER1:0 iI R-CODE VXe\PƏՓ˂댯Lj
        Z  SET:user1:0 iׂď̕ϐ𐄏j
          SET:User1:0  (Ls^CY̓VXeϐƃ_uȂ悤ɒӁj




y @\ R-CODE Command ꗗ z

R}hiXe[ggɂ͊܂߂Ȃ́j

  EDIT          vÕ[h
  END           vÕ[h̏I[
  RUN           sJn
  !             u[Ni~j



  INIT          
  EXIT          sI
  HALT          Vbg_E



  PLAY          Đ
  STOP          ~
  QUIT          ً}~
  WAIT          ҂
  SYNC          
  NONE          ɰڰ



  PRINT         

\

  :             x
  GO            Wv
  IF            f
  SWITCH        iReNXglݒj
  CSET          iReNXglݒj
  CASE          itsj
  FOR           FOR [v
  NEXT          FOR [vI[
  WHILE         WHILE [v
  WEND          WHILE [vI[
  REPEAT        REPEAT [v
  UNTIL         REPEAT [vI[
  DO            DO [v
  LOOP          DO [vI[
  BREAK         [v̒Eo
  CALL          Tu[`Ăяo
  ARG           Tu[`̎o
  RETURN        Tu[`̕A
  RET           Tu[`̕AiReNXgŁj
  ONCALL        荞݃[`̓o^
  RESUME        荞݃[`̕A

ϐ

  GLOBAL        ϐ錾
  LOCAL         Ǐϐ錾
  LET           iPj
  SET           i@\tj
  GET           QƁifobOpj
  CLR           ZT[ϐ̃NA[

  VSAVE         ϐl̕ۑ
  VLOAD         ϐl̓Ǎ
  VDUMP         ϐl̕\

Z

  ADD           Z
  SUB           Z
  MUL           Z
  DIV           Z
  MOD           ]
  AND           _
  IOR           _a
  XOR           rI_a
  NOT           ے
  LAND          _ρiu[Zj
  LIOR          _aiu[Zj
  LNOT          ے@iu[Zj
  EQ            
  NE            Ȃ
  LT            菬
  LE            菬
  GT            傫
  GE            傫
  RND           

X^bN

  PUSH          X^bNւ̐ςݍ
  POP           X^bN̎o
  DUP           X^bNgbv̕
  JT            X^bNgbv^ȂWv
  JF            X^bNgbvUȂWv




y  R-CODE Command ꗗ z

  !             u[Ni~j
  :             x
  ADD           Z
  AND           _
  ARG           Tu[`̎o
  BREAK         [v̒Eo
  CALL          Tu[`Ăяo
  CASE          itsj
  CLR           ZT[ϐ̃NA[
  CSET          iReNXglݒj
  DIV           Z
  DO            DO [v
  DUP           X^bNgbv̕
  EDIT          vÕ[h
  END           vÕ[h̏I[
  EQ            
  EXIT          sI
  FOR           FOR [v
  GE            傫
  GET           QƁifobOpj
  GLOBAL        ϐ錾
  GO            Wv
  GT            傫
  HALT          Vbg_E
  IF            f
  INIT          
  IOR           _a
  JF            X^bNgbvUȂWv
  JT            X^bNgbv^ȂWv
  LAND          _ρiu[Zj
  LE            菬
  LET           iPj
  LIOR          _aiu[Zj
  LNOT          ے@iu[Zj
  LOCAL         Ǐϐ錾
  LOOP          DO [vI[
  LT            菬
  MOD           ]
  MUL           Z
  NE            Ȃ
  NEXT          FOR [vI[
  NONE          ɰڰ
  NOT           ے
  ONCALL        荞݃[`̓o^
  PLAY          Đ
  POP           X^bN̎o
  PRINT         
  PUSH          X^bNւ̐ςݍ
  QUIT          ً}~
  REPEAT        REPEAT [v
  RESUME        荞݃[`̕A
  RET           Tu[`̕AiReNXgŁj
  RETURN        Tu[`̕A
  RND           
  RUN           sJn
  SET           i@\tj
  STOP          ~
  SUB           Z
  SWITCH        iReNXglݒj
  SYNC          
  UNTIL         REPEAT [vI[
  VDUMP         ϐl̕\
  VLOAD         ϐl̓Ǎ
  VSAVE         ϐl̕ۑ
  WAIT          ҂
  WEND          WHILE [vI[
  WHILE         WHILE [v
  XOR           rI_a


---------------------------------------------------------------------------


        EDIT - vÕ[hi PCAIBO ̃vO] j

`
        EDIT
        ` program `
        END


        


        EDIT  END ܂ł R-CODE vO[ɋL܂B
        ܂łɃ[ɓĂvOׂ͂ď܂B


        EDIT
        FOR:i:1:10
          PLAY:ACTION:xxx
          WAIT
        NEXT
        EXIT
        END

---------------------------------------------------------------------------


        END - vÕ[h̏I[

`
        EDIT
        ` program `
        END


        


        EDIT ̐Q


        EDIT
        FOR:i:1:10
          PLAY:ACTION:xxx
          WAIT
        NEXT
        EXIT
        END

---------------------------------------------------------------------------


        RUN - vO̎s

`
        RUN


        


        [ɓĂvO̎sJn܂B


        RUN

---------------------------------------------------------------------------


        EXIT - vȌI

`
        EXIT


        


        s̃vO~܂B


        EDIT
        FOR:i:1:10
          PLAY:ACTION:xxx
          WAIT
        NEXT
        EXIT
        END

---------------------------------------------------------------------------


        HALT - vȌI ^ AIBO ̃Vbg_E

`
        HALT


        


        s̃vO~AAIBO  Shutdown ܂B
        Shutdown ɂ͐b̎Ԃ|܂B


        EDIT
        FOR:i:1:10
          PLAY:ACTION:xxx
          WAIT
        NEXT
        HALT
        END

---------------------------------------------------------------------------


        INIT - R-CODE ̏

`
        INIT:<init_level>


        <init_level>        Q


        INIT:0  R-CODEŜ܂B
                NɎIɎs܂B
                [U[gpȂŉB

        INIT:1  fobO[hB
                [U[gpȂŉB

        INIT:2  ^ϐe[vN̏Ԃɖ߂܂B

        INIT:3  WirelessLAN ڑ̏B
                WirelessLAN ڑꂽɎIɎs܂B
                Qɋ@ID (AiboId) wł܂B
                [U[gpȂŉB

        INIT:4  WirelessLAN Disconnect ʒm

        INIT:9  Shutdown & Reboot


        INIT
        INIT:2

---------------------------------------------------------------------------


        ! - u[Ni~j

`
        !        ً}~sAvOs~
        !!       ʏ~sAvOs~
        !!!      ً}~sAvOs~A


        


        s̃vO~܂B
        AMS  PC AvP[ṼRg[płB


        !

---------------------------------------------------------------------------


        PLAY - Đ

`
        ʌ`

        PLAY:ACTION:<action>[:<arg1>:<arg2>:<arg3>]

        PLAY:MWCID:<mwcid>[:<arg1>:<arg2>:<arg3>]




        <action>        Action

        <arg1`3>       IvViActionɂقȂj
                        萔l܂͕ϐwł܂B

        <mwcid>         MWCommandID


        <action> Ŏw肳ꂽĐ܂B
        <action> ɎwłAction ACTION.AMS ɒ`ꂽ̂łB

        <mwcid> Ŏw肳ꂽ MWCommand s܂B
        <mwcid> mł΁AMWCommand sł܂B

        ̍Đs߂ɁA݂̎pA̓̊Jnpł邩
        ǂ܂ׂ܂B
        Jnpł͂ȂꍇAIɊJnp܂ł̎pJڂs܂B
        <action> Đ̂͊JnpɂȂĂłB

        ̃p^[
        <p>:<>   // WALKAKICKATOUCHȂ
        <p>          // TURNȂ
        <p>:<p> // MOVE_HEADȂ
        <TARGET>          // SEARCHȂ

        px̒Pʂ [] łB
        ̒Pʂ [mm] łB

        <TARGET> Ɏwł̂́A PINK_BALL łB


        PLAY:ACTION:STAND

---------------------------------------------------------------------------


        STOP - ʏ~

`
        STOP


        


        ʏ~܂B
        ҂siL[jɗ܂Ă铮͑SĔj܂B
        ݁AĐ̏ꍇ́A̓삪Ă~܂B


        STOP

---------------------------------------------------------------------------


        QUIT - ً}~

`
        QUIT


        


        ً}~܂B
        ҂siL[jɗ܂Ă铮͑SĔj܂B
        ݁AĐ̓Aɒ~܂B

         QUIT ꍇAp͕sԂɃZbg܂B


        QUIT

---------------------------------------------------------------------------


        WAIT - ̊҂ij

`
        WAIT            OɎs̊҂

        WAIT:<ms>       w莞ԑ҂
                        <ms>ɂ͒萔l܂͕ϐgpł܂
                        A <ms>=0 ̏ꍇɂ WAIT Ɠ`ɂȂ܂
                        ܂̒lw肵͕̓sł


        <ms>            ~b  [1`30000]   F\ 16[ms]



        O̓삪܂őҋ@܂B
        vO̎s͈ꎞ~܂B

        ҂̂Ԃ WAIT sĂłB

        <ms> w肵ꍇ́Aw肵Ԃꎞ~܂B


        WAIT
        WAIT:1000

---------------------------------------------------------------------------


        SYNC - OƂ̓

`
        SYNC


        


        vO SYNC sƁA͑҂ňꎞ~܂B
        R}h "SYNC" 𑗐M邱ƂɂAĊJ܂B


        SYNC

---------------------------------------------------------------------------


        NONE - ɰڰ

`
        NONE


        


        Ȃ߂łB


        NONE

---------------------------------------------------------------------------


        PRINT - iICfobOpj

`
        PRINT:<format>[:<var1>:<var2>:<var3>:<var4>:<var5>]


        <format>        tH[}bg

                        %d 10i\
                        %x 16i\

        <var1>`<var5>  ϐ


        b printf() ɗގ@ŃbZ[W\܂B

        <format>  Space  Tab ܂܂ꍇɂ́A<format> Ŝ
        dp "" ň͂ĂB


        PRINT:"x=%d y=%d":x:y

---------------------------------------------------------------------------


        :<labe> - x

`
        :<label>


        <label>          Cӂ̕


        GO  IF ̔ѐɎgp郉x`܂B
        CALL ŌĂяoTu[`̖Oɂgp܂B

        x͒PƂł݂͑ł܂Bx͎̍sɕt܂B
        x̒ʗp͈͂̓vOŚiO[ojłB


        GO:Skip
        PRINT:"Never reach this line."
        :Skip
        PRINT:"Skipped!"

---------------------------------------------------------------------------


        GO - Wv

`
        GO:<label>


        <label>          ѐ惉x


        <label> ̕tĂsɃWv܂B

        Tu[`܂̓XR[v܂Ă GO ͋֎~Ă܂B
        sꍇ́AX^bNj󂳂vO͖\܂B
        [v\̒Eo GO gƂ͖肠܂B

        \Ȍ GO ̎gp͍TĂB


        GO:Skip
        PRINT:"Never reach this line."
        :Skip
        PRINT:"Skipped!"

---------------------------------------------------------------------------


        IF - f

`
        `P
        IF:<v1>:<op>:<v2>:THEN
        ` THEN Block `
        ELSE
        ` ELSE Block `
        ENDIF

        `Q
        IF:<v1>:<op>:<v2>:CALL:<label>[:<argc>]

        `R
        IF:<v1>:<op>:<v2>:BREAK

        `S
        IF:<v1>:<op>:<v2>:<then>[:<else>]



        <v1>             퉉ZP
        <op>             rZq
        <v2>             퉉ZQ


        rZqꗗ

            =            
            ==           
            <>           Ȃ
            !=           Ȃ
            <            菬
            <=           菬
            >            傫
            >=           傫
            &            rbg̘_
            |            rbg̘_a
            ^            rbg̔rI_a
            &&           _ρiZ Bool lƂĈF 0 Ȃ΋U^ 0 ȊOȂ^ j
            ||           _aiZ Bool lƂĈF 0 Ȃ΋U^ 0 ȊOȂ^ j


        <label>          Tu[`̃x
        <argc>           Tu[`̐

        <then>           ̔ѐ惉x
        <else>           񐬗̔ѐ惉x


        <v1> <op> <v2> ō\]Ǎʂ
        ďs܂B

        `P̏ꍇF
        ^̏ꍇ THEN Block s܂B
        Ȕꍇ ELSE Block s܂B
        ELSE ` ELSE Block ` ͏ȗ\łB
        K ENDIF ŏI[ĂB

        `Q̏ꍇF
        ^̏ꍇɁA֐ <label>  CALL ܂B
        <label> ȍ~̈ɊւĂ CALL ̐QƂĂB

        `ȐꍇF
        ^̏ꍇ BREAK s܂B
        [v̒Eoɗp܂B
        ڂ BREAK ̐QƂĂB

        `S̏ꍇF
        ^̏ꍇ <then> x GO ܂B
        Ȕꍇ <else> x GO ܂B
        GO   QƂĂB
        \ȌǍ`̎gp͔ĂB

        `T̏ꍇF
        ^̏ꍇ THEN Block s܂B
        Ȕꍇ ELSEIF ̏] ܂B
        K ENDIF ŏI[ĂB


        IF:x:=:0:THEN
          PRINT:"x is 0"
        ELSE
          PRINT:"x is not 0"
        ENDIF

---------------------------------------------------------------------------


        SWITCH - iReNXgl̐ݒj

`
        SWITCH:<v>


        <v>            ϐ͒萔


        <v> ̒lReNXglƂĐݒ肵܂B

        CASE Ƃ̑gݍ킹ɂA܂B


        SWITCH:x
        CASE:1:PRINT:"x = 1"
        CASE:2:PRINT:"x = 2"
        CASE:2:PRINT:"(two)"
        CASE:3:PRINT:"x = 3"
        CASE:ELSE:PRINT:"x is not 1"
        CASE:ELSE:PRINT:"x is not 2"
        CASE:ELSE:PRINT:"x is not 3"

---------------------------------------------------------------------------


        CSET - iReNXgl̐ݒj

`
        CSET:<v1>:<op>:<v2>:<v3>


        <v1>           퉉ZP
        <op>           rZq
        <v2>           퉉ZQ

        <v3>           ϐ͒萔


        <v1> <op> <v2> ō\]Ǎʂ^Ȃ
        <v3> ̒lReNXglƂĐݒ肵܂B

        CSET ́ucςݖ߁vłB
        CSET AČꂽꍇA^ɂȂ CSET ȍ~ CSET ͖
        ܂B

        CASE Ƃ̑gݍ킹ɂA܂B


        CSET:x:<:10:1
        CSET:x:<:20:2
        CSET:x:<:30:3
        CSET:x:<:40:4
        CSET:x:<:50:5
        CASE:1:PRINT:"x < 10"
        CASE:2:PRINT:"x < 20"
        CASE:3:PRINT:"x < 30"
        CASE:4:PRINT:"x < 40"
        CASE:5:PRINT:"x < 50"

---------------------------------------------------------------------------


        CASE - itsj

`
        CASE:<const>:<command>

        CASE:ELSE:<command>


        <const>          ReNXgli萔łȂĂȂȂȂj

        <command>        Cӂ R-CODE R}hiA CASE ͏j


        ReNXgl <const> Ɠ <command> s܂B

        A CASE ̍Ō㕔ɂ CASE:ELSE wł܂B
        ǂ CASE  <const> ɂȂꍇ ELSE  <command>
        s܂B


        SWITCH:x
        CASE:1:PRINT:"x = 1"
        CASE:2:PRINT:"x = 2"
        CASE:2:PRINT:"(two)"
        CASE:3:PRINT:"x = 3"
        CASE:ELSE:PRINT:"x is not 1"
        CASE:ELSE:PRINT:"x is not 2"
        CASE:ELSE:PRINT:"x is not 3"

---------------------------------------------------------------------------


        FOR`NEXT - [v\

`
        FOR:<var>:<from>:<to>[:<step>]
        ` commands `
        NEXT


        <var>             [vϐ
        <from>            Jnl
        <to>              Il
        <step>            l


        ϐ <var> ̒l <from>  <to> ܂ <step> Ȃ
        NEXT ܂ł̕ `commands` JԂs܂B


        FOR:i:1:10
          PRINT:"i=%d":i
        NEXT

        FOR:i:10:1:-1
          PRINT:"i=%d":i
        NEXT

---------------------------------------------------------------------------


        WHILE`WEND - [v\

`
        WHILE:<v1>:<op>:<v2>
        ` commands `
        WEND


        <v1>                퉉ZP
        <op>                rZq
        <v2>                퉉ZQ


        <v1> <op> <v2> ō\]̌ʂ^łԁA
        WEND ܂ł̕ `commands` JԂs܂B


        SET:i:0
        WHILE:i:<:10
          PRINT:"i=%d":i
        WEND

---------------------------------------------------------------------------


        REPEAT`UNTIL - [v\

`
        REPEAT
        ` commands `
        UNTIL:<v1>:<op>:<v2>


        <v1>                퉉ZP
        <op>                rZq
        <v2>                퉉ZQ


        UNTIL ܂ł̕ `commands` A<v1> <op> <v2> ō\
        ^ɂȂ܂ŌJԂs܂B

        ` commands` ͕KP͎s܂B


        SET:i:0
        REPEAT
          PRINT:"i=%d":i
        UNTIL:i:>=:10

---------------------------------------------------------------------------


        DO`LOOP - [v\

`
        DO[:WHILE|UNTIL:<v1>:<op>:<v2>]
        ` commands `
        LOOP[:WHILE|UNTIL:<v1>:<op>:<v2>]


        <v1>                퉉ZP
        <op>                rZq
        <v2>                퉉ZQ


        DO`LOOP Ԃ̕ ` commands ` JԂs܂B

        DO  LOOP ɂ͏w\ŁAǂ炩̏𖞂
        [v𔲂܂B

        WHILE w肵ꍇ͏^̊ԃ[v܂B
        UNTIL w肵ꍇ͏^ɂȂɃ[v𔲂܂B

        DO ɂ LOOP ɂw肵Ȃꍇɂ͖[v
        Ȃ܂B



---------------------------------------------------------------------------


        BREAK - [v\̒Eo
`
        BREAK[:<break_level>]


        <break_level>   Eo[v\̃lXgw肵܂B
                        萔lłKv܂B
                        ϐ͎wł܂B
                        w̖ꍇ 1 łB


        ݎs̃[v\Eo܂B
        ׂẴ[v\ŋʂɎg܂B


        FOR:i:1:100
          IF:i:>:10:BREAK
          PRINT:"i=%d":i
        NEXT

---------------------------------------------------------------------------


        CALL - Tu[`̌Ăяo

`
        CALL:<label>[:<argc>]


        <label>            ĂяoTu[`̃x
        <argc>             O PUSH ̌


        <label> ̃Tu[`R[܂B
        O PUSH ߂ŔCӌ̈X^bNɐς݁AnƂ\łB
        <argc> ɂ̓X^bNɐς񂾈̌w肵܂B

        Tu[`ĂяoꍇA܂ł̃ReNXgl̓X^bN
        ޔARETURNŌĂяoɖ߂ɉ񕜂܂B


        CALL:sub1

        PUSH:10     // 1
        PUSH:200    // 2
        PUSH:3000   // 3
        CALL:sub2:3

---------------------------------------------------------------------------


        ARG - Tu[`̎o

`
        ARG:<var>


        <var>                ϐ


        Tu[`̒lϐ <var> Ɏo܂B
        PUSH Őς܂ꂽƓ̂̂ ARG Ŏ󂯎Kv܂B
        󂯎̏Ԃ́APUSH Őς܂ꂽ FirstIn-FirstOut łB
        ʏ̃X^bN̂悤 FirstIn-LastOut ł͂Ȃ̂ŒӂĂB


        Ăяo:
        PUSH:10
        PUSH:200
        PUSH:3000
        CALL:sub
        c

        Tu[`F
        :sub
        ARG:arg1    // arg1  10
        ARG:arg2    // arg2  200
        ARG:arg3    // arg3  3000
        c          // arg1`3  LOCAL ϐƂėpӂ܂B
                    // ʓr LOCAL 錾Kv͗L܂B

---------------------------------------------------------------------------


        RETURN - Tu[`̕A

`
        RETURN[:<return_value>]


        <return_value>        ߂l


        Tu[`̕As܂B
        ߂l <return_value> w肷邱Ƃ\łB
        ߂l͌Ăяo POP gĎ󂯎܂B


        Ăяo:
        CALL:sub
        POP:rc     // ϐ rc ɖ߂l (123) 󂯎
        c         // ߂lԂTu[`Ăяoꍇ͕KKv

        Tu[`F
        :sub
        c
        RETURN:123

---------------------------------------------------------------------------


        RET - Tu[`̕AiReNXglؑ֔Łj

`
        RET:<context>


        <context>        ReXNgl


        Tu[`̕As܂B
        AAReNXgl <context> ɐݒ肳܂B
        <context> ̒l 0 ̎́AĂяõReNXgl񕜂܂B


        Ăяo:
        CALL:sub
        CASE:1:PRINT:"case 1..."
        CASE:2:PRINT:"case 2..."
        CASE:3:PRINT:"case 3..."
        c

        Tu[`F
        :sub
        c
        RET:1
        c
        RET:2
        c
        RET:3

---------------------------------------------------------------------------


        ONCALL - 荞ݏ[`̓o^^

`
        ONCALL:<v1>:<op>:<v2>:<label>[:<resume_type>:<resume_label>]

        ONCALL:<-n>


        <v1>                퉉ZP
        <op>                rZq
        <v2>                퉉ZQ

        <label>             荞ݏ[`̃x

        <resume_type>       A`
        <resume_label>      ÃWv惉x

        <-n>                o^폜銄荞݃[`̐


        <v1> <op> <v2> ō\Ɋ荞݃[`
        <label>  CALL 悤ɓo^܂B
        ̎w@ IF ƓłB

        荞݃[`̕A͈ȉ̂悤ɍs܂B
        <resume_type>
          0  荞݂ɕA
          1  荞݂ɕAA<resume_label>  GO B
          2  ONCALL̈ʒuɕA
          3  ONCALL̈ʒuɕAA<resume_label>  GO B
          4  vO̐擪ɕAiׂẴX^bN̓NA[j
          5  vO̐擪ɕAA<resume_label>  GO B

        L 2`5 ̏ꍇAΉ ONCALL ȍ~ ONCALL o^͖܂B
        A 3,5 ̏ꍇɂ́AAʒuƓx ONCALL o^͕ۑ܂B

        ̔̓Xe[ggiR-CODE ̂Psj̎sɍs܂B

        d荞݂͋֎~Ă܂B(܂)

        ONCALL ̓Tu[`̃lXg̉e󂯂܂B
        Tu[`œo^ꂽ ONCALL ́ÃTu[`
        ƖɂȂ܂B


        <-n> w肵ꍇAOɓo^ n  ONCALL 𖕏܂B
        <-n> ͕̐łȂĂ͂܂B


        ONCALL:RFLeg_ON:=:1:9000

---------------------------------------------------------------------------


        RESUME - 荞݃[`̕A

`
        RESUME


        


        荞݃[`̕As܂B
        CALL ɑ΂ RETURN ɑ܂B
        荞݃[`̕A RETURN pĂ͂܂B
        Aʒu͑Ή ONCALL  <resume_type> Ɉˑ܂B


        RESUME

---------------------------------------------------------------------------


        GLOBAL - ϐ錾

`
        GLOBAL:<var>[:<init_value>]


        <var>               ϐ
        <init_value>        l


        ϐ <var> pӂ܂B
        <init_value> w肵ꍇ́A̒lɏݒ肳܂B

        GLOBAL ɂ LOCAL ɂ錾ĂȂϐgpꍇ
        R-CODE ɂĂ̖ȎϐIɗpӂ܂B


        GLOBAL:x:0

---------------------------------------------------------------------------


        LOCAL - Ǐϐ錾

`
        LOCAL:<var>[:<init_value>]


        <var>               ϐ
        <init_value>        l


        Ǐϐ <var> pӂ܂B
        <init_value> w肵ꍇ́A̒lɏݒ肳܂B

        Ǐϐ̓X^bNɗpӂ܂B
        Tu[`XR[v𔲂ꍇÄ̗͊J܂B


        LOCAL:y:0

---------------------------------------------------------------------------


        LET - ϐւ̒l̑
`
        LET:<var>:<value>


        <var>                ϐ
        <value>              liϐ͒萔j


        ϐւ̒l̑s܂B
        SET ̂悤ȓ@\͓܂B


        LET:x:1

---------------------------------------------------------------------------


        SET - ϐւ̒l̐ݒ

`
        SET:<var>:<value>


        <var>                ϐ
        <value>              liϐ͒萔j


        ϐւ̒l̐ݒs܂B
        ϐɂĂ͈ȉ̓@\܂B

        Power           d On/Off 𐧌䂵܂B
                         2001/03/09 
                        ݍ݌oŒE͏Ԃɂ鎞 SET:Power:1 
                        QC߂Ă܂܂B
                        Smۂ̂߁Aϐ Power ɂd On/Off 
                        @\ȂȂ܂B
                        ϐ͎̂̂cĂ܂̂ŁAvO̕ύX
                        KvL܂B

        Head_ON        ̒l̓ZT[ɂĈxZbgƎ 0 ɖ߂Ȃ̂
        Head_LONG      SET g 0 ɖ߂Kv܂B
        BackF_ON        
        BackM_ON        
        BackR_ON        
        BackFR_LONG     
        BackF_Jaw_LONG  
        Back_Pat        
        BackR_Hit       
        Jaw_ON          
        RFLeg_ON        
        RFLeg_OFF       
        LFLeg_ON        
        LFLeg_OFF       
        RRLeg_ON        
        RRLeg_OFF       
        LRLeg_ON        
        LRLeg_OFF       


        SET:Power:1

---------------------------------------------------------------------------


        GET - ϐl̎Q

`
        GET:<var>


        <var>                ϐ


        ϐ <var> ̒lR\[ɕ\܂B
        fobOpłB


        GET:x

---------------------------------------------------------------------------


        CLR - ZT[ϐ̃NA[

`
        CLR:SENSORS


        


        ZT[ϐ̂AŏIlێ`̕ϐ̒l
        ONA[܂B


        CLR:SENSORS

---------------------------------------------------------------------------


        VSAVE - ϐl̕ۑ

`
        VSAVE:<var>


        <var>                ϐ


        ϐ̒l[XeBbÑt@Cɕۑ܂B
        ۑt@C

            /OPEN-R/APP/PC/AMS/<ϐ>.SAV

        łB

        ӁI
        t@CVXe̐ɂAۑłϐ
        őW܂łłB


        VSAVE:x

---------------------------------------------------------------------------


        VLOAD - ϐl̓Ǎ

`
        VLOAD:<var>


        <var>                ϐ


        ϐ̒l[XeBbÑt@Cǂݍ݂܂B
        ǂݍ܂t@C

            /OPEN-R/APP/PC/AMS/<ϐ>.SAV

        łB

        ӁI
        t@CVXe̐ɂAǂݍ߂ϐ
        őW܂łłB


        VLOAD:x

---------------------------------------------------------------------------


        VDUMP - ϐl̕\

`
        VDUMP:<var>


        <var>                ϐ


        ϐ̒lȉ̏ŃR\[ɏo͂܂B

            <ϐ> = <ϐl>

        WirelessLANoRŐڑĂ鎞̃fobOp@\łB


        VDUMP:x

---------------------------------------------------------------------------



y R-CODE Operator \ z



  Z

        ZpZsAʂϐ <var> Ɋi[܂B

        <var>                ϐ
        <value>                liϐ͒萔j

        ADD:<var>:<value>        <var>  <var> + <value>          Z
        SUB:<var>:<value>        <var>  <var> - <value>@        Z
        MUL:<var>:<value>        <var>  <var> * <value>@        Z
        DIV:<var>:<value>        <var>  <var> / <value>@        Z
        MOD:<var>:<value>        <var>  <var> % <value>          ]

        AND:<var>:<value>        <var>  <var> & <value>          rbg̘_
        IOR:<var>:<value>        <var>  <var> | <value>          rbg̘_a
        XOR:<var>:<value>        <var>  <var> ^ <value>          rbg̔rI_a
        NOT:<var>:<value>        <var>        ~ <value>          rbg̘_ے

        LAND:<var>:<value>       <var>  <var> AND <value>        _
        LIOR:<var>:<value>       <var>  <var> OR  <value>        _a
        LNOT:<var>:<value>       <var>        NOT <value>        _ے

        RND:<var>:<from>:<to>    <var>  ͈ <from>`<to> ̈ll

        ̎ SET:Seed:<seed> Őݒł܂B

        LZɉALɗgX^bNZpӂĂ܂B
        퉉ZX^bN POP AʂX^bN PUSH ܂B

        ADD                      <push>  <pop2> + <pop1>        Z
        SUB                      <push>  <pop2> - <pop1>@      Z
        MUL                      <push>  <pop2> * <pop1>@      Z
        DIV                      <push>  <pop2> / <pop1>@      Z
        MOD                      <push>  <pop2> % <pop1>        ]

        AND                      <push>  <pop2> & <pop1>        rbg̘_
        IOR                      <push>  <pop2> | <pop1>        rbg̘_a
        XOR                      <push>  <pop2> ^ <pop1>        rbg̔rI_a
        NOT                      <push>         ~ <pop1>        rbg̘_ے

        LAND                     <push>  <pop2> AND <pop1>      _
        LIOR                     <push>  <pop2> OR  <pop1>      _a
        LNOT                     <push>         NOT <pop1>      _ے

        EQ                       <push>  <pop2> == <pop1>       
        NE                       <push>  <pop2> <> <pop1>       Ȃ
        LT                       <push>  <pop2> <  <pop1>       菬
        LE                       <push>  <pop2> <= <pop1>       菬
        GT                       <push>  <pop2> >  <pop1>       傫
        GE                       <push>  <pop2> >= <pop1>       傫

        RND:<from>:<to>          <push>  ͈ <from>`<to> ̈ll
        RND:<to>                 <push>  ͈     0 `<to> ̈ll

        
        X^bN POP 鏇 <pop1> <pop2> łB
          PUSH:x
          PUSH:y
          SUB
          POP:z
        cƂꍇAz ̓e x - y ɂȂ܂Bi y - x ł͂܂j

  

          PUSH:<var>      ϐl܂͒萔X^bNɐς݂܂B

          POP[:<var>]     ϐɃX^bNlo܂B
                          <var> w肵Ȃꍇ́Aol͎̂Ă܂B

        DUP               X^bNgbv𕡐X^bNɐς݂܂B

        JT:<label>        X^bN POP A̓e^ł <label> ɃWv܂B

        JF:<label>        X^bN POP A̓eUł <label> ɃWv܂B


        ӁFTu[`܂̓XR[v܂ẴX^bN͏o܂B




y R-CODE System ϐꗗ z


    R-CODE ̗pӂVXeϐ͋@Ɉˑ܂B


   [ϐ]

        AiboId          @ID (0`255)
                        WirelessLAN ڑ 0
                        WirelessLAN ڑ ip AhX̍ŉʃoCg
        AiboType        @
                        7    ERS-7

        Year            N   (2000`)
        Month              (1`12)
        Day                (1`31)
        Hour               (0`23)
        Min                (0`59)
        Sec             b   (0`59) \Qb
        Dow             j (Sun(0),Mon(1)...Sat(6))

        Seed            ̎il 1 j

        Power           d (0/1)
                        0 OFF
                        1 ON
                        Ver1.1ȍ~AӖ܂B
                        SET R}h̐QƂĂB

        Status          Xe[^X 
                        0 ʏN
                        1 A
                        ]|AꍇAvO͐擪Ďs܂B
                        ̎ 1 ɃZbg܂B

        Context         ReNXgl

        Wait            슮҂ANV̐

        Clock           NbN (16ms +1 j


        Brightness      ̖͂邳 (0`255)
        Face            炪oꂽ (0/1)              

        Pink_Ball       ݸް (0/1)                    
        Pink_Ball_H     ݸްق̐p []
        Pink_Ball_V     ݸްق̐p []
        Pink_Ball_D     ݸްٖ̋ [mm]
                        ݸްوʒǔ_̓C[WZT[̂ʒułB

        AIBONE          AIBONE (0/1)                      
        AIBONE_H        AIBONE̐p []
        AIBONE_V        AIBONE̐p []
        AIBONE_D        AIBONE̋ [mm]


        AU_Voice        Fo (0/1)                
        AU_Voice_ID     FoP (PID)     ʋL [F  ID ꗗ] Q
        AU_AiboSound    AiboSoundo (0/1)               
        AU_AiboSound_ID AiboSoundỏF (FID)    ʋL [AiboSound ID ꗗ] Q
        AU_AiboTone     AiboToneo (0/1)                
        AU_AiboTone_ID  AiboToneỏF (KID)     ʋL [AiboTone  ID ꗗ] Q

        Temp_Hi         }x (0/1)iSׁ̈A20bɋdIt܂j

        Head_Tilt       1:(㉺)̊px []
        Head_Tilt2      2:(㉺)̊px []
        Head_Pan        :(E)̊px []
        Mouth           :Jpx []
        LFLeg_1         OrJ1(֐):O̊px []
        LFLeg_2         OrJ1(֐):E̊px []
        LFLeg_3         OrJ2(I֐):O̊px []
        LRLeg_1         rJ1(Ҋ֐):O̊px []
        LRLeg_2         rJ1(Ҋ֐):E̊px []
        LRLeg_3         rJ2(G֐):O̊px []
        RFLeg_1         EOrJ1(֐):O̊px []
        RFLeg_2         EOrJ1(֐):E̊px []
        RFLeg_3         EOrJ2(G֐):O̊px []
        RRLeg_1         ErJ1(Ҋ֐):O̊px []
        RRLeg_2         ErJ1(Ҋ֐):E̊px []
        RRLeg_3         ErJ2(G֐):O̊px []
        Tail_Pan        :(E)̊px []
        Tail_Tilt       :(㉺)̊px []

        Batt_Rest       ޯذc []
        Batt_Temp       ޯذx []

        Distance_Cliff  R܂ł̋ [mm]
        Distance        Q [mm]

        Head_ON         ݻꂽ (0/1)            
        Head_LONG       ݻ3bȏ㉟ꂽ (0/1)     

        BackF_ON        wݻOꂽ (0/1)         
        BackM_ON        wݻ^ꂽ (0/1)      
        BackR_ON        wݻオꂽ (0/1)        
        BackFR_LONG     wݻO+オ3bȏ㉟ꂽ (0/1)        
        BackF_Jaw_LONG  wݻO+ݻ3bȏ㉟ꂽ (0/1)  
        Back_Pat        wݻOɕłꂽ (0/1)  
        BackR_Hit       wݻオ@ꂽ (0/1)        

        Jaw_ON          ݻꂽ (0/1)          

        RFLeg_ON        EOrݻꂽ (0/1)    
        RFLeg_OFF       EOrݻꂽ (0/1)    
        LFLeg_ON        Orݻꂽ (0/1)    
        LFLeg_OFF       Orݻꂽ (0/1)    
        RRLeg_ON        Erݻꂽ (0/1)    
        RRLeg_OFF       Erݻꂽ (0/1)    
        LRLeg_ON        rݻꂽ (0/1)    
        LRLeg_OFF       rݻꂽ (0/1)    

  ̒l͈xZbg 0 ɂ͖߂܂B
    SET g 0 ɖ߂Kv܂B


   [F  ID ꗗ]

        ID               Piǂ݁j
        1                
        2                Ȃ܂́H
        3                
        4                
        5                ͂悤
        6                ɂ
        7                ₷
        8                悤Ȃ
        9                񂫁H
        10               [
        11               肪Ƃ
        12               ߂Ȃ
        13               ΂
        14               ΂񂴂
        15               
        16               
        17               悵悵
        18               ߂
        19               ڂ
        20               
        21               
        22               ςӂ[܂
        23               ہ[
        24               Ⴎ
        25               イ͂΂
        26               ł񂲂
        27               ̂͂Ȃ
        28               Ђ炯
        29               
        30               
        31               ӂ
        32               
        33               ݂
        34               Ђ
        35               񂵂
        36               
        37               [
        38               Ƃ
        39               ͂₭
        40               
        41               ҂񂭂ځ[
        42               ݂
        43               ݂
        44               Ђ肫
        45               Ђ肽
        46               [ǂ
        47               
        48               ܂
        49               ΂
        50               ɂ΂
        51               ΂
        52               ΂
        53               ΂



   [AiboSound ID ꗗ]

        ID                Ӗ                                MIDIt@C 
        1                AIBOԃR~jP[VJn         AS01_Start_AC.mid
        2                fBAN[hɈڍs(1)        AS02_Start_ML1.mid
        3                fBAN[hɈڍs(2)        AS03_Start_ML2.mid
        4                fBAN[hɈڍs(3)        AS04_Start_ML3.mid
        5                fBAN[hI             AS05_End_ML.mid
        6                ĈA                       AS06_Hello.mid
        7                ŃoCoC                         AS07_Bye.mid
        8                ԂŖӂ                   AS08_Sleep.mid
        9                Z߂̂                       AS09_Nod_Short.mid
        10               ߂̂                       AS10_Nod_Long.mid
        11               킭킭Aǂǂ̔             AS11_Expect.mid
        12               m̔                           AS12_Yes.mid
        13               ے̔                           AS13_No.mid
        14               ^̔                           AS14_Question.mid
        15               |[Y                         AS15_Joy.mid
        16               Ɋ|[Y                   AS16_Happy.mid
        17               |[Y                         AS17_Disgust.mid
        18               ̃|[Y                         AS18_Surprise.mid
        19               ߂݂̃|[Y                       AS19_Sad.mid
        20               S̃|[Y                       AS20_Relief.mid
        21               ˂₠̔             AS21_Appeal.mid
        22               lXȓIȃANV             AS22_Action.mid
        23               _X                               AS23_Dance.mid
        24               (1)                                AS24_Song1.mid
        25               (2)                                AS25_Song2.mid
        26               Dȃ_X                       AS26_Fav_Dance.mid
        27               ||[Y                           AS27_Fear.mid
        28               V                               AS28_Greet.mid
        29               LOBe|[Y                       AS29_Pose.mid
        30               oUC                             AS30_Cheer.mid
        31               ӂ𑣂|[Y                     AS31_Look.mid
        32               Ƃ|[Y                         AS32_Abash.mid
        33               gU܂                       AS33_Charm.mid
        34               i^Cv                   AS34_Type_Check.mid
        35               Mm点ANV               AS35_Call.mid

         MIDIt@C /Sample/AiboSound tH_Œ񋟂܂B



   [AiboTone  ID ꗗ]

        ID               iRj                MIDIt@C 
        1                C5  D5  E5                  AT01.mid
        2                C5  E5  D5                  AT02.mid
        3                E5  C5  D5                  AT03.mid
        4                E5  D5  C5                  AT04.mid
        5                G5  C5  D5                  AT05.mid
        6                G5  D5  C5                  AT06.mid
        7                C5  G5  D5                  AT07.mid
        8                C5  D5  G5                  AT08.mid
        9                D5  E5  C5                  AT09.mid
        10               D5  C5  E5                  AT10.mid
        11               C5  Eb5 G5                  AT11.mid
        12               C5  G5  Eb5                 AT12.mid
        13               G5  Eb5 C5                  AT13.mid
        14               C5  E5  F5                  AT14.mid
        15               C5  F5  E5                  AT15.mid
        16               F5  C5  E5                  AT16.mid
        17               F5  E5  C5                  AT17.mid
        18               C5  F5  G5                  AT18.mid
        19               C5  G5  F5                  AT19.mid
        20               G5  C5  F5                  AT20.mid
        21               G5  F5  C5                  AT21.mid
        22               F5  C5  G5                  AT22.mid
        23               C5  D5  F5                  AT23.mid
        24               Eb5 C5  F5                  AT24.mid
        25               C5  F5  D5                  AT25.mid
        26               D5  F5  C5                  AT26.mid
        27               D5  C5  F5                  AT27.mid
        28               F5  D5  C5                  AT28.mid
        29               F5  C5  D5                  AT29.mid
        30               Eb5 F5  C5                  AT30.mid
        31               C5  Eb5 F5                  AT31.mid
        32               C5  F5  Eb5                 AT32.mid
        33               F5  C5  Eb5                 AT33.mid
        34               F5  Eb5 C5                  AT34.mid
        35               C6  D6  E6                  AT35.mid
        36               C6  E6  D6                  AT36.mid
        37               E6  C6  D6                  AT37.mid
        38               E6  D6  E6                  AT38.mid
        39               G6  C6  D6                  AT39.mid
        40               G6  D6  C6                  AT40.mid
        41               C6  G6  D6                  AT41.mid
        42               C6  D6  G6                  AT42.mid
        43               D6  E6  C6                  AT43.mid
        44               D6  C6  E6                  AT44.mid
        45               C6  Eb6 G6                  AT45.mid
        46               C6  G6  Eb6                 AT46.mid
        47               G6  Eb6 C6                  AT47.mid
        48               C6  E6  F6                  AT48.mid
        49               C6  F6  E6                  AT49.mid
        50               F6  C6  E6                  AT50.mid
        51               F6  E6  C6                  AT51.mid
        52               C6  F6  G6                  AT52.mid
        53               C6  G6  F6                  AT53.mid
        54               G6  C6  F6                  AT54.mid
        55               G6  F6  C6                  AT55.mid
        56               F6  C6  G6                  AT56.mid
        57               C6  D6  F6                  AT57.mid
        58               Eb6 C6  F6                  AT58.mid
        59               C6  F6  D6                  AT59.mid
        60               D6  F6  C6                  AT60.mid
        61               D6  C6  F6                  AT61.mid
        62               F6  D6  C6                  AT62.mid
        63               F6  C6  D6                  AT63.mid
        64               Eb6 F6  C6                  AT64.mid
        65               C6  Eb6 F6                  AT65.mid
        66               C6  F6  Eb6                 AT66.mid
        67               F6  C6  Eb6                 AT67.mid
        68               F6  Eb6 C6                  AT68.mid

         MIDIt@C /Sample/AiboTone tH_Œ񋟂܂B


y R-CODE̎s@ z

1) [U[쐬vO
   R-CODE ̃vO쐬AAIBOvO~O[XeBbN
   /OPEN-R/APP/PC/AMS/R-CODE.R ɒuƂŁAAIBOɃvOs邱Ƃł܂B

2) TvvO
   Redist7/sample/Maze.R ̃t@CύXāAAIBOvO~O[XeBbN
   /OPEN-R/APP/PC/AMS/R-CODE.R ɃRs[ĂB


y WirelessLAN ʐM z

********************************************************************

R-CODEŋLqvO𖳐LANŒAIBOɑ邱Ƃł܂B
WirelessLAN ڑɃftHgID,pX[hɂF؂s܂B
F؂ł̐ڑsꍇ
/OPEN-R/APP/DATA/P/OWNER.TXT 폜
/OPEN-R/APP/PC/AMS/NOAUTH.CFG
Ƃt@CĂB
NOAUTH.CFG ̓e͉ł\܂B(size=0𐄏j

F؂Windows AvP[V쐬ꍇ́A
NsmAuth Cu𗘗pĂB

ȂAڑ𖳔F؂ɂꍇAK؂ȃlbg[NZLeB
ݒ肳ĂȂꍇAlbg[Nɐڑꂽs̃}V
AIBOɃANZXł悤ɂȂ̂łӂB
********************************************************************


R-CODE Ƃ WirelessLAN ĒʐM\łB
ʐM̂߂̎dl͈ȉ̂ƂłB

   ʐM|[gF 21002 tcp
   vgRF 菇
   R[hF 8bit ASCII


ȉ telnet ɂڑ܂B
------------------------------------------------

C:\>telnet 10.0.1.1 21002                       DOSvvg

============================================
R-CODE ver2.0 (2004/05/01)                      ڑɐ
============================================      ̂悤ȃwb_[
string_buf   1 *  256K =  256K (used  0.1%)       \܂
dictionary   8 *   32K =  256K (used  0.7%)
stack        4 *   32K =  128K (used  0.3%)
statement   24 *   32K =  768K (used  0.0%)
on_call     12 *   64  =  768  (used  0.0%)
============================================
free mem.   6998912
============================================
<READY>                                         ͉\ł
PLAY:ACTION:STAND                               オƂR}h𒼐ڎs
EDIT                                            EDIT`END ŃvO𑗂܂
  FOR:i:1:10                                    ^10JԂvO
    PLAY:ACTION:SIT
    WAIT
    PLAY:ACTION:STAND
    WAIT
  NEXT
END
RUN                                             vO̎sJn܂
c
@DISS                                           @DISSŐڑ؂܂

C:\>

------------------------------------------------


y LED, MIDI Ή\ z

*.LEDRec쐬鎞ɕKvƂȂł

uK128vVelocitylɉAK_AuK2vVelocity=0ŏ^Velocity<>0œ_B
A(FaceA01`FaceA14)B(FaceB01`FaceB14)LED͓Ɏgpł܂B( A1 B2)
FaceAXX/BXXLEDʒu͈ȉOPEN-R SDK}jA̋@ ERS-7QƂĂB

Note     Noteԍ LED         K	LEDʒu
C-1`B0    0`23    iunusedj
C1         24       FaceB01       128	B1
Db1        25       FaceB02       128	B2
D1         26       FaceB03       128	B3
Eb1        27       FaceB04       128	B4
E1         28       FaceB05       128	B5
F1         29       FaceB06       128	B6
F#1        30       FaceB07       128	B7
G1         31       FaceB08       128	B8
Ab1        32       FaceB09       128	B9
A1         33       FaceB10       128	B10
Bb1        34       FaceB11       128	B11
B1         35       FaceB12       128	B12
C2         36       FaceB13       128	B13
Db2        37       FaceB14       128	B14
D2`B2     38`47   iunusedj
C3         48       FaceA01       128	A1
Db3        49       FaceA02       128	A2
D3         50       FaceA03       128	A3
Eb3        51       FaceA04       128	A4
E3         52       FaceA05       128	A5
F3         53       FaceA06       128	A1
F#3        54       FaceA07       128	A2
G3         55       FaceA08       128	A3
Ab3        56       FaceA09       128	A4
A3         57       FaceA10       128	A5
Bb3        58       FaceA11       128	A11
B3         59       FaceA12       128	A12
C4         60       FaceA13       128	A13
Db4        61       FaceA14       128	A14
D4`B4     62`71  iunusedj
C5         72       Mode(R)       2
Db5        73       Mode(G)       2
D5         74       Mode(B)       2
Eb5        75       Wireless      2
E5`A5     76`81  iunusedj
Bb5        82       HeadTouchAmber              2
B5         83       HeadTouchWhite              2
C6         84       BackTouchFrontBlue          128
Db6        85       BackTouchFrontWhite         128
D6         86       BackTouchMiddleYellow       128
Eb6        87       BackTouchMiddleWhite        128
E6         88       BackTouchRearRed            128
F6         89       BackTouchRearWhite          128
F#6`G9    90`127 iunusedj

y Action ꗗ\ z

PLAY:ACTION:<action>[:<arg1>:<arg2>:<arg3>] ŗpłAction ꗗłB

---------------------------------------------------------------------------
Action Name                    
---------------------------------------------------------------------------
SIT                             
STAND                           
LIE                             (1)
WALK                            
STOP_WALK                       s~
TURN                            񂷂
KICK                            LbN
TOUCH                           G
MOVE_HEAD                       w
TRACK_HEAD                      ǐՂ
SEARCH                          T
SEARCH.HEAD.NORMAL              ĂT
SEARCH.HEAD.SLOW                ĂT
SEARCH.HEAD.NORMALCENT          OĒT
SEARCH.HEAD.SLOWCENT            OĂT
SEARCH.HEAD.LOWCENT             ĒT
PALONE.AUTO.EAR                 𓮂
PALONE.AUTO.EARSTOP             ̓~߂
PALONE.AUTO.TAILV               ۂcɂӂ
PALONE.AUTO.TAILH               ۂɂӂ
PALONE.AUTO.TAILROT             ۂ
PALONE.AUTO.TAILD               ۂ
PALONE.AUTO.TAILSTOP            ۂ̓~߂
MOVE.HEAD.FAST                  w𑬂
MOVE.HEAD.NORMAL                w
MOVE.HEAD.SLOW                  w茩
MOVE.TURN.NORMAL                񂷂
MOVE.TURN.SLOW                  񂷂
MOVE.MOVE.NORMAL                
MOVE.MOVE.SLOW                  
CHGPOS.WALK.NORMAL              spɂ
CONTACT.RIGHT.TOUCH             ĉEŐG
CONTACT.RIGHT.TOUCH2            ĉEŐG
CONTACT.FRONT.HEAD              wfBO
CHGPOS.STATR.NORMAL             (2)
SMESS.NOTICE.NOTICE1            fobOpʒm1
SMESS.NOTICE.NOTICE2            fobOpʒm2
SMESS.ERROR.ERROR1              fobOpG[ʒm1
SMESS.ERROR.ERROR2              fobOpG[ʒm2
SMESS.MODE.CLEAR                fobOp\NA
CLIFF_DETECT_ON                 RoONiftHgj
CLIFF_DETECT_OFF                RoOFF

--------------------------------------------------------------------------------------
* "Windows" is a registered trademark of Microsoft Corporation in the US and other countries. 
