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

📄 basal_reader_de.lst

📁 炬力方案176*132软件源码,适用于AK1025
💻 LST
📖 第 1 页 / 共 5 页
字号:
   \   03E9  E1                POP     HL
   \   03EA  09                ADD     HL,BC
   \   03EB  DD4EF0            LD      C,(IX-16)
   \   03EE  DD46F1            LD      B,(IX-15)
   \   03F1  09                ADD     HL,BC
   \   03F2  7E                LD      A,(HL)
   \   03F3  FE0A              CP      10
   \   03F5  282B              JR      Z,?0070
   \   03F7            ?0078:
   \   03F7            ?0079:
   \   03F7            ?0076:
    186                              break;
   \   03F7            ?0077:
    187          
    188                          if( str[ RowHeadPosition+col ]<0x80 )
   \   03F7  DD4EEC            LD      C,(IX-20)
   \   03FA  0600              LD      B,0
   \   03FC  FDE5              PUSH    IY
   \   03FE  E1                POP     HL
   \   03FF  09                ADD     HL,BC
   \   0400  DD4EF0            LD      C,(IX-16)
   \   0403  DD46F1            LD      B,(IX-15)
   \   0406  09                ADD     HL,BC
   \   0407  7E                LD      A,(HL)
   \   0408  FE80              CP      128
   \   040A  3005              JR      NC,?0081
   \   040C            ?0080:
    189                              col += 1;
   \   040C  DD34EC            INC     (IX-20)
   \   040F  180C              JR      ?0085
   \   0411            ?0081:
    190                          else if( col<SCR_COL-1 )
   \   0411  DD7EEC            LD      A,(IX-20)
   \   0414  FE13              CP      19
   \   0416  300A              JR      NC,?0070
   \   0418            ?0083:
    191                              col += 2;
   \   0418  C602              ADD     A,2
   \   041A  DD77EC            LD      (IX-20),A
    192                          else
   \   041D            ?0084:
    193                              break;
   \   041D            ?0085:
   \   041D            ?0082:
   \   041D  DD34EE            INC     (IX-18)
   \   0420  1894              JR      ?0071
   \   0422            ?0070:
    194                      }
    195          
    196                      if( !DealMode )
   \   0422  AF                XOR     A
   \   0423  DDB6FE            OR      (IX-2)
   \   0426  203D              JR      NZ,?0087
   \   0428            ?0086:
    197                      {   // 显示
    198                          if( !CheckLangID( ViewFileStructPoint->langid ) )
   \   0428  211200            LD      HL,18
   \   042B  DD4EFC            LD      C,(IX-4)
   \   042E  DD46FD            LD      B,(IX-3)
   \   0431  09                ADD     HL,BC
   \   0432  5E                LD      E,(HL)
   \   0433  3E00              LD      A,BYTE3 CheckLangID
   \   0435  212400            LD      HL,LWRD CheckLangID
   \   0438  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
   \   043B  2C                INC     L
   \   043C  2D                DEC     L
   \   043D  2006              JR      NZ,?0089
   \   043F            ?0088:
    199                              CountWords = col;
   \   043F  DD46EC            LD      B,(IX-20)
   \   0442  DD70EE            LD      (IX-18),B
   \   0445            ?0089:
    200                          ///-SetTextPos(POSITION_TXT_START_POSX, (SCR_ROW-row)*16-9);
    201                          SetTextPos(POSITION_TXT_START_POSX, row*16+8);
   \   0445  DD7EED            LD      A,(IX-19)
   \   0448  87                ADD     A,A
   \   0449  87                ADD     A,A
   \   044A  87                ADD     A,A
   \   044B  87                ADD     A,A
   \   044C  C608              ADD     A,8
   \   044E  4F                LD      C,A
   \   044F  1E06              LD      E,6
   \   0451  CD0000            CALL    LWRD SetTextPos
    202                          PutS( &str[RowHeadPosition], CountWords );
   \   0454  DD4EEE            LD      C,(IX-18)
   \   0457  FDE5              PUSH    IY
   \   0459  E1                POP     HL
   \   045A  DD5EF0            LD      E,(IX-16)
   \   045D  DD56F1            LD      D,(IX-15)
   \   0460  19                ADD     HL,DE
   \   0461  EB                EX      DE,HL
   \   0462  CD0000            CALL    LWRD PutS
   \   0465            ?0087:
    203                      }
    204                      RowHeadPosition += col;
   \   0465  DD4EEC            LD      C,(IX-20)
   \   0468  0600              LD      B,0
   \   046A  FD09              ADD     IY,BC
    205                      row ++;
   \   046C  DD34ED            INC     (IX-19)
   \   046F            ?0069:
   \   046F  C3A802            JP      LWRD ?0042
   \   0472            ?0041:
    206                  }
    207              }
    208          
    209          
    210              if(DealMode != 2)
   \   0472  DD46FE            LD      B,(IX-2)
   \   0475  05                DEC     B
   \   0476  05                DEC     B
   \   0477  2856              JR      Z,?0091
   \   0479            ?0090:
    211              {
    212                  ViewFileStructPoint->PrevSeek = ViewFileStructPoint->CurrentSeek;          //保留有效屏的位置
   \   0479  210A00            LD      HL,10
   \   047C  DD4EFC            LD      C,(IX-4)
   \   047F  DD46FD            LD      B,(IX-3)
   \   0482  09                ADD     HL,BC
   \   0483  4E                LD      C,(HL)
   \   0484  23                INC     HL
   \   0485  46                LD      B,(HL)
   \   0486  23                INC     HL
   \   0487  5E                LD      E,(HL)
   \   0488  23                INC     HL
   \   0489  56                LD      D,(HL)
   \   048A  C5                PUSH    BC
   \   048B  210600            LD      HL,6
   \   048E  DD4EFC            LD      C,(IX-4)
   \   0491  DD46FD            LD      B,(IX-3)
   \   0494  09                ADD     HL,BC
   \   0495  C1                POP     BC
   \   0496  D5                PUSH    DE
   \   0497  71                LD      (HL),C
   \   0498  50                LD      D,B
   \   0499  C1                POP     BC
   \   049A  23                INC     HL
   \   049B  72                LD      (HL),D
   \   049C  23                INC     HL
   \   049D  71                LD      (HL),C
   \   049E  23                INC     HL
   \   049F  70                LD      (HL),B
    213                  ViewFileStructPoint->CurrentSeek = ReadFileLength + RowHeadPosition;            // 计算下一页的起始地址
   \   04A0  210A00            LD      HL,10
   \   04A3  DD4EFC            LD      C,(IX-4)
   \   04A6  DD46FD            LD      B,(IX-3)
   \   04A9  09                ADD     HL,BC
   \   04AA  E5                PUSH    HL
   \   04AB  FDE5              PUSH    IY
   \   04AD  D1                POP     DE
   \   04AE  010000            LD      BC,0
   \   04B1  C5                PUSH    BC
   \   04B2  D5                PUSH    DE
   \   04B3  DD6EF8            LD      L,(IX-8)
   \   04B6  DD66F9            LD      H,(IX-7)
   \   04B9  C1                POP     BC
   \   04BA  09                ADD     HL,BC
   \   04BB  EB                EX      DE,HL
   \   04BC  DD6EFA            LD      L,(IX-6)
   \   04BF  DD66FB            LD      H,(IX-5)
   \   04C2  C1                POP     BC
   \   04C3  ED4A              ADC     HL,BC
   \   04C5  4D                LD      C,L
   \   04C6  44                LD      B,H
   \   04C7  E1                POP     HL
   \   04C8  73                LD      (HL),E
   \   04C9  23                INC     HL
   \   04CA  72                LD      (HL),D
   \   04CB  23                INC     HL
   \   04CC  71                LD      (HL),C
   \   04CD  23                INC     HL
   \   04CE  70                LD      (HL),B
   \   04CF            ?0091:
    214              }
    215          
    216              return row;
   \   04CF  DD6EED            LD      L,(IX-19)
    217          
    218          }
   \   04D2            ?0092:
   \   04D2  C3E700            JP      LWRD ?0015
   \   04D5            ?0191:
   \   04D5  DD5EFC            LD      E,(IX-4)
   \   04D8  DD56FD            LD      D,(IX-3)
   \   04DB  3E00              LD      A,BYTE3 read_buff
   \   04DD  21F000            LD      HL,LWRD read_buff
   \   04E0  C30000            JP      LWRD ?BANK_CALL_DIRECT_L08
   \   04E3            view_page_up:
    219          
    220          //////////////////////////////////////////////////
    221          //向前翻阅
    222          byte view_page_up(STRUCT_VIEW_FILE *ViewFileStructPoint , int BackGroundID)
    223          {
   \   04E3  FDE5              PUSH    IY
   \   04E5  DDE5              PUSH    IX
   \   04E7  DD210000          LD      IX,0
   \   04EB  DD39              ADD     IX,SP
   \   04ED  C5                PUSH    BC
   \   04EE  D5                PUSH    DE
   \   04EF  21EEFF            LD      HL,65518
   \   04F2  39                ADD     HL,SP
   \   04F3  F9                LD      SP,HL
    224              //long lBakSeek[SCR_ROW+1];
    225              long ReadFileLength;                // 已读取的文件长度
    226              uint ReadLengthOneTime;        //读取一次数据的长度
    227              uint RowHeadPosition;        //行首地址(在一次所读数据中的位置)
    228              uint ByteCount;            //字符数累加    
    229              BOOL ReturnFlag;            //换行标志
    230              BOOL ReReadFlag;            //重读标志
    231              char FileHeadFlag=0; 
    232              byte row, col;            //显示的行列号
    233              byte chr;
    234          
    235              byte *str, *p;
    236              //SetBackgdColor(Color_BLACK_def);
    237              ClearScreen(NULL);
   \   04F4  110000            LD      DE,0
   \   04F7  CD0000            CALL    LWRD ClearScreen
    238          
    239              if( ViewFileStructPoint->PrevSeek != 0 )
   \   04FA  DD36FB00          LD      (IX-5),0
   \   04FE  210600            LD      HL,6
   \   0501  DD5EFC            LD      E,(IX-4)
   \   0504  DD56FD            LD      D,(IX-3)
   \   0507  19                ADD     HL,DE
   \   0508  7E                LD      A,(HL)
   \   0509  23                INC     HL
   \   050A  B6                OR      (HL)
   \   050B  23                INC     HL
   \   050C  B6                OR      (HL)
   \   050D  23                INC     HL
   \   050E  B6                OR      (HL)
   \   050F  281A              JR      Z,?0094
   \   0511            ?0093:
    240              {
    241                  ToPrevScreenPosition(ViewFileStructPoint);
   \   0511  3E00              LD      A,BYTE3 ToPrevScreenPosition
   \   0513  210000            LD      HL,LWRD ToPrevScreenPosition
   \   0516  CD0000            CALL    LWRD ?BANK_CALL_DIRECT_L08
    242                  ViewFileStructPoint->PrevSeek = 0;
   \   0519  210600            LD      HL,6
   \   051C  DD4EFC            LD      C,(IX-4)
   \   051F  DD46FD            LD      B,(IX-3)
   \   0522  09                ADD     HL,BC
   \   0523  AF                XOR     A
   \   0524  77                LD      (HL),A
   \   0525  23                INC     HL
   \   0526  77                LD      (HL),A
   \   0527  23                INC     HL
   \   0528  77                LD      (HL),A
   \   0529  23                INC     HL
   \   052A  77                LD      (HL),A
   \   052B            ?0094:
    243              }
    244              if( 0 == ViewFileStructPoint->CurrentSeek )
   \   052B  210A00            LD      HL,10
   \   052E  DD4EFC            LD      C,(IX-4)
   \   0531  DD46FD            LD      B,(IX-3)
   \   0534  09                ADD     HL,BC
   \   0535  7E                LD      A,(HL)
   \   0536  23                INC     HL
   \   0537  B6                OR      (HL)
   \   0538  23                INC     HL
   \   0539  B6                OR      (HL)
   \   053A  23                INC     HL
   \   053B  B6                OR      (HL)
   \   053C  CA1407            JP      Z,?0186
   \   053F            ?0095:
    245                  return 0;   // 不能向前翻页
   \   053F            ?0096:
    246          
    247              // 计算向前翻页最接近的偏移(ReadFileLength)
    248              ReturnFlag = FALSE;  // 0x0D, 0x0A 标志
    249              ByteCount = 0;
    250              ReadLengthOneTime = 0 ;
    251              ReadFileLength = ViewFileStructPoint->CurrentSeek;

⌨️ 快捷键说明

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