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

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

?? dsp_boot.s54

?? 很多的經典的嵌入式例子 自己去看吧
?? S54
字號:
;=============================================================================
; Filename:    dsp_boot.s54
; Description: This file contains the DSP bootloader.
;
; Copyright (C) 2000 - 2002 Texas Instruments Incorporated
;
; Assumptions:  DSP Executable to be bootloaded must be designed to run in
;               Microcomputer Mode - MP/MC = 0
;
;=============================================================================
          .include dsp_boot.inc
          .mmregs


          .sect "intvects"
SELF
          STM  0FFA8h, PMST           ;Set Overlay and DROM Bits
          B    BootLoad
        


          .text
BootLoad:
;===== Configure DSP Memory =====
;================================
          RPT  #100-1                  ;Delay - didn't work without this
          NOP
          STM  00010h, BSCR           ;Clear API Boot Mode
          
;===== Set PMST for Bootload of particular DSP Executable =====
          STM  PMST_VAL, AR1
          LD   *AR1,B                 ;Save PMST in B for later
;===== If (OVLY == 0) this is a special condition set rest of PMST, but don't
;      set OVLY=0 now 
          LD   *AR1,A
          OR   #00020h,A               ;Make sure OVLY=1
          STLM A, PMST
          
;===== Let MCU Know we are ready to Bootload =====
          STM  DSP_READY, AR1         ; DSP_READY address used to tell MCU
                                      ; time to bootload 
          ST   #1, *AR1               ; API boot mode is done. 
                                      ; Set *DSP_READY=1 

          LD   5, ARP                 ; AR5 used for branch test
          NOP                         ; pipeline conflict avoidance
          

;===== Main Loop - Wait for Command from Host =====
;==================================================
XMainLoop:
;===== Check if there is program to load =====
          MVDM PROG_BUF_READY, AR5    ; Check if there is program data to load
          NOP                         ; pipeline conflict avoidance
          BANZ XProgLoad, *AR5        ; Second argument unused.
;===== Check if there is data to load =====          
          MVDM DATA_BUF_READY, AR5    ; Check if there is data to load
          NOP                         ; pipeline conflict avoidance
          BANZ XDataLoad, *AR5        ; Second argument unused.
;===== Check if were done with bootload =====                  
          MVDM  COPY_DONE, AR5        ; Check if we're done with bootload
          NOP                         ; pipeline conflict avoidance
          BANZ ProgEnd, *AR5          ; Goto End when all done.
          B    XMainLoop              ; Stay in this loop until bootload is
                                      ; finished 
          
          
;===== Load Program =====          
;========================
XProgLoad:
;===== AR4->Buffer of Code to be loaded =====
          STM  API_BUF_START, AR4     ; AR4 pointing to source memory
;===== Section Count = Count - 1, Store for repeat instruction to copy code
          LD   *AR4, A                ; A = count.
          SUB  #1, A                  ; RPT instruction takes (n-1) as count.
          STL  A, *AR4                ; Store decremented count back to memory
          MVDP *AR4+, #XProgRPT+1     ; Move count into RPT opcode below.

;===== Main Program Loop =====
XProgLoop:
;===== Code below assumes that DSP Exec will run in MP/MC = 0 
;      (i.e., Microcomputer Mode) =====
          ANDM #0FFBFh, PMST          ; Make sure we are in Microcomputer 
                                      ; Mode MP/MC=0

;===== if (DestADdr < 0x6000) && (OVLY == 0) Then DestAddr is external 
;      and requires special loading =====

;===== if (DestAddr < 0x6000) Then Check OVLY bit =====
          LDU  *AR4, A                ; A = DestAddr
          NOP
          NOP
          SUB  #06000h,A              ; If DestAddr < 0x6000, drop through 
          NOP
          NOP
          BC   StoreDestProgAddr,AGEQ ; Otherwise, DestAddr >= 0x6000, 
                                      ; take branch
;===== if (OVLY == 0) Then Special Loading Required =====
          STM  PMST_VAL, AR1
          BITF *AR1, #00020h          ; Test Overlay Bit, if not set, 
                                      ; drop through 
          NOP
          NOP
          BC   StoreDestProgAddr,TC   ; Otherwise, if set OVLY = 1, take branch
          
;===== Load This Section of Code via MP mode and DestAddr + 0x8000 =====
SpecialProgLoad:
          ORM  #00040h, PMST          ; Put DSP in Microprocessor 
                                      ; Mode MP/MC = 1
          NOP
          NOP
          ORM #08000h,*AR4            ; Add 0x8000 to DestAddr
          NOP
          NOP
          
StoreDestProgAddr:
;===== Store Destination Addr for Copy =====
          MVDP *AR4, #XProgMVDP+1     ; 
                                      ; Move destination adr into opcode below.
          MVDP *AR4+, #XProgMVDP+1    ; Move destination adr into opcode below.
XProgRPT:
          RPT  #0FFFFH                ; Repeat count times. 
                                      ; (FFFF will be replaced)
XProgMVDP:
          MVDP *AR4+, #0              ; Move from source to destination. 
                                      ; (note 0 gets overwritten)
          LD   *AR4, A                ; Get next count
          STLM A, AR5                 ; Store to AR5 for banz test.
          SUB  #1, A                  ; RPT instruction takes (n-1) as count.
          STL  A, *AR4                ; Store decremented count back to memory
          MVDP *AR4+, #XProgRPT+1     ; Move count into RPT opcode below.
          LD   5, ARP                 ; ARP = AR5 (used for banz test later)
          NOP                         ; Needed to avoid pipeline conflict
          BANZ XProgLoop, *AR5        ; Dummy second argument unused
          STM  PROG_BUF_READY, AR4    ; Return Address
          ST   #0, *AR4               ; Write 0 to PROG status word 
                                      ; signaling complete
          B    XMainLoop              ; Return to main bootloader loop.

;===== Load Data =====
;=====================
XDataLoad:
          STM  API_BUF_START, AR4     ; AR4 pointing to source memory
          LD   *AR4, A                ; A = count.
          SUB  #1, A                  ; RPT instruction takes (n-1) as count.
          STL  A, *AR4                ; Store decremented count back to memory
          MVDP *AR4+, #XDataRPT+1     ; Move count into RPT opcode below.
XDataLoop:
          LD   *AR4+, A               ; Get destination address
          STLM A, AR3                 ; AR3 points to destination address
          NOP                         ; Needed to avoid pipeline conflict
          NOP                         ; Needed to avoid pipeline conflict
XDataRPT:
          RPT  #0FFFFH                ; Repeat count times. 
                                      ; (FFFF will be replaced)
          MVDD *AR4+, *AR3+           ; Move from source to destination.
          LD   *AR4, A                ; Get next count
          STLM A, AR5                 ; Store to AR5 for banz test.
          SUB  #1, A                  ; RPT instruction takes (n-1) as count.
          STL  A, *AR4                ; Store decremented count back to memory
          MVDP *AR4+, #XDataRPT+1     ; Move count into RPT opcode below.
          LD   5, ARP                 ; ARP = AR5 (used for banz test later)
          NOP                         ; Needed to avoid pipeline conflict
          BANZ XDataLoop, *AR5        ; Dummy second argument unused
          STM  DATA_BUF_READY, AR4    ; Return Address
          ST   #0, *AR4               ; Write return value to return address, 
                                      ; signa
          B    XMainLoop              ; Return to main bootloader loop.

ProgEnd:
          B    0FF80h

          
          .end
  






?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品久久免费看| 一区二区三区在线影院| 91精品国产综合久久精品图片 | 欧美猛男gaygay网站| 日本韩国一区二区| 欧美优质美女网站| 在线国产亚洲欧美| 欧美日韩国产经典色站一区二区三区| 欧美日韩成人综合天天影院| 久久午夜电影网| 欧美精品一区男女天堂| 日韩精品在线一区| 欧美sm极限捆绑bd| 国产亚洲一区二区三区四区| 国产视频视频一区| 最新国产の精品合集bt伙计| 亚洲欧美福利一区二区| 亚洲成av人片| 六月丁香婷婷色狠狠久久| 国产综合色视频| 国产成人综合在线播放| www.欧美精品一二区| 91小宝寻花一区二区三区| 在线观看亚洲精品视频| 欧美丰满一区二区免费视频| 欧美电视剧在线观看完整版| 久久天堂av综合合色蜜桃网| 中文字幕的久久| 一区二区三区在线免费视频 | 另类综合日韩欧美亚洲| 国产精品影音先锋| 91无套直看片红桃| 综合色天天鬼久久鬼色| 欧美日韩综合不卡| 4438x成人网最大色成网站| 2021中文字幕一区亚洲| 国产精品乱人伦一区二区| 亚洲一二三区视频在线观看| 免费看日韩精品| 丁香啪啪综合成人亚洲小说 | 国产ts人妖一区二区| 91在线无精精品入口| 欧美美女喷水视频| 久久精品人人做人人爽人人| 夜夜精品浪潮av一区二区三区| 美女被吸乳得到大胸91| 国产999精品久久久久久绿帽| 91极品美女在线| 久久久久久久网| 夜夜精品浪潮av一区二区三区| 久久99精品国产麻豆婷婷| 91视频国产资源| 精品美女被调教视频大全网站| 日韩毛片视频在线看| 强制捆绑调教一区二区| 在线不卡免费欧美| 欧美tickling挠脚心丨vk| 中文字幕一区二区三| 日产国产欧美视频一区精品 | 欧美伊人久久久久久久久影院| 日韩欧美国产综合在线一区二区三区| 日本一区二区不卡视频| 日本系列欧美系列| 91网站在线观看视频| 精品国产伦一区二区三区观看方式| 亚洲欧美日韩国产一区二区三区| 国产乱子伦一区二区三区国色天香| 91国偷自产一区二区三区成为亚洲经典 | 久久欧美一区二区| 亚洲a一区二区| 99久久精品久久久久久清纯| 精品奇米国产一区二区三区| 亚洲自拍欧美精品| 国产成人精品www牛牛影视| 在线免费亚洲电影| 91麻豆精品国产综合久久久久久 | 欧美国产精品一区| 免费成人在线影院| 欧美三电影在线| 亚洲欧美自拍偷拍| 国产成人一级电影| 精品少妇一区二区三区视频免付费 | 99精品国产一区二区三区不卡| 日韩欧美另类在线| 天天综合色天天综合| 色呦呦日韩精品| 国产精品久久久久久久久免费桃花| 久久精品噜噜噜成人av农村| 欧美日韩在线直播| 亚洲蜜臀av乱码久久精品| 成人性生交大片免费看中文 | 粉嫩嫩av羞羞动漫久久久| 国产午夜精品一区二区三区视频 | 日韩电影在线一区二区三区| 91高清视频在线| 自拍视频在线观看一区二区| 国产精品一区二区三区四区| 日韩一区二区视频| 五月天久久比比资源色| 欧美怡红院视频| 亚洲国产美女搞黄色| 色噜噜久久综合| 一区二区三区四区视频精品免费 | 91美女蜜桃在线| 国产精品久久久久久久裸模| 波多野结衣精品在线| 国产精品久99| 一本大道综合伊人精品热热 | 国产一区二区三区免费观看| 精品国产1区2区3区| 久久精品国产**网站演员| 欧美一级日韩一级| 日韩女优av电影| 日本 国产 欧美色综合| 91精品国产综合久久婷婷香蕉| 婷婷开心激情综合| 日韩一区二区三区三四区视频在线观看 | 91麻豆精品国产91久久久久久| 视频一区免费在线观看| 日韩三级精品电影久久久 | 精品免费国产二区三区 | 69久久99精品久久久久婷婷| 男女男精品视频网| 精品国产一二三| 成人小视频在线观看| 亚洲色图欧美在线| 欧美久久一二三四区| 麻豆精品一区二区三区| 日本一区二区三区国色天香| 99久久婷婷国产精品综合| 亚洲影视在线播放| 日韩女优av电影| 粉嫩av一区二区三区| 亚洲综合一区二区三区| 日韩西西人体444www| 成人亚洲一区二区一| 亚洲一区二区三区美女| 2021国产精品久久精品| av在线不卡网| 丝袜美腿亚洲一区| 久久久久综合网| 在线观看免费成人| 精一区二区三区| 亚洲欧美激情在线| 日韩欧美一级片| 成人黄色软件下载| 日韩电影在线看| 国产精品嫩草影院av蜜臀| 欧美日韩欧美一区二区| 国产乱理伦片在线观看夜一区| 一区二区三区在线视频观看| 欧美精品一区二区三区很污很色的| av中文字幕不卡| 免费xxxx性欧美18vr| 中文字幕欧美一| 亚洲人成在线观看一区二区| 国产成人精品www牛牛影视| 亚洲另类在线制服丝袜| 欧美xxxxxxxxx| 欧美性生交片4| 国产精品888| 日韩激情av在线| 综合分类小说区另类春色亚洲小说欧美| 在线观看91精品国产麻豆| 成人黄色小视频在线观看| 蜜臀av一区二区在线免费观看 | 亚洲国产精品久久久男人的天堂| 久久久噜噜噜久久人人看 | xnxx国产精品| 欧洲另类一二三四区| 国产成人精品亚洲午夜麻豆| 日韩1区2区日韩1区2区| 亚洲女人的天堂| 国产网站一区二区| 日韩一级免费观看| 在线观看成人免费视频| 福利电影一区二区| 久久99久久久久久久久久久| 亚洲国产欧美在线人成| 18欧美亚洲精品| 国产欧美一区二区精品性| 日韩一区二区不卡| 欧美性大战久久| 91网站在线观看视频| 欧美一级精品在线| 成人国产精品免费| 精品一二线国产| 亚洲一区二区精品视频| 国产网站一区二区| 久久综合狠狠综合久久激情| 6080国产精品一区二区| 91麻豆swag| 99精品久久久久久| proumb性欧美在线观看| 成人综合在线观看| 国产suv精品一区二区6| 国产一区二区视频在线播放| 久久福利视频一区二区| 蜜臀av国产精品久久久久| 日韩精品久久久久久|