Top secrets sources NedoPC pentevo

Rev

Rev 639 | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed | ?url?


;LAST UPDATE: 28.03.2014 savelij

;Ž‚…Š€ €‘˜ˆ…ˆŸ ˆ‡ ‡€ƒ“†…ŽƒŽ HEADER
CMP_FILEEXT     LD HL,zmbuff
CMPFILEEXT1     LD A,(HL)
                INC HL
                AND A
                JR NZ,CMPFILEEXT1
                LD DE,-4
                ADD HL,DE
                LD DE,FILE_EXT
                CALL CP_EXT
                RET Z                           ;‚›•Ž„ …‘‹ˆ €‘˜ˆ…ˆ… … Ž„„…†ˆ‚€…’‘Ÿ
                LD (NUM4EXT),A
                CALL CONV_SIZE
                LD A,(NUM4EXT)
                DEC A
                LD L,A
                LD H,0
                LD DE,FUNC4EXT
                ADD HL,HL
                ADD HL,DE
                LD E,(HL)
                INC HL
                LD D,(HL)
                EX DE,HL
                JP (HL)

CONV_SIZE       LD BC,0X1400
                LD DE,TXT_NAME
                LD HL,zmbuff
CONVSIZE3       LD A,(HL)
                CP "."
                JR Z,CONVSIZE2
                LDI
                DJNZ CONVSIZE3
                LD A,">"
                LD (DE),A
                INC DE
CONVSIZE1       LD A,(HL)
                INC HL
                CP "."
                JR NZ,CONVSIZE1
                DEC HL
CONVSIZE2       LDI
                LDI
                LDI
                LDI
CONVSIZE4       LD A,(HL)
                INC HL
                CP " "
                JR NZ,CONVSIZE4
                DEC HL
                DEC HL
                LD DE,TXT_FULLSIZE_
CONVSIZE5       LD A,(HL)
                AND A
                JR Z,CONVSIZE6
                LDD
                JR CONVSIZE5

CONVSIZE6       LD BC,0
                LD DE,0
                LD HL,TXT_SIZERECV
                CALL HEX4DEC
                LD HL,TXT_FILENAME
                CALL PRINT_MSG
                LD HL,TXT_FILESIZE
                JP PRINT_MSG

UPDATE_CHISLO   LD BC,(rxbytes+2)
                LD DE,(rxbytes)
                LD HL,TXT_SIZERECV
                CALL HEX4DEC
                LD HL,TXT_SIZE
                JP PRINT_MSG

;ˆˆ’ ˆ ‚Š‹ž—…ˆ… €—€‹œŽ‰ ‘’€ˆ–› „‹Ÿ ‡€ƒ“‡Šˆ TAP ”€‰‹€
EXT_TAP        
                LD A,PAGE4TAP
                JP INIT_PAGE

;ˆˆ’ ˆ ‚Š‹ž—…ˆ… €—€‹œŽ‰ ‘’€ˆ–› „‹Ÿ ‡€ƒ“‡Šˆ TRD ”€‰‹€
EXT_TRD        
                IF MEMTYPE=PROFI
                LD A,0X3F
                ELSEIF MEMTYPE=PENT22
                XOR A
                ELSE
                LD A,PAGE_DATARAMD
                ENDIF
                JP INIT_PAGE

CP_EXT          LD C,0
CPETR2          LD A,(DE)
                AND A
                JR Z,CPETR1+1
                INC C
                PUSH DE
                PUSH HL
                CALL COMPARF
                POP HL
                POP DE
                JR Z,CPETR1
                INC DE
                INC DE
                INC DE
                JR CPETR2

CPETR1          LD A,C
                AND A
                RET

COMPARF         LD A,(DE)
                CP (HL)
                RET NZ
                INC HL
                INC DE
                LD A,(DE)
                CP (HL)
                RET NZ
                INC HL
                INC DE
                LD A,(DE)
                CP (HL)
                RET

NUM4EXT         DB 0                    ;ŽŒ… ‡€ƒ“†€…ŒŽƒŽ €‘˜ˆ…ˆŸ
FILE_EXT        IF PROFI=1
                DZ "TRDtrd"
                ELSE
                DZ "TAPtapTRDtrd"       ;‘ˆ‘ŽŠ ˆˆŒ€…Œ›• €‘˜ˆ…ˆ‰
                ENDIF

FUNC4EXT        IF PROFI=1
                DW EXT_TRD
                DW EXT_TRD
                ELSE
                DW EXT_TAP
                DW EXT_TAP
                DW EXT_TRD
                DW EXT_TRD
                ENDIF