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

📄 ap_common.lst

📁 5807收音机模块用于炬力平台
💻 LST
📖 第 1 页 / 共 2 页
字号:
    108          //      //读entry
    109          //      SD_FSeek(res_fp, SEEK_SET,  (long)id * sizeof(res_entry_t));
    110          //      SD_FRead(res_fp, &res_entry, sizeof(res_entry_t));
    111          //      if(res_entry.type != RES_TYPE_LOGO) return 0;
    112          //      ASSERT(res_entry.length <= 512);
    113          //
    114          //      //读数据
    115          //      SD_FSeek(res_fp, SEEK_SET, res_entry.offset);
    116          //      res_region.width = SCR_WIDTH;
    117          //      res_region.height = SCR_HEIGHT;
    118          //
    119          //      //显示logo
    120          //      res_region.x = 0;
    121          //      res_region.y = 0;
    122          //      PutSDImage(&res_region, res_fp->rwpointer);
    123          //      if(ui_auto_update) UpdateScreen(&res_region);
    124          //      return 1;       
    125          //}
    126          
    127          /*
    128          ********************************************************************************
    129          * Description : 在指定位置显示图形
    130          *
    131          * Arguments   : id, 资源代号
    132                          x,y, 屏幕坐标
    133          *
    134          * Returns     : 成功, 1
    135                          失败, 0
    136          *
    137          * Notes       :
    138          *
    139          ********************************************************************************
    140          */
    141          int ResShowPic(WORD id, uchar x, uchar y)
    142          {
   \   0055  C5                PUSH    BC
   \   0056  D5                PUSH    DE
   \   0057  F5                PUSH    AF
   \   0058  F5                PUSH    AF
    143                  WORD buf[2];    //buffer for sd read
    144          
    145                  ASSERT(id <= UIID_MAX);
    146                  
    147                  //读entry
    148                  SD_FSeek(res_fp, SEEK_SET, (long)id * sizeof(res_entry_t));
   \   0059  6B                LD      L,E
   \   005A  62                LD      H,D
   \   005B  010000            LD      BC,0
   \   005E  3E04              LD      A,4
   \   0060  CD0000            CALL    LWRD ?L_LSH_L03
   \   0063  C5                PUSH    BC
   \   0064  E5                PUSH    HL
   \   0065  0E00              LD      C,0
   \   0067  ED5B0000          LD      DE,(res_fp)
   \   006B  CD0000            CALL    LWRD SD_FSeek
   \   006E  E1                POP     HL
   \   006F  E1                POP     HL
    149                  SD_FRead(res_fp, &res_entry, sizeof(res_entry_t));
   \   0070  211000            LD      HL,16
   \   0073  E5                PUSH    HL
   \   0074  011200            LD      BC,res_entry
   \   0077  ED5B0000          LD      DE,(res_fp)
   \   007B  CD0000            CALL    LWRD SD_FRead
   \   007E  F1                POP     AF
    150                  if(res_entry.type != RES_TYPE_PIC) return 0;
   \   007F  3A1800            LD      A,(res_entry+6)
   \   0082  3D                DEC     A
   \   0083  2805              JR      Z,?0010
   \   0085            ?0009:
   \   0085  210000            LD      HL,0
    151                  ASSERT(res_entry.length <= 512);
   \   0088  1869              JR      ?0013
   \   008A            ?0010:
    152          
    153                  //读数据
    154                  SD_FSeek(res_fp, SEEK_SET, res_entry.offset);
   \   008A  2A1400            LD      HL,(res_entry+2)
   \   008D  E5                PUSH    HL
   \   008E  2A1200            LD      HL,(res_entry)
   \   0091  E5                PUSH    HL
   \   0092  4F                LD      C,A
   \   0093  ED5B0000          LD      DE,(res_fp)
   \   0097  CD0000            CALL    LWRD SD_FSeek
   \   009A  E1                POP     HL
   \   009B  E1                POP     HL
    155                  //SD_FRead(res_fp, &(res_region.width), 2);
    156                  //SD_FRead(res_fp, &(res_region.height), 2);
    157                  SD_FRead(res_fp, buf, sizeof(buf));
   \   009C  210400            LD      HL,4
   \   009F  E5                PUSH    HL
   \   00A0  2B                DEC     HL
   \   00A1  2B                DEC     HL
   \   00A2  39                ADD     HL,SP
   \   00A3  4D                LD      C,L
   \   00A4  44                LD      B,H
   \   00A5  ED5B0000          LD      DE,(res_fp)
   \   00A9  CD0000            CALL    LWRD SD_FRead
   \   00AC  F1                POP     AF
    158                  //ASSERT(buf[0] <= 128);
    159                  //ASSERT(buf[1] <= 32); 
    160                  res_region.width = (char)buf[0];
   \   00AD  210000            LD      HL,0
   \   00B0  39                ADD     HL,SP
   \   00B1  7E                LD      A,(HL)
   \   00B2  322400            LD      (res_region+2),A
    161                  res_region.height = (char)buf[1];
   \   00B5  23                INC     HL
   \   00B6  23                INC     HL
   \   00B7  7E                LD      A,(HL)
   \   00B8  322500            LD      (res_region+3),A
    162                  
    163                  //显示
    164                  res_region.x = x;
   \   00BB  210600            LD      HL,6
   \   00BE  39                ADD     HL,SP
   \   00BF  7E                LD      A,(HL)
   \   00C0  322200            LD      (res_region),A
    165                  res_region.y = y;
   \   00C3  210C00            LD      HL,12
   \   00C6  39                ADD     HL,SP
   \   00C7  7E                LD      A,(HL)
   \   00C8  322300            LD      (res_region+1),A
    166                  PutSDImage(&res_region, res_fp->rwpointer);
   \   00CB  211400            LD      HL,20
   \   00CE  ED4B0000          LD      BC,(res_fp)
   \   00D2  09                ADD     HL,BC
   \   00D3  4E                LD      C,(HL)
   \   00D4  23                INC     HL
   \   00D5  46                LD      B,(HL)
   \   00D6  23                INC     HL
   \   00D7  5E                LD      E,(HL)
   \   00D8  23                INC     HL
   \   00D9  56                LD      D,(HL)
   \   00DA  D5                PUSH    DE
   \   00DB  C5                PUSH    BC
   \   00DC  112200            LD      DE,res_region
   \   00DF  CD0000            CALL    LWRD PutSDImage
   \   00E2  E1                POP     HL
   \   00E3  E1                POP     HL
    167                  if(ui_auto_update) UpdateScreen(&res_region);
   \   00E4  3A0000            LD      A,(ui_auto_update)
   \   00E7  B7                OR      A
   \   00E8  2806              JR      Z,?0012
   \   00EA            ?0011:
   \   00EA  112200            LD      DE,res_region
   \   00ED  CD0000            CALL    LWRD UpdateScreen
   \   00F0            ?0012:
    168                  return 1;
   \   00F0  210100            LD      HL,1
    169          }
   \   00F3            ?0013:
   \   00F3  F1                POP     AF
   \   00F4  F1                POP     AF
   \   00F5  F1                POP     AF
   \   00F6  F1                POP     AF
   \   00F7  C30000            JP      LWRD ?BANK_FAST_LEAVE_L08
    170          
    171          /*
    172          bool SDCardPullOutSign(char CurDisk)
    173          {
    174          //送出已拔出标志
    175              if (CurDisk == 'H')
    176              {
    177                  if (DRV_DetectUD(1) != 0x20)
    178                  { 
    179                      return TRUE; //卡已不在,送出拔出标志
    180                  }
    181              }
    182              return FALSE;
    183          }
    184          
    185          */
    186          #pragma function=default
    187          
   \   0000                    RSEG    UDATA0
   \   0000            res_fp:
   \   0002                    DEFS    2
   \   0002            res_head:
   \   0012                    DEFS    16
   \   0012            res_entry:
   \   0022                    DEFS    16
   \   0022            res_region:
   \   0026                    DEFS    4
   \   0000                    RSEG    IDATA0
   \   0000            ui_auto_update:
   \   0001                    DEFS    1
   \   0001            ui_auto_select:
   \   0002                    DEFS    1
   \   0002            ui_run_realtime:
   \   0003                    DEFS    1
   \   0000                    RSEG    CDATA0
   \   0000  01                DEFB    1
   \   0001  01                DEFB    1
   \   0002  00                DEFB    0
   \   0003                    END

Errors: none
Warnings: none
Code size: 250
Constant size: 3
Static variable size: Data(41) Iram(0)

⌨️ 快捷键说明

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