亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? interpreter.bas

?? 用ATMEL AVR CPU開發CF CARD的程式.在BASCOM環境
?? BAS
?? 第 1 頁 / 共 2 頁
字號:
' Getting USER-Input and executes Commands

Declare Sub DoCommand()
Declare Sub ExtractToken()
Declare Function GetNextTokenStr(ByVal pbLen_Max as Byte ) as String
Declare Function GetNextTokenLong(byVAl plMin as Long , byVal plMax as Long ) as Long
Declare Sub PrintParameterErrorl(plParamLow as Long , plParamHigh as Long)
Declare Sub PrintParameterCountError(byVal psParm_Anzahl as String)
Declare Sub GetInput(byVal pbByte as Byte)
Declare Sub PrintPrompt()
Declare Function GetLongFromBuffer(pbSRAMArray as Byte , byVal pbPos as Word) as Long
Declare Function GetWordFromBuffer(pbSRAMArray as Byte , byVal pbPos as Word) as Word
Declare Sub SRAMDump(pwSRAMPointer as Word , byVal pwLength as Word)


Const cpToken_max = 10                  ' Count of Tokens in USER-Input
Const cpStrsep = " "                    ' Blank: Separator between tokens
Const cpNo = 0                          '
Const cpYes = 1
Const cPCInput_Len = 40                 ' max. length of user-Input
Dim gsPCInput as String * 40            ' holds user-input
Dim gbPosStrParts(cpToken_max) As Byte  ' for analysing user-input
Dim gbLenStrParts(cpToken_max) As Byte  '
Dim gbCntToken As Byte                  ' found tokens in user-input
Dim gbToken_Actual as Byte              ' actual handled token of user-input
Dim gbPCInPutError as Byte              ' holds error-code during analysing user-input
Dim gbPCInputPointer as Byte            ' string-pointer during user-input
gbPCInputPointer = 1

Dim CF_TransferBuffer(1024) as Byte     ' Transferbuffer von und zur CF for 2 Sectors
Dim TransferBuffer_Write as Word



End


Sub GetInput(pbByte as Byte)
    ' stores bytes from user and wait for CR (&H13)
   Print #1 , chr(pbByte);              ' echo back to user
   select case pbByte
      Case &H0D                         ' Line-end?
         print chr(&H0A)
         DoCommand                      ' analyse command and execute
         gbPCInputPointer = 1           ' reset for new user-input
         gsPCInput = ""
         PrintPrompt
      case &H08                         ' backspace ?
         decr gbPCInputPointer
      case Else                         ' store user-input
         mid(gsPCINput , gbPCInputPointer , 1) = pbByte
         incr gbPCInputPointer
         mid(gsPCInput , gbPCInputPointer , 1) = &H00       ' string-terminator
         if gbPCInputPointer > cPCInput_Len then       'don't exceed input-string
            gbPCInputPointer = cPCInput_Len
         end if
   end Select
End Sub


Sub DoCommand
   ' interpretes the user-input and execute
   ' Local variables
   Local lByte1 as Byte , lByte2 as Byte
   Local lInt1 as Integer , lInt2 as Integer
   Local lWord1 as Word , lWord2 as Word , lWord3 as Word
   Local lLong1 as Long , lLong2 as Long , lLong3 as Long , lLong4 as Long
   Local lbPos as Byte

   Local lsToken as String * 20         ' Hold Tokens
   Local lbLen as Byte
   Local lwSRAMPointer as Word

   ExtractToken                         ' token analysing
   gbToken_actual = 0                   ' reset to beginn of line (first token)
   gbPCInputError = cpNo
   If gbcntToken > 0 Then               ' is there any input

      lsToken = GetNextTokenStr(20)     ' get first string-token = command
      lstoken = ucase(lsToken)          ' all uppercase
      lwSRAMPointer = varptr(Cf_Transferbuffer(1))
                                         ' Pointer to SRAM Buffer
      Select Case lsToken
         Case "CFI"                     ' Show CF-Card Information Block
              Print #1 , "Read Card Info"
              GetDriveIdentity lwSRAMPointer       ' read Info to SRAM
              TransferBuffer_Write = 0
              SRAMDump lwSRAMPointer , 512       ' Dump SRAM
              ' Get Count of Sectors in Compactflash-Card
              lLong1 = GetLongFromBuffer(CF_Transferbuffer(1) , 120) : lLong2 = lLong1 * 512
              print lLong1 ; " Sectors = " ; lLong2 ; " Bytes"
              ' Get Buffersize of Compactflash-Card
              lWord1 = GetWordFromBuffer(CF_TransferBuffer(1) , 42)
              lLong2 = lWord1 * 512
              print "CF-Buffersize = " ; lWord1 ; " Sectors = " ; lLong2 ; " Bytes"

         Case "CFR"                     ' Reset Compactflash Card
              DriveReset

         Case "MBR"                     ' Show Masterboot record = Sector 0
            lLong1 = 0
            print #1 , "Read Master Boot Record ... " ;
            ReadSector LWSRAMPointer , lLong1 , 1       ' read Sector to CF_Transferbuffer
            TransferBuffer_Write = 0
            print #1 , "done"
            SRAMDump lwSRAMPointer , 512       ' show CF_Transferbuffer
            print #1 , " " : Print #1 , "Partition-Table" : print #1 , " "
            lWord1 = 446                ' first partition entry starts at 446
            for lByte1 = 1 to 4
               lWord2 = lWord1 + 1
               if CF_TransferBuffer(lWord2) > 0 then
                  print #1 , "Partition " ; lByte1 ; " " ;
                  lWord2 = lWord1 + 8
                  lLong1 = GetLongFromBuffer(CF_Transferbuffer(1) , lWord2)
                  lWord2 = lWord1 + 12
                  lLong2 = GetLongFromBuffer(CF_Transferbuffer(1) , lWord2)
                  lLong3 = lLong1 + lLong2
                  print #1 , "Sector: " ; lLong1 ; " to " ; lLong3 ; " = " ; lLong2 ; " Sectors; ";
                  lWord2 = lWord1 + 5
                  lByte1 = Cf_TransferBuffer(lWord2)
                  print #1 , "File-System Type: " ; hex(lByte1)
               end if
               lWord1 = lWord1 + 16
            next

         Case "SD"                      ' Sector Dump
            If gbCntToken = 2 then
               lLong1 = GetNextTokenLong(0 , 2000000)
               lLong2 = lLong1
            elseif gbCntToken = 3 then
               lLong1 = GetNextTokenLong(0 , 2000000)
               lLong2 = GetNextTokenLong(lLong1 , 2000000)
            else
                PrintparameterCountError "1, 2 "
                exit sub
            end if
            If gbPCInputError = cpNo then
               for lLong3 = lLong1 to lLong2
                   print #1 , "Read Sector: " ; lLong3 ; " ... " ;
                   ReadSector lwSRAMPointer , lLong3 , 1
                   TransferBuffer_Write = 0 
                   Print #1 , " done"
                   SRAMDump lwSRAMPointer , 512
               next
            End if

         Case "MD"                      ' Memory Dump
              lWord2 = 512
              if gbCntToken = 1 then
              elseif gbCntToken = 2 then
                 lLong1 = GetNextTokenLong(0 , &HFFFF)
                 lwSRAMPointer = lLong1 ' assign to word
              elseif gbCntToken = 3 then
                 lLong1 = GetNextTokenLong(0 , &HFFFF)
                 lwSRAMPointer = lLong1 ' assign to word
                 lLong2 = GetNextTokenLong(lLong1 , &HFFFF)
                 lWord2 = lLong2
              else
                  PrintParameterCountError "0, 1, 2 "
              end if
              if gbPCInputError = cpNo then
                 SRAMDump lwSRAMPointer , lWord2       ' Show 512 Bytes
              End if

         Case "SW"                      ' Sector Write
            If gbCntToken = 3 then
               lLong1 = GetNextTokenLong(0 , 2000000)
               lLong2 = GetNextTokenLong(1 , &H7F)
               lByte1 = lLong2
               lLong3 = lLong1 + lLong2
            elseif gbCntToken = 4 then
               lLong1 = GetNextTokenLong(0 , 2000000)
               lLong2 = GetNextTokenLong(1 , &H7F)
               lByte1 = lLong2
               lLong3 = lLong1 + lLong2
               lLong4 = GetNextTokenLong(0 , &HFFFF)
               lwSRAMPointer = lLong4
            else
               PrintparameterCountError "2, 3 "
               exit sub
            end if
            If gbPCInputError = cpNo then
               print #1 , "Write " ; lByte1 ; " Sector(s) = " ; lLong1 ; " to " ; lLong2 ; " CF-Card from" ;
               if gbCntToken = 4 then
                  print #1 , "SRAM Address " ; hex(lwSRAMPointer) ; " ... " ;
               else
                  print #1 , "Transfer-Buffer ... " ;
               end if
               WriteSector lwSRAMPointer , lLong1 , lByte1
               print #1 , " done"
            End If

         Case "MT"                      ' Fill Memory with Text
            if gbCntToken > 1 then
               lByte1 = gbPosStrParts(2)
               do
                 incr TRANSFERBUFFER_WRITE
                 lsToken = mid(gsPCInput , lByte1 , 1)
                 lByte2 = ASC(lsToken)
                 if lByte2 = 0 then     ' String Terminator
                    exit do
                 end if
                 CF_Transferbuffer(Transferbuffer_Write) = lByte2
                 incr lByte1
               loop until Transferbuffer_Write > 1023
           End IF

         Case "MP"                      ' Memory Pointer for MB and MT
              if gbCntToken = 2 then
                 lLong1 = GetNextTokenLong(0 , 1023)
                 if gbPCInputError = cpNo then
                    TransferBuffer_Write = lLong1
                 end if
              else
                  PrintParameterCountError "1 "
              End if

         Case "MB"                      'Fill Memory with Same Byte
            if gbCntToken > 1 then
               for lByte1 = 2 to gbCntToken
                   lLong1 = GetNextTokenLong(0 , 255)
                   if gbPCInputError = cpNo then
                      incr TransferBuffer_Write

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩国产一级二级| 狠狠色综合日日| 国产精品毛片a∨一区二区三区 | 久久综合色天天久久综合图片| 欧美伊人精品成人久久综合97| 91丨九色丨蝌蚪丨老版| 成人免费视频一区二区| 大美女一区二区三区| va亚洲va日韩不卡在线观看| 成人看片黄a免费看在线| 高清成人免费视频| 国产suv精品一区二区883| 国产91精品入口| 色综合久久六月婷婷中文字幕| 色噜噜狠狠成人网p站| 欧美日韩久久不卡| 91精品国产综合久久精品| 日韩丝袜美女视频| 久久精品一区二区三区不卡牛牛| 国产精品美女久久久久久| 亚洲精品久久久久久国产精华液| 午夜欧美一区二区三区在线播放| 日本不卡123| 国产99一区视频免费| 一本大道久久精品懂色aⅴ| 欧美人伦禁忌dvd放荡欲情| www国产精品av| 亚洲色图在线看| 老司机免费视频一区二区三区| 久久精品国产在热久久| 国产美女娇喘av呻吟久久| 国产乱码字幕精品高清av | 欧美精品久久久久久久久老牛影院 | 美女视频黄久久| 国产精品一区二区三区99| 国产精品99久久久久久有的能看 | 精品一区在线看| 国产乱国产乱300精品| 丁香亚洲综合激情啪啪综合| 波多野结衣中文字幕一区 | 日韩欧美高清一区| 国产视频一区二区在线| 亚洲欧美日韩中文字幕一区二区三区| 亚洲视频中文字幕| 亚洲成人动漫精品| 青草国产精品久久久久久| 国产美女在线观看一区| 色综合久久中文字幕综合网 | 国产精品麻豆欧美日韩ww| 亚洲激情在线播放| 日韩精品一级二级| 国产高清精品在线| 欧洲一区在线电影| 久久先锋影音av鲁色资源网| 亚洲欧洲无码一区二区三区| 午夜国产不卡在线观看视频| 国产麻豆日韩欧美久久| 99久久精品国产导航| 337p亚洲精品色噜噜噜| 国产日韩欧美综合一区| 亚洲在线中文字幕| 99麻豆久久久国产精品免费| 欧美性猛交xxxx黑人交| 国产午夜精品久久| 亚洲福利一二三区| av在线不卡网| 亚洲成av人片一区二区| 欧美日韩一卡二卡三卡| 在线成人小视频| 国产欧美中文在线| 青青草国产精品97视觉盛宴| 不卡大黄网站免费看| 日韩欧美国产wwwww| 夜色激情一区二区| www.日韩大片| 久久久精品tv| 人人爽香蕉精品| 欧美视频在线一区二区三区 | 91啪九色porn原创视频在线观看| 日韩三级.com| 午夜精品福利一区二区蜜股av | 欧美撒尿777hd撒尿| 国产精品免费网站在线观看| 美国欧美日韩国产在线播放| 欧美亚洲一区二区在线| 椎名由奈av一区二区三区| 国产成人自拍网| 亚洲精品一区二区三区精华液| 午夜激情一区二区| 欧美天堂一区二区三区| 亚洲精品五月天| 91一区一区三区| 国产精品电影一区二区| 成人免费三级在线| 国产精品三级电影| 不卡的av在线| 亚洲美女一区二区三区| 91在线一区二区三区| 中文字幕免费不卡在线| 韩国一区二区在线观看| 日韩三级视频在线看| 国产成人亚洲综合a∨婷婷图片| 久久亚洲综合av| 狠狠狠色丁香婷婷综合激情| 久久久国产精华| 国产成人免费网站| 国产精品盗摄一区二区三区| 色综合久久88色综合天天6| 亚洲永久精品国产| 在线免费观看日韩欧美| 久久99久久99| 国产精品久久久久久久久动漫| 菠萝蜜视频在线观看一区| 亚洲欧美日韩国产成人精品影院| 一本色道久久综合亚洲精品按摩| 亚洲影视在线观看| 制服丝袜亚洲播放| 国产福利精品导航| 亚洲免费在线播放| 制服丝袜激情欧洲亚洲| 久久精品免费看| 亚洲精品午夜久久久| 7777精品伊人久久久大香线蕉超级流畅 | 日本一区二区三区高清不卡| aaa亚洲精品| 亚洲二区在线视频| 8v天堂国产在线一区二区| 美女视频黄久久| 自拍av一区二区三区| 91精品国产入口| 成人高清伦理免费影院在线观看| 亚洲综合色丁香婷婷六月图片| 欧美一区二区女人| 成人免费av在线| 爽爽淫人综合网网站| 国产喷白浆一区二区三区| 99视频一区二区三区| 亚洲免费在线观看视频| 欧美国产日韩亚洲一区| 91精品欧美一区二区三区综合在 | 欧美精选在线播放| 岛国av在线一区| 免费在线观看精品| 中文字幕一区av| 精品国产精品一区二区夜夜嗨| 在线观看国产日韩| 久草精品在线观看| 亚洲福利国产精品| 成人欧美一区二区三区白人| 日韩精品中文字幕在线不卡尤物| 91视频免费看| 成人午夜av在线| 国产福利视频一区二区三区| 午夜视频一区在线观看| 综合网在线视频| 91精品一区二区三区久久久久久| 久久综合久久综合久久| 91麻豆精品国产自产在线观看一区| 不卡av电影在线播放| 国内精品嫩模私拍在线| 亚洲日本va午夜在线影院| 一二三四区精品视频| 久久精品亚洲国产奇米99| 欧美mv日韩mv国产网站| 制服丝袜中文字幕一区| 天堂av在线一区| 国产精品麻豆欧美日韩ww| 精品女同一区二区| 91精品国产高清一区二区三区| 色屁屁一区二区| 色综合欧美在线| 91福利精品第一导航| 一本一道综合狠狠老| 日本久久电影网| 91在线免费视频观看| 99riav一区二区三区| 国产成人日日夜夜| 99re成人精品视频| 99精品偷自拍| 91丨九色porny丨蝌蚪| 日本久久一区二区| 在线免费观看日韩欧美| 欧美三区在线视频| 欧美放荡的少妇| 日韩欧美成人午夜| 久久网这里都是精品| 久久久久久久久久美女| 国产日韩欧美综合在线| 中文字幕免费不卡在线| 国产精品国产馆在线真实露脸| 一区二区激情视频| 亚洲成人午夜电影| 久久99久久99| 国产成人免费在线观看| 91香蕉视频mp4| 欧美一区日韩一区| 国产精品色婷婷| 亚洲国产精品麻豆| 在线精品国精品国产尤物884a| 欧美日韩一区中文字幕|