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

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

?? boot5409.asm

?? tms320c5409啟動代碼
?? ASM
?? 第 1 頁 / 共 3 頁
字號:
        ldm     *ar1, a         ; acc A <-- DRR
        sub     #0008h, a       ; acc A = 0008
        rc      aneq
        call    ser_in          ; call SP input sub
        ldm     *ar1, a         ; acc A <-- DRR
        sub     #0AAh, a        ; acc A = 00aa
        rc      aneq
        
ser_08
                                ;The dummy words are read to maintain
                                ; hex converter compatibility with
                                ; the 548/549

        call    DBsreadA        ; call SP double read byte from DRR
        stl     a, @temp0       ; save DUMMY WORD value in temp0
        call    DBsreadA        ; call SP double read byte from DRR
        stl     a, @temp1       ; save DUMMY WORD value in temp1
        call    DBsreadA        ; call SP double read byte from DRR
        stl     a, @temp2       ; save DUMMY WORD value in temp2
        call    DBsreadA        ; call SP double read byte from DRR
        stl     a, @temp3       ; save DUMMY WORD value in temp3

        call    DBsreadA        ; call SP double read byte from DRR
        stl     a, @xentry      ; save XPC entry point

        call    DBsreadA        ; call SP double read byte from DRR
        stl     a, @entry       ; save entry point

SP08_1  call    DBsreadA        ; call SP double read byte from DRR
                                ; read section size
        bcd     endboot,aeq     ; section size =0 indicate boot end
        sub     #1,a,b          ; brc = section size - 1
        stlm    b, brc          ; update block repeat counter register
        call    DBsreadA        ; call SP double read byte from DRR
                                ; read XPC of destination address
        stl     a,@dest         ; XPC of destination
        call    DBsreadA        ; call SP double read byte from DRR
                                ; read destination address
        add     @dest, 16, a    ;
        rptb    sfxr08-1
        call    ser_in          ; call SP input sub
        ld      *ar1, 8, b      ; acc B <-- junkbyte.high byte
        and     #0ff00h, b      ; acc B <-- high.byte
        stl     b, @hbyte       ; save high byte
        call    ser_in          ; call SP input sub
        ldu     *ar1, b         ; acc B <-- junkbyte.low byte
        and     #0ffh, b        ; acc B <-- low byte
        or      @hbyte, b       ; acc B <-- high byte.low byte
        writa   @BL             ; [acc A] <-- acc BL
        add     #1, a           ; increment dest add
sfxr08
        b       SP08_1          ; check next section


*************************************************************************
*** SPIBOOT - This routine reads a boot-table from an SPI EEPROM through 
***           McBSP2.                                       12/06/99 PMJ2 
*************************************************************************
SPIBOOT
*** Initialize the McBSP2 for SPI mode. *********************************
        stm     SPSA2, ar4      ;AR4->SPSA2
        stm     dxr12-1, ar5    ;AR5->DXR
        ld      #249, a         ;Bit-rate divisor (.4Mhz @100MIPs)
        ssbx    XF              ;Drive XF high - optional hold feature.
        call    SPI_INIT        ;Initialize McBSP.
***************************************************
***** Start reading EEPROM.                   *****
***************************************************



        stm     #0, AR3         ;Init address to read from.
        call    SPI_READ        ;Read address 0.
        xor     #08h,a          ;Checking for boot-table (08AAh)
        bc      parallel, aneq  ;If not 08h, no-go. Branch to parallel.
        mar     *AR3+           ;increment address
        call    SPI_READ        ;Read address 1.
        xor     #0AAh,a         ;Checking for boot-table (08AAh)
        bc      parallel, aneq   ;If not AAh, no-go. Branch to parallel.



***************************************************
***** If here then booting.************************
***** The next eight addresses are skipped    *****
***** to maintain hex converter compatibility *****
***** with the 548/549 serial boot-table      *****
***************************************************
        stm     #0ah, AR3       ;Init address to read from.
        call    SPI_READ        ;Read address 0ah.
        stl     a, 8, xentry    ;Store xentry high-byte.
        mar     *ar3+           ;increment address
        call    SPI_READ        ;Read address 0fh.
        or      xentry, a       ;And xentry high-byte and low-byte.
        stl     a, xentry       ;Store XPC entry point.

        mar     *ar3+           ;Increment address.
        call    SPI_READ        ;Read address 010h.
        stl     a, 8, entry     ;Store entry high-byte.
        mar     *ar3+           ;increment address
        call    SPI_READ        ;Read address 011h.
        or      entry, a        ;And entry high-byte and low-byte.
        stl     a, entry        ;Store PC entry point.
        mar     *ar3+           ;increment address        

SPISECT call    SPI_READ        ;Read address 0ch.
        stl     a, 8, temp0     ;Store size high-byte.
        mar     *ar3+           ;Increment address.
        call    SPI_READ        ;Read address 0dh.
        or      temp0, a        ;And size high-byte and low-byte.
        bc      SPIEND, aeq     ;If size = 0, done.
        sub     #1,a            ;Section size - 1.
        stlm    a, brc          ;Update block repeat counter register.

        mar     *ar3+           ;Increment address.
        call    SPI_READ        ;Read address 0eh.
        stl     a, 8, xdest     ;Store xdest high-byte.
        mar     *ar3+           ;increment address
        call    SPI_READ        ;Read address 0fh.
        or      xdest, a        ;And xdest high-byte and low-byte.
        stl     a, xdest        ;Store XPC entry point.

        mar     *ar3+           ;Increment address.
        call    SPI_READ        ;Read address 010h.
        stl     a, 8, dest      ;Store dest high-byte.
        mar     *ar3+           ;increment address
        call    SPI_READ        ;Read address 011h.
        or      dest, a         ;And dest high-byte and low-byte.
        stl     a, dest         ;Store PC dest point.
*********This is the loop for reading a section**************
        rptb    SPILOOP-1
        mar     *ar3+           ;Increment address.
        call    SPI_READ        ;Read high-byte.
        stl     a, 8, temp0     ;Store high-byte.
        mar     *ar3+           ;increment address
        call    SPI_READ        ;Read address low-byte.
        or      temp0, a        ;And high-byte and low-byte.
        stl     a, temp0        ;Temporarily save it. 
        dld     xdest, a        ;Get destination address.
        writa   temp0           ;[acc A] <-- acc BL
        add     #1, a           ;increment dest add
        dst     a, xdest        ;Save destination address.
SPILOOP mar     *ar3+           ;Increment address.
        b       SPISECT         ;Read next section.
SPIEND  rsbx    XF              ;Drive XF low - optional hold feature.
        b       endboot         ;Branch to loaded code.


*****************************************************************
*       Bootload from parallel I/O port (pa0)
*****************************************************************

pasyini
        call    handshake
        portr   pa0, @temp0     ; read BSW 10AAh or 8AAh
        ld      @temp0, a       ; check BSW
        sub     #10aah, a, b    ; acc A = 10aah ?
        bcd     pasync16, beq   ;
        and     #0ffh, a        ; check acc AL = 08
        sub     #8,a            ;
        bc      endboot, aneq   ; not a boot mode
        call    handshake 
        portr   pa0, @temp0     ; read BSW 10AAh or 8AAh
        ld      @temp0, a       ; check BSW
        and     #0ffh, a        ; check acc AL = 08
        sub     #0aah, a        ; acc A = 0aah ?
        bc      pasync08, aeq   ;
        b       endboot

*****************************************************************
*       Bootload from I/O port (8-bit parallel), MS byte first
*****************************************************************

pasync08
        call    handshake8
        stl     b, @swwsr       ; save swwsr ini-value to SWWSR

        call    handshake8
        stl     b, @bscr        ; save bscr ini-value to BSCR

        call    handshake8
        stl     b, @xentry      ; save XPC of entry point

        call    handshake8
        stl     b, @entry       ; save entry point
pasy08_1
        ld      #0, b           ; b=0, Rev1.02 to fix 8bitI/O bug.
        call    handshake8
        bc      endboot, beq    ; if size = 0, branch to endboot
        sub     #1, b           ; otherwise, subtract 1 from block size
        stlm    b, brc          ; set brc to correct block size

        call    handshake8
*********************** Bug fix ***********************************
        stl     b, @temp0	  ; save XPC of destination addr
        ld      @temp0,16,a     ;added to correctly calculate the 
					  ;extended address of the section
					  ;PMJ2(11/10/99) 1.02
        call    handshake8
        add     b,a             ; acc A <-- destination address
*******************************************************************

        rptb    pfxr08-1
        call    handshake8

        ssbx    xf              ; acknowledge byte as soon as it's read

        bc             $,bio    ;wait until BIO high to write data

        writa   BL              ; write code word to program memory
        add     #1, a           ; increment destination address
pfxr08
        b        pasy08_1       ; branch to next section

*****************************************************************
*       Bootload from I/O port (16-bit parallel)
*****************************************************************

pasync16
        call    handshake
        portr   pa0, @swwsr     ; read word from port to SWWSR
        call    handshake
        portr   pa0, @bscr      ; read word from port to BSCR
        call    handshake
        portr   pa0, @xentry    ; read word from port to XPC of
                                ; entry point
        call    handshake
        portr   pa0, @entry     ; read word from port to entry
pasy16_1
        call    handshake
        portr   pa0, @lngth     ; read word from port to length
        ldu     @lngth, a       ; check size
        bcd     endboot, aeq    ; size = 0, end of boot
        sub     #1, a, b        ;
        stlm    b, brc
        call    handshake
        portr   pa0, @dest      ; read word from port to XPC of
                                ; destination addr
        call    handshake
        portr   pa0, @temp0     ; read from port to temp for
                                ; destiantion addr
        ldu     @temp0, a       ; acc A <-- destination address
        add     @dest, 16, a    ;

        rptb    pfxr16-1
        call   handshake        ; check BIO low ?
        portr  pa0, @temp0      ; read word from port to temp
        ssbx   xf               ; acknowledge word as soon as it's read

        bc             $,bio    ; wait until BIO high to write data

        writa  @temp0           ; write word to destination
        add    #1, a            ; increment destination address
pfxr16
        b       pasy16_1

*       Handshake with BIO signal using XF

handshake
        ssbx    xf              ; acknowledge previous data word
        bc      $,bio           ; wait till host sends request
        rsbx    xf              ; indicate ready to receive new data
        rc      bio             ; wait till new data ready
        b       $-1

handshake8
        ssbx    xf              ; acknowledge previous data word
        bc      $,bio           ; wait till host sends request
        rsbx    xf              ; indicate ready to receive new data
        bc      $,nbio          ; wait till new data ready

        portr   pa0, BL         ;read high byte into accumulator A
************* Bug fix ******************************************************
	  and     #0ffh,b		;force BG, BH to zero for correct evaluation
					;(11/10/99 PMJ2)
****************************************************************************
        sftl    b,8             ;left shift by 8 bits

        ssbx    xf              ; acknowledge previous data word
        bc      $,bio           ; wait till host sends request
        rsbx    xf              ; indicate ready to receive new data
        bc      $,nbio          ; wait till new data ready

        portr   pa0, @temp0
        andm    #0ffh,temp0     ; clear upper byte
        or      @temp0, b       ; combine high and low byte
        ret

bootend
        .end


?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
九九九精品视频| 久久国产精品无码网站| 国产三级精品在线| 久久综合色天天久久综合图片| 日韩你懂的在线观看| 欧美电视剧免费观看| 久久亚洲一区二区三区四区| 久久久久久9999| 中文字幕在线不卡视频| 亚洲日本韩国一区| 亚洲成人动漫在线免费观看| 日一区二区三区| 国产在线视频一区二区三区| 国产美女主播视频一区| 成人国产精品免费观看| 色天使色偷偷av一区二区| 欧美肥妇bbw| 久久综合久久综合久久综合| 日韩伦理电影网| 亚洲成a天堂v人片| 国产乱子轮精品视频| 91在线码无精品| 3d成人动漫网站| 久久久久亚洲蜜桃| 一区二区三区四区乱视频| 日韩精品电影一区亚洲| 丁香六月久久综合狠狠色| 在线观看91视频| 精品国产污网站| 一区二区三区在线视频观看58| 日韩国产欧美一区二区三区| 国产麻豆精品一区二区| 精品污污网站免费看| 久久久久免费观看| 亚洲成人激情综合网| 国产经典欧美精品| 在线观看91精品国产麻豆| 久久综合九色综合97婷婷女人| 一区二区免费在线播放| 国产高清无密码一区二区三区| 欧美午夜片在线观看| 久久精品视频在线免费观看| 一区二区欧美视频| 波多野洁衣一区| 日韩三级在线观看| 亚洲综合色婷婷| 春色校园综合激情亚洲| 欧美一区二区视频在线观看| 亚洲另类在线视频| 成人激情午夜影院| 日韩免费视频一区| 日韩精品国产精品| 欧美三级日韩在线| 亚洲欧美成aⅴ人在线观看 | 五月天激情小说综合| 国产91丝袜在线播放| 欧美精品在线一区二区| 亚洲天堂免费看| 国产成人小视频| 精品欧美一区二区久久| 亚洲va韩国va欧美va精品| 91麻豆swag| 国产精品色哟哟| 粉嫩av一区二区三区粉嫩 | 91在线视频官网| 中文幕一区二区三区久久蜜桃| 紧缚捆绑精品一区二区| 日韩一区二区电影| 麻豆91免费观看| 欧美一级xxx| 老司机午夜精品99久久| 欧美一二三四在线| 久久69国产一区二区蜜臀| 欧美一区二区视频在线观看2020| 亚洲第一搞黄网站| 欧美精品在线观看播放| 婷婷国产在线综合| 欧美精品黑人性xxxx| 免费成人深夜小野草| 日韩精品一区二区三区中文不卡| 亚洲6080在线| 日韩欧美国产一区在线观看| 紧缚奴在线一区二区三区| 国产三级精品在线| 91视频在线观看| 婷婷开心激情综合| 日韩免费成人网| 国产一区视频在线看| 国产精品久久久久毛片软件| 色综合久久99| 免费黄网站欧美| 久久久精品国产免大香伊| 国产999精品久久| 亚洲欧美福利一区二区| 欧美日本高清视频在线观看| 精品无人区卡一卡二卡三乱码免费卡| 久久色在线视频| 91影视在线播放| 美女尤物国产一区| 国产精品女人毛片| 欧美三级日韩三级| 久久国产婷婷国产香蕉| 国产欧美日本一区二区三区| 99热99精品| 免费高清在线一区| 中文字幕在线一区| 7777女厕盗摄久久久| 懂色av噜噜一区二区三区av| 亚洲综合一区二区| 国产亚洲精品超碰| 欧美日韩一区在线| 国产东北露脸精品视频| 亚洲午夜影视影院在线观看| 欧美精品一区二区在线观看| 日本韩国欧美国产| 国产成a人亚洲精品| 午夜av一区二区| 国产精品欧美一区二区三区| 欧美久久久久久蜜桃| 波多野结衣精品在线| 久久av资源站| 午夜久久久久久久久久一区二区| 日本一区二区三区四区| 日韩一区二区在线观看视频| 色av一区二区| 成人sese在线| 国产麻豆成人传媒免费观看| 天涯成人国产亚洲精品一区av| 国产精品丝袜黑色高跟| 欧美mv日韩mv| 欧美性大战久久久久久久蜜臀| 国产91精品一区二区麻豆网站| 奇米一区二区三区| 亚洲国产一区在线观看| 亚洲精品国产无天堂网2021| 久久久精品免费网站| 日韩视频在线你懂得| 精品婷婷伊人一区三区三| 91福利小视频| 一本色道综合亚洲| 99re免费视频精品全部| 不卡视频一二三四| 成人免费毛片aaaaa**| 国产精品影视在线观看| 蜜臀a∨国产成人精品| 亚洲mv大片欧洲mv大片精品| 亚洲国产裸拍裸体视频在线观看乱了 | 91国偷自产一区二区开放时间 | 国产精品电影一区二区| 国产精品乱码一区二区三区软件| 精品国产91久久久久久久妲己 | 国产亚洲精品福利| 国产亚洲美州欧州综合国| 久久精品一区蜜桃臀影院| 久久久久久久综合狠狠综合| 精品对白一区国产伦| 2023国产精品自拍| 国产日韩欧美亚洲| 国产精品美女www爽爽爽| 国产精品久久久爽爽爽麻豆色哟哟 | 久久99热99| 国产东北露脸精品视频| www.av亚洲| 欧美在线免费视屏| 8x8x8国产精品| 久久综合久色欧美综合狠狠| 欧美国产精品久久| 亚洲激情成人在线| 日韩电影在线看| 国产一区高清在线| 成人午夜电影网站| 在线观看欧美黄色| 91精品欧美久久久久久动漫 | 欧美日韩一级黄| 欧美精品一区二区三区蜜桃视频| 久久久久亚洲蜜桃| 亚洲宅男天堂在线观看无病毒| 日韩精彩视频在线观看| 国内精品久久久久影院色| av在线播放不卡| 欧美丰满少妇xxxbbb| 国产欧美一区二区精品久导航 | 丝袜美腿亚洲一区二区图片| 国产在线一区二区综合免费视频| 成人激情黄色小说| 欧美一区二区高清| 18欧美亚洲精品| 日本亚洲欧美天堂免费| 成人蜜臀av电影| 91精品国产综合久久久久久久久久| 久久综合久久99| 亚洲一二三四区| 国产一区二区影院| 欧美日韩中文国产| 国产精品少妇自拍| 日本sm残虐另类| 一本色道综合亚洲| 国产午夜精品福利| 美腿丝袜亚洲三区| 欧美日韩黄色一区二区|