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

📄 jdinput.txt

📁 STM32F103ZET6+UCOSII+UCGUI源码
💻 TXT
📖 第 1 页 / 共 3 页
字号:
;;;157        if (cinfo->comps_in_scan <= 0 || cinfo->comps_in_scan > MAX_COMPS_IN_SCAN)
;;;158          ERREXIT2(cinfo, JERR_COMPONENT_COUNT, cinfo->comps_in_scan,
;;;159    	       MAX_COMPS_IN_SCAN);
;;;160        
;;;161        /* Overall image size in MCUs */
;;;162        cinfo->MCUs_per_row = (JDIMENSION)
;;;163          jdiv_round_up((long) cinfo->image_width,
;;;164    		    (long) (cinfo->max_h_samp_factor*DCTSIZE));
;;;165        cinfo->MCU_rows_in_scan = (JDIMENSION)
;;;166          jdiv_round_up((long) cinfo->image_height,
;;;167    		    (long) (cinfo->max_v_samp_factor*DCTSIZE));
;;;168        
;;;169        cinfo->blocks_in_MCU = 0;
;;;170        
;;;171        for (ci = 0; ci < cinfo->comps_in_scan; ci++) {
;;;172          compptr = cinfo->cur_comp_info[ci];
;;;173          /* Sampling factors give # of blocks of component in each MCU */
;;;174          compptr->MCU_width = compptr->h_samp_factor;
;;;175          compptr->MCU_height = compptr->v_samp_factor;
;;;176          compptr->MCU_blocks = compptr->MCU_width * compptr->MCU_height;
;;;177          compptr->MCU_sample_width = compptr->MCU_width * compptr->DCT_scaled_size;
;;;178          /* Figure number of non-dummy blocks in last MCU column & row */
;;;179          tmp = (int) (compptr->width_in_blocks % compptr->MCU_width);
;;;180          if (tmp == 0) tmp = compptr->MCU_width;
;;;181          compptr->last_col_width = tmp;
;;;182          tmp = (int) (compptr->height_in_blocks % compptr->MCU_height);
;;;183          if (tmp == 0) tmp = compptr->MCU_height;
;;;184          compptr->last_row_height = tmp;
;;;185          /* Prepare array describing MCU composition */
;;;186          mcublks = compptr->MCU_blocks;
;;;187          if (cinfo->blocks_in_MCU + mcublks > D_MAX_BLOCKS_IN_MCU)
;;;188    	ERREXIT(cinfo, JERR_BAD_MCU_SIZE);
;;;189          while (mcublks-- > 0) {
;;;190    	cinfo->MCU_membership[cinfo->blocks_in_MCU++] = ci;
;;;191          }
;;;192        }
;;;193        
;;;194      }
;;;195    }
000048  e8bd81f0          POP      {r4-r8,pc}
                  |L5.76|
00004c  2800              CMP      r0,#0                 ;157
00004e  dd01              BLE      |L5.84|
000050  2804              CMP      r0,#4                 ;157
000052  dd0d              BLE      |L5.112|
                  |L5.84|
000054  6821              LDR      r1,[r4,#0]            ;158
000056  201a              MOVS     r0,#0x1a              ;158
000058  6148              STR      r0,[r1,#0x14]         ;158
00005a  6821              LDR      r1,[r4,#0]            ;158
00005c  f8d40148          LDR      r0,[r4,#0x148]        ;158
000060  6188              STR      r0,[r1,#0x18]         ;158
000062  6821              LDR      r1,[r4,#0]            ;158
000064  2004              MOVS     r0,#4                 ;158
000066  61c8              STR      r0,[r1,#0x1c]         ;158
000068  6820              LDR      r0,[r4,#0]            ;158
00006a  6801              LDR      r1,[r0,#0]            ;158
00006c  4620              MOV      r0,r4                 ;158
00006e  4788              BLX      r1                    ;158
                  |L5.112|
000070  34e8              ADDS     r4,r4,#0xe8           ;158
000072  6ce0              LDR      r0,[r4,#0x4c]         ;162
000074  00c1              LSLS     r1,r0,#3              ;162
000076  f8540ccc          LDR      r0,[r4,#-0xcc]        ;162
00007a  f7fffffe          BL       jdiv_round_up
00007e  6760              STR      r0,[r4,#0x74]         ;165
000080  6d20              LDR      r0,[r4,#0x50]         ;165
000082  00c1              LSLS     r1,r0,#3              ;165
000084  f8540cc8          LDR      r0,[r4,#-0xc8]        ;165
000088  f7fffffe          BL       jdiv_round_up
00008c  e9c4051e          STRD     r0,r5,[r4,#0x78]      ;169
000090  3ce8              SUBS     r4,r4,#0xe8           ;169
000092  2500              MOVS     r5,#0                 ;171
000094  e03a              B        |L5.268|
000096  bf00              NOP                            ;172
                  |L5.152|
000098  eb040085          ADD      r0,r4,r5,LSL #2       ;172
00009c  f8d0014c          LDR      r0,[r0,#0x14c]        ;172
0000a0  6883              LDR      r3,[r0,#8]            ;174
0000a2  6343              STR      r3,[r0,#0x34]         ;175
0000a4  68c1              LDR      r1,[r0,#0xc]          ;176
0000a6  fb03f201          MUL      r2,r3,r1              ;176
0000aa  e9c0120e          STRD     r1,r2,[r0,#0x38]      ;177
0000ae  6a46              LDR      r6,[r0,#0x24]         ;177
0000b0  4617              MOV      r7,r2                 ;176
0000b2  435e              MULS     r6,r3,r6              ;177
0000b4  6406              STR      r6,[r0,#0x40]         ;179
0000b6  69c2              LDR      r2,[r0,#0x1c]         ;179
0000b8  fbb2f6f3          UDIV     r6,r2,r3              ;179
0000bc  fb032216          MLS      r2,r3,r6,r2           ;179
0000c0  b902              CBNZ     r2,|L5.196|
0000c2  461a              MOV      r2,r3                 ;180
                  |L5.196|
0000c4  6442              STR      r2,[r0,#0x44]         ;182
0000c6  6a02              LDR      r2,[r0,#0x20]         ;182
0000c8  fbb2f3f1          UDIV     r3,r2,r1              ;182
0000cc  fb012213          MLS      r2,r1,r3,r2           ;182
0000d0  b902              CBNZ     r2,|L5.212|
0000d2  460a              MOV      r2,r1                 ;183
                  |L5.212|
0000d4  6482              STR      r2,[r0,#0x48]         ;187
0000d6  f8d40164          LDR      r0,[r4,#0x164]        ;187
0000da  4438              ADD      r0,r0,r7              ;187
0000dc  280a              CMP      r0,#0xa               ;187
0000de  dd10              BLE      |L5.258|
0000e0  6821              LDR      r1,[r4,#0]            ;188
0000e2  200d              MOVS     r0,#0xd               ;188
0000e4  6148              STR      r0,[r1,#0x14]         ;188
0000e6  6820              LDR      r0,[r4,#0]            ;188
0000e8  6801              LDR      r1,[r0,#0]            ;188
0000ea  4620              MOV      r0,r4                 ;188
0000ec  4788              BLX      r1                    ;188
0000ee  e008              B        |L5.258|
                  |L5.240|
0000f0  f8d40164          LDR      r0,[r4,#0x164]        ;190
0000f4  1c41              ADDS     r1,r0,#1              ;190
0000f6  eb040080          ADD      r0,r4,r0,LSL #2       ;190
0000fa  f8c41164          STR      r1,[r4,#0x164]        ;190
0000fe  f8c05168          STR      r5,[r0,#0x168]        ;190
                  |L5.258|
000102  1e38              SUBS     r0,r7,#0              ;189
000104  f1a70701          SUB      r7,r7,#1              ;189
000108  dcf2              BGT      |L5.240|
00010a  1c6d              ADDS     r5,r5,#1              ;171
                  |L5.268|
00010c  f8d40148          LDR      r0,[r4,#0x148]        ;171
000110  42a8              CMP      r0,r5                 ;171
000112  dcc1              BGT      |L5.152|
000114  e798              B        |L5.72|
;;;196    
                          ENDP


                          AREA ||i.reset_input_controller||, CODE, READONLY, ALIGN=2

                  reset_input_controller PROC
;;;338    METHODDEF(void)
;;;339    reset_input_controller (j_decompress_ptr cinfo)
000000  b570              PUSH     {r4-r6,lr}
;;;340    {
000002  4604              MOV      r4,r0
;;;341      my_inputctl_ptr inputctl = (my_inputctl_ptr) cinfo->inputctl;
000004  f8d001b4          LDR      r0,[r0,#0x1b4]
;;;342    
;;;343      inputctl->pub.consume_input = consume_markers;
;;;344      inputctl->pub.has_multiple_scans = FALSE; /* "unknown" would be better */
000008  2500              MOVS     r5,#0
;;;345      inputctl->pub.eoi_reached = FALSE;
00000a  6105              STR      r5,[r0,#0x10]
00000c  4908              LDR      r1,|L6.48|
;;;346      inputctl->inheaders = TRUE;
00000e  6145              STR      r5,[r0,#0x14]
000010  6001              STR      r1,[r0,#0]
000012  2101              MOVS     r1,#1
;;;347      /* Reset other modules */
;;;348      (*cinfo->err->reset_error_mgr) ((j_common_ptr) cinfo);
000014  6181              STR      r1,[r0,#0x18]
000016  6820              LDR      r0,[r4,#0]
000018  6901              LDR      r1,[r0,#0x10]
00001a  4620              MOV      r0,r4
00001c  4788              BLX      r1
;;;349      (*cinfo->marker->reset_marker_reader) (cinfo);
00001e  f8d401b8          LDR      r0,[r4,#0x1b8]
000022  6801              LDR      r1,[r0,#0]
000024  4620              MOV      r0,r4
000026  4788              BLX      r1
;;;350      /* Reset progression state -- would be cleaner if entropy decoder did this */
;;;351      cinfo->coef_bits = NULL;
;;;352    }
000028  f8c450a0          STR      r5,[r4,#0xa0]
00002c  bd70              POP      {r4-r6,pc}
;;;353    
                          ENDP

00002e  0000              DCW      0x0000
                  |L6.48|
                          DCD      consume_markers

                          AREA ||i.start_input_pass||, CODE, READONLY, ALIGN=2

                  start_input_pass PROC
;;;253    METHODDEF(void)
;;;254    start_input_pass (j_decompress_ptr cinfo)
000000  e92d41f0          PUSH     {r4-r8,lr}
;;;255    {
000004  4604              MOV      r4,r0
;;;256      per_scan_setup(cinfo);
000006  f7fffffe          BL       per_scan_setup
00000a  2600              MOVS     r6,#0
00000c  e029              B        |L7.98|
00000e  bf00              NOP      
                  |L7.16|
000010  eb040086          ADD      r0,r4,r6,LSL #2
000014  f8d0714c          LDR      r7,[r0,#0x14c]
000018  6cf8              LDR      r0,[r7,#0x4c]
00001a  bb08              CBNZ     r0,|L7.96|
00001c  693d              LDR      r5,[r7,#0x10]
00001e  2d04              CMP      r5,#4
000020  d204              BCS      |L7.44|
000022  eb040085          ADD      r0,r4,r5,LSL #2
000026  f8d000a4          LDR      r0,[r0,#0xa4]
00002a  b940              CBNZ     r0,|L7.62|
                  |L7.44|
00002c  6821              LDR      r1,[r4,#0]
00002e  2034              MOVS     r0,#0x34
000030  6148              STR      r0,[r1,#0x14]
000032  6820              LDR      r0,[r4,#0]
000034  6185              STR      r5,[r0,#0x18]
000036  6820              LDR      r0,[r4,#0]
000038  6801              LDR      r1,[r0,#0]
00003a  4620              MOV      r0,r4
00003c  4788              BLX      r1
                  |L7.62|
00003e  6860              LDR      r0,[r4,#4]
000040  2284              MOVS     r2,#0x84
000042  6803              LDR      r3,[r0,#0]
000044  2101              MOVS     r1,#1
000046  4620              MOV      r0,r4
000048  4798              BLX      r3
00004a  4680              MOV      r8,r0
00004c  eb040085          ADD      r0,r4,r5,LSL #2
000050  f8d010a4          LDR      r1,[r0,#0xa4]
000054  2284              MOVS     r2,#0x84
000056  4640              MOV      r0,r8
000058  f7fffffe          BL       __aeabi_memcpy4
00005c  f8c7804c          STR      r8,[r7,#0x4c]
                  |L7.96|
000060  1c76              ADDS     r6,r6,#1
                  |L7.98|
000062  f8d40148          LDR      r0,[r4,#0x148]
000066  42b0              CMP      r0,r6
000068  dcd2              BGT      |L7.16|
;;;257      latch_quant_tables(cinfo);
;;;258      (*cinfo->entropy->start_pass) (cinfo);
00006a  f8d401bc          LDR      r0,[r4,#0x1bc]
00006e  6801              LDR      r1,[r0,#0]
000070  4620              MOV      r0,r4
000072  4788              BLX      r1
;;;259      (*cinfo->coef->start_input_pass) (cinfo);
000074  f8d401ac          LDR      r0,[r4,#0x1ac]
000078  6801              LDR      r1,[r0,#0]
00007a  4620              MOV      r0,r4
00007c  4788              BLX      r1
;;;260      cinfo->inputctl->consume_input = cinfo->coef->consume_data;
00007e  f8d401ac          LDR      r0,[r4,#0x1ac]
000082  f8d411b4          LDR      r1,[r4,#0x1b4]
000086  6840              LDR      r0,[r0,#4]
;;;261    }
000088  6008              STR      r0,[r1,#0]
00008a  e8bd81f0          POP      {r4-r8,pc}
;;;262    
                          ENDP

⌨️ 快捷键说明

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