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

📄 ui_menu.lst

📁 MP3 整个 SDK
💻 LST
📖 第 1 页 / 共 3 页
字号:
   \   0149  D5                PUSH    DE
   \   014A  FDE1              POP     IY
     78              int i,active,old_active;
     79              char key;
     80              BOOL need_draw=TRUE;
     81              bool value_changed=FALSE;
     82              int cur_group;      //menu->active / MENU_NUM_ONE_PAGE
     83              int n;              //the item to show
     84          //    DC  oldDC_sav;
     85          
     86              active = menu->active;
   \   014C  13                INC     DE
   \   014D  13                INC     DE
   \   014E  1A                LD      A,(DE)
   \   014F  DD77F2            LD      (IX-14),A
   \   0152  13                INC     DE
   \   0153  1A                LD      A,(DE)
   \   0154  DD77F3            LD      (IX-13),A
     87          //    GetDCStatus(&oldDC_sav);
     88              SetPenColor(Color_WHITE_def);
   \   0157  CD3001            CALL    LWRD ?0065
     89              SetTextOutMode(1);       //设字体透明
   \   015A  1E01              LD      E,1
   \   015C  CD0000            CALL    LWRD SetTextOutMode
   \   015F  DD36FC01          LD      (IX-4),1
   \   0163  DD36FE00          LD      (IX-2),0
   \   0167            ?0003:
     90          
     91              while(1)
     92              {
     93                  if(need_draw)
   \   0167  AF                XOR     A
   \   0168  DDB6FC            OR      (IX-4)
   \   016B  CAD502            JP      Z,?0006
   \   016E            ?0005:
     94                  {
     95                      output8(0x4e,input8(0x4e)|0x8);            //zxs add
   \   016E  DB4E              IN      A,(78)
   \   0170  CBDF              SET     3,A
   \   0172  D34E              OUT     (78),A
     96                      ResShowPic(MENUTWO,0,0);
   \   0174  0E00              LD      C,0
   \   0176  C5                PUSH    BC
   \   0177  116D00            LD      DE,109
   \   017A  CD2801            CALL    LWRD ?0063
   \   017D  F1                POP     AF
     97                      //ResShowPic(DHT,126,0);
     98                      ResShowPic(DHT,194,8);
   \   017E  0E08              LD      C,8
   \   0180  C5                PUSH    BC
   \   0181  0EC2              LD      C,194
   \   0183  112D00            LD      DE,45
   \   0186  CD2801            CALL    LWRD ?0063
   \   0189  F1                POP     AF
     99                      old_active=active;
    100                      cur_group = active / MENU_NUM_ONE_PAGE;
   \   018A  010600            LD      BC,6
   \   018D  DD5EF2            LD      E,(IX-14)
   \   0190  DD56F3            LD      D,(IX-13)
   \   0193  CD0000            CALL    LWRD ?SS_DIV_L02
   \   0196  DD73F8            LD      (IX-8),E
   \   0199  DD72F9            LD      (IX-7),D
    101                      n = cur_group*MENU_NUM_ONE_PAGE;
   \   019C  EB                EX      DE,HL
   \   019D  29                ADD     HL,HL
   \   019E  4D                LD      C,L
   \   019F  44                LD      B,H
   \   01A0  29                ADD     HL,HL
   \   01A1  09                ADD     HL,BC
   \   01A2  DD75F6            LD      (IX-10),L
   \   01A5  DD74F7            LD      (IX-9),H
    102                      SetPenColor(Color_WHITE_def);
   \   01A8  CD3001            CALL    LWRD ?0065
    103                      //show icons & text
    104                      for(i=0; i<MENU_NUM_ONE_PAGE; i++)
   \   01AB  DD6EF2            LD      L,(IX-14)
   \   01AE  DD66F3            LD      H,(IX-13)
   \   01B1  DD75FA            LD      (IX-6),L
   \   01B4  DD74FB            LD      (IX-5),H
   \   01B7  AF                XOR     A
   \   01B8  DD77F4            LD      (IX-12),A
   \   01BB  DD77F5            LD      (IX-11),A
   \   01BE            ?0008:
   \   01BE  010680            LD      BC,32774
   \   01C1  DD6EF4            LD      L,(IX-12)
   \   01C4  DD66F5            LD      H,(IX-11)
   \   01C7  78                LD      A,B
   \   01C8  AC                XOR     H
   \   01C9  67                LD      H,A
   \   01CA  ED42              SBC     HL,BC
   \   01CC  D2D102            JP      NC,?0007
   \   01CF            ?0009:
    105                      {
    106                          if(n+i >= menu->total) break;    //处理不足MENU_NUM_ONE_PAGE个的情况
   \   01CF  FD4E00            LD      C,(IY+0)
   \   01D2  FD4601            LD      B,(IY+1)
   \   01D5  DD6EF4            LD      L,(IX-12)
   \   01D8  DD66F5            LD      H,(IX-11)
   \   01DB  DD5EF6            LD      E,(IX-10)
   \   01DE  DD56F7            LD      D,(IX-9)
   \   01E1  19                ADD     HL,DE
   \   01E2  F680              OR      128
   \   01E4  ED42              SBC     HL,BC
   \   01E6  E2EA01            JP      PO,?0055
   \   01E9  AC                XOR     H
   \   01EA            ?0055:
   \   01EA  F2D102            JP      P,?0007
   \   01ED            ?0011:
   \   01ED            ?0012:
    107                          if(n+i==active)
   \   01ED  DD6EF4            LD      L,(IX-12)
   \   01F0  DD66F5            LD      H,(IX-11)
   \   01F3  4B                LD      C,E
   \   01F4  42                LD      B,D
   \   01F5  09                ADD     HL,BC
   \   01F6  DD4EF2            LD      C,(IX-14)
   \   01F9  DD46F3            LD      B,(IX-13)
   \   01FC  A7                AND     A
   \   01FD  ED42              SBC     HL,BC
   \   01FF  210000            LD      HL,menu_pos_menu
   \   0202  DD4EF4            LD      C,(IX-12)
   \   0205  DD46F5            LD      B,(IX-11)
   \   0208  09                ADD     HL,BC
   \   0209  2071              JR      NZ,?0014
   \   020B            ?0013:
    108                          {
    109                              {
    110                                  ResShowPic(MENUBCK, menu_bck_x_def, menu_pos_menu[i]-4);
   \   020B  7E                LD      A,(HL)
   \   020C  C6FC              ADD     A,252
   \   020E  5F                LD      E,A
   \   020F  D5                PUSH    DE
   \   0210  CD2301            CALL    LWRD ?0064
   \   0213  F1                POP     AF
    111                                  //ResShowPic(DHTHK,122, menu_pos_menu[i]-2);
    112                                  ResShowPic(DHTHK,194, menu_pos_menu[i]+6);
   \   0214  210000            LD      HL,menu_pos_menu
   \   0217  DD4EF4            LD      C,(IX-12)
   \   021A  DD46F5            LD      B,(IX-11)
   \   021D  09                ADD     HL,BC
   \   021E  7E                LD      A,(HL)
   \   021F  C606              ADD     A,6
   \   0221  5F                LD      E,A
   \   0222  D5                PUSH    DE
   \   0223  0EC2              LD      C,194
   \   0225  112E00            LD      DE,46
   \   0228  CD2801            CALL    LWRD ?0063
   \   022B  F1                POP     AF
    113                                  ResShowPic(MENURARR, menu_ptr_x_def, menu_pos_menu[i]);
   \   022C  210000            LD      HL,menu_pos_menu
   \   022F  DD4EF4            LD      C,(IX-12)
   \   0232  DD46F5            LD      B,(IX-11)
   \   0235  09                ADD     HL,BC
   \   0236  5E                LD      E,(HL)
   \   0237  D5                PUSH    DE
   \   0238  0E0A              LD      C,10
   \   023A  116C00            LD      DE,108
   \   023D  CD2801            CALL    LWRD ?0063
   \   0240  F1                POP     AF
    114                              }
    115                              SetPenColor(Color_WHITE_def);
   \   0241  CD3001            CALL    LWRD ?0065
    116                              ResShowMultiString(menu->title[active], menu->string_id,
    117                              menu_str_x_def, menu_pos_menu[i]-3);
   \   0244  210000            LD      HL,menu_pos_menu
   \   0247  DD4EF4            LD      C,(IX-12)
   \   024A  DD46F5            LD      B,(IX-11)
   \   024D  09                ADD     HL,BC
   \   024E  7E                LD      A,(HL)
   \   024F  C6FD              ADD     A,253
   \   0251  4F                LD      C,A
   \   0252  C5                PUSH    BC
   \   0253  0E20              LD      C,32
   \   0255  C5                PUSH    BC
   \   0256  FD4E09            LD      C,(IY+9)
   \   0259  FD6E04            LD      L,(IY+4)
   \   025C  FD6605            LD      H,(IY+5)
   \   025F  E5                PUSH    HL
   \   0260  DD6EF2            LD      L,(IX-14)
   \   0263  DD66F3            LD      H,(IX-13)
   \   0266  29                ADD     HL,HL
   \   0267  EB                EX      DE,HL
   \   0268  E1                POP     HL
   \   0269  19                ADD     HL,DE
   \   026A  5E                LD      E,(HL)
   \   026B  23                INC     HL
   \   026C  56                LD      D,(HL)
   \   026D  3E00              LD      A,BYTE3 ResShowMultiString
   \   026F  210000            LD      HL,LWRD ResShowMultiString
   \   0272  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   0275  F1                POP     AF
   \   0276  F1                POP     AF
    118                              SetPenColor(Color_WHITE_def);
   \   0277  CD3001            CALL    LWRD ?0065
    119                          }
    120                          else
   \   027A  1849              JR      ?0015
   \   027C            ?0014:
    121                          {
    122                              ResShowPic(MENUARR1+i, menu_ptr_x_def, menu_pos_menu[i]);
   \   027C  5E                LD      E,(HL)
   \   027D  D5                PUSH    DE
   \   027E  0E0A              LD      C,10
   \   0280  215E00            LD      HL,94
   \   0283  DD5EF4            LD      E,(IX-12)
   \   0286  50                LD      D,B
   \   0287  19                ADD     HL,DE
   \   0288  EB                EX      DE,HL
   \   0289  CD2801            CALL    LWRD ?0063
   \   028C  F1                POP     AF
    123                              ResShowMultiString(menu->title[n+i], menu->string_id,
    124                              menu_str_x_def, menu_pos_menu[i]-3);
   \   028D  210000            LD      HL,menu_pos_menu
   \   0290  DD4EF4            LD      C,(IX-12)
   \   0293  DD46F5            LD      B,(IX-11)
   \   0296  09                ADD     HL,BC
   \   0297  7E                LD      A,(HL)
   \   0298  C6FD              ADD     A,253
   \   029A  5F                LD      E,A
   \   029B  D5                PUSH    DE
   \   029C  1E20              LD      E,32
   \   029E  D5                PUSH    DE
   \   029F  FD4E09            LD      C,(IY+9)
   \   02A2  FD6E04            LD      L,(IY+4)
   \   02A5  FD6605            LD      H,(IY+5)
   \   02A8  E5                PUSH    HL
   \   02A9  DD6EF4            LD      L,(IX-12)
   \   02AC  60                LD      H,B
   \   02AD  DD5EF6            LD      E,(IX-10)
   \   02B0  DD56F7            LD      D,(IX-9)
   \   02B3  19                ADD     HL,DE
   \   02B4  29                ADD     HL,HL
   \   02B5  EB                EX      DE,HL
   \   02B6  E1                POP     HL
   \   02B7  19                ADD     HL,DE
   \   02B8  5E                LD      E,(HL)
   \   02B9  23                INC     HL
   \   02BA  56                LD      D,(HL)
   \   02BB  3E00              LD      A,BYTE3 ResShowMultiString
   \   02BD  210000            LD      HL,LWRD ResShowMultiString
   \   02C0  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   02C3  F1                POP     AF
   \   02C4  F1                POP     AF
   \   02C5            ?0015:
   \   02C5  DD34F4            INC     (IX-12)
   \   02C8  C2BE01            JP      NZ,?0008
   \   02CB  DD34F5            INC     (IX-11)
   \   02CE  C3BE01            JP      LWRD ?0008
   \   02D1            ?0007:
    125                          }
    126                      }
    127          
    128                      need_draw = FALSE;
   \   02D1  DD36FC00          LD      (IX-4),0
   \   02D5            ?0006:
    129                  }//need draw
    130          
    131                  if(value_changed)
   \   02D5  AF                XOR     A
   \   02D6  DDB6FE            OR      (IX-2)
   \   02D9  281D              JR      Z,?0017
   \   02DB            ?0016:
    132                  {
    133                      show_active_menu(menu,old_active,active);
   \   02DB  DD6EF2            LD      L,(IX-14)
   \   02DE  DD66F3            LD      H,(IX-13)
   \   02E1  E5                PUSH    HL
   \   02E2  DD4EFA            LD      C,(IX-6)
   \   02E5  DD46FB            LD      B,(IX-5)
   \   02E8  FDE5              PUSH    IY
   \   02EA  D1                POP     DE
   \   02EB  3E00              LD      A,BYTE3 show_active_menu
   \   02ED  210000            LD      HL,LWRD show_active_menu
   \   02F0  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   02F3  E1                POP     HL
    134                      value_changed=FALSE;
   \   02F4  DD36FE00          LD      (IX-2),0
   \   02F8            ?0017:
    135                  }
    136                  key = ap_get_message();
   \   02F8  CD0000            CALL    LWRD ap_get_message
    137                  //handle message
    138                  switch( key)
   \   02FB  5F                LD      E,A
   \   02FC  CD0000            CALL    LWRD ?C_V_SWITCH_L06
   \   02FF  0700              DEFW    7
   \   0301  05                DEFB    5
   \   0302  06                DEFB    6
   \   0303  1E                DEFB    30
   \   0304  21                DEFB    33

⌨️ 快捷键说明

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