----------------------------------------------------------------------------------
  NNsi}NsGW(Ver.1.06)ɂĂ̊o (Jul. 19, 2006)
----------------------------------------------------------------------------------

! XNvgdl
* PalmDBXNvgƂADB̂PR[hPR}hƂăR}hsB
** R[h̃CfbNX(0`n)ɃR}hsB

* R[h\́A\ NNshMacroRecordƂB

! R[h\dl

  NNshMacroRecord
 
 seqNum(UInt16)opCode(UInt16)dst(UInt8)src(UInt8)MacroData() 
 

* seqNum F V[PXԍBKR[hCfbNX{P̐i[B
            WvR}h̃WvԍƂĎgpB 

* opCode F }NsR[hBȉ̃R}h󂯕tB

     NNSH_MACROCMD_MACROEND     // }NI
     NNSH_MACROCMD_MOVE         // 
     NNSH_MACROCMD_ADD          // Z
     NNSH_MACROCMD_SUB          // Z
     NNSH_MACROCMD_AND          // _
     NNSH_MACROCMD_OR           // _a
     NNSH_MACROCMD_XOR          // rI_a
     NNSH_MACROCMD_MESSAGE      // Oo
     NNSH_MACROCMD_EXECUTE      // @\̎s
     NNSH_MACROCMD_CMP          // l̔r
     NNSH_MACROCMD_JMP          // Wv
     NNSH_MACROCMD_JZ           // vꍇWv
     NNSH_MACROCMD_JNZ          // vȂꍇWv
     NNSH_MACROCMD_BEEP         // r[v炷
     NNSH_MACROCMD_BBSTYPE      // ^uBBS^Cv
     NNSH_MACROCMD_STRSTR       // X^C񂪊܂܂邩ǂ
     NNSH_MACROCMD_STRCMP       // X^C񂪈v邩ǂ
     NNSH_MACROCMD_SETTABNUM    // ^uɊ܂܂鐔
     NNSH_MACROCMD_GETMESNUM    // XɊ܂܂郁bZ[W
     NNSH_MACROCMD_MESSTATUS    // XԂ
     NNSH_MACROCMD_IMPORT       // NNsiݒC|[g
     NNSH_MACROCMD_EXPORT       // NNsiݒGNX|[g
     NNSH_MACROCMD_OPERATE      // NNsiݒ̒lݒ
     NNSH_MACROCMD_STATUS       // NNsiݒ̒l擾
     NNSH_MACROCMD_LAUNCHDA     // DAN
     NNSH_MACROCMD_CLIPCOPY     // Nbv{[hɕRs[(1.01)
     NNSH_MACROCMD_CLIPADD      // Nbv{[hɕA(1.01)
     NNSH_MACROCMD_CLIPINSTR    // Nbv{[h̕Ɋ܂܂邩mF(1.01)
     NNSH_MACROCMD_TITLECLIP    // X^CgNbv{[hɃRs[(1.01)
     NNSH_MACROCMD_SET_FINDBBSSTR // Nbv{[h̕pɂ(1.02)
     NNSH_MACROCMD_SET_FINDTHREADSTR // Nbv{[h̕Xpɂ(1.02)
     NNSH_MACROCMD_UPDATE_RESNUM // X̃XXV(1.03)
     NNSH_MACROCMD_JPL          // l傫ꍇɂ̓Wv(1.03)
     NNSH_MACROCMD_JMI          // lꍇɂ̓Wv(1.03)
     NNSH_MACROCMD_OUTPUTTITLE  // X^CgOo(1.03)
     NNSH_MACROCMD_OUTPUTCLIP   // Nbv{[h̓eOo(1.03)
     NNSH_MACROCMD_REMARK       // ߕ(Ȃ) (1.03)
     NNSH_MACROCMD_PUSH         // X^bNPUSH(1.04)
     NNSH_MACROCMD_POP          // X^bNPOP(1.04)
     NNSH_MACROCMD_GETRECNUM    // I𒆃X̃R[hԍ擾(1.04)
     NNSH_MACROCMD_FINDTHREADSTRCOPY  // XpNbv{[hɃRs[(1.04)
     NNSH_MACROCMD_INPUTDIALOG  // ͂ANbv{[hփRs[ (1.05)
     NNSH_MACROCMD_OUTPUTDIALOG // o͂ (1.05)
     NNSH_MACROCMD_CONFIRMDIALOG // Nbv{[h̕\AOK/Cancel͂ (1.05)
     NNSH_MACROCMD_MESATTRIBUTE  // X̑l (1.06)

* dst F  }NsR[h̎sʂi[郌WX^ԍw肷B
() WX^́AGR0(0xe0)`GR15(0xef)16̂ǂꂩB
         WX^̎w肪ȂꍇAُ͈킾ꍇAIGR0w
         Ƃɂă}NssB

         }NsR[hWv(JZ, JNZ)̏ꍇɁAdst̓WvƂȂB
         (dstɎw肳ꂽWX^ƃ[rʂɂWv邩߂B)


* src F  }NsR[hŎgp郌WX^ԍw肷B
() WX^́AGR0(0xe0)`GRf(0xef)16̂ǂꂩB
         ̍ڂŃWX^̎w肪ȂꍇAmacroDataoperatorɒlw
        ꂽ̂Ƃă}NssB


* macroData F (\)
        }Nsf[^Bl╶w肷BANNsiݒ̒lݒA
       lQƂ̏ꍇɂ́Aǂ̐ݒlǂݍނ̎wsB

        macroDatáA^Cvf[^̏ꍇƁAl^Cvf[^̏ꍇ
       \قȂB

** ^Cvf[^̏ꍇ
 
 operator(UInt16)                data(Char[32])                    
 
   operator F f[^̑BiӖ͊e}NsR}hňقȂj
   data     F f[^BiNULL^[~l[gBj


** l^Cvf[^̏ꍇ
 
 operator(UInt16)subCommand(UInt16)data1(UInt16) data2(UInt16) 
 
   operator   F lf[^
   subCommand F IvVR}h
   data1      F l^IvVf[^P
   data2      F l^IvVf[^Q

! R}hdl

 NNSH_MACROCMD_MACROEND     // }NI
   }N̎sI

 NNSH_MACROCMD_MOVE         // 
   dstWX^ɒl(srcWX^ or operator)

 NNSH_MACROCMD_ADD          // Z
   dstWX^ƒl(srcWX^ or operator)̉ZsAʂdstWX^ɑ

 NNSH_MACROCMD_SUB          // Z
   dstWX^l(srcWX^ or operator)ZAʂdstWX^ɑ

 NNSH_MACROCMD_AND          // _
   dstWX^l(srcWX^ or operator)ANDƂ茋ʂdstWX^ɑ

 NNSH_MACROCMD_OR           // _a
   dstWX^l(srcWX^ or operator)ORƂ茋ʂdstWX^ɑ

 NNSH_MACROCMD_XOR          // rI_a
   dstWX^l(srcWX^ or operator)EX-ORƂ茋ʂdstWX^ɑ

 NNSH_MACROCMD_MESSAGE      // Oo
   srcWX^̒lsʃOɏo͂BsrcWX^w肳ĂȂꍇɂ́A
   macroDatadatasʃOɏo͂B

 NNSH_MACROCMD_EXECUTE      // @\̎s
   ꗗʂ@\sB(ꕔR}h́AsłȂ悤K[h
   B)

 NNSH_MACROCMD_CMP          // l̔r
   dstWX^l(srcWX^ or operator)ZAʂdstWX^ɑ

 NNSH_MACROCMD_JMP          // Wv
   l(srcWX^ or operator)̃V[PXԍփWv

 NNSH_MACROCMD_JZ           // vꍇWv
    dstWX^̒l[Ȃ΁Al(srcWX^ or operator)̃V[PXԍ
   Wv

 NNSH_MACROCMD_JNZ          // vȂꍇWv
    dstWX^̒l[łȂ΁Al(srcWX^ or operator)̃V[PX
   ԍփWv

 NNSH_MACROCMD_BEEP         // r[v炷
    r[v炷Bl(srcWX^ or operator)[̏ꍇɂ́ACtH
   炵Ȃ̏ꍇɂ̓A[炷Bl 0xffff ̏ꍇɂ́AG[
   OsʃOɏo͂B(Oɏo͂镶́AmacroDatadataŎw
   B)

 NNSH_MACROCMD_BBSTYPE      // BBS^Cv
    dstWX^ɌݑIĂXbbs^Cv

 NNSH_MACROCMD_STRSTR       // 񂪊܂܂邩ǂ
    macroDatadataŎw肳ꂽ񂪁AݑIĂX̃^Cg
  ܂܂Ă邩mFA܂܂ĂꍇɂdstWX^Ƀ[A܂܂ĂȂꍇ
  ɂ͂Pi[

 NNSH_MACROCMD_STRCMP       // 񂪈v邩ǂ
    macroDatadataŎw肳ꂽ񂪁AݑIĂX̃^Cg
  v邩mFAvꍇɂdstWX^Ƀ[AvȂꍇɂ͂P
  i[

 NNSH_MACROCMD_SETTABNUM    // ^uɊ܂܂鐔
    ݕ\̃XꗗɁA̃Xi[Ă邩ׁǍʂdst
  WX^Ɋi[

 NNSH_MACROCMD_GETMESNUM    // XɊ܂܂郁bZ[W
    ݑIĂXɊ܂܂郁bZ[WdstWX^Ɋi[

 NNSH_MACROCMD_MESSTATUS    // XԂ
    ݑIĂX̃XԂdstWX^Ɋi[

 NNSH_MACROCMD_IMPORT       // NNsiݒC|[g
    NNsiݒC|[gBVFST|[g@̏ꍇAdstWX^[̏ꍇɂ́A
   Palmf[^C|[gAdstWX^[łȂꍇɂ́AVFSf[^
   C|[g

 NNSH_MACROCMD_EXPORT       // NNsiݒGNX|[g
    NNsiݒGNX|[gB

 NNSH_MACROCMD_STATUS       // NNsiݒ̒l擾
    macroDatasubCommandɎw肳ꂽNNsiݒɂāAldstWX^Ɋi[

    [subcommand̎w]
     ENNsiNɃ}Ns(0xfffe)
     EVmFɉؒf(0xfffd)
     EVmFcheckMailDAN(0xfffc)
     EQƐpO̎擾x(0xfffb)
     EVmFɃr[v炷(0xfffa)
     EXQƐpOɃRs[ƂA폜Ɏ{(0xfff9)

 NNSH_MACROCMD_OPERATE      // NNsiݒ̒lݒ
    macroDatasubCommandɎw肳ꂽNNsiݒɂāAlύXAύXO̒l
   dstWX^Ɋi[
     
    [subcommand̎w]
     ENNsiNɃ}Ns(0xfffe)
     EVmFɉؒf(0xfffd)
     EVmFcheckMailDAN(0xfffc)
     EQƐpO̎擾x(0xfffb)
     EVmFɃr[v炷(0xfffa)
     EXQƐpOɃRs[ƂA폜Ɏ{(0xfff9)

 NNSH_MACROCMD_LAUNCHDA     // DAN
   macroData data1(ʂQ)+data2(ʂQ) ̃NG[^IDDAN

 NNSH_MACROCMD_CLIPCOPY     // Nbv{[hɕRs[(1.01)
    macroDatadataŎw肳ꂽNbv{[hɃRs[

 NNSH_MACROCMD_CLIPADD      // Nbv{[hɕA(1.01)
    macroDatadataŎw肳ꂽNbv{[h̕ɘA

 NNSH_MACROCMD_CLIPINSTR    // Nbv{[h̕Ɋ܂܂邩mF(1.01)
     macroDatadataŎw肳ꂽƃNbv{[hɂ镶
  ܂܂邩mFA܂܂ꍇɂdstWX^Ƀ[A܂܂Ȃꍇɂ͂P
  i[

 NNSH_MACROCMD_TITLECLIP    // X^CgNbv{[hɃRs[(1.01)
     X^CgNbv{[hɃRs[

 NNSH_MACROCMD_SET_FINDBBSSTR  // ^up̐ݒ(1.02)
     Nbv{[h̕^upƂĐݒ肷

 NNSH_MACROCMD_SET_FINDTHREADSTR  // X^Cp̐ݒ(1.02)
     Nbv{[h̕X^CpƂĐݒ肷

 NNSH_MACROCMD_UPDATE_RESNUM   //  X̃XԍXV(1.03)
     I𒆃X̃XԍXVAXdstWX^Ɋi[
 
 NNSH_MACROCMD_JPL             // lȂ番(1.03)
     dstWX^̒lł΁Al(srcWX^ or operator)̃V[PX
   ԍփWv

 NNSH_MACROCMD_JMI             // lȂ番(1.03)
     dstWX^̒lł΁Al(srcWX^ or operator)̃V[PX
   ԍփWv

 NNSH_MACROCMD_OUTPUTTITLE     // X^CgOo(1.03)
     I𒆃X̃^CgOɏo͂B

 NNSH_MACROCMD_OUTPUTCLIP      // Nbv{[h̓eOo(1.03)
     Nbv{[hɊi[Ă镶Oɏo͂

 NNSH_MACROCMD_REMARK          // ߕ(Ȃ) (1.03)
    Ȃ(XNvg̉ǐ̂...) 

 NNSH_MACROCMD_PUSH         // X^bNPUSH(1.04)
    f[^X^bNɃvbVBiAX^bN̈͂PUj

 NNSH_MACROCMD_POP          // X^bNPOP(1.04)
    f[^X^bN|bvB

 NNSH_MACROCMD_GETRECNUM    // I𒆂̃R[hԍ擾(1.04)
    I𒆃X̃R[hԍdstWX^Ɋi[
 
 NNSH_MACROCMD_FINDTHREADSTRCOPY  // XpNbv{[hɃRs[(1.04)
    XpNbv{[hɃRs[ 
 
 NNSH_MACROCMD_INPUTDIALOG  // ͂ (1.05)
    ̓͂𑣂A͂Nbv{[hɃRs[

 NNSH_MACROCMD_OUTPUTDIALOG // o͂ (1.05)
    _CAO\(INFORMATION\)B

 NNSH_MACROCMD_CONFIRMDIALOG // Nbv{[h̕\mF (1.05)
    Nbv{[hɂ镶_CAO\(CONFIRMATION\)
    ܂AdstWX^Ƀ{^ꂽ
    iOK (0) ܂ Cancel (0ȊO)ji[B

 NNSH_MACROCMD_MESATTRIBUTE  // X̑l (1.06)
    ݑIĂX̃XldstWX^Ɋi[

     XlɂāF8rbgf[^ŎĂ܂B
                     
                     f0erf1f2rsng----
                     
 
                             f0, f1, f2 : Cɓrbg
                             er         : 擾G[Xrbg
                             rs         : 擾\Xł邱Ƃrbg
                             ng         : XʂNG[hݒ肪ONł邱Ƃrbg
                             --         : gp(\rbg)

                          () XĺALrbgORĊmF܂B
                                0x10   // uCɓvx(L)
                                0x20   // uCɓvx(1)
                                0x30   // uCɓvx(2)
                                0x80   // uCɓvx(3)
                                0xb0   // uCɓvx(H)
                                0x40   // uG[vXł
                                0x08   // u擾\vXł
                                0x04   //  NG[hݒ OÑXł
                                0x50   // uCɓvx(L)łAuG[vXł

! L
!! f[^TCY
* ĺAUInt16ňB(̒l͈ȂB)
* ́A32oCgȓłȂB

[EOF]
