⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 jdmarker.txt

📁 STM32F103ZET6+UCOSII+UCGUI源码
💻 TXT
📖 第 1 页 / 共 5 页
字号:
000016  788d              LDRB     r5,[r1,#2]            ;672
000018  2d6f              CMP      r5,#0x6f              ;672
00001a  d124              BNE      |L2.102|
00001c  78cd              LDRB     r5,[r1,#3]            ;673
00001e  2d62              CMP      r5,#0x62              ;673
000020  d121              BNE      |L2.102|
000022  790d              LDRB     r5,[r1,#4]            ;674
000024  2d65              CMP      r5,#0x65              ;674
000026  d11e              BNE      |L2.102|
000028  798a              LDRB     r2,[r1,#6]            ;676
00002a  794b              LDRB     r3,[r1,#5]            ;676
00002c  79cd              LDRB     r5,[r1,#7]            ;677
00002e  eb022203          ADD      r2,r2,r3,LSL #8       ;676
000032  7a0b              LDRB     r3,[r1,#8]            ;677
000034  7a4e              LDRB     r6,[r1,#9]            ;678
000036  eb032305          ADD      r3,r3,r5,LSL #8       ;677
00003a  7a8d              LDRB     r5,[r1,#0xa]          ;678
00003c  eb052606          ADD      r6,r5,r6,LSL #8       ;678
000040  7acd              LDRB     r5,[r1,#0xb]          ;679
000042  e9c06508          STRD     r6,r5,[r0,#0x20]
000046  e9c02306          STRD     r2,r3,[r0,#0x18]
00004a  6821              LDR      r1,[r4,#0]
00004c  204c              MOVS     r0,#0x4c
00004e  6148              STR      r0,[r1,#0x14]
000050  6820              LDR      r0,[r4,#0]
000052  2101              MOVS     r1,#1
000054  6842              LDR      r2,[r0,#4]
000056  4620              MOV      r0,r4
000058  4790              BLX      r2
;;;681        cinfo->saw_Adobe_marker = TRUE;
00005a  2001              MOVS     r0,#1
;;;682        cinfo->Adobe_transform = (UINT8) transform;
00005c  f8c40124          STR      r0,[r4,#0x124]
000060  f8845128          STRB     r5,[r4,#0x128]
;;;683      } else {
;;;684        /* Start of APP14 does not match "Adobe", or too short */
;;;685        TRACEMS1(cinfo, 1, JTRC_APP14, (int) (datalen + remaining));
;;;686      }
;;;687    }
000064  bd70              POP      {r4-r6,pc}
                  |L2.102|
000066  214e              MOVS     r1,#0x4e              ;685
000068  6141              STR      r1,[r0,#0x14]         ;685
00006a  6821              LDR      r1,[r4,#0]            ;685
00006c  18d0              ADDS     r0,r2,r3              ;685
00006e  6188              STR      r0,[r1,#0x18]         ;685
000070  6820              LDR      r0,[r4,#0]            ;685
000072  2101              MOVS     r1,#1                 ;685
000074  6842              LDR      r2,[r0,#4]            ;685
000076  4620              MOV      r0,r4                 ;685
000078  e8bd4070          POP      {r4-r6,lr}            ;685
00007c  4710              BX       r2                    ;685
;;;688    
                          ENDP


                          AREA ||i.first_marker||, CODE, READONLY, ALIGN=1

                  first_marker PROC
;;;920    LOCAL(boolean)
;;;921    first_marker (j_decompress_ptr cinfo)
000000  e92d47f0          PUSH     {r4-r10,lr}
;;;922    /* Like next_marker, but used to obtain the initial SOI marker. */
;;;923    /* For this marker, we do not allow preceding garbage or fill; otherwise,
;;;924     * we might well scan an entire input file before realizing it ain't JPEG.
;;;925     * If an application wants to process non-JFIF files, it must seek to the
;;;926     * SOI before calling the JPEG library.
;;;927     */
;;;928    {
;;;929      int c, c2;
;;;930      INPUT_VARS(cinfo);
000004  6984              LDR      r4,[r0,#0x18]
000006  4605              MOV      r5,r0                 ;928
;;;931    
;;;932      INPUT_BYTE(cinfo, c, return FALSE);
000008  e9d40100          LDRD     r0,r1,[r4,#0]
00000c  b929              CBNZ     r1,|L3.26|
00000e  68e1              LDR      r1,[r4,#0xc]
000010  4628              MOV      r0,r5
000012  4788              BLX      r1
000014  b148              CBZ      r0,|L3.42|
000016  e9d40100          LDRD     r0,r1,[r4,#0]
                  |L3.26|
00001a  f8107b01          LDRB     r7,[r0],#1
00001e  1e49              SUBS     r1,r1,#1
;;;933      INPUT_BYTE(cinfo, c2, return FALSE);
000020  d108              BNE      |L3.52|
000022  68e1              LDR      r1,[r4,#0xc]
000024  4628              MOV      r0,r5
000026  4788              BLX      r1
000028  b910              CBNZ     r0,|L3.48|
                  |L3.42|
00002a  2000              MOVS     r0,#0
                  |L3.44|
;;;934      if (c != 0xFF || c2 != (int) M_SOI)
;;;935        ERREXIT2(cinfo, JERR_NO_SOI, c, c2);
;;;936    
;;;937      cinfo->unread_marker = c2;
;;;938    
;;;939      INPUT_SYNC(cinfo);
;;;940      return TRUE;
;;;941    }
00002c  e8bd87f0          POP      {r4-r10,pc}
                  |L3.48|
000030  e9d40100          LDRD     r0,r1,[r4,#0]         ;933
                  |L3.52|
000034  f8106b01          LDRB     r6,[r0],#1            ;933
000038  f1a10901          SUB      r9,r1,#1              ;933
00003c  4680              MOV      r8,r0                 ;933
00003e  2fff              CMP      r7,#0xff              ;934
000040  d101              BNE      |L3.70|
000042  2ed8              CMP      r6,#0xd8              ;934
000044  d00a              BEQ      |L3.92|
                  |L3.70|
000046  6829              LDR      r1,[r5,#0]            ;935
000048  2035              MOVS     r0,#0x35              ;935
00004a  6148              STR      r0,[r1,#0x14]         ;935
00004c  6828              LDR      r0,[r5,#0]            ;935
00004e  6187              STR      r7,[r0,#0x18]         ;935
000050  6828              LDR      r0,[r5,#0]            ;935
000052  61c6              STR      r6,[r0,#0x1c]         ;935
000054  6828              LDR      r0,[r5,#0]            ;935
000056  6801              LDR      r1,[r0,#0]            ;935
000058  4628              MOV      r0,r5                 ;935
00005a  4788              BLX      r1                    ;935
                  |L3.92|
00005c  f8c561a0          STR      r6,[r5,#0x1a0]        ;939
000060  2001              MOVS     r0,#1                 ;940
000062  e9c48900          STRD     r8,r9,[r4,#0]         ;940
000066  e7e1              B        |L3.44|
;;;942    
                          ENDP


                          AREA ||i.get_dht||, CODE, READONLY, ALIGN=1

                  get_dht PROC
;;;418    LOCAL(boolean)
;;;419    get_dht (j_decompress_ptr cinfo)
000000  e92d4ff0          PUSH     {r4-r11,lr}
;;;420    /* Process a DHT marker */
;;;421    {
;;;422      INT32 length;
;;;423      UINT8 bits[17];
;;;424      UINT8 huffval[256];
;;;425      int i, index, count;
;;;426      JHUFF_TBL **htblptr;
;;;427      INPUT_VARS(cinfo);
000004  6985              LDR      r5,[r0,#0x18]
000006  b0c5              SUB      sp,sp,#0x114          ;421
;;;428    
;;;429      INPUT_2BYTES(cinfo, length, return FALSE);
000008  e9d56700          LDRD     r6,r7,[r5,#0]
00000c  4604              MOV      r4,r0                 ;421
00000e  b937              CBNZ     r7,|L4.30|
000010  68e9              LDR      r1,[r5,#0xc]
000012  4620              MOV      r0,r4
000014  4788              BLX      r1
000016  2800              CMP      r0,#0
                  |L4.24|
000018  d07d              BEQ      |L4.278|
00001a  e9d56700          LDRD     r6,r7,[r5,#0]
                  |L4.30|
00001e  f8160b01          LDRB     r0,[r6],#1
000022  1e7f              SUBS     r7,r7,#1
000024  ea4f2800          LSL      r8,r0,#8
000028  d106              BNE      |L4.56|
00002a  68e9              LDR      r1,[r5,#0xc]
00002c  4620              MOV      r0,r4
00002e  4788              BLX      r1
000030  2800              CMP      r0,#0
000032  d0f1              BEQ      |L4.24|
000034  e9d56700          LDRD     r6,r7,[r5,#0]
                  |L4.56|
000038  f8160b01          LDRB     r0,[r6],#1
00003c  1e7f              SUBS     r7,r7,#1
00003e  4440              ADD      r0,r0,r8
;;;430      length -= 2;
000040  f1a00b02          SUB      r11,r0,#2
;;;431      
;;;432      while (length > 16) {
000044  e0cf              B        |L4.486|
                  |L4.70|
;;;433        INPUT_BYTE(cinfo, index, return FALSE);
000046  b937              CBNZ     r7,|L4.86|
000048  68e9              LDR      r1,[r5,#0xc]
00004a  4620              MOV      r0,r4
00004c  4788              BLX      r1
00004e  2800              CMP      r0,#0
000050  d061              BEQ      |L4.278|
000052  e9d56700          LDRD     r6,r7,[r5,#0]
                  |L4.86|
;;;434    
;;;435        TRACEMS1(cinfo, 1, JTRC_DHT, index);
000056  6821              LDR      r1,[r4,#0]
000058  f8168b01          LDRB     r8,[r6],#1            ;433
00005c  2050              MOVS     r0,#0x50
00005e  6148              STR      r0,[r1,#0x14]
000060  6821              LDR      r1,[r4,#0]
000062  1e7f              SUBS     r7,r7,#1              ;433
000064  f8c18018          STR      r8,[r1,#0x18]
000068  6820              LDR      r0,[r4,#0]
00006a  2101              MOVS     r1,#1
00006c  6842              LDR      r2,[r0,#4]
00006e  4620              MOV      r0,r4
000070  4790              BLX      r2
;;;436          
;;;437        bits[0] = 0;
000072  2000              MOVS     r0,#0
000074  f88d0100          STRB     r0,[sp,#0x100]
;;;438        count = 0;
000078  4682              MOV      r10,r0
;;;439        for (i = 1; i <= 16; i++) {
00007a  f04f0901          MOV      r9,#1
                  |L4.126|
;;;440          INPUT_BYTE(cinfo, bits[i], return FALSE);
00007e  b937              CBNZ     r7,|L4.142|
000080  68e9              LDR      r1,[r5,#0xc]
000082  4620              MOV      r0,r4
000084  4788              BLX      r1
000086  2800              CMP      r0,#0
000088  d06a              BEQ      |L4.352|
00008a  e9d56700          LDRD     r6,r7,[r5,#0]
                  |L4.142|
00008e  f8161b01          LDRB     r1,[r6],#1
000092  a840              ADD      r0,sp,#0x100
000094  f8001009          STRB     r1,[r0,r9]
;;;441          count += bits[i];
000098  f8100009          LDRB     r0,[r0,r9]
00009c  1e7f              SUBS     r7,r7,#1              ;440
00009e  f1090901          ADD      r9,r9,#1              ;439
0000a2  4482              ADD      r10,r10,r0
0000a4  f1b90f10          CMP      r9,#0x10              ;439
0000a8  dde9              BLE      |L4.126|
;;;442        }
;;;443    
;;;444        length -= 1 + 16;
;;;445    
;;;446        TRACEMS8(cinfo, 2, JTRC_HUFFBITS,
0000aa  6820              LDR      r0,[r4,#0]
0000ac  f89d1101          LDRB     r1,[sp,#0x101]
0000b0  6181              STR      r1,[r0,#0x18]
0000b2  f89d1102          LDRB     r1,[sp,#0x102]
0000b6  61c1              STR      r1,[r0,#0x1c]
0000b8  f89d1103          LDRB     r1,[sp,#0x103]
0000bc  6201              STR      r1,[r0,#0x20]
0000be  f89d1104          LDRB     r1,[sp,#0x104]
0000c2  6241              STR      r1,[r0,#0x24]
0000c4  f89d1105          LDRB     r1,[sp,#0x105]
0000c8  6281              STR      r1,[r0,#0x28]
0000ca  f89d1106          LDRB     r1,[sp,#0x106]
0000ce  62c1              STR      r1,[r0,#0x2c]
0000d0  f89d1107          LDRB     r1,[sp,#0x107]
0000d4  6301              STR      r1,[r0,#0x30]
0000d6  f89d1108          LDRB     r1,[sp,#0x108]
0000da  6341              STR      r1,[r0,#0x34]
0000dc  6821              LDR      r1,[r4,#0]
0000de  f04f0956          MOV      r9,#0x56
0000e2  f8c19014          STR      r9,[r1,#0x14]
0000e6  6820              LDR      r0,[r4,#0]
0000e8  f1ab0b11          SUB      r11,r11,#0x11         ;444
0000ec  6842              LDR      r2,[r0,#4]
0000ee  2102              MOVS     r1,#2
0000f0  4620              MOV      r0,r4
0000f2  4790              BLX      r2
;;;447    	     bits[1], bits[2], bits[3], bits[4],
;;;448    	     bits[5], bits[6], bits[7], bits[8]);
;;;449        TRACEMS8(cinfo, 2, JTRC_HUFFBITS,
0000f4  6820              LDR      r0,[r4,#0]
0000f6  f89d1109          LDRB     r1,[sp,#0x109]
0000fa  6181              STR      r1,[r0,#0x18]
0000fc  f89d110a          LDRB     r1,[sp,#0x10a]
000100  61c1              STR      r1,[r0,#0x1c]
000102  f89d110b          LDRB     r1,[sp,#0x10b]
000106  6201              STR      r1,[r0,#0x20]
000108  f89d110c          LDRB     r1,[sp,#0x10c]
00010c  6241              STR      r1,[r0,#0x24]
00010e  f89d110d          LDRB     r1,[sp,#0x10d]
000112  6281              STR      r1,[r0,#0x28]
000114  e000              B        |L4.280|
                  |L4.278|
000116  e023              B        |L4.352|
                  |L4.280|
000118  f89d110e          LDRB     r1,[sp,#0x10e]

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -