FlexNavigator 1.16.03
- MISC функции перенесены из 2 резидента в 3. - перераспределение TAB таблиц. - в описание Flex Navigator API добавлено описание глобальных переменных. FileViewer.flx 1.07 - мелкое исправление позиции вывода даты/времени. FileEditor.flx 1.11 - мелкое исправление позиции вывода даты/времени.
This commit is contained in:
parent
e4977b4a6f
commit
7940810ffd
@ -1,7 +1,7 @@
|
||||
[]========================================================================[]
|
||||
* *
|
||||
* ޝ¨á ¨¥ Flex Navigator API v1.xx ¤«ï à §à ¡®â稪®¢ Flx-Plugins *
|
||||
* doc v0.5 ®â 02.08.2025 *
|
||||
* doc v0.5 ®â 04.08.2025 *
|
||||
* *
|
||||
[]========================================================================[]
|
||||
|
||||
@ -366,8 +366,8 @@
|
||||
|
||||
[]------------------------------------------------------------------------[]
|
||||
|
||||
5 ª®¬ ¤ ¯¥à¥å®¤ (12 ¡ ©â) § १¥à¢¨à®¢ ë ¨ § ¯®«¥ë
|
||||
ª®¬ ¤®© RET (12 ¡ ©â 0xC9)
|
||||
5 ª®¬ ¤ ¯¥à¥å®¤ (15 ¡ ©â) § १¥à¢¨à®¢ ë ¨ § ¯®«¥ë
|
||||
ª®¬ ¤®© RET (15 ¡ ©â 0xC9)
|
||||
|
||||
[]------------------------------------------------------------------------[]
|
||||
|
||||
@ -451,6 +451,12 @@
|
||||
ç¨á«® ¢ë¢®¤¨âáï ¡¥§ ¢¥¤ã饣® ã«ï
|
||||
¢ë室:
|
||||
-
|
||||
|
||||
[]------------------------------------------------------------------------[]
|
||||
|
||||
1 ª®¬ ¤ ¯¥à¥å®¤ (3 ¡ ©â ) § १¥à¢¨à®¢ ë ¨ § ¯®«¥ë
|
||||
ª®¬ ¤®© RET (3 ¡ ©â 0xC9)
|
||||
|
||||
[]------------------------------------------------------------------------[]
|
||||
|
||||
JUMPS.PointerMouseClock - ¯à®æ¥¤ãà ãáâ ®¢ª¨ ªãàá®à ¬ëè¨ ¢ ç áë
|
||||
@ -673,3 +679,35 @@
|
||||
áâ ண® § ç¥¨ï ®¬¥à áâà ¨æë ¤«ï ¢®ááâ ®¢«¥¨ï)
|
||||
|
||||
[]------------------------------------------------------------------------[]
|
||||
|
||||
„® ᬥ饨ï 0xC0 ª®¬ ¤ë ¯¥à¥å®¤ § १¥à¢¨à®¢ ë ¨ § ¯®«¥ë
|
||||
ª®¬ ¤®© RET (¡ ©âë 0xC9).
|
||||
|
||||
[]------------------------------------------------------------------------[]
|
||||
|
||||
ޡ鍥 ¯¥à¥¬¥ë¥ ᮠᬥ饨¥ 0xC0:
|
||||
|
||||
NUM_DEVICES 1 Š®«¨ç¥á⢮ ãáâனáâ¢
|
||||
TreeFlag 1 ”« £ ¤¥à¥¢ ¤¨à¥ªâ®à¨©
|
||||
CMOSFlag 1 ”« £ CMOS: 0 - ¥â
|
||||
1 - ¥áâì
|
||||
MouseFlag 1 ”« £ ¬ëè¨: 0 - ¥â
|
||||
1 - ¥áâì
|
||||
CMOSPrint 1 ”« £ à §à¥è¥¨ï ¯¥ç ⨠¤ âë ¢à¥¬¥¨
|
||||
1 - § ¯à¥é¥®, 0 - à §à¥è¥®
|
||||
RAMPAGES
|
||||
.FNPAGESID 1 ˆ¤¥â¨ä¨ª â®à ¯ ¬ï⨠£¤¥ FN
|
||||
.FNREZ2 1 ‘âà ¨æ á äãªæ¨ï¬¨ FN
|
||||
.FNFONT 1 ‘âà ¨æ èà¨ä⮢
|
||||
.FNREZ3 1 ‘âà ¨æ ¥é¥ ¥¬®£® äãªæ¨© FN
|
||||
.BufferID 1 ˆ¤¥â¨ä¨ª â®à ¯ ¬ï⨠¯®¤ ¡ãä¥à
|
||||
.FLX 1 ‘âà ¨æ ¤«ï § £à㧪¨ FLX ¯« £¨®¢
|
||||
.LEFTPANEL 1 ‘âà ¨æ ª â «®£ ‹¥¢®© ¯ ¥«¨
|
||||
.RIGHTPANEL 1 ‘âà ¨æ ª â «®£ <20>à ¢®© ¯ ¥«¨
|
||||
.BuffPg1 1
|
||||
.BuffPg2 1
|
||||
.BuffPg3 1
|
||||
.BuffPg4 1
|
||||
.BuffPgEnd 1
|
||||
.FILES_COUNT 2 ª®«¨ç¥á⢮ ¯®¬¥ç¥ëå ä ©«®¢
|
||||
.FILES_BYTES 5 à §¬¥à ¯®¬¥ç¥ëå ä ©«®¢ ¢ ¡ ©â å
|
||||
|
||||
@ -1,4 +1,15 @@
|
||||
|
||||
14.08.2025
|
||||
FlexNavigator 1.16.03
|
||||
- MISC äãªæ¨¨ ¯¥à¥¥á¥ë ¨§ 2 १¨¤¥â ¢ 3.
|
||||
- ¯¥à¥à á¯à¥¤¥«¥¨¥ TAB â ¡«¨æ.
|
||||
- ¢ ®¯¨á ¨¥ Flex Navigator API ¤®¡ ¢«¥® ®¯¨á ¨¥ £«®¡ «ìëå
|
||||
¯¥à¥¬¥ëå.
|
||||
FileViewer.flx 1.07
|
||||
- ¬¥«ª®¥ ¨á¯à ¢«¥¨¥ ¯®§¨æ¨¨ ¢ë¢®¤ ¤ âë/¢à¥¬¥¨.
|
||||
FileEditor.flx 1.11
|
||||
- ¬¥«ª®¥ ¨á¯à ¢«¥¨¥ ¯®§¨æ¨¨ ¢ë¢®¤ ¤ âë/¢à¥¬¥¨.
|
||||
|
||||
02.08.2025
|
||||
FlexNavigator 1.16.02
|
||||
- ¯¥à¥¤¥« ® ®â®¡à ¦¥¨¥ ¤ âë/¢à¥¬¥¨, ¢ ०¨¬¥ 1 (ä®à¬ â 02.08.2025)
|
||||
|
||||
Binary file not shown.
Binary file not shown.
BIN
fn/flx/help.flx
BIN
fn/flx/help.flx
Binary file not shown.
@ -1,4 +1,15 @@
|
||||
|
||||
14.08.2025
|
||||
FlexNavigator 1.16.03
|
||||
- MISC äãªæ¨¨ ¯¥à¥¥á¥ë ¨§ 2 १¨¤¥â ¢ 3.
|
||||
- ¯¥à¥à á¯à¥¤¥«¥¨¥ TAB â ¡«¨æ.
|
||||
- ¢ ®¯¨á ¨¥ Flex Navigator API ¤®¡ ¢«¥® ®¯¨á ¨¥ £«®¡ «ìëå
|
||||
¯¥à¥¬¥ëå.
|
||||
FileViewer.flx 1.07
|
||||
- ¬¥«ª®¥ ¨á¯à ¢«¥¨¥ ¯®§¨æ¨¨ ¢ë¢®¤ ¤ âë/¢à¥¬¥¨.
|
||||
FileEditor.flx 1.11
|
||||
- ¬¥«ª®¥ ¨á¯à ¢«¥¨¥ ¯®§¨æ¨¨ ¢ë¢®¤ ¤ âë/¢à¥¬¥¨.
|
||||
|
||||
02.08.2025
|
||||
FlexNavigator 1.16.02
|
||||
- ¯¥à¥¤¥« ® ®â®¡à ¦¥¨¥ ¤ âë/¢à¥¬¥¨, ¢ ०¨¬¥ 1 (ä®à¬ â 02.08.2025)
|
||||
|
||||
33
fn_const.a80
33
fn_const.a80
@ -1,8 +1,9 @@
|
||||
|
||||
; LAST UPDATE: 02.08.2025 savelij
|
||||
; LAST UPDATE: 14.08.2025 savelij
|
||||
|
||||
NUM_PAGES_FN EQU 7 ; ª®«¨ç¥á⢮ áâà ¨æ ¤«ï à ¡®âë FN
|
||||
DateMonthFormat ; ä®à¬ ⠢뢮¤ ¬¥áïæ ¢ ¤ â¥
|
||||
NUM_FILES_PANEL EQU 17 ; ª®«¨ç¥á⢮ ä ©«®¢ ¢ á⮫¡æ¥ ¯ ¥«¨
|
||||
NUM_PAGES_FN EQU 7 ; ª®«¨ç¥á⢮ áâà ¨æ ¯ ¬ï⨠¤«ï à ¡®âë FN
|
||||
DateMonthFormat ; ä®à¬ ⠢뢮¤ ¬¥áïæ ¢ ¤ â¥
|
||||
.Digit EQU 1 ; ¬¥áïæ æ¨äன 02.08.2025
|
||||
.Text EQU 2 ; ¬¥áïæ â¥ªá⮬ 2 Aug 2025
|
||||
|
||||
@ -262,7 +263,8 @@ FORMTABL
|
||||
JUMPS
|
||||
.JUMPSIZE EQU 3
|
||||
; â ¡«¨æ ¯¥à¥å®¤®¢ äãªæ¨¨ ¤«ï ¯« £¨®¢
|
||||
_INIT_VAR BASE_ADDR + .JUMPSIZE ; ¯à®¯ã᪠¯¥à¥å®¤ ®á®¢®© ¢å®¤
|
||||
_INIT_VAR BASE_ADDR
|
||||
_SETVAR .MainStartFN, .JUMPSIZE
|
||||
_SETVAR .ClearScreen, .JUMPSIZE
|
||||
_SETVAR .MakeWindow, .JUMPSIZE
|
||||
_SETVAR .ReplaceColorRectan, .JUMPSIZE
|
||||
@ -281,14 +283,14 @@ JUMPS
|
||||
_SETVAR .DrawVScrollBar, .JUMPSIZE
|
||||
_SETVAR .InitProgressBar, .JUMPSIZE
|
||||
_SETVAR .DrawProgressBar, .JUMPSIZE
|
||||
_ADDVAR .JUMPSIZE * 5 ; DUPL 15,0xC9
|
||||
_ADDVAR .JUMPSIZE * 5 ; RESERVED 15 BYTE 0xC9
|
||||
_SETVAR .WaitUnpressMouse, .JUMPSIZE
|
||||
_SETVAR .CheckCoordsMouse, .JUMPSIZE
|
||||
_SETVAR .CMOSPrintDateTime, .JUMPSIZE
|
||||
_ADDVAR .JUMPSIZE; _SETVAR .CMOSPrintOff, .JUMPSIZE
|
||||
_ADDVAR .JUMPSIZE * 1 ; RESERVED 3 BYTE 0xC9
|
||||
_SETVAR .PointerMouseClock, .JUMPSIZE
|
||||
_SETVAR .PointerMousePointer, .JUMPSIZE
|
||||
_ADDVAR .JUMPSIZE * 4 ; DUPL 12,0xC9
|
||||
_ADDVAR .JUMPSIZE * 4 ; RESERVED 12 BYTE 0xC9
|
||||
_SETVAR .ConvertNumbers_40b, .JUMPSIZE
|
||||
_SETVAR .MoveBytesInc, .JUMPSIZE
|
||||
_SETVAR .MoveBytesDec, .JUMPSIZE
|
||||
@ -308,25 +310,20 @@ JUMPS
|
||||
_SETVAR .atoi_16b, .JUMPSIZE
|
||||
_SETVAR .Resident, .JUMPSIZE
|
||||
; १¥à¢¨à®¢ ¨¥ ¤® ᬥ饨ï 0xC0
|
||||
_ADDVAR (BASE_ADDR + 0xC0) - .CURRVAR; - .JUMPSIZE; * 4 ; DUPL 12,0xC9
|
||||
; ¯¥à¥¬¥ë¥ ¤«ï ¤®áâ㯠¨§ ¯« £¨®¢
|
||||
_ADDVAR (BASE_ADDR + 0xC0) - .CURRVAR ; RESERVED UNTIL OFFSET 0xC0 BYTE 0xC9
|
||||
; £«®¡ «ìë¥ ¯¥à¥¬¥ë¥ ¤«ï ¤®áâ㯠¨§ ¯« £¨®¢
|
||||
_SETVAR .NUM_DEVICES, BYTE ; Š®«-¢® ãáâனáâ¢
|
||||
_SETVAR .TreeFlag, BYTE ; ”« £ ¤¥à¥¢
|
||||
_SETVAR .CMOSFlag, BYTE ; ”« £ CMOS 0 - ¥â
|
||||
; 1 - ¥áâì
|
||||
_SETVAR .MouseFlag, BYTE ; ”« £ ¬ëè¨ 0 - ¥â
|
||||
; 1 - ¥áâì
|
||||
_SETVAR .CMOSPrint, BYTE
|
||||
_SETVAR .CMOSPrint, BYTE ; ”« £ à §à¥è¥¨ï ¯¥ç ⨠¤ âë ¢à¥¬¥¨
|
||||
; 1 - § ¯à¥é¥®, 0 - à §à¥è¥®
|
||||
_SETVAR .FNPAGESID, BYTE ; ˆ¤¥â¨ä¨ª â®à ¯ ¬ï⨠FN
|
||||
_SETVAR .FNREZ2, BYTE ; ‘âà ¨æ á äãªæ¨ï¬¨ FN
|
||||
_SETVAR .FNFONT, BYTE ; ‘âà ¨æ èà¨ä⮢
|
||||
_SETVAR .FNREZ3, BYTE ; ‘âà ¨æ FN HELP
|
||||
IFDEF ENABLE.VIEW
|
||||
_SETVAR .FNVIEW, BYTE ; ‘âà ¨æ á FileViewer
|
||||
ENDIF
|
||||
IFDEF ENABLE.EDIT
|
||||
_SETVAR .FNEDIT, BYTE ; ‘âà ¨æ á FileEditor
|
||||
ENDIF
|
||||
; <20>ãä¥àë¥ áâà ¨æë ¯®¤ ¨â¥à䥩á
|
||||
_SETVAR .BufferID, BYTE ; ˆ¤¥â¨ä¨ª â®à ¯ ¬ï⨠¯®¤ ¡ãä¥à
|
||||
_SETVAR .FLX, BYTE ; ‘âà ¨æ ¤«ï § £à㧪¨ FLX ¯« £¨®¢
|
||||
@ -354,6 +351,7 @@ FileHDR
|
||||
_SETVAR .Hours, BYTE ; +#16
|
||||
_SETVAR .Minutes, BYTE ; +#17
|
||||
_SETVAR .SIZE, 0
|
||||
|
||||
_BITMASK MARK, 0 ; 1-ä ©« ¯®¬¥ç¥
|
||||
|
||||
; ¨¬¥ ä ©«®¢
|
||||
@ -375,6 +373,7 @@ FNinternal
|
||||
; ®â« ¤®ç®¥, ¥ ¬¥ïâì ¯® ¨§¡¥¦ ¨¥ £«îª®¢
|
||||
PLUGS_ENABLE EQU 0 ; ¬¥î ¯« £¨®¢
|
||||
TREE_REZID EQU 0
|
||||
MARK_DIR EQU 1 ; ¢ë¡®à ¤¨à¥ªâ®à¨¨ á ¯®¤áç¥â®¬ à §¬¥à ¢á¥å ä ©«®¢
|
||||
MARK_DIR EQU 0 ; ¢ë¡®à ¤¨à¥ªâ®à¨¨ á ¯®¤áç¥â®¬ à §¬¥à ¢á¥å ä ©«®¢
|
||||
TREE_DIR_ENTER EQU 0 ; ¯®ª § ᮤ¥à¦¨¬®£® ¤¨à¥ªâ®à¨¨ ¢ ¤¥à¥¢¥ ¯® ENTER
|
||||
CORR_FILENAME EQU 1 ; ¯à¥®¡à §®¢ ¨¥ ᨬ¢®«®¢ ¨¬¥¨ ä ©«
|
||||
MISC2REZ3 EQU 0 ; ¯¥à¥¥§¤ misc.a80 ¨§ १¨¤¥â 2 ¢ १¨¤¥â 3
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
|
||||
; LAST UPDATE: 19.07.2025 savelij
|
||||
; LAST UPDATE: 03.08.2025 savelij
|
||||
|
||||
include macros.a80
|
||||
|
||||
@ -14,19 +14,8 @@
|
||||
include fat_dir_sp.a80
|
||||
include fn_version.a80
|
||||
|
||||
ENABLE
|
||||
;.EDIT
|
||||
;.VIEW
|
||||
;.HELP
|
||||
|
||||
PAGES_MEM := 4
|
||||
|
||||
IFDEF ENABLE.VIEW
|
||||
PAGES_MEM := PAGES_MEM + 1
|
||||
ENDIF
|
||||
IFDEF ENABLE.EDIT
|
||||
PAGES_MEM := PAGES_MEM + 1
|
||||
ENDIF
|
||||
INIT_VAR 0xC000
|
||||
SETVAR FONT_RAW, 6888;IFFFONT_RAW_PACK - FONT_RAW_PACK
|
||||
SETVAR_ALIGN
|
||||
@ -98,32 +87,11 @@ EntryExec: DI
|
||||
; § £à㧪 奫¯
|
||||
LD A,(MAIN.FNREZ3) ; FNREZ3
|
||||
SETPORT WINSP.CPU3,,0
|
||||
; SETPORT WINSP.CPU1,,0 ; ????
|
||||
LD HL,0xC000
|
||||
LD DE,END_BLOCK_3 - START_BLOCK_3
|
||||
LD A,(MAIN.hFile)
|
||||
SPDSS DSSF.READ
|
||||
JP C,disk_error
|
||||
IFDEF ENABLE.VIEW
|
||||
; § £à㧪 ¢ìà
|
||||
LD A,(MAIN.FNVIEW) ; FNVIEW
|
||||
SETPORT WINSP.CPU3,,0
|
||||
LD HL,0xC000
|
||||
LD DE,END_BLOCK_VIEWER - START_BLOCK_VIEWER
|
||||
LD A,(MAIN.hFile)
|
||||
SPDSS DSSF.READ
|
||||
JP C,disk_error
|
||||
ENDIF
|
||||
IFDEF ENABLE.EDIT
|
||||
; § £à㧪 । ªâ®à
|
||||
LD A,(MAIN.FNEDIT) ; FNEDIT
|
||||
SETPORT WINSP.CPU3,,0
|
||||
LD HL,0xC000
|
||||
LD DE,END_BLOCK_EDITOR - START_BLOCK_EDITOR
|
||||
LD A,(MAIN.hFile)
|
||||
SPDSS DSSF.READ
|
||||
JP C,disk_error
|
||||
ENDIF
|
||||
LD A,(MAIN.hFile)
|
||||
SPDSS DSSF.CLOSE ; close file
|
||||
;!TEST ; !HARDCODE SYS_PAGE
|
||||
@ -205,12 +173,6 @@ MAIN
|
||||
.FNREZ2 db 0x00 ; 00
|
||||
.FNFONT db 0x00 ; 01
|
||||
.FNREZ3 db 0x00 ; 02
|
||||
IFDEF ENABLE.VIEW
|
||||
.FNVIEW db 0x00 ; 03
|
||||
ENDIF
|
||||
IFDEF ENABLE.EDIT
|
||||
.FNEDIT db 0x00 ; 04
|
||||
ENDIF
|
||||
DB 0xFF
|
||||
|
||||
.copyright_str: DZ "\r\nThe Flex Navigator, ver.\{FLEX_VERS.NAVIGATOR}\r\n"
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
|
||||
; LAST UPDATE: 02.08.2025 savelij
|
||||
; LAST UPDATE: 14.08.2025 savelij
|
||||
|
||||
FLEX_VERS
|
||||
.NAVIGATOR EQU "1.16.02"
|
||||
.EDITOR EQU "1.10"
|
||||
.VIEWER EQU "1.06"
|
||||
.NAVIGATOR EQU "1.16.03"
|
||||
.EDITOR EQU "1.11"
|
||||
.VIEWER EQU "1.07"
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
|
||||
; LAST UPDATE: 01.08.2025 savelij
|
||||
; LAST UPDATE: 14.08.2025 savelij
|
||||
|
||||
;[]==========================================================[]
|
||||
DOSline SUB A
|
||||
@ -59,7 +59,7 @@ DOSlnEx
|
||||
DOSloop SUB A
|
||||
LD (HistCurrent),A
|
||||
LD IX,DOSstr
|
||||
LD HL,DOSTab
|
||||
LD HL,MAINTAB.DOSTab
|
||||
CALL DOSInputLine
|
||||
RET C
|
||||
JR Z,RunDOSline
|
||||
@ -249,7 +249,7 @@ RunDOSexe1 ld hl,WorkBuffer
|
||||
SUB A
|
||||
CALL ClearScreen
|
||||
CALL ResVideoMode
|
||||
LD HL,ReStartPoint
|
||||
LD HL,ReStartFN
|
||||
EX (SP),HL
|
||||
LD HL,WorkBuffer + 0x0100
|
||||
SPDSS DSSF.EXEC,0
|
||||
@ -348,7 +348,7 @@ SaveDOSline
|
||||
PUSH BC
|
||||
CALL FindHistory
|
||||
POP BC
|
||||
LD DE,DOShistory + DOShistory_Size
|
||||
LD DE,BUFFERS.DOShistory + BUFFERS.DOShistory_Size
|
||||
OR A
|
||||
EX DE,HL
|
||||
SBC HL,DE
|
||||
@ -365,7 +365,7 @@ SaveDOSline
|
||||
INC HL
|
||||
EX DE,HL
|
||||
PUSH HL
|
||||
LD BC,DOShistory
|
||||
LD BC,BUFFERS.DOShistory
|
||||
OR A
|
||||
SBC HL,BC
|
||||
LD C,L
|
||||
@ -379,7 +379,7 @@ SaveDOSline
|
||||
LDDR
|
||||
.L2 POP BC
|
||||
LD HL,DOSinp
|
||||
LD DE,DOShistory
|
||||
LD DE,BUFFERS.DOShistory
|
||||
LD A,C
|
||||
INC A
|
||||
LD (DE),A
|
||||
@ -427,7 +427,7 @@ GetDOShistory LD IX,DOSstr
|
||||
SETPORT WINSP.CPU1,,0
|
||||
RET
|
||||
|
||||
FindHistory LD HL,DOShistory
|
||||
FindHistory LD HL,BUFFERS.DOShistory
|
||||
OR A
|
||||
RET Z
|
||||
LD B,A
|
||||
|
||||
36
fninit.a80
36
fninit.a80
@ -1,5 +1,5 @@
|
||||
|
||||
; LAST UPDATE: 02.08.2025 savelij
|
||||
; LAST UPDATE: 14.08.2025 savelij
|
||||
|
||||
;[]==========================================================[]
|
||||
InitVideoMode
|
||||
@ -262,8 +262,8 @@ FirstInit
|
||||
.EDIRFLX
|
||||
|
||||
; ®¡®¢«¥¨¥ ¢ â ¡«¨æ¥ ¢ë¡®à ¤¨áª®¢ ¯ ¥«¨
|
||||
SETUP_DISKS LD HL,BgDISKl ; ¤¨áª¨ «¥¢®© ¯ ¥«¨
|
||||
LD DE,BgDISKr ; ¤¨áª¨ ¯à ¢®© ¯ ¥«¨
|
||||
SETUP_DISKS LD HL,MAINTAB.BgDISKl ; ¤¨áª¨ «¥¢®© ¯ ¥«¨
|
||||
LD DE,MAINTAB.BgDISKr ; ¤¨áª¨ ¯à ¢®© ¯ ¥«¨
|
||||
LD BC,FORMTABL.SIZE * 2
|
||||
LD A,(NUM_DEVICES)
|
||||
.L1 ADD HL,BC
|
||||
@ -337,38 +337,38 @@ InitScreen
|
||||
OR A
|
||||
RET Z
|
||||
MAKEWINDOW WINSUBOBJ.WOBIND
|
||||
W_BORDER 500 + 10,15,136 - 10,12
|
||||
W_BORDER 510,15,126,12
|
||||
W_END
|
||||
LD HL,508 + 12
|
||||
LD HL,520
|
||||
LD DE,17
|
||||
LD B,COLORP.HIGHGRAY + COLORI.BLACK
|
||||
EXX
|
||||
LD HL,558 + 10
|
||||
LD HL,568
|
||||
LD DE,17
|
||||
LD B,COLORP.HIGHGRAY + COLORI.BLACK
|
||||
EXX
|
||||
LD A,DateMonthFormat.Text
|
||||
LD A,DateMonthFormat.Digit
|
||||
JP CMOSPrintDateTime
|
||||
|
||||
;[]==========================================================[]
|
||||
InitPanels LD (InitPanFlg),A
|
||||
LD HL,LeftPanel+PANEL.VIEWFLAG
|
||||
LD A,(RightPanel+PANEL.VIEWFLAG)
|
||||
LD HL,LeftPanel + PANEL.VIEWFLAG
|
||||
LD A,(RightPanel + PANEL.VIEWFLAG)
|
||||
OR (HL)
|
||||
AND 0x02
|
||||
JR NZ,InitPanTree
|
||||
AND VIEWFLAG.M_TREE;0x02
|
||||
JR NZ,.InitPanTree
|
||||
LD IY,LeftPanel
|
||||
CALL InitPanelE
|
||||
LD IY,RightPanel
|
||||
CALL InitPanelE
|
||||
JR InitPanExit
|
||||
JR .InitPanExit
|
||||
|
||||
InitPanTree LD IY,LeftPanel
|
||||
.InitPanTree LD IY,LeftPanel
|
||||
BIT VIEWFLAG.B_TREE,(IY+PANEL.VIEWFLAG)
|
||||
JR NZ,.L1
|
||||
LD IY,RightPanel
|
||||
.L1 CALL InitPanelE
|
||||
InitPanExit LD HL,LeftPanel
|
||||
.InitPanExit LD HL,LeftPanel
|
||||
LD DE,PANEL.CURR_PATH
|
||||
BIT 7,(HL)
|
||||
JR NZ,.L2
|
||||
@ -440,10 +440,10 @@ PanelN6 EQU $+1
|
||||
W_END
|
||||
|
||||
LD HL,NormMouse
|
||||
LD DE,PanelPlaceL
|
||||
LD DE,MAINTAB.PanelPlaceL
|
||||
BIT PANELFLAG.B_SIDE,(IY+PANEL.PANELFLAG)
|
||||
JR Z,.L1
|
||||
LD DE,PanelPlaceR
|
||||
LD DE,MAINTAB.PanelPlaceR
|
||||
.L1 PUSH DE
|
||||
LD BC,0x0050
|
||||
LDIR
|
||||
@ -514,10 +514,10 @@ PanelP6 EQU $+1
|
||||
W_END
|
||||
|
||||
LD HL,PodrMouse
|
||||
LD DE,PanelPlaceL
|
||||
LD DE,MAINTAB.PanelPlaceL
|
||||
BIT PANELFLAG.B_SIDE,(IY+PANEL.PANELFLAG)
|
||||
JR Z,.L1
|
||||
LD DE,PanelPlaceR
|
||||
LD DE,MAINTAB.PanelPlaceR
|
||||
.L1 PUSH DE
|
||||
LD BC,0x0050
|
||||
LDIR
|
||||
|
||||
354
fnmain.a80
354
fnmain.a80
@ -1,5 +1,5 @@
|
||||
|
||||
; LAST UPDATE: 02.08.2025 savelij
|
||||
; LAST UPDATE: 14.08.2025 savelij
|
||||
|
||||
;[]=======================================================================[]
|
||||
; FLEX NAVIGATOR ;
|
||||
@ -12,7 +12,7 @@
|
||||
|
||||
PHASE BASE_ADDR
|
||||
START_BLOCK_1
|
||||
JP StartPoint ; entry point
|
||||
JP MainStartFN ; entry point
|
||||
|
||||
JP ClearScreen
|
||||
JP MakeWindow
|
||||
@ -39,7 +39,7 @@ START_BLOCK_1
|
||||
JP CheckCoordsMouse
|
||||
JP CMOSPrintDateTime
|
||||
|
||||
DB JUMPS.JUMPSIZE DUP 0xC9;JP CMOSPrintOff
|
||||
DB JUMPS.JUMPSIZE * 1 DUP 0xC9
|
||||
|
||||
JP PointerMouseClock
|
||||
JP PointerMousePointer
|
||||
@ -73,18 +73,13 @@ CMOSFlag DB 0 ;
|
||||
; 1 - ¥áâì
|
||||
MouseFlag DB 1 ; ”« £ ¬ëè¨ 0 - ¥â
|
||||
; 1 - ¥áâì
|
||||
CMOSPrint: DB 1
|
||||
CMOSPrint: DB 1 ; ”« £ à §à¥è¥¨ï ¯¥ç ⨠¤ âë ¢à¥¬¥¨
|
||||
; 1 - § ¯à¥é¥®, 0 - à §à¥è¥®
|
||||
RAMPAGES
|
||||
.FNPAGESID DB 0 ; ˆ¤¥â¨ä¨ª â®à ¯ ¬ï⨠£¤¥ FN
|
||||
.FNREZ2 DB 0 ; 0 ‘âà ¨æ á äãªæ¨ï¬¨ FN
|
||||
.FNFONT DB 0 ; 1 ‘âà ¨æ èà¨ä⮢
|
||||
.FNREZ3 DB 0 ; 2 ‘âà ¨æ ¥é¥ ¥¬®£® äãªæ¨© FN
|
||||
IFDEF ENABLE.VIEW
|
||||
.FNVIEW DB 0 ; 3 ‘âà ¨æ á FileViewer
|
||||
ENDIF
|
||||
IFDEF ENABLE.EDIT
|
||||
.FNEDIT DB 0 ; 4 ‘âà ¨æ á FileEditor
|
||||
ENDIF
|
||||
; <20>ãä¥àë¥ áâà ¨æë ¯®¤ ¨â¥à䥩á
|
||||
.BufferID DB 0 ; ˆ¤¥â¨ä¨ª â®à ¯ ¬ï⨠¯®¤ ¡ãä¥à
|
||||
.FLX DB 0 ; 0 ‘âà ¨æ ¤«ï § £à㧪¨ FLX ¯« £¨®¢
|
||||
@ -182,6 +177,8 @@ RightPanel: DB 0x01 ;
|
||||
DB 0x0A DUP 0
|
||||
DB PANEL.CURR_PATH_Size DUP 0 ; <20>ãâì ª ⥪ã饩 ¤¨à¥ªâ®à¨¨
|
||||
|
||||
thanks DZ "\r\nThank you for using Flex Navigator.\r\n"
|
||||
|
||||
DOSError EX AF,AF'
|
||||
GETPORT WINSP.CPU1
|
||||
PUSH AF
|
||||
@ -223,6 +220,28 @@ BCDEHLP: LD A,(HL)
|
||||
LD B,A
|
||||
RET
|
||||
|
||||
; (ADR) + BCDE = (ADR)
|
||||
HLPBCDE: LD A,(HL)
|
||||
ADD A,E
|
||||
LD (HL),A
|
||||
INC HL
|
||||
LD A,(HL)
|
||||
ADC A,D
|
||||
LD (HL),A
|
||||
INC HL
|
||||
LD A,(HL)
|
||||
ADC A,C
|
||||
LD (HL),A
|
||||
INC HL
|
||||
LD A,(HL)
|
||||
ADC A,B
|
||||
LD (HL),A
|
||||
INC HL
|
||||
LD A,(HL)
|
||||
ADC A,0
|
||||
LD (HL),A
|
||||
RET
|
||||
|
||||
GET_DWORD: LD E,(HL)
|
||||
INC HL
|
||||
LD D,(HL)
|
||||
@ -241,7 +260,134 @@ SET_DWORD: LD (HL),E
|
||||
LD (HL),B
|
||||
RET
|
||||
|
||||
thanks DZ "\r\nThank you for using Flex Navigator.\r\n"
|
||||
; ¢ë§®¢ äãªæ¨¨ ¢ áâà ¨æ å
|
||||
RESIDENT
|
||||
; ==============resident 2==============
|
||||
.CopyFiles: LD DE,CopyFilesR
|
||||
.FunctResident: LD A,(RAMPAGES.FNREZ2)
|
||||
LD C,WINSP.CPU1
|
||||
JP Resident
|
||||
|
||||
.ReName: LD DE,ReNameR
|
||||
jr .FunctResident
|
||||
|
||||
.MakeDIR: LD DE,MakeDIRR
|
||||
jr .FunctResident
|
||||
|
||||
.DeleteFiles: LD DE,DeleteFilesR
|
||||
jr .FunctResident
|
||||
|
||||
.Quit: CALL ResInvert
|
||||
.QuitL1 LD DE,QuitConfirmWin
|
||||
CALL .FunctResident
|
||||
JP C,SetInvert
|
||||
LD HL,ComExit
|
||||
EX (SP),HL
|
||||
RET
|
||||
|
||||
.Setup: LD DE,SetupR
|
||||
jr .FunctResident
|
||||
|
||||
.QSearch: LD DE,QSearchR
|
||||
jr .FunctResident
|
||||
|
||||
IF TREE_REZID
|
||||
.TestTree LD DE,TestTreeR
|
||||
jr .FunctResident
|
||||
|
||||
.TestTreeBeg LD DE,TestTreeR.TestTreeBeg
|
||||
jr .FunctResident
|
||||
|
||||
.ReadTree LD DE,ReadTreeR
|
||||
jr .FunctResident
|
||||
|
||||
.MakeTreePath LD DE,MakeTreePathR
|
||||
jr .FunctResident
|
||||
|
||||
.FindTreeDIR LD DE,FindTreeDIRR
|
||||
jr .FunctResident
|
||||
ENDIF
|
||||
; ==============resident 2==============
|
||||
|
||||
; ==============resident 3==============
|
||||
.MarkFile: LD DE,MarkFileR
|
||||
.HelpResident: LD A,(RAMPAGES.FNREZ3)
|
||||
LD C,WINSP.CPU1
|
||||
JP Resident
|
||||
|
||||
IF MARK_DIR
|
||||
; áç¨â «ª ᮤ¥à¦¨¬®£® ¤¨à¥ªâ®à¨¨ ¢ ¡ ©â å
|
||||
.CountingDir LD DE,CountingDirR
|
||||
JR .HelpResident
|
||||
|
||||
; ¨¨æ¨ «¨§ æ¨ï ¯¥à¥¬¥ëå ¤«ï ª®¯¨à®¢ ¨ï ¤¨à¥ªâ®à¨¨
|
||||
.InitCopyDirs LD DE,InitCopyDirsR
|
||||
JR .HelpResident
|
||||
|
||||
; ª®¯¨à®¢ ¨¥ ¤¨à¥ªâ®à¨¨
|
||||
.CopyDir LD DE,CopyDirR
|
||||
JR .HelpResident
|
||||
|
||||
; ¤®¡ ¢«¥¨¥ ¨¬¥¨ ¤¨à¥ªâ®à¨¨ ¢ ᯨ᮪ ¨/¨«¨ ¢å®¤/¢ë室
|
||||
.Add2ListDir LD DE,Add2ListDirR
|
||||
JR .HelpResident
|
||||
ENDIF
|
||||
|
||||
.UnMarkGroup: LD DE,UnMarkGroupR
|
||||
jr .HelpResident
|
||||
|
||||
.UnMarkGroupN: LD DE,UnMarkGroupRN
|
||||
jr .HelpResident
|
||||
|
||||
.MarkGroup: LD DE,MarkGroupR
|
||||
jr .HelpResident
|
||||
|
||||
.MarkGroupN: LD DE,MarkGroupRN
|
||||
jr .HelpResident
|
||||
|
||||
.SelectAll: LD DE,SelectAllR
|
||||
jr .HelpResident
|
||||
|
||||
.SelectAllN: LD DE,SelectAllRN
|
||||
jr .HelpResident
|
||||
|
||||
.UnSelectAll: LD DE,UnSelectAllR
|
||||
jr .HelpResident
|
||||
|
||||
.UnSelectAllN: LD DE,UnSelectAllRN
|
||||
jr .HelpResident
|
||||
|
||||
.InvertSelect: LD DE,InvertSelectR
|
||||
jr .HelpResident
|
||||
|
||||
.InvertSelectN: LD DE,InvertSelectRN
|
||||
jr .HelpResident
|
||||
|
||||
.PrintFile: CALL ResInvert
|
||||
.PrintFileL3
|
||||
LD HL,SetInvert
|
||||
PUSH HL
|
||||
LD DE,PrintFileR
|
||||
jr .HelpResident
|
||||
|
||||
.FileInfo: CALL ResInvert
|
||||
.FileInfoL2
|
||||
LD HL,SetInvert
|
||||
PUSH HL
|
||||
LD DE,FileInfoR
|
||||
jr .HelpResident
|
||||
|
||||
.Version: LD DE,VersionR
|
||||
jr .HelpResident
|
||||
|
||||
.DiskInfo: CALL ResInvert
|
||||
.DiskInfoL4:
|
||||
LD DE,DiskInfoR
|
||||
jr .HelpResident
|
||||
|
||||
.SystemInfo: LD DE,SystemInfoR
|
||||
jr .HelpResident
|
||||
; ==============resident 3==============
|
||||
|
||||
; ‚ë室
|
||||
ComExit CALL ResDrivers
|
||||
@ -260,9 +406,9 @@ ComExit CALL ResDrivers
|
||||
include fnsys.a80
|
||||
|
||||
; ‘â àâ
|
||||
StartPoint: DI
|
||||
MainStartFN: DI
|
||||
LD SP,STACK
|
||||
ReStartPoint:
|
||||
ReStartFN:
|
||||
SETPORT BORDER,0
|
||||
SETPORT WINSP.Y_PORT,0xC0
|
||||
CALL InitVideoMode
|
||||
@ -272,10 +418,10 @@ ReStartPoint:
|
||||
SUB A
|
||||
CALL InitPanels
|
||||
CALL WaitUnpressMouse
|
||||
MainLoop: LD IX,FilePanelLeft
|
||||
MainLoop: LD IX,MAINTAB.FilePanelLeft
|
||||
BIT PANELFLAG.B_SIDE,(IY+PANEL.PANELFLAG)
|
||||
JR Z,.L1
|
||||
LD IX,FilePanelRight
|
||||
LD IX,MAINTAB.FilePanelRight
|
||||
.L1 CALL CheckCoordsMouse
|
||||
CALL TestKeys
|
||||
CALL C,DOSline
|
||||
@ -349,122 +495,8 @@ END_TREE
|
||||
ENDIF
|
||||
include fnpanel.a80
|
||||
include fndos.a80
|
||||
|
||||
include fnwork.a80
|
||||
|
||||
; ¢ë§®¢ äãªæ¨¨ ¢ áâà ¨æ å
|
||||
RESIDENT
|
||||
.CopyFiles: LD DE,CopyFilesR
|
||||
; resident 2
|
||||
.FunctResident: LD A,(RAMPAGES.FNREZ2)
|
||||
LD C,WINSP.CPU1
|
||||
JP Resident
|
||||
|
||||
.ReName: LD DE,ReNameR
|
||||
jr .FunctResident
|
||||
|
||||
.MakeDIR: LD DE,MakeDIRR
|
||||
jr .FunctResident
|
||||
|
||||
.DeleteFiles: LD DE,DeleteFilesR
|
||||
jr .FunctResident
|
||||
|
||||
.Quit: CALL ResInvert
|
||||
.QuitL1 LD DE,QuitConfirmWin
|
||||
CALL .FunctResident
|
||||
JP C,SetInvert
|
||||
LD HL,ComExit
|
||||
EX (SP),HL
|
||||
RET
|
||||
|
||||
.Setup: LD DE,SetupR
|
||||
jr .FunctResident
|
||||
|
||||
.FileInfo: CALL ResInvert
|
||||
.FileInfoL2 LD HL,SetInvert
|
||||
PUSH HL
|
||||
LD DE,FileInfoR
|
||||
jr .FunctResident
|
||||
|
||||
.PrintFile: CALL ResInvert
|
||||
.PrintFileL3 LD HL,SetInvert
|
||||
PUSH HL
|
||||
LD DE,PrintFileR
|
||||
jr .FunctResident
|
||||
|
||||
.DiskInfo: CALL ResInvert
|
||||
.DiskInfoL4: LD DE,DiskInfoR
|
||||
jr .FunctResident
|
||||
|
||||
.SystemInfo: LD DE,SystemInfoR
|
||||
jr .FunctResident
|
||||
|
||||
.Version: LD DE,VersionR
|
||||
jr .FunctResident
|
||||
|
||||
.QSearch: LD DE,QSearchR
|
||||
jr .FunctResident
|
||||
|
||||
IF TREE_REZID
|
||||
.TestTree LD DE,TestTreeR
|
||||
jr .FunctResident
|
||||
|
||||
.TestTreeBeg LD DE,TestTreeR.TestTreeBeg
|
||||
jr .FunctResident
|
||||
|
||||
.ReadTree LD DE,ReadTreeR
|
||||
jr .FunctResident
|
||||
|
||||
.MakeTreePath LD DE,MakeTreePathR
|
||||
jr .FunctResident
|
||||
|
||||
.FindTreeDIR LD DE,FindTreeDIRR
|
||||
jr .FunctResident
|
||||
ENDIF
|
||||
|
||||
.MarkFile: LD DE,MarkFileR
|
||||
; resident 3
|
||||
.HelpResident: LD A,(RAMPAGES.FNREZ3)
|
||||
LD C,WINSP.CPU1
|
||||
JP Resident
|
||||
|
||||
IF MARK_DIR
|
||||
.CountingDir LD DE,CountingDirR
|
||||
JR .HelpResident
|
||||
|
||||
.MkdirsDst LD DE,MkdirsDstR
|
||||
JR .HelpResident
|
||||
ENDIF
|
||||
|
||||
.UnMarkGroup: LD DE,UnMarkGroupR
|
||||
jr .HelpResident
|
||||
|
||||
.UnMarkGroupN: LD DE,UnMarkGroupRN
|
||||
jr .HelpResident
|
||||
|
||||
.MarkGroup: LD DE,MarkGroupR
|
||||
jr .HelpResident
|
||||
|
||||
.MarkGroupN: LD DE,MarkGroupRN
|
||||
jr .HelpResident
|
||||
|
||||
.SelectAll: LD DE,SelectAllR
|
||||
jr .HelpResident
|
||||
|
||||
.SelectAllN: LD DE,SelectAllRN
|
||||
jr .HelpResident
|
||||
|
||||
.UnSelectAll: LD DE,UnSelectAllR
|
||||
jr .HelpResident
|
||||
|
||||
.UnSelectAllN: LD DE,UnSelectAllRN
|
||||
jr .HelpResident
|
||||
|
||||
.InvertSelect: LD DE,InvertSelectR
|
||||
jr .HelpResident
|
||||
|
||||
.InvertSelectN: LD DE,InvertSelectRN
|
||||
jr .HelpResident
|
||||
|
||||
include fnmenu.a80
|
||||
include fninit.a80
|
||||
include fndosline.a80
|
||||
@ -472,20 +504,22 @@ RESIDENT
|
||||
END_BLOCK_1:
|
||||
DEPHASE ; BASE_ADDR
|
||||
|
||||
; ==============resident 2==============
|
||||
PHASE 0x4000
|
||||
START_BLOCK_2
|
||||
include rez2_fnfunct.a80
|
||||
include rez2_fnmisc.a80
|
||||
include rez2_fnsearch.a80
|
||||
include rez2_fnconfig.a80
|
||||
include rez2_fnerror.a80
|
||||
include rez2_fntab1.a80
|
||||
include rez2_fntab.a80
|
||||
IF TREE_REZID
|
||||
include fntree.a80
|
||||
ENDIF
|
||||
END_BLOCK_2:
|
||||
DEPHASE ; 0x4000
|
||||
; ==============resident 2==============
|
||||
|
||||
; ==============fonts==============
|
||||
PHASE 0xC000
|
||||
; MAIN.FNFONT
|
||||
START_BLOCK_4
|
||||
@ -496,57 +530,41 @@ IFFFONT_RAW_END
|
||||
|
||||
END_BLOCK_4:
|
||||
DEPHASE ; 0xC000
|
||||
; ==============fonts==============
|
||||
|
||||
; ==============resident 3==============
|
||||
PHASE 0x4000
|
||||
; MAIN.FNREZ3
|
||||
START_BLOCK_3
|
||||
include rez3_fnnext.a80
|
||||
include rez3_fnmark.a80
|
||||
include rez3_fnmisc.a80
|
||||
include rez3_fntab.a80
|
||||
|
||||
; ¡ãä¥à çâ®¡ë ¯ ¬ïâì ¥ § ¨¬ «¨ ¢ EXE ä ©«¥
|
||||
INIT_VAR 0x8000 ; á ª®æ áâà ¨æë
|
||||
MINUSVAR fnedit_ext, WorkBuffer_Size ;times 0x400 db 0
|
||||
MINUSVAR fnview_ext, WorkBuffer_Size ;times 0x400 db 0
|
||||
MINUSVAR fn_ext, WorkBuffer_Size ;times 0x400 db 0
|
||||
MINUSVAR DOShistory, 0x200 ;times 0x200 db 0
|
||||
BUFFERS
|
||||
_INIT_VAR 0x8000 ; á ª®æ áâà ¨æë
|
||||
_MINUSVAR .DOShistory, 0x200 ;times 0x200 db 0
|
||||
|
||||
IFDEF ENABLE.HELP
|
||||
WINSP_CPU EQU WINSP.CPU3 ; ®ª® ¯à®¥æ¨à®¢ ¨ï
|
||||
WINSP_ADR EQU 0xC000 ; ¤à¥á ®ª
|
||||
_MINUSVAR .fnedit_ext, WorkBuffer_Size ;times 0x400 db 0
|
||||
_MINUSVAR .fnview_ext, WorkBuffer_Size ;times 0x400 db 0
|
||||
_MINUSVAR .fn_ext, WorkBuffer_Size ;times 0x400 db 0
|
||||
|
||||
include plugins/help/help.a80
|
||||
HelpText: include plugins/help/help_t.a80
|
||||
HelpTextEnd:
|
||||
ENDIF
|
||||
_MINUSVAR .OLDPATH, 0x100 ; á®åà ¥ë© â¥ªã騩 ¯ãâì
|
||||
_MINUSVAR .CURRPATHSRC, 0x100 ; ¢à¥¬¥®© ⥪ã騩 ¯ãâì ¨áâ®ç¨ª
|
||||
_MINUSVAR .CURRPATHDST, 0x100 ; ¢à¥¬¥®© ⥪ã騩 ¯ãâì ¯à¨¥¬¨ª
|
||||
_MINUSVAR .FINDBUF, 0x100 ; ¢à¥¬¥ë© ¡ãä¥à ¯®¨áª
|
||||
_MINUSVAR .LEVEL_DIR, BYTE ; ⥪ã騩 ã஢¥ì ¤¨à¥ªâ®à¨¨
|
||||
_MINUSVAR .ENDPATHSRC, WORD ; ¤à¥á 墮áâ ¯ã⨠¨áâ®ç¨ª
|
||||
_MINUSVAR .ENDPATHDST, WORD ; ¤à¥á 墮áâ ¯ã⨠¯à¨¥¬¨ª
|
||||
_MINUSVAR .CURR_DIRNAME, WORD ; ⥪ã騩 ¤à¥á ¢ ¯ãâ¨
|
||||
END_BLOCK_3:
|
||||
DEPHASE ; 0x4000
|
||||
|
||||
IFDEF ENABLE.VIEW
|
||||
; MAIN.FNVIEW
|
||||
START_BLOCK_VIEWER
|
||||
PHASE 0xC000
|
||||
include plugins/fnviewer/fviewer.a80
|
||||
DEPHASE ; 0xC000
|
||||
END_BLOCK_VIEWER
|
||||
ENDIF
|
||||
|
||||
IFDEF ENABLE.EDIT
|
||||
; MAIN.FNEDIT
|
||||
START_BLOCK_EDITOR
|
||||
PHASE 0xC000
|
||||
include plugins/fneditor/feditor.a80
|
||||
DEPHASE ; 0xC000
|
||||
END_BLOCK_EDITOR
|
||||
ENDIF
|
||||
; ==============resident 3==============
|
||||
|
||||
; ç¨áâ® ¤«ï ®â« ¤ª¨
|
||||
BLOCK1_SIZE EQU END_BLOCK_1 - START_BLOCK_1 ; ®á®¢®© ª®¤
|
||||
BLOCK2_SIZE EQU END_BLOCK_2 - START_BLOCK_2 ; १¨¤¥â 2
|
||||
BLOCK3_SIZE EQU END_BLOCK_3 - START_BLOCK_3 ; १¨¤¥â 3
|
||||
IFDEF ENABLE.EDIT
|
||||
EDITOR_SIZE EQU END_BLOCK_EDITOR - START_BLOCK_EDITOR ; । ªâ®à
|
||||
ENDIF
|
||||
IFDEF ENABLE.VIEW
|
||||
VIEWER_SIZE EQU END_BLOCK_VIEWER - START_BLOCK_VIEWER ; ¢ìà
|
||||
ENDIF
|
||||
SORT_SIZE EQU END_SORT - START_SORT ; á®àâ¨à®¢é¨ª
|
||||
TREE_SIZE EQU END_TREE - START_TREE ; à ¡®â á ¤¥à¥¢®¬
|
||||
|
||||
32
fnmenu.a80
32
fnmenu.a80
@ -1,10 +1,10 @@
|
||||
|
||||
; LAST UPDATE: 31.07.2025 savelij
|
||||
; LAST UPDATE: 14.08.2025 savelij
|
||||
|
||||
;[]==========================================================[]
|
||||
PullDown: CALL ResInvert
|
||||
CALL SetPullInvert
|
||||
PullLoop: LD IX,PullTab
|
||||
PullLoop: LD IX,MAINTAB.PullTab
|
||||
CALL CheckCoordsMouse
|
||||
SPDSS DSSF.SCANKEY
|
||||
JR Z,PullLoop
|
||||
@ -89,7 +89,7 @@ PullInvert: LD L,A
|
||||
ADD HL,HL ; *4
|
||||
ADD HL,HL ; *8
|
||||
ADD HL,HL ; *16
|
||||
LD BC,PullTab
|
||||
LD BC,MAINTAB.PullTab
|
||||
ADD HL,BC
|
||||
PUSH HL
|
||||
POP IX
|
||||
@ -141,7 +141,7 @@ MenuFile: CALL ResInvert
|
||||
W_TEXT 16,40,COLORP.HIGHGRAY,"Exit"
|
||||
W_TEXT 100,40,COLORP.HIGHGRAY,"F10"
|
||||
W_END
|
||||
LD HL,FileTab
|
||||
LD HL,MAINTAB.FileTab
|
||||
LD BC,3
|
||||
JP MenuWork
|
||||
|
||||
@ -162,7 +162,7 @@ MenuSelect: CALL ResInvert
|
||||
W_TEXT 16,62,COLORP.HIGHGRAY,"Invert selection"
|
||||
W_TEXT 112,62,COLORP.HIGHGRAY,"*"
|
||||
W_END
|
||||
LD HL,SelectTab
|
||||
LD HL,MAINTAB.SelectTab
|
||||
LD BC,1 << 8 | 5
|
||||
JP MenuWork
|
||||
|
||||
@ -186,7 +186,7 @@ MenuOption: CALL ResInvert
|
||||
W_TEXT 16,54,COLORP.HIGHGRAY,"Plugins..." ; 03
|
||||
ENDIF
|
||||
W_END
|
||||
LD HL,OptionTab
|
||||
LD HL,MAINTAB.OptionTab
|
||||
IF PLUGS_ENABLE
|
||||
LD BC,2 << 8 | 4
|
||||
ELSE
|
||||
@ -326,7 +326,7 @@ MenuView: CALL ResInvert
|
||||
W_TEXT 110,172,COLORP.HIGHGRAY,"\xFE CTRL+F7"
|
||||
.sort5 EQU $ - STRLEN("v CTRL+F7v")
|
||||
W_END
|
||||
LD HL,ViewTab
|
||||
LD HL,MAINTAB.ViewTab
|
||||
LD BC,3 << 8 | 12
|
||||
JP MenuWork
|
||||
|
||||
@ -338,7 +338,7 @@ MenuConfig: CALL ResInvert
|
||||
W_MAIN 174,26,96,20
|
||||
W_TEXT 16,6,COLORP.HIGHGRAY,"Setup..."
|
||||
W_END
|
||||
LD HL,ConfigTab
|
||||
LD HL,MAINTAB.ConfigTab
|
||||
LD BC,4 << 8 | 1
|
||||
JP MenuWork
|
||||
|
||||
@ -350,7 +350,7 @@ MenuAbout: CALL ResInvert
|
||||
W_MAIN 222,26,112,20
|
||||
W_TEXT 16,6,COLORP.HIGHGRAY,"Version..."
|
||||
W_END
|
||||
LD HL,AboutTab
|
||||
LD HL,MAINTAB.AboutTab
|
||||
LD BC,5 << 8 | 1
|
||||
; HL - ¤à¥á â ¡«¨æë ªâ¨¢ëå §®
|
||||
; B - ⥪ã騩 ¯ãªâ ¬¥î
|
||||
@ -804,7 +804,7 @@ NewFilter: CALL ResInvert
|
||||
NEG
|
||||
LD (FiltLen),A
|
||||
LD IX,FilterStr
|
||||
LD HL,FilterTab
|
||||
LD HL,MAINTAB.FilterTab
|
||||
CALL InputLine
|
||||
WINDOWCLOSE
|
||||
RET C
|
||||
@ -855,7 +855,7 @@ LeftDrive: CALL ResInvert
|
||||
W_TEXT 86,3,COLORI.WHITE,"Left drive"
|
||||
W_END
|
||||
LD HL,LeftTab
|
||||
LD DE,DriveTab
|
||||
LD DE,MAINTAB.DriveTab
|
||||
LD BC,0x0020
|
||||
LDIR
|
||||
LD IX,LeftPanel
|
||||
@ -872,7 +872,7 @@ RightDrive: CALL ResInvert
|
||||
W_TEXT 86,3,COLORI.WHITE,"Right drive"
|
||||
W_END
|
||||
LD HL,RightTab
|
||||
LD DE,DriveTab
|
||||
LD DE,MAINTAB.DriveTab
|
||||
LD BC,0x0020
|
||||
LDIR
|
||||
LD IX,RightPanel
|
||||
@ -885,7 +885,7 @@ RightTab: DEFW 0x0000,0x0160,0x0000,0x0100,0x20,0x0000,DriveExit,0x0000
|
||||
ChangeDrv: PUSH IY
|
||||
PUSH IX
|
||||
POP IY
|
||||
LD IX,BegDrive
|
||||
LD IX,MAINTAB.BegDrive
|
||||
LD A,(NUM_DEVICES)
|
||||
ADD A,A
|
||||
LD C,A
|
||||
@ -948,7 +948,7 @@ ChangeDrv: PUSH IY
|
||||
SUB 'A'
|
||||
LD (CurDrive),A
|
||||
CALL SetDriveInv
|
||||
DriveLoop: LD IX,DriveTab
|
||||
DriveLoop: LD IX,MAINTAB.DriveTab
|
||||
CALL CheckCoordsMouse
|
||||
SPDSS DSSF.SCANKEY
|
||||
JR Z,DriveLoop
|
||||
@ -1016,7 +1016,7 @@ DriveRight: LD A,(NUM_DEVICES)
|
||||
LD (CurDrive),A
|
||||
JP SetDriveInv
|
||||
|
||||
DriveMouse: LD IX,BegDrive
|
||||
DriveMouse: LD IX,MAINTAB.BegDrive
|
||||
LD C,(IX+0x00)
|
||||
LD B,(IX+0x01)
|
||||
OR A
|
||||
@ -1074,7 +1074,7 @@ DriveInvert: LD L,A
|
||||
ADD HL,HL
|
||||
ADD HL,HL
|
||||
ADD HL,HL
|
||||
LD BC,BegDrive
|
||||
LD BC,MAINTAB.BegDrive
|
||||
ADD HL,BC
|
||||
PUSH HL
|
||||
POP IX
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
|
||||
; LAST UPDATE: 31.07.2025 savelij
|
||||
; LAST UPDATE: 03.08.2025 savelij
|
||||
|
||||
;[]----------------------------------------------------------[]
|
||||
ReadDIR BIT VIEWFLAG.B_TREE,(IY+PANEL.VIEWFLAG)
|
||||
@ -390,7 +390,7 @@ SortDIR
|
||||
LD A,(RAMPAGES.RIGHTPANEL)
|
||||
.L1
|
||||
SETPORT WINSP.CPU1,,0
|
||||
LD A,(RAMPAGES.BuffPg3)
|
||||
LD A,(RAMPAGES.BuffPg4)
|
||||
SETPORT WINSP.CPU3,,0
|
||||
LD HL,CPU3
|
||||
LD (EndSort),HL
|
||||
@ -486,7 +486,7 @@ SortDIR
|
||||
INC HL
|
||||
DJNZ .L3
|
||||
GETPORT WINSP.CPU1
|
||||
LD (RAMPAGES.BuffPg3),A
|
||||
LD (RAMPAGES.BuffPg4),A
|
||||
GETPORT WINSP.CPU3
|
||||
BIT PANELFLAG.B_SIDE,(IY + PANEL.PANELFLAG)
|
||||
LD HL,RAMPAGES.LEFTPANEL
|
||||
|
||||
95
fnsys.a80
95
fnsys.a80
@ -1,5 +1,5 @@
|
||||
|
||||
; LAST UPDATE: 02.08.2025 savelij
|
||||
; LAST UPDATE: 03.08.2025 savelij
|
||||
|
||||
;[]-----------------------------------------------------------[]
|
||||
; <20>à®æ¥¤ãà 㬮¦¥¨ï (8*8bit)
|
||||
@ -252,23 +252,23 @@ ConvertNumbers_40b:
|
||||
LD BC,0x4876
|
||||
EXX
|
||||
ld bc,0xE800
|
||||
; E':BC':BC = 100,000,000,000
|
||||
; E':BC':BC = 100,000,000,000
|
||||
call ConNumb40
|
||||
exx
|
||||
ld e,0x02
|
||||
ld bc,0x540B
|
||||
exx
|
||||
ld bc,0xE400
|
||||
; E':BC':BC = 10,000,000,000
|
||||
; E':BC':BC = 10,000,000,000
|
||||
CALL ConNumb40
|
||||
exx
|
||||
ld e,0x00
|
||||
ld bc,0x3B9A
|
||||
exx
|
||||
ld bc,0xCA00
|
||||
; E':BC':BC = 1,000,000,000
|
||||
; E':BC':BC = 1,000,000,000
|
||||
CALL ConNumb40
|
||||
; E':BC':BC = 100,000,000
|
||||
; E':BC':BC = 100,000,000
|
||||
CALL ConvNumTxt32_Shared.skip_1
|
||||
POP IX
|
||||
RET
|
||||
@ -689,8 +689,12 @@ SkipWord: ld b,0x20
|
||||
; HL' - X ¯®§¨æ¨ï ¢ë¢®¤ ¤ âë
|
||||
; DE' - Y ¯®§¨æ¨ï ¢ë¢®¤ ¤ âë
|
||||
; B' - 梥⠢뢮¤ ¤ âë
|
||||
; A - ä®à¬ ⠢뢮¤ ¬¥áïæ ¢ ¤ â¥
|
||||
; 1 - ¬¥áïæ ¢ë¢®¤¨âáï ç¨á«®¬
|
||||
; 2 - ¬¥áïæ ¢ë¢®¤¨âáï ⥪á⮬,
|
||||
; ç¨á«® ¢ë¢®¤¨âáï ¡¥§ ¢¥¤ã饣® ã«ï
|
||||
CMOSPrintDateTime:
|
||||
EX AF,AF'
|
||||
LD (CMOSpos.CMOSOut),A
|
||||
LD (CMOSpos.posXtime),HL
|
||||
LD (CMOSpos.posYtime),DE
|
||||
LD A,B
|
||||
@ -701,35 +705,12 @@ CMOSPrintDateTime:
|
||||
LD (CMOSPrint),A
|
||||
LD (CMOSpos.Time),HL
|
||||
LD (CMOSpos.Time + 2),A
|
||||
; LD (CMOSpos.Date),HL
|
||||
; LD (CMOSpos.Date + 2),A
|
||||
; LD HL,CMOSpos.TimeTXT
|
||||
; LD DE,CMOSpos.DateTXT
|
||||
; LD A,'0'
|
||||
; LD B,0x03
|
||||
;.L1 LD (HL),A
|
||||
; INC HL
|
||||
; LD (HL),A
|
||||
; INC HL
|
||||
; INC HL
|
||||
; LD (DE),A
|
||||
; INC DE
|
||||
; LD (DE),A
|
||||
; INC DE
|
||||
; INC DE
|
||||
; DJNZ .L1
|
||||
EX AF,AF'
|
||||
LD (CMOSpos.CMOSOut),A
|
||||
OR A
|
||||
JR Z,TestCMOS
|
||||
EXX
|
||||
LD (CMOSpos.posXDate),HL
|
||||
LD (CMOSpos.posYDate),DE
|
||||
LD A,B
|
||||
LD (CMOSpos.colorDate),A
|
||||
EXX
|
||||
; JR TestCMOS
|
||||
|
||||
TestCMOS: LD A,(CMOSFlag)
|
||||
OR A
|
||||
RET Z
|
||||
@ -752,7 +733,7 @@ TestCMOS: LD A,(CMOSFlag)
|
||||
JR NZ,.PrnCMOSTime
|
||||
LD A,(CMOSpos.Time + 2)
|
||||
CP B
|
||||
JR Z,TCMOS1
|
||||
JR Z,.TCMOS1
|
||||
.PrnCMOSTime: EX DE,HL
|
||||
LD (CMOSpos.Time),HL
|
||||
LD A,B
|
||||
@ -771,28 +752,13 @@ TestCMOS: LD A,(CMOSFlag)
|
||||
LD BC,(CMOSpos.posYtime)
|
||||
LD A,(CMOSpos.colorTime)
|
||||
CALL PrintTxtLine_IFF
|
||||
TCMOS1 POP IX
|
||||
.TCMOS1 POP IX
|
||||
POP DE ; DE,IX ¢®ááâ ®¢¨«¨ ¤¥ì,¬¥áïæ,£®¤
|
||||
LD A,(CMOSpos.CMOSOut)
|
||||
OR A
|
||||
JP Z,TCMOSexit
|
||||
; PUSH IX
|
||||
; POP HL
|
||||
; LD BC,1900
|
||||
; OR A
|
||||
; SBC HL,BC
|
||||
; LD B,L
|
||||
; LD HL,(CMOSpos.Date)
|
||||
; OR A
|
||||
; SBC HL,DE
|
||||
; JR NZ,.PrnCMOSData
|
||||
; LD A,(CMOSpos.Date + 2)
|
||||
; CP B
|
||||
; JP Z,TCMOSexit
|
||||
;.PrnCMOSData
|
||||
EX DE,HL
|
||||
LD (CMOSpos.Date),HL ; ¤¥ì,¬¥áïæ
|
||||
; LD A,B
|
||||
LD (CMOSpos.Date + 2),IX ; £®¤
|
||||
LD A,(CMOSpos.CMOSOut)
|
||||
DEC A
|
||||
@ -805,12 +771,8 @@ TCMOS1 POP IX
|
||||
LD A,L
|
||||
CALL Conv4CMOS
|
||||
INC DE
|
||||
; LD A,(CMOSpos.Date + 2)
|
||||
LD HL,(CMOSpos.Date + 2)
|
||||
CALL ConvertNumbers_16b;Conv4CMOS
|
||||
; LD A,(CMOSpos.CMOSOut)
|
||||
; DEC A
|
||||
; JR NZ,.TCMOS2
|
||||
CALL ConvertNumbers_16b
|
||||
LD HL,CMOSpos.DateTXT
|
||||
LD DE,(CMOSpos.posXDate)
|
||||
LD BC,(CMOSpos.posYDate)
|
||||
@ -828,9 +790,7 @@ TCMOS1 POP IX
|
||||
LD A,L
|
||||
DEC A
|
||||
ADD A,A
|
||||
; LD L,A
|
||||
ADD A,A
|
||||
; ADD A,L
|
||||
LD HL,Month
|
||||
ADD A,L
|
||||
LD L,A
|
||||
@ -841,32 +801,11 @@ TCMOS1 POP IX
|
||||
.L2 LDI
|
||||
CP (HL)
|
||||
JR NZ,.L2
|
||||
; LD (DE),A
|
||||
; INC DE
|
||||
LDI
|
||||
; PUSH IX
|
||||
; POP HL
|
||||
LD HL,(CMOSpos.Date + 2)
|
||||
CALL ConvertNumbers_16b
|
||||
SUB A
|
||||
LD (DE),A
|
||||
; LD HL,(CMOSpos.posXDate)
|
||||
; LD (CMOSclX),HL
|
||||
; LD HL,(CMOSpos.posYDate)
|
||||
; LD (CMOSclY),HL
|
||||
; LD A,(CMOSpos.colorDate)
|
||||
; AND 0xF0
|
||||
; RRCA
|
||||
; RRCA
|
||||
; RRCA
|
||||
; RRCA
|
||||
; LD (CMOScol),A
|
||||
; MAKEWINDOW WINSUBOBJ.WOBIND
|
||||
; W_FILL 0,0,76,8,COLORI.BLACK
|
||||
; W_END
|
||||
;CMOSclX EQU $ - 10
|
||||
;CMOSclY EQU $ - 8
|
||||
;CMOScol EQU $ - 2
|
||||
LD HL,CMOSpos.DateT1
|
||||
LD DE,(CMOSpos.posXDate)
|
||||
LD BC,(CMOSpos.posYDate)
|
||||
@ -875,10 +814,6 @@ TCMOS1 POP IX
|
||||
TCMOSexit POP IX
|
||||
RET
|
||||
|
||||
;CMOSPrintOff: LD A,DateMonthFormat.Digit
|
||||
; LD (CMOSPrint),A
|
||||
; RET
|
||||
|
||||
Conv4CMOS: EX DE,HL
|
||||
LD BC,(('0' - 1) << 8) + 10
|
||||
.L1 INC B
|
||||
@ -937,7 +872,7 @@ PointerMouseClock:
|
||||
PUSH AF
|
||||
LD A,(RAMPAGES.FNFONT)
|
||||
SETPORT WINSP.CPU3,,0
|
||||
LD IX,CLOCK_BMP;ClockBMP
|
||||
LD IX,CLOCK_BMP
|
||||
LD HL,14 << 8 + 9
|
||||
LD DE,7 << 8 | 4
|
||||
SPMOUSE MOUSEF.LOAD_IMAGE
|
||||
@ -964,7 +899,7 @@ PointerMousePointer:
|
||||
PUSH AF
|
||||
LD A,(RAMPAGES.FNFONT)
|
||||
SETPORT WINSP.CPU3,,0
|
||||
LD IX,MOUSE_BMP;MouseBMP
|
||||
LD IX,MOUSE_BMP
|
||||
LD HL,13 << 8 + 9
|
||||
LD DE,0
|
||||
SPMOUSE MOUSEF.LOAD_IMAGE
|
||||
|
||||
53
fntab.a80
53
fntab.a80
@ -1,5 +1,5 @@
|
||||
|
||||
; LAST UPDATE: 01.08.2025 savelij
|
||||
; LAST UPDATE: 14.08.2025 savelij
|
||||
|
||||
;[]==========================================================[]
|
||||
; ”®à¬ â â ¡«¨æë
|
||||
@ -29,7 +29,10 @@
|
||||
; +0A 2 €¤à¥á ®¡à ¡®â稪 ¯à¨ ¥ ¦ ⮬ ®£¥
|
||||
; +0C 2 €¤à¥á ®¡à ¡®â稪 ¯à¨ ¦ ⮬ ®£¥ («¥¢)
|
||||
; +0E 2 €¤à¥á ®¡à ¡®â稪 ¯à¨ ¦ ⮬ ®£¥ (¯à ¢)
|
||||
FilePanelLeft DW 6, 40, 15, 26,%0000000000000000,0,MenuFile,0
|
||||
|
||||
MAINTAB
|
||||
;[]==========================================================[]
|
||||
.FilePanelLeft DW 6, 40, 15, 26,%0000000000000000,0,MenuFile,0
|
||||
DW 40, 84, 15, 26,%0000000000000000,0,MenuSelect,0
|
||||
DW 84,138, 15, 26,%0000000000000000,0,MenuOption,0
|
||||
DW 138,174, 15, 26,%0000000000000000,0,MenuView,0
|
||||
@ -37,7 +40,7 @@ FilePanelLeft DW 6, 40, 15, 26,%0000000000000000,0,MenuFile,0
|
||||
DW 222,262, 15, 26,%0000000000000000,0,MenuAbout,0
|
||||
DW 324,636, 44,225,%0000000000000000,0,ChPanel,0
|
||||
|
||||
PanelPlaceL DW 0, 0, 0, 0,%0000000000000000,0,0,0
|
||||
.PanelPlaceL DW 0, 0, 0, 0,%0000000000000000,0,0,0
|
||||
DW 0, 0, 0, 0,%0000000000000000,0,0,0
|
||||
DW 0, 0, 0, 0,%0000000000000000,0,0,0
|
||||
DW 0, 0, 0, 0,%0000000000000000,0,0,0
|
||||
@ -52,7 +55,7 @@ PanelPlaceL DW 0, 0, 0, 0,%0000000000000000,0,0,0
|
||||
DW 480,560,242,256,%0000000000000001,0,RESIDENT.DeleteFiles,0
|
||||
DW 560,640,242,256,%0000000000000001,0,RESIDENT.Quit,0
|
||||
|
||||
BgDISKl DW 6, 34, 30, 42,%0000000000000001,0,ChangeDriveL,0 ; A
|
||||
.BgDISKl DW 6, 34, 30, 42,%0000000000000001,0,ChangeDriveL,0 ; A
|
||||
DW 326,354, 30, 42,%0000000000000001,0,ChangeDriveR,0
|
||||
DW 34, 62, 30, 42,%0000000000000001,0,ChangeDriveL,0 ; B
|
||||
DW 354,382, 30, 42,%0000000000000001,0,ChangeDriveR,0
|
||||
@ -77,7 +80,7 @@ BgDISKl DW 6, 34, 30, 42,%0000000000000001,0,ChangeDriveL,0 ; A
|
||||
DW 0x8000
|
||||
|
||||
;[]==========================================================[]
|
||||
FilePanelRight DW 6, 40, 15, 26,%0000000000000000,0,MenuFile,0
|
||||
.FilePanelRight DW 6, 40, 15, 26,%0000000000000000,0,MenuFile,0
|
||||
DW 40, 84, 15, 26,%0000000000000000,0,MenuSelect,0
|
||||
DW 84,138, 15, 26,%0000000000000000,0,MenuOption,0
|
||||
DW 138,174, 15, 26,%0000000000000000,0,MenuView,0
|
||||
@ -85,7 +88,7 @@ FilePanelRight DW 6, 40, 15, 26,%0000000000000000,0,MenuFile,0
|
||||
DW 222,262, 15, 26,%0000000000000000,0,MenuAbout,0
|
||||
DW 4,316, 44,225,%0000000000000000,0,ChPanel,0
|
||||
|
||||
PanelPlaceR DW 0, 0, 0, 0,%0000000000000000,0,0,0
|
||||
.PanelPlaceR DW 0, 0, 0, 0,%0000000000000000,0,0,0
|
||||
DW 0, 0, 0, 0,%0000000000000000,0,0,0
|
||||
DW 0, 0, 0, 0,%0000000000000000,0,0,0
|
||||
DW 0, 0, 0, 0,%0000000000000000,0,0,0
|
||||
@ -100,7 +103,7 @@ PanelPlaceR DW 0, 0, 0, 0,%0000000000000000,0,0,0
|
||||
DW 480,560,242,256,%0000000000000001,0,RESIDENT.DeleteFiles,0
|
||||
DW 560,640,242,256,%0000000000000001,0,RESIDENT.Quit,0
|
||||
|
||||
BgDISKr DW 6, 34, 30, 42,%0000000000000001,0,ChangeDriveL,0 ; A
|
||||
.BgDISKr DW 6, 34, 30, 42,%0000000000000001,0,ChangeDriveL,0 ; A
|
||||
DW 326,354, 30, 42,%0000000000000001,0,ChangeDriveR,0
|
||||
DW 34, 62, 30, 42,%0000000000000001,0,ChangeDriveL,0 ; B
|
||||
DW 354,382, 30, 42,%0000000000000001,0,ChangeDriveR,0
|
||||
@ -125,7 +128,7 @@ BgDISKr DW 6, 34, 30, 42,%0000000000000001,0,ChangeDriveL,0 ; A
|
||||
DW 0x8000
|
||||
|
||||
;[]==========================================================[]
|
||||
FileTab DW 8,160, 29, 43,%0000000100100100,0,RESIDENT.FileInfoL2,0
|
||||
.FileTab DW 8,160, 29, 43,%0000000100100100,0,RESIDENT.FileInfoL2,0
|
||||
DW 8,160, 43, 57,%0000000100100100,0,RESIDENT.PrintFileL3,0
|
||||
DW 8,160, 63, 77,%0000000100100100,0,RESIDENT.QuitL1,0
|
||||
DW 6, 40, 15, 26,%0000000100101000,0,MenuExit,0
|
||||
@ -140,7 +143,7 @@ FileTab DW 8,160, 29, 43,%0000000100100100,0,RESIDENT.FileInfoL2,0
|
||||
DW 164,640, 0,256,%0000000100100000,0,MenuExit,0
|
||||
DW 0x8000
|
||||
|
||||
SelectTab DW 44,196, 29, 43,%0000000100100100,0,RESIDENT.MarkGroupN,0
|
||||
.SelectTab DW 44,196, 29, 43,%0000000100100100,0,RESIDENT.MarkGroupN,0
|
||||
DW 44,196, 43, 57,%0000000100100100,0,RESIDENT.UnMarkGroupN,0
|
||||
DW 44,196, 57, 71,%0000000100100100,0,RESIDENT.SelectAllN,0
|
||||
DW 44,196, 71, 85,%0000000100100100,0,RESIDENT.UnSelectAllN,0
|
||||
@ -158,7 +161,7 @@ SelectTab DW 44,196, 29, 43,%0000000100100100,0,RESIDENT.MarkGroupN,0
|
||||
DW 0x8000
|
||||
|
||||
; ¯®¤¬¥î "Options"
|
||||
OptionTab DW 88,288, 29, 43,%0000000100100100,0,RefreshTree,0 ; Options->Refresh tree
|
||||
.OptionTab DW 88,288, 29, 43,%0000000100100100,0,RefreshTree,0 ; Options->Refresh tree
|
||||
DW 88,288, 43, 57,%0000000100100100,0,RESIDENT.DiskInfoL4,0 ; Options->Disk info
|
||||
DW 88,288, 63, 77,%0000000100100100,0,RESIDENT.SystemInfo,0 ; Options->System information
|
||||
IF PLUGS_ENABLE
|
||||
@ -177,7 +180,7 @@ OptionTab DW 88,288, 29, 43,%0000000100100100,0,RefreshTree,0 ; Options->Refres
|
||||
DW 0x8000
|
||||
|
||||
; ¯®¤¬¥î "View"
|
||||
ViewTab DW 142,324, 29, 43,%0000000100100100,0,ChView1,0
|
||||
.ViewTab DW 142,324, 29, 43,%0000000100100100,0,ChView1,0
|
||||
DW 142,324, 43, 57,%0000000100100100,0,ChView2,0
|
||||
DW 142,324, 57, 71,%0000000100100100,0,ChView3,0
|
||||
DW 142,324, 77, 91,%0000000100100100,0,ChFilt1,0
|
||||
@ -201,7 +204,7 @@ ViewTab DW 142,324, 29, 43,%0000000100100100,0,ChView1,0
|
||||
DW 330,640, 0,256,%0000000101100000,0,MenuExit,0
|
||||
DW 0x8000
|
||||
|
||||
ConfigTab DW 178,266, 29, 43,%0000000100100100,0,RESIDENT.Setup,0
|
||||
.ConfigTab DW 178,266, 29, 43,%0000000100100100,0,RESIDENT.Setup,0
|
||||
DW 6, 40, 15, 26,%0000000010010000,MenuFile.L2,0,0
|
||||
DW 40, 84, 15, 26,%0000000010010000,MenuSelect.L2,0,0
|
||||
DW 84,138, 15, 26,%0000000010010000,MenuOption.L2,0,0
|
||||
@ -214,7 +217,7 @@ ConfigTab DW 178,266, 29, 43,%0000000100100100,0,RESIDENT.Setup,0
|
||||
DW 270,640, 0,256,%0000000100100000,0,MenuExit,0
|
||||
DW 0x8000
|
||||
|
||||
AboutTab DW 226,330, 29, 43,%0000000100100100,0,RESIDENT.Version,0
|
||||
.AboutTab DW 226,330, 29, 43,%0000000100100100,0,RESIDENT.Version,0
|
||||
DW 6, 40, 15, 26,%0000000010010000,MenuFile.L2,0,0
|
||||
DW 40, 84, 15, 26,%0000000010010000,MenuSelect.L2,0,0
|
||||
DW 84,138, 15, 26,%0000000010010000,MenuOption.L2,0,0
|
||||
@ -227,7 +230,7 @@ AboutTab DW 226,330, 29, 43,%0000000100100100,0,RESIDENT.Version,0
|
||||
DW 334,640, 0,256,%0000000100100000,0,MenuExit,0
|
||||
DW 0x8000
|
||||
|
||||
PullTab DW 6, 40, 15, 26,%0000000000100000,0,MFile,0
|
||||
.PullTab DW 6, 40, 15, 26,%0000000000100000,0,MFile,0
|
||||
DW 40, 84, 15, 26,%0000000000100000,0,MSelect,0
|
||||
DW 84,138, 15, 26,%0000000000100000,0,MOption,0
|
||||
DW 138,174, 15, 26,%0000000000100000,0,MView,0
|
||||
@ -240,7 +243,7 @@ PullTab DW 6, 40, 15, 26,%0000000000100000,0,MFile,0
|
||||
DW 0x8000
|
||||
|
||||
;[]==========================================================[]
|
||||
FilterTab DW 240,312,123,137,%0000000000000001,0,InputLine.InputLineExitOk,0
|
||||
.FilterTab DW 240,312,123,137,%0000000000000001,0,InputLine.InputLineExitOk,0
|
||||
DW 328,400,123,137,%0000000000000001,0,InputLine.InputLineExitCancel,0
|
||||
DW 0,208, 0,256,%0000000000000000,0,InputLine.InputLineExitCancel,0
|
||||
DW 432,640, 0,256,%0000000000000000,0,InputLine.InputLineExitCancel,0
|
||||
@ -248,21 +251,13 @@ FilterTab DW 240,312,123,137,%0000000000000001,0,InputLine.InputLineExitOk,0
|
||||
DW 0,640,143,256,%0000000000000000,0,InputLine.InputLineExitCancel,0
|
||||
DW 0x8000
|
||||
|
||||
SMaskTab DW 240,312,123,137,%0000000000000001,0,InputLine.InputLineExitOk,0
|
||||
DW 328,400,123,137,%0000000000000001,0,InputLine.InputLineExitCancel,0
|
||||
DW 0,208, 0,256,%0000000000000000,0,InputLine.InputLineExitCancel,0
|
||||
DW 432,640, 0,256,%0000000000000000,0,InputLine.InputLineExitCancel,0
|
||||
DW 0,640, 0, 81,%0000000000000000,0,InputLine.InputLineExitCancel,0
|
||||
DW 0,640,143,256,%0000000000000000,0,InputLine.InputLineExitCancel,0
|
||||
DW 0x8000
|
||||
|
||||
DOSTab DW 0,256, 0,256,%0000000000000000,0,DOSLnExtC,0
|
||||
.DOSTab DW 0,256, 0,256,%0000000000000000,0,DOSLnExtC,0
|
||||
DW 636,640, 0,256,%0000000000000000,0,DOSLnExtC,0
|
||||
DW 0,640, 0,229,%0000000000000000,0,DOSLnExtC,0
|
||||
DW 0,640,239,256,%0000000000000000,0,DOSLnExtC,0
|
||||
DW 0x8000
|
||||
|
||||
ViewEditTab DW 240,312,123,137,%0000000000000001,0,InputLine.InputLineExitOk,0
|
||||
.ViewEditTab DW 240,312,123,137,%0000000000000001,0,InputLine.InputLineExitOk,0
|
||||
DW 328,400,123,137,%0000000000000001,0,InputLine.InputLineExitCancel,0
|
||||
DW 0,200, 0,256,%0000000000000000,0,InputLine.InputLineExitCancel,0
|
||||
DW 440,640, 0,256,%0000000000000000,0,InputLine.InputLineExitCancel,0
|
||||
@ -271,12 +266,12 @@ ViewEditTab DW 240,312,123,137,%0000000000000001,0,InputLine.InputLineExitOk,0
|
||||
DW 0x8000
|
||||
|
||||
;[]==========================================================[]
|
||||
DriveTab DW 0, 0, 0, 0,%0000000000100000,0,DriveExit,0
|
||||
.DriveTab DW 0, 0, 0, 0,%0000000000100000,0,DriveExit,0
|
||||
DW 0, 0, 0, 0,%0000000000100000,0,DriveExit,0
|
||||
DW 0,640, 0, 92,%0000000000100000,0,DriveExit,0
|
||||
DW 0,640,128,256,%0000000000100000,0,DriveExit,0
|
||||
|
||||
BegDrive DW 0, 0,110,121,%0000000000100000,0,DriveMouse,0
|
||||
.BegDrive DW 0, 0,110,121,%0000000000100000,0,DriveMouse,0
|
||||
DW 0, 0,110,121,%0000000000100000,0,DriveMouse,0
|
||||
DW 0, 0,110,121,%0000000000100000,0,DriveMouse,0
|
||||
DW 0, 0,110,121,%0000000000100000,0,DriveMouse,0
|
||||
@ -291,7 +286,7 @@ BegDrive DW 0, 0,110,121,%0000000000100000,0,DriveMouse,0
|
||||
|
||||
IF PLUGS_ENABLE
|
||||
; ®¡« á⨠¢ë¡®à ¢ ¬¥î ¯« £¨®¢
|
||||
PluginsTab: DW 4, 13,100, 10,%0000000000000000,0,SelectPlugin.NUM00,0
|
||||
.PluginsTab: DW 4, 13,100, 10,%0000000000000000,0,SelectPlugin.NUM00,0
|
||||
DW 4, 23,100, 10,%0000000000000000,0,SelectPlugin.NUM01,0
|
||||
DW 4, 33,100, 10,%0000000000000000,0,SelectPlugin.NUM02,0
|
||||
DW 4, 43,100, 10,%0000000000000000,0,SelectPlugin.NUM03,0
|
||||
@ -307,7 +302,7 @@ PluginsTab: DW 4, 13,100, 10,%0000000000000000,0,SelectPlugin.NUM00,0
|
||||
ENDIF
|
||||
|
||||
;[]==========================================================[]
|
||||
;”®à¬ â â ¡«¨æë
|
||||
; ”®à¬ â â ¡«¨æë
|
||||
; +00 2 ASCII + SCANCOD
|
||||
; +02 2 Execute program
|
||||
HOTKEYS
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
|
||||
; LAST UPDATE: 31.07.2025 savelij
|
||||
; LAST UPDATE: 03.08.2025 savelij
|
||||
|
||||
MAX_LEVEL_DIR EQU 21
|
||||
|
||||
@ -28,7 +28,7 @@ ReadTreeR PUSH IY
|
||||
GETPORT WINSP.CPU3
|
||||
LD B,A
|
||||
PUSH BC
|
||||
LD A,(RAMPAGES.BuffPg3)
|
||||
LD A,(RAMPAGES.BuffPg4)
|
||||
SETPORT WINSP.CPU1,,0
|
||||
BIT PANELFLAG.B_SIDE,(IY+PANEL.PANELFLAG)
|
||||
LD A,(RAMPAGES.LEFTPANEL)
|
||||
@ -182,7 +182,7 @@ ReadTreeR PUSH IY
|
||||
SET VIEWFLAG.B_SHORTTREE,(IY+PANEL.VIEWFLAG)
|
||||
.L4
|
||||
GETPORT WINSP.CPU3
|
||||
LD (RAMPAGES.BuffPg3),A
|
||||
LD (RAMPAGES.BuffPg4),A
|
||||
GETPORT WINSP.CPU1
|
||||
BIT PANELFLAG.B_SIDE,(IY+PANEL.PANELFLAG)
|
||||
LD HL,RAMPAGES.LEFTPANEL
|
||||
|
||||
38
fnwork.a80
38
fnwork.a80
@ -1,5 +1,5 @@
|
||||
|
||||
; LAST UPDATE: 31.07.2025 savelij
|
||||
; LAST UPDATE: 14.08.2025 savelij
|
||||
|
||||
;[]===========================================================[]
|
||||
CursUp LD A,(IY + PANEL.FILES_ALL)
|
||||
@ -70,7 +70,7 @@ ScrlDn1 BIT VIEWFLAG.B_FULL,(IY + PANEL.VIEWFLAG)
|
||||
PUSH HL
|
||||
LDIR
|
||||
POP HL
|
||||
LD DE,0x18*0x11
|
||||
LD DE,FileHDR.SIZE * NUM_FILES_PANEL
|
||||
ADD HL,DE
|
||||
LD E,IXL
|
||||
LD D,IXH
|
||||
@ -84,7 +84,7 @@ ScrlDn1 BIT VIEWFLAG.B_FULL,(IY + PANEL.VIEWFLAG)
|
||||
PUSH HL
|
||||
LDIR
|
||||
POP HL
|
||||
LD DE,0x18*0x11
|
||||
LD DE,FileHDR.SIZE * NUM_FILES_PANEL
|
||||
ADD HL,DE
|
||||
LD E,IXL
|
||||
LD D,IXH
|
||||
@ -419,14 +419,14 @@ ScrlUp1 BIT VIEWFLAG.B_FULL,(IY+PANEL.VIEWFLAG)
|
||||
PUSH HL
|
||||
LDIR
|
||||
POP HL
|
||||
LD DE,0x18*0x11
|
||||
LD DE,FileHDR.SIZE * NUM_FILES_PANEL
|
||||
ADD HL,DE
|
||||
LD DE,WorkBuffer+0x10
|
||||
LD C,0x0E
|
||||
PUSH HL
|
||||
LDIR
|
||||
POP HL
|
||||
LD DE,0x18*0x11
|
||||
LD DE,FileHDR.SIZE * NUM_FILES_PANEL
|
||||
ADD HL,DE
|
||||
LD DE,WorkBuffer+0x20
|
||||
LD C,0x0E
|
||||
@ -1356,7 +1356,7 @@ ShowDSexit
|
||||
JP WaitUnpressMouse
|
||||
|
||||
;[]==========================================================[]
|
||||
RunEXEfile: LD IX,fn_ext
|
||||
RunEXEfile: LD IX,BUFFERS.fn_ext
|
||||
LD DE,PrevFile
|
||||
PUSH DE
|
||||
SUB A
|
||||
@ -1894,7 +1894,7 @@ ViewFileSH: BIT VIEWFLAG.B_TREE,(IY+PANEL.VIEWFLAG)
|
||||
W_FILL 88,23,130,10,COLORI.WHITE
|
||||
W_END
|
||||
LD IX,ViewStr
|
||||
LD HL,ViewEditTab
|
||||
LD HL,MAINTAB.ViewEditTab
|
||||
CALL InputLine
|
||||
WINDOWCLOSE
|
||||
RET C
|
||||
@ -1938,14 +1938,12 @@ StViewFile: LD A,0x01
|
||||
LD A,(IY+PANEL.FILES_ALL)
|
||||
OR (IY+PANEL.FILES_ALL + 1)
|
||||
RET Z
|
||||
IFNDEF ENABLE.VIEW
|
||||
; ¯®¯ë⪠§ £à㧪¨ ¯« £¨
|
||||
CALL LOADFLX4RUN
|
||||
DZ FILENAME.VIEW_FLX
|
||||
; ¢ë¢®¤ ®è¨¡ª¨ "<22>« £¨ ¥ ©¤¥"
|
||||
LD A,FNinternal.PlugNotFound
|
||||
JP C,DOSError
|
||||
ENDIF
|
||||
GETPORT WINSP.CPU1
|
||||
PUSH AF
|
||||
BIT PANELFLAG.B_SIDE,(IY+PANEL.PANELFLAG)
|
||||
@ -1991,7 +1989,7 @@ StViewFile: LD A,0x01
|
||||
VFlag: EQU $-1
|
||||
OR A
|
||||
JR NZ,View1
|
||||
View: LD IX,fnview_ext
|
||||
View: LD IX,BUFFERS.fnview_ext
|
||||
LD DE,PrevFile
|
||||
CALL TestEXT
|
||||
RET NC
|
||||
@ -2021,12 +2019,7 @@ View1: CALL ResInvert
|
||||
LD C,WINSP.CPU1 ; ®ª® § ¯ãáª á ¤à¥á 0x4000
|
||||
JR NZ,.L4
|
||||
LD C,WINSP.CPU3 ; ®ª® § ¯ãáª á ¤à¥á 0xC000
|
||||
.L4
|
||||
IFDEF ENABLE.VIEW
|
||||
LD A,(RAMPAGES.FNVIEW)
|
||||
ELSE
|
||||
LD A,(RAMPAGES.FLX)
|
||||
ENDIF
|
||||
.L4 LD A,(RAMPAGES.FLX)
|
||||
CALL Resident
|
||||
LD HL,0
|
||||
LD (RunFLX.FLXexec),HL ; ¯à¨ ¢ë室¥ ¨§ ¯« £¨ £«ã訬 ¤à¥á § £à㧪¨
|
||||
@ -2061,7 +2054,7 @@ EditFileSH: BIT VIEWFLAG.B_TREE,(IY+PANEL.VIEWFLAG)
|
||||
W_FILL 88,23,130,10,COLORI.WHITE
|
||||
W_END
|
||||
LD IX,EditStr
|
||||
LD HL,ViewEditTab
|
||||
LD HL,MAINTAB.ViewEditTab
|
||||
CALL InputLine
|
||||
WINDOWCLOSE
|
||||
RET C
|
||||
@ -2105,14 +2098,12 @@ StEditFile: LD A,0x01
|
||||
LD A,(IY+PANEL.FILES_ALL)
|
||||
OR (IY+PANEL.FILES_ALL + 1)
|
||||
RET Z
|
||||
IFNDEF ENABLE.VIEW
|
||||
; ¯®¯ë⪠§ £à㧪¨ ¯« £¨
|
||||
CALL LOADFLX4RUN
|
||||
DZ FILENAME.EDIT_FLX
|
||||
; ¢ë¢®¤ ®è¨¡ª¨ "<22>« £¨ ¥ ©¤¥"
|
||||
LD A,FNinternal.PlugNotFound
|
||||
JP C,DOSError
|
||||
ENDIF
|
||||
GETPORT WINSP.CPU1
|
||||
PUSH AF
|
||||
BIT PANELFLAG.B_SIDE,(IY+PANEL.PANELFLAG)
|
||||
@ -2158,7 +2149,7 @@ StEditFile: LD A,0x01
|
||||
EFlag: EQU $-1
|
||||
OR A
|
||||
JR NZ,Edit1
|
||||
Edit: LD IX,fnedit_ext
|
||||
Edit: LD IX,BUFFERS.fnedit_ext
|
||||
LD DE,PrevFile
|
||||
CALL TestEXT
|
||||
RET NC
|
||||
@ -2188,12 +2179,7 @@ Edit1: CALL ResInvert
|
||||
LD C,WINSP.CPU1 ; ®ª® § ¯ãáª á ¤à¥á 0x4000
|
||||
JR NZ,.L4
|
||||
LD C,WINSP.CPU3 ; ®ª® § ¯ãáª á ¤à¥á 0xC000
|
||||
.L4
|
||||
IFDEF ENABLE.VIEW
|
||||
LD A,(RAMPAGES.FNEDIT)
|
||||
ELSE
|
||||
LD A,(RAMPAGES.FLX)
|
||||
ENDIF
|
||||
.L4 LD A,(RAMPAGES.FLX)
|
||||
CALL Resident
|
||||
LD HL,0
|
||||
LD (RunFLX.FLXexec),HL ; ¯à¨ ¢ë室¥ ¨§ ¯« £¨ £«ã訬 ¤à¥á § £à㧪¨
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
|
||||
; LAST UPDATE: 02.08.2025 savelij
|
||||
; LAST UPDATE: 03.08.2025 savelij
|
||||
|
||||
ENABLE_CODEPAGE EQU 0
|
||||
|
||||
@ -391,15 +391,15 @@ FEInitScreen
|
||||
LD BC,0x0011
|
||||
LD A,COLORP.HIGHGRAY + COLORI.BLACK
|
||||
CALL JUMPS.PrintPathLeft
|
||||
LD HL,508
|
||||
LD HL,520
|
||||
LD DE,3
|
||||
LD B,COLORP.BLACK + COLORI.HIGHGRAY
|
||||
EXX
|
||||
LD HL,558
|
||||
LD HL,568
|
||||
LD DE,3
|
||||
LD B,COLORP.BLACK + COLORI.HIGHGRAY
|
||||
EXX
|
||||
LD A,DateMonthFormat.Text
|
||||
LD A,DateMonthFormat.Digit
|
||||
JP JUMPS.CMOSPrintDateTime
|
||||
|
||||
;[]==========================================================[]
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
|
||||
; LAST UPDATE: 02.08.2025 savelij
|
||||
; LAST UPDATE: 03.08.2025 savelij
|
||||
|
||||
LineBuffer := WorkBuffer+0x300
|
||||
|
||||
@ -486,10 +486,10 @@ FVFAttrib EQU $ - STRLEN(" ") - 1
|
||||
W_END
|
||||
SPDSS DSSF.CURDISK
|
||||
LD HL,WorkBuffer
|
||||
ADD A,"A"
|
||||
ADD A,'A'
|
||||
LD (HL),A
|
||||
INC HL
|
||||
LD (HL),":"
|
||||
LD (HL),':'
|
||||
INC HL
|
||||
PUSH HL
|
||||
SPDSS DSSF.CURDIR
|
||||
@ -512,21 +512,21 @@ FVFAttrib EQU $ - STRLEN(" ") - 1
|
||||
CP (HL)
|
||||
JR NZ,.L6
|
||||
LD (DE),A
|
||||
LD IX,0x0200
|
||||
LD IX,512
|
||||
LD HL,WorkBuffer
|
||||
LD DE,0x0034
|
||||
LD BC,0x0011
|
||||
LD DE,52
|
||||
LD BC,17
|
||||
LD A,COLORP.HIGHGRAY + COLORI.BLACK
|
||||
CALL JUMPS.PrintPathLeft
|
||||
LD HL,508
|
||||
LD HL,520
|
||||
LD DE,3
|
||||
LD B,COLORP.BLACK + COLORI.HIGHGRAY
|
||||
EXX
|
||||
LD HL,558
|
||||
LD HL,568
|
||||
LD DE,3
|
||||
LD B,COLORP.BLACK + COLORI.HIGHGRAY
|
||||
EXX
|
||||
LD A,DateMonthFormat.Text
|
||||
LD A,DateMonthFormat.Digit
|
||||
JP JUMPS.CMOSPrintDateTime
|
||||
|
||||
FVFAtributs DEFB "--ad-shr"
|
||||
|
||||
16
readme.md
16
readme.md
@ -3,12 +3,14 @@ Flex Navigator для компьютера Sprinter
|
||||
|
||||
Собранные файлы забирать из папки fn
|
||||
|
||||
`FileEditor.flx 1.10:`
|
||||
- устранено перепутанные кнопки для нажатий мышью для F7 и F9.
|
||||
`FlexNavigator 1.16.03`
|
||||
- MISC функции перенесены из 2 резидента в 3.
|
||||
- перераспределение TAB таблиц.
|
||||
- в описание Flex Navigator API добавлено описание глобальных
|
||||
переменных.
|
||||
|
||||
`FileViewer.flx 1.06:`
|
||||
- добавлено переключение кодировки в режиме HEX просмотра.
|
||||
`FileViewer.flx 1.07`
|
||||
- мелкое исправление позиции вывода даты/времени.
|
||||
|
||||
`FlexNavigaror 1.16.01:`
|
||||
- исправлен вылет при создании нового файла по Shift+F4 или просмотр с
|
||||
вводом имени по Shift+F3, плагин был не загружен.
|
||||
`FileEditor.flx 1.11`
|
||||
- мелкое исправление позиции вывода даты/времени.
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
|
||||
; LAST UPDATE: 01.08.2025 savelij
|
||||
; LAST UPDATE: 14.08.2025 savelij
|
||||
|
||||
PALITRA.RESERV EQU PALETTE + 0x34
|
||||
|
||||
@ -84,7 +84,7 @@ SaveFlg EQU $-2
|
||||
LD IX,BarBlue
|
||||
CALL InitScrollBar
|
||||
CALL InitElement
|
||||
SetupLoop LD IX,SetupTab
|
||||
SetupLoop LD IX,REZ2TAB.SetupTab
|
||||
CALL CheckCoordsMouse
|
||||
SPDSS DSSF.SCANKEY
|
||||
JR Z,SetupLoop
|
||||
@ -511,7 +511,7 @@ InputColor LD (ColorY),BC
|
||||
SUB LOW (ColText)
|
||||
LD (ColLen),A
|
||||
InpAg LD IX,ColorStr
|
||||
LD HL,EmptyTab
|
||||
LD HL,REZ2TAB.EmptyTab
|
||||
CALL InputLine
|
||||
POP DE
|
||||
POP HL
|
||||
|
||||
376
rez2_fnfunct.a80
376
rez2_fnfunct.a80
@ -1,5 +1,5 @@
|
||||
|
||||
; LAST UPDATE: 31.07.2025 savelij
|
||||
; LAST UPDATE: 14.08.2025 savelij
|
||||
|
||||
;[]==========================================================[]
|
||||
CopyFilesR LD A,(IY + PANEL.FILES_ALL)
|
||||
@ -11,7 +11,7 @@ CopyFilesR LD A,(IY + PANEL.FILES_ALL)
|
||||
LD A,(IY + PANEL.FILES_MARK)
|
||||
OR (IY + PANEL.FILES_MARK + 1)
|
||||
JP NZ,CopyMark ; ¥áâì ¯®¬¥ç¥ë¥ ä ©«ë
|
||||
; ª®¯¨à®¢ ¨¥ ä ©« /¤¨àë ¯®¤ ªãàá®à®¬
|
||||
; ª®¯¨à®¢ ¨¥ ä ©« /¤¨àë ¯®¤ ªãàá®à®¬, ¡¥§ ¯®¬¥âª¨
|
||||
GETPORT WINSP.CPU3
|
||||
PUSH AF
|
||||
BIT PANELFLAG.B_SIDE,(IY + PANEL.PANELFLAG)
|
||||
@ -35,12 +35,15 @@ CopyFilesR LD A,(IY + PANEL.FILES_ALL)
|
||||
ADD HL,DE ; *18
|
||||
SET 6,H
|
||||
SET 7,H ; | 0xC000
|
||||
LD (AdrCopyFile),HL
|
||||
LD (COPY.PathCurrFile),HL
|
||||
LD DE,WorkBuffer
|
||||
LD BC,FileHDR.SIZE
|
||||
LDIR
|
||||
POP AF
|
||||
SETPORT WINSP.CPU3,,0
|
||||
LD HL,CopyNextFile.FLAG_DIRCOPY
|
||||
XOR A ; ª®¯¨à®¢ âì ⮫쪮 ä ©«ë
|
||||
LD (HL),A
|
||||
BIT DIR.B_Dir,(IX + FileHDR.Attr)
|
||||
IF MARK_DIR
|
||||
JP NZ,COPY_DIR
|
||||
@ -48,63 +51,48 @@ CopyFilesR LD A,(IY + PANEL.FILES_ALL)
|
||||
RET NZ
|
||||
ENDIF
|
||||
LD HL,0
|
||||
LD (CopyFiles),HL
|
||||
LD (COPY.CopyFiles),HL
|
||||
LD L,(IX + FileHDR.SizeBytes)
|
||||
LD H,(IX + FileHDR.SizeBytes + 1)
|
||||
LD (CopyBytes),HL
|
||||
LD (COPY.CopyBytes),HL
|
||||
LD E,(IX + FileHDR.SizeBytes + 2)
|
||||
LD D,(IX + FileHDR.SizeBytes + 3)
|
||||
LD (CopyBytes + 2),DE
|
||||
LD (COPY.CopyBytes + 2),DE
|
||||
CALL ConvBytes2Pages
|
||||
JP CopyNxt
|
||||
|
||||
IF MARK_DIR
|
||||
; ª®¯¨à®¢ ¨¥ ¤¨àë á® ¢á¥¬ ᮤ¥à¦¨¬ë¬
|
||||
COPY_DIR PUSH IX
|
||||
PUSH IY
|
||||
PUSH IX
|
||||
; LD HL,(AdrCopyFile) ; ¤à¥á ®¯¨á â¥«ï ¨§¬¥à塞®© ¤¨àë
|
||||
; CALL RESIDENT.GetDirSize ; áç¨â ¥¬ ¨ ¯®«ãç ¥¬ à §¬¥à ¢ ¡ ©â å
|
||||
; EXX
|
||||
CALL RESIDENT.CountingDir
|
||||
; ª®¯¨à®¢ ¨¥ ¤¨àë á® ¢á¥¬ ᮤ¥à¦¨¬ë¬ ¯®¤ ªãàá®à®¬
|
||||
COPY_DIR INC A
|
||||
LD (HL),A ; ª®¯¨à®¢ âì ¡ã¤¥¬ ¤¨à¥ªâ®à¨ï¬¨
|
||||
CALL RESIDENT.CountingDir ; ¨§¬¥à¥¨¥ à §¬¥à ¤¨à¥ªâ®à¨¨ á ä ©« ¬¨
|
||||
LD HL,JUMPS.FILES_BYTES
|
||||
CALL GET_DWORD
|
||||
POP HL ; ¤à¥á ®¯¨á ⥫ï
|
||||
LD (CopyBytes),DE
|
||||
LD (CopyBytes + 2),BC
|
||||
PUSH DE
|
||||
LD DE,FileHDR.SizeBytes
|
||||
ADD HL,DE ; 㪠§ â¥«ì ª®«¨ç¥á⢮ ¡ ©â ª®¯¨à®¢ ¨ï
|
||||
POP DE
|
||||
CALL SET_DWORD ; § ¥á«¨ à §¬¥à ¤¨àë ¢ ¡ ©â å ¢ ®¯¨á ⥫ì
|
||||
LD DE,COPY.CopyBytes
|
||||
LD BC,5
|
||||
LDIR ; § ¡à «¨ à §¬¥à ¤¨à¥ªâ®à¨¨
|
||||
LD HL,0
|
||||
LD (CopyFiles),HL
|
||||
EX DE,HL
|
||||
LD D,B
|
||||
LD E,C
|
||||
LD (COPY.CopyFiles),HL ; ª®«¨ç¥á⢮ 㦥 ᪮¯¨à®¢ ëå ä ©«®¢
|
||||
CALL RESIDENT.InitCopyDirs ; ¨¨æ¨ «¨§ æ¨ï ¯ã⥩ ®âªã¤ /ªã¤
|
||||
|
||||
LD HL,(COPY.CopyBytes)
|
||||
LD DE,(COPY.CopyBytes + 2)
|
||||
CALL ConvBytes2Pages ; ¯¥à¥áç¥â ¢ ª®«¨ç¥á⢮ áâà ¨æ ¤«ï ª®¯¨à®¢ ¨ï
|
||||
|
||||
LD HL,(AdrCopyFile) ; ¤à¥á ®¯¨á â¥«ï ª®¯¨à㥬®© ¤¨àë
|
||||
CALL RESIDENT.MkdirsDst ; á®§¤ ¨¥ ¯ ¯®ª ¯à¨¥¬¨ª¥
|
||||
|
||||
POP IY
|
||||
POP IX
|
||||
RET
|
||||
JP CopyNxt
|
||||
ENDIF
|
||||
|
||||
; ª®¯¨à®¢ ¨¥ ¯®¬¥ç¥ëå ä ©«®¢
|
||||
CopyMark LD L,(IY + PANEL.FILES_MARK)
|
||||
LD H,(IY + PANEL.FILES_MARK + 1)
|
||||
LD (CopyFiles),HL
|
||||
LD (COPY.CopyFiles),HL
|
||||
LD L,(IY + PANEL.BYTES_MARK)
|
||||
LD H,(IY + PANEL.BYTES_MARK + 1)
|
||||
LD (CopyBytes),HL
|
||||
LD (COPY.CopyBytes),HL
|
||||
LD L,(IY + PANEL.BYTES_MARK + 2)
|
||||
LD H,(IY + PANEL.BYTES_MARK + 3)
|
||||
LD (CopyBytes + 2),HL
|
||||
LD (COPY.CopyBytes + 2),HL
|
||||
; [ ] fat32
|
||||
LD A,(IY + PANEL.BYTES_MARK_H)
|
||||
LD (CopyBytes + 4),A
|
||||
LD (COPY.CopyBytes + 4),A
|
||||
GETPORT WINSP.CPU3
|
||||
PUSH AF
|
||||
BIT PANELFLAG.B_SIDE,(IY + PANEL.PANELFLAG)
|
||||
@ -118,7 +106,7 @@ CopyMark LD L,(IY + PANEL.FILES_MARK)
|
||||
.L2 ADD HL,BC
|
||||
BIT FileHDR.B_MARK,(HL)
|
||||
JR Z,.L2
|
||||
LD (AdrCopyFile),HL
|
||||
LD (COPY.PathCurrFile),HL
|
||||
PUSH HL
|
||||
POP IX
|
||||
SUB A
|
||||
@ -136,13 +124,15 @@ CopyLp0 BIT FileHDR.B_MARK,(IX + FileHDR.Flag)
|
||||
LD E,(IX + FileHDR.SizeBytes + 2)
|
||||
LD D,(IX + FileHDR.SizeBytes + 3)
|
||||
CALL ConvBytes2Pages
|
||||
LD C,L
|
||||
LD B,H
|
||||
POP HL
|
||||
; LD C,L
|
||||
; LD B,H
|
||||
; POP HL
|
||||
POP BC
|
||||
ADD HL,BC
|
||||
LD C,E
|
||||
LD B,D
|
||||
POP DE
|
||||
; LD C,E
|
||||
; LD B,D
|
||||
; POP DE
|
||||
POP BC
|
||||
EX DE,HL
|
||||
ADC HL,BC
|
||||
EX DE,HL
|
||||
@ -197,7 +187,7 @@ CopyNxt LD IX,ProcessAll
|
||||
SUB C
|
||||
LD (PathLen),A
|
||||
LD IX,PathStr
|
||||
LD HL,PathTab
|
||||
LD HL,REZ2TAB.PathTab
|
||||
CALL InputLine
|
||||
WINDOWCLOSE
|
||||
RET C
|
||||
@ -207,7 +197,7 @@ CopyNxt LD IX,ProcessAll
|
||||
PUSH IY
|
||||
SPDSS DSSF.INFOMEM
|
||||
POP IY
|
||||
LD (FreeBanks),BC
|
||||
LD (COPY.FreeBanks),BC
|
||||
LD A,B
|
||||
OR C
|
||||
LD A,ERR_DSS.NOT_ENOUGH_MEMORY
|
||||
@ -225,16 +215,16 @@ CopyNxt LD IX,ProcessAll
|
||||
W_FILL 18,57,284,10,COLORI.WHITE
|
||||
W_END
|
||||
SUB A
|
||||
LD (OverWriteFlg),A
|
||||
LD (COPY.OverWriteFlg),A
|
||||
BIT PANELFLAG.B_SIDE,(IY + PANEL.PANELFLAG)
|
||||
LD HL,LeftPanel
|
||||
JR Z,.L4
|
||||
LD HL,RightPanel
|
||||
.L4 LD BC,PANEL.CURR_PATH
|
||||
ADD HL,BC
|
||||
LD (CopySrc),HL
|
||||
LD (COPY.PathSrc),HL
|
||||
LD HL,CurPath
|
||||
LD (CopyDst),HL
|
||||
LD (COPY.PathDst),HL
|
||||
CALL PointerMouseClock
|
||||
PUSH IY
|
||||
GETPORT WINSP.CPU3
|
||||
@ -245,17 +235,25 @@ CopyNxt LD IX,ProcessAll
|
||||
LD A,(RAMPAGES.RIGHTPANEL)
|
||||
.L3
|
||||
SETPORT WINSP.CPU3,,0
|
||||
; ª®¯¨à®¢ ¨¥ ä ©«®¢
|
||||
CopyNextFile CALL PrnFromTo
|
||||
LD IX,(AdrCopyFile)
|
||||
LD L,(IX + FileHDR.SizeBytes)
|
||||
; ª®¯¨à®¢ ¨¥ ä ©«®¢/¤¨à¥ªâ®à¨©
|
||||
CopyNextFile CALL PrintSrcDst
|
||||
LD IX,(COPY.PathCurrFile)
|
||||
IF MARK_DIR
|
||||
BIT DIR.B_Dir,(IX + FileHDR.Attr)
|
||||
JR Z,.CopyFile
|
||||
; ª®¯¨à®¢ ¨¥ ¤¨à¥ªâ®à¨¨
|
||||
CALL RESIDENT.Add2ListDir ; ¤®¡ ¢«¥¨¥ ¨¬¥¨ ¤¨àë ¢ ᯨ᮪
|
||||
JR CopyNextFile
|
||||
ENDIF
|
||||
|
||||
.CopyFile LD L,(IX + FileHDR.SizeBytes)
|
||||
LD H,(IX + FileHDR.SizeBytes + 1)
|
||||
LD E,(IX + FileHDR.SizeBytes + 2)
|
||||
LD D,(IX + FileHDR.SizeBytes + 3)
|
||||
LD (ReadBytes),HL
|
||||
LD (ReadBytes + 2),DE
|
||||
LD (WriteBytes),HL
|
||||
LD (WriteBytes + 2),DE
|
||||
LD (COPY.CurrReadBytes),HL
|
||||
LD (COPY.CurrReadBytes + 2),DE
|
||||
LD (COPY.CurrWriteBytes),HL
|
||||
LD (COPY.CurrWriteBytes + 2),DE
|
||||
CALL ConvBytes2Pages
|
||||
LD (.PagesLow),HL
|
||||
LD (.PagesHigh),DE
|
||||
@ -270,7 +268,7 @@ CopyNextFile CALL PrnFromTo
|
||||
LD (IX + PROGRESSBAR.MAX_PAGES + 3),D
|
||||
CALL InitProgressBar
|
||||
CALL DrawProgressBar
|
||||
LD HL,(FreeBanks)
|
||||
LD HL,(COPY.FreeBanks)
|
||||
LD DE,0x0000
|
||||
.PagesHigh EQU $-2
|
||||
LD A,D
|
||||
@ -285,56 +283,56 @@ CopyNextFile CALL PrnFromTo
|
||||
.CopyLp1 EX DE,HL
|
||||
.L1 LD B,E
|
||||
SPDSS DSSF.GETMEM
|
||||
LD (MemID),A
|
||||
LD (COPY.MemID),A
|
||||
LD HL,PagesList
|
||||
SPBIOS BIOSF.GETMEMBLKPAGES
|
||||
LD HL,(CopySrc) ; Žâªàë¢ ¥¬ ä ©« ¨áâ®ç¨ª
|
||||
LD HL,(COPY.PathSrc) ; ®âªàë¢ ¥¬ ä ©« ¨áâ®ç¨ª
|
||||
SPDSS DSSF.CHDIR
|
||||
JP C,CopyError1
|
||||
LD HL,(AdrCopyFile)
|
||||
LD HL,(COPY.PathCurrFile)
|
||||
INC HL
|
||||
LD DE,WorkBuffer
|
||||
PUSH DE
|
||||
CALL MakeDOSname
|
||||
POP HL
|
||||
SPDSS DSSF.OPEN,,1
|
||||
SPDSS DSSF.OPEN,,FILEMODE.R ; ®âªàë⨥ ç⥨¥
|
||||
JP C,CopyError1
|
||||
LD (FHandleSrc),A
|
||||
LD HL,(CopyDst) ; Žâªàë¢ ¥¬ ä ©« ¯à¨¥¬¨ª
|
||||
LD (COPY.FHandleSrc),A
|
||||
LD HL,(COPY.PathDst) ; ®âªàë¢ ¥¬ ä ©« ¯à¨¥¬¨ª
|
||||
SPDSS DSSF.CHDIR
|
||||
JP C,CopyError2
|
||||
LD IX,(AdrCopyFile)
|
||||
LD HL,(AdrCopyFile)
|
||||
LD IX,(COPY.PathCurrFile)
|
||||
LD HL,(COPY.PathCurrFile)
|
||||
INC HL
|
||||
LD DE,WorkBuffer
|
||||
PUSH DE
|
||||
CALL MakeDOSname
|
||||
POP HL
|
||||
LD A,(OverWriteFlg)
|
||||
LD A,(COPY.OverWriteFlg)
|
||||
OR A
|
||||
LD C,DSSF.CREAT_N
|
||||
JR Z,.L2
|
||||
LD C,DSSF.CREATE
|
||||
.L2 LD A,(IX + FileHDR.Attr)
|
||||
SPDSS
|
||||
JR NC,CopyLp2
|
||||
CP 0x07
|
||||
SPDSS ; á®§¤ ¨¥ ä ©«
|
||||
JR NC,.CopyLp2
|
||||
CP ERR_DSS.FILE_EXISTS
|
||||
JP NZ,CopyError2
|
||||
CALL OverWrite
|
||||
CopyLp2 LD (FHandleDst),A
|
||||
LD HL,(ReadBytes)
|
||||
CALL OverWrite ; ä ©« áãé¥áâ¢ãâ, § ¯à®á ¯¥à¥§ ¯¨áì
|
||||
.CopyLp2 LD (COPY.FHandleDst),A
|
||||
LD HL,(COPY.CurrReadBytes)
|
||||
LD A,H
|
||||
OR L
|
||||
LD HL,(ReadBytes + 2)
|
||||
LD HL,(COPY.CurrReadBytes + 2)
|
||||
OR H
|
||||
OR L
|
||||
JP Z,CloseFiles
|
||||
ReadFile
|
||||
JP Z,.CloseFiles
|
||||
.ReadFile
|
||||
GETPORT WINSP.CPU3
|
||||
PUSH AF
|
||||
LD HL,PagesList
|
||||
LD A,(HL)
|
||||
ReadLp1 INC HL
|
||||
.ReadLp1 INC HL
|
||||
PUSH HL
|
||||
SETPORT WINSP.CPU3,,0
|
||||
SPDSS DSSF.SCANKEY
|
||||
@ -342,8 +340,8 @@ ReadLp1 INC HL
|
||||
OR A
|
||||
SBC HL,DE
|
||||
JP Z,CopyBreak
|
||||
LD HL,(ReadBytes)
|
||||
LD DE,(ReadBytes + 2)
|
||||
LD HL,(COPY.CurrReadBytes)
|
||||
LD DE,(COPY.CurrReadBytes + 2)
|
||||
LD BC,0x4000
|
||||
OR A
|
||||
SBC HL,BC
|
||||
@ -351,40 +349,40 @@ ReadLp1 INC HL
|
||||
EX DE,HL
|
||||
SBC HL,BC
|
||||
EX DE,HL
|
||||
JR C,ReadEnd
|
||||
LD (ReadBytes),HL
|
||||
LD (ReadBytes + 2),DE
|
||||
JR C,.ReadEnd
|
||||
LD (COPY.CurrReadBytes),HL
|
||||
LD (COPY.CurrReadBytes + 2),DE
|
||||
LD HL,0xC000
|
||||
LD DE,0x4000
|
||||
LD A,(FHandleSrc)
|
||||
LD A,(COPY.FHandleSrc)
|
||||
SPDSS DSSF.READ
|
||||
CALL NextProcess
|
||||
POP HL
|
||||
LD A,(HL)
|
||||
CP 0xFF
|
||||
JR NZ,ReadLp1
|
||||
JR NZ,.ReadLp1
|
||||
POP AF
|
||||
SETPORT WINSP.CPU3,,0
|
||||
JR WriteFile
|
||||
JR .WriteFile
|
||||
|
||||
; !FIXIT ᤥ« âì â ª:
|
||||
ReadEnd: LD HL,0xC000
|
||||
LD DE,(ReadBytes)
|
||||
.ReadEnd: LD HL,0xC000
|
||||
LD DE,(COPY.CurrReadBytes)
|
||||
LD A,D
|
||||
OR E
|
||||
JR Z,.L1
|
||||
LD A,(FHandleSrc)
|
||||
JR Z,.L3
|
||||
LD A,(COPY.FHandleSrc)
|
||||
SPDSS DSSF.READ
|
||||
CALL NextProcess
|
||||
.L1 POP HL
|
||||
.L3 POP HL
|
||||
POP AF
|
||||
SETPORT WINSP.CPU3,,0
|
||||
WriteFile
|
||||
.WriteFile
|
||||
GETPORT WINSP.CPU3
|
||||
PUSH AF
|
||||
LD HL,PagesList
|
||||
LD A,(HL)
|
||||
WriteL1 INC HL
|
||||
.WriteL1 INC HL
|
||||
PUSH HL
|
||||
SETPORT WINSP.CPU3,,0
|
||||
SPDSS DSSF.SCANKEY
|
||||
@ -392,8 +390,8 @@ WriteL1 INC HL
|
||||
OR A
|
||||
SBC HL,DE
|
||||
JP Z,CopyBreak
|
||||
LD HL,(WriteBytes)
|
||||
LD DE,(WriteBytes + 2)
|
||||
LD HL,(COPY.CurrWriteBytes)
|
||||
LD DE,(COPY.CurrWriteBytes + 2)
|
||||
LD BC,0x4000
|
||||
OR A
|
||||
SBC HL,BC
|
||||
@ -401,98 +399,114 @@ WriteL1 INC HL
|
||||
EX DE,HL
|
||||
SBC HL,BC
|
||||
EX DE,HL
|
||||
JR C,WriteEnd
|
||||
LD (WriteBytes),HL
|
||||
LD (WriteBytes + 2),DE
|
||||
JR C,.WriteEnd
|
||||
LD (COPY.CurrWriteBytes),HL
|
||||
LD (COPY.CurrWriteBytes + 2),DE
|
||||
LD HL,0xC000
|
||||
LD DE,0x4000
|
||||
LD A,(FHandleDst)
|
||||
LD A,(COPY.FHandleDst)
|
||||
SPDSS DSSF.WRITE
|
||||
JP C,CopyError3
|
||||
CALL NextProcess
|
||||
POP HL
|
||||
LD A,(HL)
|
||||
CP 0xFF
|
||||
JR NZ,WriteL1
|
||||
JR NZ,.WriteL1
|
||||
POP AF
|
||||
SETPORT WINSP.CPU3,,0
|
||||
LD HL,(ReadBytes)
|
||||
LD HL,(COPY.CurrReadBytes)
|
||||
LD A,H
|
||||
OR L
|
||||
LD HL,(ReadBytes + 2)
|
||||
LD HL,(COPY.CurrReadBytes + 2)
|
||||
OR H
|
||||
OR L
|
||||
JR Z,CloseFiles
|
||||
JP ReadFile
|
||||
JR Z,.CloseFiles
|
||||
JP .ReadFile
|
||||
|
||||
; !FIXIT ᤥ« âì â ª:
|
||||
WriteEnd: LD HL,0xC000
|
||||
LD DE,(WriteBytes)
|
||||
.WriteEnd: LD HL,0xC000
|
||||
LD DE,(COPY.CurrWriteBytes)
|
||||
LD A,D
|
||||
OR E
|
||||
JR Z,.L1
|
||||
LD A,(FHandleDst)
|
||||
JR Z,.L4
|
||||
LD A,(COPY.FHandleDst)
|
||||
SPDSS DSSF.WRITE
|
||||
JP C,CopyError3
|
||||
CALL NextProcess
|
||||
.L1 POP HL
|
||||
.L4 POP HL
|
||||
POP AF
|
||||
SETPORT WINSP.CPU3,,0
|
||||
CloseFiles LD A,(FHandleSrc)
|
||||
.CloseFiles LD A,(COPY.FHandleSrc)
|
||||
SPDSS DSSF.GET_D_T
|
||||
LD A,(FHandleDst)
|
||||
LD A,(COPY.FHandleDst)
|
||||
SPDSS DSSF.PUT_D_T
|
||||
LD A,(FHandleDst)
|
||||
LD A,(COPY.FHandleDst)
|
||||
SPDSS DSSF.CLOSE
|
||||
CloseFile1 LD A,(FHandleSrc)
|
||||
.CloseFile1 LD A,(COPY.FHandleSrc)
|
||||
SPDSS DSSF.CLOSE
|
||||
LD A,(MemID)
|
||||
LD A,(COPY.MemID)
|
||||
SPDSS DSSF.FREEMEM
|
||||
LD IX,(AdrCopyFile)
|
||||
LD IX,(COPY.PathCurrFile)
|
||||
RES FileHDR.B_MARK,(IX + FileHDR.Flag)
|
||||
LD HL,(CopyBytes)
|
||||
LD HL,(COPY.CopyBytes)
|
||||
LD E,(IX + FileHDR.SizeBytes)
|
||||
LD D,(IX + FileHDR.SizeBytes + 1)
|
||||
OR A
|
||||
SBC HL,DE
|
||||
LD (CopyBytes),HL
|
||||
LD HL,(CopyBytes+2)
|
||||
LD (COPY.CopyBytes),HL
|
||||
LD HL,(COPY.CopyBytes+2)
|
||||
LD E,(IX + FileHDR.SizeBytes + 2)
|
||||
LD D,(IX + FileHDR.SizeBytes + 3)
|
||||
SBC HL,DE
|
||||
LD (CopyBytes+2),HL
|
||||
LD HL,(CopyFiles)
|
||||
LD (COPY.CopyBytes+2),HL
|
||||
LD HL,(COPY.CopyFiles)
|
||||
LD A,H
|
||||
OR L
|
||||
JR Z,CopyEnd
|
||||
JR Z,CopyEnd ; ä ©«ë ª®ç¨«¨áì?
|
||||
DEC HL
|
||||
LD (CopyFiles),HL
|
||||
LD (COPY.CopyFiles),HL
|
||||
LD A,H
|
||||
OR L
|
||||
JR Z,CopyEnd
|
||||
LD HL,(AdrCopyFile)
|
||||
JR Z,CopyEnd ; ä ©«ë ª®ç¨«¨áì?
|
||||
LD HL,(COPY.PathCurrFile)
|
||||
LD DE,FileHDR.SIZE
|
||||
.L1 ADD HL,DE
|
||||
BIT FileHDR.B_MARK,(HL)
|
||||
JR Z,.L1
|
||||
LD (AdrCopyFile),HL
|
||||
.L5 ADD HL,DE ; á«¥¤ãî騩 ®¯¨á ⥫ì
|
||||
IF MARK_DIR
|
||||
LD A,(.FLAG_DIRCOPY)
|
||||
AND A ; ª®¯¨à㥬 ⮫쪮 ä ©«ë?
|
||||
JR Z,.L6
|
||||
; ¨§-§ ª®¯¨à®¢ ¨ï ¤¨à¥ªâ®à¨© ä ©«ë ª®¯¨à㥬 ¢á¥
|
||||
INC HL
|
||||
LD A,(HL)
|
||||
AND A
|
||||
JR NZ,.L7 ; ä ©«ë ¢ ¤¨à¥ ¥é¥ ¥ ª®ç¨«¨áì
|
||||
; ä ©«ë ¢ ¤¨à¥ ª®ç¨«¨áì, ᬮâà¥âì ®á⠢訥áï ¤¨àë ¢ ᯨ᪥
|
||||
CALL RESIDENT.CopyDir
|
||||
ENDIF
|
||||
|
||||
.L6 BIT FileHDR.B_MARK,(HL)
|
||||
JR Z,.L5
|
||||
.L7 LD (COPY.PathCurrFile),HL
|
||||
JP CopyNextFile
|
||||
|
||||
.FLAG_DIRCOPY DB 0
|
||||
|
||||
; § ¢¥à襨¥ ª®¯¨à®¢ ¨ï
|
||||
CopyEnd POP AF
|
||||
SETPORT WINSP.CPU3,,0
|
||||
POP IY
|
||||
WINDOWCLOSE
|
||||
LD HL,(CopyFiles)
|
||||
LD HL,(COPY.CopyFiles)
|
||||
LD (IY + PANEL.FILES_MARK),L
|
||||
LD (IY + PANEL.FILES_MARK + 1),H
|
||||
LD HL,(CopyBytes)
|
||||
LD HL,(COPY.CopyBytes)
|
||||
LD (IY + PANEL.BYTES_MARK),L
|
||||
LD (IY + PANEL.BYTES_MARK + 1),H
|
||||
LD HL,(CopyBytes + 2)
|
||||
LD HL,(COPY.CopyBytes + 2)
|
||||
LD (IY + PANEL.BYTES_MARK + 2),L
|
||||
LD (IY + PANEL.BYTES_MARK + 3),H
|
||||
; [ ] fat32
|
||||
LD A,(CopyBytes + 4)
|
||||
LD A,(COPY.CopyBytes + 4)
|
||||
LD (IY + PANEL.BYTES_MARK_H),A
|
||||
PUSH IY
|
||||
BIT PANELFLAG.B_SIDE,(IY + PANEL.PANELFLAG)
|
||||
@ -529,16 +543,16 @@ CopyError3: ;
|
||||
PUSH AF
|
||||
LD A,D
|
||||
SETPORT WINSP.CPU3,,0
|
||||
LD A,(FHandleDst)
|
||||
LD A,(COPY.FHandleDst)
|
||||
SPDSS DSSF.CLOSE
|
||||
CALL CopyErrorFileDelete
|
||||
POP AF
|
||||
CopyError2 PUSH AF
|
||||
LD A,(FHandleSrc)
|
||||
LD A,(COPY.FHandleSrc)
|
||||
SPDSS DSSF.CLOSE
|
||||
POP AF
|
||||
CopyError1 PUSH AF
|
||||
LD A,(MemID)
|
||||
LD A,(COPY.MemID)
|
||||
SPDSS DSSF.FREEMEM
|
||||
POP AF
|
||||
CALL DOSError
|
||||
@ -547,18 +561,18 @@ CopyError1 PUSH AF
|
||||
CopyBreak POP HL
|
||||
POP AF
|
||||
SETPORT WINSP.CPU3,,0
|
||||
LD A,(FHandleDst)
|
||||
LD A,(COPY.FHandleDst)
|
||||
SPDSS DSSF.CLOSE
|
||||
LD A,(FHandleSrc)
|
||||
LD A,(COPY.FHandleSrc)
|
||||
SPDSS DSSF.CLOSE
|
||||
LD A,(MemID)
|
||||
LD A,(COPY.MemID)
|
||||
SPDSS DSSF.FREEMEM
|
||||
CALL CopyErrorFileDelete
|
||||
JP CopyEnd
|
||||
|
||||
CopyErrorFileDelete:
|
||||
LD IX,(AdrCopyFile)
|
||||
LD HL,(AdrCopyFile)
|
||||
LD IX,(COPY.PathCurrFile)
|
||||
LD HL,(COPY.PathCurrFile)
|
||||
INC HL
|
||||
LD DE,WorkBuffer
|
||||
PUSH DE
|
||||
@ -586,7 +600,7 @@ OverWrite CALL PointerMousePointer
|
||||
W_BUTTON 208,38,56,14
|
||||
W_TEXT 220,41,COLORP.HIGHGRAY,"Cancel"
|
||||
W_END
|
||||
LD HL,(CopyDst)
|
||||
LD HL,(COPY.PathDst)
|
||||
LD DE,WorkBuffer
|
||||
SUB A
|
||||
.L1 LDI
|
||||
@ -598,7 +612,7 @@ OverWrite CALL PointerMousePointer
|
||||
JR Z,.L2
|
||||
LD (DE),A
|
||||
INC DE
|
||||
.L2 LD HL,(AdrCopyFile)
|
||||
.L2 LD HL,(COPY.PathCurrFile)
|
||||
INC HL
|
||||
CALL MakeDOSname
|
||||
LD IX,0x00F8
|
||||
@ -607,7 +621,7 @@ OverWrite CALL PointerMousePointer
|
||||
LD BC,114
|
||||
LD A,COLORP.HIGHGRAY + COLORI.BLACK
|
||||
CALL PrintPathCentr
|
||||
OvWrtLp LD IX,OverWrtTab
|
||||
OvWrtLp LD IX,REZ2TAB.OverWrtTab
|
||||
CALL CheckCoordsMouse
|
||||
SPDSS DSSF.SCANKEY
|
||||
JR Z,OvWrtLp
|
||||
@ -639,10 +653,10 @@ OvrJump
|
||||
JP (HL)
|
||||
|
||||
OverWrtAll LD A,0x01
|
||||
LD (OverWriteFlg),A
|
||||
LD (COPY.OverWriteFlg),A
|
||||
OverWrtFile CALL PointerMouseClock
|
||||
LD IX,(AdrCopyFile)
|
||||
LD HL,(AdrCopyFile)
|
||||
LD IX,(COPY.PathCurrFile)
|
||||
LD HL,(COPY.PathCurrFile)
|
||||
INC HL
|
||||
LD DE,WorkBuffer
|
||||
PUSH DE
|
||||
@ -653,7 +667,7 @@ OverWrtFile CALL PointerMouseClock
|
||||
RET
|
||||
|
||||
OverSkip CALL PointerMouseClock
|
||||
LD IX,(AdrCopyFile)
|
||||
LD IX,(COPY.PathCurrFile)
|
||||
LD L,(IX + FileHDR.SizeBytes)
|
||||
LD H,(IX + FileHDR.SizeBytes + 1)
|
||||
LD E,(IX + FileHDR.SizeBytes + 2)
|
||||
@ -676,41 +690,42 @@ OverSkip CALL PointerMouseClock
|
||||
LD (IX + PROGRESSBAR.CURR_PAGE + 2),L
|
||||
LD (IX + PROGRESSBAR.CURR_PAGE + 3),H
|
||||
CALL DrawProgressBar
|
||||
LD HL,CloseFile1
|
||||
LD HL,CopyNextFile.CloseFile1
|
||||
EX (SP),HL
|
||||
RET
|
||||
|
||||
OverExit INC SP
|
||||
INC SP
|
||||
LD IX,(AdrCopyFile)
|
||||
LD IX,(COPY.PathCurrFile)
|
||||
BIT FileHDR.B_MARK,(IX + FileHDR.Flag)
|
||||
JP Z,CloseFile1
|
||||
LD A,(FHandleSrc)
|
||||
JP Z,CopyNextFile.CloseFile1
|
||||
LD A,(COPY.FHandleSrc)
|
||||
SPDSS DSSF.CLOSE
|
||||
LD A,(MemID)
|
||||
LD A,(COPY.MemID)
|
||||
SPDSS DSSF.FREEMEM
|
||||
POP IY
|
||||
JP CopyEnd
|
||||
|
||||
;--------------------------------------------------------------
|
||||
AdrCopyFile DW 0x0000 ; €¤à¥á ®¯¨á ⥫ï ⥪ã饣® ä ©« /¤¨àë
|
||||
CopySrc DW 0x0000 ; €¤à¥á ¯ã⨠®âªã¤
|
||||
CopyDst DW 0x0000 ; €¤à¥á ¯ã⨠ªã¤
|
||||
CopyFiles DW 0x0000 ; Š®«¨ç¥á⢮ ª®¯¨à㥬ëå ä ©«®¢
|
||||
CopyBytes DB 5 DUP 0 ; Š®«¨ç¥á⢮ ª®¯¨à㥬ëå ¡ ©â®¢
|
||||
OverWriteFlg DB 0x00 ; ”« £ ¯¥à¥§ ¯¨á¨ ä ©«®¢
|
||||
FreeBanks DW 0x0000 ; Š®«¨ç¥á⢮ ᢮¡®¤ëå ¡ ª®¢
|
||||
ReadBytes DD 0 ; „«¨ ç¨â ¥¬®£® ä ©«
|
||||
WriteBytes DD 0 ; „«¨ § ¯¨áë¢ ¥¬®£® ä ©«
|
||||
FHandleSrc DB 0x00 ; ” ©« ¨áâ®ç¨ª
|
||||
FHandleDst DB 0x00 ; ” ©« ¯à¨¥¬¨ª
|
||||
MemID DB 0x00 ; ˆ¤¥ä¨ª.¯ ¬ï⨠¯®¤ ª®¯¨à®¢ ¨¥
|
||||
COPY
|
||||
.PathCurrFile DW 0 ; €¤à¥á ®¯¨á ⥫ï ⥪ã饣® ä ©« /¤¨àë
|
||||
.PathSrc DW 0 ; €¤à¥á ¯ã⨠¨áâ®ç¨ª
|
||||
.PathDst DW 0 ; €¤à¥á ¯ã⨠¯à¨¥¬¨ª
|
||||
.CopyFiles DW 0 ; Š®«¨ç¥á⢮ ª®¯¨à㥬ëå ä ©«®¢
|
||||
.CopyBytes DB 5 DUP 0 ; Š®«¨ç¥á⢮ ª®¯¨à㥬ëå ¡ ©â®¢
|
||||
.OverWriteFlg DB 0 ; ”« £ ¯¥à¥§ ¯¨á¨ ä ©«®¢
|
||||
.FreeBanks DW 0 ; Š®«¨ç¥á⢮ ᢮¡®¤ëå ¡ ª®¢
|
||||
.CurrReadBytes DD 0 ; „«¨ ç¨â ¥¬®£® ä ©«
|
||||
.CurrWriteBytes DD 0 ; „«¨ § ¯¨áë¢ ¥¬®£® ä ©«
|
||||
.FHandleSrc DB 0 ; ” ©« ¨áâ®ç¨ª
|
||||
.FHandleDst DB 0 ; ” ©« ¯à¨¥¬¨ª
|
||||
.MemID DB 0 ; ˆ¤¥â¨ä¨ª â®à ¯ ¬ï⨠¯®¤ ª®¯¨à®¢ ¨¥
|
||||
;--------------------------------------------------------------
|
||||
|
||||
; <20> ¢å®¤¥:
|
||||
; DEHL - ª®«¨ç¥á⢮ ¡ ©â
|
||||
; <20> ¢ë室¥:
|
||||
; HL - ª®«¨ç¥á⢮ áâà ¨æ
|
||||
; HL - ª®«¨ç¥á⢮ áâà ¨æ 4294967295=FFFFFFFF
|
||||
; 1028975 FB36F
|
||||
; 231 E7 1
|
||||
; 59232 E760 4
|
||||
@ -720,20 +735,21 @@ MemID DB 0x00 ;
|
||||
; 12652 316C 1
|
||||
; 14119 3727 1
|
||||
; 12546 3102 1
|
||||
; DEHL -> (((DEHL / 100) * 4) / 0x100) + ((L != 0) ? DE++ : DE)
|
||||
ConvBytes2Pages:
|
||||
LD A,H
|
||||
LD H,L
|
||||
LD L,0x00
|
||||
SLA A
|
||||
LD L,0
|
||||
ADD A,A
|
||||
RL E
|
||||
RL D
|
||||
RL L ; LDEA * 2
|
||||
SLA A
|
||||
RL L
|
||||
ADD A,A
|
||||
RL E
|
||||
RL D
|
||||
RL L ; LDEA * 2
|
||||
RL L
|
||||
OR H
|
||||
LD H,0x00
|
||||
LD H,0
|
||||
EX DE,HL
|
||||
JR Z,.L1
|
||||
INC HL
|
||||
@ -743,7 +759,7 @@ ConvBytes2Pages:
|
||||
INC DE
|
||||
RET
|
||||
|
||||
PrnFromTo LD HL,(CopySrc)
|
||||
PrintSrcDst LD HL,(COPY.PathSrc)
|
||||
LD DE,WorkBuffer
|
||||
SUB A
|
||||
.L1 LDI
|
||||
@ -755,10 +771,10 @@ PrnFromTo LD HL,(CopySrc)
|
||||
JR Z,.L2
|
||||
LD (DE),A
|
||||
INC DE
|
||||
.L2 LD HL,(AdrCopyFile)
|
||||
.L2 LD HL,(COPY.PathCurrFile)
|
||||
INC HL
|
||||
CALL MakeDOSname
|
||||
LD HL,(CopyDst)
|
||||
LD HL,(COPY.PathDst)
|
||||
LD DE,WorkBuffer+0x100
|
||||
SUB A
|
||||
.L3 LDI
|
||||
@ -770,7 +786,7 @@ PrnFromTo LD HL,(CopySrc)
|
||||
JR Z,.L4
|
||||
LD (DE),A
|
||||
INC DE
|
||||
.L4 LD HL,(AdrCopyFile)
|
||||
.L4 LD HL,(COPY.PathCurrFile)
|
||||
INC HL
|
||||
CALL MakeDOSname
|
||||
MAKEWINDOW WINSUBOBJ.WOBIND
|
||||
@ -783,7 +799,7 @@ PrnFromTo LD HL,(CopySrc)
|
||||
LD A,COLORP.HIGHGRAY + COLORI.BLACK
|
||||
CALL PrintPathLeft
|
||||
LD IX,0x0100
|
||||
LD HL,WorkBuffer+0x100
|
||||
LD HL,WorkBuffer + 0x100
|
||||
LD DE,204
|
||||
LD BC,107
|
||||
LD A,COLORP.HIGHGRAY + COLORI.BLACK
|
||||
@ -957,7 +973,7 @@ RNfile EQU $ - STRLEN(" ") - 2
|
||||
W_FILL 62,27,130,10,COLORI.WHITE
|
||||
W_END
|
||||
LD IX,NameStr
|
||||
LD HL,ReNameTab
|
||||
LD HL,REZ2TAB.ReNameTab
|
||||
CALL InputLine
|
||||
WINDOWCLOSE
|
||||
RET C
|
||||
@ -1379,7 +1395,7 @@ MakeDIRR CALL ResInvert
|
||||
W_FILL 88,23,130,10,COLORI.WHITE
|
||||
W_END
|
||||
LD IX,MakeDIRStr
|
||||
LD HL,MakeDIRTab
|
||||
LD HL,REZ2TAB.MakeDIRTab
|
||||
CALL InputLine
|
||||
WINDOWCLOSE
|
||||
RET C
|
||||
@ -1824,7 +1840,7 @@ DelLp0 LD IX,0x00F8
|
||||
LD BC,106
|
||||
LD A,COLORP.HIGHGRAY + COLORI.BLACK
|
||||
CALL PrintPathCentr
|
||||
DelLoop LD IX,DeleteTab
|
||||
DelLoop LD IX,REZ2TAB.DeleteTab
|
||||
CALL CheckCoordsMouse
|
||||
SPDSS DSSF.SCANKEY
|
||||
JR Z,DelLoop
|
||||
@ -2417,7 +2433,7 @@ QuitConfirmWin
|
||||
W_BUTTON 120,32,72,14
|
||||
W_TEXT 150,35,COLORP.HIGHGRAY,"No"
|
||||
W_END
|
||||
.Loop LD IX,QuitTab
|
||||
.Loop LD IX,REZ2TAB.QuitTab
|
||||
CALL CheckCoordsMouse
|
||||
SPDSS DSSF.SCANKEY
|
||||
JR Z,.Loop
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
|
||||
; LAST UPDATE: 01.08.2025 savelij
|
||||
; LAST UPDATE: 14.08.2025 savelij
|
||||
|
||||
;[]==========================================================[]
|
||||
; ”®à¬ â â ¡«¨æë
|
||||
@ -30,8 +30,9 @@
|
||||
; +0C 2 €¤à¥á ®¡à ¡®â稪 ¯à¨ ¦ ⮬ ®£¥ («¥¢)
|
||||
; +0E 2 €¤à¥á ®¡à ¡®â稪 ¯à¨ ¦ ⮬ ®£¥ (¯à ¢)
|
||||
|
||||
REZ2TAB
|
||||
;[]==========================================================[]
|
||||
SetupTab: DW 106,246, 85,133,%0000000000000000,0,NewElement,0
|
||||
.SetupTab: DW 106,246, 85,133,%0000000000000000,0,NewElement,0
|
||||
DW 114,130,146,155,%0000000000000000,0,ChActivatePan,0
|
||||
DW 114,130,164,173,%0000000000000000,0,ChSavePan,0
|
||||
DW 274,290, 87, 95,%0000000000000011,0,DecRED,0
|
||||
@ -53,43 +54,7 @@ SetupTab: DW 106,246, 85,133,%0000000000000000,0,NewElement,0
|
||||
DW 0x8000
|
||||
|
||||
;[]===============================================================[]
|
||||
FileInfoTab: DW 284,356,160,174,%0000000000100001,0,FileInfoExt,0
|
||||
DW 0,240, 0,256,%0000000000100000,0,FileInfoExt,0
|
||||
DW 400,640, 0,256,%0000000000100000,0,FileInfoExt,0
|
||||
DW 0,640, 0, 80,%0000000000100000,0,FileInfoExt,0
|
||||
DW 0,640,178,256,%0000000000100000,0,FileInfoExt,0
|
||||
DW 0x8000
|
||||
|
||||
;[]===============================================================[]
|
||||
PrintFTab: DW 284,356,128,142,%0000000000000001,0,StopPrint,0
|
||||
DW 0x8000
|
||||
|
||||
;[]===============================================================[]
|
||||
SysInfoTab: DW 284,356,160,174,%0000000000100001,0,SysInfoExt,0
|
||||
DW 0,224, 0,256,%0000000000100000,0,SysInfoExt,0
|
||||
DW 416,640, 0,256,%0000000000100000,0,SysInfoExt,0
|
||||
DW 0,640, 0, 64,%0000000000100000,0,SysInfoExt,0
|
||||
DW 0,640,178,256,%0000000000100000,0,SysInfoExt,0
|
||||
DW 0x8000
|
||||
|
||||
;[]===============================================================[]
|
||||
DiskInfoTab: DW 284,356,160,174,%0000000000100001,0,DiskInfoR.Ext,0
|
||||
DW 0,192, 0,256,%0000000000100000,0,DiskInfoR.Ext,0
|
||||
DW 448,640, 0,256,%0000000000100000,0,DiskInfoR.Ext,0
|
||||
DW 0,640, 0, 80,%0000000000100000,0,DiskInfoR.Ext,0
|
||||
DW 0,640,178,256,%0000000000100000,0,DiskInfoR.Ext,0
|
||||
DW 0x8000
|
||||
|
||||
;[]===============================================================[]
|
||||
VersionTab: DW 284,356,157,171,%0000000000100001,0,VersionExt,0
|
||||
DW 0,192, 0,256,%0000000000100000,0,VersionExt,0
|
||||
DW 448,640, 0,256,%0000000000100000,0,VersionExt,0
|
||||
DW 0,640, 0, 64,%0000000000100000,0,VersionExt,0
|
||||
DW 0,640,176,256,%0000000000100000,0,VersionExt,0
|
||||
DW 0x8000
|
||||
|
||||
;[]===============================================================[]
|
||||
PathTab: DW 240,312,123,137,%0000000000000001,0,InputLine.InputLineExitOk,0
|
||||
.PathTab: DW 240,312,123,137,%0000000000000001,0,InputLine.InputLineExitOk,0
|
||||
DW 328,400,123,137,%0000000000000001,0,InputLine.InputLineExitCancel,0
|
||||
DW 0, 96, 0,256,%0000000000000000,0,InputLine.InputLineExitCancel,0
|
||||
DW 544,640, 0,256,%0000000000000000,0,InputLine.InputLineExitCancel,0
|
||||
@ -98,7 +63,7 @@ PathTab: DW 240,312,123,137,%0000000000000001,0,InputLine.InputLineExitOk,0
|
||||
DW 0x8000
|
||||
|
||||
;[]===============================================================[]
|
||||
OverWrtTab: DW 196,252,126,140,%0000000100100001,0,OverWrtFile,0
|
||||
.OverWrtTab: DW 196,252,126,140,%0000000100100001,0,OverWrtFile,0
|
||||
DW 260,316,126,140,%0000000100100001,0,OverWrtAll,0
|
||||
DW 324,380,126,140,%0000000100100001,0,OverSkip,0
|
||||
DW 388,444,126,140,%0000000100100001,0,OverExit,0
|
||||
@ -109,7 +74,7 @@ OverWrtTab: DW 196,252,126,140,%0000000100100001,0,OverWrtFile,0
|
||||
DW 0x8001
|
||||
|
||||
;[]===============================================================[]
|
||||
ReNameTab: DW 240,312,123,137,%0000000000000001,0,InputLine.InputLineExitOk,0
|
||||
.ReNameTab: DW 240,312,123,137,%0000000000000001,0,InputLine.InputLineExitOk,0
|
||||
DW 328,400,123,137,%0000000000000001,0,InputLine.InputLineExitCancel,0
|
||||
DW 0,208, 0,256,%0000000000000000,0,InputLine.InputLineExitCancel,0
|
||||
DW 432,640, 0,256,%0000000000000000,0,InputLine.InputLineExitCancel,0
|
||||
@ -118,7 +83,7 @@ ReNameTab: DW 240,312,123,137,%0000000000000001,0,InputLine.InputLineExitOk,0
|
||||
DW 0x8000
|
||||
|
||||
;[]===============================================================[]
|
||||
MakeDIRTab: DW 240,312,123,137,%0000000000000001,0,InputLine.InputLineExitOk,0
|
||||
.MakeDIRTab: DW 240,312,123,137,%0000000000000001,0,InputLine.InputLineExitOk,0
|
||||
DW 328,400,123,137,%0000000000000001,0,InputLine.InputLineExitCancel,0
|
||||
DW 0,200, 0,256,%0000000000000000,0,InputLine.InputLineExitCancel,0
|
||||
DW 440,640, 0,256,%0000000000000000,0,InputLine.InputLineExitCancel,0
|
||||
@ -127,7 +92,7 @@ MakeDIRTab: DW 240,312,123,137,%0000000000000001,0,InputLine.InputLineExitOk,0
|
||||
DW 0x8000
|
||||
|
||||
;[]===============================================================[]
|
||||
DeleteTab: DW 196,252,118,132,%0000000100100001,0,DelDelete,0
|
||||
.DeleteTab: DW 196,252,118,132,%0000000100100001,0,DelDelete,0
|
||||
DW 260,316,118,132,%0000000100100001,0,DelAll,0
|
||||
DW 324,380,118,132,%0000000100100001,0,DelSkip,0
|
||||
DW 388,444,118,132,%0000000100100001,0,DelExit,0
|
||||
@ -138,7 +103,7 @@ DeleteTab: DW 196,252,118,132,%0000000100100001,0,DelDelete,0
|
||||
DW 0x8000
|
||||
|
||||
;[]===============================================================[]
|
||||
QuitTab:
|
||||
.QuitTab:
|
||||
DW 240,312,120,134,%0000000000100001,0,QuitConfirmWin.OK,0
|
||||
DW 328,400,120,134,%0000000000100001,0,QuitConfirmWin.Abort,0
|
||||
DW 0,208, 0,256,%0000000000100000,0,QuitConfirmWin.Abort,0
|
||||
@ -147,5 +112,5 @@ QuitTab:
|
||||
DW 0,640,138,256,%0000000000100000,0,QuitConfirmWin.Abort,0
|
||||
DW 0x8000
|
||||
|
||||
EmptyTab: DW 0,640, 0,256,%0000000000000000,0,InputLine.InputLineExitCancel,0
|
||||
.EmptyTab: DW 0,640, 0,256,%0000000000000000,0,InputLine.InputLineExitCancel,0
|
||||
DW 0x8000
|
||||
368
rez3_fnmark.a80
368
rez3_fnmark.a80
@ -1,5 +1,5 @@
|
||||
|
||||
; LAST UPDATE: 01.08.2025 savelij
|
||||
; LAST UPDATE: 14.08.2025 savelij
|
||||
|
||||
;[]==========================================================[]
|
||||
MarkFileR LD A,(IY+PANEL.FILES_ALL)
|
||||
@ -260,7 +260,7 @@ SelectGroup: LD (SelMode),A
|
||||
W_FILL 72,23,130,10,COLORI.WHITE
|
||||
W_END
|
||||
LD IX,SMaskStr
|
||||
LD HL,SMaskTab
|
||||
LD HL,REZ3TAB.SMaskTab
|
||||
CALL InputLine
|
||||
WINDOWCLOSE
|
||||
RET C
|
||||
@ -680,20 +680,102 @@ SUB_SIZE: EX AF,AF' ; [ ] fat32
|
||||
RET
|
||||
|
||||
IF MARK_DIR
|
||||
; ¯®¤áç¥â ¢ ¡ ©â å à §¬¥à ®â¬¥ç¥®© ¤¨à¥ªâ®à¨¨
|
||||
; HL - ¤à¥á ®¯¨á â¥«ï ¤¨àë ¢ áâà ¨æ¥ ¯ ¥«¨ ª®â®àãî ¬¥àïâì
|
||||
CountingDirR
|
||||
BUF_MARKDIR
|
||||
.FILES_MASK DZ "*.*" ; ¬ áª ä ©«®¢
|
||||
.RET_DIR DZ ".. " ; ¤«ï ¢ë室 ¨§ ¤¨à¥ªâ®à¨¨
|
||||
.DIR_NAME DZ " " ; ¨¬ï ⥪ã饩 ¤¨à¥ªâ®à¨¨
|
||||
|
||||
.OLDPATH EQU WorkBuffer + 0x300 ; á®åà ¥ë© â¥ªã騩 ¯ãâì
|
||||
.CURRPATH EQU WorkBuffer + 0x200 ; ¢à¥¬¥®© ⥪ã騩 ¯ãâì
|
||||
; ª®¯¨à®¢ ¨¥ ¤¨à¥ªâ®à¨¨
|
||||
CopyDirR PUSH IX
|
||||
PUSH IY
|
||||
GETPORT WINSP.CPU3
|
||||
PUSH AF
|
||||
LD A,(RAMPAGES.FLX)
|
||||
SETPORT WINSP.CPU3,,0
|
||||
|
||||
.EXIT POP AF
|
||||
SETPORT WINSP.CPU3,,0
|
||||
POP IY
|
||||
POP IX
|
||||
RET
|
||||
|
||||
; ¤®¡ ¢«¥¨¥ ¨¬¥¨ ¤¨à¥ªâ®à¨¨ ¢ ᯨ᮪ ¨/¨«¨ ¢å®¤/¢ë室
|
||||
Add2ListDirR
|
||||
PUSH IX
|
||||
PUSH IY
|
||||
PUSH HL
|
||||
PUSH BC
|
||||
GETPORT WINSP.CPU3
|
||||
PUSH AF
|
||||
LD A,(RAMPAGES.FLX)
|
||||
SETPORT WINSP.CPU3,,0
|
||||
PUSH IX
|
||||
POP DE
|
||||
LD HL,FileHDR.Name
|
||||
ADD HL,DE ; ᬥ饨¥ ¤® ¨¬¥¨ ¢ ®¯¨á ⥫¥
|
||||
LD DE,BUF_MARKDIR.DIR_NAME
|
||||
PUSH DE
|
||||
LD BC,FileHDR.Name_Size
|
||||
LDIR ; § ¡à «¨ ¨¬ï ¤¨àë
|
||||
EX DE,HL
|
||||
CALL .CUTOFFSPACES ; ®âá¥ç¥¨¥ ¯à®¡¥«®¢
|
||||
|
||||
; ¢ë室
|
||||
.EXIT POP AF
|
||||
SETPORT WINSP.CPU3,,0
|
||||
POP IY
|
||||
POP IX
|
||||
RET
|
||||
|
||||
; ®âá¥ç¥¨¥ ¯à®¡¥«®¢ ¢ ¨¬¥¨
|
||||
.CUTOFFSPACES LD A,' '
|
||||
.COS2 DEC HL
|
||||
CP (HL)
|
||||
JR Z,.COS2
|
||||
INC HL
|
||||
LD (HL),0
|
||||
RET
|
||||
|
||||
; ¤®¡ ¢«¥¨¥ ¨¬¥¨ ¤¨àë ".." ¤«ï ¢ë室 ¢ ¯à¥¤ë¤ãéãî ¤¨àã
|
||||
.ADD_2DOT PUSH HL
|
||||
LD HL,BUF_MARKDIR.RET_DIR
|
||||
LD DE,(BUFFERS.CURR_DIRNAME)
|
||||
LD BC,FFIRST.Name_Size
|
||||
LDIR
|
||||
LD (BUFFERS.CURR_DIRNAME),DE
|
||||
POP HL
|
||||
RET
|
||||
|
||||
; ¤®¡ ¢«¥¨¥ ¨¬¥¨ ¢ áâப㠯ãâ¨
|
||||
; HL - ªã¤ ¤®¡ ¢«ïâì (墮áâ ⥪ã饣® ¯ãâ¨)
|
||||
; DE - ®âªã¤ ¨¬ï ¡à âì
|
||||
.ADDNAME2PATH CALL .CHECK_BSLASH
|
||||
LD (HL),'\\'
|
||||
INC HL
|
||||
EX DE,HL
|
||||
; ª®¯¨à®¢ ¨¥ ¨¬¥¨ ¨§ ¡ãä¥à
|
||||
.COPYNAME2PATH XOR A
|
||||
.CNP2 CP (HL)
|
||||
JR Z,.CNP1
|
||||
LDI
|
||||
JR .CNP2
|
||||
|
||||
.CNP1 LD (DE),A
|
||||
RET
|
||||
|
||||
; ¯à®¢¥àª BACKSLASH
|
||||
.CHECK_BSLASH DEC HL
|
||||
LD A,(HL)
|
||||
CP '\\'
|
||||
RET Z
|
||||
INC HL
|
||||
RET
|
||||
|
||||
; ¯®¤áç¥â ¢ ¡ ©â å à §¬¥à ®â¬¥ç¥®© ¤¨à¥ªâ®à¨¨
|
||||
; IX - ¤à¥á ®¯¨á â¥«ï ¤¨àë ¢ áâà ¨æ¥ ¯ ¥«¨ ª®â®àãî ¬¥àïâì
|
||||
CountingDirR PUSH IX
|
||||
PUSH IY
|
||||
GETPORT WINSP.CPU3
|
||||
PUSH AF ; ⥪ã騩 ®¬¥à áâà ¨æë
|
||||
PUSH HL
|
||||
PUSH IX
|
||||
BIT PANELFLAG.B_SIDE,(IY + PANEL.PANELFLAG)
|
||||
LD A,(RAMPAGES.LEFTPANEL)
|
||||
JR Z,.L1
|
||||
@ -708,10 +790,10 @@ CountingDirR
|
||||
LD (JUMPS.FILES_BYTES + 2),HL ; ®¡ã«¥¨¥ à §¬¥à ¤¨àë
|
||||
LD (JUMPS.FILES_COUNT),HL ; ®¡ã«¥¨¥ ª®«¨ç¥áâ¢ ä ©«®¢
|
||||
LD HL,CPU3
|
||||
LD (.CURR_DIRNAME),HL
|
||||
LD (BUFFERS.CURR_DIRNAME),HL
|
||||
; á®åà ¥¨¥ ⥪ã饣® ¯ã⨠¤«ï ¢®§¢à â
|
||||
SPDSS DSSF.CURDISK
|
||||
LD HL,.OLDPATH ; á®åà ¥ë© ¯ãâì ¤«ï ¢®§¢à â
|
||||
LD HL,BUFFERS.OLDPATH ; á®åà ¥ë© ¯ãâì ¤«ï ¢®§¢à â
|
||||
ADD A,'A'
|
||||
LD (HL),A
|
||||
INC HL
|
||||
@ -723,7 +805,7 @@ CountingDirR
|
||||
; ¢å®¤ ¢ ¤¨à¥ªâ®à¨î
|
||||
LD HL,FileHDR.Name
|
||||
ADD HL,DE
|
||||
LD DE,.DIR_NAME
|
||||
LD DE,BUF_MARKDIR.DIR_NAME
|
||||
PUSH DE
|
||||
LD BC,FileHDR.Name_Size
|
||||
LDIR ; § ¡à «¨ ¨¬ï ¤¨àë ¤«ï ¨§¬¥à¥¨ï
|
||||
@ -731,10 +813,10 @@ CountingDirR
|
||||
SETPORT WINSP.CPU3,,0
|
||||
CALL .ADD_2DOT ; ¤«ï ¢®§¢à â ¢ ¯à¥¤ë¤ãéãî ¤¨àã
|
||||
POP HL
|
||||
LD DE,(.CURR_DIRNAME)
|
||||
LD DE,(BUFFERS.CURR_DIRNAME)
|
||||
LD BC,FileHDR.Name_Size
|
||||
LDIR ; ¨¬ï ¤¨àë ¤«ï ¢å®¤
|
||||
LD (.CURR_DIRNAME),DE
|
||||
LD (BUFFERS.CURR_DIRNAME),DE
|
||||
XOR A
|
||||
LD (DE),A
|
||||
CALL .SET_PATH ; ãáâ ®¢ª ⥪ã饣® ¯ãâ¨
|
||||
@ -755,7 +837,7 @@ CountingDirR
|
||||
JR Z,.END_COUNT
|
||||
CALL .GET_NAME
|
||||
CALL .GET_NAME
|
||||
LD HL,(.CURR_DIRNAME)
|
||||
LD HL,(BUFFERS.CURR_DIRNAME)
|
||||
LD DE,-FileHDR.Name_Size
|
||||
ADD HL,DE
|
||||
LD A,(HL)
|
||||
@ -768,31 +850,29 @@ CountingDirR
|
||||
; ¢®§¢à â ⥪ã饣® ¯ãâ¨
|
||||
.END_COUNT POP AF
|
||||
SETPORT WINSP.CPU3,,0
|
||||
LD HL,.OLDPATH ; á®åà ¥ë© ¯ãâì ¤«ï ¢®§¢à â
|
||||
LD HL,BUFFERS.OLDPATH ; á®åà ¥ë© ¯ãâì ¤«ï ¢®§¢à â
|
||||
SPDSS DSSF.CHDIR
|
||||
POP BC
|
||||
POP HL
|
||||
POP IY
|
||||
POP IX
|
||||
RET
|
||||
|
||||
; ¢ë室 ¢ ¯à¥¤ë¤ãéãî ¤¨àã
|
||||
.GET_NAME LD HL,(.CURR_DIRNAME)
|
||||
.GET_NAME LD HL,(BUFFERS.CURR_DIRNAME)
|
||||
LD (HL),0
|
||||
LD DE,-FileHDR.Name_Size
|
||||
ADD HL,DE
|
||||
LD (.CURR_DIRNAME),HL
|
||||
LD (BUFFERS.CURR_DIRNAME),HL
|
||||
RET
|
||||
|
||||
.OUT_DIR DEC IXH ; ¯à¥¤ë¤ã騩 ã஢¥ì ¤¨àë
|
||||
LD HL,.RET_DIR
|
||||
LD HL,BUF_MARKDIR.RET_DIR
|
||||
JR .SP1
|
||||
|
||||
; ¯¥à¥å®¤ ¢ ¤¨àã ¨§ ᯨáª
|
||||
.SET_PATH LD HL,(.CURR_DIRNAME)
|
||||
.SET_PATH LD HL,(BUFFERS.CURR_DIRNAME)
|
||||
LD DE,-FileHDR.Name_Size
|
||||
ADD HL,DE
|
||||
LD DE,.DIR_NAME
|
||||
LD DE,BUF_MARKDIR.DIR_NAME
|
||||
PUSH DE
|
||||
LD BC,FFIRST.Name_Size
|
||||
LDIR
|
||||
@ -800,7 +880,7 @@ CountingDirR
|
||||
.SP1 PUSH IX
|
||||
SPDSS DSSF.CHDIR
|
||||
SPDSS DSSF.CURDISK
|
||||
LD HL,.CURRPATH
|
||||
LD HL,BUFFERS.CURRPATHSRC
|
||||
ADD A,'A'
|
||||
LD (HL),A
|
||||
INC HL
|
||||
@ -812,11 +892,11 @@ CountingDirR
|
||||
|
||||
; ¤®¡ ¢«¥¨¥ ¨¬¥¨ ¤¨àë ".." ¤«ï ¢ë室 ¢ ¯à¥¤ë¤ãéãî ¤¨àã
|
||||
.ADD_2DOT PUSH HL
|
||||
LD HL,.RET_DIR
|
||||
LD DE,(.CURR_DIRNAME)
|
||||
LD HL,BUF_MARKDIR.RET_DIR
|
||||
LD DE,(BUFFERS.CURR_DIRNAME)
|
||||
LD BC,FFIRST.Name_Size
|
||||
LDIR
|
||||
LD (.CURR_DIRNAME),DE
|
||||
LD (BUFFERS.CURR_DIRNAME),DE
|
||||
POP HL
|
||||
RET
|
||||
|
||||
@ -838,10 +918,10 @@ CountingDirR
|
||||
CP '.' ; . ¨ .. ¯à®¯ã᪠¥¬
|
||||
JR Z,.L5
|
||||
; ¤«ï ¤¨àë ª®¯¨à㥬 ¨¬ï ¢ â ¡«¨çªã
|
||||
LD DE,(.CURR_DIRNAME)
|
||||
LD DE,(BUFFERS.CURR_DIRNAME)
|
||||
LD BC,FFIRST.Name_Size
|
||||
LDIR
|
||||
LD (.CURR_DIRNAME),DE
|
||||
LD (BUFFERS.CURR_DIRNAME),DE
|
||||
INC IXL
|
||||
JR .L5
|
||||
|
||||
@ -851,10 +931,7 @@ CountingDirR
|
||||
ADD HL,DE
|
||||
CALL GET_DWORD ; ¢§ïâì à §¬¥à ¨§ ®¯¨á ⥫ï
|
||||
LD HL,JUMPS.FILES_BYTES
|
||||
PUSH HL
|
||||
CALL BCDEHLP ; ¤®¡ ¢¨«¨ ª ⥪ã饬ã à §¬¥àã
|
||||
POP HL
|
||||
CALL SET_DWORD ; ¯®«®¦¨«¨ ®¡à â®
|
||||
CALL HLPBCDE ; ¤®¡ ¢¨«¨ ª ⥪ã饬ã à §¬¥àã
|
||||
LD HL,(JUMPS.FILES_COUNT)
|
||||
INC HL
|
||||
LD (JUMPS.FILES_COUNT),HL ; ¨ªà¥¬¥â ª®«¨ç¥áâ¢ ä ©«®¢
|
||||
@ -869,8 +946,8 @@ CountingDirR
|
||||
DIR.M_Hidden + \
|
||||
DIR.M_ReadOnly + \
|
||||
DIR.M_Dir
|
||||
.FFF1 LD HL,.FILES_MASK
|
||||
LD DE,.OLDPATH
|
||||
.FFF1 LD HL,BUF_MARKDIR.FILES_MASK
|
||||
LD DE,BUFFERS.OLDPATH
|
||||
PUSH DE
|
||||
PUSH IX
|
||||
SPDSS DSSF.F_FIRST,0
|
||||
@ -879,7 +956,7 @@ CountingDirR
|
||||
RET
|
||||
|
||||
; ¯®¨áª á«¥¤ãî饣® ®¯¨á ⥫ï
|
||||
.F_NEXT LD DE,.OLDPATH
|
||||
.F_NEXT LD DE,BUFFERS.OLDPATH
|
||||
PUSH DE
|
||||
PUSH IX
|
||||
SPDSS DSSF.F_NEXT
|
||||
@ -887,34 +964,103 @@ CountingDirR
|
||||
POP HL
|
||||
RET
|
||||
|
||||
;.FILES_SIZE DD 0
|
||||
;.FILES_COUNT DW 0
|
||||
.FILES_MASK DZ "*.*"
|
||||
.RET_DIR DZ ".. "
|
||||
.DIR_NAME DZ " "
|
||||
.CURR_DIRNAME DW 0
|
||||
; ¨¨æ¨ «¨§ æ¨ï ª®¯¨à®¢ ¨ï ¤¨à¥ªâ®à¨¨ á ᮤ¥à¦¨¬ë¬
|
||||
InitCopyDirsR PUSH IX
|
||||
PUSH IY
|
||||
GETPORT WINSP.CPU3
|
||||
PUSH AF
|
||||
BIT PANELFLAG.B_SIDE,(IY + PANEL.PANELFLAG)
|
||||
LD HL,LeftPanel ; ¤«ï ¯ã⨠®âªã¤ ª®¯¨à®¢ âì
|
||||
LD DE,RightPanel ; ¤«ï ¯ã⨠ªã¤ ª®¯¨à®¢ âì
|
||||
LD A,(RAMPAGES.LEFTPANEL) ; ¨§ ª ª®© áâà ¨æë ¯ ¥«¨ ¡à âì ¯ãâì
|
||||
JR Z,.L1
|
||||
LD HL,RightPanel ; ¤«ï ¯ã⨠®âªã¤ ª®¯¨à®¢ âì
|
||||
LD DE,LeftPanel ; ¤«ï ¯ã⨠ªã¤ ª®¯¨à®¢ âì
|
||||
LD A,(RAMPAGES.RIGHTPANEL) ; ¨§ ª ª®© áâà ¨æë ¯ ¥«¨ ¡à âì ¯ãâì
|
||||
.L1
|
||||
; ¢ª«îç ¥¬ ¯ £ã á ¤¨à¥ªâ®à¨¥© ⥪ã饩 ¯ ¥«¨
|
||||
PUSH HL
|
||||
SETPORT WINSP.CPU3,,0
|
||||
LD HL,PANEL.CURR_PATH
|
||||
ADD HL,DE ; ®âªã¤ ¯ãâì ¯à¨¥¬¨ª ¢§ïâì
|
||||
LD DE,BUFFERS.CURRPATHDST ; ¡ãä¥à ¯ã⨠¯à¨¥¬¨ª
|
||||
CALL .COPYNAME2PATH
|
||||
LD (BUFFERS.ENDPATHDST),DE ; ¤à¥á 墮áâ ¯ã⨠¯à¨¥¬¨ª
|
||||
; ª®¯¨à®¢ ¨¥ ¨¬¥¨ ¤¨à¥ªâ®à¨¨ ¤«ï ª®¯¨à®¢ ¨ï
|
||||
PUSH IX
|
||||
POP DE
|
||||
LD HL,FileHDR.Name
|
||||
ADD HL,DE
|
||||
LD DE,BUF_MARKDIR.DIR_NAME
|
||||
LD BC,FileHDR.Name_Size
|
||||
LDIR ; § ¡à «¨ ¨¬ï ¤¨àë ¤«ï ª®¯¨à®¢ ¨ï
|
||||
EX DE,HL
|
||||
CALL .CUTOFFSPACES ; ®âá¥ç¥¨¥ ¯à®¡¥«®¢
|
||||
; ¯¥à¥®á ⥪ã饣® ¯ã⨠¨áâ®ç¨ª
|
||||
POP DE
|
||||
LD HL,PANEL.CURR_PATH
|
||||
ADD HL,DE ; ®âªã¤ ¯ãâì ¯à¨¥¬¨ª ¢§ïâì
|
||||
LD DE,BUFFERS.CURRPATHSRC
|
||||
CALL .COPYNAME2PATH ; ᪮¯¨à®¢ «¨ ¯ãâì ¨áâ®ç¨ª
|
||||
LD (BUFFERS.ENDPATHSRC),DE ; ¤à¥á 墮áâ ¯ã⨠¨áâ®ç¨ª
|
||||
; ¤®¡ ¢«¥¨¥ ¨¬¥¨ ¤¨àë ¤«ï ª®¯¨à®¢ ¨ï ¢ ¯ãâì ¨áâ®ç¨ª
|
||||
LD HL,(BUFFERS.ENDPATHSRC)
|
||||
LD DE,BUF_MARKDIR.DIR_NAME
|
||||
CALL .ADDNAME2PATH
|
||||
LD (BUFFERS.ENDPATHSRC),DE ; ¤à¥á 墮áâ ¯ã⨠¨áâ®ç¨ª
|
||||
; ¤®¡ ¢«¥¨¥ ¨¬¥¨ ¤¨àë ¤«ï ª®¯¨à®¢ ¨ï ¢ ¯ãâì ¯à¨¥¬¨ª
|
||||
LD HL,(BUFFERS.ENDPATHDST)
|
||||
LD DE,BUF_MARKDIR.DIR_NAME
|
||||
CALL .ADDNAME2PATH
|
||||
LD (BUFFERS.ENDPATHDST),DE
|
||||
XOR A
|
||||
LD (BUFFERS.LEVEL_DIR),A
|
||||
; ¢ë室
|
||||
POP AF
|
||||
SETPORT WINSP.CPU3,,0
|
||||
POP IY
|
||||
POP IX
|
||||
RET
|
||||
|
||||
; ¯®¤áç¥â à §¬¥à ¤¨à¥ªâ®à¨¨
|
||||
; <20> ¢å®¤¥:
|
||||
; HL - ¤à¥á ®¯¨á â¥«ï ¤¨àë ¢ áâà ¨æ¥ ¯ ¥«¨ ª®â®àãî ¬¥àïâì
|
||||
; <20> ¢ë室¥:
|
||||
; BCDE' - à §¬¥à ¢ ¡ ©â å
|
||||
;GetDirSizeR CALL CountingDirR
|
||||
; LD HL,JUMPS.FILES_BYTES
|
||||
; CALL GET_DWORD
|
||||
; EXX
|
||||
; RET
|
||||
; ¤®¡ ¢«¥¨¥ ¨¬¥¨ ¢ áâப㠯ãâ¨
|
||||
; HL - ªã¤ ¤®¡ ¢«ïâì (墮áâ ⥪ã饣® ¯ãâ¨)
|
||||
; DE - ®âªã¤ ¨¬ï ¡à âì
|
||||
.ADDNAME2PATH CALL .CHECK_BSLASH
|
||||
LD (HL),'\\'
|
||||
INC HL
|
||||
EX DE,HL
|
||||
; ª®¯¨à®¢ ¨¥ ¨¬¥¨ ¨§ ¡ãä¥à
|
||||
.COPYNAME2PATH XOR A
|
||||
.CNP2 CP (HL)
|
||||
JR Z,.CNP1
|
||||
LDI
|
||||
JR .CNP2
|
||||
|
||||
.CNP1 LD (DE),A
|
||||
RET
|
||||
|
||||
;.NAME2DIRNAME
|
||||
|
||||
; ¯à®¢¥àª BACKSLASH
|
||||
.CHECK_BSLASH DEC HL
|
||||
LD A,(HL)
|
||||
CP '\\'
|
||||
RET Z
|
||||
INC HL
|
||||
RET
|
||||
|
||||
; ®âá¥ç¥¨¥ ¯à®¡¥«®¢ ¢ ¨¬¥¨
|
||||
.CUTOFFSPACES LD A,' '
|
||||
.COS2 DEC HL
|
||||
CP (HL)
|
||||
JR Z,.COS2
|
||||
INC HL
|
||||
LD (HL),0
|
||||
RET
|
||||
|
||||
; á®§¤ ¨¥ ¯ ¯®ª ¯à¨¥¬¨ª¥
|
||||
; HL - ¤à¥á ®¯¨á â¥«ï ¤¨àë ¢ áâà ¨æ¥ ¯ ¥«¨ ª®â®àãî ª®¯¨à®¢ âì
|
||||
MkdirsDstR
|
||||
|
||||
.OLDPATH EQU WorkBuffer + 0x300 ; á®åà ¥ë© â¥ªã騩 ¯ãâì
|
||||
.CURRPATHSRC EQU WorkBuffer + 0x200 ; ¢à¥¬¥®© ⥪ã騩 ¯ãâì ¨áâ®ç¨ª
|
||||
.CURRPATHDST EQU WorkBuffer + 0x100 ; ¢à¥¬¥®© ⥪ã騩 ¯ãâì ¯à¨¥¬¨ª
|
||||
.FINDBUF EQU WorkBuffer
|
||||
|
||||
PUSH IX
|
||||
MkdirsDstRR PUSH IX
|
||||
PUSH IY
|
||||
GETPORT WINSP.CPU3
|
||||
PUSH AF
|
||||
@ -931,12 +1077,12 @@ MkdirsDstR
|
||||
SETPORT WINSP.CPU3,,0
|
||||
LD HL,PANEL.CURR_PATH
|
||||
ADD HL,DE ; ®âªã¤ ¯ãâì ¯à¨¥¬¨ª ¢§ïâì
|
||||
LD DE,.CURRPATHDST ; ¡ãä¥à ¯ã⨠¯à¨¥¬¨ª
|
||||
LD DE,BUFFERS.CURRPATHDST ; ¡ãä¥à ¯ã⨠¯à¨¥¬¨ª
|
||||
CALL .COPYNAME2PATH
|
||||
LD (.ENDPATHDST),DE ; ¤à¥á 墮áâ ¯ã⨠¯à¨¥¬¨ª
|
||||
LD (BUFFERS.ENDPATHDST),DE ; ¤à¥á 墮áâ ¯ã⨠¯à¨¥¬¨ª
|
||||
; á®åà ¥¨¥ ⥪ã饣® ¯ã⨠¤«ï ¢®§¢à â
|
||||
SPDSS DSSF.CURDISK
|
||||
LD HL,.OLDPATH ; á®åà ¥ë© ¯ãâì ¤«ï ¢®§¢à â
|
||||
LD HL,BUFFERS.OLDPATH ; á®åà ¥ë© ¯ãâì ¤«ï ¢®§¢à â
|
||||
ADD A,'A'
|
||||
LD (HL),A
|
||||
INC HL
|
||||
@ -948,29 +1094,29 @@ MkdirsDstR
|
||||
; ª®¯¨à®¢ ¨¥ ¨¬¥¨ ¤¨à¥ªâ®à¨¨ ¤«ï ª®¯¨à®¢ ¨ï
|
||||
LD HL,FileHDR.Name
|
||||
ADD HL,DE
|
||||
LD DE,CountingDirR.DIR_NAME
|
||||
LD DE,BUF_MARKDIR.DIR_NAME
|
||||
LD BC,FileHDR.Name_Size
|
||||
LDIR ; § ¡à «¨ ¨¬ï ¤¨àë ¤«ï ª®¯¨à®¢ ¨ï
|
||||
EX DE,HL
|
||||
CALL .CUTOFFSPACES ; ®âá¥ç¥¨¥ ¯à®¡¥«®¢
|
||||
; ¯¥à¥®á ⥪ã饣® ¯ã⨠¨áâ®ç¨ª
|
||||
LD HL,.OLDPATH
|
||||
LD DE,.CURRPATHSRC
|
||||
LD HL,BUFFERS.OLDPATH
|
||||
LD DE,BUFFERS.CURRPATHSRC
|
||||
CALL .COPYNAME2PATH ; ᪮¯¨à®¢ «¨ ¯ãâì ¨áâ®ç¨ª
|
||||
LD (.ENDPATHSRC),DE ; ¤à¥á 墮áâ ¯ã⨠¨áâ®ç¨ª
|
||||
LD (BUFFERS.ENDPATHSRC),DE ; ¤à¥á 墮áâ ¯ã⨠¨áâ®ç¨ª
|
||||
; ¤®¡ ¢«¥¨¥ ¨¬¥¨ ¤¨àë ¤«ï ª®¯¨à®¢ ¨ï ¢ ¯ãâì ¨áâ®ç¨ª
|
||||
LD HL,(.ENDPATHSRC)
|
||||
LD DE,CountingDirR.DIR_NAME
|
||||
LD HL,(BUFFERS.ENDPATHSRC)
|
||||
LD DE,BUF_MARKDIR.DIR_NAME
|
||||
CALL .ADDNAME2PATH
|
||||
LD (.ENDPATHSRC),DE ; ¤à¥á 墮áâ ¯ã⨠¨áâ®ç¨ª
|
||||
LD (BUFFERS.ENDPATHSRC),DE ; ¤à¥á 墮áâ ¯ã⨠¨áâ®ç¨ª
|
||||
; ¤®¡ ¢«¥¨¥ ¨¬¥¨ ¤¨àë ¤«ï ª®¯¨à®¢ ¨ï ¢ ¯ãâì ¯à¨¥¬¨ª
|
||||
LD HL,(.ENDPATHDST)
|
||||
LD DE,CountingDirR.DIR_NAME
|
||||
LD HL,(BUFFERS.ENDPATHDST)
|
||||
LD DE,BUF_MARKDIR.DIR_NAME
|
||||
CALL .ADDNAME2PATH
|
||||
LD (.ENDPATHDST),DE
|
||||
LD (BUFFERS.ENDPATHDST),DE
|
||||
|
||||
; á®§¤ ¨¥ ¤¨àë ¢ ¯à¨¥¬¨ª¥
|
||||
LD HL,.CURRPATHDST
|
||||
LD HL,BUFFERS.CURRPATHDST
|
||||
SPDSS DSSF.MKDIR ; á®§¤ «¨ ¤¨à㠯ਥ¬¨ª
|
||||
JR NC,.L3
|
||||
CP ERR_DSS.DIR_EXISTS ; ¥á«¨ ¤¨à 㦥 ¥áâì ¨£®à¨¬ ®è¨¡ªã
|
||||
@ -978,27 +1124,27 @@ MkdirsDstR
|
||||
.L3
|
||||
|
||||
; TODO 横«¨ç¥áª¨© ¯®¨áª ¤¨à¥ªâ®à¨© á á®§¤ ¨¥¬ ¯à¨¥¬¨ª¥
|
||||
LD HL,.CURRPATHSRC
|
||||
LD HL,BUFFERS.CURRPATHSRC
|
||||
SPDSS DSSF.CHDIR ; ¢å®¤ ¢ ¤¨àã ¨áâ®ç¨ª
|
||||
CALL .FINDFIRSTSRCDIR ; ¯®¨áª ¯¥à¢®£® ®¯¨á ⥫ï
|
||||
JP C,.ENDCOPY ; ¡®«ìè¥ ¤¨à¥ªâ®à¨© ¥â, ¢ë室¨¬
|
||||
; ¯®¨áª ¤¨à¥ªâ®à¨©
|
||||
.L2 CALL .FINDNEXTSRCDIR ; ¯®¨áª á«¥¤ãî饣® ®¯¨á ⥫ï
|
||||
JP C,.ENDFINDNEXT ; ¯®¨áª ®ª®ç¥?
|
||||
LD HL,.FINDBUF + FFIRST.Name
|
||||
LD HL,BUFFERS.FINDBUF + FFIRST.Name
|
||||
LD A,(HL)
|
||||
CP '.' ; ®¯¨á ⥫¨ "." ¨ ".." ¨£®à¨¬
|
||||
JR Z,.L2
|
||||
LD DE,.TMPNAMEDIR
|
||||
PUSH DE
|
||||
CALL .COPYNAME2PATH
|
||||
LD HL,(.ENDPATHDST)
|
||||
LD HL,(BUFFERS.ENDPATHDST)
|
||||
POP DE
|
||||
CALL .ADDNAME2PATH
|
||||
LD HL,.CURRPATHDST
|
||||
LD HL,BUFFERS.CURRPATHDST
|
||||
SPDSS DSSF.MKDIR ; á®§¤ ¥¬ ¤¨à㠯ਥ¬¨ª¥
|
||||
; JP C,ERROR
|
||||
LD HL,.CURRPATHSRC
|
||||
LD HL,BUFFERS.CURRPATHSRC
|
||||
SPDSS DSSF.CHDIR ; ¢®§¢à é ¥¬ ¯ãâì ¨áâ®ç¨ª
|
||||
; JP C,ERROR
|
||||
JR .L2 ; ¨é¥¬ á«¥¤ãî騩
|
||||
@ -1014,13 +1160,13 @@ MkdirsDstR
|
||||
|
||||
; ¯®¨áª ¯¥à¢®© ¤¨àë ¢ ⥪ã饩 ¯®¤¤¨à¥ªâ®à¨¨
|
||||
.FINDFIRSTSRCDIR
|
||||
LD HL,CountingDirR.FILES_MASK
|
||||
LD DE,.FINDBUF
|
||||
LD HL,BUF_MARKDIR.FILES_MASK
|
||||
LD DE,BUFFERS.FINDBUF
|
||||
SPDSS DSSF.F_FIRST,1,DIR.M_Dir
|
||||
RET
|
||||
|
||||
.FINDNEXTSRCDIR
|
||||
LD DE,.FINDBUF
|
||||
LD DE,BUFFERS.FINDBUF
|
||||
SPDSS DSSF.F_NEXT
|
||||
RET
|
||||
|
||||
@ -1041,7 +1187,7 @@ MkdirsDstR
|
||||
.CNP1 LD (DE),A
|
||||
RET
|
||||
|
||||
.NAME2DIRNAME
|
||||
;.NAME2DIRNAME
|
||||
|
||||
; ¯à®¢¥àª BACKSLASH
|
||||
.CHECK_BSLASH DEC HL
|
||||
@ -1071,7 +1217,7 @@ MkdirsDstR
|
||||
; ¢ë室 ¨§ ª®¯¨à®¢ ¨ï ¤¨à¥ªâ®à¨©
|
||||
.ENDCOPY LD SP,0
|
||||
.OLDSP EQU $-2
|
||||
LD HL,.OLDPATH
|
||||
LD HL,BUFFERS.OLDPATH
|
||||
SPDSS DSSF.CHDIR
|
||||
POP AF
|
||||
SETPORT WINSP.CPU3,,0
|
||||
@ -1079,8 +1225,8 @@ MkdirsDstR
|
||||
POP IX
|
||||
RET
|
||||
|
||||
.ENDPATHSRC DW 0 ; ¤à¥á 墮áâ ¯ã⨠¨áâ®ç¨ª
|
||||
.ENDPATHDST DW 0 ; ¤à¥á 墮áâ ¯ã⨠¯à¨¥¬¨ª
|
||||
;.ENDPATHSRC DW 0 ; ¤à¥á 墮áâ ¯ã⨠¨áâ®ç¨ª
|
||||
;.ENDPATHDST DW 0 ; ¤à¥á 墮áâ ¯ã⨠¯à¨¥¬¨ª
|
||||
.TMPNAMEDIR DB 8 DUP 0
|
||||
ENDIF
|
||||
|
||||
@ -1100,3 +1246,51 @@ MkdirsDstR
|
||||
; /F83
|
||||
; /F99
|
||||
; /TASM
|
||||
|
||||
; DEV
|
||||
; ..
|
||||
; CAMEL401
|
||||
; DEMON
|
||||
; MASM80
|
||||
; OASM028
|
||||
; SOLID
|
||||
; SPFORTH
|
||||
; TASM
|
||||
; ..
|
||||
; DOC
|
||||
; EXAMPLES
|
||||
; INCLUDE
|
||||
; SRC
|
||||
; ..
|
||||
; CLIB
|
||||
; ..
|
||||
; BUILD
|
||||
; ..
|
||||
; F83
|
||||
; F99
|
||||
|
||||
;DEV/CAMEL401/ 25
|
||||
;DEV/DEMON/ 2
|
||||
;DEV/MASM/ 10
|
||||
;DEV/OASM28/ 5
|
||||
;DEV/SOLID/ 8
|
||||
;DEV/SOLID/DOC/ 13
|
||||
;DEV/SOLID/EXAMPLES/ 36
|
||||
;DEV/SOLID/INCLUDE/ 16
|
||||
;DEV/SOLID/SRC/CLIB/ 12
|
||||
;DEV/SOLID/SRC/CLIB/BUILD/ 8
|
||||
;DEV/SPFORTH/F83/ 4
|
||||
;DEV/SPFORTH/F99/ 3
|
||||
;DEV/TASM/ 6
|
||||
;-----------------------------------
|
||||
; 0x94 148
|
||||
|
||||
; £¥¥à æ¨ï ᯨ᪠¤«ï ª®¯¨à®¢ ¨ï ¤¨à
|
||||
; "." ¤«ï ¢ë室 ¢ ¯à¥¤ë¤ãéãî ¤¨àã
|
||||
; 0 ª®¥æ ᯨáª
|
||||
; ¨¬¥ ¤¨à ¯® 8 ᨬ¢®«®¢ (¬®¦® ¨ 8.3) ⮫쪮 ¨¬¥ ¡¥§ 0 ¢ ª®æ¥ ¨¬¥¨
|
||||
|
||||
; ¯à¨ ª®¯¨à®¢ ¨¨ ©¤¥ ¤¨à
|
||||
; § ¥á¥¨¥ ¢ ¯ãâì ¨áâ®ç¨ª ¨¬¥¨ ¤¨àë
|
||||
; § ¥á¥¨¥ ¢ ¯ãâì ¯à¨¥¬¨ª ¨¬¥¨ ¤¨àë
|
||||
; § ¥á¥¨¥ ¢ ᯨ᮪ ".." ¤«ï ¢ë室
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@ -1,15 +1,15 @@
|
||||
|
||||
; LAST UPDATE: 18.07.2025 savelij
|
||||
; LAST UPDATE: 13.08.2025 savelij
|
||||
|
||||
;[]==========================================================[]
|
||||
InitExtention: LD HL,INIFILES.ExtName1
|
||||
LD DE,fn_ext
|
||||
LD DE,BUFFERS.fn_ext
|
||||
CALL InitExt
|
||||
LD HL,INIFILES.ExtName2
|
||||
LD DE,fnview_ext
|
||||
LD DE,BUFFERS.fnview_ext
|
||||
CALL InitExt
|
||||
LD HL,INIFILES.ExtName3
|
||||
LD DE,fnedit_ext
|
||||
LD DE,BUFFERS.fnedit_ext
|
||||
;[]----------------------------------------------------------[]
|
||||
InitExt: LD (.EXTdata),DE
|
||||
SPDSS DSSF.OPEN,,1
|
||||
|
||||
76
rez3_fntab.a80
Normal file
76
rez3_fntab.a80
Normal file
@ -0,0 +1,76 @@
|
||||
|
||||
; LAST UPDATE: 14.08.2025 savelij
|
||||
|
||||
;[]==========================================================[]
|
||||
; ”®à¬ â â ¡«¨æë
|
||||
; +00 2 Xmin
|
||||
; +02 2 Xmax
|
||||
; +04 2 Ymin
|
||||
; +06 2 Ymax
|
||||
; +08 2 0 - ¯à®á⮩ ®¡'¥ªâ
|
||||
; ¡¨â 0 - ª®¯ª
|
||||
; ¡¨â 1 - à ¡®ç ï ª®¯ª
|
||||
; ¡¨â 2 - ¨¢¥àâ 1
|
||||
; ¡¨â 3 - áâ â¨çë© ¨¢¥àâ
|
||||
; ¡¨â 4 - ¯à®£à ¬¬ § ¯ã᪠¥âáï ¡¥§ ¤à¥á ¢®§¢à.
|
||||
; ¨ ¡¥§ ®£ï
|
||||
; ¡¨â 5 - ¯à®£à ¬¬ § ¯ã᪠¥âáï ¡¥§ ¤à¥á ¢®§¢à.
|
||||
; ¯® «¥¢®© ª®¯ª¥ ®£ï
|
||||
; ¡¨â 6 - ¯à®£à ¬¬ § ¯ã᪠¥âáï ¡¥§ ¤à¥á ¢®§¢à.
|
||||
; ¯® ¯à ¢®© ª®¯ª¥ ®£ï
|
||||
; ¡¨â 7 - ¢ë§¢ âì äãªæ¨î § ªàëâ¨ï ®ª ¯¥à¥¤
|
||||
; § ¯ã᪮¬ ¯à®£à ¬¬ë ¡¥§ ®£ï
|
||||
; ¡¨â 8 - ¢ë§¢ âì äãªæ¨î § ªàëâ¨ï ®ª ¯¥à¥¤
|
||||
; § ¯ã᪮¬ ¯à®£à ¬¬ë ¯® «¥¢®© ª®¯ª¥
|
||||
; ¡¨â 9 - ¢ë§¢ âì äãªæ¨î § ªàëâ¨ï ®ª ¯¥à¥¤
|
||||
; § ¯ã᪮¬ ¯à®£à ¬¬ë ¯® ¯à ¢®© ª®¯ª¥
|
||||
; ¡¨â15 - íâ® ¯¥à¥ª«îç ⥫ì (¨¢¥à⠯ਠ®£¥ ¥
|
||||
; 㡨à âì)
|
||||
; +0A 2 €¤à¥á ®¡à ¡®â稪 ¯à¨ ¥ ¦ ⮬ ®£¥
|
||||
; +0C 2 €¤à¥á ®¡à ¡®â稪 ¯à¨ ¦ ⮬ ®£¥ («¥¢)
|
||||
; +0E 2 €¤à¥á ®¡à ¡®â稪 ¯à¨ ¦ ⮬ ®£¥ (¯à ¢)
|
||||
|
||||
REZ3TAB
|
||||
;[]===============================================================[]
|
||||
.VersionTab: DW 284,356,157,171,%0000000000100001,0,VersionExt,0
|
||||
DW 0,192, 0,256,%0000000000100000,0,VersionExt,0
|
||||
DW 448,640, 0,256,%0000000000100000,0,VersionExt,0
|
||||
DW 0,640, 0, 64,%0000000000100000,0,VersionExt,0
|
||||
DW 0,640,176,256,%0000000000100000,0,VersionExt,0
|
||||
DW 0x8000
|
||||
|
||||
.SMaskTab DW 240,312,123,137,%0000000000000001,0,InputLine.InputLineExitOk,0
|
||||
DW 328,400,123,137,%0000000000000001,0,InputLine.InputLineExitCancel,0
|
||||
DW 0,208, 0,256,%0000000000000000,0,InputLine.InputLineExitCancel,0
|
||||
DW 432,640, 0,256,%0000000000000000,0,InputLine.InputLineExitCancel,0
|
||||
DW 0,640, 0, 81,%0000000000000000,0,InputLine.InputLineExitCancel,0
|
||||
DW 0,640,143,256,%0000000000000000,0,InputLine.InputLineExitCancel,0
|
||||
DW 0x8000
|
||||
|
||||
;[]===============================================================[]
|
||||
.FileInfoTab: DW 284,356,160,174,%0000000000100001,0,FileInfoR.FileInfoExt,0
|
||||
DW 0,240, 0,256,%0000000000100000,0,FileInfoR.FileInfoExt,0
|
||||
DW 400,640, 0,256,%0000000000100000,0,FileInfoR.FileInfoExt,0
|
||||
DW 0,640, 0, 80,%0000000000100000,0,FileInfoR.FileInfoExt,0
|
||||
DW 0,640,178,256,%0000000000100000,0,FileInfoR.FileInfoExt,0
|
||||
DW 0x8000
|
||||
|
||||
;[]===============================================================[]
|
||||
.DiskInfoTab: DW 284,356,160,174,%0000000000100001,0,DiskInfoR.Ext,0
|
||||
DW 0,192, 0,256,%0000000000100000,0,DiskInfoR.Ext,0
|
||||
DW 448,640, 0,256,%0000000000100000,0,DiskInfoR.Ext,0
|
||||
DW 0,640, 0, 80,%0000000000100000,0,DiskInfoR.Ext,0
|
||||
DW 0,640,178,256,%0000000000100000,0,DiskInfoR.Ext,0
|
||||
DW 0x8000
|
||||
|
||||
;[]===============================================================[]
|
||||
.SysInfoTab: DW 284,356,160,174,%0000000000100001,0,SysInfoExt,0
|
||||
DW 0,224, 0,256,%0000000000100000,0,SysInfoExt,0
|
||||
DW 416,640, 0,256,%0000000000100000,0,SysInfoExt,0
|
||||
DW 0,640, 0, 64,%0000000000100000,0,SysInfoExt,0
|
||||
DW 0,640,178,256,%0000000000100000,0,SysInfoExt,0
|
||||
DW 0x8000
|
||||
|
||||
;[]===============================================================[]
|
||||
.PrintFTab: DW 284,356,128,142,%0000000000000001,0,StopPrint,0
|
||||
DW 0x8000
|
||||
Loading…
Reference in New Issue
Block a user