File-Manager/MAIN.ASM
2025-04-05 01:58:39 +10:00

257 lines
9.3 KiB
NASM
Executable File
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

; <20>®á«¥¤­¥¥ । ªâ¨à®¢ ­¨¥: 4.01.2006
;
; áâà ­¨æ¥ (page_sys_screen) á®åà ­¥­¨ï á¨áâ. íªà ­  ¨ ¢à¥¬¥­­®£®
; á®åà ­¥­¨ï íªà ­  ¬¥­¥¤¦¥à , ¯®  ¤à¥áã #E800 ­ å®¤ïâáï ¡ãä¥àë
; ¤ ­­ëå User-¬¥­î. Žáâ â®ª áâà ­¨æë ¯®á«¥ ¢á¥£® ¬ áᨢ  #0944 ¡ ©â.
;
; <20>ਠ᪠­¨à®¢ ­¨¨ ¯ ¯ª¨ (¯à®æ¥¤ãà  ScanTree), ¤«ï ¢à¥¬. ¡ãä¥à  ¢ë¤¥«ï¥âáï
; 1 áâà ­¨æ  ¯ ¬ïâ¨. <20>®á«¥ ®âà ¡®âª¨ ¯à®æ¥¤ãàë, áâà ­¨æ  ®á¢®¡®¦¤ ¥âáï.
;
EDEPTH equ 36 ; ᫨誮¬ ¡®«ìè ï ¢«®¦. ¯ ¯®ª ¨«¨ >= 1024 ¯ ¯®ª
EUABORT equ 37 ; User abort (®¯¥à æ¨ï ¯à¥à¢ ­  ¯®«ì§®¢ â¥«¥¬)
max_len_comline equ 126;254 ; ¬ ªá. ¤«¨­  ª®¬-áâப¨ (¡®«ìè¥ ­¥ ¤¥« âì)
history_size equ 128;256 ; à §¬¥à history-¡ãä¥à 
; €¤à¥á  ᥪ権 ¢à¥¬. ¬ áᨢ  梥⮢ ¢ ¡ãä¥à¥
tmp_color_list equ work_buffer + 511 - len_color_array ; ­ ç «® ¢à¥¬. ¬ áᨢ 
color_list2 equ tmp_color_list + col_lst1
color_list3 equ color_list2 + col_lst2
color_list4 equ color_list3 + col_lst3
color_list5 equ color_list4 + col_lst4
color_list6 equ color_list5 + col_lst5
color_list7 equ color_list6 + col_lst6
color_list8 equ color_list7 + col_lst7
color_list9 equ color_list8 + col_lst8
color_list10 equ color_list9 + col_lst9
color_list11 equ color_list10 + col_lst10
;len_modul1 equ FM_CORE_BLK.Size ; à §¬¥à ®á­. ª®¤  (#8000)
;len_modul2 equ FM_MOD_0_BLK.Size ; à §¬¥à ¬®¤ã«ï (#0000)
;len_modul3 equ FM_MOD_1_BLK.Size ; à §¬¥à ¬®¤ã«ï (#4000)
;len_modul4 equ FM_SPEC_BLK.Size ; à §¬¥à ᯥª-¬®¤ã«ï (#0000)
;len_modul5 equ FM_FVIEW_BLK.Size ; à §¬¥à ¢ìî¥à  (#4000)
;---- –¢¥â  ¬¥­¥¤¦¥à  ----
; <20> ­¥«ì
color_pointer equ 3Fh ; 㪠§ â¥«ì
color_markpoint equ 3Eh ; ¢ë¤¥«. 㪠§ â¥«ì
color_panel equ 1Bh ; ¯ ­¥«ì/ᯨ᮪ ä ©«®¢
color_markfile equ 1Eh ; ¯®¬¥ç. ä ©«ë ᯨ᪠
color_seltitle equ 3Fh ; ¢ë¤¥«. â¨â« ¯ ­¥«¨
color_title equ 1Eh ; â¨â« ª®«®­®ª ¯ ­¥«¨
color_markline equ 3Eh ; ¨­ä®à¬. áâப  ®â¬¥ç. ä ©«®¢
color_highlighted_info equ 1Eh ; ¤ ­­ë¥ ¢ info/qview ¯ ­¥«ïå
color_info_names equ 1Fh ; ä ©«ë/¯ãâì ¢ info/qview ¯ ­¥«ïå
; ƒ®à¨§. ¬¥­î
color_hmenu equ 30h ; ¬¥­î
color_hmenu_pointer equ 0Fh ; 㪠§ â¥«ì
color_hmenu_hotkey equ 0Eh ; hot-¡ãª¢ë
; Pull-¬¥­î
color_vmenu equ 3Fh ; popup-¬¥­î
color_vmenu_pointer equ 0Fh ; 㪠§ â¥«¨ ¬¥­î
color_vmenu_hotkey equ 0Eh ; hot-¡ãª¢ë ¬¥­î (¬«.­¨¡¡«)
; Key-¡ à
kb_f equ 30h ; ¯ã­ªâë
kb_b equ 0Eh ; hot-ç¨á« 
; Š®¬ ­¤­ ï áâப 
color_comline equ 07h
; „¨ «. ®ª­ 
color_dial_win equ 70h ; ¤¨ «. ®ª­ 
color_dial_hotkey equ 0Eh ; hot-¡ãª¢ ¤¨ «. ®ª®­
color_sel_dial_title equ 30h ; Selected title ®¡ê¥ªâ  ¤¨ «. ®ª­ 
color_info_win equ 70h ; info-®ª­ 
color_warn_win equ 4Fh ; warning/errors ®ª­ 
color_listbox equ 17h ; ListBox
color_list_point equ 2Fh ; 㪠§ â¥«ï ListBox- 
color_list_hpoint equ 1Eh ; ¯®á«¥ 㪠§ â¥«ï
color_vscrl_bar equ 13h ; áªà®««-¡ à  ListBox- 
color_inputline equ 30h ; áâப  ¢¢®¤ 
color_selbuttons equ 30h ; ¢ë¤¥«. ¡ãâ®­
color_selbuttons_err equ 70h ; ¢ë¤¥«. ¡ãâ®­ Warning/Errors ®ª®­
color_shadow equ 03h ; â¥­ì ®ª®­ (­¥ ­ áâà ¨¢ ¥âáï)
; ‚ìî¥à
color_viewer equ 1Bh ; Normal text
color_viewer_seltext equ 30h ; Selected text
color_viewer_status equ 30h ; Status line
color_viewer_scrl_arrow equ 1Eh ; Scrolling arrows
; <20>¥¤ ªâ®à
color_editor equ 1Bh ; Normal text
color_edit_seltext equ 30h ; Selected text
color_edit_status equ 30h ; Status line
; Žª­® ¯®¬®é¨
color_help equ 30h ; Normal text
color_help_seltext equ 3Eh ; Highlighted text
color_help_title equ 3Fh ; Title
color_help_scrl_bar equ 30h ; Scrollbar
; Žáâ «ì­®¥
color_process_line equ 30h ; «¨­¥©ª  ¯à®æ¥áá 
color_clock equ 30h ; ç áë
; <20> áªà áª  ä ©«®¢
color_folder equ 1Fh ; ¯ ¯ª¨
color_exe equ 1Ah ; ¨á¯®«­ï¥¬ë¥ ä ©«ë (exe,bat)
color_archive equ 1Dh ;  à娢ë
color_ro equ 17h ; ä ©«ë r/o, system
color_hidden equ 13h ; áªàëâë¥ ä ©«ë
color_spec equ 1Ch ; ᯥª-ä ©«ë (trd, scl)
ORG 0
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;=======================================================================
; Žá­®¢­®© Œ®¤ã«ì CORE
;=======================================================================
; ¢á¥£¤  ¯®¤ª«î祭
;
DISP #8000
FM_CORE_BLK.Start EQU $
include "core/_core_.asm"
FM_CORE_BLK:
.End EQU $
.Size EQU .End - .Start
ENT
;
DISPLAY "CORE ",/H,FM_CORE_BLK.Start," ",/H,FM_CORE_BLK.End," ",/A,FM_CORE_BLK.Size
;=======================================================================
;=======================================================================
; <09>®¤£à㦠¥¬ë© Œ®¤ã«ì 0
; „à ©¢¥àë ª« ¢ë, ¬ë誨, ®¡à ¡®â稪 ¤¨ «. ®ª®­, tv-®¡ê¥ªâë
;=======================================================================
; ¢á¥£¤  ¯®¤ª«î祭 (ªà®¬¥ ¢ë§®¢®¢ rst 10h, rst 18h)
;
DISP 0
FM_MOD_0_BLK.Start EQU $
include 'mod0/vectors.asm' ; ¢¥ªâ®àë ¯à¥à뢠­¨©
include 'mod0/keybdrv.asm' ; ¤à ©¢¥à ª« ¢ë
include 'mod0/cursor.asm' ; ¯à®£à ¬¬­ë© ªãàá®à
include 'mod0/mousedrv.asm' ; ¤à ©¢¥à ¬ë誨
include 'mod0/objs/dialog.asm' ; ®¡à ¡®â稪 ¤¨ «. ®ª®­
include 'mod0/objs/button.asm' ; ®¡ê¥ªâ ~Button~
include 'mod0/objs/inline.asm' ; ®¡ê¥ªâë ~Input Line~, ~Inp Line~
include 'mod0/objs/listbox.asm' ; ®¡ê¥ªâ ~List Box~
include 'mod0/objs/radio.asm' ; ®¡ê¥ªâë ~Radio Button~, ~Check Box~
include 'mod0/objs/process.asm' ; ®¡ê¥ªâ ~Process Line~
include 'mod0/objs/pallete.asm' ; ®¡ê¥ªâ ~Pallete~
include 'mod0/objs/dialog1.asm' ; ®¡ê¥ªâë ~Text Line~, ~Horiz. Line~
include 'mod0/objs/hmenu.asm' ; Œ¥­î: "Horizontal", "Pull", "Select disk"
include 'mod0/objs/umenu.asm' ; ¢ë§®¢ User-Menu
include 'mod0/chdisk.asm' ; ¢ë§®¢ ¬¥­î Select Disk
include 'mod0/listdrv.asm' ; ¨­¨æ. ᯨ᮪ ⨯®¢ ¤¨áª®¢
include 'mod0/usermenu.asm' ; ¯®¤£®â®¢ª  Œ¥­î <20>®«ì§®¢ â¥«ï
FM_MOD_0_BLK:
.End EQU $
.Size EQU .End - .Start
ENT
;
DISPLAY "MODULE 0 ",/H,FM_MOD_0_BLK.Start," ",/H,FM_MOD_0_BLK.End," ",/A,FM_MOD_0_BLK.Size
;=======================================================================
;=======================================================================
; <09>®¤£à㦠¥¬ë© Œ®¤ã«ì 1
;=======================================================================
; ¯®áâ®ï­­® ¢ª«î祭, ªà®¬¥ ¢ë§®¢  ¢ìî¥à 
;
DISP #4000
FM_MOD_1_BLK.Start EQU $
include 'mod1/buffers.asm' ; à ¡. ¡ãä¥àë ®¡ê¥ªâ®¢
include 'mod1/comline.asm' ; ª®¬-áâப 
include 'mod1/width.asm' ; ®£à ­. ¤«¨­ë ¯ã⨠¯ ­¥«¨
include 'mod1/sort.asm' ; á®àâ¨à®¢ª  ᯨ᪠
include 'mod1/tree.asm' ; ᪠­¨à®¢ ­¨¥ ¯ ¯ª¨
include 'mod1/pullcmnd.asm' ; ¯¥à¥å®¤ë ­  ¢ë¯®«­. pull-¯ã­ªâ®¢
include 'mod1/seldrv.asm' ; ¢ë¡®à «¥¢®£®/¯à ¢®£® ¤¨áª®¢ ¯ ­¥«¥©
include 'mod1/intrface.asm' ; ­ áâனª  "Interface settings"
include 'mod1/confirm.asm' ; ­ áâனª  "Confirmations"
include 'mod1/color.asm' ; ­ áâனª  "Colors"
include 'mod1/setcolor.asm' ; ­ áâனª  梥⮢ ”Œ
include 'mod1/panels.z80' ; ®¯¨á â¥«¨ ä®à¬ â®¢ ¯ ­¥«¥©
include 'mod1/info.z80' ; ®¯¨á â¥«ì info-¯ ­¥«¨
include 'mod1/info2.z80' ; ®¯¨á â¥«ì info-¯ ­¥«¨ ᯥª-ä®à¬ â 
include 'mod1/qview.z80' ; ®¯¨á â¥«ì qview-¯ ­¥«¨
include 'mod1/hmenu.z80' ; ®¯¨á â¥«¨ £®à¨§/pull ¬¥­î
include 'mod1/chdisk.z80' ; ®¯¨á â¥«ì ®ª­  Select Disk
include 'mod1/umenu.z80' ; ®¯¨á â¥«ì ®ª­  User Menu
include 'mod1/intrface.z80' ; ®¯¨á â¥«ì ®ª­  "Interface settings"
include 'mod1/confirm.z80' ; ®¯¨á â¥«ì ®ª­  "Confirmations"
include 'mod1/color.z80' ; ®¯¨á â¥«ì ®ª­  "Colors"
include 'mod1/quit.z80' ; ®¯¨á â¥«ì ®ª­  ¢ë室  ¨§ ”Œ
include 'mod1/space.z80' ; ®¯¨á â¥«ì ®ª­  "Calc. free space disk"
include 'mod1/abort.z80' ; ®¯¨á â¥«ì ®ª­  "Operation has been interrupted"
include 'mod1/dialerr.z80' ; ®¯¨á â¥«¨ ®ª®­ ®è¨¡®ª
include 'mod1/copy.z80' ; ®¯¨á â¥«¨ ®ª®­ ª®¯¨à®¢ ­¨ï
include 'mod1/mkdir.z80' ; ®¯¨á â¥«ì ®ª­  á®§¤ ­¨ï ¯ ¯ª¨
include 'mod1/delete.z80' ; ®¯¨á â¥«ì ®ª­  㤠«¥­¨¥ ä ©« /¯ ¯ª¨
include 'mod1/rename.z80' ; ®¯¨á â¥«ì ®ª­  ¯¥à¥¨¬¥­. ä ©« 
FM_MOD_1_BLK:
.End EQU $
.Size EQU .End - .Start
ENT
;
DISPLAY "MODULE 1 ",/H,FM_MOD_1_BLK.Start," ",/H,FM_MOD_1_BLK.End," ",/A,FM_MOD_1_BLK.Size
;=======================================================================
;=======================================================================
; <09>®¤£à㦠¥¬ë© Œ®¤ã«ì 3. ‘¯¥ª-ª®¤
;=======================================================================
; ¯®¤ª«. ­  ¢à¥¬ï ¢ë§®¢  ᯥª-ä㭪権
;
DISP 0
FM_SPEC_BLK.Start EQU $
include 'spec_fn/vect.asm' ; ¢¥ªâ®àë
include 'spec_fn/funcs.asm' ; ᯥª-ä㭪樨
FM_SPEC_BLK:
.End EQU $
.Size EQU .End - .Start
ENT
;
DISPLAY "SPEC_FN ",/H,FM_SPEC_BLK.Start," ",/H,FM_SPEC_BLK.End," ",/A,FM_SPEC_BLK.Size
;=======================================================================
; ;===========================================================
; ; <09>®¤£à㦠¥¬ë© Œ®¤ã«ì 4. ‚ìî¥à
; ;===========================================================
; ; ¯®¤ª«. ­  ¢à¥¬ï ¢ë§®¢  ¢ìî¥à 
; ;
; DISP #4000
; FM_FVIEW_BLK.Start EQU $
; include 'fview/fview.asm' ; ¢ìî¥à
; include 'fview/msfview.asm' ; ᮡëâ¨ï ¬ë誨
; include 'fview/setview.asm' ; ­ áâனª  ¢ìî¥à 
; include 'fview/chfont.asm' ; win-1251, koi8-r ª®¤®¢ë¥ â ¡«¨æë
; include 'fview/fview.z80' ; ®¯¨á â¥«ì ®ª­  "Reading file..."
; FM_FVIEW_BLK:
; .End EQU $
; .Size EQU .End - .Start
; ENT
; ;
; DISPLAY "FVIEW ",/H,FM_FVIEW_BLK.Start," ",/H,FM_FVIEW_BLK.End," ",/A,FM_FVIEW_BLK.Size
; ;=======================================================================