FlexNavigator 1.16.03

- MISC функции перенесены из 2 резидента в 3.
- перераспределение TAB таблиц.
- в описание Flex Navigator API добавлено описание глобальных
  переменных.
FileViewer.flx 1.07
- мелкое исправление позиции вывода даты/времени.
FileEditor.flx 1.11
- мелкое исправление позиции вывода даты/времени.
This commit is contained in:
savelij13 2025-08-14 09:36:20 +03:00
parent e4977b4a6f
commit 7940810ffd
29 changed files with 1471 additions and 1271 deletions

View File

@ -1,7 +1,7 @@
[]========================================================================[] []========================================================================[]
* * * *
* ޝ¨á ­¨¥ Flex Navigator API v1.xx ¤«ï à §à ¡®â稪®¢ Flx-Plugins * * ޝ¨á ­¨¥ 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 ¡ ©â) § à¥§¥à¢¨à®¢ ­ë ¨ § ¯®«­¥­ë 5 ª®¬ ­¤ ¯¥à¥å®¤  (15 ¡ ©â) § à¥§¥à¢¨à®¢ ­ë ¨ § ¯®«­¥­ë
ª®¬ ­¤®© RET (12 ¡ ©â 0xC9) ª®¬ ­¤®© RET (15 ¡ ©â 0xC9)
[]------------------------------------------------------------------------[] []------------------------------------------------------------------------[]
@ -451,6 +451,12 @@
ç¨á«® ¢ë¢®¤¨âáï ¡¥§ ¢¥¤ã饣® ­ã«ï ç¨á«® ¢ë¢®¤¨âáï ¡¥§ ¢¥¤ã饣® ­ã«ï
­  ¢ë室: ­  ¢ë室:
- -
[]------------------------------------------------------------------------[]
1 ª®¬ ­¤  ¯¥à¥å®¤  (3 ¡ ©â ) § à¥§¥à¢¨à®¢ ­ë ¨ § ¯®«­¥­ë
ª®¬ ­¤®© RET (3 ¡ ©â  0xC9)
[]------------------------------------------------------------------------[] []------------------------------------------------------------------------[]
JUMPS.PointerMouseClock - ¯à®æ¥¤ãà  ãáâ ­®¢ª¨ ªãàá®à  ¬ëè¨ ¢ ç áë 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 à §¬¥à ¯®¬¥ç¥­­ëå ä ©«®¢ ¢ ¡ ©â å

View File

@ -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 02.08.2025
FlexNavigator 1.16.02 FlexNavigator 1.16.02
- ¯¥à¥¤¥« ­® ®â®¡à ¦¥­¨¥ ¤ âë/¢à¥¬¥­¨, ¢ ०¨¬¥ 1 (ä®à¬ â 02.08.2025) - ¯¥à¥¤¥« ­® ®â®¡à ¦¥­¨¥ ¤ âë/¢à¥¬¥­¨, ¢ ०¨¬¥ 1 (ä®à¬ â 02.08.2025)

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
fn/fn.exe

Binary file not shown.

View File

@ -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 02.08.2025
FlexNavigator 1.16.02 FlexNavigator 1.16.02
- ¯¥à¥¤¥« ­® ®â®¡à ¦¥­¨¥ ¤ âë/¢à¥¬¥­¨, ¢ ०¨¬¥ 1 (ä®à¬ â 02.08.2025) - ¯¥à¥¤¥« ­® ®â®¡à ¦¥­¨¥ ¤ âë/¢à¥¬¥­¨, ¢ ०¨¬¥ 1 (ä®à¬ â 02.08.2025)

View File

@ -1,8 +1,9 @@
; LAST UPDATE: 02.08.2025 savelij ; LAST UPDATE: 14.08.2025 savelij
NUM_PAGES_FN EQU 7 ; ª®«¨ç¥á⢮ áâà ­¨æ ¤«ï à ¡®âë FN NUM_FILES_PANEL EQU 17 ; ª®«¨ç¥á⢮ ä ©«®¢ ¢ á⮫¡æ¥ ¯ ­¥«¨
DateMonthFormat ; ä®à¬ â ¢ë¢®¤ ¬¥áïæ  ¢ ¤ â¥ NUM_PAGES_FN EQU 7 ; ª®«¨ç¥á⢮ áâà ­¨æ ¯ ¬ï⨠¤«ï à ¡®âë FN
DateMonthFormat ; ä®à¬ â ¢ë¢®¤  ¬¥áïæ  ¢ ¤ â¥
.Digit EQU 1 ; ¬¥áïæ æ¨äன 02.08.2025 .Digit EQU 1 ; ¬¥áïæ æ¨äன 02.08.2025
.Text EQU 2 ; ¬¥áïæ â¥ªá⮬ 2 Aug 2025 .Text EQU 2 ; ¬¥áïæ â¥ªá⮬ 2 Aug 2025
@ -262,7 +263,8 @@ FORMTABL
JUMPS JUMPS
.JUMPSIZE EQU 3 .JUMPSIZE EQU 3
; â ¡«¨æ  ¯¥à¥å®¤®¢ ­  ä㭪樨 ¤«ï ¯« £¨­®¢ ; â ¡«¨æ  ¯¥à¥å®¤®¢ ­  ä㭪樨 ¤«ï ¯« £¨­®¢
_INIT_VAR BASE_ADDR + .JUMPSIZE ; ¯à®¯ã᪠¯¥à¥å®¤  ­  ®á­®¢­®© ¢å®¤ _INIT_VAR BASE_ADDR
_SETVAR .MainStartFN, .JUMPSIZE
_SETVAR .ClearScreen, .JUMPSIZE _SETVAR .ClearScreen, .JUMPSIZE
_SETVAR .MakeWindow, .JUMPSIZE _SETVAR .MakeWindow, .JUMPSIZE
_SETVAR .ReplaceColorRectan, .JUMPSIZE _SETVAR .ReplaceColorRectan, .JUMPSIZE
@ -281,14 +283,14 @@ JUMPS
_SETVAR .DrawVScrollBar, .JUMPSIZE _SETVAR .DrawVScrollBar, .JUMPSIZE
_SETVAR .InitProgressBar, .JUMPSIZE _SETVAR .InitProgressBar, .JUMPSIZE
_SETVAR .DrawProgressBar, .JUMPSIZE _SETVAR .DrawProgressBar, .JUMPSIZE
_ADDVAR .JUMPSIZE * 5 ; DUPL 15,0xC9 _ADDVAR .JUMPSIZE * 5 ; RESERVED 15 BYTE 0xC9
_SETVAR .WaitUnpressMouse, .JUMPSIZE _SETVAR .WaitUnpressMouse, .JUMPSIZE
_SETVAR .CheckCoordsMouse, .JUMPSIZE _SETVAR .CheckCoordsMouse, .JUMPSIZE
_SETVAR .CMOSPrintDateTime, .JUMPSIZE _SETVAR .CMOSPrintDateTime, .JUMPSIZE
_ADDVAR .JUMPSIZE; _SETVAR .CMOSPrintOff, .JUMPSIZE _ADDVAR .JUMPSIZE * 1 ; RESERVED 3 BYTE 0xC9
_SETVAR .PointerMouseClock, .JUMPSIZE _SETVAR .PointerMouseClock, .JUMPSIZE
_SETVAR .PointerMousePointer, .JUMPSIZE _SETVAR .PointerMousePointer, .JUMPSIZE
_ADDVAR .JUMPSIZE * 4 ; DUPL 12,0xC9 _ADDVAR .JUMPSIZE * 4 ; RESERVED 12 BYTE 0xC9
_SETVAR .ConvertNumbers_40b, .JUMPSIZE _SETVAR .ConvertNumbers_40b, .JUMPSIZE
_SETVAR .MoveBytesInc, .JUMPSIZE _SETVAR .MoveBytesInc, .JUMPSIZE
_SETVAR .MoveBytesDec, .JUMPSIZE _SETVAR .MoveBytesDec, .JUMPSIZE
@ -308,25 +310,20 @@ JUMPS
_SETVAR .atoi_16b, .JUMPSIZE _SETVAR .atoi_16b, .JUMPSIZE
_SETVAR .Resident, .JUMPSIZE _SETVAR .Resident, .JUMPSIZE
; १¥à¢¨à®¢ ­¨¥ ¤® ᬥ饭¨ï 0xC0 ; १¥à¢¨à®¢ ­¨¥ ¤® ᬥ饭¨ï 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 .NUM_DEVICES, BYTE ; Š®«-¢® ãáâனáâ¢
_SETVAR .TreeFlag, BYTE ; ”« £ ¤¥à¥¢  _SETVAR .TreeFlag, BYTE ; ”« £ ¤¥à¥¢ 
_SETVAR .CMOSFlag, BYTE ; ”« £ CMOS 0 - ­¥â _SETVAR .CMOSFlag, BYTE ; ”« £ CMOS 0 - ­¥â
; 1 - ¥áâì ; 1 - ¥áâì
_SETVAR .MouseFlag, BYTE ; ”« £ ¬ëè¨ 0 - ­¥â _SETVAR .MouseFlag, BYTE ; ”« £ ¬ëè¨ 0 - ­¥â
; 1 - ¥áâì ; 1 - ¥áâì
_SETVAR .CMOSPrint, BYTE _SETVAR .CMOSPrint, BYTE ; ”« £ à §à¥è¥­¨ï ¯¥ç â¨ ¤ âë ¢à¥¬¥­¨
; 1 - § ¯à¥é¥­®, 0 - à §à¥è¥­®
_SETVAR .FNPAGESID, BYTE ; ˆ­¤¥­â¨ä¨ª â®à ¯ ¬ï⨠FN _SETVAR .FNPAGESID, BYTE ; ˆ­¤¥­â¨ä¨ª â®à ¯ ¬ï⨠FN
_SETVAR .FNREZ2, BYTE ; ‘âà ­¨æ  á äã­ªæ¨ï¬¨ FN _SETVAR .FNREZ2, BYTE ; ‘âà ­¨æ  á äã­ªæ¨ï¬¨ FN
_SETVAR .FNFONT, BYTE ; ‘âà ­¨æ  èà¨ä⮢ _SETVAR .FNFONT, BYTE ; ‘âà ­¨æ  èà¨ä⮢
_SETVAR .FNREZ3, BYTE ; ‘âà ­¨æ  FN HELP _SETVAR .FNREZ3, BYTE ; ‘âà ­¨æ  FN HELP
IFDEF ENABLE.VIEW
_SETVAR .FNVIEW, BYTE ; ‘âà ­¨æ  á FileViewer
ENDIF
IFDEF ENABLE.EDIT
_SETVAR .FNEDIT, BYTE ; ‘âà ­¨æ  á FileEditor
ENDIF
; <20>ãä¥à­ë¥ áâà ­¨æë ¯®¤ ¨­â¥à䥩á ; <20>ãä¥à­ë¥ áâà ­¨æë ¯®¤ ¨­â¥à䥩á
_SETVAR .BufferID, BYTE ; ˆ­¤¥­â¨ä¨ª â®à ¯ ¬ï⨠¯®¤ ¡ãä¥à  _SETVAR .BufferID, BYTE ; ˆ­¤¥­â¨ä¨ª â®à ¯ ¬ï⨠¯®¤ ¡ãä¥à 
_SETVAR .FLX, BYTE ; ‘âà ­¨æ  ¤«ï § £à㧪¨ FLX ¯« £¨­®¢ _SETVAR .FLX, BYTE ; ‘âà ­¨æ  ¤«ï § £à㧪¨ FLX ¯« £¨­®¢
@ -354,6 +351,7 @@ FileHDR
_SETVAR .Hours, BYTE ; +#16 _SETVAR .Hours, BYTE ; +#16
_SETVAR .Minutes, BYTE ; +#17 _SETVAR .Minutes, BYTE ; +#17
_SETVAR .SIZE, 0 _SETVAR .SIZE, 0
_BITMASK MARK, 0 ; 1-ä ©« ¯®¬¥ç¥­ _BITMASK MARK, 0 ; 1-ä ©« ¯®¬¥ç¥­
; ¨¬¥­  ä ©«®¢ ; ¨¬¥­  ä ©«®¢
@ -375,6 +373,7 @@ FNinternal
; ®â« ¤®ç­®¥, ­¥ ¬¥­ïâì ¯® ¨§¡¥¦ ­¨¥ £«îª®¢ ; ®â« ¤®ç­®¥, ­¥ ¬¥­ïâì ¯® ¨§¡¥¦ ­¨¥ £«îª®¢
PLUGS_ENABLE EQU 0 ; ¬¥­î ¯« £¨­®¢ PLUGS_ENABLE EQU 0 ; ¬¥­î ¯« £¨­®¢
TREE_REZID EQU 0 TREE_REZID EQU 0
MARK_DIR EQU 1 ; ¢ë¡®à ¤¨à¥ªâ®à¨¨ á ¯®¤áç¥â®¬ à §¬¥à  ¢á¥å ä ©«®¢ MARK_DIR EQU 0 ; ¢ë¡®à ¤¨à¥ªâ®à¨¨ á ¯®¤áç¥â®¬ à §¬¥à  ¢á¥å ä ©«®¢
TREE_DIR_ENTER EQU 0 ; ¯®ª § ᮤ¥à¦¨¬®£® ¤¨à¥ªâ®à¨¨ ¢ ¤¥à¥¢¥ ¯® ENTER TREE_DIR_ENTER EQU 0 ; ¯®ª § ᮤ¥à¦¨¬®£® ¤¨à¥ªâ®à¨¨ ¢ ¤¥à¥¢¥ ¯® ENTER
CORR_FILENAME EQU 1 ; ¯à¥®¡à §®¢ ­¨¥ ᨬ¢®«®¢ ¨¬¥­¨ ä ©«  CORR_FILENAME EQU 1 ; ¯à¥®¡à §®¢ ­¨¥ ᨬ¢®«®¢ ¨¬¥­¨ ä ©« 
MISC2REZ3 EQU 0 ; ¯¥à¥¥§¤ misc.a80 ¨§ १¨¤¥­â  2 ¢ १¨¤¥­â  3

View File

@ -1,5 +1,5 @@
; LAST UPDATE: 19.07.2025 savelij ; LAST UPDATE: 03.08.2025 savelij
include macros.a80 include macros.a80
@ -14,19 +14,8 @@
include fat_dir_sp.a80 include fat_dir_sp.a80
include fn_version.a80 include fn_version.a80
ENABLE
;.EDIT
;.VIEW
;.HELP
PAGES_MEM := 4 PAGES_MEM := 4
IFDEF ENABLE.VIEW
PAGES_MEM := PAGES_MEM + 1
ENDIF
IFDEF ENABLE.EDIT
PAGES_MEM := PAGES_MEM + 1
ENDIF
INIT_VAR 0xC000 INIT_VAR 0xC000
SETVAR FONT_RAW, 6888;IFFFONT_RAW_PACK - FONT_RAW_PACK SETVAR FONT_RAW, 6888;IFFFONT_RAW_PACK - FONT_RAW_PACK
SETVAR_ALIGN SETVAR_ALIGN
@ -98,32 +87,11 @@ EntryExec: DI
; § £à㧪  奫¯  ; § £à㧪  奫¯ 
LD A,(MAIN.FNREZ3) ; FNREZ3 LD A,(MAIN.FNREZ3) ; FNREZ3
SETPORT WINSP.CPU3,,0 SETPORT WINSP.CPU3,,0
; SETPORT WINSP.CPU1,,0 ; ????
LD HL,0xC000 LD HL,0xC000
LD DE,END_BLOCK_3 - START_BLOCK_3 LD DE,END_BLOCK_3 - START_BLOCK_3
LD A,(MAIN.hFile) LD A,(MAIN.hFile)
SPDSS DSSF.READ SPDSS DSSF.READ
JP C,disk_error 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) LD A,(MAIN.hFile)
SPDSS DSSF.CLOSE ; close file SPDSS DSSF.CLOSE ; close file
;!TEST ; !HARDCODE SYS_PAGE ;!TEST ; !HARDCODE SYS_PAGE
@ -205,12 +173,6 @@ MAIN
.FNREZ2 db 0x00 ; 00 .FNREZ2 db 0x00 ; 00
.FNFONT db 0x00 ; 01 .FNFONT db 0x00 ; 01
.FNREZ3 db 0x00 ; 02 .FNREZ3 db 0x00 ; 02
IFDEF ENABLE.VIEW
.FNVIEW db 0x00 ; 03
ENDIF
IFDEF ENABLE.EDIT
.FNEDIT db 0x00 ; 04
ENDIF
DB 0xFF DB 0xFF
.copyright_str: DZ "\r\nThe Flex Navigator, ver.\{FLEX_VERS.NAVIGATOR}\r\n" .copyright_str: DZ "\r\nThe Flex Navigator, ver.\{FLEX_VERS.NAVIGATOR}\r\n"

View File

@ -1,7 +1,7 @@
; LAST UPDATE: 02.08.2025 savelij ; LAST UPDATE: 14.08.2025 savelij
FLEX_VERS FLEX_VERS
.NAVIGATOR EQU "1.16.02" .NAVIGATOR EQU "1.16.03"
.EDITOR EQU "1.10" .EDITOR EQU "1.11"
.VIEWER EQU "1.06" .VIEWER EQU "1.07"

View File

@ -1,5 +1,5 @@
; LAST UPDATE: 01.08.2025 savelij ; LAST UPDATE: 14.08.2025 savelij
;[]==========================================================[] ;[]==========================================================[]
DOSline SUB A DOSline SUB A
@ -59,7 +59,7 @@ DOSlnEx
DOSloop SUB A DOSloop SUB A
LD (HistCurrent),A LD (HistCurrent),A
LD IX,DOSstr LD IX,DOSstr
LD HL,DOSTab LD HL,MAINTAB.DOSTab
CALL DOSInputLine CALL DOSInputLine
RET C RET C
JR Z,RunDOSline JR Z,RunDOSline
@ -249,7 +249,7 @@ RunDOSexe1 ld hl,WorkBuffer
SUB A SUB A
CALL ClearScreen CALL ClearScreen
CALL ResVideoMode CALL ResVideoMode
LD HL,ReStartPoint LD HL,ReStartFN
EX (SP),HL EX (SP),HL
LD HL,WorkBuffer + 0x0100 LD HL,WorkBuffer + 0x0100
SPDSS DSSF.EXEC,0 SPDSS DSSF.EXEC,0
@ -348,7 +348,7 @@ SaveDOSline
PUSH BC PUSH BC
CALL FindHistory CALL FindHistory
POP BC POP BC
LD DE,DOShistory + DOShistory_Size LD DE,BUFFERS.DOShistory + BUFFERS.DOShistory_Size
OR A OR A
EX DE,HL EX DE,HL
SBC HL,DE SBC HL,DE
@ -365,7 +365,7 @@ SaveDOSline
INC HL INC HL
EX DE,HL EX DE,HL
PUSH HL PUSH HL
LD BC,DOShistory LD BC,BUFFERS.DOShistory
OR A OR A
SBC HL,BC SBC HL,BC
LD C,L LD C,L
@ -379,7 +379,7 @@ SaveDOSline
LDDR LDDR
.L2 POP BC .L2 POP BC
LD HL,DOSinp LD HL,DOSinp
LD DE,DOShistory LD DE,BUFFERS.DOShistory
LD A,C LD A,C
INC A INC A
LD (DE),A LD (DE),A
@ -427,7 +427,7 @@ GetDOShistory LD IX,DOSstr
SETPORT WINSP.CPU1,,0 SETPORT WINSP.CPU1,,0
RET RET
FindHistory LD HL,DOShistory FindHistory LD HL,BUFFERS.DOShistory
OR A OR A
RET Z RET Z
LD B,A LD B,A

View File

@ -1,5 +1,5 @@
; LAST UPDATE: 02.08.2025 savelij ; LAST UPDATE: 14.08.2025 savelij
;[]==========================================================[] ;[]==========================================================[]
InitVideoMode InitVideoMode
@ -262,8 +262,8 @@ FirstInit
.EDIRFLX .EDIRFLX
; ®¡­®¢«¥­¨¥ ¢ â ¡«¨æ¥ ¢ë¡®à  ¤¨áª®¢ ­  ¯ ­¥«¨ ; ®¡­®¢«¥­¨¥ ¢ â ¡«¨æ¥ ¢ë¡®à  ¤¨áª®¢ ­  ¯ ­¥«¨
SETUP_DISKS LD HL,BgDISKl ; ¤¨áª¨ «¥¢®© ¯ ­¥«¨ SETUP_DISKS LD HL,MAINTAB.BgDISKl ; ¤¨áª¨ «¥¢®© ¯ ­¥«¨
LD DE,BgDISKr ; ¤¨áª¨ ¯à ¢®© ¯ ­¥«¨ LD DE,MAINTAB.BgDISKr ; ¤¨áª¨ ¯à ¢®© ¯ ­¥«¨
LD BC,FORMTABL.SIZE * 2 LD BC,FORMTABL.SIZE * 2
LD A,(NUM_DEVICES) LD A,(NUM_DEVICES)
.L1 ADD HL,BC .L1 ADD HL,BC
@ -337,17 +337,17 @@ InitScreen
OR A OR A
RET Z RET Z
MAKEWINDOW WINSUBOBJ.WOBIND MAKEWINDOW WINSUBOBJ.WOBIND
W_BORDER 500 + 10,15,136 - 10,12 W_BORDER 510,15,126,12
W_END W_END
LD HL,508 + 12 LD HL,520
LD DE,17 LD DE,17
LD B,COLORP.HIGHGRAY + COLORI.BLACK LD B,COLORP.HIGHGRAY + COLORI.BLACK
EXX EXX
LD HL,558 + 10 LD HL,568
LD DE,17 LD DE,17
LD B,COLORP.HIGHGRAY + COLORI.BLACK LD B,COLORP.HIGHGRAY + COLORI.BLACK
EXX EXX
LD A,DateMonthFormat.Text LD A,DateMonthFormat.Digit
JP CMOSPrintDateTime JP CMOSPrintDateTime
;[]==========================================================[] ;[]==========================================================[]
@ -355,20 +355,20 @@ InitPanels LD (InitPanFlg),A
LD HL,LeftPanel + PANEL.VIEWFLAG LD HL,LeftPanel + PANEL.VIEWFLAG
LD A,(RightPanel + PANEL.VIEWFLAG) LD A,(RightPanel + PANEL.VIEWFLAG)
OR (HL) OR (HL)
AND 0x02 AND VIEWFLAG.M_TREE;0x02
JR NZ,InitPanTree JR NZ,.InitPanTree
LD IY,LeftPanel LD IY,LeftPanel
CALL InitPanelE CALL InitPanelE
LD IY,RightPanel LD IY,RightPanel
CALL InitPanelE CALL InitPanelE
JR InitPanExit JR .InitPanExit
InitPanTree LD IY,LeftPanel .InitPanTree LD IY,LeftPanel
BIT VIEWFLAG.B_TREE,(IY+PANEL.VIEWFLAG) BIT VIEWFLAG.B_TREE,(IY+PANEL.VIEWFLAG)
JR NZ,.L1 JR NZ,.L1
LD IY,RightPanel LD IY,RightPanel
.L1 CALL InitPanelE .L1 CALL InitPanelE
InitPanExit LD HL,LeftPanel .InitPanExit LD HL,LeftPanel
LD DE,PANEL.CURR_PATH LD DE,PANEL.CURR_PATH
BIT 7,(HL) BIT 7,(HL)
JR NZ,.L2 JR NZ,.L2
@ -440,10 +440,10 @@ PanelN6 EQU $+1
W_END W_END
LD HL,NormMouse LD HL,NormMouse
LD DE,PanelPlaceL LD DE,MAINTAB.PanelPlaceL
BIT PANELFLAG.B_SIDE,(IY+PANEL.PANELFLAG) BIT PANELFLAG.B_SIDE,(IY+PANEL.PANELFLAG)
JR Z,.L1 JR Z,.L1
LD DE,PanelPlaceR LD DE,MAINTAB.PanelPlaceR
.L1 PUSH DE .L1 PUSH DE
LD BC,0x0050 LD BC,0x0050
LDIR LDIR
@ -514,10 +514,10 @@ PanelP6 EQU $+1
W_END W_END
LD HL,PodrMouse LD HL,PodrMouse
LD DE,PanelPlaceL LD DE,MAINTAB.PanelPlaceL
BIT PANELFLAG.B_SIDE,(IY+PANEL.PANELFLAG) BIT PANELFLAG.B_SIDE,(IY+PANEL.PANELFLAG)
JR Z,.L1 JR Z,.L1
LD DE,PanelPlaceR LD DE,MAINTAB.PanelPlaceR
.L1 PUSH DE .L1 PUSH DE
LD BC,0x0050 LD BC,0x0050
LDIR LDIR

View File

@ -1,5 +1,5 @@
; LAST UPDATE: 02.08.2025 savelij ; LAST UPDATE: 14.08.2025 savelij
;[]=======================================================================[] ;[]=======================================================================[]
; FLEX NAVIGATOR ; ; FLEX NAVIGATOR ;
@ -12,7 +12,7 @@
PHASE BASE_ADDR PHASE BASE_ADDR
START_BLOCK_1 START_BLOCK_1
JP StartPoint ; entry point JP MainStartFN ; entry point
JP ClearScreen JP ClearScreen
JP MakeWindow JP MakeWindow
@ -39,7 +39,7 @@ START_BLOCK_1
JP CheckCoordsMouse JP CheckCoordsMouse
JP CMOSPrintDateTime JP CMOSPrintDateTime
DB JUMPS.JUMPSIZE DUP 0xC9;JP CMOSPrintOff DB JUMPS.JUMPSIZE * 1 DUP 0xC9
JP PointerMouseClock JP PointerMouseClock
JP PointerMousePointer JP PointerMousePointer
@ -73,18 +73,13 @@ CMOSFlag DB 0 ;
; 1 - ¥áâì ; 1 - ¥áâì
MouseFlag DB 1 ; ”« £ ¬ëè¨ 0 - ­¥â MouseFlag DB 1 ; ”« £ ¬ëè¨ 0 - ­¥â
; 1 - ¥áâì ; 1 - ¥áâì
CMOSPrint: DB 1 CMOSPrint: DB 1 ; ”« £ à §à¥è¥­¨ï ¯¥ç â¨ ¤ âë ¢à¥¬¥­¨
; 1 - § ¯à¥é¥­®, 0 - à §à¥è¥­®
RAMPAGES RAMPAGES
.FNPAGESID DB 0 ; ˆ­¤¥­â¨ä¨ª â®à ¯ ¬ï⨠£¤¥ FN .FNPAGESID DB 0 ; ˆ­¤¥­â¨ä¨ª â®à ¯ ¬ï⨠£¤¥ FN
.FNREZ2 DB 0 ; 0 ‘âà ­¨æ  á äã­ªæ¨ï¬¨ FN .FNREZ2 DB 0 ; 0 ‘âà ­¨æ  á äã­ªæ¨ï¬¨ FN
.FNFONT DB 0 ; 1 ‘âà ­¨æ  èà¨ä⮢ .FNFONT DB 0 ; 1 ‘âà ­¨æ  èà¨ä⮢
.FNREZ3 DB 0 ; 2 ‘âà ­¨æ  ¥é¥ ­¥¬­®£® ä㭪権 FN .FNREZ3 DB 0 ; 2 ‘âà ­¨æ  ¥é¥ ­¥¬­®£® ä㭪権 FN
IFDEF ENABLE.VIEW
.FNVIEW DB 0 ; 3 ‘âà ­¨æ  á FileViewer
ENDIF
IFDEF ENABLE.EDIT
.FNEDIT DB 0 ; 4 ‘âà ­¨æ  á FileEditor
ENDIF
; <20>ãä¥à­ë¥ áâà ­¨æë ¯®¤ ¨­â¥à䥩á ; <20>ãä¥à­ë¥ áâà ­¨æë ¯®¤ ¨­â¥à䥩á
.BufferID DB 0 ; ˆ­¤¥­â¨ä¨ª â®à ¯ ¬ï⨠¯®¤ ¡ãä¥à  .BufferID DB 0 ; ˆ­¤¥­â¨ä¨ª â®à ¯ ¬ï⨠¯®¤ ¡ãä¥à 
.FLX DB 0 ; 0 ‘âà ­¨æ  ¤«ï § £à㧪¨ FLX ¯« £¨­®¢ .FLX DB 0 ; 0 ‘âà ­¨æ  ¤«ï § £à㧪¨ FLX ¯« £¨­®¢
@ -182,6 +177,8 @@ RightPanel: DB 0x01 ;
DB 0x0A DUP 0 DB 0x0A DUP 0
DB PANEL.CURR_PATH_Size DUP 0 ; <20>ãâì ª ⥪ã饩 ¤¨à¥ªâ®à¨¨ DB PANEL.CURR_PATH_Size DUP 0 ; <20>ãâì ª ⥪ã饩 ¤¨à¥ªâ®à¨¨
thanks DZ "\r\nThank you for using Flex Navigator.\r\n"
DOSError EX AF,AF' DOSError EX AF,AF'
GETPORT WINSP.CPU1 GETPORT WINSP.CPU1
PUSH AF PUSH AF
@ -223,6 +220,28 @@ BCDEHLP: LD A,(HL)
LD B,A LD B,A
RET 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) GET_DWORD: LD E,(HL)
INC HL INC HL
LD D,(HL) LD D,(HL)
@ -241,7 +260,134 @@ SET_DWORD: LD (HL),E
LD (HL),B LD (HL),B
RET 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 ComExit CALL ResDrivers
@ -260,9 +406,9 @@ ComExit CALL ResDrivers
include fnsys.a80 include fnsys.a80
; ‘â àâ ; ‘â àâ
StartPoint: DI MainStartFN: DI
LD SP,STACK LD SP,STACK
ReStartPoint: ReStartFN:
SETPORT BORDER,0 SETPORT BORDER,0
SETPORT WINSP.Y_PORT,0xC0 SETPORT WINSP.Y_PORT,0xC0
CALL InitVideoMode CALL InitVideoMode
@ -272,10 +418,10 @@ ReStartPoint:
SUB A SUB A
CALL InitPanels CALL InitPanels
CALL WaitUnpressMouse CALL WaitUnpressMouse
MainLoop: LD IX,FilePanelLeft MainLoop: LD IX,MAINTAB.FilePanelLeft
BIT PANELFLAG.B_SIDE,(IY+PANEL.PANELFLAG) BIT PANELFLAG.B_SIDE,(IY+PANEL.PANELFLAG)
JR Z,.L1 JR Z,.L1
LD IX,FilePanelRight LD IX,MAINTAB.FilePanelRight
.L1 CALL CheckCoordsMouse .L1 CALL CheckCoordsMouse
CALL TestKeys CALL TestKeys
CALL C,DOSline CALL C,DOSline
@ -349,122 +495,8 @@ END_TREE
ENDIF ENDIF
include fnpanel.a80 include fnpanel.a80
include fndos.a80 include fndos.a80
include fnwork.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 fnmenu.a80
include fninit.a80 include fninit.a80
include fndosline.a80 include fndosline.a80
@ -472,20 +504,22 @@ RESIDENT
END_BLOCK_1: END_BLOCK_1:
DEPHASE ; BASE_ADDR DEPHASE ; BASE_ADDR
; ==============resident 2==============
PHASE 0x4000 PHASE 0x4000
START_BLOCK_2 START_BLOCK_2
include rez2_fnfunct.a80 include rez2_fnfunct.a80
include rez2_fnmisc.a80
include rez2_fnsearch.a80 include rez2_fnsearch.a80
include rez2_fnconfig.a80 include rez2_fnconfig.a80
include rez2_fnerror.a80 include rez2_fnerror.a80
include rez2_fntab1.a80 include rez2_fntab.a80
IF TREE_REZID IF TREE_REZID
include fntree.a80 include fntree.a80
ENDIF ENDIF
END_BLOCK_2: END_BLOCK_2:
DEPHASE ; 0x4000 DEPHASE ; 0x4000
; ==============resident 2==============
; ==============fonts==============
PHASE 0xC000 PHASE 0xC000
; MAIN.FNFONT ; MAIN.FNFONT
START_BLOCK_4 START_BLOCK_4
@ -496,57 +530,41 @@ IFFFONT_RAW_END
END_BLOCK_4: END_BLOCK_4:
DEPHASE ; 0xC000 DEPHASE ; 0xC000
; ==============fonts==============
; ==============resident 3==============
PHASE 0x4000 PHASE 0x4000
; MAIN.FNREZ3 ; MAIN.FNREZ3
START_BLOCK_3 START_BLOCK_3
include rez3_fnnext.a80 include rez3_fnnext.a80
include rez3_fnmark.a80 include rez3_fnmark.a80
include rez3_fnmisc.a80
include rez3_fntab.a80
; ¡ãä¥à  çâ®¡ë ¯ ¬ïâì ­¥ § ­¨¬ «¨ ¢ EXE ä ©«¥ ; ¡ãä¥à  çâ®¡ë ¯ ¬ïâì ­¥ § ­¨¬ «¨ ¢ EXE ä ©«¥
INIT_VAR 0x8000 ; á ª®­æ  áâà ­¨æë BUFFERS
MINUSVAR fnedit_ext, WorkBuffer_Size ;times 0x400 db 0 _INIT_VAR 0x8000 ; á ª®­æ  áâà ­¨æë
MINUSVAR fnview_ext, WorkBuffer_Size ;times 0x400 db 0 _MINUSVAR .DOShistory, 0x200 ;times 0x200 db 0
MINUSVAR fn_ext, WorkBuffer_Size ;times 0x400 db 0
MINUSVAR DOShistory, 0x200 ;times 0x200 db 0
IFDEF ENABLE.HELP _MINUSVAR .fnedit_ext, WorkBuffer_Size ;times 0x400 db 0
WINSP_CPU EQU WINSP.CPU3 ; ®ª­® ¯à®¥æ¨à®¢ ­¨ï _MINUSVAR .fnview_ext, WorkBuffer_Size ;times 0x400 db 0
WINSP_ADR EQU 0xC000 ;  ¤à¥á ®ª­  _MINUSVAR .fn_ext, WorkBuffer_Size ;times 0x400 db 0
include plugins/help/help.a80 _MINUSVAR .OLDPATH, 0x100 ; á®åà ­¥­­ë© ⥪ã騩 ¯ãâì
HelpText: include plugins/help/help_t.a80 _MINUSVAR .CURRPATHSRC, 0x100 ; ¢à¥¬¥­­®© ⥪ã騩 ¯ãâì ¨áâ®ç­¨ª 
HelpTextEnd: _MINUSVAR .CURRPATHDST, 0x100 ; ¢à¥¬¥­­®© ⥪ã騩 ¯ãâì ¯à¨¥¬­¨ª 
ENDIF _MINUSVAR .FINDBUF, 0x100 ; ¢à¥¬¥­­ë© ¡ãä¥à ¯®¨áª 
_MINUSVAR .LEVEL_DIR, BYTE ; ⥪ã騩 ã஢¥­ì ¤¨à¥ªâ®à¨¨
_MINUSVAR .ENDPATHSRC, WORD ;  ¤à¥á 墮áâ  ¯ã⨠¨áâ®ç­¨ª 
_MINUSVAR .ENDPATHDST, WORD ;  ¤à¥á 墮áâ  ¯ã⨠¯à¨¥¬­¨ª 
_MINUSVAR .CURR_DIRNAME, WORD ; ⥪ã騩  ¤à¥á ¢ ¯ãâ¨
END_BLOCK_3: END_BLOCK_3:
DEPHASE ; 0x4000 DEPHASE ; 0x4000
; ==============resident 3==============
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
; ç¨áâ® ¤«ï ®â« ¤ª¨ ; ç¨áâ® ¤«ï ®â« ¤ª¨
BLOCK1_SIZE EQU END_BLOCK_1 - START_BLOCK_1 ; ®á­®¢­®© ª®¤ BLOCK1_SIZE EQU END_BLOCK_1 - START_BLOCK_1 ; ®á­®¢­®© ª®¤
BLOCK2_SIZE EQU END_BLOCK_2 - START_BLOCK_2 ; १¨¤¥­â 2 BLOCK2_SIZE EQU END_BLOCK_2 - START_BLOCK_2 ; १¨¤¥­â 2
BLOCK3_SIZE EQU END_BLOCK_3 - START_BLOCK_3 ; १¨¤¥­â 3 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 ; á®àâ¨à®¢é¨ª SORT_SIZE EQU END_SORT - START_SORT ; á®àâ¨à®¢é¨ª
TREE_SIZE EQU END_TREE - START_TREE ; à ¡®â  á ¤¥à¥¢®¬ TREE_SIZE EQU END_TREE - START_TREE ; à ¡®â  á ¤¥à¥¢®¬

View File

@ -1,10 +1,10 @@
; LAST UPDATE: 31.07.2025 savelij ; LAST UPDATE: 14.08.2025 savelij
;[]==========================================================[] ;[]==========================================================[]
PullDown: CALL ResInvert PullDown: CALL ResInvert
CALL SetPullInvert CALL SetPullInvert
PullLoop: LD IX,PullTab PullLoop: LD IX,MAINTAB.PullTab
CALL CheckCoordsMouse CALL CheckCoordsMouse
SPDSS DSSF.SCANKEY SPDSS DSSF.SCANKEY
JR Z,PullLoop JR Z,PullLoop
@ -89,7 +89,7 @@ PullInvert: LD L,A
ADD HL,HL ; *4 ADD HL,HL ; *4
ADD HL,HL ; *8 ADD HL,HL ; *8
ADD HL,HL ; *16 ADD HL,HL ; *16
LD BC,PullTab LD BC,MAINTAB.PullTab
ADD HL,BC ADD HL,BC
PUSH HL PUSH HL
POP IX POP IX
@ -141,7 +141,7 @@ MenuFile: CALL ResInvert
W_TEXT 16,40,COLORP.HIGHGRAY,"Exit" W_TEXT 16,40,COLORP.HIGHGRAY,"Exit"
W_TEXT 100,40,COLORP.HIGHGRAY,"F10" W_TEXT 100,40,COLORP.HIGHGRAY,"F10"
W_END W_END
LD HL,FileTab LD HL,MAINTAB.FileTab
LD BC,3 LD BC,3
JP MenuWork JP MenuWork
@ -162,7 +162,7 @@ MenuSelect: CALL ResInvert
W_TEXT 16,62,COLORP.HIGHGRAY,"Invert selection" W_TEXT 16,62,COLORP.HIGHGRAY,"Invert selection"
W_TEXT 112,62,COLORP.HIGHGRAY,"*" W_TEXT 112,62,COLORP.HIGHGRAY,"*"
W_END W_END
LD HL,SelectTab LD HL,MAINTAB.SelectTab
LD BC,1 << 8 | 5 LD BC,1 << 8 | 5
JP MenuWork JP MenuWork
@ -186,7 +186,7 @@ MenuOption: CALL ResInvert
W_TEXT 16,54,COLORP.HIGHGRAY,"Plugins..." ; 03 W_TEXT 16,54,COLORP.HIGHGRAY,"Plugins..." ; 03
ENDIF ENDIF
W_END W_END
LD HL,OptionTab LD HL,MAINTAB.OptionTab
IF PLUGS_ENABLE IF PLUGS_ENABLE
LD BC,2 << 8 | 4 LD BC,2 << 8 | 4
ELSE ELSE
@ -326,7 +326,7 @@ MenuView: CALL ResInvert
W_TEXT 110,172,COLORP.HIGHGRAY,"\xFE CTRL+F7" W_TEXT 110,172,COLORP.HIGHGRAY,"\xFE CTRL+F7"
.sort5 EQU $ - STRLEN("v CTRL+F7v") .sort5 EQU $ - STRLEN("v CTRL+F7v")
W_END W_END
LD HL,ViewTab LD HL,MAINTAB.ViewTab
LD BC,3 << 8 | 12 LD BC,3 << 8 | 12
JP MenuWork JP MenuWork
@ -338,7 +338,7 @@ MenuConfig: CALL ResInvert
W_MAIN 174,26,96,20 W_MAIN 174,26,96,20
W_TEXT 16,6,COLORP.HIGHGRAY,"Setup..." W_TEXT 16,6,COLORP.HIGHGRAY,"Setup..."
W_END W_END
LD HL,ConfigTab LD HL,MAINTAB.ConfigTab
LD BC,4 << 8 | 1 LD BC,4 << 8 | 1
JP MenuWork JP MenuWork
@ -350,7 +350,7 @@ MenuAbout: CALL ResInvert
W_MAIN 222,26,112,20 W_MAIN 222,26,112,20
W_TEXT 16,6,COLORP.HIGHGRAY,"Version..." W_TEXT 16,6,COLORP.HIGHGRAY,"Version..."
W_END W_END
LD HL,AboutTab LD HL,MAINTAB.AboutTab
LD BC,5 << 8 | 1 LD BC,5 << 8 | 1
; HL -  ¤à¥á â ¡«¨æë  ªâ¨¢­ëå §®­ ; HL -  ¤à¥á â ¡«¨æë  ªâ¨¢­ëå §®­
; B - ⥪ã騩 ¯ã­ªâ ¬¥­î ; B - ⥪ã騩 ¯ã­ªâ ¬¥­î
@ -804,7 +804,7 @@ NewFilter: CALL ResInvert
NEG NEG
LD (FiltLen),A LD (FiltLen),A
LD IX,FilterStr LD IX,FilterStr
LD HL,FilterTab LD HL,MAINTAB.FilterTab
CALL InputLine CALL InputLine
WINDOWCLOSE WINDOWCLOSE
RET C RET C
@ -855,7 +855,7 @@ LeftDrive: CALL ResInvert
W_TEXT 86,3,COLORI.WHITE,"Left drive" W_TEXT 86,3,COLORI.WHITE,"Left drive"
W_END W_END
LD HL,LeftTab LD HL,LeftTab
LD DE,DriveTab LD DE,MAINTAB.DriveTab
LD BC,0x0020 LD BC,0x0020
LDIR LDIR
LD IX,LeftPanel LD IX,LeftPanel
@ -872,7 +872,7 @@ RightDrive: CALL ResInvert
W_TEXT 86,3,COLORI.WHITE,"Right drive" W_TEXT 86,3,COLORI.WHITE,"Right drive"
W_END W_END
LD HL,RightTab LD HL,RightTab
LD DE,DriveTab LD DE,MAINTAB.DriveTab
LD BC,0x0020 LD BC,0x0020
LDIR LDIR
LD IX,RightPanel LD IX,RightPanel
@ -885,7 +885,7 @@ RightTab: DEFW 0x0000,0x0160,0x0000,0x0100,0x20,0x0000,DriveExit,0x0000
ChangeDrv: PUSH IY ChangeDrv: PUSH IY
PUSH IX PUSH IX
POP IY POP IY
LD IX,BegDrive LD IX,MAINTAB.BegDrive
LD A,(NUM_DEVICES) LD A,(NUM_DEVICES)
ADD A,A ADD A,A
LD C,A LD C,A
@ -948,7 +948,7 @@ ChangeDrv: PUSH IY
SUB 'A' SUB 'A'
LD (CurDrive),A LD (CurDrive),A
CALL SetDriveInv CALL SetDriveInv
DriveLoop: LD IX,DriveTab DriveLoop: LD IX,MAINTAB.DriveTab
CALL CheckCoordsMouse CALL CheckCoordsMouse
SPDSS DSSF.SCANKEY SPDSS DSSF.SCANKEY
JR Z,DriveLoop JR Z,DriveLoop
@ -1016,7 +1016,7 @@ DriveRight: LD A,(NUM_DEVICES)
LD (CurDrive),A LD (CurDrive),A
JP SetDriveInv JP SetDriveInv
DriveMouse: LD IX,BegDrive DriveMouse: LD IX,MAINTAB.BegDrive
LD C,(IX+0x00) LD C,(IX+0x00)
LD B,(IX+0x01) LD B,(IX+0x01)
OR A OR A
@ -1074,7 +1074,7 @@ DriveInvert: LD L,A
ADD HL,HL ADD HL,HL
ADD HL,HL ADD HL,HL
ADD HL,HL ADD HL,HL
LD BC,BegDrive LD BC,MAINTAB.BegDrive
ADD HL,BC ADD HL,BC
PUSH HL PUSH HL
POP IX POP IX

View File

@ -1,5 +1,5 @@
; LAST UPDATE: 31.07.2025 savelij ; LAST UPDATE: 03.08.2025 savelij
;[]----------------------------------------------------------[] ;[]----------------------------------------------------------[]
ReadDIR BIT VIEWFLAG.B_TREE,(IY+PANEL.VIEWFLAG) ReadDIR BIT VIEWFLAG.B_TREE,(IY+PANEL.VIEWFLAG)
@ -390,7 +390,7 @@ SortDIR
LD A,(RAMPAGES.RIGHTPANEL) LD A,(RAMPAGES.RIGHTPANEL)
.L1 .L1
SETPORT WINSP.CPU1,,0 SETPORT WINSP.CPU1,,0
LD A,(RAMPAGES.BuffPg3) LD A,(RAMPAGES.BuffPg4)
SETPORT WINSP.CPU3,,0 SETPORT WINSP.CPU3,,0
LD HL,CPU3 LD HL,CPU3
LD (EndSort),HL LD (EndSort),HL
@ -486,7 +486,7 @@ SortDIR
INC HL INC HL
DJNZ .L3 DJNZ .L3
GETPORT WINSP.CPU1 GETPORT WINSP.CPU1
LD (RAMPAGES.BuffPg3),A LD (RAMPAGES.BuffPg4),A
GETPORT WINSP.CPU3 GETPORT WINSP.CPU3
BIT PANELFLAG.B_SIDE,(IY + PANEL.PANELFLAG) BIT PANELFLAG.B_SIDE,(IY + PANEL.PANELFLAG)
LD HL,RAMPAGES.LEFTPANEL LD HL,RAMPAGES.LEFTPANEL

View File

@ -1,5 +1,5 @@
; LAST UPDATE: 02.08.2025 savelij ; LAST UPDATE: 03.08.2025 savelij
;[]-----------------------------------------------------------[] ;[]-----------------------------------------------------------[]
; <20>à®æ¥¤ãà  ã¬­®¦¥­¨ï (8*8bit) ; <20>à®æ¥¤ãà  ã¬­®¦¥­¨ï (8*8bit)
@ -689,8 +689,12 @@ SkipWord: ld b,0x20
; HL' - X ¯®§¨æ¨ï ¢ë¢®¤  ¤ âë ; HL' - X ¯®§¨æ¨ï ¢ë¢®¤  ¤ âë
; DE' - Y ¯®§¨æ¨ï ¢ë¢®¤  ¤ âë ; DE' - Y ¯®§¨æ¨ï ¢ë¢®¤  ¤ âë
; B' - 梥⠢뢮¤  ¤ âë ; B' - 梥⠢뢮¤  ¤ âë
; A - ä®à¬ â ¢ë¢®¤  ¬¥áïæ  ¢ ¤ â¥
; 1 - ¬¥áïæ ¢ë¢®¤¨âáï ç¨á«®¬
; 2 - ¬¥áïæ ¢ë¢®¤¨âáï ⥪á⮬,
; ç¨á«® ¢ë¢®¤¨âáï ¡¥§ ¢¥¤ã饣® ­ã«ï
CMOSPrintDateTime: CMOSPrintDateTime:
EX AF,AF' LD (CMOSpos.CMOSOut),A
LD (CMOSpos.posXtime),HL LD (CMOSpos.posXtime),HL
LD (CMOSpos.posYtime),DE LD (CMOSpos.posYtime),DE
LD A,B LD A,B
@ -701,35 +705,12 @@ CMOSPrintDateTime:
LD (CMOSPrint),A LD (CMOSPrint),A
LD (CMOSpos.Time),HL LD (CMOSpos.Time),HL
LD (CMOSpos.Time + 2),A 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 EXX
LD (CMOSpos.posXDate),HL LD (CMOSpos.posXDate),HL
LD (CMOSpos.posYDate),DE LD (CMOSpos.posYDate),DE
LD A,B LD A,B
LD (CMOSpos.colorDate),A LD (CMOSpos.colorDate),A
EXX EXX
; JR TestCMOS
TestCMOS: LD A,(CMOSFlag) TestCMOS: LD A,(CMOSFlag)
OR A OR A
RET Z RET Z
@ -752,7 +733,7 @@ TestCMOS: LD A,(CMOSFlag)
JR NZ,.PrnCMOSTime JR NZ,.PrnCMOSTime
LD A,(CMOSpos.Time + 2) LD A,(CMOSpos.Time + 2)
CP B CP B
JR Z,TCMOS1 JR Z,.TCMOS1
.PrnCMOSTime: EX DE,HL .PrnCMOSTime: EX DE,HL
LD (CMOSpos.Time),HL LD (CMOSpos.Time),HL
LD A,B LD A,B
@ -771,28 +752,13 @@ TestCMOS: LD A,(CMOSFlag)
LD BC,(CMOSpos.posYtime) LD BC,(CMOSpos.posYtime)
LD A,(CMOSpos.colorTime) LD A,(CMOSpos.colorTime)
CALL PrintTxtLine_IFF CALL PrintTxtLine_IFF
TCMOS1 POP IX .TCMOS1 POP IX
POP DE ; DE,IX ¢®ááâ ­®¢¨«¨ ¤¥­ì,¬¥áïæ,£®¤ POP DE ; DE,IX ¢®ááâ ­®¢¨«¨ ¤¥­ì,¬¥áïæ,£®¤
LD A,(CMOSpos.CMOSOut) LD A,(CMOSpos.CMOSOut)
OR A OR A
JP Z,TCMOSexit 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 EX DE,HL
LD (CMOSpos.Date),HL ; ¤¥­ì,¬¥áïæ LD (CMOSpos.Date),HL ; ¤¥­ì,¬¥áïæ
; LD A,B
LD (CMOSpos.Date + 2),IX ; £®¤ LD (CMOSpos.Date + 2),IX ; £®¤
LD A,(CMOSpos.CMOSOut) LD A,(CMOSpos.CMOSOut)
DEC A DEC A
@ -805,12 +771,8 @@ TCMOS1 POP IX
LD A,L LD A,L
CALL Conv4CMOS CALL Conv4CMOS
INC DE INC DE
; LD A,(CMOSpos.Date + 2)
LD HL,(CMOSpos.Date + 2) LD HL,(CMOSpos.Date + 2)
CALL ConvertNumbers_16b;Conv4CMOS CALL ConvertNumbers_16b
; LD A,(CMOSpos.CMOSOut)
; DEC A
; JR NZ,.TCMOS2
LD HL,CMOSpos.DateTXT LD HL,CMOSpos.DateTXT
LD DE,(CMOSpos.posXDate) LD DE,(CMOSpos.posXDate)
LD BC,(CMOSpos.posYDate) LD BC,(CMOSpos.posYDate)
@ -828,9 +790,7 @@ TCMOS1 POP IX
LD A,L LD A,L
DEC A DEC A
ADD A,A ADD A,A
; LD L,A
ADD A,A ADD A,A
; ADD A,L
LD HL,Month LD HL,Month
ADD A,L ADD A,L
LD L,A LD L,A
@ -841,32 +801,11 @@ TCMOS1 POP IX
.L2 LDI .L2 LDI
CP (HL) CP (HL)
JR NZ,.L2 JR NZ,.L2
; LD (DE),A
; INC DE
LDI LDI
; PUSH IX
; POP HL
LD HL,(CMOSpos.Date + 2) LD HL,(CMOSpos.Date + 2)
CALL ConvertNumbers_16b CALL ConvertNumbers_16b
SUB A SUB A
LD (DE),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 HL,CMOSpos.DateT1
LD DE,(CMOSpos.posXDate) LD DE,(CMOSpos.posXDate)
LD BC,(CMOSpos.posYDate) LD BC,(CMOSpos.posYDate)
@ -875,10 +814,6 @@ TCMOS1 POP IX
TCMOSexit POP IX TCMOSexit POP IX
RET RET
;CMOSPrintOff: LD A,DateMonthFormat.Digit
; LD (CMOSPrint),A
; RET
Conv4CMOS: EX DE,HL Conv4CMOS: EX DE,HL
LD BC,(('0' - 1) << 8) + 10 LD BC,(('0' - 1) << 8) + 10
.L1 INC B .L1 INC B
@ -937,7 +872,7 @@ PointerMouseClock:
PUSH AF PUSH AF
LD A,(RAMPAGES.FNFONT) LD A,(RAMPAGES.FNFONT)
SETPORT WINSP.CPU3,,0 SETPORT WINSP.CPU3,,0
LD IX,CLOCK_BMP;ClockBMP LD IX,CLOCK_BMP
LD HL,14 << 8 + 9 LD HL,14 << 8 + 9
LD DE,7 << 8 | 4 LD DE,7 << 8 | 4
SPMOUSE MOUSEF.LOAD_IMAGE SPMOUSE MOUSEF.LOAD_IMAGE
@ -964,7 +899,7 @@ PointerMousePointer:
PUSH AF PUSH AF
LD A,(RAMPAGES.FNFONT) LD A,(RAMPAGES.FNFONT)
SETPORT WINSP.CPU3,,0 SETPORT WINSP.CPU3,,0
LD IX,MOUSE_BMP;MouseBMP LD IX,MOUSE_BMP
LD HL,13 << 8 + 9 LD HL,13 << 8 + 9
LD DE,0 LD DE,0
SPMOUSE MOUSEF.LOAD_IMAGE SPMOUSE MOUSEF.LOAD_IMAGE

View File

@ -1,5 +1,5 @@
; LAST UPDATE: 01.08.2025 savelij ; LAST UPDATE: 14.08.2025 savelij
;[]==========================================================[] ;[]==========================================================[]
; ”®à¬ â â ¡«¨æë ; ”®à¬ â â ¡«¨æë
@ -29,7 +29,10 @@
; +0A 2 €¤à¥á ®¡à ¡®â稪  ¯à¨ ­¥ ­ ¦ â®¬ ®£­¥ ; +0A 2 €¤à¥á ®¡à ¡®â稪  ¯à¨ ­¥ ­ ¦ â®¬ ®£­¥
; +0C 2 €¤à¥á ®¡à ¡®â稪  ¯à¨ ­ ¦ â®¬ ®£­¥ («¥¢) ; +0C 2 €¤à¥á ®¡à ¡®â稪  ¯à¨ ­ ¦ â®¬ ®£­¥ («¥¢)
; +0E 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 40, 84, 15, 26,%0000000000000000,0,MenuSelect,0
DW 84,138, 15, 26,%0000000000000000,0,MenuOption,0 DW 84,138, 15, 26,%0000000000000000,0,MenuOption,0
DW 138,174, 15, 26,%0000000000000000,0,MenuView,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 222,262, 15, 26,%0000000000000000,0,MenuAbout,0
DW 324,636, 44,225,%0000000000000000,0,ChPanel,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 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 480,560,242,256,%0000000000000001,0,RESIDENT.DeleteFiles,0
DW 560,640,242,256,%0000000000000001,0,RESIDENT.Quit,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 326,354, 30, 42,%0000000000000001,0,ChangeDriveR,0
DW 34, 62, 30, 42,%0000000000000001,0,ChangeDriveL,0 ; B DW 34, 62, 30, 42,%0000000000000001,0,ChangeDriveL,0 ; B
DW 354,382, 30, 42,%0000000000000001,0,ChangeDriveR,0 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 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 40, 84, 15, 26,%0000000000000000,0,MenuSelect,0
DW 84,138, 15, 26,%0000000000000000,0,MenuOption,0 DW 84,138, 15, 26,%0000000000000000,0,MenuOption,0
DW 138,174, 15, 26,%0000000000000000,0,MenuView,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 222,262, 15, 26,%0000000000000000,0,MenuAbout,0
DW 4,316, 44,225,%0000000000000000,0,ChPanel,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 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 480,560,242,256,%0000000000000001,0,RESIDENT.DeleteFiles,0
DW 560,640,242,256,%0000000000000001,0,RESIDENT.Quit,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 326,354, 30, 42,%0000000000000001,0,ChangeDriveR,0
DW 34, 62, 30, 42,%0000000000000001,0,ChangeDriveL,0 ; B DW 34, 62, 30, 42,%0000000000000001,0,ChangeDriveL,0 ; B
DW 354,382, 30, 42,%0000000000000001,0,ChangeDriveR,0 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 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, 43, 57,%0000000100100100,0,RESIDENT.PrintFileL3,0
DW 8,160, 63, 77,%0000000100100100,0,RESIDENT.QuitL1,0 DW 8,160, 63, 77,%0000000100100100,0,RESIDENT.QuitL1,0
DW 6, 40, 15, 26,%0000000100101000,0,MenuExit,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 164,640, 0,256,%0000000100100000,0,MenuExit,0
DW 0x8000 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, 43, 57,%0000000100100100,0,RESIDENT.UnMarkGroupN,0
DW 44,196, 57, 71,%0000000100100100,0,RESIDENT.SelectAllN,0 DW 44,196, 57, 71,%0000000100100100,0,RESIDENT.SelectAllN,0
DW 44,196, 71, 85,%0000000100100100,0,RESIDENT.UnSelectAllN,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 DW 0x8000
; ¯®¤¬¥­î "Options" ; ¯®¤¬¥­î "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, 43, 57,%0000000100100100,0,RESIDENT.DiskInfoL4,0 ; Options->Disk info
DW 88,288, 63, 77,%0000000100100100,0,RESIDENT.SystemInfo,0 ; Options->System information DW 88,288, 63, 77,%0000000100100100,0,RESIDENT.SystemInfo,0 ; Options->System information
IF PLUGS_ENABLE IF PLUGS_ENABLE
@ -177,7 +180,7 @@ OptionTab DW 88,288, 29, 43,%0000000100100100,0,RefreshTree,0 ; Options->Refres
DW 0x8000 DW 0x8000
; ¯®¤¬¥­î "View" ; ¯®¤¬¥­î "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, 43, 57,%0000000100100100,0,ChView2,0
DW 142,324, 57, 71,%0000000100100100,0,ChView3,0 DW 142,324, 57, 71,%0000000100100100,0,ChView3,0
DW 142,324, 77, 91,%0000000100100100,0,ChFilt1,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 330,640, 0,256,%0000000101100000,0,MenuExit,0
DW 0x8000 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 6, 40, 15, 26,%0000000010010000,MenuFile.L2,0,0
DW 40, 84, 15, 26,%0000000010010000,MenuSelect.L2,0,0 DW 40, 84, 15, 26,%0000000010010000,MenuSelect.L2,0,0
DW 84,138, 15, 26,%0000000010010000,MenuOption.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 270,640, 0,256,%0000000100100000,0,MenuExit,0
DW 0x8000 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 6, 40, 15, 26,%0000000010010000,MenuFile.L2,0,0
DW 40, 84, 15, 26,%0000000010010000,MenuSelect.L2,0,0 DW 40, 84, 15, 26,%0000000010010000,MenuSelect.L2,0,0
DW 84,138, 15, 26,%0000000010010000,MenuOption.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 334,640, 0,256,%0000000100100000,0,MenuExit,0
DW 0x8000 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 40, 84, 15, 26,%0000000000100000,0,MSelect,0
DW 84,138, 15, 26,%0000000000100000,0,MOption,0 DW 84,138, 15, 26,%0000000000100000,0,MOption,0
DW 138,174, 15, 26,%0000000000100000,0,MView,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 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 328,400,123,137,%0000000000000001,0,InputLine.InputLineExitCancel,0
DW 0,208, 0,256,%0000000000000000,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 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 0,640,143,256,%0000000000000000,0,InputLine.InputLineExitCancel,0
DW 0x8000 DW 0x8000
SMaskTab DW 240,312,123,137,%0000000000000001,0,InputLine.InputLineExitOk,0 .DOSTab DW 0,256, 0,256,%0000000000000000,0,DOSLnExtC,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
DW 636,640, 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, 0,229,%0000000000000000,0,DOSLnExtC,0
DW 0,640,239,256,%0000000000000000,0,DOSLnExtC,0 DW 0,640,239,256,%0000000000000000,0,DOSLnExtC,0
DW 0x8000 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 328,400,123,137,%0000000000000001,0,InputLine.InputLineExitCancel,0
DW 0,200, 0,256,%0000000000000000,0,InputLine.InputLineExitCancel,0 DW 0,200, 0,256,%0000000000000000,0,InputLine.InputLineExitCancel,0
DW 440,640, 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 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, 0, 0, 0,%0000000000100000,0,DriveExit,0
DW 0,640, 0, 92,%0000000000100000,0,DriveExit,0 DW 0,640, 0, 92,%0000000000100000,0,DriveExit,0
DW 0,640,128,256,%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 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 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, 23,100, 10,%0000000000000000,0,SelectPlugin.NUM01,0
DW 4, 33,100, 10,%0000000000000000,0,SelectPlugin.NUM02,0 DW 4, 33,100, 10,%0000000000000000,0,SelectPlugin.NUM02,0
DW 4, 43,100, 10,%0000000000000000,0,SelectPlugin.NUM03,0 DW 4, 43,100, 10,%0000000000000000,0,SelectPlugin.NUM03,0

View File

@ -1,5 +1,5 @@
; LAST UPDATE: 31.07.2025 savelij ; LAST UPDATE: 03.08.2025 savelij
MAX_LEVEL_DIR EQU 21 MAX_LEVEL_DIR EQU 21
@ -28,7 +28,7 @@ ReadTreeR PUSH IY
GETPORT WINSP.CPU3 GETPORT WINSP.CPU3
LD B,A LD B,A
PUSH BC PUSH BC
LD A,(RAMPAGES.BuffPg3) LD A,(RAMPAGES.BuffPg4)
SETPORT WINSP.CPU1,,0 SETPORT WINSP.CPU1,,0
BIT PANELFLAG.B_SIDE,(IY+PANEL.PANELFLAG) BIT PANELFLAG.B_SIDE,(IY+PANEL.PANELFLAG)
LD A,(RAMPAGES.LEFTPANEL) LD A,(RAMPAGES.LEFTPANEL)
@ -182,7 +182,7 @@ ReadTreeR PUSH IY
SET VIEWFLAG.B_SHORTTREE,(IY+PANEL.VIEWFLAG) SET VIEWFLAG.B_SHORTTREE,(IY+PANEL.VIEWFLAG)
.L4 .L4
GETPORT WINSP.CPU3 GETPORT WINSP.CPU3
LD (RAMPAGES.BuffPg3),A LD (RAMPAGES.BuffPg4),A
GETPORT WINSP.CPU1 GETPORT WINSP.CPU1
BIT PANELFLAG.B_SIDE,(IY+PANEL.PANELFLAG) BIT PANELFLAG.B_SIDE,(IY+PANEL.PANELFLAG)
LD HL,RAMPAGES.LEFTPANEL LD HL,RAMPAGES.LEFTPANEL

View File

@ -1,5 +1,5 @@
; LAST UPDATE: 31.07.2025 savelij ; LAST UPDATE: 14.08.2025 savelij
;[]===========================================================[] ;[]===========================================================[]
CursUp LD A,(IY + PANEL.FILES_ALL) CursUp LD A,(IY + PANEL.FILES_ALL)
@ -70,7 +70,7 @@ ScrlDn1 BIT VIEWFLAG.B_FULL,(IY + PANEL.VIEWFLAG)
PUSH HL PUSH HL
LDIR LDIR
POP HL POP HL
LD DE,0x18*0x11 LD DE,FileHDR.SIZE * NUM_FILES_PANEL
ADD HL,DE ADD HL,DE
LD E,IXL LD E,IXL
LD D,IXH LD D,IXH
@ -84,7 +84,7 @@ ScrlDn1 BIT VIEWFLAG.B_FULL,(IY + PANEL.VIEWFLAG)
PUSH HL PUSH HL
LDIR LDIR
POP HL POP HL
LD DE,0x18*0x11 LD DE,FileHDR.SIZE * NUM_FILES_PANEL
ADD HL,DE ADD HL,DE
LD E,IXL LD E,IXL
LD D,IXH LD D,IXH
@ -419,14 +419,14 @@ ScrlUp1 BIT VIEWFLAG.B_FULL,(IY+PANEL.VIEWFLAG)
PUSH HL PUSH HL
LDIR LDIR
POP HL POP HL
LD DE,0x18*0x11 LD DE,FileHDR.SIZE * NUM_FILES_PANEL
ADD HL,DE ADD HL,DE
LD DE,WorkBuffer+0x10 LD DE,WorkBuffer+0x10
LD C,0x0E LD C,0x0E
PUSH HL PUSH HL
LDIR LDIR
POP HL POP HL
LD DE,0x18*0x11 LD DE,FileHDR.SIZE * NUM_FILES_PANEL
ADD HL,DE ADD HL,DE
LD DE,WorkBuffer+0x20 LD DE,WorkBuffer+0x20
LD C,0x0E LD C,0x0E
@ -1356,7 +1356,7 @@ ShowDSexit
JP WaitUnpressMouse JP WaitUnpressMouse
;[]==========================================================[] ;[]==========================================================[]
RunEXEfile: LD IX,fn_ext RunEXEfile: LD IX,BUFFERS.fn_ext
LD DE,PrevFile LD DE,PrevFile
PUSH DE PUSH DE
SUB A SUB A
@ -1894,7 +1894,7 @@ ViewFileSH: BIT VIEWFLAG.B_TREE,(IY+PANEL.VIEWFLAG)
W_FILL 88,23,130,10,COLORI.WHITE W_FILL 88,23,130,10,COLORI.WHITE
W_END W_END
LD IX,ViewStr LD IX,ViewStr
LD HL,ViewEditTab LD HL,MAINTAB.ViewEditTab
CALL InputLine CALL InputLine
WINDOWCLOSE WINDOWCLOSE
RET C RET C
@ -1938,14 +1938,12 @@ StViewFile: LD A,0x01
LD A,(IY+PANEL.FILES_ALL) LD A,(IY+PANEL.FILES_ALL)
OR (IY+PANEL.FILES_ALL + 1) OR (IY+PANEL.FILES_ALL + 1)
RET Z RET Z
IFNDEF ENABLE.VIEW
; ¯®¯ë⪠ § £à㧪¨ ¯« £¨­  ; ¯®¯ë⪠ § £à㧪¨ ¯« £¨­ 
CALL LOADFLX4RUN CALL LOADFLX4RUN
DZ FILENAME.VIEW_FLX DZ FILENAME.VIEW_FLX
; ¢ë¢®¤ ®è¨¡ª¨ "<22>« £¨­ ­¥ ­ ©¤¥­" ; ¢ë¢®¤ ®è¨¡ª¨ "<22>« £¨­ ­¥ ­ ©¤¥­"
LD A,FNinternal.PlugNotFound LD A,FNinternal.PlugNotFound
JP C,DOSError JP C,DOSError
ENDIF
GETPORT WINSP.CPU1 GETPORT WINSP.CPU1
PUSH AF PUSH AF
BIT PANELFLAG.B_SIDE,(IY+PANEL.PANELFLAG) BIT PANELFLAG.B_SIDE,(IY+PANEL.PANELFLAG)
@ -1991,7 +1989,7 @@ StViewFile: LD A,0x01
VFlag: EQU $-1 VFlag: EQU $-1
OR A OR A
JR NZ,View1 JR NZ,View1
View: LD IX,fnview_ext View: LD IX,BUFFERS.fnview_ext
LD DE,PrevFile LD DE,PrevFile
CALL TestEXT CALL TestEXT
RET NC RET NC
@ -2021,12 +2019,7 @@ View1: CALL ResInvert
LD C,WINSP.CPU1 ; ®ª­® § ¯ã᪠ á  ¤à¥á  0x4000 LD C,WINSP.CPU1 ; ®ª­® § ¯ã᪠ á  ¤à¥á  0x4000
JR NZ,.L4 JR NZ,.L4
LD C,WINSP.CPU3 ; ®ª­® § ¯ã᪠ á  ¤à¥á  0xC000 LD C,WINSP.CPU3 ; ®ª­® § ¯ã᪠ á  ¤à¥á  0xC000
.L4 .L4 LD A,(RAMPAGES.FLX)
IFDEF ENABLE.VIEW
LD A,(RAMPAGES.FNVIEW)
ELSE
LD A,(RAMPAGES.FLX)
ENDIF
CALL Resident CALL Resident
LD HL,0 LD HL,0
LD (RunFLX.FLXexec),HL ; ¯à¨ ¢ë室¥ ¨§ ¯« £¨­  £«ã訬  ¤à¥á § £à㧪¨ 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_FILL 88,23,130,10,COLORI.WHITE
W_END W_END
LD IX,EditStr LD IX,EditStr
LD HL,ViewEditTab LD HL,MAINTAB.ViewEditTab
CALL InputLine CALL InputLine
WINDOWCLOSE WINDOWCLOSE
RET C RET C
@ -2105,14 +2098,12 @@ StEditFile: LD A,0x01
LD A,(IY+PANEL.FILES_ALL) LD A,(IY+PANEL.FILES_ALL)
OR (IY+PANEL.FILES_ALL + 1) OR (IY+PANEL.FILES_ALL + 1)
RET Z RET Z
IFNDEF ENABLE.VIEW
; ¯®¯ë⪠ § £à㧪¨ ¯« £¨­  ; ¯®¯ë⪠ § £à㧪¨ ¯« £¨­ 
CALL LOADFLX4RUN CALL LOADFLX4RUN
DZ FILENAME.EDIT_FLX DZ FILENAME.EDIT_FLX
; ¢ë¢®¤ ®è¨¡ª¨ "<22>« £¨­ ­¥ ­ ©¤¥­" ; ¢ë¢®¤ ®è¨¡ª¨ "<22>« £¨­ ­¥ ­ ©¤¥­"
LD A,FNinternal.PlugNotFound LD A,FNinternal.PlugNotFound
JP C,DOSError JP C,DOSError
ENDIF
GETPORT WINSP.CPU1 GETPORT WINSP.CPU1
PUSH AF PUSH AF
BIT PANELFLAG.B_SIDE,(IY+PANEL.PANELFLAG) BIT PANELFLAG.B_SIDE,(IY+PANEL.PANELFLAG)
@ -2158,7 +2149,7 @@ StEditFile: LD A,0x01
EFlag: EQU $-1 EFlag: EQU $-1
OR A OR A
JR NZ,Edit1 JR NZ,Edit1
Edit: LD IX,fnedit_ext Edit: LD IX,BUFFERS.fnedit_ext
LD DE,PrevFile LD DE,PrevFile
CALL TestEXT CALL TestEXT
RET NC RET NC
@ -2188,12 +2179,7 @@ Edit1: CALL ResInvert
LD C,WINSP.CPU1 ; ®ª­® § ¯ã᪠ á  ¤à¥á  0x4000 LD C,WINSP.CPU1 ; ®ª­® § ¯ã᪠ á  ¤à¥á  0x4000
JR NZ,.L4 JR NZ,.L4
LD C,WINSP.CPU3 ; ®ª­® § ¯ã᪠ á  ¤à¥á  0xC000 LD C,WINSP.CPU3 ; ®ª­® § ¯ã᪠ á  ¤à¥á  0xC000
.L4 .L4 LD A,(RAMPAGES.FLX)
IFDEF ENABLE.VIEW
LD A,(RAMPAGES.FNEDIT)
ELSE
LD A,(RAMPAGES.FLX)
ENDIF
CALL Resident CALL Resident
LD HL,0 LD HL,0
LD (RunFLX.FLXexec),HL ; ¯à¨ ¢ë室¥ ¨§ ¯« £¨­  £«ã訬  ¤à¥á § £à㧪¨ LD (RunFLX.FLXexec),HL ; ¯à¨ ¢ë室¥ ¨§ ¯« £¨­  £«ã訬  ¤à¥á § £à㧪¨

View File

@ -1,5 +1,5 @@
; LAST UPDATE: 02.08.2025 savelij ; LAST UPDATE: 03.08.2025 savelij
ENABLE_CODEPAGE EQU 0 ENABLE_CODEPAGE EQU 0
@ -391,15 +391,15 @@ FEInitScreen
LD BC,0x0011 LD BC,0x0011
LD A,COLORP.HIGHGRAY + COLORI.BLACK LD A,COLORP.HIGHGRAY + COLORI.BLACK
CALL JUMPS.PrintPathLeft CALL JUMPS.PrintPathLeft
LD HL,508 LD HL,520
LD DE,3 LD DE,3
LD B,COLORP.BLACK + COLORI.HIGHGRAY LD B,COLORP.BLACK + COLORI.HIGHGRAY
EXX EXX
LD HL,558 LD HL,568
LD DE,3 LD DE,3
LD B,COLORP.BLACK + COLORI.HIGHGRAY LD B,COLORP.BLACK + COLORI.HIGHGRAY
EXX EXX
LD A,DateMonthFormat.Text LD A,DateMonthFormat.Digit
JP JUMPS.CMOSPrintDateTime JP JUMPS.CMOSPrintDateTime
;[]==========================================================[] ;[]==========================================================[]

View File

@ -1,5 +1,5 @@
; LAST UPDATE: 02.08.2025 savelij ; LAST UPDATE: 03.08.2025 savelij
LineBuffer := WorkBuffer+0x300 LineBuffer := WorkBuffer+0x300
@ -486,10 +486,10 @@ FVFAttrib EQU $ - STRLEN(" ") - 1
W_END W_END
SPDSS DSSF.CURDISK SPDSS DSSF.CURDISK
LD HL,WorkBuffer LD HL,WorkBuffer
ADD A,"A" ADD A,'A'
LD (HL),A LD (HL),A
INC HL INC HL
LD (HL),":" LD (HL),':'
INC HL INC HL
PUSH HL PUSH HL
SPDSS DSSF.CURDIR SPDSS DSSF.CURDIR
@ -512,21 +512,21 @@ FVFAttrib EQU $ - STRLEN(" ") - 1
CP (HL) CP (HL)
JR NZ,.L6 JR NZ,.L6
LD (DE),A LD (DE),A
LD IX,0x0200 LD IX,512
LD HL,WorkBuffer LD HL,WorkBuffer
LD DE,0x0034 LD DE,52
LD BC,0x0011 LD BC,17
LD A,COLORP.HIGHGRAY + COLORI.BLACK LD A,COLORP.HIGHGRAY + COLORI.BLACK
CALL JUMPS.PrintPathLeft CALL JUMPS.PrintPathLeft
LD HL,508 LD HL,520
LD DE,3 LD DE,3
LD B,COLORP.BLACK + COLORI.HIGHGRAY LD B,COLORP.BLACK + COLORI.HIGHGRAY
EXX EXX
LD HL,558 LD HL,568
LD DE,3 LD DE,3
LD B,COLORP.BLACK + COLORI.HIGHGRAY LD B,COLORP.BLACK + COLORI.HIGHGRAY
EXX EXX
LD A,DateMonthFormat.Text LD A,DateMonthFormat.Digit
JP JUMPS.CMOSPrintDateTime JP JUMPS.CMOSPrintDateTime
FVFAtributs DEFB "--ad-shr" FVFAtributs DEFB "--ad-shr"

View File

@ -3,12 +3,14 @@ Flex Navigator для компьютера Sprinter
Собранные файлы забирать из папки fn Собранные файлы забирать из папки fn
`FileEditor.flx 1.10:` `FlexNavigator 1.16.03`
- устранено перепутанные кнопки для нажатий мышью для F7 и F9. - MISC функции перенесены из 2 резидента в 3.
- перераспределение TAB таблиц.
- в описание Flex Navigator API добавлено описание глобальных
переменных.
`FileViewer.flx 1.06:` `FileViewer.flx 1.07`
- добавлено переключение кодировки в режиме HEX просмотра. - мелкое исправление позиции вывода даты/времени.
`FlexNavigaror 1.16.01:` `FileEditor.flx 1.11`
- исправлен вылет при создании нового файла по Shift+F4 или просмотр с - мелкое исправление позиции вывода даты/времени.
вводом имени по Shift+F3, плагин был не загружен.

View File

@ -1,5 +1,5 @@
; LAST UPDATE: 01.08.2025 savelij ; LAST UPDATE: 14.08.2025 savelij
PALITRA.RESERV EQU PALETTE + 0x34 PALITRA.RESERV EQU PALETTE + 0x34
@ -84,7 +84,7 @@ SaveFlg EQU $-2
LD IX,BarBlue LD IX,BarBlue
CALL InitScrollBar CALL InitScrollBar
CALL InitElement CALL InitElement
SetupLoop LD IX,SetupTab SetupLoop LD IX,REZ2TAB.SetupTab
CALL CheckCoordsMouse CALL CheckCoordsMouse
SPDSS DSSF.SCANKEY SPDSS DSSF.SCANKEY
JR Z,SetupLoop JR Z,SetupLoop
@ -511,7 +511,7 @@ InputColor LD (ColorY),BC
SUB LOW (ColText) SUB LOW (ColText)
LD (ColLen),A LD (ColLen),A
InpAg LD IX,ColorStr InpAg LD IX,ColorStr
LD HL,EmptyTab LD HL,REZ2TAB.EmptyTab
CALL InputLine CALL InputLine
POP DE POP DE
POP HL POP HL

View File

@ -1,5 +1,5 @@
; LAST UPDATE: 31.07.2025 savelij ; LAST UPDATE: 14.08.2025 savelij
;[]==========================================================[] ;[]==========================================================[]
CopyFilesR LD A,(IY + PANEL.FILES_ALL) CopyFilesR LD A,(IY + PANEL.FILES_ALL)
@ -11,7 +11,7 @@ CopyFilesR LD A,(IY + PANEL.FILES_ALL)
LD A,(IY + PANEL.FILES_MARK) LD A,(IY + PANEL.FILES_MARK)
OR (IY + PANEL.FILES_MARK + 1) OR (IY + PANEL.FILES_MARK + 1)
JP NZ,CopyMark ; ¥áâì ¯®¬¥ç¥­­ë¥ ä ©«ë JP NZ,CopyMark ; ¥áâì ¯®¬¥ç¥­­ë¥ ä ©«ë
; ª®¯¨à®¢ ­¨¥ ä ©« /¤¨àë ¯®¤ ªãàá®à®¬ ; ª®¯¨à®¢ ­¨¥ ä ©« /¤¨àë ¯®¤ ªãàá®à®¬, ¡¥§ ¯®¬¥âª¨
GETPORT WINSP.CPU3 GETPORT WINSP.CPU3
PUSH AF PUSH AF
BIT PANELFLAG.B_SIDE,(IY + PANEL.PANELFLAG) BIT PANELFLAG.B_SIDE,(IY + PANEL.PANELFLAG)
@ -35,12 +35,15 @@ CopyFilesR LD A,(IY + PANEL.FILES_ALL)
ADD HL,DE ; *18 ADD HL,DE ; *18
SET 6,H SET 6,H
SET 7,H ; | 0xC000 SET 7,H ; | 0xC000
LD (AdrCopyFile),HL LD (COPY.PathCurrFile),HL
LD DE,WorkBuffer LD DE,WorkBuffer
LD BC,FileHDR.SIZE LD BC,FileHDR.SIZE
LDIR LDIR
POP AF POP AF
SETPORT WINSP.CPU3,,0 SETPORT WINSP.CPU3,,0
LD HL,CopyNextFile.FLAG_DIRCOPY
XOR A ; ª®¯¨à®¢ âì ⮫쪮 ä ©«ë
LD (HL),A
BIT DIR.B_Dir,(IX + FileHDR.Attr) BIT DIR.B_Dir,(IX + FileHDR.Attr)
IF MARK_DIR IF MARK_DIR
JP NZ,COPY_DIR JP NZ,COPY_DIR
@ -48,63 +51,48 @@ CopyFilesR LD A,(IY + PANEL.FILES_ALL)
RET NZ RET NZ
ENDIF ENDIF
LD HL,0 LD HL,0
LD (CopyFiles),HL LD (COPY.CopyFiles),HL
LD L,(IX + FileHDR.SizeBytes) LD L,(IX + FileHDR.SizeBytes)
LD H,(IX + FileHDR.SizeBytes + 1) LD H,(IX + FileHDR.SizeBytes + 1)
LD (CopyBytes),HL LD (COPY.CopyBytes),HL
LD E,(IX + FileHDR.SizeBytes + 2) LD E,(IX + FileHDR.SizeBytes + 2)
LD D,(IX + FileHDR.SizeBytes + 3) LD D,(IX + FileHDR.SizeBytes + 3)
LD (CopyBytes + 2),DE LD (COPY.CopyBytes + 2),DE
CALL ConvBytes2Pages CALL ConvBytes2Pages
JP CopyNxt JP CopyNxt
IF MARK_DIR IF MARK_DIR
; ª®¯¨à®¢ ­¨¥ ¤¨àë á® ¢á¥¬ ᮤ¥à¦¨¬ë¬ ; ª®¯¨à®¢ ­¨¥ ¤¨àë á® ¢á¥¬ ᮤ¥à¦¨¬ë¬ ¯®¤ ªãàá®à®¬
COPY_DIR PUSH IX COPY_DIR INC A
PUSH IY LD (HL),A ; ª®¯¨à®¢ âì ¡ã¤¥¬ ¤¨à¥ªâ®à¨ï¬¨
PUSH IX CALL RESIDENT.CountingDir ; ¨§¬¥à¥­¨¥ à §¬¥à  ¤¨à¥ªâ®à¨¨ á ä ©« ¬¨
; LD HL,(AdrCopyFile) ;  ¤à¥á ®¯¨á â¥«ï ¨§¬¥à塞®© ¤¨àë
; CALL RESIDENT.GetDirSize ; áç¨â ¥¬ ¨ ¯®«ãç ¥¬ à §¬¥à ¢ ¡ ©â å
; EXX
CALL RESIDENT.CountingDir
LD HL,JUMPS.FILES_BYTES LD HL,JUMPS.FILES_BYTES
CALL GET_DWORD LD DE,COPY.CopyBytes
POP HL ;  ¤à¥á ®¯¨á â¥«ï LD BC,5
LD (CopyBytes),DE LDIR ; § ¡à «¨ à §¬¥à ¤¨à¥ªâ®à¨¨
LD (CopyBytes + 2),BC
PUSH DE
LD DE,FileHDR.SizeBytes
ADD HL,DE ; 㪠§ â¥«ì ­  ª®«¨ç¥á⢮ ¡ ©â ª®¯¨à®¢ ­¨ï
POP DE
CALL SET_DWORD ; § ­¥á«¨ à §¬¥à ¤¨àë ¢ ¡ ©â å ¢ ®¯¨á â¥«ì
LD HL,0 LD HL,0
LD (CopyFiles),HL LD (COPY.CopyFiles),HL ; ª®«¨ç¥á⢮ 㦥 ᪮¯¨à®¢ ­­ëå ä ©«®¢
EX DE,HL CALL RESIDENT.InitCopyDirs ; ¨­¨æ¨ «¨§ æ¨ï ¯ã⥩ ®âªã¤ /ªã¤ 
LD D,B
LD E,C LD HL,(COPY.CopyBytes)
LD DE,(COPY.CopyBytes + 2)
CALL ConvBytes2Pages ; ¯¥à¥áç¥â ¢ ª®«¨ç¥á⢮ áâà ­¨æ ¤«ï ª®¯¨à®¢ ­¨ï CALL ConvBytes2Pages ; ¯¥à¥áç¥â ¢ ª®«¨ç¥á⢮ áâà ­¨æ ¤«ï ª®¯¨à®¢ ­¨ï
JP CopyNxt
LD HL,(AdrCopyFile) ;  ¤à¥á ®¯¨á â¥«ï ª®¯¨à㥬®© ¤¨àë
CALL RESIDENT.MkdirsDst ; á®§¤ ­¨¥ ¯ ¯®ª ­  ¯à¨¥¬­¨ª¥
POP IY
POP IX
RET
ENDIF ENDIF
; ª®¯¨à®¢ ­¨¥ ¯®¬¥ç¥­­ëå ä ©«®¢ ; ª®¯¨à®¢ ­¨¥ ¯®¬¥ç¥­­ëå ä ©«®¢
CopyMark LD L,(IY + PANEL.FILES_MARK) CopyMark LD L,(IY + PANEL.FILES_MARK)
LD H,(IY + PANEL.FILES_MARK + 1) LD H,(IY + PANEL.FILES_MARK + 1)
LD (CopyFiles),HL LD (COPY.CopyFiles),HL
LD L,(IY + PANEL.BYTES_MARK) LD L,(IY + PANEL.BYTES_MARK)
LD H,(IY + PANEL.BYTES_MARK + 1) LD H,(IY + PANEL.BYTES_MARK + 1)
LD (CopyBytes),HL LD (COPY.CopyBytes),HL
LD L,(IY + PANEL.BYTES_MARK + 2) LD L,(IY + PANEL.BYTES_MARK + 2)
LD H,(IY + PANEL.BYTES_MARK + 3) LD H,(IY + PANEL.BYTES_MARK + 3)
LD (CopyBytes + 2),HL LD (COPY.CopyBytes + 2),HL
; [ ] fat32 ; [ ] fat32
LD A,(IY + PANEL.BYTES_MARK_H) LD A,(IY + PANEL.BYTES_MARK_H)
LD (CopyBytes + 4),A LD (COPY.CopyBytes + 4),A
GETPORT WINSP.CPU3 GETPORT WINSP.CPU3
PUSH AF PUSH AF
BIT PANELFLAG.B_SIDE,(IY + PANEL.PANELFLAG) BIT PANELFLAG.B_SIDE,(IY + PANEL.PANELFLAG)
@ -118,7 +106,7 @@ CopyMark LD L,(IY + PANEL.FILES_MARK)
.L2 ADD HL,BC .L2 ADD HL,BC
BIT FileHDR.B_MARK,(HL) BIT FileHDR.B_MARK,(HL)
JR Z,.L2 JR Z,.L2
LD (AdrCopyFile),HL LD (COPY.PathCurrFile),HL
PUSH HL PUSH HL
POP IX POP IX
SUB A SUB A
@ -136,13 +124,15 @@ CopyLp0 BIT FileHDR.B_MARK,(IX + FileHDR.Flag)
LD E,(IX + FileHDR.SizeBytes + 2) LD E,(IX + FileHDR.SizeBytes + 2)
LD D,(IX + FileHDR.SizeBytes + 3) LD D,(IX + FileHDR.SizeBytes + 3)
CALL ConvBytes2Pages CALL ConvBytes2Pages
LD C,L ; LD C,L
LD B,H ; LD B,H
POP HL ; POP HL
POP BC
ADD HL,BC ADD HL,BC
LD C,E ; LD C,E
LD B,D ; LD B,D
POP DE ; POP DE
POP BC
EX DE,HL EX DE,HL
ADC HL,BC ADC HL,BC
EX DE,HL EX DE,HL
@ -197,7 +187,7 @@ CopyNxt LD IX,ProcessAll
SUB C SUB C
LD (PathLen),A LD (PathLen),A
LD IX,PathStr LD IX,PathStr
LD HL,PathTab LD HL,REZ2TAB.PathTab
CALL InputLine CALL InputLine
WINDOWCLOSE WINDOWCLOSE
RET C RET C
@ -207,7 +197,7 @@ CopyNxt LD IX,ProcessAll
PUSH IY PUSH IY
SPDSS DSSF.INFOMEM SPDSS DSSF.INFOMEM
POP IY POP IY
LD (FreeBanks),BC LD (COPY.FreeBanks),BC
LD A,B LD A,B
OR C OR C
LD A,ERR_DSS.NOT_ENOUGH_MEMORY LD A,ERR_DSS.NOT_ENOUGH_MEMORY
@ -225,16 +215,16 @@ CopyNxt LD IX,ProcessAll
W_FILL 18,57,284,10,COLORI.WHITE W_FILL 18,57,284,10,COLORI.WHITE
W_END W_END
SUB A SUB A
LD (OverWriteFlg),A LD (COPY.OverWriteFlg),A
BIT PANELFLAG.B_SIDE,(IY + PANEL.PANELFLAG) BIT PANELFLAG.B_SIDE,(IY + PANEL.PANELFLAG)
LD HL,LeftPanel LD HL,LeftPanel
JR Z,.L4 JR Z,.L4
LD HL,RightPanel LD HL,RightPanel
.L4 LD BC,PANEL.CURR_PATH .L4 LD BC,PANEL.CURR_PATH
ADD HL,BC ADD HL,BC
LD (CopySrc),HL LD (COPY.PathSrc),HL
LD HL,CurPath LD HL,CurPath
LD (CopyDst),HL LD (COPY.PathDst),HL
CALL PointerMouseClock CALL PointerMouseClock
PUSH IY PUSH IY
GETPORT WINSP.CPU3 GETPORT WINSP.CPU3
@ -245,17 +235,25 @@ CopyNxt LD IX,ProcessAll
LD A,(RAMPAGES.RIGHTPANEL) LD A,(RAMPAGES.RIGHTPANEL)
.L3 .L3
SETPORT WINSP.CPU3,,0 SETPORT WINSP.CPU3,,0
; ª®¯¨à®¢ ­¨¥ ä ©«®¢ ; ª®¯¨à®¢ ­¨¥ ä ©«®¢/¤¨à¥ªâ®à¨©
CopyNextFile CALL PrnFromTo CopyNextFile CALL PrintSrcDst
LD IX,(AdrCopyFile) LD IX,(COPY.PathCurrFile)
LD L,(IX + FileHDR.SizeBytes) 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 H,(IX + FileHDR.SizeBytes + 1)
LD E,(IX + FileHDR.SizeBytes + 2) LD E,(IX + FileHDR.SizeBytes + 2)
LD D,(IX + FileHDR.SizeBytes + 3) LD D,(IX + FileHDR.SizeBytes + 3)
LD (ReadBytes),HL LD (COPY.CurrReadBytes),HL
LD (ReadBytes + 2),DE LD (COPY.CurrReadBytes + 2),DE
LD (WriteBytes),HL LD (COPY.CurrWriteBytes),HL
LD (WriteBytes + 2),DE LD (COPY.CurrWriteBytes + 2),DE
CALL ConvBytes2Pages CALL ConvBytes2Pages
LD (.PagesLow),HL LD (.PagesLow),HL
LD (.PagesHigh),DE LD (.PagesHigh),DE
@ -270,7 +268,7 @@ CopyNextFile CALL PrnFromTo
LD (IX + PROGRESSBAR.MAX_PAGES + 3),D LD (IX + PROGRESSBAR.MAX_PAGES + 3),D
CALL InitProgressBar CALL InitProgressBar
CALL DrawProgressBar CALL DrawProgressBar
LD HL,(FreeBanks) LD HL,(COPY.FreeBanks)
LD DE,0x0000 LD DE,0x0000
.PagesHigh EQU $-2 .PagesHigh EQU $-2
LD A,D LD A,D
@ -285,56 +283,56 @@ CopyNextFile CALL PrnFromTo
.CopyLp1 EX DE,HL .CopyLp1 EX DE,HL
.L1 LD B,E .L1 LD B,E
SPDSS DSSF.GETMEM SPDSS DSSF.GETMEM
LD (MemID),A LD (COPY.MemID),A
LD HL,PagesList LD HL,PagesList
SPBIOS BIOSF.GETMEMBLKPAGES SPBIOS BIOSF.GETMEMBLKPAGES
LD HL,(CopySrc) ; Žâªà뢠¥¬ ä ©« ¨áâ®ç­¨ª LD HL,(COPY.PathSrc) ; ®âªà뢠¥¬ ä ©« ¨áâ®ç­¨ª
SPDSS DSSF.CHDIR SPDSS DSSF.CHDIR
JP C,CopyError1 JP C,CopyError1
LD HL,(AdrCopyFile) LD HL,(COPY.PathCurrFile)
INC HL INC HL
LD DE,WorkBuffer LD DE,WorkBuffer
PUSH DE PUSH DE
CALL MakeDOSname CALL MakeDOSname
POP HL POP HL
SPDSS DSSF.OPEN,,1 SPDSS DSSF.OPEN,,FILEMODE.R ; ®âªàë⨥ ­  ç⥭¨¥
JP C,CopyError1 JP C,CopyError1
LD (FHandleSrc),A LD (COPY.FHandleSrc),A
LD HL,(CopyDst) ; Žâªà뢠¥¬ ä ©« ¯à¨¥¬­¨ª LD HL,(COPY.PathDst) ; ®âªà뢠¥¬ ä ©« ¯à¨¥¬­¨ª
SPDSS DSSF.CHDIR SPDSS DSSF.CHDIR
JP C,CopyError2 JP C,CopyError2
LD IX,(AdrCopyFile) LD IX,(COPY.PathCurrFile)
LD HL,(AdrCopyFile) LD HL,(COPY.PathCurrFile)
INC HL INC HL
LD DE,WorkBuffer LD DE,WorkBuffer
PUSH DE PUSH DE
CALL MakeDOSname CALL MakeDOSname
POP HL POP HL
LD A,(OverWriteFlg) LD A,(COPY.OverWriteFlg)
OR A OR A
LD C,DSSF.CREAT_N LD C,DSSF.CREAT_N
JR Z,.L2 JR Z,.L2
LD C,DSSF.CREATE LD C,DSSF.CREATE
.L2 LD A,(IX + FileHDR.Attr) .L2 LD A,(IX + FileHDR.Attr)
SPDSS SPDSS ; á®§¤ ­¨¥ ä ©« 
JR NC,CopyLp2 JR NC,.CopyLp2
CP 0x07 CP ERR_DSS.FILE_EXISTS
JP NZ,CopyError2 JP NZ,CopyError2
CALL OverWrite CALL OverWrite ; ä ©« áãé¥áâ¢ãâ, § ¯à®á ­  ¯¥à¥§ ¯¨áì
CopyLp2 LD (FHandleDst),A .CopyLp2 LD (COPY.FHandleDst),A
LD HL,(ReadBytes) LD HL,(COPY.CurrReadBytes)
LD A,H LD A,H
OR L OR L
LD HL,(ReadBytes + 2) LD HL,(COPY.CurrReadBytes + 2)
OR H OR H
OR L OR L
JP Z,CloseFiles JP Z,.CloseFiles
ReadFile .ReadFile
GETPORT WINSP.CPU3 GETPORT WINSP.CPU3
PUSH AF PUSH AF
LD HL,PagesList LD HL,PagesList
LD A,(HL) LD A,(HL)
ReadLp1 INC HL .ReadLp1 INC HL
PUSH HL PUSH HL
SETPORT WINSP.CPU3,,0 SETPORT WINSP.CPU3,,0
SPDSS DSSF.SCANKEY SPDSS DSSF.SCANKEY
@ -342,8 +340,8 @@ ReadLp1 INC HL
OR A OR A
SBC HL,DE SBC HL,DE
JP Z,CopyBreak JP Z,CopyBreak
LD HL,(ReadBytes) LD HL,(COPY.CurrReadBytes)
LD DE,(ReadBytes + 2) LD DE,(COPY.CurrReadBytes + 2)
LD BC,0x4000 LD BC,0x4000
OR A OR A
SBC HL,BC SBC HL,BC
@ -351,40 +349,40 @@ ReadLp1 INC HL
EX DE,HL EX DE,HL
SBC HL,BC SBC HL,BC
EX DE,HL EX DE,HL
JR C,ReadEnd JR C,.ReadEnd
LD (ReadBytes),HL LD (COPY.CurrReadBytes),HL
LD (ReadBytes + 2),DE LD (COPY.CurrReadBytes + 2),DE
LD HL,0xC000 LD HL,0xC000
LD DE,0x4000 LD DE,0x4000
LD A,(FHandleSrc) LD A,(COPY.FHandleSrc)
SPDSS DSSF.READ SPDSS DSSF.READ
CALL NextProcess CALL NextProcess
POP HL POP HL
LD A,(HL) LD A,(HL)
CP 0xFF CP 0xFF
JR NZ,ReadLp1 JR NZ,.ReadLp1
POP AF POP AF
SETPORT WINSP.CPU3,,0 SETPORT WINSP.CPU3,,0
JR WriteFile JR .WriteFile
; !FIXIT ᤥ« âì â ª: ; !FIXIT ᤥ« âì â ª:
ReadEnd: LD HL,0xC000 .ReadEnd: LD HL,0xC000
LD DE,(ReadBytes) LD DE,(COPY.CurrReadBytes)
LD A,D LD A,D
OR E OR E
JR Z,.L1 JR Z,.L3
LD A,(FHandleSrc) LD A,(COPY.FHandleSrc)
SPDSS DSSF.READ SPDSS DSSF.READ
CALL NextProcess CALL NextProcess
.L1 POP HL .L3 POP HL
POP AF POP AF
SETPORT WINSP.CPU3,,0 SETPORT WINSP.CPU3,,0
WriteFile .WriteFile
GETPORT WINSP.CPU3 GETPORT WINSP.CPU3
PUSH AF PUSH AF
LD HL,PagesList LD HL,PagesList
LD A,(HL) LD A,(HL)
WriteL1 INC HL .WriteL1 INC HL
PUSH HL PUSH HL
SETPORT WINSP.CPU3,,0 SETPORT WINSP.CPU3,,0
SPDSS DSSF.SCANKEY SPDSS DSSF.SCANKEY
@ -392,8 +390,8 @@ WriteL1 INC HL
OR A OR A
SBC HL,DE SBC HL,DE
JP Z,CopyBreak JP Z,CopyBreak
LD HL,(WriteBytes) LD HL,(COPY.CurrWriteBytes)
LD DE,(WriteBytes + 2) LD DE,(COPY.CurrWriteBytes + 2)
LD BC,0x4000 LD BC,0x4000
OR A OR A
SBC HL,BC SBC HL,BC
@ -401,98 +399,114 @@ WriteL1 INC HL
EX DE,HL EX DE,HL
SBC HL,BC SBC HL,BC
EX DE,HL EX DE,HL
JR C,WriteEnd JR C,.WriteEnd
LD (WriteBytes),HL LD (COPY.CurrWriteBytes),HL
LD (WriteBytes + 2),DE LD (COPY.CurrWriteBytes + 2),DE
LD HL,0xC000 LD HL,0xC000
LD DE,0x4000 LD DE,0x4000
LD A,(FHandleDst) LD A,(COPY.FHandleDst)
SPDSS DSSF.WRITE SPDSS DSSF.WRITE
JP C,CopyError3 JP C,CopyError3
CALL NextProcess CALL NextProcess
POP HL POP HL
LD A,(HL) LD A,(HL)
CP 0xFF CP 0xFF
JR NZ,WriteL1 JR NZ,.WriteL1
POP AF POP AF
SETPORT WINSP.CPU3,,0 SETPORT WINSP.CPU3,,0
LD HL,(ReadBytes) LD HL,(COPY.CurrReadBytes)
LD A,H LD A,H
OR L OR L
LD HL,(ReadBytes + 2) LD HL,(COPY.CurrReadBytes + 2)
OR H OR H
OR L OR L
JR Z,CloseFiles JR Z,.CloseFiles
JP ReadFile JP .ReadFile
; !FIXIT ᤥ« âì â ª: ; !FIXIT ᤥ« âì â ª:
WriteEnd: LD HL,0xC000 .WriteEnd: LD HL,0xC000
LD DE,(WriteBytes) LD DE,(COPY.CurrWriteBytes)
LD A,D LD A,D
OR E OR E
JR Z,.L1 JR Z,.L4
LD A,(FHandleDst) LD A,(COPY.FHandleDst)
SPDSS DSSF.WRITE SPDSS DSSF.WRITE
JP C,CopyError3 JP C,CopyError3
CALL NextProcess CALL NextProcess
.L1 POP HL .L4 POP HL
POP AF POP AF
SETPORT WINSP.CPU3,,0 SETPORT WINSP.CPU3,,0
CloseFiles LD A,(FHandleSrc) .CloseFiles LD A,(COPY.FHandleSrc)
SPDSS DSSF.GET_D_T SPDSS DSSF.GET_D_T
LD A,(FHandleDst) LD A,(COPY.FHandleDst)
SPDSS DSSF.PUT_D_T SPDSS DSSF.PUT_D_T
LD A,(FHandleDst) LD A,(COPY.FHandleDst)
SPDSS DSSF.CLOSE SPDSS DSSF.CLOSE
CloseFile1 LD A,(FHandleSrc) .CloseFile1 LD A,(COPY.FHandleSrc)
SPDSS DSSF.CLOSE SPDSS DSSF.CLOSE
LD A,(MemID) LD A,(COPY.MemID)
SPDSS DSSF.FREEMEM SPDSS DSSF.FREEMEM
LD IX,(AdrCopyFile) LD IX,(COPY.PathCurrFile)
RES FileHDR.B_MARK,(IX + FileHDR.Flag) RES FileHDR.B_MARK,(IX + FileHDR.Flag)
LD HL,(CopyBytes) LD HL,(COPY.CopyBytes)
LD E,(IX + FileHDR.SizeBytes) LD E,(IX + FileHDR.SizeBytes)
LD D,(IX + FileHDR.SizeBytes + 1) LD D,(IX + FileHDR.SizeBytes + 1)
OR A OR A
SBC HL,DE SBC HL,DE
LD (CopyBytes),HL LD (COPY.CopyBytes),HL
LD HL,(CopyBytes+2) LD HL,(COPY.CopyBytes+2)
LD E,(IX + FileHDR.SizeBytes + 2) LD E,(IX + FileHDR.SizeBytes + 2)
LD D,(IX + FileHDR.SizeBytes + 3) LD D,(IX + FileHDR.SizeBytes + 3)
SBC HL,DE SBC HL,DE
LD (CopyBytes+2),HL LD (COPY.CopyBytes+2),HL
LD HL,(CopyFiles) LD HL,(COPY.CopyFiles)
LD A,H LD A,H
OR L OR L
JR Z,CopyEnd JR Z,CopyEnd ; ä ©«ë ª®­ç¨«¨áì?
DEC HL DEC HL
LD (CopyFiles),HL LD (COPY.CopyFiles),HL
LD A,H LD A,H
OR L OR L
JR Z,CopyEnd JR Z,CopyEnd ; ä ©«ë ª®­ç¨«¨áì?
LD HL,(AdrCopyFile) LD HL,(COPY.PathCurrFile)
LD DE,FileHDR.SIZE LD DE,FileHDR.SIZE
.L1 ADD HL,DE .L5 ADD HL,DE ; á«¥¤ãî騩 ®¯¨á â¥«ì
BIT FileHDR.B_MARK,(HL) IF MARK_DIR
JR Z,.L1 LD A,(.FLAG_DIRCOPY)
LD (AdrCopyFile),HL 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 JP CopyNextFile
.FLAG_DIRCOPY DB 0
; § ¢¥à襭¨¥ ª®¯¨à®¢ ­¨ï
CopyEnd POP AF CopyEnd POP AF
SETPORT WINSP.CPU3,,0 SETPORT WINSP.CPU3,,0
POP IY POP IY
WINDOWCLOSE WINDOWCLOSE
LD HL,(CopyFiles) LD HL,(COPY.CopyFiles)
LD (IY + PANEL.FILES_MARK),L LD (IY + PANEL.FILES_MARK),L
LD (IY + PANEL.FILES_MARK + 1),H 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),L
LD (IY + PANEL.BYTES_MARK + 1),H 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 + 2),L
LD (IY + PANEL.BYTES_MARK + 3),H LD (IY + PANEL.BYTES_MARK + 3),H
; [ ] fat32 ; [ ] fat32
LD A,(CopyBytes + 4) LD A,(COPY.CopyBytes + 4)
LD (IY + PANEL.BYTES_MARK_H),A LD (IY + PANEL.BYTES_MARK_H),A
PUSH IY PUSH IY
BIT PANELFLAG.B_SIDE,(IY + PANEL.PANELFLAG) BIT PANELFLAG.B_SIDE,(IY + PANEL.PANELFLAG)
@ -529,16 +543,16 @@ CopyError3: ;
PUSH AF PUSH AF
LD A,D LD A,D
SETPORT WINSP.CPU3,,0 SETPORT WINSP.CPU3,,0
LD A,(FHandleDst) LD A,(COPY.FHandleDst)
SPDSS DSSF.CLOSE SPDSS DSSF.CLOSE
CALL CopyErrorFileDelete CALL CopyErrorFileDelete
POP AF POP AF
CopyError2 PUSH AF CopyError2 PUSH AF
LD A,(FHandleSrc) LD A,(COPY.FHandleSrc)
SPDSS DSSF.CLOSE SPDSS DSSF.CLOSE
POP AF POP AF
CopyError1 PUSH AF CopyError1 PUSH AF
LD A,(MemID) LD A,(COPY.MemID)
SPDSS DSSF.FREEMEM SPDSS DSSF.FREEMEM
POP AF POP AF
CALL DOSError CALL DOSError
@ -547,18 +561,18 @@ CopyError1 PUSH AF
CopyBreak POP HL CopyBreak POP HL
POP AF POP AF
SETPORT WINSP.CPU3,,0 SETPORT WINSP.CPU3,,0
LD A,(FHandleDst) LD A,(COPY.FHandleDst)
SPDSS DSSF.CLOSE SPDSS DSSF.CLOSE
LD A,(FHandleSrc) LD A,(COPY.FHandleSrc)
SPDSS DSSF.CLOSE SPDSS DSSF.CLOSE
LD A,(MemID) LD A,(COPY.MemID)
SPDSS DSSF.FREEMEM SPDSS DSSF.FREEMEM
CALL CopyErrorFileDelete CALL CopyErrorFileDelete
JP CopyEnd JP CopyEnd
CopyErrorFileDelete: CopyErrorFileDelete:
LD IX,(AdrCopyFile) LD IX,(COPY.PathCurrFile)
LD HL,(AdrCopyFile) LD HL,(COPY.PathCurrFile)
INC HL INC HL
LD DE,WorkBuffer LD DE,WorkBuffer
PUSH DE PUSH DE
@ -586,7 +600,7 @@ OverWrite CALL PointerMousePointer
W_BUTTON 208,38,56,14 W_BUTTON 208,38,56,14
W_TEXT 220,41,COLORP.HIGHGRAY,"Cancel" W_TEXT 220,41,COLORP.HIGHGRAY,"Cancel"
W_END W_END
LD HL,(CopyDst) LD HL,(COPY.PathDst)
LD DE,WorkBuffer LD DE,WorkBuffer
SUB A SUB A
.L1 LDI .L1 LDI
@ -598,7 +612,7 @@ OverWrite CALL PointerMousePointer
JR Z,.L2 JR Z,.L2
LD (DE),A LD (DE),A
INC DE INC DE
.L2 LD HL,(AdrCopyFile) .L2 LD HL,(COPY.PathCurrFile)
INC HL INC HL
CALL MakeDOSname CALL MakeDOSname
LD IX,0x00F8 LD IX,0x00F8
@ -607,7 +621,7 @@ OverWrite CALL PointerMousePointer
LD BC,114 LD BC,114
LD A,COLORP.HIGHGRAY + COLORI.BLACK LD A,COLORP.HIGHGRAY + COLORI.BLACK
CALL PrintPathCentr CALL PrintPathCentr
OvWrtLp LD IX,OverWrtTab OvWrtLp LD IX,REZ2TAB.OverWrtTab
CALL CheckCoordsMouse CALL CheckCoordsMouse
SPDSS DSSF.SCANKEY SPDSS DSSF.SCANKEY
JR Z,OvWrtLp JR Z,OvWrtLp
@ -639,10 +653,10 @@ OvrJump
JP (HL) JP (HL)
OverWrtAll LD A,0x01 OverWrtAll LD A,0x01
LD (OverWriteFlg),A LD (COPY.OverWriteFlg),A
OverWrtFile CALL PointerMouseClock OverWrtFile CALL PointerMouseClock
LD IX,(AdrCopyFile) LD IX,(COPY.PathCurrFile)
LD HL,(AdrCopyFile) LD HL,(COPY.PathCurrFile)
INC HL INC HL
LD DE,WorkBuffer LD DE,WorkBuffer
PUSH DE PUSH DE
@ -653,7 +667,7 @@ OverWrtFile CALL PointerMouseClock
RET RET
OverSkip CALL PointerMouseClock OverSkip CALL PointerMouseClock
LD IX,(AdrCopyFile) LD IX,(COPY.PathCurrFile)
LD L,(IX + FileHDR.SizeBytes) LD L,(IX + FileHDR.SizeBytes)
LD H,(IX + FileHDR.SizeBytes + 1) LD H,(IX + FileHDR.SizeBytes + 1)
LD E,(IX + FileHDR.SizeBytes + 2) 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 + 2),L
LD (IX + PROGRESSBAR.CURR_PAGE + 3),H LD (IX + PROGRESSBAR.CURR_PAGE + 3),H
CALL DrawProgressBar CALL DrawProgressBar
LD HL,CloseFile1 LD HL,CopyNextFile.CloseFile1
EX (SP),HL EX (SP),HL
RET RET
OverExit INC SP OverExit INC SP
INC SP INC SP
LD IX,(AdrCopyFile) LD IX,(COPY.PathCurrFile)
BIT FileHDR.B_MARK,(IX + FileHDR.Flag) BIT FileHDR.B_MARK,(IX + FileHDR.Flag)
JP Z,CloseFile1 JP Z,CopyNextFile.CloseFile1
LD A,(FHandleSrc) LD A,(COPY.FHandleSrc)
SPDSS DSSF.CLOSE SPDSS DSSF.CLOSE
LD A,(MemID) LD A,(COPY.MemID)
SPDSS DSSF.FREEMEM SPDSS DSSF.FREEMEM
POP IY POP IY
JP CopyEnd JP CopyEnd
;-------------------------------------------------------------- ;--------------------------------------------------------------
AdrCopyFile DW 0x0000 ; €¤à¥á ®¯¨á â¥«ï ⥪ã饣® ä ©« /¤¨àë COPY
CopySrc DW 0x0000 ; €¤à¥á ¯ã⨠®âªã¤  .PathCurrFile DW 0 ; €¤à¥á ®¯¨á â¥«ï ⥪ã饣® ä ©« /¤¨àë
CopyDst DW 0x0000 ; €¤à¥á ¯ã⨠ªã¤  .PathSrc DW 0 ; €¤à¥á ¯ã⨠¨áâ®ç­¨ª 
CopyFiles DW 0x0000 ; Š®«¨ç¥á⢮ ª®¯¨à㥬ëå ä ©«®¢ .PathDst DW 0 ; €¤à¥á ¯ã⨠¯à¨¥¬­¨ª 
CopyBytes DB 5 DUP 0 ; Š®«¨ç¥á⢮ ª®¯¨à㥬ëå ¡ ©â®¢ .CopyFiles DW 0 ; Š®«¨ç¥á⢮ ª®¯¨à㥬ëå ä ©«®¢
OverWriteFlg DB 0x00 ; ”« £ ¯¥à¥§ ¯¨á¨ ä ©«®¢ .CopyBytes DB 5 DUP 0 ; Š®«¨ç¥á⢮ ª®¯¨à㥬ëå ¡ ©â®¢
FreeBanks DW 0x0000 ; Š®«¨ç¥á⢮ ᢮¡®¤­ëå ¡ ­ª®¢ .OverWriteFlg DB 0 ; ”« £ ¯¥à¥§ ¯¨á¨ ä ©«®¢
ReadBytes DD 0 ; „«¨­  ç¨â ¥¬®£® ä ©«  .FreeBanks DW 0 ; Š®«¨ç¥á⢮ ᢮¡®¤­ëå ¡ ­ª®¢
WriteBytes DD 0 ; „«¨­  § ¯¨á뢠¥¬®£® ä ©«  .CurrReadBytes DD 0 ; „«¨­  ç¨â ¥¬®£® ä ©« 
FHandleSrc DB 0x00 ; ” ©« ¨áâ®ç­¨ª .CurrWriteBytes DD 0 ; „«¨­  § ¯¨á뢠¥¬®£® ä ©« 
FHandleDst DB 0x00 ; ” ©« ¯à¨¥¬­¨ª .FHandleSrc DB 0 ; ” ©« ¨áâ®ç­¨ª
MemID DB 0x00 ; ˆ­¤¥ä¨ª.¯ ¬ï⨠¯®¤ ª®¯¨à®¢ ­¨¥ .FHandleDst DB 0 ; ” ©« ¯à¨¥¬­¨ª
.MemID DB 0 ; ˆ¤¥­â¨ä¨ª â®à ¯ ¬ï⨠¯®¤ ª®¯¨à®¢ ­¨¥
;-------------------------------------------------------------- ;--------------------------------------------------------------
; <20>  ¢å®¤¥: ; <20>  ¢å®¤¥:
; DEHL - ª®«¨ç¥á⢮ ¡ ©â ; DEHL - ª®«¨ç¥á⢮ ¡ ©â
; <20>  ¢ë室¥: ; <20>  ¢ë室¥:
; HL - ª®«¨ç¥á⢮ áâà ­¨æ ; HL - ª®«¨ç¥á⢮ áâà ­¨æ 4294967295=FFFFFFFF
; 1028975 FB36F ; 1028975 FB36F
; 231 E7 1 ; 231 E7 1
; 59232 E760 4 ; 59232 E760 4
@ -720,20 +735,21 @@ MemID DB 0x00 ;
; 12652 316C 1 ; 12652 316C 1
; 14119 3727 1 ; 14119 3727 1
; 12546 3102 1 ; 12546 3102 1
; DEHL -> (((DEHL / 100) * 4) / 0x100) + ((L != 0) ? DE++ : DE)
ConvBytes2Pages: ConvBytes2Pages:
LD A,H LD A,H
LD H,L LD H,L
LD L,0x00 LD L,0
SLA A ADD A,A
RL E RL E
RL D RL D
RL L ; LDEA * 2 RL L
SLA A ADD A,A
RL E RL E
RL D RL D
RL L ; LDEA * 2 RL L
OR H OR H
LD H,0x00 LD H,0
EX DE,HL EX DE,HL
JR Z,.L1 JR Z,.L1
INC HL INC HL
@ -743,7 +759,7 @@ ConvBytes2Pages:
INC DE INC DE
RET RET
PrnFromTo LD HL,(CopySrc) PrintSrcDst LD HL,(COPY.PathSrc)
LD DE,WorkBuffer LD DE,WorkBuffer
SUB A SUB A
.L1 LDI .L1 LDI
@ -755,10 +771,10 @@ PrnFromTo LD HL,(CopySrc)
JR Z,.L2 JR Z,.L2
LD (DE),A LD (DE),A
INC DE INC DE
.L2 LD HL,(AdrCopyFile) .L2 LD HL,(COPY.PathCurrFile)
INC HL INC HL
CALL MakeDOSname CALL MakeDOSname
LD HL,(CopyDst) LD HL,(COPY.PathDst)
LD DE,WorkBuffer+0x100 LD DE,WorkBuffer+0x100
SUB A SUB A
.L3 LDI .L3 LDI
@ -770,7 +786,7 @@ PrnFromTo LD HL,(CopySrc)
JR Z,.L4 JR Z,.L4
LD (DE),A LD (DE),A
INC DE INC DE
.L4 LD HL,(AdrCopyFile) .L4 LD HL,(COPY.PathCurrFile)
INC HL INC HL
CALL MakeDOSname CALL MakeDOSname
MAKEWINDOW WINSUBOBJ.WOBIND MAKEWINDOW WINSUBOBJ.WOBIND
@ -957,7 +973,7 @@ RNfile EQU $ - STRLEN(" ") - 2
W_FILL 62,27,130,10,COLORI.WHITE W_FILL 62,27,130,10,COLORI.WHITE
W_END W_END
LD IX,NameStr LD IX,NameStr
LD HL,ReNameTab LD HL,REZ2TAB.ReNameTab
CALL InputLine CALL InputLine
WINDOWCLOSE WINDOWCLOSE
RET C RET C
@ -1379,7 +1395,7 @@ MakeDIRR CALL ResInvert
W_FILL 88,23,130,10,COLORI.WHITE W_FILL 88,23,130,10,COLORI.WHITE
W_END W_END
LD IX,MakeDIRStr LD IX,MakeDIRStr
LD HL,MakeDIRTab LD HL,REZ2TAB.MakeDIRTab
CALL InputLine CALL InputLine
WINDOWCLOSE WINDOWCLOSE
RET C RET C
@ -1824,7 +1840,7 @@ DelLp0 LD IX,0x00F8
LD BC,106 LD BC,106
LD A,COLORP.HIGHGRAY + COLORI.BLACK LD A,COLORP.HIGHGRAY + COLORI.BLACK
CALL PrintPathCentr CALL PrintPathCentr
DelLoop LD IX,DeleteTab DelLoop LD IX,REZ2TAB.DeleteTab
CALL CheckCoordsMouse CALL CheckCoordsMouse
SPDSS DSSF.SCANKEY SPDSS DSSF.SCANKEY
JR Z,DelLoop JR Z,DelLoop
@ -2417,7 +2433,7 @@ QuitConfirmWin
W_BUTTON 120,32,72,14 W_BUTTON 120,32,72,14
W_TEXT 150,35,COLORP.HIGHGRAY,"No" W_TEXT 150,35,COLORP.HIGHGRAY,"No"
W_END W_END
.Loop LD IX,QuitTab .Loop LD IX,REZ2TAB.QuitTab
CALL CheckCoordsMouse CALL CheckCoordsMouse
SPDSS DSSF.SCANKEY SPDSS DSSF.SCANKEY
JR Z,.Loop JR Z,.Loop

View File

@ -1,5 +1,5 @@
; LAST UPDATE: 01.08.2025 savelij ; LAST UPDATE: 14.08.2025 savelij
;[]==========================================================[] ;[]==========================================================[]
; ”®à¬ â â ¡«¨æë ; ”®à¬ â â ¡«¨æë
@ -30,8 +30,9 @@
; +0C 2 €¤à¥á ®¡à ¡®â稪  ¯à¨ ­ ¦ â®¬ ®£­¥ («¥¢) ; +0C 2 €¤à¥á ®¡à ¡®â稪  ¯à¨ ­ ¦ â®¬ ®£­¥ («¥¢)
; +0E 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,146,155,%0000000000000000,0,ChActivatePan,0
DW 114,130,164,173,%0000000000000000,0,ChSavePan,0 DW 114,130,164,173,%0000000000000000,0,ChSavePan,0
DW 274,290, 87, 95,%0000000000000011,0,DecRED,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 DW 0x8000
;[]===============================================================[] ;[]===============================================================[]
FileInfoTab: DW 284,356,160,174,%0000000000100001,0,FileInfoExt,0 .PathTab: DW 240,312,123,137,%0000000000000001,0,InputLine.InputLineExitOk,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
DW 328,400,123,137,%0000000000000001,0,InputLine.InputLineExitCancel,0 DW 328,400,123,137,%0000000000000001,0,InputLine.InputLineExitCancel,0
DW 0, 96, 0,256,%0000000000000000,0,InputLine.InputLineExitCancel,0 DW 0, 96, 0,256,%0000000000000000,0,InputLine.InputLineExitCancel,0
DW 544,640, 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 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 260,316,126,140,%0000000100100001,0,OverWrtAll,0
DW 324,380,126,140,%0000000100100001,0,OverSkip,0 DW 324,380,126,140,%0000000100100001,0,OverSkip,0
DW 388,444,126,140,%0000000100100001,0,OverExit,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 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 328,400,123,137,%0000000000000001,0,InputLine.InputLineExitCancel,0
DW 0,208, 0,256,%0000000000000000,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 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 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 328,400,123,137,%0000000000000001,0,InputLine.InputLineExitCancel,0
DW 0,200, 0,256,%0000000000000000,0,InputLine.InputLineExitCancel,0 DW 0,200, 0,256,%0000000000000000,0,InputLine.InputLineExitCancel,0
DW 440,640, 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 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 260,316,118,132,%0000000100100001,0,DelAll,0
DW 324,380,118,132,%0000000100100001,0,DelSkip,0 DW 324,380,118,132,%0000000100100001,0,DelSkip,0
DW 388,444,118,132,%0000000100100001,0,DelExit,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 DW 0x8000
;[]===============================================================[] ;[]===============================================================[]
QuitTab: .QuitTab:
DW 240,312,120,134,%0000000000100001,0,QuitConfirmWin.OK,0 DW 240,312,120,134,%0000000000100001,0,QuitConfirmWin.OK,0
DW 328,400,120,134,%0000000000100001,0,QuitConfirmWin.Abort,0 DW 328,400,120,134,%0000000000100001,0,QuitConfirmWin.Abort,0
DW 0,208, 0,256,%0000000000100000,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 0,640,138,256,%0000000000100000,0,QuitConfirmWin.Abort,0
DW 0x8000 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 DW 0x8000

View File

@ -1,5 +1,5 @@
; LAST UPDATE: 01.08.2025 savelij ; LAST UPDATE: 14.08.2025 savelij
;[]==========================================================[] ;[]==========================================================[]
MarkFileR LD A,(IY+PANEL.FILES_ALL) MarkFileR LD A,(IY+PANEL.FILES_ALL)
@ -260,7 +260,7 @@ SelectGroup: LD (SelMode),A
W_FILL 72,23,130,10,COLORI.WHITE W_FILL 72,23,130,10,COLORI.WHITE
W_END W_END
LD IX,SMaskStr LD IX,SMaskStr
LD HL,SMaskTab LD HL,REZ3TAB.SMaskTab
CALL InputLine CALL InputLine
WINDOWCLOSE WINDOWCLOSE
RET C RET C
@ -680,20 +680,102 @@ SUB_SIZE: EX AF,AF' ; [ ] fat32
RET RET
IF MARK_DIR IF MARK_DIR
; ¯®¤áç¥â ¢ ¡ ©â å à §¬¥à  ®â¬¥ç¥­­®© ¤¨à¥ªâ®à¨¨ BUF_MARKDIR
; HL -  ¤à¥á ®¯¨á â¥«ï ¤¨àë ¢ áâà ­¨æ¥ ¯ ­¥«¨ ª®â®àãî ¬¥àïâì .FILES_MASK DZ "*.*" ; ¬ áª  ä ©«®¢
CountingDirR .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 IX
PUSH IY PUSH IY
PUSH HL GETPORT WINSP.CPU3
PUSH BC 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 GETPORT WINSP.CPU3
PUSH AF ; ⥪ã騩 ­®¬¥à áâà ­¨æë PUSH AF ; ⥪ã騩 ­®¬¥à áâà ­¨æë
PUSH HL PUSH IX
BIT PANELFLAG.B_SIDE,(IY + PANEL.PANELFLAG) BIT PANELFLAG.B_SIDE,(IY + PANEL.PANELFLAG)
LD A,(RAMPAGES.LEFTPANEL) LD A,(RAMPAGES.LEFTPANEL)
JR Z,.L1 JR Z,.L1
@ -708,10 +790,10 @@ CountingDirR
LD (JUMPS.FILES_BYTES + 2),HL ; ®¡­ã«¥­¨¥ à §¬¥à  ¤¨àë LD (JUMPS.FILES_BYTES + 2),HL ; ®¡­ã«¥­¨¥ à §¬¥à  ¤¨àë
LD (JUMPS.FILES_COUNT),HL ; ®¡­ã«¥­¨¥ ª®«¨ç¥á⢠ ä ©«®¢ LD (JUMPS.FILES_COUNT),HL ; ®¡­ã«¥­¨¥ ª®«¨ç¥á⢠ ä ©«®¢
LD HL,CPU3 LD HL,CPU3
LD (.CURR_DIRNAME),HL LD (BUFFERS.CURR_DIRNAME),HL
; á®åà ­¥­¨¥ ⥪ã饣® ¯ã⨠¤«ï ¢®§¢à â  ; á®åà ­¥­¨¥ ⥪ã饣® ¯ã⨠¤«ï ¢®§¢à â 
SPDSS DSSF.CURDISK SPDSS DSSF.CURDISK
LD HL,.OLDPATH ; á®åà ­¥­ë© ¯ãâì ¤«ï ¢®§¢à â  LD HL,BUFFERS.OLDPATH ; á®åà ­¥­ë© ¯ãâì ¤«ï ¢®§¢à â 
ADD A,'A' ADD A,'A'
LD (HL),A LD (HL),A
INC HL INC HL
@ -723,7 +805,7 @@ CountingDirR
; ¢å®¤ ¢ ¤¨à¥ªâ®à¨î ; ¢å®¤ ¢ ¤¨à¥ªâ®à¨î
LD HL,FileHDR.Name LD HL,FileHDR.Name
ADD HL,DE ADD HL,DE
LD DE,.DIR_NAME LD DE,BUF_MARKDIR.DIR_NAME
PUSH DE PUSH DE
LD BC,FileHDR.Name_Size LD BC,FileHDR.Name_Size
LDIR ; § ¡à «¨ ¨¬ï ¤¨àë ¤«ï ¨§¬¥à¥­¨ï LDIR ; § ¡à «¨ ¨¬ï ¤¨àë ¤«ï ¨§¬¥à¥­¨ï
@ -731,10 +813,10 @@ CountingDirR
SETPORT WINSP.CPU3,,0 SETPORT WINSP.CPU3,,0
CALL .ADD_2DOT ; ¤«ï ¢®§¢à â  ¢ ¯à¥¤ë¤ãéãî ¤¨àã CALL .ADD_2DOT ; ¤«ï ¢®§¢à â  ¢ ¯à¥¤ë¤ãéãî ¤¨àã
POP HL POP HL
LD DE,(.CURR_DIRNAME) LD DE,(BUFFERS.CURR_DIRNAME)
LD BC,FileHDR.Name_Size LD BC,FileHDR.Name_Size
LDIR ; ¨¬ï ¤¨àë ¤«ï ¢å®¤  LDIR ; ¨¬ï ¤¨àë ¤«ï ¢å®¤ 
LD (.CURR_DIRNAME),DE LD (BUFFERS.CURR_DIRNAME),DE
XOR A XOR A
LD (DE),A LD (DE),A
CALL .SET_PATH ; ãáâ ­®¢ª  ⥪ã饣® ¯ã⨠CALL .SET_PATH ; ãáâ ­®¢ª  ⥪ã饣® ¯ãâ¨
@ -755,7 +837,7 @@ CountingDirR
JR Z,.END_COUNT JR Z,.END_COUNT
CALL .GET_NAME CALL .GET_NAME
CALL .GET_NAME CALL .GET_NAME
LD HL,(.CURR_DIRNAME) LD HL,(BUFFERS.CURR_DIRNAME)
LD DE,-FileHDR.Name_Size LD DE,-FileHDR.Name_Size
ADD HL,DE ADD HL,DE
LD A,(HL) LD A,(HL)
@ -768,31 +850,29 @@ CountingDirR
; ¢®§¢à â ⥪ã饣® ¯ã⨠; ¢®§¢à â ⥪ã饣® ¯ãâ¨
.END_COUNT POP AF .END_COUNT POP AF
SETPORT WINSP.CPU3,,0 SETPORT WINSP.CPU3,,0
LD HL,.OLDPATH ; á®åà ­¥­ë© ¯ãâì ¤«ï ¢®§¢à â  LD HL,BUFFERS.OLDPATH ; á®åà ­¥­ë© ¯ãâì ¤«ï ¢®§¢à â 
SPDSS DSSF.CHDIR SPDSS DSSF.CHDIR
POP BC
POP HL
POP IY POP IY
POP IX POP IX
RET RET
; ¢ë室 ¢ ¯à¥¤ë¤ãéãî ¤¨àã ; ¢ë室 ¢ ¯à¥¤ë¤ãéãî ¤¨àã
.GET_NAME LD HL,(.CURR_DIRNAME) .GET_NAME LD HL,(BUFFERS.CURR_DIRNAME)
LD (HL),0 LD (HL),0
LD DE,-FileHDR.Name_Size LD DE,-FileHDR.Name_Size
ADD HL,DE ADD HL,DE
LD (.CURR_DIRNAME),HL LD (BUFFERS.CURR_DIRNAME),HL
RET RET
.OUT_DIR DEC IXH ; ¯à¥¤ë¤ã騩 ã஢¥­ì ¤¨àë .OUT_DIR DEC IXH ; ¯à¥¤ë¤ã騩 ã஢¥­ì ¤¨àë
LD HL,.RET_DIR LD HL,BUF_MARKDIR.RET_DIR
JR .SP1 JR .SP1
; ¯¥à¥å®¤ ¢ ¤¨àã ¨§ ᯨ᪠ ; ¯¥à¥å®¤ ¢ ¤¨àã ¨§ ᯨ᪠
.SET_PATH LD HL,(.CURR_DIRNAME) .SET_PATH LD HL,(BUFFERS.CURR_DIRNAME)
LD DE,-FileHDR.Name_Size LD DE,-FileHDR.Name_Size
ADD HL,DE ADD HL,DE
LD DE,.DIR_NAME LD DE,BUF_MARKDIR.DIR_NAME
PUSH DE PUSH DE
LD BC,FFIRST.Name_Size LD BC,FFIRST.Name_Size
LDIR LDIR
@ -800,7 +880,7 @@ CountingDirR
.SP1 PUSH IX .SP1 PUSH IX
SPDSS DSSF.CHDIR SPDSS DSSF.CHDIR
SPDSS DSSF.CURDISK SPDSS DSSF.CURDISK
LD HL,.CURRPATH LD HL,BUFFERS.CURRPATHSRC
ADD A,'A' ADD A,'A'
LD (HL),A LD (HL),A
INC HL INC HL
@ -812,11 +892,11 @@ CountingDirR
; ¤®¡ ¢«¥­¨¥ ¨¬¥­¨ ¤¨àë ".." ¤«ï ¢ë室  ¢ ¯à¥¤ë¤ãéãî ¤¨àã ; ¤®¡ ¢«¥­¨¥ ¨¬¥­¨ ¤¨àë ".." ¤«ï ¢ë室  ¢ ¯à¥¤ë¤ãéãî ¤¨àã
.ADD_2DOT PUSH HL .ADD_2DOT PUSH HL
LD HL,.RET_DIR LD HL,BUF_MARKDIR.RET_DIR
LD DE,(.CURR_DIRNAME) LD DE,(BUFFERS.CURR_DIRNAME)
LD BC,FFIRST.Name_Size LD BC,FFIRST.Name_Size
LDIR LDIR
LD (.CURR_DIRNAME),DE LD (BUFFERS.CURR_DIRNAME),DE
POP HL POP HL
RET RET
@ -838,10 +918,10 @@ CountingDirR
CP '.' ; . ¨ .. ¯à®¯ã᪠¥¬ CP '.' ; . ¨ .. ¯à®¯ã᪠¥¬
JR Z,.L5 JR Z,.L5
; ¤«ï ¤¨àë ª®¯¨à㥬 ¨¬ï ¢ â ¡«¨çªã ; ¤«ï ¤¨àë ª®¯¨à㥬 ¨¬ï ¢ â ¡«¨çªã
LD DE,(.CURR_DIRNAME) LD DE,(BUFFERS.CURR_DIRNAME)
LD BC,FFIRST.Name_Size LD BC,FFIRST.Name_Size
LDIR LDIR
LD (.CURR_DIRNAME),DE LD (BUFFERS.CURR_DIRNAME),DE
INC IXL INC IXL
JR .L5 JR .L5
@ -851,10 +931,7 @@ CountingDirR
ADD HL,DE ADD HL,DE
CALL GET_DWORD ; ¢§ïâì à §¬¥à ¨§ ®¯¨á â¥«ï CALL GET_DWORD ; ¢§ïâì à §¬¥à ¨§ ®¯¨á â¥«ï
LD HL,JUMPS.FILES_BYTES LD HL,JUMPS.FILES_BYTES
PUSH HL CALL HLPBCDE ; ¤®¡ ¢¨«¨ ª ⥪ã饬ã à §¬¥àã
CALL BCDEHLP ; ¤®¡ ¢¨«¨ ª ⥪ã饬ã à §¬¥àã
POP HL
CALL SET_DWORD ; ¯®«®¦¨«¨ ®¡à â­®
LD HL,(JUMPS.FILES_COUNT) LD HL,(JUMPS.FILES_COUNT)
INC HL INC HL
LD (JUMPS.FILES_COUNT),HL ; ¨­ªà¥¬¥­â ª®«¨ç¥á⢠ ä ©«®¢ LD (JUMPS.FILES_COUNT),HL ; ¨­ªà¥¬¥­â ª®«¨ç¥á⢠ ä ©«®¢
@ -869,8 +946,8 @@ CountingDirR
DIR.M_Hidden + \ DIR.M_Hidden + \
DIR.M_ReadOnly + \ DIR.M_ReadOnly + \
DIR.M_Dir DIR.M_Dir
.FFF1 LD HL,.FILES_MASK .FFF1 LD HL,BUF_MARKDIR.FILES_MASK
LD DE,.OLDPATH LD DE,BUFFERS.OLDPATH
PUSH DE PUSH DE
PUSH IX PUSH IX
SPDSS DSSF.F_FIRST,0 SPDSS DSSF.F_FIRST,0
@ -879,7 +956,7 @@ CountingDirR
RET RET
; ¯®¨áª á«¥¤ãî饣® ®¯¨á â¥«ï ; ¯®¨áª á«¥¤ãî饣® ®¯¨á â¥«ï
.F_NEXT LD DE,.OLDPATH .F_NEXT LD DE,BUFFERS.OLDPATH
PUSH DE PUSH DE
PUSH IX PUSH IX
SPDSS DSSF.F_NEXT SPDSS DSSF.F_NEXT
@ -887,34 +964,103 @@ CountingDirR
POP HL POP HL
RET RET
;.FILES_SIZE DD 0 ; ¨­¨æ¨ «¨§ æ¨ï ª®¯¨à®¢ ­¨ï ¤¨à¥ªâ®à¨¨ á ᮤ¥à¦¨¬ë¬
;.FILES_COUNT DW 0 InitCopyDirsR PUSH IX
.FILES_MASK DZ "*.*" PUSH IY
.RET_DIR DZ ".. " GETPORT WINSP.CPU3
.DIR_NAME DZ " " PUSH AF
.CURR_DIRNAME DW 0 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 - ªã¤  ¤®¡ ¢«ïâì (墮áâ ⥪ã饣® ¯ãâ¨)
; HL -  ¤à¥á ®¯¨á â¥«ï ¤¨àë ¢ áâà ­¨æ¥ ¯ ­¥«¨ ª®â®àãî ¬¥àïâì ; DE - ®âªã¤  ¨¬ï ¡à âì
; <20>  ¢ë室¥: .ADDNAME2PATH CALL .CHECK_BSLASH
; BCDE' - à §¬¥à ¢ ¡ ©â å LD (HL),'\\'
;GetDirSizeR CALL CountingDirR INC HL
; LD HL,JUMPS.FILES_BYTES EX DE,HL
; CALL GET_DWORD ; ª®¯¨à®¢ ­¨¥ ¨¬¥­¨ ¨§ ¡ãä¥à 
; EXX .COPYNAME2PATH XOR A
; RET .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 -  ¤à¥á ®¯¨á â¥«ï ¤¨àë ¢ áâà ­¨æ¥ ¯ ­¥«¨ ª®â®àãî ª®¯¨à®¢ âì ; HL -  ¤à¥á ®¯¨á â¥«ï ¤¨àë ¢ áâà ­¨æ¥ ¯ ­¥«¨ ª®â®àãî ª®¯¨à®¢ âì
MkdirsDstR MkdirsDstRR PUSH IX
.OLDPATH EQU WorkBuffer + 0x300 ; á®åà ­¥­­ë© ⥪ã騩 ¯ãâì
.CURRPATHSRC EQU WorkBuffer + 0x200 ; ¢à¥¬¥­­®© ⥪ã騩 ¯ãâì ¨áâ®ç­¨ª 
.CURRPATHDST EQU WorkBuffer + 0x100 ; ¢à¥¬¥­­®© ⥪ã騩 ¯ãâì ¯à¨¥¬­¨ª 
.FINDBUF EQU WorkBuffer
PUSH IX
PUSH IY PUSH IY
GETPORT WINSP.CPU3 GETPORT WINSP.CPU3
PUSH AF PUSH AF
@ -931,12 +1077,12 @@ MkdirsDstR
SETPORT WINSP.CPU3,,0 SETPORT WINSP.CPU3,,0
LD HL,PANEL.CURR_PATH LD HL,PANEL.CURR_PATH
ADD HL,DE ; ®âªã¤  ¯ãâì ¯à¨¥¬­¨ª  ¢§ïâì ADD HL,DE ; ®âªã¤  ¯ãâì ¯à¨¥¬­¨ª  ¢§ïâì
LD DE,.CURRPATHDST ; ¡ãä¥à ¯ã⨠¯à¨¥¬­¨ª  LD DE,BUFFERS.CURRPATHDST ; ¡ãä¥à ¯ã⨠¯à¨¥¬­¨ª 
CALL .COPYNAME2PATH CALL .COPYNAME2PATH
LD (.ENDPATHDST),DE ;  ¤à¥á 墮áâ  ¯ã⨠¯à¨¥¬­¨ª  LD (BUFFERS.ENDPATHDST),DE ;  ¤à¥á 墮áâ  ¯ã⨠¯à¨¥¬­¨ª 
; á®åà ­¥­¨¥ ⥪ã饣® ¯ã⨠¤«ï ¢®§¢à â  ; á®åà ­¥­¨¥ ⥪ã饣® ¯ã⨠¤«ï ¢®§¢à â 
SPDSS DSSF.CURDISK SPDSS DSSF.CURDISK
LD HL,.OLDPATH ; á®åà ­¥­­ë© ¯ãâì ¤«ï ¢®§¢à â  LD HL,BUFFERS.OLDPATH ; á®åà ­¥­­ë© ¯ãâì ¤«ï ¢®§¢à â 
ADD A,'A' ADD A,'A'
LD (HL),A LD (HL),A
INC HL INC HL
@ -948,29 +1094,29 @@ MkdirsDstR
; ª®¯¨à®¢ ­¨¥ ¨¬¥­¨ ¤¨à¥ªâ®à¨¨ ¤«ï ª®¯¨à®¢ ­¨ï ; ª®¯¨à®¢ ­¨¥ ¨¬¥­¨ ¤¨à¥ªâ®à¨¨ ¤«ï ª®¯¨à®¢ ­¨ï
LD HL,FileHDR.Name LD HL,FileHDR.Name
ADD HL,DE ADD HL,DE
LD DE,CountingDirR.DIR_NAME LD DE,BUF_MARKDIR.DIR_NAME
LD BC,FileHDR.Name_Size LD BC,FileHDR.Name_Size
LDIR ; § ¡à «¨ ¨¬ï ¤¨àë ¤«ï ª®¯¨à®¢ ­¨ï LDIR ; § ¡à «¨ ¨¬ï ¤¨àë ¤«ï ª®¯¨à®¢ ­¨ï
EX DE,HL EX DE,HL
CALL .CUTOFFSPACES ; ®âá¥ç¥­¨¥ ¯à®¡¥«®¢ CALL .CUTOFFSPACES ; ®âá¥ç¥­¨¥ ¯à®¡¥«®¢
; ¯¥à¥­®á ⥪ã饣® ¯ã⨠¨áâ®ç­¨ª  ; ¯¥à¥­®á ⥪ã饣® ¯ã⨠¨áâ®ç­¨ª 
LD HL,.OLDPATH LD HL,BUFFERS.OLDPATH
LD DE,.CURRPATHSRC LD DE,BUFFERS.CURRPATHSRC
CALL .COPYNAME2PATH ; ᪮¯¨à®¢ «¨ ¯ãâì ¨áâ®ç­¨ª  CALL .COPYNAME2PATH ; ᪮¯¨à®¢ «¨ ¯ãâì ¨áâ®ç­¨ª 
LD (.ENDPATHSRC),DE ;  ¤à¥á 墮áâ  ¯ã⨠¨áâ®ç­¨ª  LD (BUFFERS.ENDPATHSRC),DE ;  ¤à¥á 墮áâ  ¯ã⨠¨áâ®ç­¨ª 
; ¤®¡ ¢«¥­¨¥ ¨¬¥­¨ ¤¨àë ¤«ï ª®¯¨à®¢ ­¨ï ¢ ¯ãâì ¨áâ®ç­¨ª  ; ¤®¡ ¢«¥­¨¥ ¨¬¥­¨ ¤¨àë ¤«ï ª®¯¨à®¢ ­¨ï ¢ ¯ãâì ¨áâ®ç­¨ª 
LD HL,(.ENDPATHSRC) LD HL,(BUFFERS.ENDPATHSRC)
LD DE,CountingDirR.DIR_NAME LD DE,BUF_MARKDIR.DIR_NAME
CALL .ADDNAME2PATH CALL .ADDNAME2PATH
LD (.ENDPATHSRC),DE ;  ¤à¥á 墮áâ  ¯ã⨠¨áâ®ç­¨ª  LD (BUFFERS.ENDPATHSRC),DE ;  ¤à¥á 墮áâ  ¯ã⨠¨áâ®ç­¨ª 
; ¤®¡ ¢«¥­¨¥ ¨¬¥­¨ ¤¨àë ¤«ï ª®¯¨à®¢ ­¨ï ¢ ¯ãâì ¯à¨¥¬­¨ª  ; ¤®¡ ¢«¥­¨¥ ¨¬¥­¨ ¤¨àë ¤«ï ª®¯¨à®¢ ­¨ï ¢ ¯ãâì ¯à¨¥¬­¨ª 
LD HL,(.ENDPATHDST) LD HL,(BUFFERS.ENDPATHDST)
LD DE,CountingDirR.DIR_NAME LD DE,BUF_MARKDIR.DIR_NAME
CALL .ADDNAME2PATH CALL .ADDNAME2PATH
LD (.ENDPATHDST),DE LD (BUFFERS.ENDPATHDST),DE
; á®§¤ ­¨¥ ¤¨àë ¢ ¯à¨¥¬­¨ª¥ ; á®§¤ ­¨¥ ¤¨àë ¢ ¯à¨¥¬­¨ª¥
LD HL,.CURRPATHDST LD HL,BUFFERS.CURRPATHDST
SPDSS DSSF.MKDIR ; á®§¤ «¨ ¤¨à㠯ਥ¬­¨ª  SPDSS DSSF.MKDIR ; á®§¤ «¨ ¤¨à㠯ਥ¬­¨ª 
JR NC,.L3 JR NC,.L3
CP ERR_DSS.DIR_EXISTS ; ¥á«¨ ¤¨à  㦥 ¥áâì ¨£­®à¨¬ ®è¨¡ªã CP ERR_DSS.DIR_EXISTS ; ¥á«¨ ¤¨à  㦥 ¥áâì ¨£­®à¨¬ ®è¨¡ªã
@ -978,27 +1124,27 @@ MkdirsDstR
.L3 .L3
; TODO 横«¨ç¥áª¨© ¯®¨áª ¤¨à¥ªâ®à¨© á á®§¤ ­¨¥¬ ­  ¯à¨¥¬­¨ª¥ ; TODO 横«¨ç¥áª¨© ¯®¨áª ¤¨à¥ªâ®à¨© á á®§¤ ­¨¥¬ ­  ¯à¨¥¬­¨ª¥
LD HL,.CURRPATHSRC LD HL,BUFFERS.CURRPATHSRC
SPDSS DSSF.CHDIR ; ¢å®¤ ¢ ¤¨àã ¨áâ®ç­¨ª  SPDSS DSSF.CHDIR ; ¢å®¤ ¢ ¤¨àã ¨áâ®ç­¨ª 
CALL .FINDFIRSTSRCDIR ; ¯®¨áª ¯¥à¢®£® ®¯¨á â¥«ï CALL .FINDFIRSTSRCDIR ; ¯®¨áª ¯¥à¢®£® ®¯¨á â¥«ï
JP C,.ENDCOPY ; ¡®«ìè¥ ¤¨à¥ªâ®à¨© ­¥â, ¢ë室¨¬ JP C,.ENDCOPY ; ¡®«ìè¥ ¤¨à¥ªâ®à¨© ­¥â, ¢ë室¨¬
; ¯®¨áª ¤¨à¥ªâ®à¨© ; ¯®¨áª ¤¨à¥ªâ®à¨©
.L2 CALL .FINDNEXTSRCDIR ; ¯®¨áª á«¥¤ãî饣® ®¯¨á â¥«ï .L2 CALL .FINDNEXTSRCDIR ; ¯®¨áª á«¥¤ãî饣® ®¯¨á â¥«ï
JP C,.ENDFINDNEXT ; ¯®¨áª ®ª®­ç¥­? JP C,.ENDFINDNEXT ; ¯®¨áª ®ª®­ç¥­?
LD HL,.FINDBUF + FFIRST.Name LD HL,BUFFERS.FINDBUF + FFIRST.Name
LD A,(HL) LD A,(HL)
CP '.' ; ®¯¨á â¥«¨ "." ¨ ".." ¨£­®à¨¬ CP '.' ; ®¯¨á â¥«¨ "." ¨ ".." ¨£­®à¨¬
JR Z,.L2 JR Z,.L2
LD DE,.TMPNAMEDIR LD DE,.TMPNAMEDIR
PUSH DE PUSH DE
CALL .COPYNAME2PATH CALL .COPYNAME2PATH
LD HL,(.ENDPATHDST) LD HL,(BUFFERS.ENDPATHDST)
POP DE POP DE
CALL .ADDNAME2PATH CALL .ADDNAME2PATH
LD HL,.CURRPATHDST LD HL,BUFFERS.CURRPATHDST
SPDSS DSSF.MKDIR ; á®§¤ ¥¬ ¤¨àã ­  ¯à¨¥¬­¨ª¥ SPDSS DSSF.MKDIR ; á®§¤ ¥¬ ¤¨àã ­  ¯à¨¥¬­¨ª¥
; JP C,ERROR ; JP C,ERROR
LD HL,.CURRPATHSRC LD HL,BUFFERS.CURRPATHSRC
SPDSS DSSF.CHDIR ; ¢®§¢à é ¥¬ ¯ãâì ­  ¨áâ®ç­¨ª SPDSS DSSF.CHDIR ; ¢®§¢à é ¥¬ ¯ãâì ­  ¨áâ®ç­¨ª
; JP C,ERROR ; JP C,ERROR
JR .L2 ; ¨é¥¬ á«¥¤ãî騩 JR .L2 ; ¨é¥¬ á«¥¤ãî騩
@ -1014,13 +1160,13 @@ MkdirsDstR
; ¯®¨áª ¯¥à¢®© ¤¨àë ¢ ⥪ã饩 ¯®¤¤¨à¥ªâ®à¨¨ ; ¯®¨áª ¯¥à¢®© ¤¨àë ¢ ⥪ã饩 ¯®¤¤¨à¥ªâ®à¨¨
.FINDFIRSTSRCDIR .FINDFIRSTSRCDIR
LD HL,CountingDirR.FILES_MASK LD HL,BUF_MARKDIR.FILES_MASK
LD DE,.FINDBUF LD DE,BUFFERS.FINDBUF
SPDSS DSSF.F_FIRST,1,DIR.M_Dir SPDSS DSSF.F_FIRST,1,DIR.M_Dir
RET RET
.FINDNEXTSRCDIR .FINDNEXTSRCDIR
LD DE,.FINDBUF LD DE,BUFFERS.FINDBUF
SPDSS DSSF.F_NEXT SPDSS DSSF.F_NEXT
RET RET
@ -1041,7 +1187,7 @@ MkdirsDstR
.CNP1 LD (DE),A .CNP1 LD (DE),A
RET RET
.NAME2DIRNAME ;.NAME2DIRNAME
; ¯à®¢¥àª  ­  BACKSLASH ; ¯à®¢¥àª  ­  BACKSLASH
.CHECK_BSLASH DEC HL .CHECK_BSLASH DEC HL
@ -1071,7 +1217,7 @@ MkdirsDstR
; ¢ë室 ¨§ ª®¯¨à®¢ ­¨ï ¤¨à¥ªâ®à¨© ; ¢ë室 ¨§ ª®¯¨à®¢ ­¨ï ¤¨à¥ªâ®à¨©
.ENDCOPY LD SP,0 .ENDCOPY LD SP,0
.OLDSP EQU $-2 .OLDSP EQU $-2
LD HL,.OLDPATH LD HL,BUFFERS.OLDPATH
SPDSS DSSF.CHDIR SPDSS DSSF.CHDIR
POP AF POP AF
SETPORT WINSP.CPU3,,0 SETPORT WINSP.CPU3,,0
@ -1079,8 +1225,8 @@ MkdirsDstR
POP IX POP IX
RET RET
.ENDPATHSRC DW 0 ;  ¤à¥á 墮áâ  ¯ã⨠¨áâ®ç­¨ª  ;.ENDPATHSRC DW 0 ;  ¤à¥á 墮áâ  ¯ã⨠¨áâ®ç­¨ª 
.ENDPATHDST DW 0 ;  ¤à¥á 墮áâ  ¯ã⨠¯à¨¥¬­¨ª  ;.ENDPATHDST DW 0 ;  ¤à¥á 墮áâ  ¯ã⨠¯à¨¥¬­¨ª 
.TMPNAMEDIR DB 8 DUP 0 .TMPNAMEDIR DB 8 DUP 0
ENDIF ENDIF
@ -1100,3 +1246,51 @@ MkdirsDstR
; /F83 ; /F83
; /F99 ; /F99
; /TASM ; /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

View File

@ -1,15 +1,15 @@
; LAST UPDATE: 18.07.2025 savelij ; LAST UPDATE: 13.08.2025 savelij
;[]==========================================================[] ;[]==========================================================[]
InitExtention: LD HL,INIFILES.ExtName1 InitExtention: LD HL,INIFILES.ExtName1
LD DE,fn_ext LD DE,BUFFERS.fn_ext
CALL InitExt CALL InitExt
LD HL,INIFILES.ExtName2 LD HL,INIFILES.ExtName2
LD DE,fnview_ext LD DE,BUFFERS.fnview_ext
CALL InitExt CALL InitExt
LD HL,INIFILES.ExtName3 LD HL,INIFILES.ExtName3
LD DE,fnedit_ext LD DE,BUFFERS.fnedit_ext
;[]----------------------------------------------------------[] ;[]----------------------------------------------------------[]
InitExt: LD (.EXTdata),DE InitExt: LD (.EXTdata),DE
SPDSS DSSF.OPEN,,1 SPDSS DSSF.OPEN,,1

76
rez3_fntab.a80 Normal file
View 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