91美女视频-亚洲免费观看视频-欧美a∨-久热在线视频-日韩黄网站-成av人片在线观看www-久操综合-超碰av在线播放-性欧美欧美巨大69-婷婷二区-av男人的天堂网-中文字幕一区在线播放-玖草在线观看-国产网址在线观看-免费在线不卡av

duhuaiguo
級別: *
精華主題: * 篇
發(fā)帖數(shù)量: * 個
工控威望: * 點
下載積分: * 分
在線時間: (小時)
注冊時間: *
最后登錄: *
查看duhuaiguo的 主題 / 回貼
樓主  發(fā)表于: 2009-09-01 18:48
This is the main handler of the MMI profile container

Parameters : fb_in_offset   First byte in the input container
             fb_out_offset  First byte in the output container
             db_address     Number of the database to use
             con_len        Length of container in bytes (min.32)  

Example : The terminal is configured to be on input and output byte 64,
          32 bytes allocated  and database to communcate with is 51:
          fb_in_offset  = 64
          fb_out_offset = 64
          db_address    = 51
          con_len       = 32

The function block handles one complete container in one scan. If read index,
FC111 is called.
If write index, FC112 is called.
Note that the control byte is not set until next scan, to avoid timing problems



      L     #fb_in_offset               // Incontainer start address
      T     MW   496                    // Remember incontainer start
      T     MW   500

      L     #fb_in_offset               // Incontainer start address
      SLD   3                           //
      LAR1  
      L     IB [AR1,P#0.0]              // Get the proper control byte from inp.container
      T     MB   486                    // Store it

      L     #fb_out_offset              // Outcontainer start address
      T     MW   498                    // Store it
      T     MW   502

      L     #m_110                      // Previous input control byte
      T     MB   479                    // Store it

      L     0
      T     MB   474                    // Clear error code

      A     M    479.0
      R     M    479.0                  // Clear error flag

      A     M    486.6                  // Terminal present ?
      JC    WEI1                        //
      L     1                           // Error 1 : Comm error
      JU    FEH                         //

WEI1: A     M    486.5                  // Does the terminal toggle the toggle bit ?
      AN    M    486.5
      L     S5T#2S                      // Timeout timer
      SD    "Terminal timeout"
      AN    "Terminal timeout"
      JC    WEI2
      L     2                           // Error 2 : Terminal not in RUN
      JU    FEH

WEI2: A     M    486.7                  // Test if new container
      A     M    479.7                  // Compare old container byte with the new one
      O    
      AN    M    486.7
      AN    M    479.7
      JC    ENDE                        // No new container

      A     M    486.7                  // Pulse
      =     M    479.7

      L     MW   498                    // Outcontainer pointer
      L     4
      +I    
      T     MW   498                    // First data position : 4

      L     MW   496                    // Incontainer pointer
      L     4
      +I    
      T     MW   496                    // First index position : 4
//    
LOOP: NOP   0
      L     MW   496                    // Incontainer pointer
      ITD  
      SLD   3
      T     MD   504                    // Make it double word
      L     IB [MD 504]                 // Get first index byte
      T     MB   486                    // Store it
      L     MB   486
      L     0
      ==I  
      JC    DONE                        // Jump out if index is 0

      A     M    486.7                  // Is it a read index ?
      JC    ANK1
      CALL  "READ INDEX OP PANEL"       // Then call read index function
       DataBase:=#db_address
ANK1: NOP   0
      L     MB   478                    // Check return value from FC111
      L     0
      ==I  
      JC    WEI3                        // Was there an error return ?
      AN    M    479.0
      S     M    479.0                  // Then, set error bit
      L     MB   478
      JU    FEH                         // Jump to error
WEI3: AN    M    486.7                  // Is it a write index ?
      JC    WEI4
      CALL  "WRITE INDEX OP PANEL"      // Then call write index function
       DataBase:=#db_address
      L     MB   478                    // Check return value from FC112
      L     0
      ==I  
      JC    WEI4                        // Was there an error return ?
      AN    M    479.0
      S     M    479.0                  // Then set error bit
      L     MB   478                    //
      JU    FEH                         // Jump to error
WEI4: L     MW   496                    // Check if incontainer is done
      L     MW   500
      -I    
      L     #con_len
      <I    
      A(    
      L     MW   498                    // .. or that outcontainer is done
      L     MW   502
      -I    
      L     #con_len
      <I    
      )    
      JC    LOOP                        // Continue id conatiner not completed
DONE: L     #fb_in_offset               // Container done !
      SLD   3
      LAR1  
      L     IB [AR1,P#0.0]              // Get input control byte

      T     MB   486                    // Store it
      JU    ENDE
//-------  ERROR HANDLING  ---------
FEH:  T     MB   474                    // Store error code
FEH1: L     MW   498
      ITD  
      SLD   3
      T     MD   504

      L     0                           // Write controlbyte to output container
      T     QB [MD 504]

      L     1
      L     MW   498

      +I    
      T     MW   498

      L     MW   502
      -I                                // INTERNES MERKERBYTE SICHERN

      L     32
      <I    

      JC    FEH1
ENDE: NOP   0
      NOP   0
      AN    M    486.6
      S     M    486.6                  // Set the COM-bit
      AN    M    486.5
      =     M    486.5                  // Toggle the Toggel-bit
      A     M    479.0
      =     M    486.4
//----------------------
      L     MB   486                    // Delay answer one scan to avoid timing problems
      T     #out_this_cycle
      L     #fb_out_offset
      SLD   3
      LAR1  
      L     #out_last_cycle
      T     QB [AR1,P#0.0]
      L     #out_this_cycle
      T     #out_last_cycle
      L     MB   479
      T     #m_110
      NOP   0

主站蜘蛛池模板: 欧美另类xxxx | 97超碰资源站 | 天天撸天天操 | 玖玖爱在线观看 | 青草视频在线免费观看 | 亲子乱对白乱都乱了 | heyzo朝桐光一区二区 | 亚洲二三区 | 国产精品情侣自拍 | 超碰人人草 | 99re国产精品 | 欧美日韩国产区 | a在线免费观看 | 精品无码三级在线观看视频 | 一区二区中文字幕 | 爱搞逼综合网 | www.男人的天堂 | 亚洲免费视频一区二区 | 中文有码在线观看 | 天天综合入口 | 小毛片 | 国产精品19乱码一区二区三区 | 欧美极品在线观看 | 91伊人网 | 老熟妻内射精品一区 | 日韩激情小视频 | 色老久久| 亚洲色图欧美色 | 激情小说av | 根深蒂固在线观看 | 嫩草嫩草嫩草 | 日韩视频网 | 奴性女会所调教 | av中字在线| 成人羞羞网站 | 精品国产一区二区三区性色av | www欧美精品| 一起操网址 | www.香蕉视频.com | 日本jizzjizz| 国产色啪 | 欧美成人国产精品高潮 | 性视屏 | 国产美女免费 | 日韩精品高清在线 | 国产男男chinese网站 | 久久久久久日产精品 | 黄色香蕉软件 | 国产综合色视频 | 天堂va蜜桃一区二区三区漫画版 | 天天草天天干 | 91大奶| 中文免费视频 | 天天干天天谢 | 国产又爽又黄的视频 | 一区二区三区精品在线观看 | 岛国一区 | 91久久精品国产91性色69 | www.久久艹 | 国产精品高潮呻吟久久 | 日韩成人区 | 未满十八18禁止免费无码网站 | 国产伦精品一区二区三区四区 | 成年人视频网站 | 国产在线www | 91最新入口| 女人一级一片30分 | 人操人视频| 少妇xxxx69| 天天干天天干天天干天天 | 免费成年人视频 | 亚洲一区在线播放 | 伊人色影院 | 欧美精品www | 国产女主播喷水高潮网红在线 | avtt2015| 久久精品一区二区国产 | 涩五月婷婷 | 在线精品免费视频 | 又黄又色的网站 | 在线观看亚洲视频 | 欧美色哟哟 | 五月激情婷婷综合 | 日本成人一区 | 亚洲黄色大片 | 亚洲色图在线观看 | h片在线观看免费 | 欧美成人黄色网 | 久久精品在线观看 | 人人插人人爽 | 国产91对白在线播放 | 波多野结衣在线免费观看视频 | 亚洲七区| 美女涩涩视频 | 他趴在我两腿中间添得好爽在线看 | 又紧又大又爽精品一区二区 | 欧美人与性动交α欧美精品 | 在线观看中文字幕视频 | 亚洲精品在线观 |