FlexNavigator 1.16.04
- сортировка и копирование файлов/директорий теперь не использует страницы панелей. - убрано переставление страниц в списке выделенных при сортировке. - доделано копирование директорий, пока только той что под курсором. - сделано/переделано измерение размера директории в байтах под курсором. - добавлено описание форм полей ввода. - перенесены некоторые tab таблицы. - перенесены буферы для загрузки ini файликов.
This commit is contained in:
parent
7940810ffd
commit
ac87c5571e
@ -1,7 +1,7 @@
|
|||||||
[]========================================================================[]
|
[]========================================================================[]
|
||||||
* *
|
* *
|
||||||
* ޝ¨á ¨¥ Flex Navigator API v1.xx ¤«ï à §à ¡®â稪®¢ Flx-Plugins *
|
* ޝ¨á ¨¥ Flex Navigator API v1.xx ¤«ï à §à ¡®â稪®¢ Flx-Plugins *
|
||||||
* doc v0.5 ®â 04.08.2025 *
|
* doc v0.5 ®â 07.09.2025 *
|
||||||
* *
|
* *
|
||||||
[]========================================================================[]
|
[]========================================================================[]
|
||||||
|
|
||||||
@ -685,7 +685,7 @@
|
|||||||
|
|
||||||
[]------------------------------------------------------------------------[]
|
[]------------------------------------------------------------------------[]
|
||||||
|
|
||||||
<EFBFBD>¡é¨¥ ¯¥à¥¬¥ë¥ ᮠᬥ饨¥ 0xC0:
|
ޡ鍥 ¯¥à¥¬¥ë¥ ᮠᬥ饨¥ 0xC0 ®â ç « â ¡«¨æë ¯¥à¥å®¤®¢:
|
||||||
|
|
||||||
NUM_DEVICES 1 Š®«¨ç¥á⢮ ãáâனáâ¢
|
NUM_DEVICES 1 Š®«¨ç¥á⢮ ãáâனáâ¢
|
||||||
TreeFlag 1 ”« £ ¤¥à¥¢ ¤¨à¥ªâ®à¨©
|
TreeFlag 1 ”« £ ¤¥à¥¢ ¤¨à¥ªâ®à¨©
|
||||||
@ -706,8 +706,8 @@ RAMPAGES
|
|||||||
.RIGHTPANEL 1 ‘âà ¨æ ª â «®£ <20>à ¢®© ¯ ¥«¨
|
.RIGHTPANEL 1 ‘âà ¨æ ª â «®£ <20>à ¢®© ¯ ¥«¨
|
||||||
.BuffPg1 1
|
.BuffPg1 1
|
||||||
.BuffPg2 1
|
.BuffPg2 1
|
||||||
.BuffPg3 1
|
.BuffPg3 1 ¨á¯®«ì§ã¥âáï ª®¯¨à®¢é¨ª®¬ ä ©«®¢/¤¨à¥ªâ®à¨©
|
||||||
.BuffPg4 1
|
.BuffPg4 1 ¨á¯®«ì§ã¥âáï á®àâ¨à®¢ª®©, à ¡®â á ¤¥à¥¢®¬ ¤¨à¥ªâ®à¨©
|
||||||
.BuffPgEnd 1
|
.BuffPgEnd 1 ¡ ©â 0xFF ¬ àª¥à ª®æ ᯨ᪠áâà ¨æ
|
||||||
.FILES_COUNT 2 ª®«¨ç¥á⢮ ¯®¬¥ç¥ëå ä ©«®¢
|
.FILES_COUNT 2 ª®«¨ç¥á⢮ ¯®¬¥ç¥ëå ä ©«®¢
|
||||||
.FILES_BYTES 5 à §¬¥à ¯®¬¥ç¥ëå ä ©«®¢ ¢ ¡ ©â å
|
.FILES_BYTES 5 à §¬¥à ¯®¬¥ç¥ëå ä ©«®¢ ¢ ¡ ©â å
|
||||||
|
|||||||
@ -1,6 +1,18 @@
|
|||||||
|
|
||||||
14.08.2025
|
07.09.2025
|
||||||
|
FlexNavigator 1.16.04
|
||||||
|
- á®àâ¨à®¢ª ¨ ª®¯¨à®¢ ¨¥ ä ©«®¢/¤¨à¥ªâ®à¨© ⥯¥àì ¥ ¨á¯®«ì§ã¥â
|
||||||
|
áâà ¨æë ¯ ¥«¥©.
|
||||||
|
- ã¡à ® ¯¥à¥áâ ¢«¥¨¥ áâà ¨æ ¢ ᯨ᪥ ¢ë¤¥«¥ëå ¯à¨ á®àâ¨à®¢ª¥.
|
||||||
|
- ¤®¤¥« ® ª®¯¨à®¢ ¨¥ ¤¨à¥ªâ®à¨©, ¯®ª ⮫쪮 ⮩ çâ® ¯®¤ ªãàá®à®¬.
|
||||||
|
- ᤥ« ®/¯¥à¥¤¥« ® ¨§¬¥à¥¨¥ à §¬¥à ¤¨à¥ªâ®à¨¨ ¢ ¡ ©â å ¯®¤ ªãàá®à®¬.
|
||||||
|
- ¤®¡ ¢«¥® ®¯¨á ¨¥ ä®à¬ ¯®«¥© ¢¢®¤ .
|
||||||
|
- ¯¥à¥¥á¥ë ¥ª®â®àë¥ tab â ¡«¨æë.
|
||||||
|
- ¯¥à¥¥á¥ë ¡ãä¥àë ¤«ï § £à㧪¨ ini ä ©«¨ª®¢.
|
||||||
|
|
||||||
|
27.08.2025
|
||||||
FlexNavigator 1.16.03
|
FlexNavigator 1.16.03
|
||||||
|
- ¨á¯à ¢«¥® ä®à¬¨à®¢ ¨¥ ¯ã⨠¤® ¯ ¯ª¨ ¯« £¨®¢.
|
||||||
- MISC äãªæ¨¨ ¯¥à¥¥á¥ë ¨§ 2 १¨¤¥â ¢ 3.
|
- MISC äãªæ¨¨ ¯¥à¥¥á¥ë ¨§ 2 १¨¤¥â ¢ 3.
|
||||||
- ¯¥à¥à á¯à¥¤¥«¥¨¥ TAB â ¡«¨æ.
|
- ¯¥à¥à á¯à¥¤¥«¥¨¥ TAB â ¡«¨æ.
|
||||||
- ¢ ®¯¨á ¨¥ Flex Navigator API ¤®¡ ¢«¥® ®¯¨á ¨¥ £«®¡ «ìëå
|
- ¢ ®¯¨á ¨¥ Flex Navigator API ¤®¡ ¢«¥® ®¯¨á ¨¥ £«®¡ «ìëå
|
||||||
|
|||||||
@ -1,8 +1,11 @@
|
|||||||
|
|
||||||
Flex navigator TODO:
|
Flex navigator TODO:
|
||||||
|
|
||||||
|
[] ¢ ª®¯¨à®¢ ¨¨ ä ©«®¢/¤¨à¥ªâ®à¨© ¤®¤¥« âì ®¡à ¡®âªã ®è¨¡®ª ¯à¨ á®§¤ ¨¨ ¤¨à¥ªâ®à¨©.
|
||||||
|
[] ¢ ¯« £¨¥ । ªâ®à ¨á¯à ¢¨âì ¥ á®åà ¥¨¥ ¢¢¥¤¥ë®© áâப¨ ¯à¨ ¦ ⨨¨ äãªæ¨® «ìëå ª« ¢¨è ¥ á¢ï§ ëå á । ªâ¨à®¢ ¨¥¬.
|
||||||
|
[] ¤«ï à ¡®âë ¢ ¤¥à¥¢®¬ ¤¨à¥ªâ®à¨© ã¡à âì ¯®¤¬¥ã áâà ¨æ ¢ ᯨ᪥ ¢ë¤ ëå.
|
||||||
|
[] ¤®¡ ¢¨âì áâ५ª¨ ¢«¥¢®/¢¯à ¢® ¤«ï ¢ë¡®à ¤¨áª®¢ ¥á«¨ ¡®«ìè¥ 10.
|
||||||
[] ¤®¡ ¢¨âì ¢ áâனª¨ ¢â®¯®ª § ¨«¨ ¯® ENTER ¯à¨ ¯¥à¥¬¥é¥¨¨ ¯® ¤¥à¥¢ã ª â «®£®¢
|
[] ¤®¡ ¢¨âì ¢ áâனª¨ ¢â®¯®ª § ¨«¨ ¯® ENTER ¯à¨ ¯¥à¥¬¥é¥¨¨ ¯® ¤¥à¥¢ã ª â «®£®¢
|
||||||
[] ¤®¡ ¢¨âì ¢ áâனª¨ ¢ë¡®à ¬¥ïâì «¨ ªâ¨¢ãî ¯ ¥«ì ¯à¨ ᬥ¥ ¤¨áª ¥ ªâ¨¢®© ¯ ¥«¨
|
|
||||||
[] ¯à¨ ¢ë¢®¤¥ ¤¥à¥¢ ª â «®£®¢ ᤥ« âì áªà®«« ¢«¥¢®/¢¯à ¢® ¥á«¨ ¤¥à¥¢® ¥ ¢«¥§ ¥â ¯® £®à¨§®â «¨
|
[] ¯à¨ ¢ë¢®¤¥ ¤¥à¥¢ ª â «®£®¢ ᤥ« âì áªà®«« ¢«¥¢®/¢¯à ¢® ¥á«¨ ¤¥à¥¢® ¥ ¢«¥§ ¥â ¯® £®à¨§®â «¨
|
||||||
[] ¯® ª®¯ª¥ F6 ⮫쪮 ¯¥à¥¨¬¥®¢ ¨¥, ¤®«¦® ¡ëâì ¯¥à¥¨¬¥®¢ ¨¥/¯¥à¥¬¥é¥¨¥ ä ©« ¥á«¨ ¯ ¥«ïå à §ë¥ ¯ãâ¨
|
[] ¯® ª®¯ª¥ F6 ⮫쪮 ¯¥à¥¨¬¥®¢ ¨¥, ¤®«¦® ¡ëâì ¯¥à¥¨¬¥®¢ ¨¥/¯¥à¥¬¥é¥¨¥ ä ©« ¥á«¨ ¯ ¥«ïå à §ë¥ ¯ãâ¨
|
||||||
[] ¯¥à¥¤¥« âì § å®à¤ª®¦¥ë¥ ª®®à¤¨ âë, ¯¥à¥¤¥« âì ¯à¨¢ï§ªã ª ª®®à¤¨ â ¬ ®ª
|
[] ¯¥à¥¤¥« âì § å®à¤ª®¦¥ë¥ ª®®à¤¨ âë, ¯¥à¥¤¥« âì ¯à¨¢ï§ªã ª ª®®à¤¨ â ¬ ®ª
|
||||||
@ -11,6 +14,7 @@ Flex navigator TODO:
|
|||||||
[] ¯« £¨ ¤«ï á®§¤ ¨ï ä®à¬ ®ª®
|
[] ¯« £¨ ¤«ï á®§¤ ¨ï ä®à¬ ®ª®
|
||||||
[?] ¢ë§®¢ ¨ ¢§ ¨¬®¤¥©á⢨¥ ¯« £¨ á ¯« £¨®¬
|
[?] ¢ë§®¢ ¨ ¢§ ¨¬®¤¥©á⢨¥ ¯« £¨ á ¯« £¨®¬
|
||||||
|
|
||||||
|
[x] (¥áâì ¨§ ç «ì®) ¤®¡ ¢¨âì ¢ áâனª¨ ¢ë¡®à ¬¥ïâì «¨ ªâ¨¢ãî ¯ ¥«ì ¯à¨ ᬥ¥ ¤¨áª ¥ ªâ¨¢®© ¯ ¥«¨
|
||||||
[x] § £à㧪 FLX ¯« £¨ ¯® ¨¬¥¨ ¡¥§ § ¯ãáª
|
[x] § £à㧪 FLX ¯« £¨ ¯® ¨¬¥¨ ¡¥§ § ¯ãáª
|
||||||
[x] ¢¢®¤ ¢ ª®¬ ¤ãî áâப㠨 ¦ ⨥ ALT+F1/F2 (¢ë¡®à ¤à ©¢ ) ¯®¤¢¨á ¥â
|
[x] ¢¢®¤ ¢ ª®¬ ¤ãî áâப㠨 ¦ ⨥ ALT+F1/F2 (¢ë¡®à ¤à ©¢ ) ¯®¤¢¨á ¥â
|
||||||
[x] á®àâ¨à®¢é¨ª á®àâ¨àã¥â "..", ¥ ¤®«¦¥
|
[x] á®àâ¨à®¢é¨ª á®àâ¨àã¥â "..", ¥ ¤®«¦¥
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
BIN
fn/flx/help.flx
BIN
fn/flx/help.flx
Binary file not shown.
@ -1,6 +1,18 @@
|
|||||||
|
|
||||||
14.08.2025
|
07.09.2025
|
||||||
|
FlexNavigator 1.16.04
|
||||||
|
- á®àâ¨à®¢ª ¨ ª®¯¨à®¢ ¨¥ ä ©«®¢/¤¨à¥ªâ®à¨© ⥯¥àì ¥ ¨á¯®«ì§ã¥â
|
||||||
|
áâà ¨æë ¯ ¥«¥©.
|
||||||
|
- ã¡à ® ¯¥à¥áâ ¢«¥¨¥ áâà ¨æ ¢ ᯨ᪥ ¢ë¤¥«¥ëå ¯à¨ á®àâ¨à®¢ª¥.
|
||||||
|
- ¤®¤¥« ® ª®¯¨à®¢ ¨¥ ¤¨à¥ªâ®à¨©, ¯®ª ⮫쪮 ⮩ çâ® ¯®¤ ªãàá®à®¬.
|
||||||
|
- ᤥ« ®/¯¥à¥¤¥« ® ¨§¬¥à¥¨¥ à §¬¥à ¤¨à¥ªâ®à¨¨ ¢ ¡ ©â å ¯®¤ ªãàá®à®¬.
|
||||||
|
- ¤®¡ ¢«¥® ®¯¨á ¨¥ ä®à¬ ¯®«¥© ¢¢®¤ .
|
||||||
|
- ¯¥à¥¥á¥ë ¥ª®â®àë¥ tab â ¡«¨æë.
|
||||||
|
- ¯¥à¥¥á¥ë ¡ãä¥àë ¤«ï § £à㧪¨ ini ä ©«¨ª®¢.
|
||||||
|
|
||||||
|
27.08.2025
|
||||||
FlexNavigator 1.16.03
|
FlexNavigator 1.16.03
|
||||||
|
- ¨á¯à ¢«¥® ä®à¬¨à®¢ ¨¥ ¯ã⨠¤® ¯ ¯ª¨ ¯« £¨®¢.
|
||||||
- MISC äãªæ¨¨ ¯¥à¥¥á¥ë ¨§ 2 १¨¤¥â ¢ 3.
|
- MISC äãªæ¨¨ ¯¥à¥¥á¥ë ¨§ 2 १¨¤¥â ¢ 3.
|
||||||
- ¯¥à¥à á¯à¥¤¥«¥¨¥ TAB â ¡«¨æ.
|
- ¯¥à¥à á¯à¥¤¥«¥¨¥ TAB â ¡«¨æ.
|
||||||
- ¢ ®¯¨á ¨¥ Flex Navigator API ¤®¡ ¢«¥® ®¯¨á ¨¥ £«®¡ «ìëå
|
- ¢ ®¯¨á ¨¥ Flex Navigator API ¤®¡ ¢«¥® ®¯¨á ¨¥ £«®¡ «ìëå
|
||||||
|
|||||||
32
fn_const.a80
32
fn_const.a80
@ -1,5 +1,5 @@
|
|||||||
|
|
||||||
; LAST UPDATE: 14.08.2025 savelij
|
; LAST UPDATE: 07.09.2025 savelij
|
||||||
|
|
||||||
NUM_FILES_PANEL EQU 17 ; ª®«¨ç¥á⢮ ä ©«®¢ ¢ á⮫¡æ¥ ¯ ¥«¨
|
NUM_FILES_PANEL EQU 17 ; ª®«¨ç¥á⢮ ä ©«®¢ ¢ á⮫¡æ¥ ¯ ¥«¨
|
||||||
NUM_PAGES_FN EQU 7 ; ª®«¨ç¥á⢮ áâà ¨æ ¯ ¬ï⨠¤«ï à ¡®âë FN
|
NUM_PAGES_FN EQU 7 ; ª®«¨ç¥á⢮ áâà ¨æ ¯ ¬ï⨠¤«ï à ¡®âë FN
|
||||||
@ -36,7 +36,6 @@ FLXMODES
|
|||||||
; 1 - ¤à¥á ª®¬¯¨«ï樨 ¨ à ¡®âë ¢ ¤à¥á å 0x4000-0x7FFF
|
; 1 - ¤à¥á ª®¬¯¨«ï樨 ¨ à ¡®âë ¢ ¤à¥á å 0x4000-0x7FFF
|
||||||
|
|
||||||
|
|
||||||
LenInpData EQU 12 ; ª ª®¥-⮠ᬥ饨¥ ¤«ï ¬¥âª¨ SearchStr
|
|
||||||
CursTimer EQU 6 ; "ç áâ®â " ¬®à£ ¨ï ⥪á⮢®£® ªãàá®à
|
CursTimer EQU 6 ; "ç áâ®â " ¬®à£ ¨ï ⥪á⮢®£® ªãàá®à
|
||||||
Step EQU 8 ; è¨à¨ ᨬ¢®« ¤«ï ¯¥à¥¬¥é¥¨ï ªãàá®à ¯à¨ ¢¢®¤¥ ⥪áâ
|
Step EQU 8 ; è¨à¨ ᨬ¢®« ¤«ï ¯¥à¥¬¥é¥¨ï ªãàá®à ¯à¨ ¢¢®¤¥ ⥪áâ
|
||||||
MainPullMenu EQU 6 ; ª®«¨ç¥á⢮ ¯ãªâ®¢ ¢ £« ¢®¬ ¬¥î
|
MainPullMenu EQU 6 ; ª®«¨ç¥á⢮ ¯ãªâ®¢ ¢ £« ¢®¬ ¬¥î
|
||||||
@ -123,6 +122,7 @@ WINSUBOBJ
|
|||||||
PANEL
|
PANEL
|
||||||
_INIT_VAR
|
_INIT_VAR
|
||||||
_SETVAR .PANELFLAG, BYTE ; ”« £ ¯ ¥«¨ ¡¨â 7 - ¡¨â ¢ë¤¥«¥®áâ¨
|
_SETVAR .PANELFLAG, BYTE ; ”« £ ¯ ¥«¨ ¡¨â 7 - ¡¨â ¢ë¤¥«¥®áâ¨
|
||||||
|
; ¡¨â 1 - áâà ¨æ ¤«ï á®àâ¨à®¢ª¨
|
||||||
; ¡¨â 0 - ®¬¥à ¯ ¥«¨
|
; ¡¨â 0 - ®¬¥à ¯ ¥«¨
|
||||||
_SETVAR .VIEWFLAG, BYTE ; ”« £ ¢¨¤ ¯ ¥«¨ 0 - ªà âª ï ¯ ¥«ì
|
_SETVAR .VIEWFLAG, BYTE ; ”« £ ¢¨¤ ¯ ¥«¨ 0 - ªà âª ï ¯ ¥«ì
|
||||||
; ¡¨â 0 - ¯®¤à®¡ ï ¯ ¥«ì
|
; ¡¨â 0 - ¯®¤à®¡ ï ¯ ¥«ì
|
||||||
@ -154,6 +154,7 @@ PANEL
|
|||||||
|
|
||||||
PANELFLAG
|
PANELFLAG
|
||||||
_BITMASK PRNDOSPATH, 7 ; =1-¯¥ç â âì ¯ãâì DOS
|
_BITMASK PRNDOSPATH, 7 ; =1-¯¥ç â âì ¯ãâì DOS
|
||||||
|
_BITMASK DIRPAGE, 1 ; =1-A-®¬¥à áâà ¨æë, =0-áâà ¨æë ¯ ¥«¥©
|
||||||
_BITMASK SIDE, 0 ; =1-¯à ¢ ï ¯ ¥«ì, =0-«¥¢ ï ¯ ¥«ì
|
_BITMASK SIDE, 0 ; =1-¯à ¢ ï ¯ ¥«ì, =0-«¥¢ ï ¯ ¥«ì
|
||||||
|
|
||||||
VIEWFLAG
|
VIEWFLAG
|
||||||
@ -259,6 +260,20 @@ FORMTABL
|
|||||||
_BITMASK CLOSEWIN, 0 ; ¢ë§¢ âì äãªæ¨î § ªàëâ¨ï ®ª ¯¥à¥¤ § ¯ã᪮¬ ¯à®£à ¬¬ë ¯® «¥¢®© ª®¯ª¥
|
_BITMASK CLOSEWIN, 0 ; ¢ë§¢ âì äãªæ¨î § ªàëâ¨ï ®ª ¯¥à¥¤ § ¯ã᪮¬ ¯à®£à ¬¬ë ¯® «¥¢®© ª®¯ª¥
|
||||||
_BITMASK ENDTABL, 7 ; ¡¨â ¢ .XMINH 㪠§ â¥«ì ª®¥æ ᯨáª
|
_BITMASK ENDTABL, 7 ; ¡¨â ¢ .XMINH 㪠§ â¥«ì ª®¥æ ᯨáª
|
||||||
|
|
||||||
|
;[]----------------------------------------------------------[]
|
||||||
|
INPUTFORM
|
||||||
|
_INIT_VAR
|
||||||
|
_SETVAR .MAXLEN, BYTE ; +00 Œ ªá¨¬ «ì ï ¤«¨ áâப¨
|
||||||
|
_SETVAR .FLAG, BYTE ; +01 ”« £ £®â®¢®áâ¨
|
||||||
|
_SETVAR .CURR_X, BYTE ; +02 ⥪ãé ï X ¯®§¨æ¨ï ªãàá®à
|
||||||
|
_SETVAR .CURRADD_X, BYTE ; +03 ⥪ãé ï AddX
|
||||||
|
_SETVAR .CURR_SYMBOLS, BYTE ; +04 ª®«¨ç¥á⢮ ¢¢¥¤¥ëå ᨬ¢®«®¢
|
||||||
|
_SETVAR .SCR_POS_X, WORD ; +05 X ¯®§¨æ¨ï áâப¨ íªà ¥
|
||||||
|
_SETVAR .SCR_POS_Y, WORD ; +07 Y ¯®§¨æ¨ï áâப¨ íªà ¥
|
||||||
|
_SETVAR .SCR_LEN_X, WORD ; +09 X ¤«¨ áâப¨ íªà ¥
|
||||||
|
_SETVAR .COLOR, BYTE ; +0B –¢¥â áâப¨
|
||||||
|
_SETVAR .BUFLINE, 0 ; +0C ...á ¬ áâப
|
||||||
|
|
||||||
; ¡ § â ¡«¨æë ¯¥à¥å®¤®¢ ¤«ï ¢ë§®¢ ¨§ ¯« £¨®¢
|
; ¡ § â ¡«¨æë ¯¥à¥å®¤®¢ ¤«ï ¢ë§®¢ ¨§ ¯« £¨®¢
|
||||||
JUMPS
|
JUMPS
|
||||||
.JUMPSIZE EQU 3
|
.JUMPSIZE EQU 3
|
||||||
@ -331,8 +346,8 @@ JUMPS
|
|||||||
_SETVAR .RIGHTPANEL, BYTE ; ‘âà ¨æ ª â «®£ <20>à ¢®© ¯ ¥«¨
|
_SETVAR .RIGHTPANEL, BYTE ; ‘âà ¨æ ª â «®£ <20>à ¢®© ¯ ¥«¨
|
||||||
_SETVAR .BuffPg1, BYTE
|
_SETVAR .BuffPg1, BYTE
|
||||||
_SETVAR .BuffPg2, BYTE
|
_SETVAR .BuffPg2, BYTE
|
||||||
_SETVAR .BuffPg3, BYTE
|
_SETVAR .BuffPg3, BYTE ; ¨á¯®«ì§ã¥âáï ª®¯¨à®¢é¨ª®¬ ä ©«®¢/¤¨à¥ªâ®à¨©
|
||||||
_SETVAR .BuffPg4, BYTE + BYTE
|
_SETVAR .BuffPg4, BYTE + BYTE ; ¨á¯®«ì§ã¥âáï á®àâ¨à®¢ª®©, à ¡®â á ¤¥à¥¢®¬ ¤¨à¥ªâ®à¨©
|
||||||
_SETVAR .FILES_COUNT, WORD
|
_SETVAR .FILES_COUNT, WORD
|
||||||
_SETVAR .FILES_BYTES, DWORD + 1
|
_SETVAR .FILES_BYTES, DWORD + 1
|
||||||
|
|
||||||
@ -366,14 +381,17 @@ FILENAME
|
|||||||
.EDIT_FLX EQU "FNEDITOR.FLX"
|
.EDIT_FLX EQU "FNEDITOR.FLX"
|
||||||
.VIEW_FLX EQU "FNVIEWER.FLX"
|
.VIEW_FLX EQU "FNVIEWER.FLX"
|
||||||
|
|
||||||
|
; ¢ãâ२¥ ®è¨¡ª¨
|
||||||
FNinternal
|
FNinternal
|
||||||
_INIT_VAR 0xF0
|
_INIT_VAR 0xF0
|
||||||
_SETVAR .PlugNotFound
|
_SETVAR .PlugNotFound
|
||||||
|
|
||||||
; ®â« ¤®ç®¥, ¥ ¬¥ïâì ¯® ¨§¡¥¦ ¨¥ £«îª®¢
|
; ®â« ¤®ç®¥, ¥ ¬¥ïâì ¯® ¨§¡¥¦ ¨¥ £«îª®¢
|
||||||
PLUGS_ENABLE EQU 0 ; ¬¥î ¯« £¨®¢
|
PLUGS_ENABLE 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
|
|
||||||
|
; § ¯à¥é¥ë¥ ᨬ¢®«ë ¢ ª®à®âª¨å ¨¬¥ å FAT
|
||||||
|
; 22 2A 2B 2C 2E 2F 3A 3B 3C 3D 3E 3F 5B 5C 5D 7C
|
||||||
|
; \" * + , . / : ; < = > ? [ \\ ] |
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
|
|
||||||
; LAST UPDATE: 03.08.2025 savelij
|
; LAST UPDATE: 22.08.2025 savelij
|
||||||
|
|
||||||
include macros.a80
|
include macros.a80
|
||||||
|
|
||||||
@ -52,7 +52,7 @@ EntryExec: DI
|
|||||||
LD A,(MAIN.FNMAIN) ; set pages from 0xC000
|
LD A,(MAIN.FNMAIN) ; set pages from 0xC000
|
||||||
SETPORT WINSP.CPU3,,0
|
SETPORT WINSP.CPU3,,0
|
||||||
LD HL,BASE_ADDR ; FNMAIN
|
LD HL,BASE_ADDR ; FNMAIN
|
||||||
LD DE,END_BLOCK_1 - START_BLOCK_1
|
LD DE,BLOCK1_SIZE
|
||||||
LD A,(MAIN.hFile)
|
LD A,(MAIN.hFile)
|
||||||
SPDSS DSSF.READ
|
SPDSS DSSF.READ
|
||||||
JP C,disk_error
|
JP C,disk_error
|
||||||
@ -60,7 +60,7 @@ EntryExec: DI
|
|||||||
LD A,(MAIN.FNREZ2)
|
LD A,(MAIN.FNREZ2)
|
||||||
SETPORT WINSP.CPU3,,0
|
SETPORT WINSP.CPU3,,0
|
||||||
LD HL,0xC000 ; FNREZ2
|
LD HL,0xC000 ; FNREZ2
|
||||||
LD DE,END_BLOCK_2 - START_BLOCK_2
|
LD DE,BLOCK2_SIZE
|
||||||
LD A,(MAIN.hFile)
|
LD A,(MAIN.hFile)
|
||||||
SPDSS DSSF.READ
|
SPDSS DSSF.READ
|
||||||
JP C,disk_error
|
JP C,disk_error
|
||||||
@ -88,7 +88,7 @@ EntryExec: DI
|
|||||||
LD A,(MAIN.FNREZ3) ; FNREZ3
|
LD A,(MAIN.FNREZ3) ; FNREZ3
|
||||||
SETPORT WINSP.CPU3,,0
|
SETPORT WINSP.CPU3,,0
|
||||||
LD HL,0xC000
|
LD HL,0xC000
|
||||||
LD DE,END_BLOCK_3 - START_BLOCK_3
|
LD DE,BLOCK3_SIZE
|
||||||
LD A,(MAIN.hFile)
|
LD A,(MAIN.hFile)
|
||||||
SPDSS DSSF.READ
|
SPDSS DSSF.READ
|
||||||
JP C,disk_error
|
JP C,disk_error
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
|
|
||||||
; LAST UPDATE: 14.08.2025 savelij
|
; LAST UPDATE: 07.09.2025 savelij
|
||||||
|
|
||||||
FLEX_VERS
|
FLEX_VERS
|
||||||
.NAVIGATOR EQU "1.16.03"
|
.NAVIGATOR EQU "1.16.04"
|
||||||
.EDITOR EQU "1.11"
|
.EDITOR EQU "1.11"
|
||||||
.VIEWER EQU "1.07"
|
.VIEWER EQU "1.07"
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
|
|
||||||
; LAST UPDATE: 31.07.2025 savelij
|
; LAST UPDATE: 07.09.2025 savelij
|
||||||
|
|
||||||
;[]----------------------------------------------------------[]
|
;[]----------------------------------------------------------[]
|
||||||
BegDIRECTORY LD HL,BegDIR
|
BegDIRECTORY LD HL,BegDIR
|
||||||
@ -78,13 +78,8 @@ NewDIRTree PUSH IY
|
|||||||
ADD HL,DE
|
ADD HL,DE
|
||||||
INC HL
|
INC HL
|
||||||
INC HL
|
INC HL
|
||||||
IF TREE_REZID
|
|
||||||
CALL RESIDENT.FindTreeDIR
|
|
||||||
CALL RESIDENT.MakeTreePath
|
|
||||||
ELSE
|
|
||||||
CALL FindTreeDIRR
|
CALL FindTreeDIRR
|
||||||
CALL MakeTreePathR
|
CALL MakeTreePathR
|
||||||
ENDIF
|
|
||||||
PUSH IY
|
PUSH IY
|
||||||
BIT PANELFLAG.B_SIDE,(IY + PANEL.PANELFLAG)
|
BIT PANELFLAG.B_SIDE,(IY + PANEL.PANELFLAG)
|
||||||
LD IY,RightPanel
|
LD IY,RightPanel
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
|
|
||||||
; LAST UPDATE: 14.08.2025 savelij
|
; LAST UPDATE: 07.09.2025 savelij
|
||||||
|
|
||||||
;[]==========================================================[]
|
;[]==========================================================[]
|
||||||
DOSline SUB A
|
DOSline SUB A
|
||||||
@ -153,11 +153,7 @@ RunDLine DEC HL
|
|||||||
ADD HL,DE
|
ADD HL,DE
|
||||||
INC HL
|
INC HL
|
||||||
INC HL
|
INC HL
|
||||||
IF TREE_REZID
|
|
||||||
CALL RESIDENT.FindTreeDIR
|
|
||||||
ELSE
|
|
||||||
CALL FindTreeDIRR
|
CALL FindTreeDIRR
|
||||||
ENDIF
|
|
||||||
CALL PrintDIR
|
CALL PrintDIR
|
||||||
CALL PrnFileInfo
|
CALL PrnFileInfo
|
||||||
PUSH IY
|
PUSH IY
|
||||||
@ -348,7 +344,7 @@ SaveDOSline
|
|||||||
PUSH BC
|
PUSH BC
|
||||||
CALL FindHistory
|
CALL FindHistory
|
||||||
POP BC
|
POP BC
|
||||||
LD DE,BUFFERS.DOShistory + BUFFERS.DOShistory_Size
|
LD DE,REZ3_BUFFERS.DOShistory + REZ3_BUFFERS.DOShistory_Size
|
||||||
OR A
|
OR A
|
||||||
EX DE,HL
|
EX DE,HL
|
||||||
SBC HL,DE
|
SBC HL,DE
|
||||||
@ -365,7 +361,7 @@ SaveDOSline
|
|||||||
INC HL
|
INC HL
|
||||||
EX DE,HL
|
EX DE,HL
|
||||||
PUSH HL
|
PUSH HL
|
||||||
LD BC,BUFFERS.DOShistory
|
LD BC,REZ3_BUFFERS.DOShistory
|
||||||
OR A
|
OR A
|
||||||
SBC HL,BC
|
SBC HL,BC
|
||||||
LD C,L
|
LD C,L
|
||||||
@ -379,7 +375,7 @@ SaveDOSline
|
|||||||
LDDR
|
LDDR
|
||||||
.L2 POP BC
|
.L2 POP BC
|
||||||
LD HL,DOSinp
|
LD HL,DOSinp
|
||||||
LD DE,BUFFERS.DOShistory
|
LD DE,REZ3_BUFFERS.DOShistory
|
||||||
LD A,C
|
LD A,C
|
||||||
INC A
|
INC A
|
||||||
LD (DE),A
|
LD (DE),A
|
||||||
@ -427,7 +423,7 @@ GetDOShistory LD IX,DOSstr
|
|||||||
SETPORT WINSP.CPU1,,0
|
SETPORT WINSP.CPU1,,0
|
||||||
RET
|
RET
|
||||||
|
|
||||||
FindHistory LD HL,BUFFERS.DOShistory
|
FindHistory LD HL,REZ3_BUFFERS.DOShistory
|
||||||
OR A
|
OR A
|
||||||
RET Z
|
RET Z
|
||||||
LD B,A
|
LD B,A
|
||||||
@ -448,7 +444,7 @@ DOSInputLine LD (InpLnData),IX
|
|||||||
.L1 CALL InsInpLnCol
|
.L1 CALL InsInpLnCol
|
||||||
PUSH IX
|
PUSH IX
|
||||||
POP HL
|
POP HL
|
||||||
LD DE,LenInpData
|
LD DE,INPUTFORM.BUFLINE
|
||||||
ADD HL,DE
|
ADD HL,DE
|
||||||
LD E,(IX + 0x04)
|
LD E,(IX + 0x04)
|
||||||
ADD HL,DE
|
ADD HL,DE
|
||||||
@ -652,7 +648,7 @@ InsertWord LD A,(IX + 0x04) ;InpytSymb
|
|||||||
; ‚¢®¤ ¢ á¥à¥¤¨ã ⥪áâ
|
; ‚¢®¤ ¢ á¥à¥¤¨ã ⥪áâ
|
||||||
PUSH IX
|
PUSH IX
|
||||||
POP HL
|
POP HL
|
||||||
LD DE,LenInpData
|
LD DE,INPUTFORM.BUFLINE
|
||||||
ADD HL,DE
|
ADD HL,DE
|
||||||
LD E,(IX + 0x04)
|
LD E,(IX + 0x04)
|
||||||
ADD HL,DE
|
ADD HL,DE
|
||||||
@ -669,7 +665,7 @@ InsertWord LD A,(IX + 0x04) ;InpytSymb
|
|||||||
POP BC
|
POP BC
|
||||||
NotInsWord PUSH IX
|
NotInsWord PUSH IX
|
||||||
POP HL
|
POP HL
|
||||||
LD DE,LenInpData
|
LD DE,INPUTFORM.BUFLINE
|
||||||
ADD HL,DE
|
ADD HL,DE
|
||||||
LD E,(IX + 0x02)
|
LD E,(IX + 0x02)
|
||||||
ADD HL,DE
|
ADD HL,DE
|
||||||
@ -695,13 +691,13 @@ ShellFile: db "X:\\SYSTEM.EXE /C ",0 ; 襫
|
|||||||
BATExtension: db ".BAT",0
|
BATExtension: db ".BAT",0
|
||||||
EXEExtension: db ".EXE"
|
EXEExtension: db ".EXE"
|
||||||
EndOfString: db 0
|
EndOfString: db 0
|
||||||
|
|
||||||
DOSstr DB 0x80,0x00
|
DOSstr DB 0x80,0x00
|
||||||
.posX DB 0x00
|
.posX DB 0x00
|
||||||
.addX DB 0x00
|
.addX DB 0x00
|
||||||
.slen DB 0x00
|
.slen DB 0x00
|
||||||
DW 256,231,376
|
DW 256,231,376
|
||||||
DB COLORP.PANEL + COLORI.FILES
|
DB COLORP.PANEL + COLORI.FILES
|
||||||
|
|
||||||
DOSinp DB 0x81 DUP 0
|
DOSinp DB 0x81 DUP 0
|
||||||
|
|
||||||
HistSpace DEFW 0x200
|
HistSpace DEFW 0x200
|
||||||
|
|||||||
16
fninit.a80
16
fninit.a80
@ -1,5 +1,5 @@
|
|||||||
|
|
||||||
; LAST UPDATE: 14.08.2025 savelij
|
; LAST UPDATE: 27.08.2025 savelij
|
||||||
|
|
||||||
;[]==========================================================[]
|
;[]==========================================================[]
|
||||||
InitVideoMode
|
InitVideoMode
|
||||||
@ -160,15 +160,19 @@ FirstInit
|
|||||||
; á®§¤ ¨¥ ¯ã⨠¤«ï § ¯ã᪠FLX ¯« £¨®¢ á ¯à¨¢ï§ª®© ª ¯ã⨠FN
|
; á®§¤ ¨¥ ¯ã⨠¤«ï § ¯ã᪠FLX ¯« £¨®¢ á ¯à¨¢ï§ª®© ª ¯ã⨠FN
|
||||||
LD HL,BUF_REZ2.FlexDIRECTORY
|
LD HL,BUF_REZ2.FlexDIRECTORY
|
||||||
LD DE,BUF_REZ2.FLXdir
|
LD DE,BUF_REZ2.FLXdir
|
||||||
.L6 LD A,(HL)
|
XOR A
|
||||||
AND A
|
.L6 CP (HL)
|
||||||
JR Z,.L7
|
JR Z,.L7
|
||||||
LDI
|
LDI
|
||||||
JR .L6
|
JR .L6
|
||||||
|
|
||||||
.L7 LD HL,.DIRFLX
|
.L7 LD HL,.DIRFLX
|
||||||
LD BC,.EDIRFLX - .DIRFLX
|
.L9 CP (HL)
|
||||||
LDIR
|
JR Z,.L8
|
||||||
|
LDI
|
||||||
|
JR .L9
|
||||||
|
|
||||||
|
.L8 LD (DE),A
|
||||||
LD (LOADFLX4RUN.NAMEFLX),DE
|
LD (LOADFLX4RUN.NAMEFLX),DE
|
||||||
LD HL,BUF_REZ2.FlexDIRECTORY
|
LD HL,BUF_REZ2.FlexDIRECTORY
|
||||||
SPDSS DSSF.CHDIR
|
SPDSS DSSF.CHDIR
|
||||||
@ -258,7 +262,7 @@ FirstInit
|
|||||||
LD (InitFlg),A
|
LD (InitFlg),A
|
||||||
RET
|
RET
|
||||||
|
|
||||||
.DIRFLX DB "FLX\\"
|
.DIRFLX DZ "FLX\\"
|
||||||
.EDIRFLX
|
.EDIRFLX
|
||||||
|
|
||||||
; ®¡®¢«¥¨¥ ¢ â ¡«¨æ¥ ¢ë¡®à ¤¨áª®¢ ¯ ¥«¨
|
; ®¡®¢«¥¨¥ ¢ â ¡«¨æ¥ ¢ë¡®à ¤¨áª®¢ ¯ ¥«¨
|
||||||
|
|||||||
297
fninput.a80
297
fninput.a80
@ -1,32 +1,32 @@
|
|||||||
|
|
||||||
; LAST UPDATE: 01.08.2025 savelij
|
; LAST UPDATE: 25.08.2025 savelij
|
||||||
|
|
||||||
;[]----------------------------------------------------------[]
|
;[]----------------------------------------------------------[]
|
||||||
InputLine LD (InpLnData),IX
|
InputLine LD (InpLnData),IX
|
||||||
LD (.InpMous),HL
|
LD (.InpMous),HL
|
||||||
SET 7,(IX+0x01)
|
SET 7,(IX + INPUTFORM.FLAG)
|
||||||
SUB A
|
SUB A
|
||||||
LD (IX+0x02),A
|
LD (IX + INPUTFORM.CURR_X),A
|
||||||
LD (IX+0x03),A
|
LD (IX + INPUTFORM.CURRADD_X),A
|
||||||
CALL InsInpLnCol
|
CALL InsInpLnCol
|
||||||
PUSH IX
|
PUSH IX
|
||||||
POP HL
|
POP HL
|
||||||
LD DE,LenInpData
|
LD DE,INPUTFORM.BUFLINE
|
||||||
ADD HL,DE
|
ADD HL,DE
|
||||||
PUSH HL
|
PUSH HL
|
||||||
LD E,(IX+0x04)
|
LD E,(IX + INPUTFORM.CURR_SYMBOLS)
|
||||||
ADD HL,DE
|
ADD HL,DE
|
||||||
LD (HL),D
|
LD (HL),D
|
||||||
LD (IX+0x02),E
|
LD (IX + INPUTFORM.CURR_X),E
|
||||||
POP HL
|
POP HL
|
||||||
LD DE,WorkBuffer
|
LD DE,WorkBuffer
|
||||||
LD A,(IX+0x02)
|
LD A,(IX + INPUTFORM.CURR_X)
|
||||||
LD (DE),A
|
LD (DE),A
|
||||||
INC DE
|
INC DE
|
||||||
LD A,(IX+0x03)
|
LD A,(IX + INPUTFORM.CURRADD_X)
|
||||||
LD (DE),A
|
LD (DE),A
|
||||||
INC DE
|
INC DE
|
||||||
LD A,(IX+0x04)
|
LD A,(IX + INPUTFORM.CURR_SYMBOLS)
|
||||||
LD (DE),A
|
LD (DE),A
|
||||||
INC DE
|
INC DE
|
||||||
LD C,A
|
LD C,A
|
||||||
@ -49,16 +49,16 @@ InputLine LD (InpLnData),IX
|
|||||||
BIT KEYBSTAT.B_CTRL,B
|
BIT KEYBSTAT.B_CTRL,B
|
||||||
JR NZ,.NextInpKeys
|
JR NZ,.NextInpKeys
|
||||||
LD IX,InpTable1
|
LD IX,InpTable1
|
||||||
.NextInpKeys LD L,(IX+0x00)
|
.NextInpKeys LD L,(IX + 0)
|
||||||
INC L
|
INC L
|
||||||
JR Z,.InpLineLp1
|
JR Z,.InpLineLp1
|
||||||
INC IX
|
INC IX
|
||||||
DEC L
|
DEC L
|
||||||
LD H,(IX+0x00)
|
LD H,(IX + 0)
|
||||||
INC IX
|
INC IX
|
||||||
LD C,(IX+0x00)
|
LD C,(IX + 0)
|
||||||
INC IX
|
INC IX
|
||||||
LD B,(IX+0x00)
|
LD B,(IX + 0)
|
||||||
INC IX
|
INC IX
|
||||||
OR A
|
OR A
|
||||||
SBC HL,DE
|
SBC HL,DE
|
||||||
@ -94,39 +94,40 @@ InputLine LD (InpLnData),IX
|
|||||||
CALL ResCursor
|
CALL ResCursor
|
||||||
PUSH IX
|
PUSH IX
|
||||||
POP HL
|
POP HL
|
||||||
LD DE,LenInpData
|
LD DE,INPUTFORM.BUFLINE
|
||||||
ADD HL,DE
|
ADD HL,DE
|
||||||
EX DE,HL
|
EX DE,HL
|
||||||
LD HL,WorkBuffer
|
LD HL,WorkBuffer
|
||||||
LD A,(HL)
|
LD A,(HL)
|
||||||
INC HL
|
INC HL
|
||||||
LD (IX+0x02),A
|
LD (IX + INPUTFORM.CURR_X),A
|
||||||
LD A,(HL)
|
LD A,(HL)
|
||||||
INC HL
|
INC HL
|
||||||
LD (IX+0x03),A
|
LD (IX + INPUTFORM.CURRADD_X),A
|
||||||
LD A,(HL)
|
LD A,(HL)
|
||||||
INC HL
|
INC HL
|
||||||
LD (IX+0x04),A
|
LD (IX + INPUTFORM.CURR_SYMBOLS),A
|
||||||
LD C,A
|
LD C,A
|
||||||
LD B,0x00
|
LD B,0x00
|
||||||
LD A,B
|
; LD A,B
|
||||||
OR C
|
; OR C
|
||||||
|
AND A
|
||||||
SCF
|
SCF
|
||||||
RET Z
|
RET Z
|
||||||
LDIR
|
LDIR
|
||||||
RET
|
RET
|
||||||
|
|
||||||
InpLnData DEFW 0x0000 ; €¤à¥á ®¯¨á ⥫ï áâப¨
|
InpLnData DEFW 0x0000 ; €¤à¥á ®¯¨á ⥫ï áâப¨
|
||||||
; +00 Œ ªá¨¬ «ì ï ¤«¨ áâப¨
|
; +00 Œ ªá¨¬ «ì ï ¤«¨ áâப¨
|
||||||
; +01 ”« £ £®â®¢®áâ¨
|
; +01 ”« £ £®â®¢®áâ¨
|
||||||
; +02 ⥪ãé ï X ¯®§¨æ¨ï ªãàá®à
|
; +02 ⥪ãé ï X ¯®§¨æ¨ï ªãàá®à
|
||||||
; +03 ⥪ãé ï AddX
|
; +03 ⥪ãé ï AddX
|
||||||
; +04 ª®«¨ç¥á⢮ ¢¢¥¤¥ëå ᨬ¢®«®¢
|
; +04 ª®«¨ç¥á⢮ ¢¢¥¤¥ëå ᨬ¢®«®¢
|
||||||
; +05 X ¯®§¨æ¨ï áâப¨ íªà ¥
|
; +05 X ¯®§¨æ¨ï áâப¨ íªà ¥
|
||||||
; +07 Y ¯®§¨æ¨ï áâப¨ íªà ¥
|
; +07 Y ¯®§¨æ¨ï áâப¨ íªà ¥
|
||||||
; +09 X ¤«¨ áâப¨ íªà ¥
|
; +09 X ¤«¨ áâப¨ íªà ¥
|
||||||
; +0B –¢¥â áâப¨
|
; +0B –¢¥â áâப¨
|
||||||
; +0C ...á ¬ áâப
|
; +0C ...á ¬ áâப
|
||||||
|
|
||||||
InpTable1 DW SC.ESC << 8 | 0x1B, InputLine.InputLineExitCancel
|
InpTable1 DW SC.ESC << 8 | 0x1B, InputLine.InputLineExitCancel
|
||||||
DW SC.ENTER << 8 | 0x0D, InputLine.InputLineExitOk
|
DW SC.ENTER << 8 | 0x0D, InputLine.InputLineExitOk
|
||||||
@ -147,22 +148,22 @@ InpTable2 DW SC.X4 << 8, ILwordL
|
|||||||
InsertSymbol CP ' '
|
InsertSymbol CP ' '
|
||||||
RET C
|
RET C
|
||||||
EX AF,AF'
|
EX AF,AF'
|
||||||
BIT 7,(IX+0x01) ; ready
|
BIT 7,(IX + INPUTFORM.FLAG) ; ready
|
||||||
CALL NZ,ClearInpLn
|
CALL NZ,ClearInpLn
|
||||||
LD A,(IX+0x04) ; InpytSymb
|
LD A,(IX + INPUTFORM.CURR_SYMBOLS) ; InpytSymb
|
||||||
SUB (IX+0x00) ; Max len
|
SUB (IX + INPUTFORM.MAXLEN) ; Max len
|
||||||
RET NC
|
RET NC
|
||||||
LD A,(IX+0x04)
|
LD A,(IX + INPUTFORM.CURR_SYMBOLS)
|
||||||
SUB (IX+0x02)
|
SUB (IX + INPUTFORM.CURR_X)
|
||||||
JR Z,NotInsert
|
JR Z,NotInsert
|
||||||
; ‚¢®¤ ¢ á¥à¥¤¨ã ⥪áâ
|
; ‚¢®¤ ¢ á¥à¥¤¨ã ⥪áâ
|
||||||
LD C,A
|
LD C,A
|
||||||
LD B,0x00
|
LD B,0x00
|
||||||
PUSH IX
|
PUSH IX
|
||||||
POP HL
|
POP HL
|
||||||
LD DE,LenInpData
|
LD DE,INPUTFORM.BUFLINE
|
||||||
ADD HL,DE
|
ADD HL,DE
|
||||||
LD E,(IX+0x04)
|
LD E,(IX + INPUTFORM.CURR_SYMBOLS)
|
||||||
ADD HL,DE
|
ADD HL,DE
|
||||||
LD E,L
|
LD E,L
|
||||||
LD D,H
|
LD D,H
|
||||||
@ -170,127 +171,129 @@ InsertSymbol CP ' '
|
|||||||
LDDR
|
LDDR
|
||||||
NotInsert PUSH IX
|
NotInsert PUSH IX
|
||||||
POP HL
|
POP HL
|
||||||
LD DE,LenInpData
|
LD DE,INPUTFORM.BUFLINE
|
||||||
ADD HL,DE
|
ADD HL,DE
|
||||||
LD E,(IX+0x02)
|
LD E,(IX + INPUTFORM.CURR_X)
|
||||||
ADD HL,DE
|
ADD HL,DE
|
||||||
EX AF,AF'
|
EX AF,AF'
|
||||||
LD (HL),A
|
LD (HL),A
|
||||||
INC (IX+0x04)
|
INC (IX + INPUTFORM.CURR_SYMBOLS)
|
||||||
INC (IX+0x02)
|
INC (IX + INPUTFORM.CURR_X)
|
||||||
JP PrintInpLn
|
JP PrintInpLn
|
||||||
|
|
||||||
; Clear Buffer
|
; Clear Buffer
|
||||||
ClearInpLn RES 7,(IX+0x01)
|
ClearInpLn RES 7,(IX + INPUTFORM.FLAG)
|
||||||
PUSH IX
|
PUSH IX
|
||||||
POP HL
|
POP HL
|
||||||
LD DE,LenInpData
|
LD DE,INPUTFORM.BUFLINE
|
||||||
ADD HL,DE
|
ADD HL,DE
|
||||||
LD B,(IX+0x00)
|
LD B,(IX + INPUTFORM.MAXLEN)
|
||||||
SUB A
|
SUB A
|
||||||
.L1 LD (HL),A
|
.L1 LD (HL),A
|
||||||
INC HL
|
INC HL
|
||||||
DJNZ .L1
|
DJNZ .L1
|
||||||
LD (IX+0x02),A
|
LD (IX + INPUTFORM.CURR_X),A
|
||||||
LD (IX+0x03),A
|
LD (IX + INPUTFORM.CURRADD_X),A
|
||||||
LD (IX+0x04),A
|
LD (IX + INPUTFORM.CURR_SYMBOLS),A
|
||||||
JP PrintInpLn
|
JP PrintInpLn
|
||||||
|
|
||||||
; Šãàá®à ¢«¥¢® ®¤® ¬¥áâ®
|
; Šãàá®à ¢«¥¢® ®¤® ¬¥áâ®
|
||||||
ILleft RES 7,(IX+0x01)
|
ILleft RES 7,(IX + INPUTFORM.FLAG)
|
||||||
LD A,(IX+0x02)
|
LD A,(IX + INPUTFORM.CURR_X)
|
||||||
DEC A
|
DEC A
|
||||||
RET M
|
RET M
|
||||||
LD (IX+0x02),A
|
LD (IX + INPUTFORM.CURR_X),A
|
||||||
JP PrintInpLn
|
JP PrintInpLn
|
||||||
|
|
||||||
; Šãàá®à ¢¯à ¢® ®¤® ¬¥áâ®
|
; Šãàá®à ¢¯à ¢® ®¤® ¬¥áâ®
|
||||||
ILright RES 7,(IX+0x01)
|
ILright RES 7,(IX + INPUTFORM.FLAG)
|
||||||
LD A,(IX+0x02)
|
LD A,(IX + INPUTFORM.CURR_X)
|
||||||
CP (IX+0x04)
|
CP (IX + INPUTFORM.CURR_SYMBOLS)
|
||||||
RET Z
|
RET Z
|
||||||
INC (IX+0x02)
|
INC (IX + INPUTFORM.CURR_X)
|
||||||
JP PrintInpLn
|
JP PrintInpLn
|
||||||
|
|
||||||
; delete
|
; delete
|
||||||
ILdelet BIT 7,(IX+0x01) ; ready
|
ILdelet BIT 7,(IX + INPUTFORM.FLAG) ; ready
|
||||||
CALL NZ,ClearInpLn
|
CALL NZ,ClearInpLn
|
||||||
LD A,(IX+0x02)
|
LD A,(IX + INPUTFORM.CURR_X)
|
||||||
OR A
|
OR A
|
||||||
RET Z
|
RET Z
|
||||||
PUSH IX
|
PUSH IX
|
||||||
POP HL
|
POP HL
|
||||||
LD DE,LenInpData
|
LD DE,INPUTFORM.BUFLINE
|
||||||
ADD HL,DE
|
ADD HL,DE
|
||||||
LD E,(IX+0x02)
|
LD E,(IX + INPUTFORM.CURR_X)
|
||||||
ADD HL,DE
|
ADD HL,DE
|
||||||
LD E,L
|
LD E,L
|
||||||
LD D,H
|
LD D,H
|
||||||
DEC DE
|
DEC DE
|
||||||
LD A,(IX+0x04)
|
LD A,(IX + INPUTFORM.CURR_SYMBOLS)
|
||||||
SUB (IX+0x02)
|
SUB (IX + INPUTFORM.CURR_X)
|
||||||
JR Z,ILDel1
|
JR Z,ILDel1
|
||||||
LD C,A
|
LD C,A
|
||||||
LD B,0x00
|
XOR A
|
||||||
|
LD B,A
|
||||||
LDIR
|
LDIR
|
||||||
SUB A
|
; SUB A
|
||||||
ILDel1 LD (DE),A
|
ILDel1 LD (DE),A
|
||||||
DEC (IX+0x02)
|
DEC (IX + INPUTFORM.CURR_X)
|
||||||
DEC (IX+0x04)
|
DEC (IX + INPUTFORM.CURR_SYMBOLS)
|
||||||
JP PrintInpLn
|
JP PrintInpLn
|
||||||
|
|
||||||
; Delete Char in Current Position
|
; Delete Char in Current Position
|
||||||
IL_del_ BIT 7,(IX+0x01) ; ready
|
IL_del_ BIT 7,(IX + INPUTFORM.FLAG) ; ready
|
||||||
CALL NZ,ClearInpLn
|
CALL NZ,ClearInpLn
|
||||||
PUSH IX
|
PUSH IX
|
||||||
POP HL
|
POP HL
|
||||||
LD DE,LenInpData
|
LD DE,INPUTFORM.BUFLINE
|
||||||
ADD HL,DE
|
ADD HL,DE
|
||||||
LD E,(IX+0x02)
|
LD E,(IX + INPUTFORM.CURR_X)
|
||||||
ADD HL,DE
|
ADD HL,DE
|
||||||
INC HL
|
INC HL
|
||||||
LD E,L
|
LD E,L
|
||||||
LD D,H
|
LD D,H
|
||||||
DEC DE
|
DEC DE
|
||||||
LD A,(IX+0x04)
|
LD A,(IX + INPUTFORM.CURR_SYMBOLS)
|
||||||
SUB (IX+0x02)
|
SUB (IX + INPUTFORM.CURR_X)
|
||||||
RET Z
|
RET Z
|
||||||
LD C,A
|
LD C,A
|
||||||
LD B,0x00
|
XOR A
|
||||||
LDIR
|
LD B,A
|
||||||
SUB A
|
LDIR
|
||||||
|
; SUB A
|
||||||
LD (DE),A
|
LD (DE),A
|
||||||
DEC (IX+0x04)
|
DEC (IX + INPUTFORM.CURR_SYMBOLS)
|
||||||
JP PrintInpLn
|
JP PrintInpLn
|
||||||
|
|
||||||
; Home
|
; Home
|
||||||
ILhome RES 7,(IX+0x01)
|
ILhome RES 7,(IX + INPUTFORM.FLAG)
|
||||||
LD A,(IX+0x02)
|
LD A,(IX + INPUTFORM.CURR_X)
|
||||||
OR A
|
OR A
|
||||||
RET Z
|
RET Z
|
||||||
SUB A
|
SUB A
|
||||||
LD (IX+0x02),A
|
LD (IX + INPUTFORM.CURR_X),A
|
||||||
JP PrintInpLn
|
JP PrintInpLn
|
||||||
|
|
||||||
; End string
|
; End string
|
||||||
ILend RES 7,(IX+0x01)
|
ILend RES 7,(IX + INPUTFORM.FLAG)
|
||||||
LD A,(IX+0x04)
|
LD A,(IX + INPUTFORM.CURR_SYMBOLS)
|
||||||
CP (IX+0x02)
|
CP (IX + INPUTFORM.CURR_X)
|
||||||
RET Z
|
RET Z
|
||||||
LD (IX+0x02),A
|
LD (IX + INPUTFORM.CURR_X),A
|
||||||
JP PrintInpLn
|
JP PrintInpLn
|
||||||
|
|
||||||
; Word right
|
; Word right
|
||||||
ILwordR RES 7,(IX+0x01)
|
ILwordR RES 7,(IX + INPUTFORM.FLAG)
|
||||||
LD A,(IX+0x04)
|
LD A,(IX + INPUTFORM.CURR_SYMBOLS)
|
||||||
SUB (IX+0x02)
|
SUB (IX + INPUTFORM.CURR_X)
|
||||||
RET Z
|
RET Z
|
||||||
LD B,A
|
LD B,A
|
||||||
PUSH IX
|
PUSH IX
|
||||||
POP HL
|
POP HL
|
||||||
LD DE,LenInpData
|
LD DE,INPUTFORM.BUFLINE
|
||||||
ADD HL,DE
|
ADD HL,DE
|
||||||
LD E,(IX+0x02)
|
LD E,(IX + INPUTFORM.CURR_X)
|
||||||
ADD HL,DE
|
ADD HL,DE
|
||||||
LD C,E
|
LD C,E
|
||||||
.L2 LD A,(HL)
|
.L2 LD A,(HL)
|
||||||
@ -319,19 +322,19 @@ ILwordR RES 7,(IX+0x01)
|
|||||||
.L1 INC HL
|
.L1 INC HL
|
||||||
INC C
|
INC C
|
||||||
DJNZ .L3
|
DJNZ .L3
|
||||||
.L4 LD (IX+0x02),C
|
.L4 LD (IX + INPUTFORM.CURR_X),C
|
||||||
JP PrintInpLn
|
JP PrintInpLn
|
||||||
|
|
||||||
; Word left
|
; Word left
|
||||||
ILwordL RES 7,(IX+0x01)
|
ILwordL RES 7,(IX + INPUTFORM.FLAG)
|
||||||
LD A,(IX+0x02)
|
LD A,(IX + INPUTFORM.CURR_X)
|
||||||
OR A
|
OR A
|
||||||
RET Z
|
RET Z
|
||||||
LD B,A
|
LD B,A
|
||||||
LD C,B
|
LD C,B
|
||||||
PUSH IX
|
PUSH IX
|
||||||
POP HL
|
POP HL
|
||||||
LD DE,LenInpData
|
LD DE,INPUTFORM.BUFLINE
|
||||||
ADD HL,DE
|
ADD HL,DE
|
||||||
LD E,C
|
LD E,C
|
||||||
ADD HL,DE
|
ADD HL,DE
|
||||||
@ -344,7 +347,7 @@ ILwordL RES 7,(IX+0x01)
|
|||||||
JR Z,.L2
|
JR Z,.L2
|
||||||
CP '.'
|
CP '.'
|
||||||
JR Z,.L2
|
JR Z,.L2
|
||||||
CP 0x5C
|
CP '\\'
|
||||||
JR Z,.L2
|
JR Z,.L2
|
||||||
DJNZ .L3
|
DJNZ .L3
|
||||||
JR .L5
|
JR .L5
|
||||||
@ -362,23 +365,23 @@ ILwordL RES 7,(IX+0x01)
|
|||||||
DEC C
|
DEC C
|
||||||
DJNZ .L2
|
DJNZ .L2
|
||||||
.L4 INC C
|
.L4 INC C
|
||||||
.L5 LD (IX+0x02),C
|
.L5 LD (IX + INPUTFORM.CURR_X),C
|
||||||
JP PrintInpLn
|
JP PrintInpLn
|
||||||
|
|
||||||
; Delete word
|
; Delete word
|
||||||
ILdelWR RES 7,(IX+0x01)
|
ILdelWR RES 7,(IX + INPUTFORM.FLAG)
|
||||||
LD A,(IX+0x02)
|
LD A,(IX + INPUTFORM.CURR_X)
|
||||||
OR A
|
OR A
|
||||||
RET Z
|
RET Z
|
||||||
LD B,A
|
LD B,A
|
||||||
LD C,B
|
LD C,B
|
||||||
PUSH IX
|
PUSH IX
|
||||||
POP HL
|
POP HL
|
||||||
LD DE,LenInpData
|
LD DE,INPUTFORM.BUFLINE
|
||||||
ADD HL,DE
|
ADD HL,DE
|
||||||
LD E,C
|
LD E,C
|
||||||
ADD HL,DE
|
ADD HL,DE
|
||||||
LD A,(IX+0x04)
|
LD A,(IX + INPUTFORM.CURR_SYMBOLS)
|
||||||
SUB B
|
SUB B
|
||||||
LD E,A
|
LD E,A
|
||||||
PUSH HL
|
PUSH HL
|
||||||
@ -423,14 +426,14 @@ ILdelWR RES 7,(IX+0x01)
|
|||||||
DJNZ .L4
|
DJNZ .L4
|
||||||
.L2 INC HL
|
.L2 INC HL
|
||||||
INC C
|
INC C
|
||||||
.L6 LD A,(IX+0x02)
|
.L6 LD A,(IX + INPUTFORM.CURR_X)
|
||||||
LD (IX+0x02),C
|
LD (IX + INPUTFORM.CURR_X),C
|
||||||
SUB C
|
SUB C
|
||||||
LD C,A
|
LD C,A
|
||||||
EX AF,AF'
|
EX AF,AF'
|
||||||
LD A,(IX+0x04)
|
LD A,(IX + INPUTFORM.CURR_SYMBOLS)
|
||||||
SUB C
|
SUB C
|
||||||
LD (IX+0x04),A
|
LD (IX + INPUTFORM.CURR_SYMBOLS),A
|
||||||
LD C,E
|
LD C,E
|
||||||
LD B,0x00
|
LD B,0x00
|
||||||
EX DE,HL
|
EX DE,HL
|
||||||
@ -449,26 +452,26 @@ ILdelWR RES 7,(IX+0x01)
|
|||||||
JP PrintInpLn
|
JP PrintInpLn
|
||||||
|
|
||||||
;[]----------------------------------------------------------[]
|
;[]----------------------------------------------------------[]
|
||||||
InsInpLnCol LD L,(IX+0x07)
|
InsInpLnCol LD L,(IX + INPUTFORM.SCR_POS_Y)
|
||||||
LD H,(IX+0x08)
|
LD H,(IX + INPUTFORM.SCR_POS_Y + 1)
|
||||||
LD (FillILy),HL
|
LD (FillILy),HL
|
||||||
LD A,(IX+0x0B)
|
LD A,(IX + INPUTFORM.COLOR)
|
||||||
AND 0x0F ; INK
|
AND 0x0F ; INK
|
||||||
LD C,A
|
LD C,A
|
||||||
RLCA
|
RLCA
|
||||||
RLCA
|
RLCA
|
||||||
RLCA
|
RLCA
|
||||||
RLCA
|
RLCA
|
||||||
OR C
|
OR C
|
||||||
LD HL,PrnINKl ; INK ¡ãä¥à
|
LD HL,PrnINKl ; INK ¡ãä¥à
|
||||||
LD B,0x08
|
LD B,0x08
|
||||||
CPL
|
CPL
|
||||||
.L1 LD (HL),A
|
.L1 LD (HL),A
|
||||||
INC HL
|
INC HL
|
||||||
DJNZ .L1
|
DJNZ .L1
|
||||||
LD B,A
|
LD B,A
|
||||||
LD A,(IX+0x0B)
|
LD A,(IX + INPUTFORM.COLOR)
|
||||||
AND 0xF0 ; PAPER
|
AND 0xF0 ; PAPER
|
||||||
LD C,A
|
LD C,A
|
||||||
RRCA
|
RRCA
|
||||||
RRCA
|
RRCA
|
||||||
@ -477,7 +480,7 @@ InsInpLnCol LD L,(IX+0x07)
|
|||||||
LD (FillILc),A
|
LD (FillILc),A
|
||||||
OR C
|
OR C
|
||||||
XOR B
|
XOR B
|
||||||
LD HL,PrnPAPl ; PAPER ¡ãä¥à
|
LD HL,PrnPAPl ; PAPER ¡ãä¥à
|
||||||
LD B,0x08
|
LD B,0x08
|
||||||
.L2 LD (HL),A
|
.L2 LD (HL),A
|
||||||
INC HL
|
INC HL
|
||||||
@ -485,46 +488,46 @@ InsInpLnCol LD L,(IX+0x07)
|
|||||||
RET
|
RET
|
||||||
|
|
||||||
PrintInpLn CALL ResCursor
|
PrintInpLn CALL ResCursor
|
||||||
.L1 LD A,(IX+0x02)
|
.L1 LD A,(IX + INPUTFORM.CURR_X)
|
||||||
SUB (IX+0x03)
|
SUB (IX + INPUTFORM.CURRADD_X)
|
||||||
JR NC,PrnInpLn1
|
JR NC,PrnInpLn1
|
||||||
LD A,(IX+0x03)
|
LD A,(IX + INPUTFORM.CURRADD_X)
|
||||||
SUB Step
|
SUB Step
|
||||||
LD (IX+0x03),A
|
LD (IX + INPUTFORM.CURRADD_X),A
|
||||||
JR PrintInpLn.L1
|
JR PrintInpLn.L1
|
||||||
|
|
||||||
PrnInpLn1 PUSH IX
|
PrnInpLn1 PUSH IX
|
||||||
POP HL
|
POP HL
|
||||||
LD DE,LenInpData
|
LD DE,INPUTFORM.BUFLINE
|
||||||
ADD HL,DE
|
ADD HL,DE
|
||||||
LD E,(IX+0x03)
|
LD E,(IX + INPUTFORM.CURRADD_X)
|
||||||
ADD HL,DE
|
ADD HL,DE
|
||||||
OR A
|
OR A
|
||||||
CALL NZ,TstInpLnLen ; <20> ¢å®¤: HL- ç «® ¢ë¢®¤
|
CALL NZ,TstInpLnLen ; <20> ¢å®¤: HL- ç «® ¢ë¢®¤
|
||||||
; € -ª®«.ᨬ¢.¤® ªãàá®à
|
; € -ª®«.ᨬ¢.¤® ªãàá®à
|
||||||
PUSH IY
|
PUSH IY
|
||||||
PUSH IX
|
PUSH IX
|
||||||
LD A,(IX+0x07)
|
LD A,(IX + INPUTFORM.SCR_POS_Y)
|
||||||
LD IYL,A ; Y ª®®à¤¨ â
|
LD IYL,A ; Y ª®®à¤¨ â
|
||||||
LD A,(IX+0x04)
|
LD A,(IX + INPUTFORM.CURR_SYMBOLS)
|
||||||
LD IYH,A
|
LD IYH,A
|
||||||
GETPORT WINSP.Y_PORT ; ‘®åà 塞 Y ¯®àâ
|
GETPORT WINSP.Y_PORT ; ‘®åà 塞 Y ¯®àâ
|
||||||
PUSH AF
|
PUSH AF
|
||||||
EXX
|
EXX
|
||||||
LD HL,PrnPAPl
|
LD HL,PrnPAPl
|
||||||
LD DE,PrnINKl
|
LD DE,PrnINKl
|
||||||
LD C,(IX+0x05)
|
LD C,(IX + INPUTFORM.SCR_POS_X)
|
||||||
LD B,(IX+0x06)
|
LD B,(IX + INPUTFORM.SCR_POS_X + 1)
|
||||||
SRL B
|
SRL B
|
||||||
RR C
|
RR C
|
||||||
SET 6,B
|
SET 6,B
|
||||||
EXX
|
EXX
|
||||||
LD C,(IX+0x09)
|
LD C,(IX + INPUTFORM.SCR_LEN_X)
|
||||||
LD B,(IX+0x0A)
|
LD B,(IX + INPUTFORM.SCR_LEN_X + 1)
|
||||||
SRL B
|
SRL B
|
||||||
RR C
|
RR C
|
||||||
LD IXL,C
|
LD IXL,C
|
||||||
LD C,L ; €¤à¥á áâப¨
|
LD C,L ; €¤à¥á áâப¨
|
||||||
LD B,H
|
LD B,H
|
||||||
GETPORT WINSP.CPU1
|
GETPORT WINSP.CPU1
|
||||||
LD IXH,A
|
LD IXH,A
|
||||||
@ -542,9 +545,9 @@ PrnInpLn1 PUSH IX
|
|||||||
LD A,(BC)
|
LD A,(BC)
|
||||||
INC BC
|
INC BC
|
||||||
PInpLnP LD L,A
|
PInpLnP LD L,A
|
||||||
LD H,HIGH (FONT_RAW)-0xC0
|
LD H,HIGH (FONT_RAW) - 0xC0
|
||||||
PUSH BC
|
PUSH BC
|
||||||
LD B,(HL) ; ¤«¨ ᨬ¢®«
|
LD B,(HL) ; ¤«¨ ᨬ¢®«
|
||||||
INC H
|
INC H
|
||||||
LD E,(HL)
|
LD E,(HL)
|
||||||
INC H
|
INC H
|
||||||
@ -627,10 +630,10 @@ TstInpLnLen PUSH IY
|
|||||||
PUSH AF
|
PUSH AF
|
||||||
LD A,(RAMPAGES.FNFONT)
|
LD A,(RAMPAGES.FNFONT)
|
||||||
SETPORT WINSP.CPU0,,0
|
SETPORT WINSP.CPU0,,0
|
||||||
LD D,HIGH (FONT_RAW)-0xC0
|
LD D,HIGH (FONT_RAW) - 0xC0
|
||||||
TstInpLn PUSH HL
|
.TstInpLn PUSH HL
|
||||||
LD BC,0x0000
|
LD BC,0x0000
|
||||||
TstInpL LD E,(HL)
|
.TstInpL LD E,(HL)
|
||||||
INC HL
|
INC HL
|
||||||
LD A,(DE)
|
LD A,(DE)
|
||||||
ADD A,A
|
ADD A,A
|
||||||
@ -640,23 +643,23 @@ TstInpL LD E,(HL)
|
|||||||
ADC A,0x00
|
ADC A,0x00
|
||||||
LD B,A
|
LD B,A
|
||||||
DEC IYL
|
DEC IYL
|
||||||
JR NZ,TstInpL
|
JR NZ,.TstInpL
|
||||||
LD L,(IX+0x09)
|
LD L,(IX + INPUTFORM.SCR_LEN_X)
|
||||||
LD H,(IX+0x0A)
|
LD H,(IX + INPUTFORM.SCR_LEN_X + 1)
|
||||||
OR A
|
OR A
|
||||||
SBC HL,BC
|
SBC HL,BC
|
||||||
JR NC,TstInpE
|
JR NC,TstInpE
|
||||||
POP HL
|
POP HL
|
||||||
LD BC,Step
|
LD BC,Step
|
||||||
ADD HL,BC
|
ADD HL,BC
|
||||||
LD A,(IX+0x03)
|
LD A,(IX + INPUTFORM.CURRADD_X)
|
||||||
ADD A,C
|
ADD A,C
|
||||||
LD (IX+0x03),A
|
LD (IX + INPUTFORM.CURRADD_X),A
|
||||||
LD A,IYH
|
LD A,IYH
|
||||||
SUB C
|
SUB C
|
||||||
LD IYH,A
|
LD IYH,A
|
||||||
LD IYL,A
|
LD IYL,A
|
||||||
JR TstInpLn
|
JR .TstInpLn
|
||||||
|
|
||||||
TstInpE POP HL
|
TstInpE POP HL
|
||||||
POP AF
|
POP AF
|
||||||
@ -667,12 +670,12 @@ TstInpE POP HL
|
|||||||
|
|
||||||
SetCursor PUSH IX
|
SetCursor PUSH IX
|
||||||
POP HL
|
POP HL
|
||||||
LD DE,LenInpData
|
LD DE,INPUTFORM.BUFLINE
|
||||||
ADD HL,DE
|
ADD HL,DE
|
||||||
LD E,(IX+0x03)
|
LD E,(IX + INPUTFORM.CURRADD_X)
|
||||||
ADD HL,DE
|
ADD HL,DE
|
||||||
LD BC,0x0000
|
LD BC,0x0000
|
||||||
LD A,(IX+0x02)
|
LD A,(IX + INPUTFORM.CURR_X)
|
||||||
SUB E
|
SUB E
|
||||||
JR Z,StCurs1
|
JR Z,StCurs1
|
||||||
EX AF,AF'
|
EX AF,AF'
|
||||||
@ -681,7 +684,7 @@ SetCursor PUSH IX
|
|||||||
PUSH AF
|
PUSH AF
|
||||||
LD A,(RAMPAGES.FNFONT)
|
LD A,(RAMPAGES.FNFONT)
|
||||||
SETPORT WINSP.CPU0,,0
|
SETPORT WINSP.CPU0,,0
|
||||||
LD D,HIGH (FONT_RAW)-0xC0
|
LD D,HIGH (FONT_RAW) - 0xC0
|
||||||
EX AF,AF'
|
EX AF,AF'
|
||||||
StCurs0 EX AF,AF'
|
StCurs0 EX AF,AF'
|
||||||
LD E,(HL)
|
LD E,(HL)
|
||||||
@ -704,8 +707,8 @@ StCurs1 LD (CurShiftX),BC
|
|||||||
LD (CurCursor),A
|
LD (CurCursor),A
|
||||||
LD A,CursTimer
|
LD A,CursTimer
|
||||||
LD (CrTimer),A
|
LD (CrTimer),A
|
||||||
SetCr LD L,(IX+0x05)
|
SetCr LD L,(IX + INPUTFORM.SCR_POS_X)
|
||||||
LD H,(IX+0x06)
|
LD H,(IX + INPUTFORM.SCR_POS_X + 1)
|
||||||
LD BC,(CurShiftX)
|
LD BC,(CurShiftX)
|
||||||
ADD HL,BC
|
ADD HL,BC
|
||||||
SRL H
|
SRL H
|
||||||
@ -717,9 +720,9 @@ SetCr LD L,(IX+0x05)
|
|||||||
LD B,A
|
LD B,A
|
||||||
PUSH BC
|
PUSH BC
|
||||||
LD DE,CursBuffer
|
LD DE,CursBuffer
|
||||||
LD C,(IX+0x07)
|
LD C,(IX + INPUTFORM.SCR_POS_Y)
|
||||||
DEC C
|
DEC C
|
||||||
LD A,(IX+0x0B)
|
LD A,(IX + INPUTFORM.COLOR)
|
||||||
AND 0x0F
|
AND 0x0F
|
||||||
LD B,A
|
LD B,A
|
||||||
RLCA
|
RLCA
|
||||||
@ -752,8 +755,8 @@ SetCr LD L,(IX+0x05)
|
|||||||
SETPORT WINSP.CPU1,,0
|
SETPORT WINSP.CPU1,,0
|
||||||
RET
|
RET
|
||||||
|
|
||||||
ResCursor LD L,(IX+0x05)
|
ResCursor LD L,(IX + INPUTFORM.SCR_POS_X)
|
||||||
LD H,(IX+0x06)
|
LD H,(IX + INPUTFORM.SCR_POS_X + 1)
|
||||||
LD BC,(CurShiftX)
|
LD BC,(CurShiftX)
|
||||||
ADD HL,BC
|
ADD HL,BC
|
||||||
SRL H
|
SRL H
|
||||||
@ -765,7 +768,7 @@ ResCursor LD L,(IX+0x05)
|
|||||||
LD B,A
|
LD B,A
|
||||||
PUSH BC
|
PUSH BC
|
||||||
LD DE,CursBuffer
|
LD DE,CursBuffer
|
||||||
LD B,(IX+0x07)
|
LD B,(IX + INPUTFORM.SCR_POS_Y)
|
||||||
DEC B
|
DEC B
|
||||||
LD C,WINSP.Y_PORT
|
LD C,WINSP.Y_PORT
|
||||||
SETPORT WINSP.CPU1,0x50
|
SETPORT WINSP.CPU1,0x50
|
||||||
|
|||||||
123
fnmain.a80
123
fnmain.a80
@ -1,11 +1,5 @@
|
|||||||
|
|
||||||
; LAST UPDATE: 14.08.2025 savelij
|
; LAST UPDATE: 07.09.2025 savelij
|
||||||
|
|
||||||
;[]=======================================================================[]
|
|
||||||
; FLEX NAVIGATOR ;
|
|
||||||
; v1.11 ;
|
|
||||||
; Last edition: 03/02/2000 ;
|
|
||||||
;[]=======================================================================[]
|
|
||||||
|
|
||||||
include fn_const.a80
|
include fn_const.a80
|
||||||
include fn_macros.a80
|
include fn_macros.a80
|
||||||
@ -87,9 +81,9 @@ RAMPAGES
|
|||||||
.RIGHTPANEL DB 0 ; 2 ‘âà ¨æ ª â «®£ <20>à ¢®© ¯ ¥«¨
|
.RIGHTPANEL DB 0 ; 2 ‘âà ¨æ ª â «®£ <20>à ¢®© ¯ ¥«¨
|
||||||
.BuffPg1 DB 0 ; 3
|
.BuffPg1 DB 0 ; 3
|
||||||
.BuffPg2 DB 0 ; 4
|
.BuffPg2 DB 0 ; 4
|
||||||
.BuffPg3 DB 0 ; 5
|
.BuffPg3 DB 0 ; 5 ¨á¯®«ì§ã¥âáï ª®¯¨à®¢é¨ª®¬ ä ©«®¢/¤¨à¥ªâ®à¨©
|
||||||
.BuffPg4 DB 0 ; 6
|
.BuffPg4 DB 0 ; 6 ¨á¯®«ì§ã¥âáï á®àâ¨à®¢ª®©, à ¡®â á ¤¥à¥¢®¬ ¤¨à¥ªâ®à¨©
|
||||||
.BuffPgEnd DB 0xFF
|
.BuffPgEnd DB 0xFF ; ¬ àª¥à ª®æ ᯨ᪠áâà ¨æ
|
||||||
.FILES_COUNT DW 0 ; ª®«¨ç¥á⢮ ¯®¬¥ç¥ëå ä ©«®¢
|
.FILES_COUNT DW 0 ; ª®«¨ç¥á⢮ ¯®¬¥ç¥ëå ä ©«®¢
|
||||||
.FILES_BYTES DB 5 DUP 0 ; à §¬¥à ¯®¬¥ç¥ëå ä ©«®¢ ¢ ¡ ©â å
|
.FILES_BYTES DB 5 DUP 0 ; à §¬¥à ¯®¬¥ç¥ëå ä ©«®¢ ¢ ¡ ©â å
|
||||||
|
|
||||||
@ -260,6 +254,22 @@ SET_DWORD: LD (HL),E
|
|||||||
LD (HL),B
|
LD (HL),B
|
||||||
RET
|
RET
|
||||||
|
|
||||||
|
GET_HANDLE_ADR LD L,(IY+PANEL.FIRST_FILE)
|
||||||
|
LD H,(IY+PANEL.FIRST_FILE + 1)
|
||||||
|
LD E,(IY+PANEL.CURR_FILE)
|
||||||
|
LD D,(IY+PANEL.CURR_FILE + 1)
|
||||||
|
ADD HL,DE
|
||||||
|
ADD HL,HL ; *2
|
||||||
|
ADD HL,HL ; *4
|
||||||
|
ADD HL,HL ; *8
|
||||||
|
LD E,L
|
||||||
|
LD D,H
|
||||||
|
ADD HL,HL ; *16
|
||||||
|
ADD HL,DE ; *18 - FileHDR.SIZE
|
||||||
|
OR H
|
||||||
|
LD H,A
|
||||||
|
RET
|
||||||
|
|
||||||
; ¢ë§®¢ äãªæ¨¨ ¢ áâà ¨æ å
|
; ¢ë§®¢ äãªæ¨¨ ¢ áâà ¨æ å
|
||||||
RESIDENT
|
RESIDENT
|
||||||
; ==============resident 2==============
|
; ==============resident 2==============
|
||||||
@ -277,35 +287,16 @@ RESIDENT
|
|||||||
.DeleteFiles: LD DE,DeleteFilesR
|
.DeleteFiles: LD DE,DeleteFilesR
|
||||||
jr .FunctResident
|
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
|
.Setup: LD DE,SetupR
|
||||||
jr .FunctResident
|
jr .FunctResident
|
||||||
|
|
||||||
.QSearch: LD DE,QSearchR
|
.QSearch: LD DE,QSearchR
|
||||||
jr .FunctResident
|
jr .FunctResident
|
||||||
|
|
||||||
IF TREE_REZID
|
IF MARK_DIR
|
||||||
.TestTree LD DE,TestTreeR
|
; áç¨â «ª ᮤ¥à¦¨¬®£® ¤¨à¥ªâ®à¨¨ ¢ ¡ ©â å
|
||||||
jr .FunctResident
|
.CalcDirSize LD DE,CalcDirSizeR
|
||||||
|
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
|
ENDIF
|
||||||
; ==============resident 2==============
|
; ==============resident 2==============
|
||||||
|
|
||||||
@ -315,24 +306,6 @@ RESIDENT
|
|||||||
LD C,WINSP.CPU1
|
LD C,WINSP.CPU1
|
||||||
JP Resident
|
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
|
.UnMarkGroup: LD DE,UnMarkGroupR
|
||||||
jr .HelpResident
|
jr .HelpResident
|
||||||
|
|
||||||
@ -387,6 +360,14 @@ RESIDENT
|
|||||||
|
|
||||||
.SystemInfo: LD DE,SystemInfoR
|
.SystemInfo: LD DE,SystemInfoR
|
||||||
jr .HelpResident
|
jr .HelpResident
|
||||||
|
|
||||||
|
.Quit: CALL ResInvert
|
||||||
|
.QuitL1 LD DE,QuitConfirmWin
|
||||||
|
CALL .HelpResident
|
||||||
|
JP C,SetInvert
|
||||||
|
LD HL,ComExit
|
||||||
|
EX (SP),HL
|
||||||
|
RET
|
||||||
; ==============resident 3==============
|
; ==============resident 3==============
|
||||||
|
|
||||||
; ‚ë室
|
; ‚ë室
|
||||||
@ -427,11 +408,7 @@ MainLoop: LD IX,MAINTAB.FilePanelLeft
|
|||||||
CALL C,DOSline
|
CALL C,DOSline
|
||||||
LD A,(TreeFlag)
|
LD A,(TreeFlag)
|
||||||
OR A
|
OR A
|
||||||
IF TREE_REZID
|
|
||||||
CALL NZ,RESIDENT.TestTree
|
|
||||||
ELSE
|
|
||||||
CALL NZ,TestTreeR
|
CALL NZ,TestTreeR
|
||||||
ENDIF
|
|
||||||
JR MainLoop
|
JR MainLoop
|
||||||
|
|
||||||
TestKeys
|
TestKeys
|
||||||
@ -488,11 +465,9 @@ MouseOnOff LD A,(MouseFlag)
|
|||||||
START_SORT
|
START_SORT
|
||||||
include fnsort.a80
|
include fnsort.a80
|
||||||
END_SORT
|
END_SORT
|
||||||
IF TREE_REZID = 0
|
|
||||||
START_TREE
|
START_TREE
|
||||||
include fntree.a80
|
include fntree.a80
|
||||||
END_TREE
|
END_TREE
|
||||||
ENDIF
|
|
||||||
include fnpanel.a80
|
include fnpanel.a80
|
||||||
include fndos.a80
|
include fndos.a80
|
||||||
|
|
||||||
@ -507,14 +482,21 @@ END_BLOCK_1:
|
|||||||
; ==============resident 2==============
|
; ==============resident 2==============
|
||||||
PHASE 0x4000
|
PHASE 0x4000
|
||||||
START_BLOCK_2
|
START_BLOCK_2
|
||||||
|
; ¡ãä¥à çâ®¡ë ¯ ¬ïâì ¥ § ¨¬ «¨ ¢ EXE ä ©«¥
|
||||||
|
REZ2_BUFFERS
|
||||||
|
_INIT_VAR BUF_REZ2.FlexDIRECTORY
|
||||||
|
_MINUSVAR .OLDLEFTPANEL, 0x100 ; ⥪ã騩 ¯ãâì «¥¢®© ¯ ¥«¨
|
||||||
|
_MINUSVAR .OLDRIGHTPANEL, 0x100 ; ⥪ã騩 ¯ãâì ¯à ¢®© ¯ ¥«¨
|
||||||
|
_MINUSVAR .FINDCURRPATH, 0x100 ; ¢à¥¬¥®© ⥪ã騩 ¯ãâì ¨áâ®ç¨ª
|
||||||
|
_MINUSVAR .FINDBUF, 0x100 ; ¢à¥¬¥ë© ¡ãä¥à ¯®¨áª
|
||||||
|
_MINUSVAR .ENDPATHSRC, WORD ; ¤à¥á 墮áâ ¯ã⨠¨áâ®ç¨ª
|
||||||
|
_MINUSVAR .CURR_DIRNAME, WORD ; ⥪ã騩 ¤à¥á ¢ ¯ãâ¨
|
||||||
|
|
||||||
include rez2_fnfunct.a80
|
include rez2_fnfunct.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_fntab.a80
|
include rez2_fntab.a80
|
||||||
IF TREE_REZID
|
|
||||||
include fntree.a80
|
|
||||||
ENDIF
|
|
||||||
END_BLOCK_2:
|
END_BLOCK_2:
|
||||||
DEPHASE ; 0x4000
|
DEPHASE ; 0x4000
|
||||||
; ==============resident 2==============
|
; ==============resident 2==============
|
||||||
@ -523,7 +505,6 @@ END_BLOCK_2:
|
|||||||
PHASE 0xC000
|
PHASE 0xC000
|
||||||
; MAIN.FNFONT
|
; MAIN.FNFONT
|
||||||
START_BLOCK_4
|
START_BLOCK_4
|
||||||
|
|
||||||
FONT_RAW_PACK binclude tmp/font_raw.pack
|
FONT_RAW_PACK binclude tmp/font_raw.pack
|
||||||
IFFFONT_RAW_PACK binclude tmp/iff_font_raw.pack
|
IFFFONT_RAW_PACK binclude tmp/iff_font_raw.pack
|
||||||
IFFFONT_RAW_END
|
IFFFONT_RAW_END
|
||||||
@ -536,13 +517,8 @@ END_BLOCK_4:
|
|||||||
PHASE 0x4000
|
PHASE 0x4000
|
||||||
; MAIN.FNREZ3
|
; MAIN.FNREZ3
|
||||||
START_BLOCK_3
|
START_BLOCK_3
|
||||||
include rez3_fnnext.a80
|
|
||||||
include rez3_fnmark.a80
|
|
||||||
include rez3_fnmisc.a80
|
|
||||||
include rez3_fntab.a80
|
|
||||||
|
|
||||||
; ¡ãä¥à çâ®¡ë ¯ ¬ïâì ¥ § ¨¬ «¨ ¢ EXE ä ©«¥
|
; ¡ãä¥à çâ®¡ë ¯ ¬ïâì ¥ § ¨¬ «¨ ¢ EXE ä ©«¥
|
||||||
BUFFERS
|
REZ3_BUFFERS
|
||||||
_INIT_VAR 0x8000 ; á ª®æ áâà ¨æë
|
_INIT_VAR 0x8000 ; á ª®æ áâà ¨æë
|
||||||
_MINUSVAR .DOShistory, 0x200 ;times 0x200 db 0
|
_MINUSVAR .DOShistory, 0x200 ;times 0x200 db 0
|
||||||
|
|
||||||
@ -550,19 +526,14 @@ BUFFERS
|
|||||||
_MINUSVAR .fnview_ext, WorkBuffer_Size ;times 0x400 db 0
|
_MINUSVAR .fnview_ext, WorkBuffer_Size ;times 0x400 db 0
|
||||||
_MINUSVAR .fn_ext, WorkBuffer_Size ;times 0x400 db 0
|
_MINUSVAR .fn_ext, WorkBuffer_Size ;times 0x400 db 0
|
||||||
|
|
||||||
_MINUSVAR .OLDPATH, 0x100 ; á®åà ¥ë© â¥ªã騩 ¯ãâì
|
include rez3_fnnext.a80
|
||||||
_MINUSVAR .CURRPATHSRC, 0x100 ; ¢à¥¬¥®© ⥪ã騩 ¯ãâì ¨áâ®ç¨ª
|
include rez3_fnmark.a80
|
||||||
_MINUSVAR .CURRPATHDST, 0x100 ; ¢à¥¬¥®© ⥪ã騩 ¯ãâì ¯à¨¥¬¨ª
|
include rez3_fnmisc.a80
|
||||||
_MINUSVAR .FINDBUF, 0x100 ; ¢à¥¬¥ë© ¡ãä¥à ¯®¨áª
|
include rez3_fntab.a80
|
||||||
_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==============
|
; ==============resident 3==============
|
||||||
|
|
||||||
; ç¨áâ® ¤«ï ®â« ¤ª¨
|
|
||||||
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
|
||||||
|
|||||||
77
fnpanel.a80
77
fnpanel.a80
@ -1,5 +1,5 @@
|
|||||||
|
|
||||||
; LAST UPDATE: 01.08.2025 savelij
|
; LAST UPDATE: 07.09.2025 savelij
|
||||||
|
|
||||||
;[]----------------------------------------------------------[]
|
;[]----------------------------------------------------------[]
|
||||||
PrintDisks LD L,(IY + PANEL.X)
|
PrintDisks LD L,(IY + PANEL.X)
|
||||||
@ -164,19 +164,21 @@ PrnFileInfo BIT VIEWFLAG.B_TREE,(IY + PANEL.VIEWFLAG)
|
|||||||
LD A,(RAMPAGES.RIGHTPANEL)
|
LD A,(RAMPAGES.RIGHTPANEL)
|
||||||
.L1
|
.L1
|
||||||
SETPORT WINSP.CPU1,,0
|
SETPORT WINSP.CPU1,,0
|
||||||
LD L,(IY + PANEL.FIRST_FILE)
|
; LD L,(IY + PANEL.FIRST_FILE)
|
||||||
LD H,(IY + PANEL.FIRST_FILE + 1)
|
; LD H,(IY + PANEL.FIRST_FILE + 1)
|
||||||
LD E,(IY + PANEL.CURR_FILE)
|
; LD E,(IY + PANEL.CURR_FILE)
|
||||||
LD D,(IY + PANEL.CURR_FILE + 1)
|
; LD D,(IY + PANEL.CURR_FILE + 1)
|
||||||
ADD HL,DE
|
; ADD HL,DE
|
||||||
ADD HL,HL ; *2
|
; ADD HL,HL ; *2
|
||||||
ADD HL,HL ; *4
|
; ADD HL,HL ; *4
|
||||||
ADD HL,HL ; *8
|
; ADD HL,HL ; *8
|
||||||
LD E,L
|
; LD E,L
|
||||||
LD D,H
|
; LD D,H
|
||||||
ADD HL,HL ; *10
|
; ADD HL,HL ; *10
|
||||||
ADD HL,DE ; *18
|
; ADD HL,DE ; *18
|
||||||
SET 6,H ; | 0x4000
|
; SET 6,H ; | 0x4000
|
||||||
|
LD A,HIGH (CPU1)
|
||||||
|
CALL GET_HANDLE_ADR
|
||||||
LD DE,WorkBuffer
|
LD DE,WorkBuffer
|
||||||
LD BC,FileHDR.SIZE
|
LD BC,FileHDR.SIZE
|
||||||
CALL MoveBytesInc
|
CALL MoveBytesInc
|
||||||
@ -314,12 +316,7 @@ Get8Bit LD B,'0' - 1
|
|||||||
INC HL
|
INC HL
|
||||||
RET
|
RET
|
||||||
|
|
||||||
PrnTreeInfo
|
PrnTreeInfo CALL MakeTreePathR
|
||||||
IF TREE_REZID
|
|
||||||
CALL RESIDENT.MakeTreePath
|
|
||||||
ELSE
|
|
||||||
CALL MakeTreePathR
|
|
||||||
ENDIF
|
|
||||||
EX DE,HL
|
EX DE,HL
|
||||||
PUSH IY
|
PUSH IY
|
||||||
POP HL
|
POP HL
|
||||||
@ -432,8 +429,8 @@ PrnDIRECT BIT VIEWFLAG.B_FULL,(IY+PANEL.VIEWFLAG)
|
|||||||
LD A,(RAMPAGES.RIGHTPANEL)
|
LD A,(RAMPAGES.RIGHTPANEL)
|
||||||
.L1
|
.L1
|
||||||
SETPORT WINSP.CPU1,,0
|
SETPORT WINSP.CPU1,,0
|
||||||
LD L,(IY+PANEL.FIRST_FILE)
|
LD L,(IY + PANEL.FIRST_FILE)
|
||||||
LD H,(IY+PANEL.FIRST_FILE + 1)
|
LD H,(IY + PANEL.FIRST_FILE + 1)
|
||||||
ADD HL,HL ; *2
|
ADD HL,HL ; *2
|
||||||
ADD HL,HL ; *4
|
ADD HL,HL ; *4
|
||||||
ADD HL,HL ; *8
|
ADD HL,HL ; *8
|
||||||
@ -526,8 +523,8 @@ PrintFULL PUSH IY
|
|||||||
LD A,(RAMPAGES.RIGHTPANEL)
|
LD A,(RAMPAGES.RIGHTPANEL)
|
||||||
.L1
|
.L1
|
||||||
SETPORT WINSP.CPU1,,0
|
SETPORT WINSP.CPU1,,0
|
||||||
LD L,(IY+PANEL.FIRST_FILE)
|
LD L,(IY + PANEL.FIRST_FILE)
|
||||||
LD H,(IY+PANEL.FIRST_FILE + 1)
|
LD H,(IY + PANEL.FIRST_FILE + 1)
|
||||||
ADD HL,HL ; *2
|
ADD HL,HL ; *2
|
||||||
ADD HL,HL ; *4
|
ADD HL,HL ; *4
|
||||||
ADD HL,HL ; *8
|
ADD HL,HL ; *8
|
||||||
@ -664,8 +661,8 @@ PrintTREE
|
|||||||
DJNZ .L2
|
DJNZ .L2
|
||||||
POP DE
|
POP DE
|
||||||
LD HL,0x4000
|
LD HL,0x4000
|
||||||
LD C,(IY+PANEL.FIRST_FILE)
|
LD C,(IY + PANEL.FIRST_FILE)
|
||||||
LD B,(IY+PANEL.FIRST_FILE + 1)
|
LD B,(IY + PANEL.FIRST_FILE + 1)
|
||||||
LD A,B
|
LD A,B
|
||||||
OR C
|
OR C
|
||||||
JR Z,.PrDIRb2
|
JR Z,.PrDIRb2
|
||||||
@ -1083,19 +1080,21 @@ PrnInvert LD A,(IY + PANEL.FILES_ALL)
|
|||||||
LD A,(RAMPAGES.RIGHTPANEL)
|
LD A,(RAMPAGES.RIGHTPANEL)
|
||||||
.L1
|
.L1
|
||||||
SETPORT WINSP.CPU1,,0
|
SETPORT WINSP.CPU1,,0
|
||||||
LD L,(IY + PANEL.FIRST_FILE)
|
; LD L,(IY + PANEL.FIRST_FILE)
|
||||||
LD H,(IY + PANEL.FIRST_FILE + 1)
|
; LD H,(IY + PANEL.FIRST_FILE + 1)
|
||||||
LD E,(IY + PANEL.CURR_FILE)
|
; LD E,(IY + PANEL.CURR_FILE)
|
||||||
LD D,(IY + PANEL.CURR_FILE + 1)
|
; LD D,(IY + PANEL.CURR_FILE + 1)
|
||||||
ADD HL,DE
|
; ADD HL,DE
|
||||||
ADD HL,HL ; *2
|
; ADD HL,HL ; *2
|
||||||
ADD HL,HL ; *4
|
; ADD HL,HL ; *4
|
||||||
ADD HL,HL ; *8
|
; ADD HL,HL ; *8
|
||||||
LD E,L
|
; LD E,L
|
||||||
LD D,H
|
; LD D,H
|
||||||
ADD HL,HL ; *10
|
; ADD HL,HL ; *10
|
||||||
ADD HL,DE ; *18
|
; ADD HL,DE ; *18
|
||||||
SET 6,H ; | 0xC000
|
; SET 6,H ; | 0xC000
|
||||||
|
LD A,HIGH (CPU1)
|
||||||
|
CALL GET_HANDLE_ADR
|
||||||
LD E,(HL)
|
LD E,(HL)
|
||||||
POP AF
|
POP AF
|
||||||
SETPORT WINSP.CPU1,,0
|
SETPORT WINSP.CPU1,,0
|
||||||
|
|||||||
64
fnsort.a80
64
fnsort.a80
@ -1,29 +1,49 @@
|
|||||||
|
|
||||||
; LAST UPDATE: 03.08.2025 savelij
|
; LAST UPDATE: 07.09.2025 savelij
|
||||||
|
|
||||||
;[]----------------------------------------------------------[]
|
;[]----------------------------------------------------------[]
|
||||||
ReadDIR BIT VIEWFLAG.B_TREE,(IY+PANEL.VIEWFLAG)
|
; <20> ¢å®¤¥:
|
||||||
IF TREE_REZID
|
; A - ®¬¥à áâà ¨æë ¤«ï à ¡®âë ¥á«¨ ¡¨â PANELFLAG.B_DIRPAGE ãáâ ®¢«¥
|
||||||
JP NZ,RESIDENT.ReadTree
|
; ¨ ç¥ ¥ âॡã¥âáï
|
||||||
ELSE
|
ReadDIR BIT PANELFLAG.B_DIRPAGE,(IY + PANEL.PANELFLAG)
|
||||||
|
JR NZ,.RD1
|
||||||
|
.RD2 BIT PANELFLAG.B_SIDE,(IY + PANEL.PANELFLAG)
|
||||||
|
LD A,(RAMPAGES.LEFTPANEL)
|
||||||
|
JR Z,.RD1
|
||||||
|
LD A,(RAMPAGES.RIGHTPANEL)
|
||||||
|
.RD1 LD (.DIRPAGE),A
|
||||||
|
BIT VIEWFLAG.B_TREE,(IY + PANEL.VIEWFLAG)
|
||||||
JP NZ,ReadTreeR
|
JP NZ,ReadTreeR
|
||||||
ENDIF
|
|
||||||
GETPORT WINSP.CPU3
|
GETPORT WINSP.CPU3
|
||||||
PUSH AF
|
PUSH AF
|
||||||
BIT PANELFLAG.B_SIDE,(IY+PANEL.PANELFLAG)
|
LD A,(IY + PANEL.SORTFLAG)
|
||||||
LD A,(RAMPAGES.LEFTPANEL)
|
AND SORTFLAG.MASK
|
||||||
JR Z,.L1
|
JR Z,.L6
|
||||||
LD A,(RAMPAGES.RIGHTPANEL)
|
; á á®àâ¨à®¢ª®© £à㧨¬ ¢ ᢮¡®¤ãî ¯ £ã
|
||||||
|
LD A,(RAMPAGES.BuffPg4)
|
||||||
|
JR .L1
|
||||||
|
|
||||||
|
; ¡¥§ á®àâ¨à®¢ª¨ £à㧨¬ ¢ áâà ¨æã ¯ ¥«¨
|
||||||
|
.L6 LD A,0
|
||||||
|
.DIRPAGE EQU $-1
|
||||||
.L1
|
.L1
|
||||||
SETPORT WINSP.CPU3,,0
|
SETPORT WINSP.CPU3,,0
|
||||||
PUSH IY
|
PUSH IY
|
||||||
POP HL
|
POP HL
|
||||||
|
LD D,H
|
||||||
|
LD E,L
|
||||||
|
LD BC,PANEL.FILE_MASK
|
||||||
|
ADD HL,BC
|
||||||
|
BIT PANELFLAG.B_DIRPAGE,(IY + PANEL.PANELFLAG)
|
||||||
|
JR NZ,.L8
|
||||||
|
EX DE,HL
|
||||||
LD BC,PANEL.FILES_ALL
|
LD BC,PANEL.FILES_ALL
|
||||||
ADD HL,BC
|
ADD HL,BC
|
||||||
LD B,PANEL.FILE_MASK - PANEL.FILES_ALL
|
LD B,PANEL.FILE_MASK - PANEL.FILES_ALL
|
||||||
.L5 LD (HL),0
|
.L5 LD (HL),0
|
||||||
INC HL
|
INC HL
|
||||||
DJNZ .L5
|
DJNZ .L5
|
||||||
|
.L8 RES PANELFLAG.B_DIRPAGE,(IY + PANEL.PANELFLAG)
|
||||||
BIT SORTFLAG.B_FILTER,(IY + PANEL.SORTFLAG)
|
BIT SORTFLAG.B_FILTER,(IY + PANEL.SORTFLAG)
|
||||||
JR NZ,.L2
|
JR NZ,.L2
|
||||||
LD HL,NORMmask
|
LD HL,NORMmask
|
||||||
@ -108,8 +128,8 @@ FindFILESm LD HL,NORMmask
|
|||||||
POP IX
|
POP IX
|
||||||
POP IY
|
POP IY
|
||||||
RET C
|
RET C
|
||||||
FFILEm1 LD A,(WorkBuffer + FFIRST.Attr);+0x20)
|
FFILEm1 LD A,(WorkBuffer + FFIRST.Attr)
|
||||||
AND DIR.M_Dir;0x10
|
AND DIR.M_Dir
|
||||||
CALL NZ,InsFileInfo
|
CALL NZ,InsFileInfo
|
||||||
RET C
|
RET C
|
||||||
LD DE,WorkBuffer
|
LD DE,WorkBuffer
|
||||||
@ -160,7 +180,7 @@ InsFileInfo EX DE,HL
|
|||||||
LD (DE),A
|
LD (DE),A
|
||||||
INC DE
|
INC DE
|
||||||
PUSH HL
|
PUSH HL
|
||||||
LD BC,FFIRST.Attr;0x20
|
LD BC,FFIRST.Attr
|
||||||
ADD HL,BC
|
ADD HL,BC
|
||||||
LD B,(HL) ; FFIRST.Attr
|
LD B,(HL) ; FFIRST.Attr
|
||||||
INC HL
|
INC HL
|
||||||
@ -384,14 +404,10 @@ SortDIR
|
|||||||
GETPORT WINSP.CPU3
|
GETPORT WINSP.CPU3
|
||||||
LD B,A
|
LD B,A
|
||||||
PUSH BC
|
PUSH BC
|
||||||
BIT PANELFLAG.B_SIDE,(IY + PANEL.PANELFLAG)
|
LD A,(ReadDIR.DIRPAGE)
|
||||||
LD A,(RAMPAGES.LEFTPANEL)
|
|
||||||
JR Z,.L1
|
|
||||||
LD A,(RAMPAGES.RIGHTPANEL)
|
|
||||||
.L1
|
|
||||||
SETPORT WINSP.CPU1,,0
|
|
||||||
LD A,(RAMPAGES.BuffPg4)
|
|
||||||
SETPORT WINSP.CPU3,,0
|
SETPORT WINSP.CPU3,,0
|
||||||
|
LD A,(RAMPAGES.BuffPg4)
|
||||||
|
SETPORT WINSP.CPU1,,0
|
||||||
LD HL,CPU3
|
LD HL,CPU3
|
||||||
LD (EndSort),HL
|
LD (EndSort),HL
|
||||||
SUB A
|
SUB A
|
||||||
@ -485,14 +501,6 @@ SortDIR
|
|||||||
.L3 LD (HL),A
|
.L3 LD (HL),A
|
||||||
INC HL
|
INC HL
|
||||||
DJNZ .L3
|
DJNZ .L3
|
||||||
GETPORT WINSP.CPU1
|
|
||||||
LD (RAMPAGES.BuffPg4),A
|
|
||||||
GETPORT WINSP.CPU3
|
|
||||||
BIT PANELFLAG.B_SIDE,(IY + PANEL.PANELFLAG)
|
|
||||||
LD HL,RAMPAGES.LEFTPANEL
|
|
||||||
JR Z,.L2
|
|
||||||
LD HL,RAMPAGES.RIGHTPANEL
|
|
||||||
.L2 LD (HL),A
|
|
||||||
POP BC
|
POP BC
|
||||||
LD A,B
|
LD A,B
|
||||||
SETPORT WINSP.CPU3,,0
|
SETPORT WINSP.CPU3,,0
|
||||||
|
|||||||
12
fntab.a80
12
fntab.a80
@ -1,5 +1,5 @@
|
|||||||
|
|
||||||
; LAST UPDATE: 14.08.2025 savelij
|
; LAST UPDATE: 24.08.2025 savelij
|
||||||
|
|
||||||
;[]==========================================================[]
|
;[]==========================================================[]
|
||||||
; ”®à¬ â â ¡«¨æë
|
; ”®à¬ â â ¡«¨æë
|
||||||
@ -143,11 +143,11 @@ MAINTAB
|
|||||||
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 ; Mark group +
|
||||||
DW 44,196, 43, 57,%0000000100100100,0,RESIDENT.UnMarkGroupN,0
|
DW 44,196, 43, 57,%0000000100100100,0,RESIDENT.UnMarkGroupN,0 ; Unmark group -
|
||||||
DW 44,196, 57, 71,%0000000100100100,0,RESIDENT.SelectAllN,0
|
DW 44,196, 57, 71,%0000000100100100,0,RESIDENT.SelectAllN,0 ; Mark all CTRL+
|
||||||
DW 44,196, 71, 85,%0000000100100100,0,RESIDENT.UnSelectAllN,0
|
DW 44,196, 71, 85,%0000000100100100,0,RESIDENT.UnSelectAllN,0 ; Unmark all CTRL-
|
||||||
DW 44,196, 85, 99,%0000000100100100,0,RESIDENT.InvertSelectN,0
|
DW 44,196, 85, 99,%0000000100100100,0,RESIDENT.InvertSelectN,0 ; Invert selection *
|
||||||
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,%0000000100101000,0,MenuExit,0
|
DW 40, 84, 15, 26,%0000000100101000,0,MenuExit,0
|
||||||
DW 84,138, 15, 26,%0000000010010000,MenuOption.L2,0,0
|
DW 84,138, 15, 26,%0000000010010000,MenuOption.L2,0,0
|
||||||
|
|||||||
118
fnwork.a80
118
fnwork.a80
@ -1,5 +1,5 @@
|
|||||||
|
|
||||||
; LAST UPDATE: 14.08.2025 savelij
|
; LAST UPDATE: 07.09.2025 savelij
|
||||||
|
|
||||||
;[]===========================================================[]
|
;[]===========================================================[]
|
||||||
CursUp LD A,(IY + PANEL.FILES_ALL)
|
CursUp LD A,(IY + PANEL.FILES_ALL)
|
||||||
@ -1036,11 +1036,7 @@ NewFile1 LD HL,0x003F
|
|||||||
|
|
||||||
;[]==========================================================[]
|
;[]==========================================================[]
|
||||||
OpenFile BIT VIEWFLAG.B_TREE,(IY+PANEL.VIEWFLAG)
|
OpenFile BIT VIEWFLAG.B_TREE,(IY+PANEL.VIEWFLAG)
|
||||||
IF TREE_REZID
|
|
||||||
JP NZ,RESIDENT.TestTreeBeg
|
|
||||||
ELSE
|
|
||||||
JP NZ,TestTreeR.TestTreeBeg
|
JP NZ,TestTreeR.TestTreeBeg
|
||||||
ENDIF
|
|
||||||
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
|
||||||
@ -1052,19 +1048,21 @@ OpenFile BIT VIEWFLAG.B_TREE,(IY+PANEL.VIEWFLAG)
|
|||||||
LD A,(RAMPAGES.RIGHTPANEL)
|
LD A,(RAMPAGES.RIGHTPANEL)
|
||||||
.L1
|
.L1
|
||||||
SETPORT WINSP.CPU1,,0
|
SETPORT WINSP.CPU1,,0
|
||||||
LD L,(IY+PANEL.FIRST_FILE)
|
; LD L,(IY + PANEL.FIRST_FILE)
|
||||||
LD H,(IY+PANEL.FIRST_FILE + 1)
|
; LD H,(IY + PANEL.FIRST_FILE + 1)
|
||||||
LD E,(IY+PANEL.CURR_FILE)
|
; LD E,(IY + PANEL.CURR_FILE)
|
||||||
LD D,(IY+PANEL.CURR_FILE + 1)
|
; LD D,(IY + PANEL.CURR_FILE + 1)
|
||||||
ADD HL,DE
|
; ADD HL,DE
|
||||||
ADD HL,HL ; *2
|
; ADD HL,HL ; *2
|
||||||
ADD HL,HL ; *4
|
; ADD HL,HL ; *4
|
||||||
ADD HL,HL ; *8
|
; ADD HL,HL ; *8
|
||||||
LD E,L
|
; LD E,L
|
||||||
LD D,H
|
; LD D,H
|
||||||
ADD HL,HL ; *10
|
; ADD HL,HL ; *10
|
||||||
ADD HL,DE ; *18
|
; ADD HL,DE ; *18
|
||||||
SET 6,H ; | 0x4000
|
; SET 6,H ; | 0x4000
|
||||||
|
LD A,HIGH (CPU1)
|
||||||
|
CALL GET_HANDLE_ADR
|
||||||
LD DE,WorkBuffer
|
LD DE,WorkBuffer
|
||||||
LD BC,FileHDR.Attr
|
LD BC,FileHDR.Attr
|
||||||
PUSH HL
|
PUSH HL
|
||||||
@ -1080,8 +1078,9 @@ OpenFile BIT VIEWFLAG.B_TREE,(IY+PANEL.VIEWFLAG)
|
|||||||
INC HL
|
INC HL
|
||||||
JP Z,RunEXEfile
|
JP Z,RunEXEfile
|
||||||
LD A,(HL)
|
LD A,(HL)
|
||||||
CP '.'
|
CP '.' ; ¢ë室 ¨§ ¤¨à¥ªâ®à¨¨ ¢¢¥àå?
|
||||||
JR NZ,OpenF2
|
JR NZ,EnterDIR
|
||||||
|
; ¢ë室 ¨§ ¤¨à¥ªâ®à¨¨ ¢¢¥àå
|
||||||
PUSH HL
|
PUSH HL
|
||||||
PUSH IY
|
PUSH IY
|
||||||
POP HL
|
POP HL
|
||||||
@ -1094,7 +1093,7 @@ OpenFile BIT VIEWFLAG.B_TREE,(IY+PANEL.VIEWFLAG)
|
|||||||
LD A,'\\'
|
LD A,'\\'
|
||||||
DEC HL
|
DEC HL
|
||||||
CP (HL)
|
CP (HL)
|
||||||
JR Z,OpenF1
|
JR Z,.L5
|
||||||
.L3 DEC HL
|
.L3 DEC HL
|
||||||
CP (HL)
|
CP (HL)
|
||||||
JR NZ,.L3
|
JR NZ,.L3
|
||||||
@ -1106,8 +1105,9 @@ OpenFile BIT VIEWFLAG.B_TREE,(IY+PANEL.VIEWFLAG)
|
|||||||
JR NZ,.L4
|
JR NZ,.L4
|
||||||
LD (DE),A
|
LD (DE),A
|
||||||
LD A,'.'
|
LD A,'.'
|
||||||
OpenF1 POP HL
|
.L5 POP HL
|
||||||
OpenF2 PUSH AF
|
; ¢å®¤ ¢ ¤¨à¥ªâ®à¨î
|
||||||
|
EnterDIR PUSH AF
|
||||||
PUSH HL
|
PUSH HL
|
||||||
CALL ResInvert
|
CALL ResInvert
|
||||||
POP HL
|
POP HL
|
||||||
@ -1131,7 +1131,7 @@ OpenF2 PUSH AF
|
|||||||
SPDSS DSSF.CURDIR
|
SPDSS DSSF.CURDIR
|
||||||
POP IY
|
POP IY
|
||||||
CALL PrintPath
|
CALL PrintPath
|
||||||
BIT PANELFLAG.B_PRNDOSPATH,(IY+PANEL.PANELFLAG)
|
BIT PANELFLAG.B_PRNDOSPATH,(IY + PANEL.PANELFLAG)
|
||||||
CALL NZ,PrintDOSPath
|
CALL NZ,PrintDOSPath
|
||||||
POP AF
|
POP AF
|
||||||
CP '.'
|
CP '.'
|
||||||
@ -1144,7 +1144,7 @@ OpenF2 PUSH AF
|
|||||||
LD DE,PANEL.BAR_X
|
LD DE,PANEL.BAR_X
|
||||||
ADD IX,DE
|
ADD IX,DE
|
||||||
CALL InitScrollBar
|
CALL InitScrollBar
|
||||||
LD A,(IY+PANEL.VIEWFLAG)
|
LD A,(IY + PANEL.VIEWFLAG)
|
||||||
AND VIEWFLAG.MASK
|
AND VIEWFLAG.MASK
|
||||||
PUSH AF
|
PUSH AF
|
||||||
CALL Z,DrawHScrollBar
|
CALL Z,DrawHScrollBar
|
||||||
@ -1155,7 +1155,7 @@ OpenF2 PUSH AF
|
|||||||
OR A
|
OR A
|
||||||
JP Z,WaitUnpressMouse
|
JP Z,WaitUnpressMouse
|
||||||
PUSH IY
|
PUSH IY
|
||||||
BIT PANELFLAG.B_SIDE,(IY+PANEL.PANELFLAG)
|
BIT PANELFLAG.B_SIDE,(IY + PANEL.PANELFLAG)
|
||||||
LD IY,LeftPanel
|
LD IY,LeftPanel
|
||||||
LD HL,RightPanel
|
LD HL,RightPanel
|
||||||
JR NZ,.L5
|
JR NZ,.L5
|
||||||
@ -1165,11 +1165,7 @@ OpenF2 PUSH AF
|
|||||||
ADD HL,DE
|
ADD HL,DE
|
||||||
INC HL
|
INC HL
|
||||||
INC HL
|
INC HL
|
||||||
IF TREE_REZID
|
|
||||||
CALL RESIDENT.FindTreeDIR
|
|
||||||
ELSE
|
|
||||||
CALL FindTreeDIRR
|
CALL FindTreeDIRR
|
||||||
ENDIF
|
|
||||||
CALL PrintDIR
|
CALL PrintDIR
|
||||||
CALL PrnFileInfo
|
CALL PrnFileInfo
|
||||||
PUSH IY
|
PUSH IY
|
||||||
@ -1356,7 +1352,7 @@ ShowDSexit
|
|||||||
JP WaitUnpressMouse
|
JP WaitUnpressMouse
|
||||||
|
|
||||||
;[]==========================================================[]
|
;[]==========================================================[]
|
||||||
RunEXEfile: LD IX,BUFFERS.fn_ext
|
RunEXEfile: LD IX,REZ3_BUFFERS.fn_ext
|
||||||
LD DE,PrevFile
|
LD DE,PrevFile
|
||||||
PUSH DE
|
PUSH DE
|
||||||
SUB A
|
SUB A
|
||||||
@ -1952,19 +1948,21 @@ StViewFile: LD A,0x01
|
|||||||
LD A,(RAMPAGES.RIGHTPANEL)
|
LD A,(RAMPAGES.RIGHTPANEL)
|
||||||
.L2
|
.L2
|
||||||
SETPORT WINSP.CPU1,,0
|
SETPORT WINSP.CPU1,,0
|
||||||
LD L,(IY+PANEL.FIRST_FILE)
|
; LD L,(IY+PANEL.FIRST_FILE)
|
||||||
LD H,(IY+PANEL.FIRST_FILE + 1)
|
; LD H,(IY+PANEL.FIRST_FILE + 1)
|
||||||
LD E,(IY+PANEL.CURR_FILE)
|
; LD E,(IY+PANEL.CURR_FILE)
|
||||||
LD D,(IY+PANEL.CURR_FILE + 1)
|
; LD D,(IY+PANEL.CURR_FILE + 1)
|
||||||
ADD HL,DE
|
; ADD HL,DE
|
||||||
ADD HL,HL ; *2
|
; ADD HL,HL ; *2
|
||||||
ADD HL,HL ; *4
|
; ADD HL,HL ; *4
|
||||||
ADD HL,HL ; *8
|
; ADD HL,HL ; *8
|
||||||
LD E,L
|
; LD E,L
|
||||||
LD D,H
|
; LD D,H
|
||||||
ADD HL,HL ; *10
|
; ADD HL,HL ; *10
|
||||||
ADD HL,DE ; *18
|
; ADD HL,DE ; *18
|
||||||
SET 6,H ; | 0x4000
|
; SET 6,H ; | 0x4000
|
||||||
|
LD A,HIGH (CPU1)
|
||||||
|
CALL GET_HANDLE_ADR
|
||||||
LD DE,WorkBuffer
|
LD DE,WorkBuffer
|
||||||
LD BC,FileHDR.Attr
|
LD BC,FileHDR.Attr
|
||||||
PUSH HL
|
PUSH HL
|
||||||
@ -1989,7 +1987,7 @@ StViewFile: LD A,0x01
|
|||||||
VFlag: EQU $-1
|
VFlag: EQU $-1
|
||||||
OR A
|
OR A
|
||||||
JR NZ,View1
|
JR NZ,View1
|
||||||
View: LD IX,BUFFERS.fnview_ext
|
View: LD IX,REZ3_BUFFERS.fnview_ext
|
||||||
LD DE,PrevFile
|
LD DE,PrevFile
|
||||||
CALL TestEXT
|
CALL TestEXT
|
||||||
RET NC
|
RET NC
|
||||||
@ -2112,19 +2110,21 @@ StEditFile: LD A,0x01
|
|||||||
LD A,(RAMPAGES.RIGHTPANEL)
|
LD A,(RAMPAGES.RIGHTPANEL)
|
||||||
.L2
|
.L2
|
||||||
SETPORT WINSP.CPU1,,0
|
SETPORT WINSP.CPU1,,0
|
||||||
LD L,(IY+PANEL.FIRST_FILE)
|
; LD L,(IY+PANEL.FIRST_FILE)
|
||||||
LD H,(IY+PANEL.FIRST_FILE + 1)
|
; LD H,(IY+PANEL.FIRST_FILE + 1)
|
||||||
LD E,(IY+PANEL.CURR_FILE)
|
; LD E,(IY+PANEL.CURR_FILE)
|
||||||
LD D,(IY+PANEL.CURR_FILE + 1)
|
; LD D,(IY+PANEL.CURR_FILE + 1)
|
||||||
ADD HL,DE
|
; ADD HL,DE
|
||||||
ADD HL,HL ; *2
|
; ADD HL,HL ; *2
|
||||||
ADD HL,HL ; *4
|
; ADD HL,HL ; *4
|
||||||
ADD HL,HL ; *8
|
; ADD HL,HL ; *8
|
||||||
LD E,L
|
; LD E,L
|
||||||
LD D,H
|
; LD D,H
|
||||||
ADD HL,HL ; *10
|
; ADD HL,HL ; *10
|
||||||
ADD HL,DE ; *18
|
; ADD HL,DE ; *18
|
||||||
SET 6,H ; | 0x4000
|
; SET 6,H ; | 0x4000
|
||||||
|
LD A,HIGH (CPU1)
|
||||||
|
CALL GET_HANDLE_ADR
|
||||||
LD DE,WorkBuffer
|
LD DE,WorkBuffer
|
||||||
LD BC,FileHDR.Attr
|
LD BC,FileHDR.Attr
|
||||||
PUSH HL
|
PUSH HL
|
||||||
@ -2149,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,BUFFERS.fnedit_ext
|
Edit: LD IX,REZ3_BUFFERS.fnedit_ext
|
||||||
LD DE,PrevFile
|
LD DE,PrevFile
|
||||||
CALL TestEXT
|
CALL TestEXT
|
||||||
RET NC
|
RET NC
|
||||||
|
|||||||
715
rez2_fnfunct.a80
715
rez2_fnfunct.a80
@ -1,5 +1,5 @@
|
|||||||
|
|
||||||
; LAST UPDATE: 14.08.2025 savelij
|
; LAST UPDATE: 07.09.2025 savelij
|
||||||
|
|
||||||
;[]==========================================================[]
|
;[]==========================================================[]
|
||||||
CopyFilesR LD A,(IY + PANEL.FILES_ALL)
|
CopyFilesR LD A,(IY + PANEL.FILES_ALL)
|
||||||
@ -21,32 +21,17 @@ CopyFilesR LD A,(IY + PANEL.FILES_ALL)
|
|||||||
.L1
|
.L1
|
||||||
SETPORT WINSP.CPU3,,0
|
SETPORT WINSP.CPU3,,0
|
||||||
LD IX,WorkBuffer
|
LD IX,WorkBuffer
|
||||||
LD L,(IY + PANEL.FIRST_FILE)
|
LD A,HIGH (CPU3)
|
||||||
LD H,(IY + PANEL.FIRST_FILE + 1)
|
CALL GET_HANDLE_ADR
|
||||||
LD E,(IY + PANEL.CURR_FILE)
|
LD (COPY.PathCurrFile),HL
|
||||||
LD D,(IY + PANEL.CURR_FILE + 1)
|
|
||||||
ADD HL,DE
|
|
||||||
ADD HL,HL ; *2
|
|
||||||
ADD HL,HL ; *4
|
|
||||||
ADD HL,HL ; *8
|
|
||||||
LD E,L
|
|
||||||
LD D,H
|
|
||||||
ADD HL,HL ; *10
|
|
||||||
ADD HL,DE ; *18
|
|
||||||
SET 6,H
|
|
||||||
SET 7,H ; | 0xC000
|
|
||||||
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,.InitCopyDir
|
||||||
ELSE
|
ELSE
|
||||||
RET NZ
|
RET NZ
|
||||||
ENDIF
|
ENDIF
|
||||||
@ -63,17 +48,17 @@ CopyFilesR LD A,(IY + PANEL.FILES_ALL)
|
|||||||
|
|
||||||
IF MARK_DIR
|
IF MARK_DIR
|
||||||
; ª®¯¨à®¢ ¨¥ ¤¨àë á® ¢á¥¬ ᮤ¥à¦¨¬ë¬ ¯®¤ ªãàá®à®¬
|
; ª®¯¨à®¢ ¨¥ ¤¨àë á® ¢á¥¬ ᮤ¥à¦¨¬ë¬ ¯®¤ ªãàá®à®¬
|
||||||
COPY_DIR INC A
|
.InitCopyDir LD HL,(COPY.PathCurrFile)
|
||||||
LD (HL),A ; ª®¯¨à®¢ âì ¡ã¤¥¬ ¤¨à¥ªâ®à¨ï¬¨
|
PUSH HL
|
||||||
CALL RESIDENT.CountingDir ; ¨§¬¥à¥¨¥ à §¬¥à ¤¨à¥ªâ®à¨¨ á ä ©« ¬¨
|
CALL CalcDirSizeR ; ¨§¬¥à¥¨¥ à §¬¥à ¤¨à¥ªâ®à¨¨ á ä ©« ¬¨
|
||||||
|
POP HL
|
||||||
|
LD (COPY.PathCurrFile),HL
|
||||||
LD HL,JUMPS.FILES_BYTES
|
LD HL,JUMPS.FILES_BYTES
|
||||||
LD DE,COPY.CopyBytes
|
LD DE,COPY.CopyBytes
|
||||||
LD BC,5
|
LD BC,DWORD + 1
|
||||||
LDIR ; § ¡à «¨ à §¬¥à ¤¨à¥ªâ®à¨¨
|
LDIR ; § ¡à «¨ à §¬¥à ¤¨à¥ªâ®à¨¨
|
||||||
LD HL,0
|
LD (COPY.CopyFiles),BC ; ª®«¨ç¥á⢮ 㦥 ᪮¯¨à®¢ ëå ä ©«®¢
|
||||||
LD (COPY.CopyFiles),HL ; ª®«¨ç¥á⢮ 㦥 ᪮¯¨à®¢ ëå ä ©«®¢
|
CALL StorePaths ; á®åà ¥¨¥ ⥪ã騩 ¯ã⥩ ¯ ¥«¥©
|
||||||
CALL RESIDENT.InitCopyDirs ; ¨¨æ¨ «¨§ æ¨ï ¯ã⥩ ®âªã¤ /ªã¤
|
|
||||||
|
|
||||||
LD HL,(COPY.CopyBytes)
|
LD HL,(COPY.CopyBytes)
|
||||||
LD DE,(COPY.CopyBytes + 2)
|
LD DE,(COPY.CopyBytes + 2)
|
||||||
CALL ConvBytes2Pages ; ¯¥à¥áç¥â ¢ ª®«¨ç¥á⢮ áâà ¨æ ¤«ï ª®¯¨à®¢ ¨ï
|
CALL ConvBytes2Pages ; ¯¥à¥áç¥â ¢ ª®«¨ç¥á⢮ áâà ¨æ ¤«ï ª®¯¨à®¢ ¨ï
|
||||||
@ -124,14 +109,8 @@ 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 B,H
|
|
||||||
; POP HL
|
|
||||||
POP BC
|
POP BC
|
||||||
ADD HL,BC
|
ADD HL,BC
|
||||||
; LD C,E
|
|
||||||
; LD B,D
|
|
||||||
; POP DE
|
|
||||||
POP BC
|
POP BC
|
||||||
EX DE,HL
|
EX DE,HL
|
||||||
ADC HL,BC
|
ADC HL,BC
|
||||||
@ -176,6 +155,7 @@ CopyNxt LD IX,ProcessAll
|
|||||||
LD HL,RightPanel
|
LD HL,RightPanel
|
||||||
.L1 LD DE,PANEL.CURR_PATH
|
.L1 LD DE,PANEL.CURR_PATH
|
||||||
ADD HL,DE
|
ADD HL,DE
|
||||||
|
LD (.NEWPATH),HL ; ªã¤ ¢®§¢à é âì ®â। ªâ¨à®¢ ë© ¯ãâì
|
||||||
LD DE,CurPath
|
LD DE,CurPath
|
||||||
SUB A
|
SUB A
|
||||||
LD C,A
|
LD C,A
|
||||||
@ -183,7 +163,6 @@ CopyNxt LD IX,ProcessAll
|
|||||||
CP (HL)
|
CP (HL)
|
||||||
JR NZ,.L2
|
JR NZ,.L2
|
||||||
LD (DE),A
|
LD (DE),A
|
||||||
SUB A
|
|
||||||
SUB C
|
SUB C
|
||||||
LD (PathLen),A
|
LD (PathLen),A
|
||||||
LD IX,PathStr
|
LD IX,PathStr
|
||||||
@ -214,39 +193,40 @@ CopyNxt LD IX,ProcessAll
|
|||||||
W_BORDER 16,56,288,12
|
W_BORDER 16,56,288,12
|
||||||
W_FILL 18,57,284,10,COLORI.WHITE
|
W_FILL 18,57,284,10,COLORI.WHITE
|
||||||
W_END
|
W_END
|
||||||
SUB A
|
LD HL,CurPath
|
||||||
LD (COPY.OverWriteFlg),A
|
LD DE,0 ; ¤à¥á ®â। ªâ¨à®¢ ®£® ¯ã⨠¯à¨¥¬¨ª
|
||||||
BIT PANELFLAG.B_SIDE,(IY + PANEL.PANELFLAG)
|
.NEWPATH EQU $-2
|
||||||
LD HL,LeftPanel
|
XOR A
|
||||||
JR Z,.L4
|
LD (COPY.OverWriteFlg),A
|
||||||
LD HL,RightPanel
|
.NP1 LDI
|
||||||
.L4 LD BC,PANEL.CURR_PATH
|
CP (HL)
|
||||||
ADD HL,BC
|
JR NZ,.NP1
|
||||||
LD (COPY.PathSrc),HL
|
LD (DE),A
|
||||||
LD HL,CurPath
|
CALL DIRLIST.InitCopyDirs
|
||||||
LD (COPY.PathDst),HL
|
|
||||||
CALL PointerMouseClock
|
CALL PointerMouseClock
|
||||||
PUSH IY
|
PUSH IY
|
||||||
GETPORT WINSP.CPU3
|
GETPORT WINSP.CPU3
|
||||||
PUSH AF
|
PUSH AF
|
||||||
BIT PANELFLAG.B_SIDE,(IY + PANEL.PANELFLAG)
|
; ⥪ãéãî ¤¨à¥ªâ®à¨î £à㧨¬ ¢ ᢮¡®¤ãî áâà ¨æã
|
||||||
LD A,(RAMPAGES.LEFTPANEL)
|
LD A,(RAMPAGES.BuffPg3)
|
||||||
JR Z,.L3
|
|
||||||
LD A,(RAMPAGES.RIGHTPANEL)
|
|
||||||
.L3
|
|
||||||
SETPORT WINSP.CPU3,,0
|
SETPORT WINSP.CPU3,,0
|
||||||
|
SET PANELFLAG.B_DIRPAGE,(IY + PANEL.PANELFLAG)
|
||||||
|
CALL ReadDIR
|
||||||
|
LD (CopyDir.CURR_PANEL),IY ; ¯à¨ ª®¯¨à®¢ ¨¨ ä ©« ¯®àâ¨âáï
|
||||||
; ª®¯¨à®¢ ¨¥ ä ©«®¢/¤¨à¥ªâ®à¨©
|
; ª®¯¨à®¢ ¨¥ ä ©«®¢/¤¨à¥ªâ®à¨©
|
||||||
CopyNextFile CALL PrintSrcDst
|
CopyNextFile LD IX,(COPY.PathCurrFile)
|
||||||
LD IX,(COPY.PathCurrFile)
|
|
||||||
IF MARK_DIR
|
IF MARK_DIR
|
||||||
BIT DIR.B_Dir,(IX + FileHDR.Attr)
|
BIT DIR.B_Dir,(IX + FileHDR.Attr)
|
||||||
JR Z,.CopyFile
|
JR Z,.CopyFile
|
||||||
; ª®¯¨à®¢ ¨¥ ¤¨à¥ªâ®à¨¨
|
; § ®á¨¬ ¨¬ï ¤¨àë ¢ ᯨ᮪ ¤«ï ¤ «ì¥©è¥£® ª®¯¨à®¢ ¨ï
|
||||||
CALL RESIDENT.Add2ListDir ; ¤®¡ ¢«¥¨¥ ¨¬¥¨ ¤¨àë ¢ ᯨ᮪
|
CALL DIRLIST.ADD_DIRNAME
|
||||||
JR CopyNextFile
|
JP .NextHandle
|
||||||
ENDIF
|
ENDIF
|
||||||
|
; ª®¯¨à®¢ ¨¥ ä ©« /¤¨à¥ªâ®à¨¨
|
||||||
.CopyFile LD L,(IX + FileHDR.SizeBytes)
|
.CopyFile PUSH IX
|
||||||
|
CALL PrintSrcDst
|
||||||
|
POP IX
|
||||||
|
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)
|
||||||
@ -446,7 +426,7 @@ CopyNextFile CALL PrintSrcDst
|
|||||||
SPDSS DSSF.CLOSE
|
SPDSS DSSF.CLOSE
|
||||||
LD A,(COPY.MemID)
|
LD A,(COPY.MemID)
|
||||||
SPDSS DSSF.FREEMEM
|
SPDSS DSSF.FREEMEM
|
||||||
LD IX,(COPY.PathCurrFile)
|
.NextHandle LD IX,(COPY.PathCurrFile)
|
||||||
RES FileHDR.B_MARK,(IX + FileHDR.Flag)
|
RES FileHDR.B_MARK,(IX + FileHDR.Flag)
|
||||||
LD HL,(COPY.CopyBytes)
|
LD HL,(COPY.CopyBytes)
|
||||||
LD E,(IX + FileHDR.SizeBytes)
|
LD E,(IX + FileHDR.SizeBytes)
|
||||||
@ -454,45 +434,451 @@ CopyNextFile CALL PrintSrcDst
|
|||||||
OR A
|
OR A
|
||||||
SBC HL,DE
|
SBC HL,DE
|
||||||
LD (COPY.CopyBytes),HL
|
LD (COPY.CopyBytes),HL
|
||||||
LD HL,(COPY.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 (COPY.CopyBytes+2),HL
|
LD (COPY.CopyBytes + 2),HL
|
||||||
LD HL,(COPY.CopyFiles)
|
LD HL,(COPY.CopyFiles)
|
||||||
LD A,H
|
LD A,H
|
||||||
OR L
|
OR L
|
||||||
JR Z,CopyEnd ; ä ©«ë ª®ç¨«¨áì?
|
JR Z,CopyDir ; ä ©«ë ª®ç¨«¨áì?
|
||||||
DEC HL
|
DEC HL
|
||||||
LD (COPY.CopyFiles),HL
|
LD (COPY.CopyFiles),HL
|
||||||
LD A,H
|
LD A,H
|
||||||
OR L
|
OR L
|
||||||
JR Z,CopyEnd ; ä ©«ë ª®ç¨«¨áì?
|
JR Z,CopyDir ; ä ©«ë ª®ç¨«¨áì?
|
||||||
LD HL,(COPY.PathCurrFile)
|
LD HL,(COPY.PathCurrFile)
|
||||||
LD DE,FileHDR.SIZE
|
LD DE,FileHDR.SIZE
|
||||||
.L5 ADD HL,DE ; á«¥¤ãî騩 ®¯¨á ⥫ì
|
.L5 ADD HL,DE ; á«¥¤ãî騩 ®¯¨á ⥫ì
|
||||||
IF MARK_DIR
|
BIT FileHDR.B_MARK,(HL)
|
||||||
LD A,(.FLAG_DIRCOPY)
|
|
||||||
AND A ; ª®¯¨à㥬 ⮫쪮 ä ©«ë?
|
|
||||||
JR Z,.L6
|
|
||||||
; ¨§-§ ª®¯¨à®¢ ¨ï ¤¨à¥ªâ®à¨© ä ©«ë ª®¯¨à㥬 ¢á¥
|
|
||||||
INC HL
|
|
||||||
LD A,(HL)
|
|
||||||
AND A
|
|
||||||
JR NZ,.L7 ; ä ©«ë ¢ ¤¨à¥ ¥é¥ ¥ ª®ç¨«¨áì
|
|
||||||
; ä ©«ë ¢ ¤¨à¥ ª®ç¨«¨áì, ᬮâà¥âì ®á⠢訥áï ¤¨àë ¢ ᯨ᪥
|
|
||||||
CALL RESIDENT.CopyDir
|
|
||||||
ENDIF
|
|
||||||
|
|
||||||
.L6 BIT FileHDR.B_MARK,(HL)
|
|
||||||
JR Z,.L5
|
JR Z,.L5
|
||||||
.L7 LD (COPY.PathCurrFile),HL
|
LD (COPY.PathCurrFile),HL
|
||||||
JP CopyNextFile
|
JP CopyNextFile
|
||||||
|
|
||||||
.FLAG_DIRCOPY DB 0
|
; ª®¯¨à®¢ ¨¥ ¤¨à¥ªâ®à¨¨
|
||||||
|
CopyDir LD IY,0
|
||||||
|
.CURR_PANEL EQU $-2
|
||||||
|
CALL DIRLIST.GET_DIRNAME ; ¯®«ã票¥ ¨¬¥¨ ¤¨àë, ¥á«¨ ¥áâì
|
||||||
|
JP C,CopyEnd ; C=1 ⥪ãé ï ¤¨à ª®ç¨« áì ¨«¨ ¨å ¥â
|
||||||
|
CALL DIRLIST.ADD_DIRLEVEL ; ¤®¡ ¢«¥¨¥ ᯨ᪠¤¨àë
|
||||||
|
PUSH IY
|
||||||
|
LD HL,(COPY.PathDst)
|
||||||
|
SPDSS DSSF.MKDIR ; á®§¤ ¨¥ ¤¨àë ¯à¨¥¬¨ª¥
|
||||||
|
; CALL C,DOSError
|
||||||
|
LD HL,(COPY.PathSrc)
|
||||||
|
SPDSS DSSF.CHDIR ; ᬥ ⥪ã饣® ¯ãâ¨
|
||||||
|
; CALL C,DOSError
|
||||||
|
POP IY
|
||||||
|
LD A,(RAMPAGES.BuffPg3)
|
||||||
|
SET PANELFLAG.B_DIRPAGE,(IY + PANEL.PANELFLAG)
|
||||||
|
CALL ReadDIR
|
||||||
|
CALL DIRLIST.MARK_ALL ; ¬ ન஢ª ¢á¥å ä ©«®¢/¤¨à
|
||||||
|
LD HL,0xC000 + FileHDR.SIZE
|
||||||
|
LD (COPY.PathCurrFile),HL
|
||||||
|
JP CopyNextFile
|
||||||
|
|
||||||
|
BUF_MARKDIR
|
||||||
|
.DIR_NAME DZ " " ; ¨¬ï ⥪ã饩 ¤¨à¥ªâ®à¨¨
|
||||||
|
|
||||||
|
DIRLIST
|
||||||
|
; ¯®¬¥âª ¢á¥å ä ©«®¢/¤¨à
|
||||||
|
.MARK_ALL LD IX,0xC000 - FileHDR.SIZE
|
||||||
|
LD HL,0
|
||||||
|
LD (COPY.CopyFiles),HL
|
||||||
|
LD BC,FileHDR.SIZE
|
||||||
|
.MLNEXT ADD IX,BC
|
||||||
|
LD A,(IX + FileHDR.Name)
|
||||||
|
AND A
|
||||||
|
RET Z
|
||||||
|
CP '.'
|
||||||
|
JR Z,.MLNEXT
|
||||||
|
SET FileHDR.B_MARK,(IX + FileHDR.Flag)
|
||||||
|
EXX
|
||||||
|
LD HL,COPY.CopyBytes
|
||||||
|
LD E,(IX + FileHDR.SizeBytes)
|
||||||
|
LD D,(IX + FileHDR.SizeBytes + 1)
|
||||||
|
LD C,(IX + FileHDR.SizeBytes + 2)
|
||||||
|
LD B,(IX + FileHDR.SizeBytes + 3)
|
||||||
|
CALL HLPBCDE
|
||||||
|
LD HL,(COPY.CopyFiles)
|
||||||
|
INC HL
|
||||||
|
LD (COPY.CopyFiles),HL
|
||||||
|
EXX
|
||||||
|
JR .MLNEXT
|
||||||
|
|
||||||
|
; ¤®¡ ¢«¥¨¥ ¨¬¥¨ ¤¨àë ¢ ᯨ᮪, á®§¤ ¨¥ ¤¨àë ¯à¨¥¬¨ª¥
|
||||||
|
.ADD_DIRNAME PUSH IX
|
||||||
|
POP HL
|
||||||
|
INC HL
|
||||||
|
LD DE,BUF_MARKDIR.DIR_NAME
|
||||||
|
LD BC,8
|
||||||
|
LDIR ; § ¡à «¨ ¨¬ï ¤¨àë ¤® ¯¥à¥ª«îç¥¨ï ¯ £
|
||||||
|
LD A,(RAMPAGES.FLX)
|
||||||
|
LD C,WINSP.CPU3
|
||||||
|
IN B,(C)
|
||||||
|
PUSH BC
|
||||||
|
OUT (C),A
|
||||||
|
LD HL,0xC000
|
||||||
|
.ANNEXT CALL GET_DWORD
|
||||||
|
LD A,B
|
||||||
|
OR C
|
||||||
|
JR Z,.ANFOUND
|
||||||
|
LD H,B
|
||||||
|
LD L,C
|
||||||
|
JR .ANNEXT
|
||||||
|
|
||||||
|
.ANFOUND PUSH HL
|
||||||
|
LD HL,BUF_MARKDIR.DIR_NAME
|
||||||
|
LD BC,8
|
||||||
|
LDIR ; § ¥á«¨ ¨¬ï ¤¨àë ¢ ᯨ᮪
|
||||||
|
POP HL
|
||||||
|
DEC HL
|
||||||
|
DEC HL
|
||||||
|
LD (HL),D
|
||||||
|
DEC HL
|
||||||
|
LD (HL),E
|
||||||
|
POP BC
|
||||||
|
OUT (C),B
|
||||||
|
RET
|
||||||
|
|
||||||
|
.ADDNAME2PATH8 CALL .CHECK_BSLASH
|
||||||
|
LD (HL),'\\'
|
||||||
|
INC HL
|
||||||
|
EX DE,HL
|
||||||
|
LD BC,8
|
||||||
|
LDIR
|
||||||
|
XOR A
|
||||||
|
LD (DE),A
|
||||||
|
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
|
||||||
|
|
||||||
|
; ®âá¥ç¥¨¥ ¯à®¡¥«®¢ ¢ ¨¬¥¨
|
||||||
|
.CUTOFFSPACES LD A,' '
|
||||||
|
.COS2 DEC HL
|
||||||
|
CP (HL)
|
||||||
|
JR Z,.COS2
|
||||||
|
INC HL
|
||||||
|
LD (HL),0
|
||||||
|
RET
|
||||||
|
|
||||||
|
; ¤®¡ ¢«¥¨¥ ãà®¢ï ¤«ï ¤¨à
|
||||||
|
.ADD_DIRLEVEL LD A,(RAMPAGES.FLX)
|
||||||
|
LD C,WINSP.CPU3
|
||||||
|
IN B,(C)
|
||||||
|
PUSH BC
|
||||||
|
OUT (C),A
|
||||||
|
LD HL,0xC000
|
||||||
|
.ALNEXT CALL GET_DWORD
|
||||||
|
LD A,B
|
||||||
|
OR C
|
||||||
|
JR Z,.ALFOUND
|
||||||
|
LD H,B
|
||||||
|
LD L,C
|
||||||
|
JR .ALNEXT
|
||||||
|
|
||||||
|
.ALFOUND LD (HL),D
|
||||||
|
DEC HL
|
||||||
|
LD (HL),E
|
||||||
|
LD H,D
|
||||||
|
LD L,E
|
||||||
|
INC DE
|
||||||
|
INC DE
|
||||||
|
INC DE
|
||||||
|
INC DE
|
||||||
|
LD (HL),E
|
||||||
|
INC HL
|
||||||
|
LD (HL),D
|
||||||
|
INC HL
|
||||||
|
LD (HL),0
|
||||||
|
INC HL
|
||||||
|
LD (HL),0
|
||||||
|
POP BC
|
||||||
|
OUT (C),B
|
||||||
|
RET
|
||||||
|
|
||||||
|
; ¯®«ã票¥ ¨¬¥¨ ¤¨àë á 㤠«¥¨¥¬ ¨§ ᯨáª
|
||||||
|
.GET_DIRNAME LD A,(RAMPAGES.FLX)
|
||||||
|
LD C,WINSP.CPU3
|
||||||
|
IN B,(C)
|
||||||
|
PUSH BC
|
||||||
|
OUT (C),A
|
||||||
|
.GNRESTART LD HL,0xC000
|
||||||
|
.GNNEXT CALL GET_DWORD
|
||||||
|
LD A,B
|
||||||
|
OR C
|
||||||
|
JR Z,.GNFOUND
|
||||||
|
DEC HL
|
||||||
|
LD (.GNEL1),HL
|
||||||
|
LD H,B
|
||||||
|
LD L,C
|
||||||
|
JR .GNNEXT
|
||||||
|
|
||||||
|
.GNFOUND INC HL
|
||||||
|
EX DE,HL
|
||||||
|
AND A
|
||||||
|
SBC HL,DE
|
||||||
|
SRL H
|
||||||
|
RR L
|
||||||
|
SRL H
|
||||||
|
RR L
|
||||||
|
SRL H
|
||||||
|
RR L
|
||||||
|
LD B,H
|
||||||
|
LD C,L
|
||||||
|
EX DE,HL
|
||||||
|
LD DE,8
|
||||||
|
AND A
|
||||||
|
SBC HL,DE
|
||||||
|
INC BC
|
||||||
|
.GNNEXT_FIND DEC BC
|
||||||
|
LD A,B
|
||||||
|
OR C
|
||||||
|
JR Z,.GNEND_LEVEL
|
||||||
|
ADD HL,DE
|
||||||
|
LD A,(HL)
|
||||||
|
AND A
|
||||||
|
JR Z,.GNNEXT_FIND
|
||||||
|
PUSH HL
|
||||||
|
EX DE,HL
|
||||||
|
PUSH DE
|
||||||
|
LD HL,(COPY.PathSrcEnd)
|
||||||
|
CALL .ADDNAME2PATH8
|
||||||
|
EX DE,HL
|
||||||
|
CALL .CUTOFFSPACES
|
||||||
|
LD (COPY.PathSrcEnd),HL
|
||||||
|
POP DE
|
||||||
|
LD HL,(COPY.PathDstEnd)
|
||||||
|
CALL .ADDNAME2PATH8
|
||||||
|
EX DE,HL
|
||||||
|
CALL .CUTOFFSPACES
|
||||||
|
LD (COPY.PathDstEnd),HL
|
||||||
|
POP HL
|
||||||
|
LD (HL),0
|
||||||
|
POP BC
|
||||||
|
OUT (C),B
|
||||||
|
AND A
|
||||||
|
RET
|
||||||
|
|
||||||
|
.GNEND_LEVEL LD HL,0
|
||||||
|
.GNEL1 EQU $-2
|
||||||
|
LD A,H
|
||||||
|
OR L
|
||||||
|
JR Z,.GNEL2
|
||||||
|
XOR A
|
||||||
|
LD (HL),A
|
||||||
|
INC HL
|
||||||
|
LD (HL),A
|
||||||
|
LD DE,0xC000 + DWORD - 1
|
||||||
|
EX DE,HL
|
||||||
|
SBC HL,DE
|
||||||
|
EX DE,HL
|
||||||
|
JR Z,.GNEL2
|
||||||
|
LD HL,(COPY.PathSrcEnd)
|
||||||
|
CALL .GNEL4
|
||||||
|
LD (COPY.PathSrcEnd),HL
|
||||||
|
LD HL,(COPY.PathDstEnd)
|
||||||
|
CALL .GNEL4
|
||||||
|
LD (COPY.PathDstEnd),HL
|
||||||
|
JP .GNRESTART
|
||||||
|
|
||||||
|
.GNEL4 DEC HL
|
||||||
|
LD A,'\\'
|
||||||
|
.GNEL3 DEC HL
|
||||||
|
CP (HL)
|
||||||
|
JR NZ,.GNEL3
|
||||||
|
INC HL
|
||||||
|
LD (HL),0
|
||||||
|
RET
|
||||||
|
|
||||||
|
.GNEL2 POP BC
|
||||||
|
OUT (C),B
|
||||||
|
SCF
|
||||||
|
RET
|
||||||
|
|
||||||
|
; ¨¨æ¨ «¨§ æ¨ï ª®¯¨à®¢ ¨ï ¤¨à¥ªâ®à¨¨ á ᮤ¥à¦¨¬ë¬
|
||||||
|
.InitCopyDirs BIT PANELFLAG.B_SIDE,(IY + PANEL.PANELFLAG)
|
||||||
|
LD HL,LeftPanel + PANEL.CURR_PATH ; ¤«ï ¯ã⨠®âªã¤ ª®¯¨à®¢ âì
|
||||||
|
LD DE,RightPanel + PANEL.CURR_PATH ; ¤«ï ¯ã⨠ªã¤ ª®¯¨à®¢ âì
|
||||||
|
JR Z,.L1
|
||||||
|
EX DE,HL
|
||||||
|
; ¢ª«îç ¥¬ ¯ £ã á ¤¨à¥ªâ®à¨¥© ⥪ã饩 ¯ ¥«¨
|
||||||
|
.L1 LD (COPY.PathSrc),HL
|
||||||
|
EX DE,HL
|
||||||
|
LD (COPY.PathDst),HL
|
||||||
|
.L2 INC HL
|
||||||
|
CP (HL)
|
||||||
|
JR NZ,.L2
|
||||||
|
LD (COPY.PathDstEnd),HL
|
||||||
|
EX DE,HL
|
||||||
|
XOR A
|
||||||
|
.L3 INC HL
|
||||||
|
CP (HL)
|
||||||
|
JR NZ,.L3
|
||||||
|
LD (COPY.PathSrcEnd),HL
|
||||||
|
; ¨¨â ¢ áâà ¨æ¥ á¯¨áª®¢ ¤¨à¥ªâ®à¨©
|
||||||
|
GETPORT WINSP.CPU3
|
||||||
|
EX AF,AF'
|
||||||
|
LD A,(RAMPAGES.FLX)
|
||||||
|
SETPORT WINSP.CPU3,,0
|
||||||
|
LD HL,0xC000
|
||||||
|
LD (HL),LOW (0xC000 + DWORD)
|
||||||
|
INC HL
|
||||||
|
LD (HL),HIGH (0xC000 + DWORD)
|
||||||
|
INC HL
|
||||||
|
LD D,H
|
||||||
|
LD E,L
|
||||||
|
INC DE
|
||||||
|
LD BC,FileHDR.Name_Size * 2
|
||||||
|
LD (HL),B
|
||||||
|
LDIR
|
||||||
|
EX AF,AF'
|
||||||
|
SETPORT WINSP.CPU3,,0
|
||||||
|
RET
|
||||||
|
|
||||||
|
; á®åà ¥¨¥ ¯ã⥩ ¯ ¥«¥©
|
||||||
|
StorePaths LD HL,LeftPanel + PANEL.CURR_PATH
|
||||||
|
LD DE,REZ2_BUFFERS.OLDLEFTPANEL
|
||||||
|
LD BC,PANEL.CURR_PATH_Size
|
||||||
|
LDIR
|
||||||
|
LD HL,RightPanel + PANEL.CURR_PATH
|
||||||
|
LD DE,REZ2_BUFFERS.OLDRIGHTPANEL
|
||||||
|
LD BC,PANEL.CURR_PATH_Size
|
||||||
|
LDIR
|
||||||
|
RET
|
||||||
|
|
||||||
|
; ¢®ááâ ®¢«¥¨¥ ¯ã⥩ ¯ ¥«¥©
|
||||||
|
RestorePaths LD HL,REZ2_BUFFERS.OLDLEFTPANEL
|
||||||
|
LD DE,LeftPanel + PANEL.CURR_PATH
|
||||||
|
LD BC,PANEL.CURR_PATH_Size
|
||||||
|
LDIR
|
||||||
|
LD HL,REZ2_BUFFERS.OLDRIGHTPANEL
|
||||||
|
LD DE,RightPanel + PANEL.CURR_PATH
|
||||||
|
LD BC,PANEL.CURR_PATH_Size
|
||||||
|
LDIR
|
||||||
|
RET
|
||||||
|
|
||||||
|
; ¯®¤áç¥â ¢ ¡ ©â å à §¬¥à ®â¬¥ç¥®© ¤¨à¥ªâ®à¨¨
|
||||||
|
CalcDirSizeR: PUSH IX
|
||||||
|
PUSH IY
|
||||||
|
GETPORT WINSP.CPU3
|
||||||
|
PUSH AF ; ⥪ã騩 ®¬¥à áâà ¨æë
|
||||||
|
LD (.CURR_PANEL),IY
|
||||||
|
LD A,(RAMPAGES.BuffPg3)
|
||||||
|
SET PANELFLAG.B_DIRPAGE,(IY + PANEL.PANELFLAG)
|
||||||
|
CALL ReadDIR
|
||||||
|
LD A,(RAMPAGES.BuffPg3)
|
||||||
|
SETPORT WINSP.CPU3,,0
|
||||||
|
LD A,HIGH (CPU3)
|
||||||
|
CALL GET_HANDLE_ADR
|
||||||
|
LD (COPY.PathCurrFile),HL
|
||||||
|
XOR A
|
||||||
|
LD H,A
|
||||||
|
LD L,A
|
||||||
|
LD (JUMPS.FILES_BYTES),HL
|
||||||
|
LD (JUMPS.FILES_BYTES + 2),HL ; ®¡ã«¥¨¥ à §¬¥à ¤¨àë
|
||||||
|
LD (JUMPS.FILES_COUNT),HL ; ®¡ã«¥¨¥ ª®«¨ç¥áâ¢ ä ©«®¢
|
||||||
|
LD (COPY.CopyFiles),HL
|
||||||
|
CALL StorePaths
|
||||||
|
CALL DIRLIST.InitCopyDirs
|
||||||
|
.NextDirFile LD IX,(COPY.PathCurrFile)
|
||||||
|
BIT DIR.B_Dir,(IX + FileHDR.Attr)
|
||||||
|
JR Z,.NextFile
|
||||||
|
; § ®á¨¬ ¨¬ï ¤¨àë ¢ ᯨ᮪ ¤«ï ¤ «ì¥©è¥£® ¨á¯®«ì§®¢ ¨ï
|
||||||
|
CALL DIRLIST.ADD_DIRNAME
|
||||||
|
JP .NextHandle
|
||||||
|
|
||||||
|
; ¤«ï ä ©« ¤®¡ ¢«ï¥¬ ¥£® à §¬¥à ¨ ª®«¨ç¥á⢮ +1
|
||||||
|
.NextFile LD HL,(JUMPS.FILES_COUNT)
|
||||||
|
INC HL
|
||||||
|
LD (JUMPS.FILES_COUNT),HL ; ¨ªà¥¬¥â ª®«¨ç¥áâ¢ ä ©«®¢
|
||||||
|
PUSH IX
|
||||||
|
POP DE
|
||||||
|
LD HL,FileHDR.SizeBytes
|
||||||
|
ADD HL,DE
|
||||||
|
CALL GET_DWORD
|
||||||
|
LD HL,JUMPS.FILES_BYTES
|
||||||
|
CALL HLPBCDE ; ¤®¡ ¢¨«¨ ª ⥪ã饬ã à §¬¥àã
|
||||||
|
; ¯à®¢¥àª ®ª®ç ¨¥ ®¯¨á ⥫¥©
|
||||||
|
.NextHandle LD HL,(COPY.CopyFiles)
|
||||||
|
LD A,H
|
||||||
|
OR L
|
||||||
|
JR Z,.ENDDIR
|
||||||
|
DEC HL
|
||||||
|
LD A,H
|
||||||
|
OR L
|
||||||
|
JR Z,.ENDDIR
|
||||||
|
LD (COPY.CopyFiles),HL
|
||||||
|
LD HL,(COPY.PathCurrFile)
|
||||||
|
LD DE,FileHDR.SIZE
|
||||||
|
.L5 ADD HL,DE ; á«¥¤ãî騩 ®¯¨á ⥫ì
|
||||||
|
BIT FileHDR.B_MARK,(HL)
|
||||||
|
JR Z,.L5
|
||||||
|
LD (COPY.PathCurrFile),HL
|
||||||
|
JP .NextDirFile
|
||||||
|
|
||||||
|
.ENDDIR LD IY,0
|
||||||
|
.CURR_PANEL EQU $-2
|
||||||
|
CALL DIRLIST.GET_DIRNAME ; ¯®«ã票¥ ¨¬¥¨ ¤¨àë, ¥á«¨ ¥áâì
|
||||||
|
JP C,.CalcEnd ; C=1 ⥪ãé ï ¤¨àë ª®ç¨« áì ¨«¨ ¨å ¥â
|
||||||
|
CALL DIRLIST.ADD_DIRLEVEL ; ¤®¡ ¢«¥¨¥ ᯨ᪠¤¨àë
|
||||||
|
PUSH IY
|
||||||
|
LD HL,(COPY.PathSrc)
|
||||||
|
SPDSS DSSF.CHDIR ; ᬥ ⥪ã饣® ¯ãâ¨
|
||||||
|
; CALL C,DOSError
|
||||||
|
POP IY
|
||||||
|
LD A,(RAMPAGES.BuffPg3)
|
||||||
|
SET PANELFLAG.B_DIRPAGE,(IY + PANEL.PANELFLAG)
|
||||||
|
CALL ReadDIR
|
||||||
|
CALL DIRLIST.MARK_ALL ; ¬ ન஢ª ¢á¥å ä ©«®¢/¤¨à
|
||||||
|
LD HL,0xC000 + FileHDR.SIZE
|
||||||
|
LD (COPY.PathCurrFile),HL
|
||||||
|
JP .NextDirFile
|
||||||
|
|
||||||
|
.CalcEnd CALL RestorePaths
|
||||||
|
POP AF
|
||||||
|
SETPORT WINSP.CPU3,,0
|
||||||
|
POP IY
|
||||||
|
BIT PANELFLAG.B_SIDE,(IY + PANEL.PANELFLAG)
|
||||||
|
LD HL,LeftPanel + PANEL.CURR_PATH
|
||||||
|
JR Z,.CD1
|
||||||
|
LD HL,RightPanel + PANEL.CURR_PATH
|
||||||
|
.CD1
|
||||||
|
; LD HL,(COPY.PathSrc)
|
||||||
|
PUSH IY
|
||||||
|
SPDSS DSSF.CHDIR
|
||||||
|
POP IY
|
||||||
|
POP IX
|
||||||
|
RET
|
||||||
|
|
||||||
|
|
||||||
; § ¢¥à襨¥ ª®¯¨à®¢ ¨ï
|
; § ¢¥à襨¥ ª®¯¨à®¢ ¨ï
|
||||||
CopyEnd POP AF
|
CopyEnd CALL RestorePaths
|
||||||
|
POP AF
|
||||||
SETPORT WINSP.CPU3,,0
|
SETPORT WINSP.CPU3,,0
|
||||||
POP IY
|
POP IY
|
||||||
WINDOWCLOSE
|
WINDOWCLOSE
|
||||||
@ -513,6 +899,7 @@ CopyEnd POP AF
|
|||||||
LD IY,RightPanel
|
LD IY,RightPanel
|
||||||
JR Z,.L1
|
JR Z,.L1
|
||||||
LD IY,LeftPanel
|
LD IY,LeftPanel
|
||||||
|
; ®¡®¢«¥¨¥ ¯ ¥«¨ ¯à¨¥¬¨ª
|
||||||
.L1 PUSH IY
|
.L1 PUSH IY
|
||||||
POP HL
|
POP HL
|
||||||
LD DE,PANEL.CURR_PATH
|
LD DE,PANEL.CURR_PATH
|
||||||
@ -525,6 +912,7 @@ CopyEnd POP AF
|
|||||||
POP AF
|
POP AF
|
||||||
CALL NC,RefreshDIR
|
CALL NC,RefreshDIR
|
||||||
POP IY
|
POP IY
|
||||||
|
; ®¡®¢«¥¨¥ ¯ ¥«¨ ¨áâ®ç¨ª
|
||||||
PUSH IY
|
PUSH IY
|
||||||
POP HL
|
POP HL
|
||||||
LD DE,PANEL.CURR_PATH
|
LD DE,PANEL.CURR_PATH
|
||||||
@ -532,12 +920,19 @@ CopyEnd POP AF
|
|||||||
PUSH IY
|
PUSH IY
|
||||||
SPDSS DSSF.CHDIR
|
SPDSS DSSF.CHDIR
|
||||||
POP IY
|
POP IY
|
||||||
|
PUSH AF
|
||||||
|
CALL C,DOSError
|
||||||
|
POP AF
|
||||||
|
PUSH AF
|
||||||
|
CALL NC,RefreshDIR
|
||||||
|
POP AF
|
||||||
JP C,BegDIRECTORY
|
JP C,BegDIRECTORY
|
||||||
CALL PrintDIR
|
CALL PrintDIR
|
||||||
CALL PrnFileInfo
|
CALL PrnFileInfo
|
||||||
JP PointerMousePointer
|
JP PointerMousePointer
|
||||||
|
|
||||||
CopyError3: ; …᫨ ¥â ¬¥áâ ¤¨áª¥ ¤«ï ª®¯¨à®¢ ¨ï ;!FIXIT ®¯â¨¬¨§¨à®¢ âì
|
; !FIXIT ®¯â¨¬¨§¨à®¢ âì
|
||||||
|
CopyError3: ; …᫨ ¥â ¬¥áâ ¤¨áª¥ ¤«ï ª®¯¨à®¢ ¨ï
|
||||||
POP HL ; ᨬ ¥¬ «¨è¥¥
|
POP HL ; ᨬ ¥¬ «¨è¥¥
|
||||||
POP DE ; âãâ «¥¦¨â AF
|
POP DE ; âãâ «¥¦¨â AF
|
||||||
PUSH AF
|
PUSH AF
|
||||||
@ -706,22 +1101,7 @@ OverExit INC SP
|
|||||||
POP IY
|
POP IY
|
||||||
JP CopyEnd
|
JP CopyEnd
|
||||||
|
|
||||||
;--------------------------------------------------------------
|
; Š®¢¥àá¨ï à §¬¥à ¢ ¡ ©â å ¢ ª®«¨ç¥á⢮ áâà ¨æ
|
||||||
COPY
|
|
||||||
.PathCurrFile DW 0 ; €¤à¥á ®¯¨á ⥫ï ⥪ã饣® ä ©« /¤¨àë
|
|
||||||
.PathSrc DW 0 ; €¤à¥á ¯ã⨠¨áâ®ç¨ª
|
|
||||||
.PathDst DW 0 ; €¤à¥á ¯ã⨠¯à¨¥¬¨ª
|
|
||||||
.CopyFiles DW 0 ; Š®«¨ç¥á⢮ ª®¯¨à㥬ëå ä ©«®¢
|
|
||||||
.CopyBytes DB 5 DUP 0 ; Š®«¨ç¥á⢮ ª®¯¨à㥬ëå ¡ ©â®¢
|
|
||||||
.OverWriteFlg DB 0 ; ”« £ ¯¥à¥§ ¯¨á¨ ä ©«®¢
|
|
||||||
.FreeBanks DW 0 ; Š®«¨ç¥á⢮ ᢮¡®¤ëå ¡ ª®¢
|
|
||||||
.CurrReadBytes DD 0 ; „«¨ ç¨â ¥¬®£® ä ©«
|
|
||||||
.CurrWriteBytes DD 0 ; „«¨ § ¯¨áë¢ ¥¬®£® ä ©«
|
|
||||||
.FHandleSrc DB 0 ; ” ©« ¨áâ®ç¨ª
|
|
||||||
.FHandleDst DB 0 ; ” ©« ¯à¨¥¬¨ª
|
|
||||||
.MemID DB 0 ; ˆ¤¥â¨ä¨ª â®à ¯ ¬ï⨠¯®¤ ª®¯¨à®¢ ¨¥
|
|
||||||
;--------------------------------------------------------------
|
|
||||||
|
|
||||||
; <20> ¢å®¤¥:
|
; <20> ¢å®¤¥:
|
||||||
; DEHL - ª®«¨ç¥á⢮ ¡ ©â
|
; DEHL - ª®«¨ç¥á⢮ ¡ ©â
|
||||||
; <20> ¢ë室¥:
|
; <20> ¢ë室¥:
|
||||||
@ -858,11 +1238,17 @@ ProcessOne DW 178 ; X
|
|||||||
DW 0
|
DW 0
|
||||||
DB COLORP.BLUE + COLORI.WHITE
|
DB COLORP.BLUE + COLORI.WHITE
|
||||||
|
|
||||||
PathStr DB 0x80,0x00,0x00,0x00
|
; ®¯¨á ⥫ì áâப¨
|
||||||
PathLen DB 0x00
|
PathStr DB 255 ; +00 Œ ªá¨¬ «ì ï ¤«¨ áâப¨
|
||||||
DW 170,106,324
|
DB 0 ; +01 ”« £ £®â®¢®áâ¨
|
||||||
DB 0xF0
|
DB 0 ; +02 ⥪ãé ï X ¯®§¨æ¨ï ªãàá®à
|
||||||
CurPath DB 0x81 DUP 0
|
DB 0 ; +03 ⥪ãé ï AddX
|
||||||
|
PathLen DB 0 ; +04 ª®«¨ç¥á⢮ ¢¢¥¤¥ëå ᨬ¢®«®¢
|
||||||
|
DW 170 ; +05 X ¯®§¨æ¨ï áâப¨ íªà ¥
|
||||||
|
DW 106 ; +07 Y ¯®§¨æ¨ï áâப¨ íªà ¥
|
||||||
|
DW 324 ; +09 X ¤«¨ áâப¨ íªà ¥
|
||||||
|
DB COLORP.WHITE + COLORI.BLACK ; +0B –¢¥â áâப¨
|
||||||
|
CurPath DB 256 DUP 0 ; +0C ...á ¬ áâப
|
||||||
|
|
||||||
;[]==========================================================[]
|
;[]==========================================================[]
|
||||||
ReNameR LD A,(IY + PANEL.FILES_ALL)
|
ReNameR LD A,(IY + PANEL.FILES_ALL)
|
||||||
@ -888,9 +1274,6 @@ ReNameR LD A,(IY + PANEL.FILES_ALL)
|
|||||||
ADD HL,HL
|
ADD HL,HL
|
||||||
ADD HL,HL
|
ADD HL,HL
|
||||||
ADD HL,HL
|
ADD HL,HL
|
||||||
; LD A,H
|
|
||||||
; OR 0xC0
|
|
||||||
; LD H,A
|
|
||||||
SET 6,H
|
SET 6,H
|
||||||
SET 7,H
|
SET 7,H
|
||||||
INC HL
|
INC HL
|
||||||
@ -898,7 +1281,7 @@ ReNameR LD A,(IY + PANEL.FILES_ALL)
|
|||||||
LD DE,CurName
|
LD DE,CurName
|
||||||
LD BC,0x000D
|
LD BC,0x000D
|
||||||
LDIR
|
LDIR
|
||||||
LD A,DIR.M_Dir;0x10
|
LD A,DIR.M_Dir
|
||||||
LD (CurAttrib),A
|
LD (CurAttrib),A
|
||||||
JR ReNameN
|
JR ReNameN
|
||||||
|
|
||||||
@ -909,9 +1292,6 @@ ReNameNr ADD HL,HL ; *2
|
|||||||
LD D,H
|
LD D,H
|
||||||
ADD HL,HL ; *10
|
ADD HL,HL ; *10
|
||||||
ADD HL,DE ; *18
|
ADD HL,DE ; *18
|
||||||
; LD A,H
|
|
||||||
; OR 0xC0
|
|
||||||
; LD H,A
|
|
||||||
SET 6,H
|
SET 6,H
|
||||||
SET 7,H ; | 0xC000
|
SET 7,H ; | 0xC000
|
||||||
PUSH HL
|
PUSH HL
|
||||||
@ -919,7 +1299,7 @@ ReNameNr ADD HL,HL ; *2
|
|||||||
LD DE,CurName
|
LD DE,CurName
|
||||||
CALL MakeDOSname
|
CALL MakeDOSname
|
||||||
POP HL
|
POP HL
|
||||||
LD BC,FileHDR.Attr;0x000E
|
LD BC,FileHDR.Attr
|
||||||
ADD HL,BC
|
ADD HL,BC
|
||||||
LD A,(HL)
|
LD A,(HL)
|
||||||
LD (CurAttrib),A
|
LD (CurAttrib),A
|
||||||
@ -980,7 +1360,8 @@ RNfile EQU $ - STRLEN(" ") - 2
|
|||||||
LD A,(NameLen)
|
LD A,(NameLen)
|
||||||
OR A
|
OR A
|
||||||
RET Z
|
RET Z
|
||||||
;[ ] -¡ £ ¯à¨ ¯¥à¥¨¬¥®¢ ¨¨ ä ©« ¢ ¡ãä¥à¥ Name ¢ ª®æ¥ ¨¬¥¨ ä ©« ¥ ¢á¥£¤ áâ®ï« § ªàë¢ î騩 0 ª®£¤ ¤®. ILDel1
|
; [ ] -¡ £ ¯à¨ ¯¥à¥¨¬¥®¢ ¨¨ ä ©« ¢ ¡ãä¥à¥ Name ¢ ª®æ¥ ¨¬¥¨
|
||||||
|
; ä ©« ¥ ¢á¥£¤ áâ®ï« § ªàë¢ î騩 0 ª®£¤ ¤®. ILDel1
|
||||||
LD HL,Name
|
LD HL,Name
|
||||||
LD E,A
|
LD E,A
|
||||||
LD D,0
|
LD D,0
|
||||||
@ -1141,9 +1522,6 @@ ReNameDIR LD HL,Name
|
|||||||
ADD HL,HL ; *4
|
ADD HL,HL ; *4
|
||||||
ADD HL,HL ; *8
|
ADD HL,HL ; *8
|
||||||
ADD HL,HL ; *10
|
ADD HL,HL ; *10
|
||||||
; LD A,H
|
|
||||||
; OR 0xC0
|
|
||||||
; LD H,A
|
|
||||||
SET 6,H
|
SET 6,H
|
||||||
SET 7,H
|
SET 7,H
|
||||||
EX DE,HL
|
EX DE,HL
|
||||||
@ -1157,11 +1535,7 @@ ReNameTree BIT PANELFLAG.B_SIDE,(IY + PANEL.PANELFLAG)
|
|||||||
ADD HL,DE
|
ADD HL,DE
|
||||||
INC HL
|
INC HL
|
||||||
INC HL
|
INC HL
|
||||||
IF TREE_REZID
|
|
||||||
CALL FindTreeDIRR
|
CALL FindTreeDIRR
|
||||||
ELSE
|
|
||||||
CALL FindTreeDIRR
|
|
||||||
ENDIF
|
|
||||||
JP C,ReNameT
|
JP C,ReNameT
|
||||||
LD HL,0xC001 - 0x10
|
LD HL,0xC001 - 0x10
|
||||||
LD BC,0x0010
|
LD BC,0x0010
|
||||||
@ -1285,17 +1659,9 @@ ReNameExt1 INC SP
|
|||||||
LD DE,PANEL.BAR_X
|
LD DE,PANEL.BAR_X
|
||||||
ADD IX,DE
|
ADD IX,DE
|
||||||
CALL DrawVScrollBar
|
CALL DrawVScrollBar
|
||||||
IF TREE_REZID
|
|
||||||
CALL TestTreeR.TestTreeBeg
|
CALL TestTreeR.TestTreeBeg
|
||||||
ELSE
|
|
||||||
CALL TestTreeR.TestTreeBeg
|
|
||||||
ENDIF
|
|
||||||
PUSH IY
|
PUSH IY
|
||||||
IF TREE_REZID
|
|
||||||
CALL MakeTreePathR
|
CALL MakeTreePathR
|
||||||
ELSE
|
|
||||||
CALL MakeTreePathR
|
|
||||||
ENDIF
|
|
||||||
EX DE,HL
|
EX DE,HL
|
||||||
BIT PANELFLAG.B_SIDE,(IY + PANEL.PANELFLAG)
|
BIT PANELFLAG.B_SIDE,(IY + PANEL.PANELFLAG)
|
||||||
LD IY,RightPanel
|
LD IY,RightPanel
|
||||||
@ -1481,11 +1847,7 @@ MkDIR0 LD HL,NewDIR
|
|||||||
ADD HL,DE
|
ADD HL,DE
|
||||||
INC HL
|
INC HL
|
||||||
INC HL
|
INC HL
|
||||||
IF TREE_REZID
|
|
||||||
CALL FindTreeDIRR
|
CALL FindTreeDIRR
|
||||||
ELSE
|
|
||||||
CALL FindTreeDIRR
|
|
||||||
ENDIF
|
|
||||||
JP C,MkDIRn
|
JP C,MkDIRn
|
||||||
LD HL,0xC001 - 0x10
|
LD HL,0xC001 - 0x10
|
||||||
LD BC,0x0010
|
LD BC,0x0010
|
||||||
@ -1503,9 +1865,6 @@ FnTree1 LD L,(IY + PANEL.FIRST_FILE)
|
|||||||
ADD HL,HL
|
ADD HL,HL
|
||||||
ADD HL,HL
|
ADD HL,HL
|
||||||
ADD HL,HL
|
ADD HL,HL
|
||||||
; LD A,H
|
|
||||||
; OR 0xC0
|
|
||||||
; LD H,A
|
|
||||||
SET 6,H
|
SET 6,H
|
||||||
SET 7,H
|
SET 7,H
|
||||||
FnTree2 LD E,(HL)
|
FnTree2 LD E,(HL)
|
||||||
@ -1562,9 +1921,6 @@ MkDIRend PUSH HL
|
|||||||
ADD HL,HL
|
ADD HL,HL
|
||||||
ADD HL,HL
|
ADD HL,HL
|
||||||
ADD HL,HL
|
ADD HL,HL
|
||||||
; LD A,H
|
|
||||||
; OR 0xC0
|
|
||||||
; LD H,A
|
|
||||||
SET 6,H
|
SET 6,H
|
||||||
SET 7,H
|
SET 7,H
|
||||||
PUSH HL
|
PUSH HL
|
||||||
@ -1737,9 +2093,6 @@ DeleteFilesR LD A,(IY + PANEL.FILES_ALL)
|
|||||||
ADD HL,HL
|
ADD HL,HL
|
||||||
ADD HL,HL
|
ADD HL,HL
|
||||||
ADD HL,HL
|
ADD HL,HL
|
||||||
; LD A,H
|
|
||||||
; OR 0xC0
|
|
||||||
; LD H,A
|
|
||||||
SET 6,H
|
SET 6,H
|
||||||
SET 7,H
|
SET 7,H
|
||||||
LD (AdrDelFile),HL
|
LD (AdrDelFile),HL
|
||||||
@ -1753,9 +2106,6 @@ DelFile ADD HL,HL
|
|||||||
LD D,H
|
LD D,H
|
||||||
ADD HL,HL
|
ADD HL,HL
|
||||||
ADD HL,DE
|
ADD HL,DE
|
||||||
; LD A,H
|
|
||||||
; OR 0xC0
|
|
||||||
; LD H,A
|
|
||||||
SET 6,H
|
SET 6,H
|
||||||
SET 7,H
|
SET 7,H
|
||||||
LD (AdrDelFile),HL
|
LD (AdrDelFile),HL
|
||||||
@ -1877,9 +2227,7 @@ DeleteFlag DEFB 0x00
|
|||||||
MakeDELname LD HL,(AdrDelFile)
|
MakeDELname LD HL,(AdrDelFile)
|
||||||
INC HL
|
INC HL
|
||||||
BIT VIEWFLAG.B_TREE,(IY + PANEL.VIEWFLAG)
|
BIT VIEWFLAG.B_TREE,(IY + PANEL.VIEWFLAG)
|
||||||
; JR NZ,MakeDELn1
|
|
||||||
JP Z,MakeDOSname
|
JP Z,MakeDOSname
|
||||||
;MakeDELn1
|
|
||||||
INC HL
|
INC HL
|
||||||
SUB A
|
SUB A
|
||||||
.L1 LDI
|
.L1 LDI
|
||||||
@ -1964,13 +2312,13 @@ DelDel0 LD IX,(AdrDelFile)
|
|||||||
PUSH DE
|
PUSH DE
|
||||||
CALL MakeDELname
|
CALL MakeDELname
|
||||||
POP HL
|
POP HL
|
||||||
LD C,DSSF.RMDIR ;0x1C ;RMDIR
|
LD C,DSSF.RMDIR
|
||||||
BIT VIEWFLAG.B_TREE,(IY+PANEL.VIEWFLAG)
|
BIT VIEWFLAG.B_TREE,(IY+PANEL.VIEWFLAG)
|
||||||
JR NZ,DelDel1
|
JR NZ,DelDel1
|
||||||
LD A,(IX + FileHDR.Attr)
|
LD A,(IX + FileHDR.Attr)
|
||||||
BIT DIR.B_Dir,A
|
BIT DIR.B_Dir,A
|
||||||
JR NZ,DelDel1
|
JR NZ,DelDel1
|
||||||
LD C,DSSF.DELETE ;0x0E ;DELETE
|
LD C,DSSF.DELETE
|
||||||
DelDel1 PUSH IY
|
DelDel1 PUSH IY
|
||||||
SPDSS
|
SPDSS
|
||||||
POP IY
|
POP IY
|
||||||
@ -2050,9 +2398,9 @@ DelFrom EQU $-2
|
|||||||
POP HL
|
POP HL
|
||||||
LD A,(IX + FileHDR.Attr)
|
LD A,(IX + FileHDR.Attr)
|
||||||
BIT DIR.B_Dir,A
|
BIT DIR.B_Dir,A
|
||||||
LD C,DSSF.DELETE ;0x0E ;DELETE
|
LD C,DSSF.DELETE
|
||||||
JR Z,.L3
|
JR Z,.L3
|
||||||
LD C,DSSF.RMDIR ;0x1C ;RMDIR
|
LD C,DSSF.RMDIR
|
||||||
.L3 PUSH IY
|
.L3 PUSH IY
|
||||||
SPDSS
|
SPDSS
|
||||||
POP IY
|
POP IY
|
||||||
@ -2177,11 +2525,7 @@ DelTreeDIR1 LD A,(DeleteFlag)
|
|||||||
ADD HL,DE
|
ADD HL,DE
|
||||||
INC HL
|
INC HL
|
||||||
INC HL
|
INC HL
|
||||||
IF TREE_REZID
|
|
||||||
CALL FindTreeDIRR
|
CALL FindTreeDIRR
|
||||||
ELSE
|
|
||||||
CALL FindTreeDIRR
|
|
||||||
ENDIF
|
|
||||||
JP C,DelDIRn
|
JP C,DelDIRn
|
||||||
LD HL,0xC001-0x10
|
LD HL,0xC001-0x10
|
||||||
LD BC,0x0010
|
LD BC,0x0010
|
||||||
@ -2231,15 +2575,12 @@ DelTree1 LD L,(IY + PANEL.FIRST_FILE)
|
|||||||
ADD HL,HL
|
ADD HL,HL
|
||||||
ADD HL,HL
|
ADD HL,HL
|
||||||
ADD HL,HL
|
ADD HL,HL
|
||||||
; LD A,H
|
|
||||||
; OR 0xC0
|
|
||||||
; LD H,A
|
|
||||||
SET 6,H
|
SET 6,H
|
||||||
SET 7,H
|
SET 7,H
|
||||||
DelTree2 LD E,(HL)
|
DelTree2 LD E,(HL)
|
||||||
INC HL
|
INC HL
|
||||||
LD A,(HL)
|
LD A,(HL)
|
||||||
LD BC,FileHDR.Attr;0x000E
|
LD BC,FileHDR.Attr
|
||||||
ADD HL,BC
|
ADD HL,BC
|
||||||
LD D,(HL)
|
LD D,(HL)
|
||||||
INC HL
|
INC HL
|
||||||
@ -2254,9 +2595,6 @@ DelTree2 LD E,(HL)
|
|||||||
ADD HL,HL
|
ADD HL,HL
|
||||||
ADD HL,HL
|
ADD HL,HL
|
||||||
ADD HL,HL
|
ADD HL,HL
|
||||||
; LD A,H
|
|
||||||
; OR 0xC0
|
|
||||||
; LD H,A
|
|
||||||
SET 6,H
|
SET 6,H
|
||||||
SET 7,H
|
SET 7,H
|
||||||
OR A
|
OR A
|
||||||
@ -2405,11 +2743,7 @@ DeleteExt1 INC SP
|
|||||||
ADD IX,DE
|
ADD IX,DE
|
||||||
CALL InitScrollBar
|
CALL InitScrollBar
|
||||||
CALL DrawVScrollBar
|
CALL DrawVScrollBar
|
||||||
IF TREE_REZID
|
|
||||||
CALL MakeTreePathR
|
CALL MakeTreePathR
|
||||||
ELSE
|
|
||||||
CALL MakeTreePathR
|
|
||||||
ENDIF
|
|
||||||
PUSH IY
|
PUSH IY
|
||||||
BIT PANELFLAG.B_SIDE,(IY + PANEL.PANELFLAG)
|
BIT PANELFLAG.B_SIDE,(IY + PANEL.PANELFLAG)
|
||||||
LD IY,RightPanel
|
LD IY,RightPanel
|
||||||
@ -2421,41 +2755,20 @@ DeleteExt1 INC SP
|
|||||||
|
|
||||||
DelName DB 13 DUP 0
|
DelName DB 13 DUP 0
|
||||||
|
|
||||||
;[]==========================================================[]
|
;--------------------------------------------------------------
|
||||||
QuitConfirmWin
|
COPY
|
||||||
MAKEWINDOW WINSUBOBJ.STORE
|
.PathCurrFile DW 0 ; €¤à¥á ®¯¨á ⥫ï ⥪ã饣® ä ©« /¤¨àë
|
||||||
W_MAIN 208,88,224,50
|
.PathSrc DW 0 ; €¤à¥á ¯ã⨠¨áâ®ç¨ª
|
||||||
W_FILL 4,2,216,10,COLORI.BLACK
|
.PathDst DW 0 ; €¤à¥á ¯ã⨠¯à¨¥¬¨ª
|
||||||
W_TEXT 104,3,COLORI.WHITE,"Quit"
|
.PathSrcEnd DW 0 ; €¤à¥á 墮áâ ¯ã⨠¨áâ®ç¨ª
|
||||||
W_TEXT 28,19,COLORP.HIGHGRAY,"Do you want quit Flex Navigator ?"
|
.PathDstEnd DW 0 ; €¤à¥á 墮áâ ¯ã⨠¯à¨¥¬¨ª
|
||||||
W_BUTTON 32,32,72,14
|
.CopyFiles DW 0 ; Š®«¨ç¥á⢮ ª®¯¨à㥬ëå ä ©«®¢
|
||||||
W_TEXT 58,35,COLORP.HIGHGRAY,"Yes"
|
.CopyBytes DB 5 DUP 0 ; Š®«¨ç¥á⢮ ª®¯¨à㥬ëå ¡ ©â®¢
|
||||||
W_BUTTON 120,32,72,14
|
.OverWriteFlg DB 0 ; ”« £ ¯¥à¥§ ¯¨á¨ ä ©«®¢
|
||||||
W_TEXT 150,35,COLORP.HIGHGRAY,"No"
|
.FreeBanks DW 0 ; Š®«¨ç¥á⢮ ᢮¡®¤ëå ¡ ª®¢
|
||||||
W_END
|
.CurrReadBytes DD 0 ; „«¨ ç¨â ¥¬®£® ä ©«
|
||||||
.Loop LD IX,REZ2TAB.QuitTab
|
.CurrWriteBytes DD 0 ; „«¨ § ¯¨áë¢ ¥¬®£® ä ©«
|
||||||
CALL CheckCoordsMouse
|
.FHandleSrc DB 0 ; ” ©« ¨áâ®ç¨ª
|
||||||
SPDSS DSSF.SCANKEY
|
.FHandleDst DB 0 ; ” ©« ¯à¨¥¬¨ª
|
||||||
JR Z,.Loop
|
.MemID DB 0 ; ˆ¤¥â¨ä¨ª â®à ¯ ¬ï⨠¯®¤ ª®¯¨à®¢ ¨¥
|
||||||
LD A,B
|
;--------------------------------------------------------------
|
||||||
OR A
|
|
||||||
JR NZ,.Loop
|
|
||||||
LD A,E
|
|
||||||
CP 0x1B
|
|
||||||
JR Z,.Abort
|
|
||||||
CP 0x0D
|
|
||||||
JR Z,.OK
|
|
||||||
RES 5,A
|
|
||||||
CP 'Y'
|
|
||||||
JR Z,.OK
|
|
||||||
CP 'N'
|
|
||||||
JR NZ,.Loop
|
|
||||||
.Abort
|
|
||||||
WINDOWCLOSE
|
|
||||||
SCF
|
|
||||||
RET
|
|
||||||
|
|
||||||
.OK
|
|
||||||
WINDOWCLOSE
|
|
||||||
OR A
|
|
||||||
RET
|
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
|
|
||||||
; LAST UPDATE: 31.07.2025 savelij
|
; LAST UPDATE: 07.09.2025 savelij
|
||||||
|
|
||||||
;[]==========================================================[]
|
;[]==========================================================[]
|
||||||
QSearchR LD A,(IY+PANEL.FILES_ALL)
|
QSearchR LD A,(IY+PANEL.FILES_ALL)
|
||||||
@ -120,7 +120,7 @@ InsSymbolSrch CP 0x20
|
|||||||
LD B,0x00
|
LD B,0x00
|
||||||
PUSH IX
|
PUSH IX
|
||||||
POP HL
|
POP HL
|
||||||
LD DE,LenInpData
|
LD DE,INPUTFORM.BUFLINE
|
||||||
ADD HL,DE
|
ADD HL,DE
|
||||||
LD E,(IX+0x04)
|
LD E,(IX+0x04)
|
||||||
ADD HL,DE
|
ADD HL,DE
|
||||||
@ -130,7 +130,7 @@ InsSymbolSrch CP 0x20
|
|||||||
LDDR
|
LDDR
|
||||||
NotInsSrch PUSH IX
|
NotInsSrch PUSH IX
|
||||||
POP HL
|
POP HL
|
||||||
LD DE,LenInpData
|
LD DE,INPUTFORM.BUFLINE
|
||||||
ADD HL,DE
|
ADD HL,DE
|
||||||
LD E,(IX+0x02)
|
LD E,(IX+0x02)
|
||||||
ADD HL,DE
|
ADD HL,DE
|
||||||
@ -198,7 +198,7 @@ QSdelet LD A,(IX+0x02)
|
|||||||
RET Z
|
RET Z
|
||||||
PUSH IX
|
PUSH IX
|
||||||
POP HL
|
POP HL
|
||||||
LD DE,LenInpData
|
LD DE,INPUTFORM.BUFLINE
|
||||||
ADD HL,DE
|
ADD HL,DE
|
||||||
LD E,(IX+0x02)
|
LD E,(IX+0x02)
|
||||||
ADD HL,DE
|
ADD HL,DE
|
||||||
@ -378,9 +378,5 @@ SrchExit POP HL
|
|||||||
SearchExit
|
SearchExit
|
||||||
WINDOWCLOSE
|
WINDOWCLOSE
|
||||||
BIT VIEWFLAG.B_TREE,(IY+PANEL.VIEWFLAG)
|
BIT VIEWFLAG.B_TREE,(IY+PANEL.VIEWFLAG)
|
||||||
IF TREE_REZID
|
JP NZ,TestTreeR.TestTreeBeg
|
||||||
CALL NZ,TestTreeR.TestTreeBeg
|
|
||||||
ELSE
|
|
||||||
CALL NZ,TestTreeR.TestTreeBeg
|
|
||||||
ENDIF
|
|
||||||
RET
|
RET
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
|
|
||||||
; LAST UPDATE: 14.08.2025 savelij
|
; LAST UPDATE: 15.08.2025 savelij
|
||||||
|
|
||||||
;[]==========================================================[]
|
;[]==========================================================[]
|
||||||
; ”®à¬ â â ¡«¨æë
|
; ”®à¬ â â ¡«¨æë
|
||||||
@ -102,15 +102,5 @@ REZ2TAB
|
|||||||
DW 0,640,136,256,%0000000100100000,0,DelExit,0
|
DW 0,640,136,256,%0000000100100000,0,DelExit,0
|
||||||
DW 0x8000
|
DW 0x8000
|
||||||
|
|
||||||
;[]===============================================================[]
|
|
||||||
.QuitTab:
|
|
||||||
DW 240,312,120,134,%0000000000100001,0,QuitConfirmWin.OK,0
|
|
||||||
DW 328,400,120,134,%0000000000100001,0,QuitConfirmWin.Abort,0
|
|
||||||
DW 0,208, 0,256,%0000000000100000,0,QuitConfirmWin.Abort,0
|
|
||||||
DW 432,640, 0,256,%0000000000100000,0,QuitConfirmWin.Abort,0
|
|
||||||
DW 0,640, 0, 88,%0000000000100000,0,QuitConfirmWin.Abort,0
|
|
||||||
DW 0,640,138,256,%0000000000100000,0,QuitConfirmWin.Abort,0
|
|
||||||
DW 0x8000
|
|
||||||
|
|
||||||
.EmptyTab: DW 0,640, 0,256,%0000000000000000,0,InputLine.InputLineExitCancel,0
|
.EmptyTab: DW 0,640, 0,256,%0000000000000000,0,InputLine.InputLineExitCancel,0
|
||||||
DW 0x8000
|
DW 0x8000
|
||||||
|
|||||||
689
rez3_fnmark.a80
689
rez3_fnmark.a80
@ -1,5 +1,5 @@
|
|||||||
|
|
||||||
; LAST UPDATE: 14.08.2025 savelij
|
; LAST UPDATE: 07.09.2025 savelij
|
||||||
|
|
||||||
;[]==========================================================[]
|
;[]==========================================================[]
|
||||||
MarkFileR LD A,(IY+PANEL.FILES_ALL)
|
MarkFileR LD A,(IY+PANEL.FILES_ALL)
|
||||||
@ -15,20 +15,8 @@ MarkFileR LD A,(IY+PANEL.FILES_ALL)
|
|||||||
LD A,(RAMPAGES.RIGHTPANEL)
|
LD A,(RAMPAGES.RIGHTPANEL)
|
||||||
.L1
|
.L1
|
||||||
SETPORT WINSP.CPU3,,0
|
SETPORT WINSP.CPU3,,0
|
||||||
LD L,(IY+PANEL.FIRST_FILE)
|
LD A,HIGH (CPU3)
|
||||||
LD H,(IY+PANEL.FIRST_FILE + 1)
|
CALL GET_HANDLE_ADR
|
||||||
LD E,(IY+PANEL.CURR_FILE)
|
|
||||||
LD D,(IY+PANEL.CURR_FILE + 1)
|
|
||||||
ADD HL,DE
|
|
||||||
ADD HL,HL ; *2
|
|
||||||
ADD HL,HL ; *4
|
|
||||||
ADD HL,HL ; *8
|
|
||||||
LD E,L
|
|
||||||
LD D,H
|
|
||||||
ADD HL,HL ; *16
|
|
||||||
ADD HL,DE ; *18
|
|
||||||
SET 6,H
|
|
||||||
SET 7,H ; | 0xC000
|
|
||||||
LD E,(HL) ; FileHDR.Flag
|
LD E,(HL) ; FileHDR.Flag
|
||||||
POP AF
|
POP AF
|
||||||
SETPORT WINSP.CPU3,,0
|
SETPORT WINSP.CPU3,,0
|
||||||
@ -64,20 +52,8 @@ UnSelectFile: LD IXL,0x00
|
|||||||
.L2
|
.L2
|
||||||
SETPORT WINSP.CPU3,,0
|
SETPORT WINSP.CPU3,,0
|
||||||
SETPORT WINSP.Y_PORT,0xC0
|
SETPORT WINSP.Y_PORT,0xC0
|
||||||
LD L,(IY+PANEL.FIRST_FILE)
|
LD A,HIGH (CPU3)
|
||||||
LD H,(IY+PANEL.FIRST_FILE + 1)
|
CALL GET_HANDLE_ADR
|
||||||
LD E,(IY+PANEL.CURR_FILE)
|
|
||||||
LD D,(IY+PANEL.CURR_FILE + 1)
|
|
||||||
ADD HL,DE
|
|
||||||
ADD HL,HL ; *2
|
|
||||||
ADD HL,HL ; *4
|
|
||||||
ADD HL,HL ; *8
|
|
||||||
LD E,L
|
|
||||||
LD D,H
|
|
||||||
ADD HL,HL ; *16
|
|
||||||
ADD HL,DE ; *18 - FileHDR.SIZE
|
|
||||||
SET 6,H
|
|
||||||
SET 7,H ; | 0xC000
|
|
||||||
PUSH HL
|
PUSH HL
|
||||||
LD DE,FileHDR.Attr
|
LD DE,FileHDR.Attr
|
||||||
ADD HL,DE
|
ADD HL,DE
|
||||||
@ -85,9 +61,13 @@ UnSelectFile: LD IXL,0x00
|
|||||||
POP HL
|
POP HL
|
||||||
BIT DIR.B_Dir,C ; íâ® ¤¨à ?
|
BIT DIR.B_Dir,C ; íâ® ¤¨à ?
|
||||||
IF MARK_DIR
|
IF MARK_DIR
|
||||||
CALL NZ,CountingDirR ; ¨§¬¥à¥¨¥ à §¬¥à ¤¨àë
|
PUSH HL
|
||||||
|
PUSH BC
|
||||||
|
CALL NZ,RESIDENT.CalcDirSize ; ¨§¬¥à¥¨¥ à §¬¥à ¤¨àë
|
||||||
|
POP BC
|
||||||
|
POP HL
|
||||||
ELSE
|
ELSE
|
||||||
JR NZ,.MrFile1 ; ¤¨à¥ª®à¨¨ ª®¯¨à®¢ âì ¥ 㬥¥¬, ⮫쪮 ä ©«ë
|
JR NZ,.MrFile1 ; ¤¨à¥ªâ®à¨¨ ª®¯¨à®¢ âì ¥ 㬥¥¬, ⮫쪮 ä ©«ë
|
||||||
ENDIF
|
ENDIF
|
||||||
; íâ® ä ©«
|
; íâ® ä ©«
|
||||||
LD B,(HL) ; áâ ஥ á®áâ®ï¨¥ ¯®¬¥âª¨ ä ©«
|
LD B,(HL) ; áâ ஥ á®áâ®ï¨¥ ¯®¬¥âª¨ ä ©«
|
||||||
@ -98,10 +78,10 @@ UnSelectFile: LD IXL,0x00
|
|||||||
PUSH BC
|
PUSH BC
|
||||||
LD BC,FileHDR.SIZE
|
LD BC,FileHDR.SIZE
|
||||||
LDIR
|
LDIR
|
||||||
|
IF MARK_DIR
|
||||||
BIT DIR.B_Dir,A ; ä ©« ¨«¨ ¤¨à
|
BIT DIR.B_Dir,A ; ä ©« ¨«¨ ¤¨à
|
||||||
JR Z,.L8
|
JR Z,.L8
|
||||||
IF MARK_DIR
|
; ª®¯¨à㥬 à §¬¥à ¢ ¡ ©â å ¢ à §¬¥à ¤¨àë
|
||||||
; ª®¯¨à㥬 à §¬¥à ¢ ¡ ©â å ¨§ à §¬¥à ¤¨àë
|
|
||||||
LD HL,JUMPS.FILES_BYTES
|
LD HL,JUMPS.FILES_BYTES
|
||||||
LD DE,WorkBuffer + FileHDR.SizeBytes
|
LD DE,WorkBuffer + FileHDR.SizeBytes
|
||||||
LD BC,DWORD
|
LD BC,DWORD
|
||||||
@ -467,14 +447,14 @@ SMask21 LD (DE),A
|
|||||||
SelectAllR: CALL ResInvert
|
SelectAllR: CALL ResInvert
|
||||||
SelectAllRN: LD HL,SetInvert
|
SelectAllRN: LD HL,SetInvert
|
||||||
PUSH HL
|
PUSH HL
|
||||||
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
|
||||||
BIT VIEWFLAG.B_TREE,(IY+PANEL.VIEWFLAG)
|
BIT VIEWFLAG.B_TREE,(IY + PANEL.VIEWFLAG)
|
||||||
RET NZ
|
RET NZ
|
||||||
GETPORT WINSP.CPU3
|
GETPORT WINSP.CPU3
|
||||||
PUSH AF
|
PUSH AF
|
||||||
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
|
||||||
LD A,(RAMPAGES.RIGHTPANEL)
|
LD A,(RAMPAGES.RIGHTPANEL)
|
||||||
@ -496,6 +476,8 @@ SelectAllRN: LD HL,SetInvert
|
|||||||
EX AF,AF' ; [ ] fat32
|
EX AF,AF' ; [ ] fat32
|
||||||
.loop: BIT DIR.B_Dir,(IX + FileHDR.Attr) ;!HARDCODE DIRECTORY
|
.loop: BIT DIR.B_Dir,(IX + FileHDR.Attr) ;!HARDCODE DIRECTORY
|
||||||
JR NZ,.SelAll1
|
JR NZ,.SelAll1
|
||||||
|
; ¬ ન஢ª ⮫쪮 ä ©«®¢
|
||||||
|
PUSH BC
|
||||||
SET FileHDR.B_MARK,(IX + FileHDR.Flag)
|
SET FileHDR.B_MARK,(IX + FileHDR.Flag)
|
||||||
LD C,(IX + FileHDR.SizeBytes)
|
LD C,(IX + FileHDR.SizeBytes)
|
||||||
LD B,(IX + FileHDR.SizeBytes + 1)
|
LD B,(IX + FileHDR.SizeBytes + 1)
|
||||||
@ -511,7 +493,8 @@ SelectAllRN: LD HL,SetInvert
|
|||||||
EXX
|
EXX
|
||||||
INC HL
|
INC HL
|
||||||
EXX
|
EXX
|
||||||
LD BC,FileHDR.SIZE
|
; LD BC,FileHDR.SIZE
|
||||||
|
POP BC
|
||||||
.SelAll1: ADD IX,BC
|
.SelAll1: ADD IX,BC
|
||||||
LD A,(IX + FileHDR.Name)
|
LD A,(IX + FileHDR.Name)
|
||||||
OR A
|
OR A
|
||||||
@ -534,7 +517,7 @@ SelectAllRN: LD HL,SetInvert
|
|||||||
LD (IY+PANEL.BYTES_MARK + 3),D
|
LD (IY+PANEL.BYTES_MARK + 3),D
|
||||||
; [ ] FAT32
|
; [ ] FAT32
|
||||||
EX AF,AF'
|
EX AF,AF'
|
||||||
LD (IY+PANEL.BYTES_MARK_H),A
|
LD (IY + PANEL.BYTES_MARK_H),A
|
||||||
CALL PrintDIR
|
CALL PrintDIR
|
||||||
JP PrnFileInfo
|
JP PrnFileInfo
|
||||||
|
|
||||||
@ -542,13 +525,13 @@ SelectAllRN: LD HL,SetInvert
|
|||||||
UnSelectAllR: CALL ResInvert
|
UnSelectAllR: CALL ResInvert
|
||||||
UnSelectAllRN: LD HL,SetInvert
|
UnSelectAllRN: LD HL,SetInvert
|
||||||
PUSH HL
|
PUSH HL
|
||||||
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
|
||||||
BIT VIEWFLAG.B_TREE,(IY+PANEL.VIEWFLAG)
|
BIT VIEWFLAG.B_TREE,(IY + PANEL.VIEWFLAG)
|
||||||
RET NZ
|
RET NZ
|
||||||
LD A,(IY+PANEL.FILES_MARK)
|
LD A,(IY + PANEL.FILES_MARK)
|
||||||
OR (IY+PANEL.FILES_MARK + 1)
|
OR (IY + PANEL.FILES_MARK + 1)
|
||||||
RET Z
|
RET Z
|
||||||
PUSH IY
|
PUSH IY
|
||||||
POP HL
|
POP HL
|
||||||
@ -560,7 +543,7 @@ UnSelectAllRN: LD HL,SetInvert
|
|||||||
DJNZ .L2
|
DJNZ .L2
|
||||||
GETPORT WINSP.CPU3
|
GETPORT WINSP.CPU3
|
||||||
PUSH AF
|
PUSH AF
|
||||||
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
|
||||||
LD A,(RAMPAGES.RIGHTPANEL)
|
LD A,(RAMPAGES.RIGHTPANEL)
|
||||||
@ -678,619 +661,3 @@ SUB_SIZE: EX AF,AF' ; [ ] fat32
|
|||||||
EXX
|
EXX
|
||||||
EX AF,AF'
|
EX AF,AF'
|
||||||
RET
|
RET
|
||||||
|
|
||||||
IF MARK_DIR
|
|
||||||
BUF_MARKDIR
|
|
||||||
.FILES_MASK DZ "*.*" ; ¬ áª ä ©«®¢
|
|
||||||
.RET_DIR DZ ".. " ; ¤«ï ¢ë室 ¨§ ¤¨à¥ªâ®à¨¨
|
|
||||||
.DIR_NAME DZ " " ; ¨¬ï ⥪ã饩 ¤¨à¥ªâ®à¨¨
|
|
||||||
|
|
||||||
; ª®¯¨à®¢ ¨¥ ¤¨à¥ªâ®à¨¨
|
|
||||||
CopyDirR PUSH IX
|
|
||||||
PUSH IY
|
|
||||||
GETPORT WINSP.CPU3
|
|
||||||
PUSH AF
|
|
||||||
LD A,(RAMPAGES.FLX)
|
|
||||||
SETPORT WINSP.CPU3,,0
|
|
||||||
|
|
||||||
.EXIT POP AF
|
|
||||||
SETPORT WINSP.CPU3,,0
|
|
||||||
POP IY
|
|
||||||
POP IX
|
|
||||||
RET
|
|
||||||
|
|
||||||
; ¤®¡ ¢«¥¨¥ ¨¬¥¨ ¤¨à¥ªâ®à¨¨ ¢ ᯨ᮪ ¨/¨«¨ ¢å®¤/¢ë室
|
|
||||||
Add2ListDirR
|
|
||||||
PUSH IX
|
|
||||||
PUSH IY
|
|
||||||
GETPORT WINSP.CPU3
|
|
||||||
PUSH AF
|
|
||||||
LD A,(RAMPAGES.FLX)
|
|
||||||
SETPORT WINSP.CPU3,,0
|
|
||||||
PUSH IX
|
|
||||||
POP DE
|
|
||||||
LD HL,FileHDR.Name
|
|
||||||
ADD HL,DE ; ᬥ饨¥ ¤® ¨¬¥¨ ¢ ®¯¨á ⥫¥
|
|
||||||
LD DE,BUF_MARKDIR.DIR_NAME
|
|
||||||
PUSH DE
|
|
||||||
LD BC,FileHDR.Name_Size
|
|
||||||
LDIR ; § ¡à «¨ ¨¬ï ¤¨àë
|
|
||||||
EX DE,HL
|
|
||||||
CALL .CUTOFFSPACES ; ®âá¥ç¥¨¥ ¯à®¡¥«®¢
|
|
||||||
|
|
||||||
; ¢ë室
|
|
||||||
.EXIT POP AF
|
|
||||||
SETPORT WINSP.CPU3,,0
|
|
||||||
POP IY
|
|
||||||
POP IX
|
|
||||||
RET
|
|
||||||
|
|
||||||
; ®âá¥ç¥¨¥ ¯à®¡¥«®¢ ¢ ¨¬¥¨
|
|
||||||
.CUTOFFSPACES LD A,' '
|
|
||||||
.COS2 DEC HL
|
|
||||||
CP (HL)
|
|
||||||
JR Z,.COS2
|
|
||||||
INC HL
|
|
||||||
LD (HL),0
|
|
||||||
RET
|
|
||||||
|
|
||||||
; ¤®¡ ¢«¥¨¥ ¨¬¥¨ ¤¨àë ".." ¤«ï ¢ë室 ¢ ¯à¥¤ë¤ãéãî ¤¨àã
|
|
||||||
.ADD_2DOT PUSH HL
|
|
||||||
LD HL,BUF_MARKDIR.RET_DIR
|
|
||||||
LD DE,(BUFFERS.CURR_DIRNAME)
|
|
||||||
LD BC,FFIRST.Name_Size
|
|
||||||
LDIR
|
|
||||||
LD (BUFFERS.CURR_DIRNAME),DE
|
|
||||||
POP HL
|
|
||||||
RET
|
|
||||||
|
|
||||||
; ¤®¡ ¢«¥¨¥ ¨¬¥¨ ¢ áâப㠯ãâ¨
|
|
||||||
; HL - ªã¤ ¤®¡ ¢«ïâì (墮áâ ⥪ã饣® ¯ãâ¨)
|
|
||||||
; DE - ®âªã¤ ¨¬ï ¡à âì
|
|
||||||
.ADDNAME2PATH CALL .CHECK_BSLASH
|
|
||||||
LD (HL),'\\'
|
|
||||||
INC HL
|
|
||||||
EX DE,HL
|
|
||||||
; ª®¯¨à®¢ ¨¥ ¨¬¥¨ ¨§ ¡ãä¥à
|
|
||||||
.COPYNAME2PATH XOR A
|
|
||||||
.CNP2 CP (HL)
|
|
||||||
JR Z,.CNP1
|
|
||||||
LDI
|
|
||||||
JR .CNP2
|
|
||||||
|
|
||||||
.CNP1 LD (DE),A
|
|
||||||
RET
|
|
||||||
|
|
||||||
; ¯à®¢¥àª BACKSLASH
|
|
||||||
.CHECK_BSLASH DEC HL
|
|
||||||
LD A,(HL)
|
|
||||||
CP '\\'
|
|
||||||
RET Z
|
|
||||||
INC HL
|
|
||||||
RET
|
|
||||||
|
|
||||||
; ¯®¤áç¥â ¢ ¡ ©â å à §¬¥à ®â¬¥ç¥®© ¤¨à¥ªâ®à¨¨
|
|
||||||
; IX - ¤à¥á ®¯¨á â¥«ï ¤¨àë ¢ áâà ¨æ¥ ¯ ¥«¨ ª®â®àãî ¬¥àïâì
|
|
||||||
CountingDirR PUSH IX
|
|
||||||
PUSH IY
|
|
||||||
GETPORT WINSP.CPU3
|
|
||||||
PUSH AF ; ⥪ã騩 ®¬¥à áâà ¨æë
|
|
||||||
PUSH IX
|
|
||||||
BIT PANELFLAG.B_SIDE,(IY + PANEL.PANELFLAG)
|
|
||||||
LD A,(RAMPAGES.LEFTPANEL)
|
|
||||||
JR Z,.L1
|
|
||||||
LD A,(RAMPAGES.RIGHTPANEL)
|
|
||||||
.L1 ; ¢ª«îç ¥¬ ¯ £ã á ¤¨à¥ªâ®à¨¥© ⥪ã饩 ¯ ¥«¨
|
|
||||||
SETPORT WINSP.CPU3,,0
|
|
||||||
XOR A
|
|
||||||
LD H,A
|
|
||||||
LD L,A
|
|
||||||
LD IXH,A ; ®¡ã«¥¨¥ ãà®¢ï ¢å®¦¤¥¨ï ¢ ¤¨àë
|
|
||||||
LD (JUMPS.FILES_BYTES),HL
|
|
||||||
LD (JUMPS.FILES_BYTES + 2),HL ; ®¡ã«¥¨¥ à §¬¥à ¤¨àë
|
|
||||||
LD (JUMPS.FILES_COUNT),HL ; ®¡ã«¥¨¥ ª®«¨ç¥áâ¢ ä ©«®¢
|
|
||||||
LD HL,CPU3
|
|
||||||
LD (BUFFERS.CURR_DIRNAME),HL
|
|
||||||
; á®åà ¥¨¥ ⥪ã饣® ¯ã⨠¤«ï ¢®§¢à â
|
|
||||||
SPDSS DSSF.CURDISK
|
|
||||||
LD HL,BUFFERS.OLDPATH ; á®åà ¥ë© ¯ãâì ¤«ï ¢®§¢à â
|
|
||||||
ADD A,'A'
|
|
||||||
LD (HL),A
|
|
||||||
INC HL
|
|
||||||
LD (HL),':'
|
|
||||||
INC HL
|
|
||||||
SPDSS DSSF.CURDIR
|
|
||||||
POP DE
|
|
||||||
JP C,.END_COUNT
|
|
||||||
; ¢å®¤ ¢ ¤¨à¥ªâ®à¨î
|
|
||||||
LD HL,FileHDR.Name
|
|
||||||
ADD HL,DE
|
|
||||||
LD DE,BUF_MARKDIR.DIR_NAME
|
|
||||||
PUSH DE
|
|
||||||
LD BC,FileHDR.Name_Size
|
|
||||||
LDIR ; § ¡à «¨ ¨¬ï ¤¨àë ¤«ï ¨§¬¥à¥¨ï
|
|
||||||
LD A,(RAMPAGES.FLX)
|
|
||||||
SETPORT WINSP.CPU3,,0
|
|
||||||
CALL .ADD_2DOT ; ¤«ï ¢®§¢à â ¢ ¯à¥¤ë¤ãéãî ¤¨àã
|
|
||||||
POP HL
|
|
||||||
LD DE,(BUFFERS.CURR_DIRNAME)
|
|
||||||
LD BC,FileHDR.Name_Size
|
|
||||||
LDIR ; ¨¬ï ¤¨àë ¤«ï ¢å®¤
|
|
||||||
LD (BUFFERS.CURR_DIRNAME),DE
|
|
||||||
XOR A
|
|
||||||
LD (DE),A
|
|
||||||
CALL .SET_PATH ; ãáâ ®¢ª ⥪ã饣® ¯ãâ¨
|
|
||||||
INC IXH ; á«¥¤ãî騩 ã஢¥ì ¤¨àë
|
|
||||||
.CONTINUE CALL .ADD_2DOT ; ¤«ï ¢®§¢à â ¢ ¯à¥¤ë¤ãéãî ¤¨àã
|
|
||||||
CALL .COUNT_FILES
|
|
||||||
LD A,IXL
|
|
||||||
AND A ; §¤¥áì ¤¨àë ¥áâì?
|
|
||||||
JR Z,.PREV_DIR ; ¤¨àë ¥ ©¤¥ë
|
|
||||||
CALL .SET_PATH ; ¢å®¤ ¢ ¤¨àã ¨§ ᯨáª
|
|
||||||
INC IXH ; á«¥¤ãî騩 ã஢¥ì ¤¨àë
|
|
||||||
JR .CONTINUE
|
|
||||||
|
|
||||||
; ¢ë室 ¢ ¯à¥¤ë¤ãéãî ¤¨àã
|
|
||||||
.PREV_DIR CALL .OUT_DIR
|
|
||||||
LD A,IXH ; ã஢¥ì ¤¨àë?
|
|
||||||
AND A
|
|
||||||
JR Z,.END_COUNT
|
|
||||||
CALL .GET_NAME
|
|
||||||
CALL .GET_NAME
|
|
||||||
LD HL,(BUFFERS.CURR_DIRNAME)
|
|
||||||
LD DE,-FileHDR.Name_Size
|
|
||||||
ADD HL,DE
|
|
||||||
LD A,(HL)
|
|
||||||
CP '.'
|
|
||||||
JR Z,.PREV_DIR
|
|
||||||
CALL .SET_PATH
|
|
||||||
INC IXH ; á«¥¤ãî騩 ã஢¥ì ¤¨àë
|
|
||||||
JR .CONTINUE
|
|
||||||
|
|
||||||
; ¢®§¢à â ⥪ã饣® ¯ãâ¨
|
|
||||||
.END_COUNT POP AF
|
|
||||||
SETPORT WINSP.CPU3,,0
|
|
||||||
LD HL,BUFFERS.OLDPATH ; á®åà ¥ë© ¯ãâì ¤«ï ¢®§¢à â
|
|
||||||
SPDSS DSSF.CHDIR
|
|
||||||
POP IY
|
|
||||||
POP IX
|
|
||||||
RET
|
|
||||||
|
|
||||||
; ¢ë室 ¢ ¯à¥¤ë¤ãéãî ¤¨àã
|
|
||||||
.GET_NAME LD HL,(BUFFERS.CURR_DIRNAME)
|
|
||||||
LD (HL),0
|
|
||||||
LD DE,-FileHDR.Name_Size
|
|
||||||
ADD HL,DE
|
|
||||||
LD (BUFFERS.CURR_DIRNAME),HL
|
|
||||||
RET
|
|
||||||
|
|
||||||
.OUT_DIR DEC IXH ; ¯à¥¤ë¤ã騩 ã஢¥ì ¤¨àë
|
|
||||||
LD HL,BUF_MARKDIR.RET_DIR
|
|
||||||
JR .SP1
|
|
||||||
|
|
||||||
; ¯¥à¥å®¤ ¢ ¤¨àã ¨§ ᯨáª
|
|
||||||
.SET_PATH LD HL,(BUFFERS.CURR_DIRNAME)
|
|
||||||
LD DE,-FileHDR.Name_Size
|
|
||||||
ADD HL,DE
|
|
||||||
LD DE,BUF_MARKDIR.DIR_NAME
|
|
||||||
PUSH DE
|
|
||||||
LD BC,FFIRST.Name_Size
|
|
||||||
LDIR
|
|
||||||
POP HL
|
|
||||||
.SP1 PUSH IX
|
|
||||||
SPDSS DSSF.CHDIR
|
|
||||||
SPDSS DSSF.CURDISK
|
|
||||||
LD HL,BUFFERS.CURRPATHSRC
|
|
||||||
ADD A,'A'
|
|
||||||
LD (HL),A
|
|
||||||
INC HL
|
|
||||||
LD (HL),':'
|
|
||||||
INC HL
|
|
||||||
SPDSS DSSF.CURDIR
|
|
||||||
POP IX
|
|
||||||
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
|
|
||||||
|
|
||||||
; ¯¥à¥áç¨âë¢ ¥¬ à §¬¥àë ä ©«®¢ ¢ ⥪ã饩 ¤¨à¥ªâ®à¨¨
|
|
||||||
; ¨ ¢ë£à¥¡ ¥¬ ¨¬¥ ¤¨à ¢ â ¡«¨çªã
|
|
||||||
.COUNT_FILES LD IXL,0 ; ª®«¨ç¥á⢮ ¤¨à ¢ ⥪ã饩 ¤¨à¥
|
|
||||||
CALL .F_FIRST ; ¨é¥¬ ¯¥à¢ë© ®¯¨á ⥫ì
|
|
||||||
RET C ; ¢ë室 ¥á«¨ ¨ç¥£® ¥ ©¤¥®
|
|
||||||
.L2 LD DE,FFIRST.Attr
|
|
||||||
ADD HL,DE
|
|
||||||
LD A,(HL)
|
|
||||||
SBC HL,DE
|
|
||||||
BIT DIR.B_Dir,A
|
|
||||||
JR Z,.ADD_FILES_BYTES
|
|
||||||
; ¤«ï ¤¨àë ª®¯¨à㥬 ¨¬ï ¢ â ¡«¨çªã
|
|
||||||
LD DE,FFIRST.Name
|
|
||||||
ADD HL,DE
|
|
||||||
LD A,(HL)
|
|
||||||
CP '.' ; . ¨ .. ¯à®¯ã᪠¥¬
|
|
||||||
JR Z,.L5
|
|
||||||
; ¤«ï ¤¨àë ª®¯¨à㥬 ¨¬ï ¢ â ¡«¨çªã
|
|
||||||
LD DE,(BUFFERS.CURR_DIRNAME)
|
|
||||||
LD BC,FFIRST.Name_Size
|
|
||||||
LDIR
|
|
||||||
LD (BUFFERS.CURR_DIRNAME),DE
|
|
||||||
INC IXL
|
|
||||||
JR .L5
|
|
||||||
|
|
||||||
; ¤«ï ä ©« ¤®¡ ¢«ï¥¬ ¤«¨ã
|
|
||||||
.ADD_FILES_BYTES:
|
|
||||||
LD DE,FFIRST.FileSize
|
|
||||||
ADD HL,DE
|
|
||||||
CALL GET_DWORD ; ¢§ïâì à §¬¥à ¨§ ®¯¨á ⥫ï
|
|
||||||
LD HL,JUMPS.FILES_BYTES
|
|
||||||
CALL HLPBCDE ; ¤®¡ ¢¨«¨ ª ⥪ã饬ã à §¬¥àã
|
|
||||||
LD HL,(JUMPS.FILES_COUNT)
|
|
||||||
INC HL
|
|
||||||
LD (JUMPS.FILES_COUNT),HL ; ¨ªà¥¬¥â ª®«¨ç¥áâ¢ ä ©«®¢
|
|
||||||
; ¨é¥¬ á«¥¤ãî騩 ®¯¨á ⥫ì
|
|
||||||
.L5 CALL .F_NEXT
|
|
||||||
JR NC,.L2
|
|
||||||
RET
|
|
||||||
|
|
||||||
; ¯®¨áª ¯¥à¢®£® ®¯¨á ⥫ï
|
|
||||||
.F_FIRST LD A, DIR.M_Archive + \
|
|
||||||
DIR.M_System + \
|
|
||||||
DIR.M_Hidden + \
|
|
||||||
DIR.M_ReadOnly + \
|
|
||||||
DIR.M_Dir
|
|
||||||
.FFF1 LD HL,BUF_MARKDIR.FILES_MASK
|
|
||||||
LD DE,BUFFERS.OLDPATH
|
|
||||||
PUSH DE
|
|
||||||
PUSH IX
|
|
||||||
SPDSS DSSF.F_FIRST,0
|
|
||||||
POP IX
|
|
||||||
POP HL
|
|
||||||
RET
|
|
||||||
|
|
||||||
; ¯®¨áª á«¥¤ãî饣® ®¯¨á ⥫ï
|
|
||||||
.F_NEXT LD DE,BUFFERS.OLDPATH
|
|
||||||
PUSH DE
|
|
||||||
PUSH IX
|
|
||||||
SPDSS DSSF.F_NEXT
|
|
||||||
POP IX
|
|
||||||
POP HL
|
|
||||||
RET
|
|
||||||
|
|
||||||
; ¨¨æ¨ «¨§ æ¨ï ª®¯¨à®¢ ¨ï ¤¨à¥ªâ®à¨¨ á ᮤ¥à¦¨¬ë¬
|
|
||||||
InitCopyDirsR PUSH IX
|
|
||||||
PUSH IY
|
|
||||||
GETPORT WINSP.CPU3
|
|
||||||
PUSH AF
|
|
||||||
BIT PANELFLAG.B_SIDE,(IY + PANEL.PANELFLAG)
|
|
||||||
LD HL,LeftPanel ; ¤«ï ¯ã⨠®âªã¤ ª®¯¨à®¢ âì
|
|
||||||
LD DE,RightPanel ; ¤«ï ¯ã⨠ªã¤ ª®¯¨à®¢ âì
|
|
||||||
LD A,(RAMPAGES.LEFTPANEL) ; ¨§ ª ª®© áâà ¨æë ¯ ¥«¨ ¡à âì ¯ãâì
|
|
||||||
JR Z,.L1
|
|
||||||
LD HL,RightPanel ; ¤«ï ¯ã⨠®âªã¤ ª®¯¨à®¢ âì
|
|
||||||
LD DE,LeftPanel ; ¤«ï ¯ã⨠ªã¤ ª®¯¨à®¢ âì
|
|
||||||
LD A,(RAMPAGES.RIGHTPANEL) ; ¨§ ª ª®© áâà ¨æë ¯ ¥«¨ ¡à âì ¯ãâì
|
|
||||||
.L1
|
|
||||||
; ¢ª«îç ¥¬ ¯ £ã á ¤¨à¥ªâ®à¨¥© ⥪ã饩 ¯ ¥«¨
|
|
||||||
PUSH HL
|
|
||||||
SETPORT WINSP.CPU3,,0
|
|
||||||
LD HL,PANEL.CURR_PATH
|
|
||||||
ADD HL,DE ; ®âªã¤ ¯ãâì ¯à¨¥¬¨ª ¢§ïâì
|
|
||||||
LD DE,BUFFERS.CURRPATHDST ; ¡ãä¥à ¯ã⨠¯à¨¥¬¨ª
|
|
||||||
CALL .COPYNAME2PATH
|
|
||||||
LD (BUFFERS.ENDPATHDST),DE ; ¤à¥á 墮áâ ¯ã⨠¯à¨¥¬¨ª
|
|
||||||
; ª®¯¨à®¢ ¨¥ ¨¬¥¨ ¤¨à¥ªâ®à¨¨ ¤«ï ª®¯¨à®¢ ¨ï
|
|
||||||
PUSH IX
|
|
||||||
POP DE
|
|
||||||
LD HL,FileHDR.Name
|
|
||||||
ADD HL,DE
|
|
||||||
LD DE,BUF_MARKDIR.DIR_NAME
|
|
||||||
LD BC,FileHDR.Name_Size
|
|
||||||
LDIR ; § ¡à «¨ ¨¬ï ¤¨àë ¤«ï ª®¯¨à®¢ ¨ï
|
|
||||||
EX DE,HL
|
|
||||||
CALL .CUTOFFSPACES ; ®âá¥ç¥¨¥ ¯à®¡¥«®¢
|
|
||||||
; ¯¥à¥®á ⥪ã饣® ¯ã⨠¨áâ®ç¨ª
|
|
||||||
POP DE
|
|
||||||
LD HL,PANEL.CURR_PATH
|
|
||||||
ADD HL,DE ; ®âªã¤ ¯ãâì ¯à¨¥¬¨ª ¢§ïâì
|
|
||||||
LD DE,BUFFERS.CURRPATHSRC
|
|
||||||
CALL .COPYNAME2PATH ; ᪮¯¨à®¢ «¨ ¯ãâì ¨áâ®ç¨ª
|
|
||||||
LD (BUFFERS.ENDPATHSRC),DE ; ¤à¥á 墮áâ ¯ã⨠¨áâ®ç¨ª
|
|
||||||
; ¤®¡ ¢«¥¨¥ ¨¬¥¨ ¤¨àë ¤«ï ª®¯¨à®¢ ¨ï ¢ ¯ãâì ¨áâ®ç¨ª
|
|
||||||
LD HL,(BUFFERS.ENDPATHSRC)
|
|
||||||
LD DE,BUF_MARKDIR.DIR_NAME
|
|
||||||
CALL .ADDNAME2PATH
|
|
||||||
LD (BUFFERS.ENDPATHSRC),DE ; ¤à¥á 墮áâ ¯ã⨠¨áâ®ç¨ª
|
|
||||||
; ¤®¡ ¢«¥¨¥ ¨¬¥¨ ¤¨àë ¤«ï ª®¯¨à®¢ ¨ï ¢ ¯ãâì ¯à¨¥¬¨ª
|
|
||||||
LD HL,(BUFFERS.ENDPATHDST)
|
|
||||||
LD DE,BUF_MARKDIR.DIR_NAME
|
|
||||||
CALL .ADDNAME2PATH
|
|
||||||
LD (BUFFERS.ENDPATHDST),DE
|
|
||||||
XOR A
|
|
||||||
LD (BUFFERS.LEVEL_DIR),A
|
|
||||||
; ¢ë室
|
|
||||||
POP AF
|
|
||||||
SETPORT WINSP.CPU3,,0
|
|
||||||
POP IY
|
|
||||||
POP IX
|
|
||||||
RET
|
|
||||||
|
|
||||||
; ¤®¡ ¢«¥¨¥ ¨¬¥¨ ¢ áâப㠯ãâ¨
|
|
||||||
; HL - ªã¤ ¤®¡ ¢«ïâì (墮áâ ⥪ã饣® ¯ãâ¨)
|
|
||||||
; DE - ®âªã¤ ¨¬ï ¡à âì
|
|
||||||
.ADDNAME2PATH CALL .CHECK_BSLASH
|
|
||||||
LD (HL),'\\'
|
|
||||||
INC HL
|
|
||||||
EX DE,HL
|
|
||||||
; ª®¯¨à®¢ ¨¥ ¨¬¥¨ ¨§ ¡ãä¥à
|
|
||||||
.COPYNAME2PATH XOR A
|
|
||||||
.CNP2 CP (HL)
|
|
||||||
JR Z,.CNP1
|
|
||||||
LDI
|
|
||||||
JR .CNP2
|
|
||||||
|
|
||||||
.CNP1 LD (DE),A
|
|
||||||
RET
|
|
||||||
|
|
||||||
;.NAME2DIRNAME
|
|
||||||
|
|
||||||
; ¯à®¢¥àª BACKSLASH
|
|
||||||
.CHECK_BSLASH DEC HL
|
|
||||||
LD A,(HL)
|
|
||||||
CP '\\'
|
|
||||||
RET Z
|
|
||||||
INC HL
|
|
||||||
RET
|
|
||||||
|
|
||||||
; ®âá¥ç¥¨¥ ¯à®¡¥«®¢ ¢ ¨¬¥¨
|
|
||||||
.CUTOFFSPACES LD A,' '
|
|
||||||
.COS2 DEC HL
|
|
||||||
CP (HL)
|
|
||||||
JR Z,.COS2
|
|
||||||
INC HL
|
|
||||||
LD (HL),0
|
|
||||||
RET
|
|
||||||
|
|
||||||
; á®§¤ ¨¥ ¯ ¯®ª ¯à¨¥¬¨ª¥
|
|
||||||
; HL - ¤à¥á ®¯¨á â¥«ï ¤¨àë ¢ áâà ¨æ¥ ¯ ¥«¨ ª®â®àãî ª®¯¨à®¢ âì
|
|
||||||
MkdirsDstRR PUSH IX
|
|
||||||
PUSH IY
|
|
||||||
GETPORT WINSP.CPU3
|
|
||||||
PUSH AF
|
|
||||||
LD (.OLDSP),SP
|
|
||||||
PUSH HL
|
|
||||||
BIT PANELFLAG.B_SIDE,(IY + PANEL.PANELFLAG)
|
|
||||||
LD DE,RightPanel ; ¤«ï ¯ã⨠ªã¤ ª®¯¨à®¢ âì
|
|
||||||
LD A,(RAMPAGES.LEFTPANEL) ; ¨§ ª ª®© áâà ¨æë ¯ ¥«¨ ¡à âì ¯ãâì
|
|
||||||
JR Z,.L1
|
|
||||||
LD DE,LeftPanel ; ¤«ï ¯ã⨠ªã¤ ª®¯¨à®¢ âì
|
|
||||||
LD A,(RAMPAGES.RIGHTPANEL) ; ¨§ ª ª®© áâà ¨æë ¯ ¥«¨ ¡à âì ¯ãâì
|
|
||||||
.L1
|
|
||||||
; ¢ª«îç ¥¬ ¯ £ã á ¤¨à¥ªâ®à¨¥© ⥪ã饩 ¯ ¥«¨
|
|
||||||
SETPORT WINSP.CPU3,,0
|
|
||||||
LD HL,PANEL.CURR_PATH
|
|
||||||
ADD HL,DE ; ®âªã¤ ¯ãâì ¯à¨¥¬¨ª ¢§ïâì
|
|
||||||
LD DE,BUFFERS.CURRPATHDST ; ¡ãä¥à ¯ã⨠¯à¨¥¬¨ª
|
|
||||||
CALL .COPYNAME2PATH
|
|
||||||
LD (BUFFERS.ENDPATHDST),DE ; ¤à¥á 墮áâ ¯ã⨠¯à¨¥¬¨ª
|
|
||||||
; á®åà ¥¨¥ ⥪ã饣® ¯ã⨠¤«ï ¢®§¢à â
|
|
||||||
SPDSS DSSF.CURDISK
|
|
||||||
LD HL,BUFFERS.OLDPATH ; á®åà ¥ë© ¯ãâì ¤«ï ¢®§¢à â
|
|
||||||
ADD A,'A'
|
|
||||||
LD (HL),A
|
|
||||||
INC HL
|
|
||||||
LD (HL),':'
|
|
||||||
INC HL
|
|
||||||
SPDSS DSSF.CURDIR
|
|
||||||
POP DE ; ¤à¥á ®¯¨á â¥«ï ¤¨àë ¢ áâà ¨æ¥ ¯ ¥«¨ ª®â®àãî ª®¯¨à®¢ âì
|
|
||||||
; JP C,ERROR ;CountingDirR.END_COUNT
|
|
||||||
; ª®¯¨à®¢ ¨¥ ¨¬¥¨ ¤¨à¥ªâ®à¨¨ ¤«ï ª®¯¨à®¢ ¨ï
|
|
||||||
LD HL,FileHDR.Name
|
|
||||||
ADD HL,DE
|
|
||||||
LD DE,BUF_MARKDIR.DIR_NAME
|
|
||||||
LD BC,FileHDR.Name_Size
|
|
||||||
LDIR ; § ¡à «¨ ¨¬ï ¤¨àë ¤«ï ª®¯¨à®¢ ¨ï
|
|
||||||
EX DE,HL
|
|
||||||
CALL .CUTOFFSPACES ; ®âá¥ç¥¨¥ ¯à®¡¥«®¢
|
|
||||||
; ¯¥à¥®á ⥪ã饣® ¯ã⨠¨áâ®ç¨ª
|
|
||||||
LD HL,BUFFERS.OLDPATH
|
|
||||||
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
|
|
||||||
|
|
||||||
; á®§¤ ¨¥ ¤¨àë ¢ ¯à¨¥¬¨ª¥
|
|
||||||
LD HL,BUFFERS.CURRPATHDST
|
|
||||||
SPDSS DSSF.MKDIR ; á®§¤ «¨ ¤¨à㠯ਥ¬¨ª
|
|
||||||
JR NC,.L3
|
|
||||||
CP ERR_DSS.DIR_EXISTS ; ¥á«¨ ¤¨à 㦥 ¥áâì ¨£®à¨¬ ®è¨¡ªã
|
|
||||||
; JP C,ERROR
|
|
||||||
.L3
|
|
||||||
|
|
||||||
; TODO 横«¨ç¥áª¨© ¯®¨áª ¤¨à¥ªâ®à¨© á á®§¤ ¨¥¬ ¯à¨¥¬¨ª¥
|
|
||||||
LD HL,BUFFERS.CURRPATHSRC
|
|
||||||
SPDSS DSSF.CHDIR ; ¢å®¤ ¢ ¤¨àã ¨áâ®ç¨ª
|
|
||||||
CALL .FINDFIRSTSRCDIR ; ¯®¨áª ¯¥à¢®£® ®¯¨á ⥫ï
|
|
||||||
JP C,.ENDCOPY ; ¡®«ìè¥ ¤¨à¥ªâ®à¨© ¥â, ¢ë室¨¬
|
|
||||||
; ¯®¨áª ¤¨à¥ªâ®à¨©
|
|
||||||
.L2 CALL .FINDNEXTSRCDIR ; ¯®¨áª á«¥¤ãî饣® ®¯¨á ⥫ï
|
|
||||||
JP C,.ENDFINDNEXT ; ¯®¨áª ®ª®ç¥?
|
|
||||||
LD HL,BUFFERS.FINDBUF + FFIRST.Name
|
|
||||||
LD A,(HL)
|
|
||||||
CP '.' ; ®¯¨á ⥫¨ "." ¨ ".." ¨£®à¨¬
|
|
||||||
JR Z,.L2
|
|
||||||
LD DE,.TMPNAMEDIR
|
|
||||||
PUSH DE
|
|
||||||
CALL .COPYNAME2PATH
|
|
||||||
LD HL,(BUFFERS.ENDPATHDST)
|
|
||||||
POP DE
|
|
||||||
CALL .ADDNAME2PATH
|
|
||||||
LD HL,BUFFERS.CURRPATHDST
|
|
||||||
SPDSS DSSF.MKDIR ; á®§¤ ¥¬ ¤¨à㠯ਥ¬¨ª¥
|
|
||||||
; JP C,ERROR
|
|
||||||
LD HL,BUFFERS.CURRPATHSRC
|
|
||||||
SPDSS DSSF.CHDIR ; ¢®§¢à é ¥¬ ¯ãâì ¨áâ®ç¨ª
|
|
||||||
; JP C,ERROR
|
|
||||||
JR .L2 ; ¨é¥¬ á«¥¤ãî騩
|
|
||||||
|
|
||||||
; § ¢¥à襨¥ ¨ ¢ë室
|
|
||||||
JP CountingDirR.END_COUNT;RestoreDIR
|
|
||||||
|
|
||||||
; LD A,(RAMPAGES.FLX)
|
|
||||||
; SETPORT WINSP.CPU3,,0
|
|
||||||
|
|
||||||
.ENDFINDNEXT
|
|
||||||
JR $
|
|
||||||
|
|
||||||
; ¯®¨áª ¯¥à¢®© ¤¨àë ¢ ⥪ã饩 ¯®¤¤¨à¥ªâ®à¨¨
|
|
||||||
.FINDFIRSTSRCDIR
|
|
||||||
LD HL,BUF_MARKDIR.FILES_MASK
|
|
||||||
LD DE,BUFFERS.FINDBUF
|
|
||||||
SPDSS DSSF.F_FIRST,1,DIR.M_Dir
|
|
||||||
RET
|
|
||||||
|
|
||||||
.FINDNEXTSRCDIR
|
|
||||||
LD DE,BUFFERS.FINDBUF
|
|
||||||
SPDSS DSSF.F_NEXT
|
|
||||||
RET
|
|
||||||
|
|
||||||
; ¤®¡ ¢«¥¨¥ ¨¬¥¨ ¢ áâப㠯ãâ¨
|
|
||||||
; HL - ªã¤ ¤®¡ ¢«ïâì (墮áâ ⥪ã饣® ¯ãâ¨)
|
|
||||||
; DE - ®âªã¤ ¨¬ï ¡à âì
|
|
||||||
.ADDNAME2PATH CALL .CHECK_BSLASH
|
|
||||||
LD (HL),'\\'
|
|
||||||
INC HL
|
|
||||||
EX DE,HL
|
|
||||||
; ª®¯¨à®¢ ¨¥ ¨¬¥¨ ¨§ ¡ãä¥à
|
|
||||||
.COPYNAME2PATH XOR A
|
|
||||||
.CNP2 CP (HL)
|
|
||||||
JR Z,.CNP1
|
|
||||||
LDI
|
|
||||||
JR .CNP2
|
|
||||||
|
|
||||||
.CNP1 LD (DE),A
|
|
||||||
RET
|
|
||||||
|
|
||||||
;.NAME2DIRNAME
|
|
||||||
|
|
||||||
; ¯à®¢¥àª BACKSLASH
|
|
||||||
.CHECK_BSLASH DEC HL
|
|
||||||
LD A,(HL)
|
|
||||||
CP '\\'
|
|
||||||
RET Z
|
|
||||||
INC HL
|
|
||||||
RET
|
|
||||||
|
|
||||||
; ®âá¥ç¥¨¥ ¯à®¡¥«®¢ ¢ ¨¬¥¨
|
|
||||||
.CUTOFFSPACES LD A,' '
|
|
||||||
.COS2 DEC HL
|
|
||||||
CP (HL)
|
|
||||||
JR Z,.COS2
|
|
||||||
INC HL
|
|
||||||
LD (HL),0
|
|
||||||
RET
|
|
||||||
|
|
||||||
; ®âá¥ç¥¨¥ ¨¬¥¨ ¤¨àë ¢ áâப¥ ¯ãâ¨
|
|
||||||
.DELNAME2PATH LD A,'\\'
|
|
||||||
.COB1 DEC HL
|
|
||||||
CP (HL)
|
|
||||||
JR NZ,.COB1
|
|
||||||
LD (HL),0
|
|
||||||
RET
|
|
||||||
|
|
||||||
; ¢ë室 ¨§ ª®¯¨à®¢ ¨ï ¤¨à¥ªâ®à¨©
|
|
||||||
.ENDCOPY LD SP,0
|
|
||||||
.OLDSP EQU $-2
|
|
||||||
LD HL,BUFFERS.OLDPATH
|
|
||||||
SPDSS DSSF.CHDIR
|
|
||||||
POP AF
|
|
||||||
SETPORT WINSP.CPU3,,0
|
|
||||||
POP IY
|
|
||||||
POP IX
|
|
||||||
RET
|
|
||||||
|
|
||||||
;.ENDPATHSRC DW 0 ; ¤à¥á 墮áâ ¯ã⨠¨áâ®ç¨ª
|
|
||||||
;.ENDPATHDST DW 0 ; ¤à¥á 墮áâ ¯ã⨠¯à¨¥¬¨ª
|
|
||||||
.TMPNAMEDIR DB 8 DUP 0
|
|
||||||
ENDIF
|
|
||||||
|
|
||||||
; C:/DEV/
|
|
||||||
; /CAMEL401
|
|
||||||
; /DEMON
|
|
||||||
; /MASM80
|
|
||||||
; /OASM028
|
|
||||||
; /SOLID
|
|
||||||
; /DOC
|
|
||||||
; /EXAMPLES
|
|
||||||
; /INCLUDE
|
|
||||||
; /SRC
|
|
||||||
; /CLIB
|
|
||||||
; /BUILD
|
|
||||||
; /SPFORTH
|
|
||||||
; /F83
|
|
||||||
; /F99
|
|
||||||
; /TASM
|
|
||||||
|
|
||||||
; DEV
|
|
||||||
; ..
|
|
||||||
; CAMEL401
|
|
||||||
; DEMON
|
|
||||||
; MASM80
|
|
||||||
; OASM028
|
|
||||||
; SOLID
|
|
||||||
; SPFORTH
|
|
||||||
; TASM
|
|
||||||
; ..
|
|
||||||
; DOC
|
|
||||||
; EXAMPLES
|
|
||||||
; INCLUDE
|
|
||||||
; SRC
|
|
||||||
; ..
|
|
||||||
; CLIB
|
|
||||||
; ..
|
|
||||||
; BUILD
|
|
||||||
; ..
|
|
||||||
; F83
|
|
||||||
; F99
|
|
||||||
|
|
||||||
;DEV/CAMEL401/ 25
|
|
||||||
;DEV/DEMON/ 2
|
|
||||||
;DEV/MASM/ 10
|
|
||||||
;DEV/OASM28/ 5
|
|
||||||
;DEV/SOLID/ 8
|
|
||||||
;DEV/SOLID/DOC/ 13
|
|
||||||
;DEV/SOLID/EXAMPLES/ 36
|
|
||||||
;DEV/SOLID/INCLUDE/ 16
|
|
||||||
;DEV/SOLID/SRC/CLIB/ 12
|
|
||||||
;DEV/SOLID/SRC/CLIB/BUILD/ 8
|
|
||||||
;DEV/SPFORTH/F83/ 4
|
|
||||||
;DEV/SPFORTH/F99/ 3
|
|
||||||
;DEV/TASM/ 6
|
|
||||||
;-----------------------------------
|
|
||||||
; 0x94 148
|
|
||||||
|
|
||||||
; £¥¥à æ¨ï ᯨ᪠¤«ï ª®¯¨à®¢ ¨ï ¤¨à
|
|
||||||
; "." ¤«ï ¢ë室 ¢ ¯à¥¤ë¤ãéãî ¤¨àã
|
|
||||||
; 0 ª®¥æ ᯨáª
|
|
||||||
; ¨¬¥ ¤¨à ¯® 8 ᨬ¢®«®¢ (¬®¦® ¨ 8.3) ⮫쪮 ¨¬¥ ¡¥§ 0 ¢ ª®æ¥ ¨¬¥¨
|
|
||||||
|
|
||||||
; ¯à¨ ª®¯¨à®¢ ¨¨ ©¤¥ ¤¨à
|
|
||||||
; § ¥á¥¨¥ ¢ ¯ãâì ¨áâ®ç¨ª ¨¬¥¨ ¤¨àë
|
|
||||||
; § ¥á¥¨¥ ¢ ¯ãâì ¯à¨¥¬¨ª ¨¬¥¨ ¤¨àë
|
|
||||||
; § ¥á¥¨¥ ¢ ᯨ᮪ ".." ¤«ï ¢ë室
|
|
||||||
|
|||||||
105
rez3_fnmisc.a80
105
rez3_fnmisc.a80
@ -1,5 +1,5 @@
|
|||||||
|
|
||||||
; LAST UPDATE: 14.08.2025 savelij
|
; LAST UPDATE: 02.09.2025 savelij
|
||||||
|
|
||||||
;[]==========================================================[]
|
;[]==========================================================[]
|
||||||
VersionR
|
VersionR
|
||||||
@ -57,21 +57,23 @@ FileInfoR LD A,(IY+PANEL.FILES_ALL)
|
|||||||
LD A,(RAMPAGES.RIGHTPANEL)
|
LD A,(RAMPAGES.RIGHTPANEL)
|
||||||
.L1
|
.L1
|
||||||
SETPORT WINSP.CPU3,,0
|
SETPORT WINSP.CPU3,,0
|
||||||
LD L,(IY+PANEL.FIRST_FILE)
|
; LD L,(IY+PANEL.FIRST_FILE)
|
||||||
LD H,(IY+PANEL.FIRST_FILE + 1)
|
; LD H,(IY+PANEL.FIRST_FILE + 1)
|
||||||
LD E,(IY+PANEL.CURR_FILE)
|
; LD E,(IY+PANEL.CURR_FILE)
|
||||||
LD D,(IY+PANEL.CURR_FILE + 1)
|
; LD D,(IY+PANEL.CURR_FILE + 1)
|
||||||
ADD HL,DE
|
; ADD HL,DE
|
||||||
ADD HL,HL
|
; ADD HL,HL
|
||||||
ADD HL,HL
|
; ADD HL,HL
|
||||||
ADD HL,HL
|
; ADD HL,HL
|
||||||
LD E,L
|
; LD E,L
|
||||||
LD D,H
|
; LD D,H
|
||||||
ADD HL,HL
|
; ADD HL,HL
|
||||||
ADD HL,DE
|
; ADD HL,DE
|
||||||
LD A,H
|
; LD A,H
|
||||||
OR 0xC0
|
; OR 0xC0
|
||||||
LD H,A
|
; LD H,A
|
||||||
|
LD A,HIGH (CPU3)
|
||||||
|
CALL GET_HANDLE_ADR
|
||||||
LD DE,WorkBuffer
|
LD DE,WorkBuffer
|
||||||
LD BC,0x0018
|
LD BC,0x0018
|
||||||
LDIR
|
LDIR
|
||||||
@ -697,21 +699,23 @@ PrintFileR LD A,(IY+PANEL.FILES_ALL)
|
|||||||
LD A,(RAMPAGES.RIGHTPANEL)
|
LD A,(RAMPAGES.RIGHTPANEL)
|
||||||
.L1
|
.L1
|
||||||
SETPORT WINSP.CPU3,,0
|
SETPORT WINSP.CPU3,,0
|
||||||
LD L,(IY+PANEL.FIRST_FILE)
|
; LD L,(IY+PANEL.FIRST_FILE)
|
||||||
LD H,(IY+PANEL.FIRST_FILE + 1)
|
; LD H,(IY+PANEL.FIRST_FILE + 1)
|
||||||
LD E,(IY+PANEL.CURR_FILE)
|
; LD E,(IY+PANEL.CURR_FILE)
|
||||||
LD D,(IY+PANEL.CURR_FILE + 1)
|
; LD D,(IY+PANEL.CURR_FILE + 1)
|
||||||
ADD HL,DE
|
; ADD HL,DE
|
||||||
ADD HL,HL
|
; ADD HL,HL
|
||||||
ADD HL,HL
|
; ADD HL,HL
|
||||||
ADD HL,HL
|
; ADD HL,HL
|
||||||
LD E,L
|
; LD E,L
|
||||||
LD D,H
|
; LD D,H
|
||||||
ADD HL,HL
|
; ADD HL,HL
|
||||||
ADD HL,DE
|
; ADD HL,DE
|
||||||
LD A,H
|
; LD A,H
|
||||||
OR 0xC0
|
; OR 0xC0
|
||||||
LD H,A
|
; LD H,A
|
||||||
|
LD A,HIGH (CPU3)
|
||||||
|
CALL GET_HANDLE_ADR
|
||||||
LD DE,WorkBuffer
|
LD DE,WorkBuffer
|
||||||
LD BC,0x0018
|
LD BC,0x0018
|
||||||
LDIR
|
LDIR
|
||||||
@ -955,3 +959,42 @@ PrnFileName: DB 13 DUP 0
|
|||||||
PrnFileLen: DB 4 DUP 0
|
PrnFileLen: DB 4 DUP 0
|
||||||
PrnMIndef: DB 0
|
PrnMIndef: DB 0
|
||||||
PrnFHandle: DB 0
|
PrnFHandle: DB 0
|
||||||
|
|
||||||
|
;[]==========================================================[]
|
||||||
|
QuitConfirmWin
|
||||||
|
MAKEWINDOW WINSUBOBJ.STORE
|
||||||
|
W_MAIN 208,88,224,50
|
||||||
|
W_FILL 4,2,216,10,COLORI.BLACK
|
||||||
|
W_TEXT 104,3,COLORI.WHITE,"Quit"
|
||||||
|
W_TEXT 28,19,COLORP.HIGHGRAY,"Do you want quit Flex Navigator ?"
|
||||||
|
W_BUTTON 32,32,72,14
|
||||||
|
W_TEXT 58,35,COLORP.HIGHGRAY,"Yes"
|
||||||
|
W_BUTTON 120,32,72,14
|
||||||
|
W_TEXT 150,35,COLORP.HIGHGRAY,"No"
|
||||||
|
W_END
|
||||||
|
.Loop LD IX,REZ3TAB.QuitTab
|
||||||
|
CALL CheckCoordsMouse
|
||||||
|
SPDSS DSSF.SCANKEY
|
||||||
|
JR Z,.Loop
|
||||||
|
LD A,B
|
||||||
|
OR A
|
||||||
|
JR NZ,.Loop
|
||||||
|
LD A,E
|
||||||
|
CP 0x1B
|
||||||
|
JR Z,.Abort
|
||||||
|
CP 0x0D
|
||||||
|
JR Z,.OK
|
||||||
|
RES 5,A
|
||||||
|
CP 'Y'
|
||||||
|
JR Z,.OK
|
||||||
|
CP 'N'
|
||||||
|
JR NZ,.Loop
|
||||||
|
.Abort
|
||||||
|
WINDOWCLOSE
|
||||||
|
SCF
|
||||||
|
RET
|
||||||
|
|
||||||
|
.OK
|
||||||
|
WINDOWCLOSE
|
||||||
|
OR A
|
||||||
|
RET
|
||||||
|
|||||||
@ -1,15 +1,15 @@
|
|||||||
|
|
||||||
; LAST UPDATE: 13.08.2025 savelij
|
; LAST UPDATE: 15.08.2025 savelij
|
||||||
|
|
||||||
;[]==========================================================[]
|
;[]==========================================================[]
|
||||||
InitExtention: LD HL,INIFILES.ExtName1
|
InitExtention: LD HL,INIFILES.ExtName1
|
||||||
LD DE,BUFFERS.fn_ext
|
LD DE,REZ3_BUFFERS.fn_ext
|
||||||
CALL InitExt
|
CALL InitExt
|
||||||
LD HL,INIFILES.ExtName2
|
LD HL,INIFILES.ExtName2
|
||||||
LD DE,BUFFERS.fnview_ext
|
LD DE,REZ3_BUFFERS.fnview_ext
|
||||||
CALL InitExt
|
CALL InitExt
|
||||||
LD HL,INIFILES.ExtName3
|
LD HL,INIFILES.ExtName3
|
||||||
LD DE,BUFFERS.fnedit_ext
|
LD DE,REZ3_BUFFERS.fnedit_ext
|
||||||
;[]----------------------------------------------------------[]
|
;[]----------------------------------------------------------[]
|
||||||
InitExt: LD (.EXTdata),DE
|
InitExt: LD (.EXTdata),DE
|
||||||
SPDSS DSSF.OPEN,,1
|
SPDSS DSSF.OPEN,,1
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
|
|
||||||
; LAST UPDATE: 14.08.2025 savelij
|
; LAST UPDATE: 15.08.2025 savelij
|
||||||
|
|
||||||
;[]==========================================================[]
|
;[]==========================================================[]
|
||||||
; ”®à¬ â â ¡«¨æë
|
; ”®à¬ â â ¡«¨æë
|
||||||
@ -74,3 +74,13 @@ REZ3TAB
|
|||||||
;[]===============================================================[]
|
;[]===============================================================[]
|
||||||
.PrintFTab: DW 284,356,128,142,%0000000000000001,0,StopPrint,0
|
.PrintFTab: DW 284,356,128,142,%0000000000000001,0,StopPrint,0
|
||||||
DW 0x8000
|
DW 0x8000
|
||||||
|
|
||||||
|
;[]===============================================================[]
|
||||||
|
.QuitTab:
|
||||||
|
DW 240,312,120,134,%0000000000100001,0,QuitConfirmWin.OK,0
|
||||||
|
DW 328,400,120,134,%0000000000100001,0,QuitConfirmWin.Abort,0
|
||||||
|
DW 0,208, 0,256,%0000000000100000,0,QuitConfirmWin.Abort,0
|
||||||
|
DW 432,640, 0,256,%0000000000100000,0,QuitConfirmWin.Abort,0
|
||||||
|
DW 0,640, 0, 88,%0000000000100000,0,QuitConfirmWin.Abort,0
|
||||||
|
DW 0,640,138,256,%0000000000100000,0,QuitConfirmWin.Abort,0
|
||||||
|
DW 0x8000
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user