mirror of
https://github.com/romychs/ESPKit.git
synced 2025-07-04 16:48:03 +03:00
open local file 1st impl
This commit is contained in:
parent
a540189ec7
commit
6d9428d988
@ -364,7 +364,7 @@ CMD_LINE_TFTP_D
|
|||||||
DB " tftp://tftp.server.ru:1024/file_in.asm c:\\tmp\\file_out.asm"Z
|
DB " tftp://tftp.server.ru:1024/file_in.asm c:\\tmp\\file_out.asm"Z
|
||||||
|
|
||||||
CMD_LINE_TFTP_D1
|
CMD_LINE_TFTP_D1
|
||||||
DB " tftp://tftp.server.ru:1024/file_in.asm"Z
|
DB " tftp://tftp.server.ru:1024/file_in.asm local.asm"Z
|
||||||
|
|
||||||
CMD_LINE_TFTP_U
|
CMD_LINE_TFTP_U
|
||||||
DB " file_up.txt tftp://tftp.server.ru:9999/file_in.asm "Z
|
DB " file_up.txt tftp://tftp.server.ru:9999/file_in.asm "Z
|
||||||
|
@ -66,4 +66,9 @@ FA_LABEL EQU 0x08
|
|||||||
FA_DIRECTORY EQU 0x10
|
FA_DIRECTORY EQU 0x10
|
||||||
FA_ARCHIVE EQU 0x20
|
FA_ARCHIVE EQU 0x20
|
||||||
|
|
||||||
|
; File Access mode
|
||||||
|
FM_READ_WRITE EQU 0x00
|
||||||
|
FM_READ EQU 0x01
|
||||||
|
FM_WRITE EQU 0x02
|
||||||
|
|
||||||
ENDIF
|
ENDIF
|
||||||
|
@ -14,14 +14,11 @@ CHECK
|
|||||||
|
|
||||||
PRINT
|
PRINT
|
||||||
CALL GET_ERR_MSG
|
CALL GET_ERR_MSG
|
||||||
LD C,DSS_PCHARS
|
DSS_EXEC DSS_PCHARS
|
||||||
RST DSS
|
|
||||||
LD C,DSS_PCHARS
|
|
||||||
LD HL, WCOMMON.LINE_END
|
LD HL, WCOMMON.LINE_END
|
||||||
RST DSS
|
DSS_EXEC DSS_PCHARS
|
||||||
POP BC ; clear add from stack
|
POP BC ; clear add from stack
|
||||||
LD BC,0x0141 ; and exit
|
DSS_EXEC 0x0200+DSS_EXIT ; and exit
|
||||||
RST DSS
|
|
||||||
|
|
||||||
; ------------------------------------------------------
|
; ------------------------------------------------------
|
||||||
; Return pointer to DSS error message
|
; Return pointer to DSS error message
|
||||||
|
@ -6,12 +6,11 @@
|
|||||||
; ======================================================
|
; ======================================================
|
||||||
|
|
||||||
|
|
||||||
; Set to 1 to turn debug ON with DeZog VSCode plugin
|
; define to turn debug ON with DeZog VSCode plugin
|
||||||
; Set to 0 to compile .EXE
|
;DEFINE DEBUG
|
||||||
DEBUG EQU 0
|
|
||||||
|
|
||||||
; Set to 1 to output TRACE messages
|
; define to output TRACE messages
|
||||||
TRACE EQU 1
|
DEFINE TRACE
|
||||||
|
|
||||||
; Version of EXE file, 1 for DSS 1.70+
|
; Version of EXE file, 1 for DSS 1.70+
|
||||||
EXE_VERSION EQU 0
|
EXE_VERSION EQU 0
|
||||||
@ -23,7 +22,7 @@ DEFAULT_TIMEOUT EQU 2000
|
|||||||
|
|
||||||
DEVICE NOSLOT64K
|
DEVICE NOSLOT64K
|
||||||
|
|
||||||
IF DEBUG == 1
|
IFDEF DEBUG
|
||||||
INCLUDE "dss.asm"
|
INCLUDE "dss.asm"
|
||||||
DB 0
|
DB 0
|
||||||
ALIGN 16384, 0
|
ALIGN 16384, 0
|
||||||
@ -59,7 +58,7 @@ EXE_HEADER
|
|||||||
; ------------------------------------------------------
|
; ------------------------------------------------------
|
||||||
START
|
START
|
||||||
|
|
||||||
IF DEBUG == 1
|
IFDEF DEBUG
|
||||||
; LD IX,CMD_LINE1
|
; LD IX,CMD_LINE1
|
||||||
LD SP, STACK_TOP
|
LD SP, STACK_TOP
|
||||||
ENDIF
|
ENDIF
|
||||||
@ -226,7 +225,7 @@ MSG_ENT_NO
|
|||||||
; ------------------------------------------------------
|
; ------------------------------------------------------
|
||||||
; Debug messages
|
; Debug messages
|
||||||
; ------------------------------------------------------
|
; ------------------------------------------------------
|
||||||
IF TRACE
|
IFDEF TRACE
|
||||||
|
|
||||||
MSG_ECHO_OFF
|
MSG_ECHO_OFF
|
||||||
DB "Echo off",0
|
DB "Echo off",0
|
||||||
@ -277,7 +276,7 @@ LINE_END
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
IF DEBUG == 1
|
IFDEF DEBUG
|
||||||
CMD_TEST1 DB "ATE0\r\n",0
|
CMD_TEST1 DB "ATE0\r\n",0
|
||||||
BUFF_TEST1 DS RS_BUFF_SIZE,0
|
BUFF_TEST1 DS RS_BUFF_SIZE,0
|
||||||
ENDIF
|
ENDIF
|
||||||
|
@ -51,7 +51,7 @@ EXE_HEADER
|
|||||||
; ------------------------------------------------------
|
; ------------------------------------------------------
|
||||||
START
|
START
|
||||||
|
|
||||||
IF DEBUG == 1
|
IFDEF DEBUG
|
||||||
; LD IX,CMD_LINE1
|
; LD IX,CMD_LINE1
|
||||||
LD SP, STACK_TOP
|
LD SP, STACK_TOP
|
||||||
JP MAIN_LOOP
|
JP MAIN_LOOP
|
||||||
|
@ -34,7 +34,7 @@
|
|||||||
|
|
||||||
; Print data ASCIIZ string to screen if TRACE enabled
|
; Print data ASCIIZ string to screen if TRACE enabled
|
||||||
MACRO TRACELN data
|
MACRO TRACELN data
|
||||||
IF TRACE == 1
|
IFDEF TRACE
|
||||||
PUSH BC,DE
|
PUSH BC,DE
|
||||||
PRINTLN data
|
PRINTLN data
|
||||||
POP DE,BC
|
POP DE,BC
|
||||||
|
@ -26,12 +26,9 @@ CHECK_ERROR
|
|||||||
; ------------------------------------------------------
|
; ------------------------------------------------------
|
||||||
; Program exit point
|
; Program exit point
|
||||||
; ------------------------------------------------------
|
; ------------------------------------------------------
|
||||||
IFUSED EXIT
|
|
||||||
EXIT
|
EXIT
|
||||||
CALL REST_VMODE
|
CALL REST_VMODE
|
||||||
LD C,DSS_EXIT
|
DSS_EXEC DSS_EXIT
|
||||||
RST DSS
|
|
||||||
ENDIF
|
|
||||||
; ------------------------------------------------------
|
; ------------------------------------------------------
|
||||||
; Search Sprinter WiFi card
|
; Search Sprinter WiFi card
|
||||||
; ------------------------------------------------------
|
; ------------------------------------------------------
|
||||||
@ -57,7 +54,7 @@ NO_TL_FOUND
|
|||||||
; Dump all UTL16C550 registers to screen for debug
|
; Dump all UTL16C550 registers to screen for debug
|
||||||
; ------------------------------------------------------
|
; ------------------------------------------------------
|
||||||
IFUSED DUMP_UART_REGS
|
IFUSED DUMP_UART_REGS
|
||||||
IF TRACE
|
IFDEF TRACE
|
||||||
DUMP_UART_REGS
|
DUMP_UART_REGS
|
||||||
; Dump, DLAB=0 registers
|
; Dump, DLAB=0 registers
|
||||||
LD BC, 0x0800
|
LD BC, 0x0800
|
||||||
@ -231,7 +228,7 @@ SAVE_VMODE
|
|||||||
; ------------------------------------------------------
|
; ------------------------------------------------------
|
||||||
; Debug messages
|
; Debug messages
|
||||||
; ------------------------------------------------------
|
; ------------------------------------------------------
|
||||||
IF TRACE
|
IFDEF TRACE
|
||||||
MSG_DR
|
MSG_DR
|
||||||
DB "Reg[0x"
|
DB "Reg[0x"
|
||||||
MSG_DR_RN
|
MSG_DR_RN
|
||||||
|
@ -6,12 +6,11 @@
|
|||||||
; License: BSD 3-Clause
|
; License: BSD 3-Clause
|
||||||
; ======================================================
|
; ======================================================
|
||||||
|
|
||||||
; Set to 1 to turn debug ON with DeZog VSCode plugin
|
; Define to turn debug ON with DeZog VSCode plugin
|
||||||
; Set to 0 to compile .EXE
|
;DEFINE EQU 0
|
||||||
DEBUG EQU 0
|
|
||||||
|
|
||||||
; Set to 1 to output TRACE messages
|
; Define to output TRACE messages
|
||||||
TRACE EQU 1
|
DEFINE TRACE
|
||||||
|
|
||||||
|
|
||||||
; Version of EXE file, 1 for DSS 1.70+
|
; Version of EXE file, 1 for DSS 1.70+
|
||||||
@ -26,7 +25,7 @@ DEFAULT_TIMEOUT EQU 2000
|
|||||||
|
|
||||||
DEVICE SPRINTER ;NOSLOT64K
|
DEVICE SPRINTER ;NOSLOT64K
|
||||||
|
|
||||||
IF DEBUG == 1
|
IFDEF DEBUG
|
||||||
INCLUDE "dss.asm"
|
INCLUDE "dss.asm"
|
||||||
DB 0
|
DB 0
|
||||||
ALIGN 16384, 0
|
ALIGN 16384, 0
|
||||||
@ -61,7 +60,7 @@ EXE_HEADER
|
|||||||
; ------------------------------------------------------
|
; ------------------------------------------------------
|
||||||
START
|
START
|
||||||
|
|
||||||
IF DEBUG == 1
|
IFDEF DEBUG
|
||||||
; LD IX,CMD_LINE1
|
; LD IX,CMD_LINE1
|
||||||
LD SP, STACK_TOP
|
LD SP, STACK_TOP
|
||||||
JP MAIN_LOOP
|
JP MAIN_LOOP
|
||||||
@ -239,7 +238,7 @@ CMD_QUIT
|
|||||||
RX_ERR
|
RX_ERR
|
||||||
DB 0
|
DB 0
|
||||||
|
|
||||||
IF DEBUG == 1
|
IFDEF DEBUG
|
||||||
CMD_TEST1 DB "ATE0\r\n"Z
|
CMD_TEST1 DB "ATE0\r\n"Z
|
||||||
BUFF_TEST1 DS RS_BUFF_SIZE,0
|
BUFF_TEST1 DS RS_BUFF_SIZE,0
|
||||||
ENDIF
|
ENDIF
|
||||||
|
@ -8,10 +8,10 @@
|
|||||||
|
|
||||||
; Set to 1 to turn debug ON with DeZog VSCode plugin
|
; Set to 1 to turn debug ON with DeZog VSCode plugin
|
||||||
; Set to 0 to compile .EXE
|
; Set to 0 to compile .EXE
|
||||||
DEBUG EQU 1
|
DEFINE DEBUG
|
||||||
|
|
||||||
; Set to 1 to output TRACE messages
|
; Set to 1 to output TRACE messages
|
||||||
TRACE EQU 1
|
DEFINE TRACE
|
||||||
|
|
||||||
|
|
||||||
WM_DOWNLOAD EQU 0
|
WM_DOWNLOAD EQU 0
|
||||||
@ -27,13 +27,7 @@ DEFAULT_TIMEOUT EQU 2000
|
|||||||
|
|
||||||
DEVICE NOSLOT64K
|
DEVICE NOSLOT64K
|
||||||
|
|
||||||
; DEFDEVICE SPRINTER, 0x4000, 256, 0,1,2,3
|
IFDEF DEBUG
|
||||||
|
|
||||||
; SLDOPT COMMENT WPMEM, LOGPOINT, ASSERTION
|
|
||||||
|
|
||||||
; DEVICE SPRINTER ;NOSLOT64K
|
|
||||||
|
|
||||||
IF DEBUG == 1
|
|
||||||
INCLUDE "dss.asm"
|
INCLUDE "dss.asm"
|
||||||
DB 0
|
DB 0
|
||||||
ALIGN 16384, 0
|
ALIGN 16384, 0
|
||||||
@ -68,18 +62,20 @@ EXE_HEADER
|
|||||||
; ------------------------------------------------------
|
; ------------------------------------------------------
|
||||||
START
|
START
|
||||||
|
|
||||||
IF DEBUG == 1
|
IFDEF DEBUG
|
||||||
LD IX,CMD_LINE_TFTP_D
|
LD IX,CMD_LINE_TFTP_D1
|
||||||
LD SP, STACK_TOP
|
LD SP, STACK_TOP
|
||||||
ENDIF
|
ENDIF
|
||||||
|
|
||||||
CALL PARSE_CMD_LINE
|
CALL PARSE_CMD_LINE
|
||||||
|
|
||||||
;CALL OPEN_LOCAL_FILE
|
CALL OPEN_LOCAL_FILE
|
||||||
|
|
||||||
CALL DISPLAY_MODE
|
CALL DISPLAY_MODE
|
||||||
|
|
||||||
|
CALL CLOSE_LOCAL_FILE
|
||||||
|
|
||||||
IF DEBUG == 1
|
IFDEF DEBUG
|
||||||
JP MAIN_LOOP
|
JP MAIN_LOOP
|
||||||
ENDIF
|
ENDIF
|
||||||
|
|
||||||
@ -308,6 +304,9 @@ COPY_LFN
|
|||||||
RET NZ ; ok, it is not empty
|
RET NZ ; ok, it is not empty
|
||||||
CALL UTIL.GET_CUR_DIR
|
CALL UTIL.GET_CUR_DIR
|
||||||
//LD DE,HL
|
//LD DE,HL
|
||||||
|
LD IX,HAVE_PATH
|
||||||
|
INC (IX+0)
|
||||||
|
|
||||||
LD DE,REM_FILE
|
LD DE,REM_FILE
|
||||||
.CLFN_NXT
|
.CLFN_NXT
|
||||||
LD A,(DE)
|
LD A,(DE)
|
||||||
@ -327,9 +326,67 @@ COPY_LFN
|
|||||||
; WR - for download
|
; WR - for download
|
||||||
; ------------------------------------------------------
|
; ------------------------------------------------------
|
||||||
OPEN_LOCAL_FILE
|
OPEN_LOCAL_FILE
|
||||||
|
LD HL,LOC_FILE
|
||||||
|
LD A,(HAVE_PATH)
|
||||||
|
OR A
|
||||||
|
JR NZ,.OLF_SKP_CP
|
||||||
|
|
||||||
|
LD HL, WIFI.RS_BUFF
|
||||||
|
PUSH HL
|
||||||
|
CALL UTIL.GET_CUR_DIR
|
||||||
|
LD DE,LOC_FILE
|
||||||
|
LD B,128
|
||||||
|
.OLF_NXT
|
||||||
|
LD A, (DE)
|
||||||
|
LD (HL),A
|
||||||
|
OR A
|
||||||
|
JR Z, .OLF_EFN
|
||||||
|
INC HL
|
||||||
|
INC DE
|
||||||
|
DJNZ .OLF_NXT
|
||||||
|
.OLF_EFN
|
||||||
|
POP HL
|
||||||
|
|
||||||
|
; HL - points to file path name
|
||||||
|
.OLF_SKP_CP
|
||||||
LD A, (WORK_MODE)
|
LD A, (WORK_MODE)
|
||||||
CP WM_UPLOAD
|
CP WM_UPLOAD
|
||||||
|
JR Z,.OLF_UPL
|
||||||
|
|
||||||
|
; create new file for write
|
||||||
|
XOR A
|
||||||
|
LD C,DSS_CREATE_FILE
|
||||||
|
RST DSS
|
||||||
|
JR NC,.OLF_END
|
||||||
|
CP 0x07 ; file exists?
|
||||||
|
JP NZ,DSS_ERROR.PRINT ; print error and exit
|
||||||
|
LD A,FM_WRITE
|
||||||
|
JR .OLF_FOW
|
||||||
|
; open existing file for read
|
||||||
|
.OLF_UPL
|
||||||
|
LD A,FM_READ
|
||||||
|
.OLF_FOW
|
||||||
|
LD C,DSS_OPEN_FILE
|
||||||
|
RST DSS
|
||||||
|
CALL DSS_ERROR.CHECK
|
||||||
|
.OLF_END
|
||||||
|
LD (LOC_FH),A
|
||||||
|
|
||||||
|
TRACELN MSG_LFN_OPEN
|
||||||
|
|
||||||
|
RET
|
||||||
|
|
||||||
|
IFDEF TRACE
|
||||||
|
MSG_LFN_OPEN
|
||||||
|
DB "Local file succes open/created."Z
|
||||||
|
ENDIF
|
||||||
|
|
||||||
|
CLOSE_LOCAL_FILE
|
||||||
|
LD A,(LOC_FH)
|
||||||
|
OR A
|
||||||
|
RET Z
|
||||||
|
DSS_EXEC DSS_CLOSE_FILE
|
||||||
|
CALL DSS_ERROR.CHECK
|
||||||
RET
|
RET
|
||||||
|
|
||||||
; ------------------------------------------------------
|
; ------------------------------------------------------
|
||||||
@ -459,10 +516,10 @@ HAVE_PATH
|
|||||||
RX_ERR
|
RX_ERR
|
||||||
DB 0
|
DB 0
|
||||||
|
|
||||||
IF DEBUG == 1
|
; IFDEF DEBUG
|
||||||
CMD_TEST1 DB "ATE0\r\n"Z
|
; CMD_TEST1 DB "ATE0\r\n"Z
|
||||||
BUFF_TEST1 DS RS_BUFF_SIZE,0
|
; BUFF_TEST1 DS RS_BUFF_SIZE,0
|
||||||
ENDIF
|
; ENDIF
|
||||||
|
|
||||||
ENDMODULE
|
ENDMODULE
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user