====================================================================================================
== Release Note (TDS) ==============================================================================

 Please refer to ReleaseE.txt if you want to refer to the contents of this file in English.



 V11.083 : 2011/08/27

  E VKJ



 V11.091 : 2011/09/08

  E TDSMDMssgXxxxx() ֐ɂASML`ATS300`̃bZ[W`t@C̎gp𓯈̊֐
     ŉ\ƂB



 V11.101 : 2011/10/05
 V11.102 : 2011/10/11

  E Ǘ̖ɊւCB@\ł̕ύX͂ȂB
  


 V11.110 : 2011/11/08

  E bZ[W`t@Cgpꍇ́AsXgɊւB
    E sXg̒`Ɋւ鐧PpB̕sXg`\ƂB
    E xŕ̕sXgݒ\ƂB
    E sXǧ =0 ̏ꍇɁAbZ[W\zsȂB

  E bZ[W`t@CɂB
    E sɓn /* */ \ƂB
    E Ls̒ /* */ ݂̂̕Rg\B
    E eLXgڃf[^ " " ł́ARgw̕]sȂB
    E '\' ɂGXP[vsB

  E ʐMg[XɊւB
    E ږ\ꍇA(TRCTTYPE&0x0400)!=0 ̏ꍇA擪sɃbZ[Ŵ\B
    E ʐMg[X̃bZ[WEXg̐擪Xy[X̌ (TRCTTYPE&0800)  2 or 0 ̑I
       \ƂB
    E TDWTraceSetDataSize() V݂AʐMg[X̑ł؂oCgݒ\ƂB

  E HSMS ̏ꍇASeparate request oĂȂԂ Shutdown sꍇAClose() ɂAI
      Separate request 𑗏o悤ɉB



 V11.111 : 2011/11/15

  E TDSMssgNextL() ɂ F4AF8AS8AU8 ̕\ԈĂiɕ\łĂȂj
     B



 V11.120 : 2011/12/06

  E HSMS ʐMɊւB
    E Passive ɂāAU Accept AؒfAēx Accept ꍇɁAg[Xo͂
       ACCEPT \ȂB
    E Diselect vɑ΂ T6 ^CAEgP[Xz肵ĂȂB
    E SelectADeselectALinkTest Request  W-bit ̈ύXBftHgł W-bit=0 ƂA
       .ini  (DEVMODE&0x08)!=0 ̏ꍇ =1 ƂB

  E gUNVhc̕t^ɂāApAf[^p̃\[Xhc𓯈̂̂w肷邷鎖
     \ƂBȀꍇ CommSend() ɂāAMɎۂɕt^ TXID Ɩ߂lɖ߂
     TXID قȂꍇ̂ŁAɒLB



 V12.010 : 2012/01/12

  E SECS-1 ʐMɂ Single Block ̃ubNԍ (DEVMODE&0x04) Ŏw\ƂB

  E f[^M ( SECS-1 ) 傫ȃbZ[WMꍇɁAMɎԂ T3TO ɂȂ
     ꍇ邱Ɨ}~邽߁Af[^MɃ^C}[̍ĐݒsAMO TXID ̓o^͒
     lݒ肷邱Ƃɂ邱Ƃ\ƂB

  E SML `bZ[W`ɂāAږ` "XX[99.99]XXXXX"  ' 'A'\t' ̑}\ɂ
     B "B [ 10.. 20] BINITEM" Ƃ`\ƂȂA`₷B



 V12.030 : 2012/03/06

  E p[^ TORECV ǉAw莞ԃbZ[WMꍇɐڑf鎖\ɂB

  E (SECSMODE&0x0100) ǉA==0 ̏ꍇ́AڑɐVKڑꍇ́A̐ڑ𑦐ؒfB
     !=0 ̏ꍇ́AڑؒfAVKڑLƂB
     ɂAڑ܂܁ÃNCAg̐ڑ𖳌Ƃ邱Ƃ\ƂB

  E HSMS  Connect vsꍇ̃G[ER[h E_CONN_ERR ƖmB

  E _TDSCommStatus() ǉA݂̐ڑԂ擾邱Ƃ\ƂB

  E _TDSMDMssgInitialize()  mode  0x4000 ǉAw肪ꍇ ((mode&0x4000)!=0 ̏ꍇ)
     ́AXbh̃bNsBɂA[U`oŃbNsKvȂȂB

  E Ȉ API (_TDSUDrvXxxxx() n֐) ǉAHSMS Active  ConnectASelect v AP 
     R[h邱ƂȂAڑʐM邱Ƃ\ƂB



 V12.031 : 2012/03/28

  E TvE\[XR[h
    E bZ[W`t@Cgp̃bN
    E Sample1ASample2 ŁAM SECS bZ[W\\𑗎M݂Ȃ悤ɐ䂷鏈
       ǉ



 V12.071 : 2012/07/08

  E vO}[YE}jA _TDSMDMssgInitialize()A_TDSMDMssgTerminate()  mode  ւ
     LqɌ肪B

  E .ini  XMSGSIZE ɑ傫Ȓlݒ肵ꍇɁACPUׂ錻ۂB



 V12.121 : 2012/12/12

  E _TDSMDMssgInitialize() ɂāAbNswĂꍇŁA_TDSMDMssgFinc() ɂāA
     w SF-Code ɍv郁bZ[W݂AG[Ŗ߂ꍇɂ _TDSMDMssgExit() s
     ȂƃbNȂB

  E NSG/TS300 `̃bZ[W`t@Cgpꍇ́AftHgEp[^A`FbNE
     p[^̎wŁA"" w肷ƁA'"' ݒ肳Ă܂B

  E ʐMg[Xo͂ɂ郊Xg`\ŁAf[^ڒl𕡐sɓn\邱ƂŁASf[^
     l\邱Ƃ\ƂB(TRCTTYPE&0x04) ɂĎw肷B

  E ʐMg[Xo͂ɂPUi`\ŁAPsɕ\f[^A16oCgA20oCg
     I\ƂB(TRCTTYPE&0x08) ɂĎw肷B

  E _TDSMssgBuild()A_TDSMssgNext()  mode&0x4000 LƂAQoCg̎ϊT|[g
     B

  E ʐMg[XɔCӂ̃Rgo͂ہA_TDSCommSendComment() Ŏw肵̌ɁA
     S~tĂ܂ꍇB
     ܂AbZ[Ww肵ꍇɔB

  E ʐMg[Xo͎ASECS f[^\鍀ڂ̃f[^Ag[X̂PsɎ܂炸
     ŌオA"..." \LƂȂꍇɁAʐMg[Xɐ\ȂB

  E Windows ł̎gpɁADEVMODE ̐ݒ肪 S9Fx ŃgUNV̉sݒ̏ꍇɁAg
     UNV̉ȂB

  E sR^CAEgɑΉQbZ[WM铙ɂA\ʃbZ[WM
     ꍇ̕񍐂ȂB_TDSCommRecv()  -EFAULT Ŗ߂悤ɉB

  E SECS-1 ڑ̏ꍇA_TDSCommOpen() ɁA_TDSCommStatus() ̒l =3 ƂȂAڑԂ
     悤ɉB

  E _TDSSMMssgXxxxx()A_TDSTSMssgXxxxx() n֐pA_TDSMDMssgXxxxx() Ɉ{B
     _TDSSMMssgXxxxx()A_TDSTSMssgXxxxx() n֐́A݊ێ邽߁ATDS.h Ń}N`B
 
  E TDSSample1Proc.cppATDSSample2Proc.cpp ł _TDSMDMssgInitialize()  mode ̒lAdlł
     `ƈقȂݒi0x8000 y 0x0000jɂĂ܂Ă̂Ali0x4000jɒB

  E t Sample.sml  S6F11 ̍\ύX܂BӉB



 V12.122 : 2013/11/10

  E Ǘ̖ɊւCB@\ł̕ύX͂ȂB



 V14.040 : 2014/04/25

  E C#AVB Ή DLL ł TDCSS.dllATDVBS.dll  Win32 vbgz[pł邱Ƃ𖾋LA
     Tv Makefile y Readme.txt ɁAWin64 vbgz[ł Build @LqB

  E LłȂbZ[W`t@Cw肵Ăɂւ炸AĒʐMg[XɃbZ[W
     ́AbZ[Wږ̂\|̎wsĂꍇ̖B

  E ɃVXe傫ωꍇ̃^CAEgɑΉB

  E Sample1ASample2 ɂďIɈُI錻ۂɊȈՓIɑΉBڍׂ́ASample1Dlg.cppA
     Sample2Dlg.cpp ̃RgQƁB



 V14.060 : 2014/06/27

  E Java API 𐮔 (JNA gp)

  E MacOS X (10.6.3 ȍ~) ɑΉ



 V15.050 : 2015/05/08

  E T7 ^CAEg y M^CAEǵAG[A[U`oɂ܂ŕԂlɉB

  E PbZ[WƂQbZ[W̃g[Xo͂̏ԂႢɂȂ錻ۂ

  E .ini t@C DEVID sɁA DeviceID w\ƂB

  E FreeBSD (10.1 ȍ~) ɑΉ



 V15.080 : 2015/08/01

  E 64bit AvP[VΉ .libA.dll  (UNIX nnr܂) 𐮔B

  E TDS.pdf  _TDSMssgNext() ̖߂lŁA͏IӖl -ENODATA ƌLĂA
     l -E_NODATA ɒB

  E TDS.h  _TDSUDrvUserComment() }N`

  E HSMS ڑ̏ꍇA_TDSCommRecv() sȂƁAHSMS Selected ɂȂߒł̏Ԃ
     _TDSCommStatus() lԂȂۂAHSMS Selected ȑȌԂ̏ꍇ _TDSCommStatus()
      _TDSCommRecv() s鎖ɂ悤ɉB

  E SECS-2 bZ[WҏWɂ鍀ڌ`R[h =022 ([JELN^񍀖) ̈Ɍ
     肪A2Bytes łPڂƃJEgĂ̂A 1Byte łPڂƂ悤CB
     ɁAUTF-8  SJISAEUC-J Ԃł̕ϊɁAgp ByteقȂ鎖ɂ鑊ił邾j
     z悤ɉB

  E LɊ֘AāAʐMg[Xo͂ɂāA}`oCgi"K" wj\Ȃ
     B܂Aڂ܂ރbZ[W𐳂FłAg[Xo͂ɂčږ\
     ȂA_TDSMDMssgAutoRes() őΉbZ[WIȂCB

  E bZ[W`gpQbZ[W̎I@\i_TDSMDMssgAutoRes()jɂāAbZ[
     W𗼕ƂPbZ[W`̉ɒ`QbZ[W̑IȂۂCB

  E SECS bZ[W̍\zA͂ SECS ʐM䎯ʎqw肵ȂĂ\ƂB
     _TDSMssgInit()A_TDSMssgFind()  mode  bit#11 V݂Ap[^ fdc ̈ύXB
     ɂATDS ݒt@C (.ini t@C) pӂȂĂASECS bZ[W̍\zA͂
     \ƂB

  E PeerGroup  SDR  API ƌ݊̂ CAC++ ɂ SdrXxxxx() ֐ I/F ݊Cu
     y Yokogawa  YSD  API ƌ݊̂ CAC++ ɂ YSD_Xxxxxx() ֐ I/F ݊Cu
     A܂ƂĐB
     SDR ݊ APIAYSD ݊ API ɊւẮAЁiinfo@trust-design.co.jpj܂ł₢킹B



 V15.110 : 2015/11/13

  E CZXǗ̌it@CA[EH[ɂ胉CZXǗ񂪃ubNꂽƌ댟o
     Ă܂ꍇjB



 V15.111 : 2015/11/27

  E ݒt@Ci.inij擾ݒlA y ēǍɒʐMg[XEt@C
     o͂B
  E NXbh̃X^bNETCY̎wliTHSTACKUSRATHSTACKSYSj𐳂]łĂȂ
     B



 V16.010 : 2016/01/08

  E ݒt@Ci.inijɂ鋤ʍڂɊւZNVƂāA] [DEFAULT] ɉ
     [SECSCOMMON] ǉB]āAeڑɂċʂȃp[^́A[DEFAULT] 
     [SECSCOMMON] ZNVŒ`邱Ƃ\B
     ] [SECSCOMMON] ZNV`AgpĂꍇ́A\󂠂܂񂪁ÃZNV
     ɕύX铙̑ΉKvɂȂ܂B

  E ݒt@C (.ini)  DEVMODE w̑16rbgǉAHSMS ʐMɂ _TDSCommSend() 
      SelectADeselectASeparate Request M̃ZbVhcɁACӂ̒lt^鎖\
     B

  E CZXǗɂāAobł̓ꃉCZXEL[R[h̃`FbNACZXEL[
     R[hsUo߂sĂACZXEL[R[hss
     悤ɕύXB



 V16.011 : 2016/01/15

  E ݒt@Ci.ini t@Cj]ہADEVID ̎w [DEFAULT] ZNVȊOŕw
     ꍇɈُI铙̏ꍇCB



 V16.012 : 2016/02/25

  E TDS.h  _TDSCommUserComment()A_TDSUDrvUserComment() ̃}N` ';' tĂs
     B

  E `o Reject vMɂāASessionID (DeviceID) 𖳎w (=0) ƂꍇɂAf[^
     MvƓlAݒt@C (.ini t@C)  DEVID Ɏw肵擪̒lgp悤ɉB

  E _TDSMDMssgInitialize()  (mode&0x03) ɂAbZ[W`t@Č`w path==0 w
     肵ꍇ͖ƂȀꍇ̃bZ[W`t@Č`ẃA(TRCTTYPE&0x0300) lɂ
     肷B

  E g[XEt@CTCY߂Ő؂ւꍇA1000 ȏ̒ʔԂtt@C̎̃t@C
     AʔԂɂȂȂCB

  E g[XEt@CƂāAtt@C擪ɕt^`w肵ꍇŁAt@CETCY
     ߂ł̃t@C؂ւwsꍇAʔԂt^ȂꍇCB

  E Ãg[XEt@C폜@\ɂāA폜łȂꍇitw̖g[XEt@C
     AttH_gpg[XEt@CjB

  E N_Aݒt@Ci.inij TRCDELTIME ȍ~łꍇA TRCDELTIME ɂȂ܂
     Ãg[XEt@C폜@\sȂ̂ATRCDELDAY Ƃĕlݒ肵ꍇ́AN
     _ŏɂP񓯋Ns悤ɋ@\ǉB

  E Java p .jar t@Ĉ̖ TDS.jar  TDJVS.jar ɕύXB
      TDS.jar gpĂꍇ́ACLASSPATH ̐ݒ TDJVS.jar ɕύXĂB
     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  E JNA gpȂi]āATDS.dll gpȂjJava s݂̂œ삷 TDS.jar [
     XBATDS.jar  TDS.dlliy TDJVS.jarjɔ䂵āA@\͌IłB

  E Sample0/ ̃TvE\[XB



 V16.040 : 2016/04/05

  E HSMS-GS 샂[h̃T|[g
     ݒt@C (.ini)  SECSMODE ɂ̓ݒrbgV݁B܂A]̓ݒrbg
     Ƃ킹āAHSMS-GS 샂[hT|[gBVݓݒrbg̏ڍׂ́Aȉ̋Lq y
     TDS.pdf  "HSMS-GS" ŌQƂ邱ƁB

  E ݒt@C (.ini)  SECSMODE  0x8000A0x4000A0x2000A0x1000 rbg̐ݒlǉA
     HSMS 쎞̓ԂɊւ郂[hݒǉB

  E ݒt@C (.ini) Ɏw肷 DEVMODE  0x0008 y 0x010000 ̂Q̃rbgwAꂼ
     SECSMODE  0x0800A0x0400 ɈړBDEVMODE ̓Yrbgݒʂ͗LƂB
     ߂̃o[WɂāADEVMODE ̓Yrbg͔p~\łBSECSMODE ̑Ήrbgւ
     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     ύX肢܂B
     ~~~~~~~~~~~~~~~~~~~

  E HSMS Passive Open [hɂāAڑɁAVȐڑꍇ́A͎wɂA
     ؒf铮샂[ĥ݂ASEMI E37 9.2.4.1 a ̋LqɊÂASelect Request ɑ΂
     Select Status =3 ɐؒf铮샂[hAݒt@C (.ini)  (SECSMODE&0x1000)
     Ɏw肷邱Ƃɂ\ƂB

  E _TDSUDrvRecv() ɂāA32768Byte ȏ̃bZ[WM邱ƂłȂAM\
     B


  E _TDSUDrvXxxx() gp Active ƎڑsĂꍇɁAPassive ɏI
     AActive  _TDSUDrvClose() sƁAڑvُI AP ُ~Ă
     ۂꍇB

  E T3TimeOutAT6TimeOut ɁAwő僁bZ[W̃E[Nꍇ
     B

  E HSMS Select Response M HeaderByte 3 (fcd) l]ĂȂA]悤
     ɉB

  E Separate request sɁACommRecv() ɂ req=99 (Not connected) OɁAreq=0 (All
     0) ̃bZ[WĂ܂sB


  E _TDSCommSendError()A_TDSUDrvSendError()  (mode&0x02) LAɑMʂ҂[
     hǉB

  E Mp Callback gp铙ɂÃXbh _TDSCommSend() s鎞 mode l
     (mode&0x02)!=0 ƂꍇɁAr{KvAŔrsɂA
     AP ł̔rsvƂB

  E PbZ[WMɃgUNVǗe[ut̏ꍇłAG[ԂG[Eg
     [Xɏo͂őMsĂAM͍s킸AG[`oɒʒm悤
     B

  E T3Timeout ɂǍ̑ΉQbZ[WM .ini  DEVMODE ̐ݒɂĂ
     S9F7  Reject(3) 𓯎ɎMꍇ邪Â悤ȏꍇɂ S9F7 M݂̂𑗐M
     悤ɉB


  E C# p̈ꕔ֐ɂ̓n ref ɂďCzɊւāAref L[[h폜B
     C# p֐gpĂ AP ́Aʓ||܂ "ref" L[[h폜A Build
     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     Ă܂悤肢\グ܂B
     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  E VB p̈ꕔ֐ɂĔz̓n byref  byval ɕύXB
     ]āAVB p֐gpĂ AP ́A萔łA Build KvɂȂ܂B
             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  E @\ɔAgpX^bNETCYĂ܂B Java + JNA łgp̏ꍇ
     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     Aݒt@C (.ini)  THSTACKUSRATHSTACKSYS ̐ݒlɏ\ӂĂB
     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  E ݒt@C (.ini)  TRCPLEVELATRCULEVEL ̋󃋁[vo͂̃x 21  23 ɕύXB

  E Sample0/ASample1/ASample2/ ̃TvE\[X
     QbZ[WM̃foCXhc𖾎IɎwB



 V16.060 : 2016/06/10

  E bZ[W`t@Cł̂QbZ[W`ɂ郁bZ[W 'D' ǉAftHg
     ̂QbZ[Wł鎖錾\ƂBɂA_TDSMDMssgAutoRes() ɂāAMP
     bZ[W̍\vȂƂɂAYPbZ[WȂꍇASF-Code ̂
     Yꍇ̂QbZ[W肷鎖\ƂB



 V16.060b: 2017/03/01

  E Sample0/SemiStandard.sml 



 V17.100 : 2017/10/06

  E 64bit o[WɂāAN (g[XEt@C̃I[vɊ֘A) ُI
     邱ƂB

  E Windows łł SECS-1 (RS232C) ڑɂāA115200 𒴂`̖ BPS (Ⴆ 230400 ) 
     T|[gB



 V18.010 : 2018/01/10

  E Passive ڑɁAActive ʏ̐ؒf菇ȊOŐڑؒfꂽꍇɁAȍ~̐ڑɂāA
     ڑ̐ؒf̒ɍēxڑsꍇ̂āA삪sɂȂ錻ۂPB

  E (SECSMODE&0x000c0000) ɂ HSMS ڑ TCP/IP KeepAlive @\̎gpۂݒ\ƂB

  E TDSUDrv() ɂ Active ̎ڑɂāAؒfmĂĐڑ܂ł̎
     ÁAT5 Ԍoߌ̂ǂ炩 (SECSMODE&0x00010000) őI\ƂB

  E VB p֐gpꍇ "namespace TDVBL" 𖾎B
     VB p֐gp AP ́A"imports TDVBL" w肵āA Build Kv܂B
     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  E SampleX tH_ǉAVS2013  IDE ɂ 32bit AP  Build TvuB
     Tv AP ̂́A]̂̂ƕς͂ȂB



 V18.020 : 2018/02/10

  E SML `bZ[W`t@C̃bZ[W`s flag Ƃ 'H'A'E' ̂ǂw肵Ȃ
     P[XɂāA'D' ݂̂wi "D"  "WD"jꍇɁAbZ[ŴLɂ
     炸A'D' wLɂȂȂB

  E bZ[W`t@Cgp SECS bZ[W̍\zɂāAsXg @TIME
     ڂ݂ꍇA̍ڂݎɕϊȂB

  E SML `bZ[W`t@Cɂ L[0|n] `T|[gB
     ɂALIST ڂɒPꍀڂłȂA0 n̈قȂf[^ڂw\ƂB

  E L L[0|n] ̃T|[gɂASML `bZ[W`t@C̃Tv "SemiStandard.sml" 
     ꕔB



 V18.031 : 2018/03/23

  E SECS-1 ڑɎMG[ꍇ̃G[EbZ[W̃g[Xo͂ňُI
     \B



 V18.041 : 2018/04/23

  E w .ini t@C̃pX̂ (T 120oCg) ꍇɁAobt@I[o[
     A삪s肠邢͕sɂȂꍇB



 V18.050 : 2018/05/28

  E HSMS Passive 쎞́A TCP/IP Port# ւ̕ڑdlǉB
     {@\ (SECSMODE&0x020000)!=0 Ƃ邱ƂɂLƂȂB
     {@\gpꍇAK TDS.pdf  (SECSMODE&0x020000) ɋLڂ̒LADEVID ɊւLq
     QƂAK؂ȐݒsƁB

  E _TDSCommSend() ̑MɎw肷 devid ɗ^lƂ -1 ̎wV݂A-1 ̏ꍇ
     .ini  DEVID Ɏw̐擪foCXhcgp邱ƂƂB
     devid=0 w莞́A.ini  DEVID  0x0000 ̎w肪܂܂ devid=0x0000 ƂāÂ܂܎g
     pA܂܂Ȃꍇ́ADEVID Ɏw̐擪foCXhcgpB
     ɂADevID Ƃ 0x0000 gpKvꍇłA.ini  DEVID ̎w̐擪
     0x0000 w肷Kv͂ȂȂBȀꍇŐ擪 DevID w肷ꍇ́Adevid=-1 
     w肷邱ƁB
     i܂Œʂ .ini w DEVID ̐擪 0x0000 w肳ĂꍇAdevid=0 w肵
     ܂Œʂ Call ł́A܂Œʂ̓ƂȂBj

  E .ini  TRCTHOSTATRCTPORT V݂AʐMg[Xo͂ TCP/IP őo@\ǉB
     TRCTHOST ɎzXgœ삷 TCP/IP Server @\Aڑꂽ Port eLXgM
     `o𓮍삳ƁA Server AP ɐڑAʐMg[X𒀎oB

  E ʐMg[X SECS wb_\ɁA̒ʐMɎgp Stream Descriptor lǉAڑ
     svZXɂʐM薈̎ʂeՂɂB

  E HSMS Active ڑɔs Select.Request ɑ΂ Passive  Select.Responce ̉
     ƂĂꍇɁASelect ԂɈڍs T7TO 𔭐Ă܂ꍇ錻ۂB

  E FreeBSD ɂāAW͂Ă܂ꍇB

  E G[ԍꗗ\c[ tdse VKc[ƂĒ񋟁B



 V18.070 : 2018/07/01

  E SECS-1 ڑɂāA.ini  T1=0 ƂĎw肳ĂƁAʐMG[ꍇɁAG[
     ̌㏈ɁAivɑ҂ԂƂȂĂ܂B

  E SECS-1 ڑɂāA] MULTI BLOCK bZ[W̎MrŁAMv󂯕tꍇA
     ^C~OɂẮȂMvD悵đMɓ邪Â悤ȏꍇł̃ftHg
     AM MULTI BLOCK bZ[WMł̍ŏI BLOCK ̎MɊJn悤ɕύXA.ini
     ł (SECSMODE&0x10000000)!=0 ̎wɂA]ʂ̓悤ɉB

  E SECS-1 ڑɂAMULTI BLOCK bZ[W̎MɂāA擪 BLOCK  BLOCK ԍCӂ
     ̂łĂM郂[h ((SECSMODE&0x200000000)!=0) ǉB

  E SECS-1 ڑɂAMULTI BLOCK bZ[W̎MɂāAM BLOCK ԍlAM
     ҂ĂԍƈقȂĂꍇɁANAK āAMɍđ𑣂[h
     ((SECSMODE&0x400000000)!=0) ǉB

  E SECS-1 ڑ̒ʐMg[Xł́AM̃g[X𑗐MOɏo͂邽߁ABLOCK Ɋւ\
      =0 ŕ\ĂAMf[^ BLOCK lvZāAMł낤ŏI BLOCK 
     lo͂悤ɕύXB

  E SECS-1 ڑ̒ʐMg[XɉāAbZ[W`gpbZ[ẂAږ̂̕\
     wĂɂւ炸AMbZ[W̕\ɁAbZ[ẂAږ̂\Ȃ
     B



 V19.070 : 2019/07/05

  E ݒt@Cɂȉ̃rbg̈AȑO̗\̒ʂp~B
    E (DEVMODE&0x000008) : HSMS Select,Deselect,LinkTest Request ł W-bit ̈
                            (SECSMODE&0x000800) Ɉڍs
    E (DEVMODE&0x010000) : HSMS Select,Deselect,Separate Request ł̃ZbVID (foCXID) 
                            
                            (SECSMODE&0x000400) Ɉڍs
     []
     ݁Ãrbg̐ݒɂ TDS ̓ݒĂꍇ́Aڍs̃rbgł̐ݒ
     ύXÃrbgl =0 ƂKv܂B

  E C# p֐ɂȉ̊֐ɂāA{gpꍇɈُIꍇ
     B
    E _TDCSSMssgBuild()    , _MssgBuild()
    E _TDCSSMDMssgBuild()  , _MDMssgBuild()
    E _TDCSSSMMssgBuild()  , _SMMssgBuild()
    E _TDCSSTSMssgBuild()  , _TMMssgBuild()

  E VB p֐ɂȉ̊֐ɂāAsigned byte (sbyte)Aunsigned short (ushort)A
     unsigned int (uinteger)Aunsigned long (ulong) ̎gp\ƂB
    E _TDSMssgBuild()
    E _TDSMDMssgBuild()
    E _TDSMDMssgNext()

  E tdscAtdsm  tdse ƓlAIOɁuIėǂvmFIvV "-w" ǉA
     Windows ̏ꍇ́AftHg -w LƂB
     ɂAtdscAtdsm  tdse ƓlA.exe  Double Click ŋNꍇAcmd.exe 
     IɏIāAʕ\mFłȂۂB

  E pWLvO y phLg̒ǉ


 V19.100 : 2019/10/25

  E SML `̃bZ[W`t@Cɂ Multi Byte Text String ڂɂ LSH (Local String
     Header) ̎w\ƂB
     Multi Byte Text String (022) ̎w莞̃jjbNƂ 'M99' (99:LSH ̒l) w肷B

  E ʐMg[XEt@Cւ̏o͌` Multi Byte Text String ڂ LSH (Local String Header)
     ̏o͂ .ini  (TRCTTYPE&0x4000) ̎wɂ\ƂB

  E _TDSMssgBuild()A_TDSMDMssgBuild()A_TDSMssgNext()A_TDSMDMssgNext() e֐ɂāAMulti
     Byte Text String ڂ̕R[hϊ{̗Lw\ƂB

  E _TDSMssgNextL()  (mode&0x4000) ̎wɂ Multi Byte Text String ڂ LSH (Local String
     Header) \\ƂB

  E TDSCommClose()ATDSUDrvClose() AIԂ̒ZkvB

  E NIC ݂ȂꍇɁACZXǗ̕sɂAُIꍇB

  E CZXُ픭̉炩ُ̈픭̏IAIɈُIꍇ铙
     s肵AIԂ̒Zk}B

  E TvEvO̍\ύX
     efBNgɂ Make  Build ɂ Sample0/bin32 y Sample0/bin64 Ɏs
     t@C y ݒt@Czu悤ɕύXB
     Ȃ Windows ɂ SampleX ɊւẮA]ʂ ./bin/ ɎzuB

  E VS2005AVS2008 ł̃T|[g 2019NŏI邱Ƃm


 V20.040 : 2020/04/17

  E _TDSCommRecv()A_TDSCommSend() ̖߂lł̃G[ER[h  R[obN֐Ŏ擾
     G[ER[hnrʁAnro[WɂقȂG[ER[h𓝈ꂷ邱Ƃ
     B
     TDS ŎgpG[ER[hiԍj}N萔́A"E_" Ŏn܂}NƂB
     ----
     ]āA "ENOMEM" ̃}NgpĂꍇ́A "E_NOMEM" ɕύXKv
     ܂BȂA E_NOENTAE_INTR ... E_NOSPC l ENOENTAEINTR ... ENOSPC lƓ
     Ȃ̂ŁAł͕ύXȂĂɎx͂܂B
     -----
     C#AVBAJava ̌ŃG[ER[hQƂꍇ́Atdse.exe ɂ\G[ԍ
     QƂĂB

  E Windows ɂ TDS ŎgpL[Ƃ Local Memory gpꍇ ((QUEMODE&0xc0)
     ==0x80) ɁALink Test gp铙 TDS Ŕ郁bZ[WMvƁA`ȏM
     vƂɔꍇɋNĂ܂Aǂ炩̃bZ[WMꂸA
     ƂĂ`o -E_TIMEOUT 񍐂  -E_T6TIMEDOUT 錻ۂ邱ƂB

  E _TDSCommOpen()  mode  0x1000 rbg̐ݒǉAʐMs AP ̃XbhƂ
     Ďsꍇi _TDSCommOpen()  (mode&0x1003)==0x1002 ̏ꍇj ́A_TDSCommStatus()A
     _TDSCommSelectStatus() Ŏ擾錻݂̐ڑԂAʐM䕔݂̐ڑԂƓ邱
     Ƃ\ƂB
     ̐ݒ ((mode&0x1003)==0x1002) ɂAʐMXbh삳ꍇ́ATDS ̎M
     Callback ɂȂꍇ  _TDSCommRecv() ̎sɊւ炸A݂̍ŐVڑԂɎ擾ł
     ƂƂȂB

  E HSMS-GS ڑ SelectADeselectASeparate A݂ Select Ԃ𐳂Fł
     悤ɉB

  E _TDSUDrvXxxx() gp HSMS-GS ʐM Active ڑōsꍇ̎ڑ@PB
     gpZbVhc Separate request ɂAZbVhc "Not Select" Ԃ
     Ȃꍇ̍Đڑ菇AڑłȂԂB

  E HSMS Passive ڑ̏dڑ ACCEPT ɂāAڑD悷ꍇɁA[U`oɐؒf
     񍐂Ă܂iVKڑɊւؒf̕񍐁jB

  E M Callback ֐gpꍇ HSMS-SS/HSMS-GS ʐMɂ _TDSCommSend()A_TDSUDrvSend()
     ɂ SECS bZ[W̑M鎞A݂ Select Ԃ`FbNASelect ԂłȂꍇ́A
     -E_NOEXEC G[ƂB 

  E _TDSCommRecv()A_TDSCommSend()A_TDSCommSendError() yѓl _TDSUDrvXxxx()  (mode&0x4000)
     V݂A擾Aݒ肷 SECS wb_̕oCgڂ̃oCgI[_[`̎w\ƂB
      AP QƂ SECS wb_̍\͓VXẽoCgI[_[ASECS bZ[W{
     oCgI[_[ł̎QƂ\ƂB

  E C#  TDS ̈ȉ̊֐ɂāAeڒľ^Ƃ sbyte gp\ƂB
    E MssgBuild()
    E MDMssgBuild()
    E MDMssgNext()

  E eTvEvOi.cA.cppA.csA.vbA.javaA.pyA.rbjɊւĈȉ̉sB
    E Np[^ǉǍ`Ԃwp[^NɕύX\ƂB
    E S1F21AS1F22 ̑MǉASẴf[^^Ɋւ鑗MB
    E DispSECSMssg() ɁAbZ[W`t@Cp鎖ɂA_TDSMDMssgFind()AMDMssgNext()A
       MDMssgEnd() gpāAKvƂCӂ̃bZ[Wڂ̒l擾@ᎦB


 V20.090 : 2020/09/01

  E .ini ɂ (DEVMODE&0x4000)!=0 Ƃ邱ƂɂAHSMS ʐM LinkTest ̑M^C}[A
     ڑ肩̃f[^EbZ[WMɂ胊Zbg鎖\ƂBɂA̐ݒ
     sƃAvP[ṼbZ[WĂԂ LinkTest 𔭍sȂȂB

  E TDS.h  SECS-1 ڑAHSMS ڑ SECS Header o[i[\ TDSECSHeadA V݁B

  E ȉ̊֐ɂ mode l̑14rbg̐ݒ (擾邢͎w肷 SECS wb_ Network
     ByteOrder Ƃ) (mode&0x4000) A13rbg (mode&0x2000) ɈړB
    E _TDSCommRecv()A_TDSCommSend()A_TDSCommSendError()
    E _TDSUDrvRecv()A_TDSUDrvSend()A_TDSUDrvSendError()
     ݁AL֐ɂĖ{@\gpĂꍇ́Amode w̃rbg̈ړ肢܂B
     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  E _TDSMDMssgAutoRes()  mode ɁA13rbg (mode&0x2000) ̐ݒǉAw肷 SECS wb_
      Network ByteOrder ł̎w\ƂB


 V21.010 : 2021/01/15
 V21.011 : 2021/02/25

  E TDS 쒆ɁAgpĂ .ini t@C SECSMODEADEVMODE ̈ꕔύX\ƂB
     ύX\Ȃ̂ (SECSMODE&0x70010f00)A(DEVMODE &0x0000dfc7) ̊erbgɌB

  E _TDSMssgBuild()A_TDSMDMssgEnd() y _TDSMDMssgAutoRes() ɂāAw胁bZ[Wڂ SECS
     bZ[ẄŎgp Length Byte ̃TCYiA2A3 ̂ꂩjw\ƂB

  E .ini t@Cł (TRCTTYPE&0x1000) ̎wɂAʐMg[Xւ LIST `o͂ɁA֘A
     SECS-II Message ̃oCgf[^ 16iR[h̏o͂t\鎖\ƂB
     ɂASECS-II Message f[^ȅڍ׊mFeՂɂȂB

  E (V21.011) 
     [UʐMg[X@\AOʐMg[X@\gpꍇɁAʐMg[XEt@CɋL^
     鎞AOŝ̂ɒuYĂ܂B


 V21.060 : 2021/06/15
 V21.061 : 2021/07/23
 V21.062 : 2021/08/17

  E TDS \T|[gEvOitdscAtdsmAtdsej 64bitłpӂB

  E TvE\[XER[hɂ TDSCommRecv() ̂ mode ł SECS wb_ ByteOrder 
     ւwrbgɌ肪̂CB

  E SECS/HSMS Simulator (tdlSSim) ̂߂̉
     ֘AāATvE\[XER[h y Tvݒt@CBSimulator Ƃ̐
     ۂ߂łAeIȕύX͂ȂB


 V23.040 : 2023/04/25
   V23.041 : 2023/06/15

  E TDS  SF-Code ɓviSF-Code ̑MAُԐMAgUNVԓjWv
     A̓e`o擾A邢͒ʐMg[Xt@Cɏo͂@\V݂B
     ȉ̊֐QƂ邱ƁB
     _TDSCommSInfoClear()A_TDSCommSInfoGet()A_TDSCommSInfoOut()
     _TDSUDrvSInfoClear()A_TDSUDrvSInfoGet()A_TDSUDrvSInfoOut()

  E _TDSMssgBuild()A_TDSMDMssgBuild() őMpɍ쐬 SECS bZ[Wڂ񍀖 (A, J,
     M (K)) łꍇɁAweLXgEf[^ \377 ` Escape code ̋Lq\ƂAPoC
     g̔󎚃oCg̎w\ƂB
     \377 Escape ͂R̂Wi 1Byte A\001 ` \376 w\i\000A\377 ͎wsj
  E _TDSMssgNext()A_TDSMssgNextL()A_TDSMDMssgNext() ŎM SECS bZ[W̎擾ʂ ASCAJIS8
     񍀖 (A, J) łꍇ (: }`oCg (M(K)) ɂ͓KpȂjɁA܂܂\
     oCg \377 Escape code `ɕϊďo͂邱Ƃ\ƂB

  E HSMS ڑɂāAڑԂ擾łȂ^C~OC
  E ֘AăTvEvOɂ _TDSCommStatus()A_TDSUDrvStatus() Ɋւĉs

  E ȈՂȃTvER[h "FirstSample0" ǉ

  E vO}[YE}jA (SECSMODE&0x00020000) ɊւLq
     (HSMS-GS  Passive ɂ SeparateReq M Connected ԈێɊւrbg)


 V23.061 : 2023/06/15

  E HSMS 쎞 Select Response M̕s
  E LȊO SECS/HSMS Simulater (tdlSSim) ̉łAʏ TDS ɊւĂ͖֌W
     


 V23.062 : 2023/09/01

  E bZ[W`gpbZ[W͏ (TDSMDMssgFind()) ɂāA񍀖ڂΏۂƂ
     rڒlݒ肵ꍇɁArsꂸArʂvȂ


 V23.063 : 2023/11/01

  E SECS-1 ڑɂ鑗MbZ[W̒ʐMg[Xo̓wb_ Hexa \ BLOCK ԍɊւāA
     ȉ̉sB
     { BLOCK ԍ́AP SECS-2 bZ[Wɕt^̂ł͂ȂARS232C ʐMgpĂP
     SECS-2 bZ[W\镡̒ʐM BLOCK ɕt^̂ŁAʐMg[X\ł͕sƂȂB
     MƓl̒lƂďo͂邽߂ɁAŏIubNԍ𑗐MOɎZo E-Bit Ƌ
     \B

