mirror of
https://github.com/Tolik-Trek/File-Manager.git
synced 2026-06-15 09:21:37 +03:00
прибираемся
This commit is contained in:
parent
9c17418f43
commit
f3f3ac6df0
@ -12,7 +12,7 @@ enable_clock:
|
|||||||
call get_systime ; ã§ âì á¨áâ. ¢à¥¬ï
|
call get_systime ; ã§ âì á¨áâ. ¢à¥¬ï
|
||||||
ld de,clock_string ; ¡ãä¥à ç ᮢ
|
ld de,clock_string ; ¡ãä¥à ç ᮢ
|
||||||
ld hl,0301h ; á 0-© áâப¨
|
ld hl,0301h ; á 0-© áâப¨
|
||||||
in a,(89h)
|
in a,(PORT_Y)
|
||||||
ld b,a ; á®åà. ¯®àâ
|
ld b,a ; á®åà. ¯®àâ
|
||||||
in a,(SLOT0)
|
in a,(SLOT0)
|
||||||
ld c,a ; á®åà.¯®àâ
|
ld c,a ; á®åà.¯®àâ
|
||||||
@ -20,7 +20,7 @@ enable_clock:
|
|||||||
ld a,50h ; ¢¨¤¥®-áâà ¨æ
|
ld a,50h ; ¢¨¤¥®-áâà ¨æ
|
||||||
out (SLOT0),a
|
out (SLOT0),a
|
||||||
ld a,75+81h ; +0 (ᬥé. á«¥¢ )
|
ld a,75+81h ; +0 (ᬥé. á«¥¢ )
|
||||||
out (89h),a ; ª®«®ª
|
out (PORT_Y),a ; ª®«®ª
|
||||||
; ¢ë¢®¤ ⥪áâ
|
; ¢ë¢®¤ ⥪áâ
|
||||||
ld d,d ; ãáâ. à §¬¥à ¡«®ª
|
ld d,d ; ãáâ. à §¬¥à ¡«®ª
|
||||||
ld a,5 ; ¤«¨ áâப¨
|
ld a,5 ; ¤«¨ áâப¨
|
||||||
@ -34,7 +34,7 @@ enable_clock:
|
|||||||
; ¢ë¢®¤ âਡã⮢
|
; ¢ë¢®¤ âਡã⮢
|
||||||
ld de,clock_attr ; áâப âਡã⮢
|
ld de,clock_attr ; áâப âਡã⮢
|
||||||
ld a,75+81h ; +0 (ᬥé. á«¥¢ )
|
ld a,75+81h ; +0 (ᬥé. á«¥¢ )
|
||||||
out (89h),a
|
out (PORT_Y),a
|
||||||
inc hl ; ¯¥à¥©â¨ âਡãâë
|
inc hl ; ¯¥à¥©â¨ âਡãâë
|
||||||
ld d,d ; ãáâ. à §¬¥à ¡«®ª
|
ld d,d ; ãáâ. à §¬¥à ¡«®ª
|
||||||
ld a,5 ; ¤«¨ áâப¨
|
ld a,5 ; ¤«¨ áâப¨
|
||||||
@ -46,7 +46,7 @@ enable_clock:
|
|||||||
ld (hl),a
|
ld (hl),a
|
||||||
ld b,b ; ¢ëª«. ªá¥«ì
|
ld b,b ; ¢ëª«. ªá¥«ì
|
||||||
ld a,b
|
ld a,b
|
||||||
out (89h),a ; ¢®ááâ. ¯®àâ
|
out (PORT_Y),a ; ¢®ááâ. ¯®àâ
|
||||||
ld a,c
|
ld a,c
|
||||||
out (SLOT0),a ; ¢®ááâ. ¯®àâ
|
out (SLOT0),a ; ¢®ááâ. ¯®àâ
|
||||||
ei
|
ei
|
||||||
@ -10,7 +10,7 @@ PR: push iy
|
|||||||
rst 08h
|
rst 08h
|
||||||
ld hl,work_buffer+33;256
|
ld hl,work_buffer+33;256
|
||||||
ld c,1Eh
|
ld c,1Eh
|
||||||
rst 10h
|
rst ToDSS
|
||||||
;ld hl,work_buffer+256
|
;ld hl,work_buffer+256
|
||||||
;xor a
|
;xor a
|
||||||
;ld c,a
|
;ld c,a
|
||||||
@ -23,7 +23,7 @@ PR: push iy
|
|||||||
;
|
;
|
||||||
ld hl,work_buffer+33;256
|
ld hl,work_buffer+33;256
|
||||||
ld c,5Ch
|
ld c,5Ch
|
||||||
rst 10h
|
rst ToDSS
|
||||||
ld a," "
|
ld a," "
|
||||||
call symb
|
call symb
|
||||||
ld a," "
|
ld a," "
|
||||||
@ -64,7 +64,7 @@ PR2: push iy
|
|||||||
rst 08h
|
rst 08h
|
||||||
pop hl;
|
pop hl;
|
||||||
;ld c,5Ch
|
;ld c,5Ch
|
||||||
;rst 10h
|
;rst ToDSS
|
||||||
;ld a," "
|
;ld a," "
|
||||||
;call symb
|
;call symb
|
||||||
;ld a," "
|
;ld a," "
|
||||||
@ -81,7 +81,7 @@ delete_yes1:
|
|||||||
ld a,(hl)
|
ld a,(hl)
|
||||||
ld hl,temp_fname ; ¨¬ï ä ©« /¯ ¯ª¨
|
ld hl,temp_fname ; ¨¬ï ä ©« /¯ ¯ª¨
|
||||||
ld bc,0116h ; ãáâ. âਡãâ ä ©«
|
ld bc,0116h ; ãáâ. âਡãâ ä ©«
|
||||||
rst 10h
|
rst ToDSS
|
||||||
delete1:
|
delete1:
|
||||||
; ᪮¯¨à. ¨¬ï ä ©« /¯ ¯ª¨ ¢ ®¯¨á â¥«ì ¨ä®-®ª
|
; ᪮¯¨à. ¨¬ï ä ©« /¯ ¯ª¨ ¢ ®¯¨á â¥«ì ¨ä®-®ª
|
||||||
ld hl,delete_name ; ®âªã¤
|
ld hl,delete_name ; ®âªã¤
|
||||||
@ -98,7 +98,7 @@ delete_try:
|
|||||||
jr nz,$+4 ; ¤
|
jr nz,$+4 ; ¤
|
||||||
ld c,0Eh ; 㤠«¨âì ä ©«
|
ld c,0Eh ; 㤠«¨âì ä ©«
|
||||||
ld hl,temp_fname ; ¨¬ï ä ©« /¯ ¯ª¨
|
ld hl,temp_fname ; ¨¬ï ä ©« /¯ ¯ª¨
|
||||||
rst 10h
|
rst ToDSS
|
||||||
; § ªàëâì ¨ä®-®ª®
|
; § ªàëâì ¨ä®-®ª®
|
||||||
push af
|
push af
|
||||||
call CloseWinSimple
|
call CloseWinSimple
|
||||||
@ -178,7 +178,7 @@ del_full_fold_rec:
|
|||||||
; 㤠«¨âì ¯ ¯ªã
|
; 㤠«¨âì ¯ ¯ªã
|
||||||
ld hl,work_buffer ; ªã¤ (¢ ª®¥æ áâப¨)
|
ld hl,work_buffer ; ªã¤ (¢ ª®¥æ áâப¨)
|
||||||
ld c,1Ch ; 㤠«¨âì ¯ ¯ªã
|
ld c,1Ch ; 㤠«¨âì ¯ ¯ªã
|
||||||
rst 10h
|
rst ToDSS
|
||||||
; § ªàëâì ¨ä®-®ª®
|
; § ªàëâì ¨ä®-®ª®
|
||||||
call CloseWinSimple
|
call CloseWinSimple
|
||||||
or a
|
or a
|
||||||
@ -254,13 +254,13 @@ delete_file:
|
|||||||
inc hl ; +33 (¨¬ï ä ©« )
|
inc hl ; +33 (¨¬ï ä ©« )
|
||||||
ld bc,0116h ; ãáâ. âਡãâ ä ©«
|
ld bc,0116h ; ãáâ. âਡãâ ä ©«
|
||||||
push af
|
push af
|
||||||
rst 10h
|
rst ToDSS
|
||||||
pop af
|
pop af
|
||||||
delete_file_next:
|
delete_file_next:
|
||||||
ld c,0Eh ; 㤠«¨âì ä ©«
|
ld c,0Eh ; 㤠«¨âì ä ©«
|
||||||
delete_file_next1:
|
delete_file_next1:
|
||||||
ld hl,work_buffer+33 ; ¨¬ï ä ©«
|
ld hl,work_buffer+33 ; ¨¬ï ä ©«
|
||||||
rst 10h
|
rst ToDSS
|
||||||
push af
|
push af
|
||||||
; § ªàëâì ¨ä®-®ª®
|
; § ªàëâì ¨ä®-®ª®
|
||||||
call CloseWinSimple
|
call CloseWinSimple
|
||||||
@ -278,7 +278,7 @@ delete_folder:
|
|||||||
;
|
;
|
||||||
ld hl,work_buffer+33
|
ld hl,work_buffer+33
|
||||||
ld c,1Eh ; ã§ âì ¯ãâì
|
ld c,1Eh ; ã§ âì ¯ãâì
|
||||||
rst 10h
|
rst ToDSS
|
||||||
; ¢ë¢®¤ ¨ä®-®ª
|
; ¢ë¢®¤ ¨ä®-®ª
|
||||||
ld hl,dial_delete_current
|
ld hl,dial_delete_current
|
||||||
call WinSimple ; ®âªàëâì ®ª®
|
call WinSimple ; ®âªàëâì ®ª®
|
||||||
@ -11,7 +11,7 @@ Press_Enter:
|
|||||||
push af
|
push af
|
||||||
ld de,work_buffer ; ªã¤
|
ld de,work_buffer ; ªã¤
|
||||||
ld bc,0044h ; 11 -> 8.3
|
ld bc,0044h ; 11 -> 8.3
|
||||||
rst 10h
|
rst ToDSS
|
||||||
pop af
|
pop af
|
||||||
and 10h
|
and 10h
|
||||||
jp z,Launch_File ; ¢ë¯®«¨âì ä ©« (launch.asm)
|
jp z,Launch_File ; ¢ë¯®«¨âì ä ©« (launch.asm)
|
||||||
@ -95,7 +95,7 @@ return_to_parent:
|
|||||||
ld hl,work_buffer+127;255 ; ®âªã¤
|
ld hl,work_buffer+127;255 ; ®âªã¤
|
||||||
ld de,temp_fname ; ªã¤ (launch.asm)
|
ld de,temp_fname ; ªã¤ (launch.asm)
|
||||||
ld bc,0144h
|
ld bc,0144h
|
||||||
rst 10h
|
rst ToDSS
|
||||||
; ¯®§¨æ. 㪠§ â¥«ì ¨¬ï ¯ ¯ª¨
|
; ¯®§¨æ. 㪠§ â¥«ì ¨¬ï ¯ ¯ª¨
|
||||||
call calc_index_name ; ¢ëç¨á«¨âì ¨¤¥ªá ¨¬¥¨
|
call calc_index_name ; ¢ëç¨á«¨âì ¨¤¥ªá ¨¬¥¨
|
||||||
call set_pointer ; à áç. ¯®«®¦. 㪠§ ⥫ï/ᯨáª
|
call set_pointer ; à áç. ¯®«®¦. 㪠§ ⥫ï/ᯨáª
|
||||||
@ -46,7 +46,7 @@ file_viewer:
|
|||||||
ret c
|
ret c
|
||||||
ld de,temp_fname ; ªã¤
|
ld de,temp_fname ; ªã¤
|
||||||
ld bc,0044h ; 11 -> 8.3
|
ld bc,0044h ; 11 -> 8.3
|
||||||
rst 10h
|
rst ToDSS
|
||||||
ret c
|
ret c
|
||||||
;ld (evcomb_stack+1),sp ; á®åà. á⥪
|
;ld (evcomb_stack+1),sp ; á®åà. á⥪
|
||||||
ld a,(page_viewer) ; áâà. ¢ìî¥à
|
ld a,(page_viewer) ; áâà. ¢ìî¥à
|
||||||
@ -171,16 +171,16 @@ get_info_data:
|
|||||||
; ¯à®ç¨â âì BPB ¤¨áª
|
; ¯à®ç¨â âì BPB ¤¨áª
|
||||||
ld a,(disk) ; ®¬¥à ¤¨áª
|
ld a,(disk) ; ®¬¥à ¤¨áª
|
||||||
ld c,1 ; open device
|
ld c,1 ; open device
|
||||||
rst 18h
|
rst ToDSS.DRV
|
||||||
jr c,get_inf_data_err
|
jr c,get_inf_data_err
|
||||||
ld a,(disk)
|
ld a,(disk)
|
||||||
ld de,work_buffer ; ¡ãä¥à
|
ld de,work_buffer ; ¡ãä¥à
|
||||||
ld c,4 ; get BPB
|
ld c,4 ; get BPB
|
||||||
rst 18h
|
rst ToDSS.DRV
|
||||||
push af
|
push af
|
||||||
ld a,(disk) ; ®¬¥à ¤¨áª
|
ld a,(disk) ; ®¬¥à ¤¨áª
|
||||||
ld c,2 ; close device
|
ld c,2 ; close device
|
||||||
rst 18h
|
rst ToDSS.DRV
|
||||||
pop af
|
pop af
|
||||||
jr c,get_inf_data_err
|
jr c,get_inf_data_err
|
||||||
; ¡ ©â ä®à¬ â ®á¨â¥«ï
|
; ¡ ©â ä®à¬ â ®á¨â¥«ï
|
||||||
@ -202,12 +202,12 @@ get_inf_data_err:
|
|||||||
jr nc,get_inf_data1 ; ¬¥âª ¢ BPB
|
jr nc,get_inf_data1 ; ¬¥âª ¢ BPB
|
||||||
; floppy, ¬¥âª - § ¯¨áì ä ©«
|
; floppy, ¬¥âª - § ¯¨áì ä ©«
|
||||||
ld c,1 ; ãáâ. ¤¨áª
|
ld c,1 ; ãáâ. ¤¨áª
|
||||||
rst 10h
|
rst ToDSS
|
||||||
ld hl,scan_mask ; "*.*" ¨¬ï ¯®¨áª ¬¥âª¨ ⮬
|
ld hl,scan_mask ; "*.*" ¨¬ï ¯®¨áª ¬¥âª¨ ⮬
|
||||||
ld de,work_buffer+127;255
|
ld de,work_buffer+127;255
|
||||||
ld a,8 ; âਡãâ ¬¥âª¨ ⮬
|
ld a,8 ; âਡãâ ¬¥âª¨ ⮬
|
||||||
ld bc,0019h ; F_FIRST, ä®à¬ â "FilenameExt"
|
ld bc,0019h ; F_FIRST, ä®à¬ â "FilenameExt"
|
||||||
rst 10h
|
rst ToDSS
|
||||||
jr c,get_inf_data1 ; ¬¥âª¨ ¥â
|
jr c,get_inf_data1 ; ¬¥âª¨ ¥â
|
||||||
ld hl,work_buffer+127+43 ;+255+43 ®âªã¤ (ª®¥æ ¬¥âª¨)
|
ld hl,work_buffer+127+43 ;+255+43 ®âªã¤ (ª®¥æ ¬¥âª¨)
|
||||||
jr $+5
|
jr $+5
|
||||||
@ -220,7 +220,7 @@ get_inf_data1:
|
|||||||
; Ž¡ê¥¬ ¤¨áª
|
; Ž¡ê¥¬ ¤¨áª
|
||||||
ld a,(disk) ; ®¬¥à ¤¨áª
|
ld a,(disk) ; ®¬¥à ¤¨áª
|
||||||
ld c,3 ; ¨ä ® ¤¨áª¥
|
ld c,3 ; ¨ä ® ¤¨áª¥
|
||||||
rst 10h
|
rst ToDSS
|
||||||
jr nc,get_inf_data_ok
|
jr nc,get_inf_data_ok
|
||||||
xor a
|
xor a
|
||||||
ld l,a
|
ld l,a
|
||||||
@ -267,7 +267,7 @@ get_inf_data_ok:
|
|||||||
call decimal32
|
call decimal32
|
||||||
; ‚ᥣ® ¯ ¬ïâ¨
|
; ‚ᥣ® ¯ ¬ïâ¨
|
||||||
ld c,3Ch ; ¨ä®à¬ æ¨ï ® ¯ ¬ïâ¨
|
ld c,3Ch ; ¨ä®à¬ æ¨ï ® ¯ ¬ïâ¨
|
||||||
rst 10h
|
rst ToDSS
|
||||||
push bc
|
push bc
|
||||||
ld ix,info_total_memory ; 0,000,000
|
ld ix,info_total_memory ; 0,000,000
|
||||||
call conv_kbytes ; kbytes -> bytes ¨ ¢ë¢®¤ ¢ ¡ãä¥à
|
call conv_kbytes ; kbytes -> bytes ¨ ¢ë¢®¤ ¢ ¡ãä¥à
|
||||||
@ -369,7 +369,7 @@ conv_kbytes:
|
|||||||
;-------------------------------------------------
|
;-------------------------------------------------
|
||||||
info_get_date:
|
info_get_date:
|
||||||
ld c,21h ; á¨áâ. ¤ â
|
ld c,21h ; á¨áâ. ¤ â
|
||||||
rst 10h
|
rst ToDSS
|
||||||
push ix ; £®¤
|
push ix ; £®¤
|
||||||
push de ; ¤¥ì/¬¥áïæ
|
push de ; ¤¥ì/¬¥áïæ
|
||||||
ld ix,info_date_string ; ¡ãä¥à
|
ld ix,info_date_string ; ¡ãä¥à
|
||||||
@ -84,7 +84,7 @@ print_keybar:
|
|||||||
ld de,keybar_norm ; ⥪áâ
|
ld de,keybar_norm ; ⥪áâ
|
||||||
print_keybar1:
|
print_keybar1:
|
||||||
ld hl,037Dh ; 0301h + (4*31)
|
ld hl,037Dh ; 0301h + (4*31)
|
||||||
in a,(89h)
|
in a,(PORT_Y)
|
||||||
ld b,a ; á®åà. ¯®àâ
|
ld b,a ; á®åà. ¯®àâ
|
||||||
in a,(SLOT0)
|
in a,(SLOT0)
|
||||||
ld c,a ; á®åà.¯®àâ
|
ld c,a ; á®åà.¯®àâ
|
||||||
@ -92,7 +92,7 @@ print_keybar1:
|
|||||||
ld a,50h ; ¢¨¤¥®-áâà ¨æ
|
ld a,50h ; ¢¨¤¥®-áâà ¨æ
|
||||||
out (SLOT0),a
|
out (SLOT0),a
|
||||||
ld a,81h ; +0 (ᬥé. á«¥¢ )
|
ld a,81h ; +0 (ᬥé. á«¥¢ )
|
||||||
out (89h),a ; ª®«®ª
|
out (PORT_Y),a ; ª®«®ª
|
||||||
; ¢ë¢®¤ ⥪áâ
|
; ¢ë¢®¤ ⥪áâ
|
||||||
ld d,d ; ãáâ. à §¬¥à ¡«®ª
|
ld d,d ; ãáâ. à §¬¥à ¡«®ª
|
||||||
ld a,80 ; ¤«¨ áâப¨
|
ld a,80 ; ¤«¨ áâப¨
|
||||||
@ -106,7 +106,7 @@ print_keybar1:
|
|||||||
; ¢ë¢®¤ âਡã⮢
|
; ¢ë¢®¤ âਡã⮢
|
||||||
ld de,keybar_attr ; áâப âਡã⮢
|
ld de,keybar_attr ; áâப âਡã⮢
|
||||||
ld a,81h ; +0 (ᬥé. á«¥¢ )
|
ld a,81h ; +0 (ᬥé. á«¥¢ )
|
||||||
out (89h),a
|
out (PORT_Y),a
|
||||||
inc hl ; ¯¥à¥©â¨ âਡãâë
|
inc hl ; ¯¥à¥©â¨ âਡãâë
|
||||||
ld d,d ; ãáâ. à §¬¥à ¡«®ª
|
ld d,d ; ãáâ. à §¬¥à ¡«®ª
|
||||||
ld a,80 ; ¤«¨ áâப¨
|
ld a,80 ; ¤«¨ áâப¨
|
||||||
@ -118,7 +118,7 @@ print_keybar1:
|
|||||||
ld (hl),a
|
ld (hl),a
|
||||||
ld b,b ; ¢ëª«. ªá¥«ì
|
ld b,b ; ¢ëª«. ªá¥«ì
|
||||||
ld a,b
|
ld a,b
|
||||||
out (89h),a ; ¢®ááâ. ¯®àâ
|
out (PORT_Y),a ; ¢®ááâ. ¯®àâ
|
||||||
ld a,c
|
ld a,c
|
||||||
out (SLOT0),a ; ¢®ááâ. ¯®àâ
|
out (SLOT0),a ; ¢®ááâ. ¯®àâ
|
||||||
ei
|
ei
|
||||||
@ -144,7 +144,7 @@ change_keybar:
|
|||||||
ld de,keybar_shift ; áâப
|
ld de,keybar_shift ; áâப
|
||||||
keybar__:
|
keybar__:
|
||||||
ld hl,037Dh ; 0301h + (4*31)
|
ld hl,037Dh ; 0301h + (4*31)
|
||||||
in a,(89h)
|
in a,(PORT_Y)
|
||||||
ld b,a ; á®åà. ¯®àâ
|
ld b,a ; á®åà. ¯®àâ
|
||||||
in a,(SLOT0)
|
in a,(SLOT0)
|
||||||
ld c,a ; á®åà.¯®àâ
|
ld c,a ; á®åà.¯®àâ
|
||||||
@ -152,7 +152,7 @@ keybar__:
|
|||||||
ld a,50h ; ¢¨¤¥®-áâà ¨æ
|
ld a,50h ; ¢¨¤¥®-áâà ¨æ
|
||||||
out (SLOT0),a
|
out (SLOT0),a
|
||||||
ld a,81h ; +0 (ᬥé. á«¥¢ )
|
ld a,81h ; +0 (ᬥé. á«¥¢ )
|
||||||
out (89h),a ; ª®«®ª
|
out (PORT_Y),a ; ª®«®ª
|
||||||
; ¢ë¢®¤ ⥪áâ
|
; ¢ë¢®¤ ⥪áâ
|
||||||
ld d,d ; ãáâ. à §¬¥à ¡«®ª
|
ld d,d ; ãáâ. à §¬¥à ¡«®ª
|
||||||
ld a,80 ; ¤«¨ áâப¨
|
ld a,80 ; ¤«¨ áâப¨
|
||||||
@ -164,7 +164,7 @@ keybar__:
|
|||||||
ld (hl),a
|
ld (hl),a
|
||||||
ld b,b ; ¢ëª«. ªá¥«ì
|
ld b,b ; ¢ëª«. ªá¥«ì
|
||||||
ld a,b
|
ld a,b
|
||||||
out (89h),a ; ¢®ááâ. ¯®àâ
|
out (PORT_Y),a ; ¢®ááâ. ¯®àâ
|
||||||
ld a,c
|
ld a,c
|
||||||
out (SLOT0),a ; ¢®ááâ. ¯®àâ
|
out (SLOT0),a ; ¢®ááâ. ¯®àâ
|
||||||
ei
|
ei
|
||||||
@ -95,9 +95,9 @@ cut_disk:
|
|||||||
ld hl,work_buffer ; ®âªã¤
|
ld hl,work_buffer ; ®âªã¤
|
||||||
ld de,ComLineBuff+5 ; ªã¤
|
ld de,ComLineBuff+5 ; ªã¤
|
||||||
ld bc,0145h
|
ld bc,0145h
|
||||||
rst 10h
|
rst ToDSS
|
||||||
ld c,1 ; ãáâ. ¤¨áª
|
ld c,1 ; ãáâ. ¤¨áª
|
||||||
rst 10h
|
rst ToDSS
|
||||||
ret
|
ret
|
||||||
|
|
||||||
; ‚뤥«¨âì ¨ ãáâ ®¢¨âì ¯ãâì
|
; ‚뤥«¨âì ¨ ãáâ ®¢¨âì ¯ãâì
|
||||||
@ -106,10 +106,10 @@ cut_path:
|
|||||||
ld de,ComLineBuff+5+2 ; ªã¤
|
ld de,ComLineBuff+5+2 ; ªã¤
|
||||||
push de
|
push de
|
||||||
ld bc,0245h
|
ld bc,0245h
|
||||||
rst 10h
|
rst ToDSS
|
||||||
pop hl
|
pop hl
|
||||||
ld c,1Dh ; ãáâ. ¯ãâì
|
ld c,1Dh ; ãáâ. ¯ãâì
|
||||||
rst 10h
|
rst ToDSS
|
||||||
ret
|
ret
|
||||||
|
|
||||||
; ‚뤥«¨âì ¨¬ï ä ©« ¨§ áâப¨
|
; ‚뤥«¨âì ¨¬ï ä ©« ¨§ áâப¨
|
||||||
@ -117,7 +117,7 @@ cut_filename:
|
|||||||
ld hl,work_buffer ; ®âªã¤
|
ld hl,work_buffer ; ®âªã¤
|
||||||
ld de,temp_fname ; ªã¤
|
ld de,temp_fname ; ªã¤
|
||||||
ld bc,0345h ; ä®à¬ â "file.ext"
|
ld bc,0345h ; ä®à¬ â "file.ext"
|
||||||
rst 10h
|
rst ToDSS
|
||||||
ret
|
ret
|
||||||
|
|
||||||
|
|
||||||
@ -142,7 +142,7 @@ Launch_File:
|
|||||||
ld hl,work_buffer ; ®âªã¤
|
ld hl,work_buffer ; ®âªã¤
|
||||||
ld de,temp_fname ; ªã¤
|
ld de,temp_fname ; ªã¤
|
||||||
ld bc,0445h
|
ld bc,0445h
|
||||||
rst 10h
|
rst ToDSS
|
||||||
bit 3,a ; 㪠§ ¤¨áª ?
|
bit 3,a ; 㪠§ ¤¨áª ?
|
||||||
push af
|
push af
|
||||||
call nz,cut_disk ; ¢ë¤¥«¨âì ¨ ãáâ. ¤¨áª
|
call nz,cut_disk ; ¢ë¤¥«¨âì ¨ ãáâ. ¤¨áª
|
||||||
@ -265,7 +265,7 @@ new_line:
|
|||||||
call $+5
|
call $+5
|
||||||
ld a,0Ah
|
ld a,0Ah
|
||||||
ld c,5Bh ; ¢ë¢®¤ ᨬ¢®« íªà
|
ld c,5Bh ; ¢ë¢®¤ ᨬ¢®« íªà
|
||||||
rst 10h
|
rst ToDSS
|
||||||
ret
|
ret
|
||||||
|
|
||||||
|
|
||||||
@ -285,7 +285,7 @@ call_shell:
|
|||||||
ld (hl),false
|
ld (hl),false
|
||||||
; ¢®ááâ. ¤®á-áâà ¨æã
|
; ¢®ááâ. ¤®á-áâà ¨æã
|
||||||
di
|
di
|
||||||
ld a,(port_82)
|
ld a,(DSS_PAGE)
|
||||||
out (SLOT0),a
|
out (SLOT0),a
|
||||||
ei
|
ei
|
||||||
; ¢®ááâ. á¨áâ¥¬ë© íªà
|
; ¢®ááâ. á¨áâ¥¬ë© íªà
|
||||||
@ -298,12 +298,12 @@ call_shell:
|
|||||||
rst 08h
|
rst 08h
|
||||||
; ¢®ááâ. § 票¥ ¯®àâ
|
; ¢®ááâ. § 票¥ ¯®àâ
|
||||||
ld a,(port_89)
|
ld a,(port_89)
|
||||||
out (89h),a
|
out (PORT_Y),a
|
||||||
; ¢ë¯®«¨âì ä ©«
|
; ¢ë¯®«¨âì ä ©«
|
||||||
ld (stack1+1),sp
|
ld (stack1+1),sp
|
||||||
ld hl,work_buffer+127;255 ; ¨¬ï ä ©«
|
ld hl,work_buffer+127;255 ; ¨¬ï ä ©«
|
||||||
ld bc,0040h
|
ld bc,0040h
|
||||||
rst 10h
|
rst ToDSS
|
||||||
; áªàëâì á¨áâ. ¬ëèªã
|
; áªàëâì á¨áâ. ¬ëèªã
|
||||||
ld c,2
|
ld c,2
|
||||||
rst 30h
|
rst 30h
|
||||||
@ -30,7 +30,7 @@ make_folder:
|
|||||||
ld hl,input_line_makedir+5 ; ®âªã¤
|
ld hl,input_line_makedir+5 ; ®âªã¤
|
||||||
ld de,temp_fname ; ªã¤ (13 ¡ ©â)
|
ld de,temp_fname ; ªã¤ (13 ¡ ©â)
|
||||||
ld bc,0345h
|
ld bc,0345h
|
||||||
rst 10h
|
rst ToDSS
|
||||||
push af
|
push af
|
||||||
push af
|
push af
|
||||||
or a
|
or a
|
||||||
@ -55,7 +55,7 @@ try_make_fold:
|
|||||||
try_make_folder:
|
try_make_folder:
|
||||||
ld hl,temp_fname ; ¨¬ï ¯ ¯ª¨
|
ld hl,temp_fname ; ¨¬ï ¯ ¯ª¨
|
||||||
ld c,1Bh ; á®§¤ âì ¯ ¯ªã
|
ld c,1Bh ; á®§¤ âì ¯ ¯ªã
|
||||||
rst 10h
|
rst ToDSS
|
||||||
jr c,make_fold_err
|
jr c,make_fold_err
|
||||||
; ®¡®¢¨âì ᯨ᮪ ¯ ¥«¥©
|
; ®¡®¢¨âì ᯨ᮪ ¯ ¥«¥©
|
||||||
fresh_two_panels: ;<- ®¡à 饨¥ ¨§ delete.asm
|
fresh_two_panels: ;<- ®¡à 饨¥ ¨§ delete.asm
|
||||||
@ -232,12 +232,12 @@ copy_file:
|
|||||||
; ; ¤®¡ ¢¨âì ¨¬ï ¯ ¯ª¨
|
; ; ¤®¡ ¢¨âì ¨¬ï ¯ ¯ª¨
|
||||||
; ; de=ªã¤
|
; ; de=ªã¤
|
||||||
; ld bc,0044h ; 11 -> 8.3
|
; ld bc,0044h ; 11 -> 8.3
|
||||||
; rst 10h
|
; rst ToDSS
|
||||||
;__tr1: ;
|
;__tr1: ;
|
||||||
; ;call PR;
|
; ;call PR;
|
||||||
; ld hl,work_buffer
|
; ld hl,work_buffer
|
||||||
; ld c,1Dh ; ãáâ. ⥪. ¯ãâì
|
; ld c,1Dh ; ãáâ. ⥪. ¯ãâì
|
||||||
; rst 10h
|
; rst ToDSS
|
||||||
; ;xor a ; ᪠¨à. ¯ ¯ª¨
|
; ;xor a ; ᪠¨à. ¯ ¯ª¨
|
||||||
; ;ld (scan_mode),a ; ०¨¬ à ¡®âë ¯à®æ¥¤ãàë
|
; ;ld (scan_mode),a ; ०¨¬ à ¡®âë ¯à®æ¥¤ãàë
|
||||||
; jp ScanTree ; ᪠¨à. ¯ ¯ªã
|
; jp ScanTree ; ᪠¨à. ¯ ¯ªã
|
||||||
@ -479,9 +479,9 @@ scan_folder_alt:
|
|||||||
ex de,hl ; de=ªã¤
|
ex de,hl ; de=ªã¤
|
||||||
pop hl ; ®âªã¤
|
pop hl ; ®âªã¤
|
||||||
ld bc,0044h ; 11 -> 8.3
|
ld bc,0044h ; 11 -> 8.3
|
||||||
rst 10h
|
rst ToDSS
|
||||||
scan_fold1:
|
scan_fold1:
|
||||||
ld hl,work_buffer
|
ld hl,work_buffer
|
||||||
ld c,1Dh ; ãáâ. ¯ãâì
|
ld c,1Dh ; ãáâ. ¯ãâì
|
||||||
rst 10h
|
rst ToDSS
|
||||||
jp ScanTree ; ᪠¨à. ¯ ¯ªã
|
jp ScanTree ; ᪠¨à. ¯ ¯ªã
|
||||||
@ -86,7 +86,7 @@ read_new_list:
|
|||||||
ld (hl),0
|
ld (hl),0
|
||||||
dec hl
|
dec hl
|
||||||
ld c,1Dh ; ᬥ ⥪. ª â «®£
|
ld c,1Dh ; ᬥ ⥪. ª â «®£
|
||||||
rst 10h
|
rst ToDSS
|
||||||
ret c ; ®è¨¡ª
|
ret c ; ®è¨¡ª
|
||||||
read_nlist:
|
read_nlist:
|
||||||
xor a
|
xor a
|
||||||
@ -110,7 +110,7 @@ read_nlist:
|
|||||||
read_nlist_loop:
|
read_nlist_loop:
|
||||||
ld de,work_buffer ; ªã¤
|
ld de,work_buffer ; ªã¤
|
||||||
ld a,37h ; ¢á¥, ªà®¬¥ ¬¥âª¨ ⮬
|
ld a,37h ; ¢á¥, ªà®¬¥ ¬¥âª¨ ⮬
|
||||||
rst 10h
|
rst ToDSS
|
||||||
ccf
|
ccf
|
||||||
ret nc ; ¡®«ìè¥ ¥â § ¯¨á¥©
|
ret nc ; ¡®«ìè¥ ¥â § ¯¨á¥©
|
||||||
call copy_record ; ᪮¯¨à. § ¯¨áì ¢ ¡ ªã ª â «®£
|
call copy_record ; ᪮¯¨à. § ¯¨áì ¢ ¡ ªã ª â «®£
|
||||||
@ -25,7 +25,7 @@ rename: call test_show_panels ;
|
|||||||
ld hl,temp_fname ; áâ ஥ ¨¬ï
|
ld hl,temp_fname ; áâ ஥ ¨¬ï
|
||||||
ld de,input_line_rename+5 ; ®¢®¥ ¨¬ï
|
ld de,input_line_rename+5 ; ®¢®¥ ¨¬ï
|
||||||
ld c,10h ; ¯¥à¥¨¬¥. ä ©«
|
ld c,10h ; ¯¥à¥¨¬¥. ä ©«
|
||||||
rst 10h
|
rst ToDSS
|
||||||
jp nc,fresh_two_panels ; ¡¥§ ®è¨¡®ª, ®¡®¢¨âì ¯ ¥«¨
|
jp nc,fresh_two_panels ; ¡¥§ ®è¨¡®ª, ®¡®¢¨âì ¯ ¥«¨
|
||||||
;
|
;
|
||||||
; ¢ë¢®¤ ®ª ®è¨¡ª¨ ¯¥à¥¨¬¥®¢ ¨ï
|
; ¢ë¢®¤ ®ª ®è¨¡ª¨ ¯¥à¥¨¬¥®¢ ¨ï
|
||||||
@ -60,7 +60,7 @@ prep_ren_name1:
|
|||||||
; hl=®âªã¤
|
; hl=®âªã¤
|
||||||
ld de,temp_fname ; ªã¤
|
ld de,temp_fname ; ªã¤
|
||||||
ld bc,0044h ; 11 -> 8.3
|
ld bc,0044h ; 11 -> 8.3
|
||||||
rst 10h
|
rst ToDSS
|
||||||
; ®ç¨áâ¨âì áâàãªâãàã ¡ãä¥à
|
; ®ç¨áâ¨âì áâàãªâãàã ¡ãä¥à
|
||||||
ld hl,input_line_rename ; áâàãªâãà ¡ãä¥à
|
ld hl,input_line_rename ; áâàãªâãà ¡ãä¥à
|
||||||
call clear_struct_inline
|
call clear_struct_inline
|
||||||
@ -89,13 +89,13 @@ enable_ini_file:
|
|||||||
ldir
|
ldir
|
||||||
; ãáâ. ®¤¨ ª®¢ë¥ ¤¨áª¨ ¢ ¯ ¥«ïå
|
; ãáâ. ®¤¨ ª®¢ë¥ ¤¨áª¨ ¢ ¯ ¥«ïå
|
||||||
ld c,2 ; ¯®«ãç¨âì ®¬¥à ⥪. ¤¨áª
|
ld c,2 ; ¯®«ãç¨âì ®¬¥à ⥪. ¤¨áª
|
||||||
rst 10h
|
rst ToDSS
|
||||||
ld (disk),a ; ®¬¥à ¤¨áª ªâ. ¯ ¥«¨
|
ld (disk),a ; ®¬¥à ¤¨áª ªâ. ¯ ¥«¨
|
||||||
ld (disk1),a ; ®¬¥à ¤¨áª ¯ áá. ¯ ¥«¨
|
ld (disk1),a ; ®¬¥à ¤¨áª ¯ áá. ¯ ¥«¨
|
||||||
; ãáâ. ®¤¨ ª®¢ë¥ ¯ã⨠¢ ¯ ¥«ïå
|
; ãáâ. ®¤¨ ª®¢ë¥ ¯ã⨠¢ ¯ ¥«ïå
|
||||||
ld hl,buff_left ; ¡ãä¥à ¯ã⨠«¥¢®© ¯ ¥«¨
|
ld hl,buff_left ; ¡ãä¥à ¯ã⨠«¥¢®© ¯ ¥«¨
|
||||||
ld c,1Eh ; ¯®«ãç¨âì ⥪. ¯ãâì
|
ld c,1Eh ; ¯®«ãç¨âì ⥪. ¯ãâì
|
||||||
rst 10h
|
rst ToDSS
|
||||||
ld hl,buff_left ; ¯ãâì «¥¢®© ¯ ¥«¨
|
ld hl,buff_left ; ¯ãâì «¥¢®© ¯ ¥«¨
|
||||||
ld de,buff_right ; ¯ãâì ¯à ¢®© ¯ ¥«¨
|
ld de,buff_right ; ¯ãâì ¯à ¢®© ¯ ¥«¨
|
||||||
jp copy_string ; ᪮¯¨à. áâப㠤® ã«ï (á ã«¥¬)
|
jp copy_string ; ᪮¯¨à. áâப㠤® ã«ï (á ã«¥¬)
|
||||||
@ -201,7 +201,7 @@ read_ini_file:
|
|||||||
ld bc,0146h ; ¯®«ãç¨âì ¯¥à¥¬¥ãî ®ªà㦥¨ï
|
ld bc,0146h ; ¯®«ãç¨âì ¯¥à¥¬¥ãî ®ªà㦥¨ï
|
||||||
ld hl,env_name ; ¨¬ï ¯¥à¥¬¥®©
|
ld hl,env_name ; ¨¬ï ¯¥à¥¬¥®©
|
||||||
ld de,work_buffer ; ¡ãä¥à ¤«ï § ç¥¨ï ¯¥à¥¬¥®©
|
ld de,work_buffer ; ¡ãä¥à ¤«ï § ç¥¨ï ¯¥à¥¬¥®©
|
||||||
rst 10h
|
rst ToDSS
|
||||||
jr c,no_ini_string ; ®è¨¡ª
|
jr c,no_ini_string ; ®è¨¡ª
|
||||||
or a
|
or a
|
||||||
jr nz,read_ini_file__ ; ¯¥à¥¬¥ ï ©¤¥
|
jr nz,read_ini_file__ ; ¯¥à¥¬¥ ï ©¤¥
|
||||||
@ -225,7 +225,7 @@ read_ini_file__:
|
|||||||
ld de,work_buffer+127;255 ; ¡ãä¥à
|
ld de,work_buffer+127;255 ; ¡ãä¥à
|
||||||
ld bc,0119h
|
ld bc,0119h
|
||||||
ld a,20h ; " à娢ë©"
|
ld a,20h ; " à娢ë©"
|
||||||
rst 10h
|
rst ToDSS
|
||||||
pop de ; ª®¥æ áâப¨ ¯¥à¥¬¥®© ®ªà㦥¨ï
|
pop de ; ª®¥æ áâப¨ ¯¥à¥¬¥®© ®ªà㦥¨ï
|
||||||
jr nc,found_ini_file ; ä ©« ©¤¥
|
jr nc,found_ini_file ; ä ©« ©¤¥
|
||||||
no_ini_string:
|
no_ini_string:
|
||||||
@ -237,21 +237,21 @@ found_ini_file:
|
|||||||
ld hl,work_buffer ; ¯®«®¥ ¨¬ï ä ©« (¤¨áª+¯ãâì+¨¬ï)
|
ld hl,work_buffer ; ¯®«®¥ ¨¬ï ä ©« (¤¨áª+¯ãâì+¨¬ï)
|
||||||
ld a,1 ; ç⥨¥
|
ld a,1 ; ç⥨¥
|
||||||
ld c,11h ; ®âªàëâì ä ©«
|
ld c,11h ; ®âªàëâì ä ©«
|
||||||
rst 10h
|
rst ToDSS
|
||||||
jr c,no_ini_string ; ®è¨¡ª ®âªàëâ¨ï
|
jr c,no_ini_string ; ®è¨¡ª ®âªàëâ¨ï
|
||||||
ld (handle_ini_file),a ; á®åà. ¤¥áªà¨¯â®à
|
ld (handle_ini_file),a ; á®åà. ¤¥áªà¨¯â®à
|
||||||
; ¯à®ç¨â âì áâனª¨ ¬¥¥¤¦¥à
|
; ¯à®ç¨â âì áâனª¨ ¬¥¥¤¦¥à
|
||||||
ld hl,work_buffer ; ¡ãä¥à ¯®¤ ¤ ë¥
|
ld hl,work_buffer ; ¡ãä¥à ¯®¤ ¤ ë¥
|
||||||
ld de,size_ini_part1 ; ç¨á«® ç¨â ¥¬ëå ¡ ©â
|
ld de,size_ini_part1 ; ç¨á«® ç¨â ¥¬ëå ¡ ©â
|
||||||
ld c,13h ; ç⥨¥ ä ©«
|
ld c,13h ; ç⥨¥ ä ©«
|
||||||
rst 10h
|
rst ToDSS
|
||||||
jr c,read_ini_error
|
jr c,read_ini_error
|
||||||
; ¯à®ç¨â âì ¯ã⨠«¥¢®© ¨ ¯à ¢®© ¯ ¥«¥©
|
; ¯à®ç¨â âì ¯ã⨠«¥¢®© ¨ ¯à ¢®© ¯ ¥«¥©
|
||||||
ld hl,buff_left ; ¡ãä¥à ¯®¤ ¤ ë¥
|
ld hl,buff_left ; ¡ãä¥à ¯®¤ ¤ ë¥
|
||||||
ld de,256+256 ; 512 ç¨á«® ç¨â ¥¬ëå ¡ ©â
|
ld de,256+256 ; 512 ç¨á«® ç¨â ¥¬ëå ¡ ©â
|
||||||
ld a,(handle_ini_file) ; ¤¥áªà¨¯â®à
|
ld a,(handle_ini_file) ; ¤¥áªà¨¯â®à
|
||||||
ld c,13h ; ç⥨¥ ä ©«
|
ld c,13h ; ç⥨¥ ä ©«
|
||||||
rst 10h
|
rst ToDSS
|
||||||
ld a,true
|
ld a,true
|
||||||
jr nc,read_ini_ok ; ¡¥§ ®è¨¡®ª
|
jr nc,read_ini_ok ; ¡¥§ ®è¨¡®ª
|
||||||
read_ini_error:
|
read_ini_error:
|
||||||
@ -263,16 +263,16 @@ close_ini_file:
|
|||||||
handle_ini_file:
|
handle_ini_file:
|
||||||
db -1
|
db -1
|
||||||
ld c,12h ; § ªàëâì ä ©«
|
ld c,12h ; § ªàëâì ä ©«
|
||||||
rst 10h
|
rst ToDSS
|
||||||
ini_done:
|
ini_done:
|
||||||
restore_sys_path:
|
restore_sys_path:
|
||||||
ld a,(save_disk)
|
ld a,(save_disk)
|
||||||
ld c,1 ; ãáâ. ¤¨áª
|
ld c,1 ; ãáâ. ¤¨áª
|
||||||
rst 10h
|
rst ToDSS
|
||||||
ret c
|
ret c
|
||||||
ld hl,save_path
|
ld hl,save_path
|
||||||
ld c,1Dh ; ãáâ. ª â «®£
|
ld c,1Dh ; ãáâ. ª â «®£
|
||||||
rst 10h
|
rst ToDSS
|
||||||
ret
|
ret
|
||||||
|
|
||||||
|
|
||||||
@ -310,7 +310,7 @@ write_ini_file:
|
|||||||
ld bc,0146h ; ¯®«ãç¨âì ¯¥à¥¬¥ãî ®ªà㦥¨ï
|
ld bc,0146h ; ¯®«ãç¨âì ¯¥à¥¬¥ãî ®ªà㦥¨ï
|
||||||
ld hl,env_name ; ¨¬ï ¯¥à¥¬¥®©
|
ld hl,env_name ; ¨¬ï ¯¥à¥¬¥®©
|
||||||
ld de,work_buffer ; ¡ãä¥à ¤«ï § ç¥¨ï ¯¥à¥¬¥®©
|
ld de,work_buffer ; ¡ãä¥à ¤«ï § ç¥¨ï ¯¥à¥¬¥®©
|
||||||
rst 10h
|
rst ToDSS
|
||||||
ret c ; ®è¨¡ª
|
ret c ; ®è¨¡ª
|
||||||
or a
|
or a
|
||||||
jr nz,write_ini_file__ ; ¯¥à¥¬¥ ï ©¤¥
|
jr nz,write_ini_file__ ; ¯¥à¥¬¥ ï ©¤¥
|
||||||
@ -331,7 +331,7 @@ write_ini_file__:
|
|||||||
ld hl,work_buffer ; ¯®«®¥ ¨¬ï ä ©« (¤¨áª+¯ãâì+¨¬ï)
|
ld hl,work_buffer ; ¯®«®¥ ¨¬ï ä ©« (¤¨áª+¯ãâì+¨¬ï)
|
||||||
ld a,20h ; " à娢ë©"
|
ld a,20h ; " à娢ë©"
|
||||||
ld c,0Ah ; á®§¤ âì ä ©«
|
ld c,0Ah ; á®§¤ âì ä ©«
|
||||||
rst 10h
|
rst ToDSS
|
||||||
jr c,ini_done ; ®è¨¡ª á®§¤ ¨ï
|
jr c,ini_done ; ®è¨¡ª á®§¤ ¨ï
|
||||||
ld (handle_ini_file),a ; á®åà. ¤¥áªà¨¯â®à
|
ld (handle_ini_file),a ; á®åà. ¤¥áªà¨¯â®à
|
||||||
;
|
;
|
||||||
@ -342,21 +342,21 @@ write_ini_file__:
|
|||||||
ld de,size_ini_part1 ; 97 ç¨á«® § ¯¨á. ¡ ©â
|
ld de,size_ini_part1 ; 97 ç¨á«® § ¯¨á. ¡ ©â
|
||||||
ld a,(handle_ini_file) ; ¤¥áªà¨¯â®à
|
ld a,(handle_ini_file) ; ¤¥áªà¨¯â®à
|
||||||
ld c,14h ; § ¯¨áì ä ©«
|
ld c,14h ; § ¯¨áì ä ©«
|
||||||
rst 10h
|
rst ToDSS
|
||||||
jr c,close_ini_file ; § ªàëâì ä ©«
|
jr c,close_ini_file ; § ªàëâì ä ©«
|
||||||
; § ¯¨á âì ¯ãâì «¥¢®© ¯ ¥«¨
|
; § ¯¨á âì ¯ãâì «¥¢®© ¯ ¥«¨
|
||||||
ld hl,(__buff) ; ¤à¥á áâப¨ «¥¢®© ¯ ¥«¨
|
ld hl,(__buff) ; ¤à¥á áâப¨ «¥¢®© ¯ ¥«¨
|
||||||
ld de,256 ; ç¨á«® § ¯¨á. ¡ ©â
|
ld de,256 ; ç¨á«® § ¯¨á. ¡ ©â
|
||||||
ld a,(handle_ini_file) ; ¤¥áªà¨¯â®à
|
ld a,(handle_ini_file) ; ¤¥áªà¨¯â®à
|
||||||
ld c,14h ; § ¯¨áì ä ©«
|
ld c,14h ; § ¯¨áì ä ©«
|
||||||
rst 10h
|
rst ToDSS
|
||||||
jr c,close_ini_file ; § ªàëâì ä ©«
|
jr c,close_ini_file ; § ªàëâì ä ©«
|
||||||
; § ¯¨á âì ¯ãâì ¯à ¢®© ¯ ¥«¨
|
; § ¯¨á âì ¯ãâì ¯à ¢®© ¯ ¥«¨
|
||||||
ld hl,(__buff1) ; ¤à¥á áâப¨ ¯à ¢®© ¯ ¥«¨
|
ld hl,(__buff1) ; ¤à¥á áâப¨ ¯à ¢®© ¯ ¥«¨
|
||||||
ld de,256 ; ç¨á«® § ¯¨á. ¡ ©â
|
ld de,256 ; ç¨á«® § ¯¨á. ¡ ©â
|
||||||
ld a,(handle_ini_file) ; ¤¥áªà¨¯â®à
|
ld a,(handle_ini_file) ; ¤¥áªà¨¯â®à
|
||||||
ld c,14h ; § ¯¨áì ä ©«
|
ld c,14h ; § ¯¨áì ä ©«
|
||||||
rst 10h
|
rst ToDSS
|
||||||
jp close_ini_file ; § ªàëâì ä ©«
|
jp close_ini_file ; § ªàëâì ä ©«
|
||||||
|
|
||||||
|
|
||||||
@ -462,7 +462,7 @@ read_mnu_file:
|
|||||||
ld bc,0146h ; ¯®«ãç¨âì ¯¥à¥¬¥ãî ®ªà㦥¨ï
|
ld bc,0146h ; ¯®«ãç¨âì ¯¥à¥¬¥ãî ®ªà㦥¨ï
|
||||||
ld hl,env_name ; ¨¬ï ¯¥à¥¬¥®©
|
ld hl,env_name ; ¨¬ï ¯¥à¥¬¥®©
|
||||||
ld de,work_buffer ; ¡ãä¥à ¤«ï § ç¥¨ï ¯¥à¥¬¥®©
|
ld de,work_buffer ; ¡ãä¥à ¤«ï § ç¥¨ï ¯¥à¥¬¥®©
|
||||||
rst 10h
|
rst ToDSS
|
||||||
jr c,no_mnu_string ; ®è¨¡ª
|
jr c,no_mnu_string ; ®è¨¡ª
|
||||||
or a
|
or a
|
||||||
jr nz,read_mnu_file__ ; ¯¥à¥¬¥ ï ©¤¥
|
jr nz,read_mnu_file__ ; ¯¥à¥¬¥ ï ©¤¥
|
||||||
@ -486,7 +486,7 @@ read_mnu_file__:
|
|||||||
ld de,work_buffer+127;255 ; ¡ãä¥à
|
ld de,work_buffer+127;255 ; ¡ãä¥à
|
||||||
ld bc,0119h
|
ld bc,0119h
|
||||||
ld a,20h ; " à娢ë©"
|
ld a,20h ; " à娢ë©"
|
||||||
rst 10h
|
rst ToDSS
|
||||||
pop de ; ª®¥æ áâப¨ ¯¥à¥¬¥®© ®ªà㦥¨ï
|
pop de ; ª®¥æ áâப¨ ¯¥à¥¬¥®© ®ªà㦥¨ï
|
||||||
jr nc,found_mnu_file ; ä ©« ©¤¥
|
jr nc,found_mnu_file ; ä ©« ©¤¥
|
||||||
no_mnu_string:
|
no_mnu_string:
|
||||||
@ -498,14 +498,14 @@ found_mnu_file:
|
|||||||
ld hl,work_buffer ; ¯®«®¥ ¨¬ï ä ©« (¤¨áª+¯ãâì+¨¬ï)
|
ld hl,work_buffer ; ¯®«®¥ ¨¬ï ä ©« (¤¨áª+¯ãâì+¨¬ï)
|
||||||
ld a,1 ; ç⥨¥
|
ld a,1 ; ç⥨¥
|
||||||
ld c,11h ; ®âªàëâì ä ©«
|
ld c,11h ; ®âªàëâì ä ©«
|
||||||
rst 10h
|
rst ToDSS
|
||||||
jr c,no_mnu_string ; ®è¨¡ª ®âªàëâ¨ï
|
jr c,no_mnu_string ; ®è¨¡ª ®âªàëâ¨ï
|
||||||
ld (handle_mnu_file),a ; á®åà. ¤¥áªà¨¯â®à
|
ld (handle_mnu_file),a ; á®åà. ¤¥áªà¨¯â®à
|
||||||
; ¯à®ç¨â âì ä ©«
|
; ¯à®ç¨â âì ä ©«
|
||||||
ld hl,array_read ; 0C000h ¡ãä¥à ¯®¤ ¤ ë¥
|
ld hl,array_read ; 0C000h ¡ãä¥à ¯®¤ ¤ ë¥
|
||||||
ld de,73*52 ; 3796 ¬ ªá. ç¨á«® ç¨â ¥¬ëå ¡ ©â
|
ld de,73*52 ; 3796 ¬ ªá. ç¨á«® ç¨â ¥¬ëå ¡ ©â
|
||||||
ld c,13h ; ç⥨¥ ä ©«
|
ld c,13h ; ç⥨¥ ä ©«
|
||||||
rst 10h
|
rst ToDSS
|
||||||
ld a,true
|
ld a,true
|
||||||
jr nc,read_mnu_ok ; ¡¥§ ®è¨¡®ª
|
jr nc,read_mnu_ok ; ¡¥§ ®è¨¡®ª
|
||||||
xor a
|
xor a
|
||||||
@ -518,6 +518,6 @@ read_mnu_ok:
|
|||||||
handle_mnu_file:
|
handle_mnu_file:
|
||||||
db -1
|
db -1
|
||||||
ld c,12h ; § ªàëâì ä ©«
|
ld c,12h ; § ªàëâì ä ©«
|
||||||
rst 10h
|
rst ToDSS
|
||||||
mnu_done:
|
mnu_done:
|
||||||
jp restore_sys_path ; ¢®ááâ. ⥪. ¯ãâì
|
jp restore_sys_path ; ¢®ááâ. ⥪. ¯ãâì
|
||||||
@ -66,13 +66,13 @@ warm_entry:
|
|||||||
; ãáâ. ⥪áâ. ०¨¬ íªà
|
; ãáâ. ⥪áâ. ०¨¬ íªà
|
||||||
ld a,3 ; 80x32x16 梥⮢
|
ld a,3 ; 80x32x16 梥⮢
|
||||||
ld bc,0150h ; b=1 íªà
|
ld bc,0150h ; b=1 íªà
|
||||||
rst 10h
|
rst ToDSS
|
||||||
; á®åà. á¨áâ. íªà
|
; á®åà. á¨áâ. íªà
|
||||||
ld c,0B2h
|
ld c,0B2h
|
||||||
ld a,(page_sys_screen) ; áâà. ¡ãä¥à ®ª
|
ld a,(page_sys_screen) ; áâà. ¡ãä¥à ®ª
|
||||||
call screen__
|
call screen__
|
||||||
ld a,0C0h
|
ld a,0C0h
|
||||||
out (89h),a ; § ªàëâì ᯥª. íªà
|
out (PORT_Y),a ; § ªàëâì ᯥª. íªà
|
||||||
|
|
||||||
; ¨¨â. ¤à ©¢¥à ª« ¢ë
|
; ¨¨â. ¤à ©¢¥à ª« ¢ë
|
||||||
xor a
|
xor a
|
||||||
@ -1699,7 +1699,7 @@ string_line: db 1 ;
|
|||||||
add hl,hl ; 2+2=4
|
add hl,hl ; 2+2=4
|
||||||
add hl,de
|
add hl,de
|
||||||
ld de,string_of_list ; ¤à¥á áâப¨
|
ld de,string_of_list ; ¤à¥á áâப¨
|
||||||
in a,(89h)
|
in a,(PORT_Y)
|
||||||
ld (pnt3__+1),a ; á®åà. ¯®àâ
|
ld (pnt3__+1),a ; á®åà. ¯®àâ
|
||||||
in a,(SLOT0)
|
in a,(SLOT0)
|
||||||
ld (pnt4__+1),a ; á®åà. ¯®àâ
|
ld (pnt4__+1),a ; á®åà. ¯®àâ
|
||||||
@ -1712,7 +1712,7 @@ string_line: db 1 ;
|
|||||||
string_colon: db 0 ; ®¬¥à ª®«®ª¨
|
string_colon: db 0 ; ®¬¥à ª®«®ª¨
|
||||||
add a,81h ; +0 (ᬥé. á«¥¢ )
|
add a,81h ; +0 (ᬥé. á«¥¢ )
|
||||||
add a,b ; + ç «® ¯ ¥«¨
|
add a,b ; + ç «® ¯ ¥«¨
|
||||||
out (89h),a
|
out (PORT_Y),a
|
||||||
ld (pnt1__+1),a
|
ld (pnt1__+1),a
|
||||||
; ¢ë¢®¤ ⥪áâ
|
; ¢ë¢®¤ ⥪áâ
|
||||||
ld d,d ; ãáâ. à §¬¥à ¡«®ª
|
ld d,d ; ãáâ. à §¬¥à ¡«®ª
|
||||||
@ -1748,12 +1748,12 @@ pnt__: ld a,(string_len) ;
|
|||||||
ld b,a
|
ld b,a
|
||||||
pnt1__: ld c,81h ; á®åà. ®¬¥à ª®«®ª¨
|
pnt1__: ld c,81h ; á®åà. ®¬¥à ª®«®ª¨
|
||||||
pnt2__: ld a,c
|
pnt2__: ld a,c
|
||||||
out (89h),a
|
out (PORT_Y),a
|
||||||
ld (hl),e ; âਡãâ
|
ld (hl),e ; âਡãâ
|
||||||
inc c
|
inc c
|
||||||
djnz pnt2__
|
djnz pnt2__
|
||||||
pnt3__: ld a,0
|
pnt3__: ld a,0
|
||||||
out (89h),a ; ¢®ááâ. ¯®àâ
|
out (PORT_Y),a ; ¢®ááâ. ¯®àâ
|
||||||
pnt4__: ld a,0
|
pnt4__: ld a,0
|
||||||
out (SLOT0),a ; ¢®ááâ. ¯®àâ
|
out (SLOT0),a ; ¢®ááâ. ¯®àâ
|
||||||
ei
|
ei
|
||||||
@ -2211,13 +2211,13 @@ set_path_from_activ_panel:
|
|||||||
; ãáâ. ¤¨áª ®â ªâ. ¯ ¥«¨
|
; ãáâ. ¤¨áª ®â ªâ. ¯ ¥«¨
|
||||||
ld a,(disk)
|
ld a,(disk)
|
||||||
ld c,1
|
ld c,1
|
||||||
rst 10h
|
rst ToDSS
|
||||||
ld a,-1
|
ld a,-1
|
||||||
ret c
|
ret c
|
||||||
; ãáâ. ¯ãâì ®â ªâ. ¯ ¥«¨
|
; ãáâ. ¯ãâì ®â ªâ. ¯ ¥«¨
|
||||||
ld hl,(__buff)
|
ld hl,(__buff)
|
||||||
ld c,1Dh
|
ld c,1Dh
|
||||||
rst 10h
|
rst ToDSS
|
||||||
ret nc
|
ret nc
|
||||||
ld a,0
|
ld a,0
|
||||||
ret
|
ret
|
||||||
@ -2228,13 +2228,13 @@ set_path_from_activ_panel:
|
|||||||
set_path_to_activ_panel:
|
set_path_to_activ_panel:
|
||||||
; ãáâ. ¤¨áª ¤«ï ªâ. ¯ ¥«¨
|
; ãáâ. ¤¨áª ¤«ï ªâ. ¯ ¥«¨
|
||||||
ld c,2
|
ld c,2
|
||||||
rst 10h
|
rst ToDSS
|
||||||
ret c
|
ret c
|
||||||
ld (disk),a
|
ld (disk),a
|
||||||
; ãáâ. ¯ãâì ¤«ï ªâ. ¯ ¥«¨
|
; ãáâ. ¯ãâì ¤«ï ªâ. ¯ ¥«¨
|
||||||
ld hl,(__buff)
|
ld hl,(__buff)
|
||||||
ld c,1Eh
|
ld c,1Eh
|
||||||
rst 10h
|
rst ToDSS
|
||||||
ret
|
ret
|
||||||
|
|
||||||
|
|
||||||
@ -2295,7 +2295,7 @@ draw_txt_print1:;
|
|||||||
add hl,hl ; 1+1=2
|
add hl,hl ; 1+1=2
|
||||||
add hl,hl ; 2+2=4
|
add hl,hl ; 2+2=4
|
||||||
add hl,bc
|
add hl,bc
|
||||||
in a,(89h)
|
in a,(PORT_Y)
|
||||||
ld (tdraw4__+1),a ; á®åà. ¯®àâ
|
ld (tdraw4__+1),a ; á®åà. ¯®àâ
|
||||||
in a,(SLOT0)
|
in a,(SLOT0)
|
||||||
ld (tdraw5__+1),a ; á®åà. ¯®àâ
|
ld (tdraw5__+1),a ; á®åà. ¯®àâ
|
||||||
@ -2305,7 +2305,7 @@ draw_txt_print1:;
|
|||||||
db 3Eh ; ld a,..
|
db 3Eh ; ld a,..
|
||||||
tdraw__: db 0 ; ª®«®ª (0..79)
|
tdraw__: db 0 ; ª®«®ª (0..79)
|
||||||
add a,81h ; +0 (ᬥé. á«¥¢ )
|
add a,81h ; +0 (ᬥé. á«¥¢ )
|
||||||
out (89h),a
|
out (PORT_Y),a
|
||||||
ld c,a
|
ld c,a
|
||||||
; ¢ë¢®¤ ⥪áâ
|
; ¢ë¢®¤ ⥪áâ
|
||||||
ld d,d ; ãáâ. à §¬¥à ¡«®ª
|
ld d,d ; ãáâ. à §¬¥à ¡«®ª
|
||||||
@ -2323,13 +2323,13 @@ tdraw1__: db 1 ;
|
|||||||
ex af,af'
|
ex af,af'
|
||||||
ld b,a ; ¤«¨ áâப¨
|
ld b,a ; ¤«¨ áâப¨
|
||||||
ld a,c
|
ld a,c
|
||||||
tdraw2__: out (89h),a
|
tdraw2__: out (PORT_Y),a
|
||||||
tdraw3__: ld (hl),0 ; âਡãâ
|
tdraw3__: ld (hl),0 ; âਡãâ
|
||||||
inc a
|
inc a
|
||||||
inc de
|
inc de
|
||||||
djnz tdraw2__
|
djnz tdraw2__
|
||||||
tdraw4__: ld a,0
|
tdraw4__: ld a,0
|
||||||
out (89h),a ; ¢®ááâ. ¯®àâ
|
out (PORT_Y),a ; ¢®ááâ. ¯®àâ
|
||||||
tdraw5__: ld a,0
|
tdraw5__: ld a,0
|
||||||
out (SLOT0),a ; ¢®ááâ. ¯®àâ
|
out (SLOT0),a ; ¢®ááâ. ¯®àâ
|
||||||
ei
|
ei
|
||||||
@ -2349,7 +2349,7 @@ draw_half_frame:ld hl,0301h+4 ;
|
|||||||
draw_half_frame1:
|
draw_half_frame1:
|
||||||
ld hl,0301h+(4*2) ; á® 2-© áâப¨
|
ld hl,0301h+(4*2) ; á® 2-© áâப¨
|
||||||
ld b,26 ; ç¨á«® áâப
|
ld b,26 ; ç¨á«® áâப
|
||||||
in a,(89h)
|
in a,(PORT_Y)
|
||||||
ld (fdraw3__+1),a ; á®åà. ¯®àâ
|
ld (fdraw3__+1),a ; á®åà. ¯®àâ
|
||||||
in a,(SLOT0)
|
in a,(SLOT0)
|
||||||
ld (fdraw4__+1),a ; á®åà. ¯®àâ
|
ld (fdraw4__+1),a ; á®åà. ¯®àâ
|
||||||
@ -2384,14 +2384,14 @@ fdraw2__: call fdraw_axel
|
|||||||
ld de,midline4 ; «¨¨ï "º º""
|
ld de,midline4 ; «¨¨ï "º º""
|
||||||
call fdraw_axel
|
call fdraw_axel
|
||||||
fdraw3__: ld a,0
|
fdraw3__: ld a,0
|
||||||
out (89h),a ; ¢®ááâ. ¯®àâ
|
out (PORT_Y),a ; ¢®ááâ. ¯®àâ
|
||||||
fdraw4__: ld a,0
|
fdraw4__: ld a,0
|
||||||
out (SLOT0),a ; ¢®ááâ. ¯®àâ
|
out (SLOT0),a ; ¢®ááâ. ¯®àâ
|
||||||
ei
|
ei
|
||||||
ret
|
ret
|
||||||
|
|
||||||
fdraw_axel: ld a,c
|
fdraw_axel: ld a,c
|
||||||
out (89h),a
|
out (PORT_Y),a
|
||||||
ld d,d ; ãáâ. à §¬¥à ¡«®ª
|
ld d,d ; ãáâ. à §¬¥à ¡«®ª
|
||||||
ld a,40 ; ¤«¨ áâப¨
|
ld a,40 ; ¤«¨ áâப¨
|
||||||
ld b,b ; ¢ëª«. ªá¥«ì
|
ld b,b ; ¢ëª«. ªá¥«ì
|
||||||
@ -2406,7 +2406,7 @@ fdraw_axel: ld a,c
|
|||||||
push bc
|
push bc
|
||||||
ld b,40 ; ¤«¨ áâப¨
|
ld b,40 ; ¤«¨ áâப¨
|
||||||
ld a,c
|
ld a,c
|
||||||
fdraw0__: out (89h),a
|
fdraw0__: out (PORT_Y),a
|
||||||
fdraw1__: ld (hl),color_panel ; 1Bh âਡãâ
|
fdraw1__: ld (hl),color_panel ; 1Bh âਡãâ
|
||||||
inc a
|
inc a
|
||||||
djnz fdraw0__
|
djnz fdraw0__
|
||||||
@ -53,7 +53,7 @@ get_free_space:
|
|||||||
; ‚ëç¨á«¨âì ᢮¡. ¬¥áâ® MS-DOS ¤¨áª¥
|
; ‚ëç¨á«¨âì ᢮¡. ¬¥áâ® MS-DOS ¤¨áª¥
|
||||||
;----------------------------------------------------
|
;----------------------------------------------------
|
||||||
ld c,3 ; ¨ä ® ¤¨áª¥
|
ld c,3 ; ¨ä ® ¤¨áª¥
|
||||||
rst 10h
|
rst ToDSS
|
||||||
jr nc,get_free_ok
|
jr nc,get_free_ok
|
||||||
ld bc,0
|
ld bc,0
|
||||||
ld e,c
|
ld e,c
|
||||||
261
CORE/_CORE_.ASM
Normal file
261
CORE/_CORE_.ASM
Normal file
@ -0,0 +1,261 @@
|
|||||||
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||||
|
; •í¤«ë áâà ¨æ ¬¥¥¤¦¥à
|
||||||
|
id_block: db -1 ; ¤¥áªà¨¯â®à ¢ë¤¥«. ¡«®ª ¯ ¬ïâ¨
|
||||||
|
;
|
||||||
|
page_sys_screen: db -1 ; +0 á¨áâ. íªà , +2800h ¤ ë¥ user-menu
|
||||||
|
page_dial_screen: db -1 ; ¡ãä¥à á®åà. ¤¨ «. ®ª® ¨ ¢¥àâ. ¬¥î
|
||||||
|
page_left_dir: db -1 ; ᯨ᮪ «¥¢®© ¯ ¥«¨
|
||||||
|
page_right_dir: db -1 ; ᯨ᮪ ¯à ¢®© ¯ ¥«¨
|
||||||
|
page_manager: db -1 ; ®á. ª®¤ ¬¥¥¤¦¥à
|
||||||
|
page_module0: db -1 ; ¤à ©¢¥àë ª« ¢ë, ¬ë誨, ¤¨ «. ª®¤ á ®¡à ¡.
|
||||||
|
page_module1: db -1 ; ®¯¨á ⥫¨ ¯ ¥«¥©
|
||||||
|
page_spec: db -1 ; áâà ¨æ à §¡®à ᯥª-äãªæ¨©
|
||||||
|
page_viewer: db -1 ; áâà ¨æ ¢ìî¥à
|
||||||
|
;
|
||||||
|
;db -1
|
||||||
|
db 0 ; á⮯-¡ ©â
|
||||||
|
;
|
||||||
|
DSS_PAGE: db -1 ; á®åà. ¯®àâ 82h
|
||||||
|
port_E2: db -1 ; á®åà. ¯®àâ 0E2h
|
||||||
|
port_89: db -1 ; á®åà. ¯®àâ 89h
|
||||||
|
;
|
||||||
|
lastdrive: db 'B'-'A' ; ¯®á«¥¤¨© ¤¨áª ¢ á¨á⥬¥ (0..25)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
;-------------------------------------------------
|
||||||
|
; ‚ë§®¢ „Ž‘-à¥áâ àâ
|
||||||
|
;-------------------------------------------------
|
||||||
|
int10: PUSH AF
|
||||||
|
di
|
||||||
|
ld a,(DSS_PAGE) ; ¤®á-áâà ¨æ
|
||||||
|
out (SLOT0),a
|
||||||
|
ei
|
||||||
|
POP AF
|
||||||
|
rst ToDSS
|
||||||
|
int__: PUSH AF
|
||||||
|
di
|
||||||
|
ld a,(page_module0)
|
||||||
|
out (SLOT0),a ; ¢®ááâ. áâà. ¤à ©¢¥à®¢ ª« ¢ë, ¬ë誨
|
||||||
|
ei
|
||||||
|
POP AF
|
||||||
|
ret
|
||||||
|
|
||||||
|
;-------------------------------------------------
|
||||||
|
; ‚ë§®¢ RST 18h
|
||||||
|
;-------------------------------------------------
|
||||||
|
int18: PUSH AF
|
||||||
|
di
|
||||||
|
ld a,(DSS_PAGE) ; ¤®á-áâà ¨æ
|
||||||
|
out (SLOT0),a
|
||||||
|
ei
|
||||||
|
POP AF
|
||||||
|
rst ToDSS.DRV
|
||||||
|
jr int__
|
||||||
|
|
||||||
|
|
||||||
|
;-------------------------------------------------
|
||||||
|
; ‚ë§®¢ RST 10h ¨§ ᯥª-áâà ¨æë
|
||||||
|
;-------------------------------------------------
|
||||||
|
alt10: PUSH AF
|
||||||
|
di
|
||||||
|
ld a,(DSS_PAGE) ; ¤®á-áâà ¨æ
|
||||||
|
out (SLOT0),a
|
||||||
|
ei
|
||||||
|
POP AF
|
||||||
|
rst ToDSS
|
||||||
|
alt__: PUSH AF
|
||||||
|
di
|
||||||
|
ld a,(page_spec)
|
||||||
|
out (SLOT0),a ; ¢®ááâ. áâà.
|
||||||
|
ei
|
||||||
|
POP AF
|
||||||
|
ret
|
||||||
|
|
||||||
|
;-------------------------------------------------
|
||||||
|
; ‚ë§®¢ RST 18h ¨§ ᯥª-áâà ¨æë
|
||||||
|
;-------------------------------------------------
|
||||||
|
alt18: PUSH AF
|
||||||
|
di
|
||||||
|
ld a,(DSS_PAGE) ; ¤®á-áâà ¨æ
|
||||||
|
out (SLOT0),a
|
||||||
|
ei
|
||||||
|
POP AF
|
||||||
|
rst ToDSS.DRV
|
||||||
|
jr alt__
|
||||||
|
|
||||||
|
|
||||||
|
;-----------------------------------------------------------------------
|
||||||
|
INCLUDE 'fview_core.asm' ; ¯à®æ¥¤ãàë ¢ë室 ¨§ £«ï¤¥«ª¨
|
||||||
|
;-----------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
; à ¡®ç¨© ¡ãä¥à ”Œ
|
||||||
|
work_buffer: ds 512
|
||||||
|
|
||||||
|
|
||||||
|
ds 80
|
||||||
|
stack: ; á⥪ ”Œ
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
begin: ; ã§ âì boot-¤¨áª á¨á⥬ë
|
||||||
|
ld bc,0009h
|
||||||
|
rst ToDSS
|
||||||
|
add a,"A"
|
||||||
|
ld (ccp_name),a ; launch.asm
|
||||||
|
; ¨¨æ. ®¬¥à áâà ¨æ ¢ áâàãªâãà å ¯ ¥«¥©
|
||||||
|
ld a,(page_left_dir)
|
||||||
|
ld (cash_left_dir),a
|
||||||
|
ld a,(page_right_dir)
|
||||||
|
ld (cash_right_dir),a
|
||||||
|
; ¢ª«. ¢ #4000 áâà. ”Œ
|
||||||
|
ld a,(page_module1)
|
||||||
|
out (SLOT1),a
|
||||||
|
; á®åà. ⥪. ¤¨áª
|
||||||
|
ld c,2
|
||||||
|
rst ToDSS
|
||||||
|
ld (save_disk),a
|
||||||
|
; á®åà. ⥪ã騩 ¯ãâì
|
||||||
|
ld hl,save_path
|
||||||
|
ld c,1Eh
|
||||||
|
rst ToDSS
|
||||||
|
|
||||||
|
|
||||||
|
include 'shell.asm' ; ä ©«¥à
|
||||||
|
include 'fillstr.asm' ; § ¯®«¥¨¥ áâப¨ ä ©«¥à
|
||||||
|
include 'event.asm' ; ç⥨¥ ᮡë⨩
|
||||||
|
include 'mouse.asm' ; ¬ëèª
|
||||||
|
include 'keybar.asm' ; key-¡ à
|
||||||
|
include 'clock.asm' ; ç áë ¯ ¥«¥©
|
||||||
|
include 'setup.asm' ; ç⥨¥/§ ¯¨áì ini-ä ©« , mnu-ä ©«
|
||||||
|
include 'space.asm' ; ᢮¡. ®¡ê¥¬ ¤¨áª
|
||||||
|
include 'hilight.asm' ; ¯®¤á¢¥âª ä ©«®¢
|
||||||
|
include 'readdsk.asm' ; ç⥨¥ ®¢®© ¯ ¯ª¨
|
||||||
|
include 'enter.asm' ; ®¡à ¡®âª ¦ â¨ï <Enter>
|
||||||
|
include 'launch.asm' ; § ¯ãáª ä ©«®¢
|
||||||
|
include 'pos.asm' ; ¯®§¨æ. 㪠§ â¥«ï ¯®á«¥ ᬥë ᯨáª
|
||||||
|
include 'utils.asm' ; ¢á¯®¬. ¯à®æ¥¤ãàë
|
||||||
|
include 'copy.asm' ; ª®¯¨à®¢ ¨¥ ä ©«®¢
|
||||||
|
include 'info.asm' ; info-०¨¬ ¯ ¥«¨
|
||||||
|
include 'qview.asm' ; qview-०¨¬ ¯ ¥«¨
|
||||||
|
include 'mkdir.asm' ; á®§¤ ¨¥ ¯ ¯ª¨ (F7)
|
||||||
|
include 'delete.asm' ; 㤠«¥¨¥ ä ©« /¯ ¯ª¨ (F8)
|
||||||
|
include 'rename.asm' ; ¯¥à¥¨¬¥®¢ ¨¥ ä ©« (F6)
|
||||||
|
|
||||||
|
;include 'mod2/debug.asm'
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
; <20>¥¦¨¬ à ¡®âë ¢ìî¥à
|
||||||
|
viewer_mode: db 0 ; 0=®¡ëçë©, 1=¯ ¥«ìë©
|
||||||
|
|
||||||
|
attr_record: db 0 ; âਡãâ ⥪. § ¯¨á¨ ᯨ᪠ª â «®£
|
||||||
|
|
||||||
|
del_confirm: db true ; ä« £ ¯®¤â¢. 㤠«¥¨ï ä ©«®¢/¯ ¯®ª
|
||||||
|
|
||||||
|
flag_del_non_empty:
|
||||||
|
db true ; ä« £ ¯®¤â¢. 㤠«¥¨ï ¥ ¯ãáâëå ¯ ¯®ª
|
||||||
|
|
||||||
|
move_home_end: db false ; ä« £ ®âà ¡®âª¨ Home/End ¯à¨ ®âªà. ¯ ¥«ïå
|
||||||
|
|
||||||
|
enable_mnu_file:db false ; ä« £ «¨ç¨ï mnu-ä ©«
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
;-------------------------------------------------
|
||||||
|
; ‘â ¤ àâë© ¢ë室 ¢ „Ž‘
|
||||||
|
;-------------------------------------------------
|
||||||
|
exit: ld a,b
|
||||||
|
ld (return_code+1),a ; á®åà. ª®¤ ¢®§¢à â
|
||||||
|
; ¢®ááâ. „Ž‘-áâà ¨æã
|
||||||
|
di
|
||||||
|
ld a,(DSS_PAGE)
|
||||||
|
out (SLOT0),a
|
||||||
|
ei
|
||||||
|
; ¯®«®¦. á¨áâ. ¬ë誨 ¯® ¬¥áâ®¬ã ¤à ©¢¥àã
|
||||||
|
Xcoord+1: ld hl,0 ; ª®®à¤¨ â X (0..639)
|
||||||
|
Ycoord+1: ld de,0 ; ª®®à¤¨ â Y (0..255)
|
||||||
|
ld c,4 ; ãáâ. ¯®«®¦. ¬ë誨
|
||||||
|
rst 30h
|
||||||
|
; ãáâ. á¨áâ. ¤¨áª ¨ ¯ãâì ªâ. ¯ ¥«¨
|
||||||
|
call set_path_from_activ_panel
|
||||||
|
; ¢®ááâ. § 票¥ ¯®àâ
|
||||||
|
ld a,(port_89)
|
||||||
|
out (PORT_Y),a
|
||||||
|
; ¢®ááâ. á¨áâ. íªà
|
||||||
|
ld c,0B3h
|
||||||
|
ld a,(page_sys_screen) ; áâà ¨æ ¡ãä¥à
|
||||||
|
call screen__
|
||||||
|
; ¢®ááâ. § 票¥ ¯®àâ
|
||||||
|
ld a,(port_E2)
|
||||||
|
out (SLOT3),a
|
||||||
|
; ¢®ááâ. ¯®«®¦. ªãàá®à á¨áâ. íªà
|
||||||
|
sys_cursor_coords:
|
||||||
|
ld de,0
|
||||||
|
ld c,84h
|
||||||
|
rst 08h
|
||||||
|
; ®á¢®¡. ¢ë¤¥«¥ë© ¡«®ª ¯ ¬ïâ¨
|
||||||
|
ld a,(id_block)
|
||||||
|
ld c,3Eh
|
||||||
|
rst ToDSS
|
||||||
|
; ®ç¨áâ¨âì ¡ãä¥à á¨áâ. ª« ¢ë
|
||||||
|
ld bc,3135h
|
||||||
|
rst ToDSS
|
||||||
|
return_code: ld b,0 ; ª®¤ ¢®§¢à â
|
||||||
|
ld c,41h
|
||||||
|
rst ToDSS
|
||||||
|
ret
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
;-----------------------------------------------------------
|
||||||
|
; ‘®åà ¨âì/¢®ááâ. ¯®«ë© á¨áâ¥¬ë© íªà
|
||||||
|
;-----------------------------------------------------------
|
||||||
|
; ¢å®¤: C = #B2/#B3 á®åà./¢®ááâ. íªà
|
||||||
|
; A = ®¬¥à áâà ¨æë ¡ãä¥à ®ª
|
||||||
|
screen__: ld hl,2050h ; ¢ëá®â /è¨à¨ íªà
|
||||||
|
scrn1__: ld ix,0C000h ; ¤à¥á ¡ãä¥à ¤«ï ¤ ëå
|
||||||
|
scrn2__: ld b,a
|
||||||
|
xor a ; ¨¤¥â¨ä. £«®¡. ®ª
|
||||||
|
ld e,a ; X ¯®«®¦.
|
||||||
|
ld d,a ; Y ¯®«®¦.
|
||||||
|
di
|
||||||
|
rst 08h
|
||||||
|
ei
|
||||||
|
ret
|
||||||
|
|
||||||
|
;-----------------------------------------------------------
|
||||||
|
; ‘®åà ¨âì/¢®ááâ. á¨áâ¥¬ë© íªà ¤® ª®¬. áâப¨
|
||||||
|
;-----------------------------------------------------------
|
||||||
|
; ¢å®¤: C = #B2/#B3 á®åà./¢®ááâ. íªà
|
||||||
|
; A = ®¬¥à áâà ¨æë ¡ãä¥à ®ª (page_sys_screen)
|
||||||
|
screen1__: ld hl,1E50h ; ¢ëá®â /è¨à¨ íªà
|
||||||
|
jr scrn1__
|
||||||
|
|
||||||
|
;-----------------------------------------------------------
|
||||||
|
; ‘®åà ¨âì/¢®ááâ. ¯®«ë© íªà ¬¥¥¤¦¥à
|
||||||
|
;-----------------------------------------------------------
|
||||||
|
; in: c=#B2/#B3 á®åà./¢®ááâ. íªà
|
||||||
|
; a=®¬¥à áâà ¨æë ¡ãä¥à ®ª (page_sys_screen)
|
||||||
|
screen2__: ld hl,2050h ; ¢ëá®â /è¨à¨ íªà
|
||||||
|
ld ix,0C000h+1400h ; ç «® íªà ¬¥¥¤¦¥à
|
||||||
|
jr scrn2__
|
||||||
|
|
||||||
|
;-----------------------------------------------------------
|
||||||
|
; <20>¥áâ àâ ¤«ï Œ¥î ¨ ¤¨ «. ®ª®
|
||||||
|
;-----------------------------------------------------------
|
||||||
|
scrn4__: ld b,a
|
||||||
|
scrn5__: xor a ; ¨¤¥â¨ä. £«®¡. ®ª
|
||||||
|
di
|
||||||
|
rst 08h
|
||||||
|
ei
|
||||||
|
ret
|
||||||
|
|
||||||
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||||
389
FM.ASM
389
FM.ASM
@ -1,245 +1,252 @@
|
|||||||
; ‡ £àã§ç¨ª ”Œ
|
INCLUDE 'shared_includes/constants/Sp2000.inc'
|
||||||
|
INCLUDE 'shared_includes/constants/bios_equ.inc'
|
||||||
|
INCLUDE 'shared_includes/constants/dss_equ.inc'
|
||||||
|
INCLUDE 'version.inc' ; ¢¥àá¨ï ¬¥¥¤¦¥à
|
||||||
include 'shared_includes/constants/Sp2000.inc'
|
|
||||||
include 'shared_includes/constants/bios_equ.inc'
|
|
||||||
include 'shared_includes/constants/dss_equ.inc'
|
|
||||||
include 'version.inc' ; ¢¥àá¨ï ¬¥¥¤¦¥à
|
|
||||||
; include 'fm.exp' ; ᮤ¥à¦¨â "@label" ¬¥âª¨
|
; include 'fm.exp' ; ᮤ¥à¦¨â "@label" ¬¥âª¨
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
org 4100h
|
|
||||||
|
|
||||||
db "EXE" ; exe ID
|
ORG 0
|
||||||
db 0 ; exe ¢¥àá¨ï
|
EXE_HEADER:
|
||||||
dw 512 ; 512, ¬«. ᬥé. ª®¤
|
.START: DB "EXE" ; exe ID
|
||||||
dw 0 ; áâ. ᬥé. ª®¤
|
DB 0 ; exe ¢¥àá¨ï
|
||||||
dw end_loader - entry ; end-beg, ¯¥à¢¨çë© § £àã§ç¨ª
|
DWORD EXE_HEADER.SIZE ; ᬥé. ª®¤
|
||||||
dw 0,0,0 ; १¥à¢
|
DW end_loader-entry ; end-beg, ¯¥à¢¨çë© § £àã§ç¨ª
|
||||||
dw entry ; ¤à¥á § £à㧪¨ ª®¤
|
DW 0,0,0 ; १¥à¢
|
||||||
dw start ; ¤à¥á ¯¥à¥¤ ç¨ ã¯à ¢«¥¨ï
|
DW entry ; ¤à¥á § £à㧪¨ ª®¤
|
||||||
dw start ; ¤à¥á á⥪
|
DW start ; ¤à¥á ¯¥à¥¤ ç¨ ã¯à ¢«¥¨ï
|
||||||
ds 490
|
DW start ; ¤à¥á á⥪
|
||||||
|
;
|
||||||
|
BLOCK 10,' ' ; ‚ëà ¢¨¢ ¨¥ ¤«ï ªà ᨢ®£® ®â®¡à ¦¥¨ï ¢ HEX
|
||||||
|
BYTE 'The File Manager'
|
||||||
|
BYTE ' v ',str_version,' '
|
||||||
|
BYTE 'by Vasil Ivanov '
|
||||||
|
BYTE '(c) 2005-2007. '
|
||||||
|
BYTE ' Modified by '
|
||||||
|
BYTE ' Anatoliy '
|
||||||
|
BYTE ' Belyanskiy, '
|
||||||
|
BYTE ' Sprinter Team '
|
||||||
|
BYTE ' 2025. '
|
||||||
|
.END: ;
|
||||||
|
.SIZE EQU .END - .START
|
||||||
|
|
||||||
entry: db "The File Manager, Version "
|
;
|
||||||
db major_version + "0"
|
ORG #4100
|
||||||
db "."
|
entry: include "fview/viewer.asm"
|
||||||
db (minor_version / 10) + "0"
|
|
||||||
db (minor_version % 10) + "0"
|
|
||||||
db " Copyright (c) 2005-2007 by Vasil Ivanov."
|
|
||||||
|
|
||||||
|
tmp_sp_buffer: BLOCK 64 ; ¤«ï á⥪
|
||||||
|
|
||||||
start:
|
; ‡ £àã§ç¨ª ”Œ
|
||||||
; ®ç¨áâ¨âì ¡ãä¥à ª« ¢ë
|
start: ; ®ç¨áâ¨âì ¡ãä¥à ª« ¢ë
|
||||||
ld bc,3135h
|
LD BC,Dss.ScanKey*256+Dss.K_CLEAR
|
||||||
rst ToDSS
|
RST ToDSS
|
||||||
di
|
DI
|
||||||
; á®åà. § 票¥ ¯®à⮢
|
; á®åà. § 票¥ ¯®à⮢
|
||||||
in a,(SLOT0)
|
IN A,(SLOT0)
|
||||||
ld (port_82__),a
|
LD (DSS_PAGE__),A
|
||||||
in a,(SLOT3)
|
IN A,(SLOT3)
|
||||||
ld (port_E2__),a
|
LD (port_E2__),A
|
||||||
in a,(89h)
|
IN A,(PORT_Y)
|
||||||
ld (port_89__),a
|
LD (port_89__),A
|
||||||
; á®åà. ¤¥áªà¨¯â®à ¬¥¥¤¦¥à
|
; á®åà. ¤¥áªà¨¯â®à ¬¥¥¤¦¥à
|
||||||
ld a,(ix-3)
|
LD A,(ix-3)
|
||||||
ld (hFile),a
|
LD (hFile),A
|
||||||
; § ªàëâì ᯥª. íªà
|
; § ªàëâì ᯥª. íªà
|
||||||
ld a,0C0h
|
LD A,#C0
|
||||||
out (89h),a
|
OUT (PORT_Y),A
|
||||||
; ¢ë¤¥«¨âì 10 áâà. ¯ ¬ïâ¨
|
; ¢ë¤¥«¨âì 9 áâà. ¯ ¬ïâ¨
|
||||||
ld bc,0A3Dh
|
LD BC,9*256+Dss.GetMem
|
||||||
rst ToDSS
|
RST ToDSS
|
||||||
jr nc,ok_malloc ; Ok
|
JR NC,ok_malloc ; Ok
|
||||||
ld a,(hFile) ; ⥪. ¤¥áªà¨¯â®à
|
LD A,(hFile) ; ⥪. ¤¥áªà¨¯â®à
|
||||||
ld c,12h ; § ªàëâì exe-ä ©«
|
LD C,Dss.Close ; § ªàëâì exe-ä ©«
|
||||||
rst ToDSS
|
RST ToDSS
|
||||||
ld hl,no_space ; ¥â ¯ ¬ïâ¨
|
LD HL,no_space ; ¥â ¯ ¬ïâ¨
|
||||||
abort: ei
|
LD BC,DSS_Error.sys.NOT_ENOUGH_MEMORY*256 + Dss.Exit
|
||||||
ld c,5Ch
|
abort: EI
|
||||||
rst ToDSS
|
PUSH BC
|
||||||
ld bc,0FF41h ; ¢ë室 ¢ „Ž‘
|
LD C,Dss.PChars
|
||||||
rst ToDSS
|
RST ToDSS
|
||||||
ret
|
POP BC
|
||||||
|
.loop: RST ToDSS ; ¢ë室 ¢ „Ž‘
|
||||||
ok_malloc: ld (id_block__),a ; åí¤« ¢ë¤¥«. ¡«®ª ¯ ¬ïâ¨
|
DI
|
||||||
|
HALT
|
||||||
|
;
|
||||||
|
ok_malloc: LD (id_block__),A ; åí¤« ¢ë¤¥«. ¡«®ª ¯ ¬ïâ¨
|
||||||
; ¯®«ãç¨âì ᯨ᮪ áâà ¨æ
|
; ¯®«ãç¨âì ᯨ᮪ áâà ¨æ
|
||||||
ld hl,page_sys_screen__
|
LD HL,page_sys_screen__
|
||||||
ld c,0C5h
|
LD C,BIOS.GetMemBlkPages
|
||||||
rst 08h
|
RST ToBIOS
|
||||||
; ã§ âì ¢¥àá¨î „Ž‘
|
; ã§ âì ¢¥àá¨î „Ž‘
|
||||||
ld c,0
|
LD C,Dss.Version
|
||||||
rst ToDSS
|
RST ToDSS
|
||||||
ld hl,013Ch ; 1.60
|
LD HL,1*256 + 71 - 1 ; 1.71
|
||||||
and a
|
AND A
|
||||||
sbc hl,de
|
SBC HL,DE
|
||||||
call nc,setup_znak ; =< 1.60 ãáâ. § ª®£¥. 19h/1Ah
|
LD HL,old_dss ; ¥â ¯ ¬ïâ¨
|
||||||
|
LD BC,DSS_Error.sys.COMMON_ERROR*256 + Dss.Exit
|
||||||
|
JR NC,abort ; =< 1.71 - ®è¨¡ª
|
||||||
; à ᯠª®¢ âì ¬®¤ã«ì 1
|
; à ᯠª®¢ âì ¬®¤ã«ì 1
|
||||||
;...
|
;...
|
||||||
; § £à㧨âì ®á. ª®¤ ¬¥¥¤¦¥à
|
; § £à㧨âì ®á. ª®¤ ¬¥¥¤¦¥à
|
||||||
ld a,(page_manager__) ; à ¡®â ¥â ¢ #8000
|
LD A,(page_manager__) ; à ¡®â ¥â ¢ #8000
|
||||||
out (SLOT3),a
|
OUT (SLOT3),A
|
||||||
ld hl,0C000h
|
LD HL,SLOT3.MEM_ADDR
|
||||||
ld de,len_modul1 ; à §¬¥à ¬®¤ã«ï 1
|
LD DE,FM_CORE_BLK.Size ; à §¬¥à ¬®¤ã«ï 1
|
||||||
ld a,(hFile)
|
LD A,(hFile)
|
||||||
ld c,13h
|
LD C,Dss.Read
|
||||||
rst ToDSS
|
RST ToDSS
|
||||||
jp c,read_error
|
JP C,read_error
|
||||||
; à ᯠª®¢ âì ¬®¤ã«ì 2
|
; à ᯠª®¢ âì ¬®¤ã«ì 2
|
||||||
;...
|
;...
|
||||||
; § £à. ¤à ©¢¥àë ª« ¢ë/¬ë誨, ®¡à ¡®â稪¨ ®¡ê¥ªâ®¢ ¨ ¤¨ «. ®ª®
|
; § £à. ¤à ©¢¥àë ª« ¢ë/¬ë誨, ®¡à ¡®â稪¨ ®¡ê¥ªâ®¢ ¨ ¤¨ «. ®ª®
|
||||||
ld a,(page_module0__) ; à ¡®â ¥â ¢ #0000
|
LD A,(page_module0__) ; à ¡®â ¥â ¢ #0000
|
||||||
out (SLOT3),a
|
OUT (SLOT3),A
|
||||||
ld hl,0C000h
|
LD HL,SLOT3.MEM_ADDR
|
||||||
ld de,len_modul2 ; à §¬¥à ¬®¤ã«ï 2
|
LD DE,FM_MOD_0_BLK.Size ; à §¬¥à ¬®¤ã«ï 2
|
||||||
ld a,(hFile)
|
LD A,(hFile)
|
||||||
ld c,13h
|
LD C,Dss.Read
|
||||||
rst ToDSS
|
RST ToDSS
|
||||||
jp c,read_error
|
JP C,read_error
|
||||||
ld a,(page_spec__)
|
LD A,(page_spec__)
|
||||||
ld (0C02Ah),a ; á®åà. ᯥª-áâà ¨æã (vectors.asm)
|
LD (0C02Ah),A ; á®åà. ᯥª-áâà ¨æã (vectors.asm)
|
||||||
; à ᯠª®¢ âì ¬®¤ã«ì 3
|
; à ᯠª®¢ âì ¬®¤ã«ì 3
|
||||||
;...
|
;...
|
||||||
; § £à㧨âì ®¯¨á ⥫¨ ¯ ¥«¥©
|
; § £à㧨âì ®¯¨á ⥫¨ ¯ ¥«¥©
|
||||||
ld a,(page_module1__)
|
LD A,(page_module1__)
|
||||||
out (SLOT3),a
|
OUT (SLOT3),A
|
||||||
ld hl,0C000h
|
LD HL,SLOT3.MEM_ADDR
|
||||||
ld de,len_modul3 ; à §¬¥à ¬®¤ã«ï 3
|
LD DE,FM_MOD_1_BLK.Size ; à §¬¥à ¬®¤ã«ï 3
|
||||||
ld a,(hFile)
|
LD A,(hFile)
|
||||||
ld c,13h
|
LD C,Dss.Read
|
||||||
rst ToDSS
|
RST ToDSS
|
||||||
jp c,read_error
|
JP C,read_error
|
||||||
; à ᯠª®¢ âì ¬®¤ã«ì 4
|
; à ᯠª®¢ âì ¬®¤ã«ì 4
|
||||||
;...
|
;...
|
||||||
; § £à㧨âì ᯥª-ª®¤
|
; § £à㧨âì ᯥª-ª®¤
|
||||||
ld a,(page_spec__)
|
LD A,(page_spec__)
|
||||||
out (SLOT3),a
|
OUT (SLOT3),A
|
||||||
ld hl,0C000h
|
LD HL,SLOT3.MEM_ADDR
|
||||||
ld de,len_modul4 ; à §¬¥à ¬®¤ã«ï 4
|
LD DE,FM_SPEC_BLK.Size ; à §¬¥à ¬®¤ã«ï 4
|
||||||
ld a,(hFile)
|
LD A,(hFile)
|
||||||
ld c,13h
|
LD C,Dss.Read
|
||||||
rst ToDSS
|
RST ToDSS
|
||||||
jp c,read_error
|
JP C,read_error
|
||||||
ld a,(page_module0__)
|
LD A,(page_module0__)
|
||||||
ld (0C02Ah),a ; á®åà. ä¬-áâà ¨æã (vect.asm)
|
LD (VECT.rst28.page+SLOT3.MEM_ADDR),A ; á®åà. ä¬-áâà ¨æã (vect.asm)
|
||||||
; à ᯠª®¢ âì ¬®¤ã«ì 5
|
; à ᯠª®¢ âì ¬®¤ã«ì 5
|
||||||
;...
|
;...
|
||||||
; § £à㧨âì ¢ìî¥à
|
; § £à㧨âì ¢ìî¥à
|
||||||
ld a,(page_viewer__)
|
; LD A,(page_viewer__)
|
||||||
out (SLOT3),a
|
; OUT (SLOT3),A
|
||||||
ld hl,0C000h
|
; LD HL,SLOT3.MEM_ADDR
|
||||||
ld de,len_modul5 ; à §¬¥à ¢ìî¥à
|
; LD DE,FM_FVIEW_BLK.Size ; à §¬¥à ¢ìî¥à
|
||||||
ld a,(hFile)
|
; LD A,(hFile)
|
||||||
ld c,13h
|
; LD C,Dss.Read
|
||||||
rst ToDSS
|
; RST ToDSS
|
||||||
jp c,read_error
|
; JP C,read_error
|
||||||
|
IN A,(SLOT1)
|
||||||
|
LD (page_viewer__),A
|
||||||
;
|
;
|
||||||
; § ªàëâì exe-ä ©« ¬¥¥¤¦¥à
|
; § ªàëâì exe-ä ©« ¬¥¥¤¦¥à
|
||||||
hFile+1: ld a,0 ; á®åà. ¤¥áªà¨¯â®à ¬¥¥¤¦¥à
|
hFile+1: LD A,0 ; á®åà. ¤¥áªà¨¯â®à ¬¥¥¤¦¥à
|
||||||
ld c,12h
|
LD C,Dss.Close
|
||||||
rst ToDSS
|
RST ToDSS
|
||||||
; ¢ª«. ¢ #8000 ®á. ª®¤ ”Œ
|
; ¢ª«. ¢ #8000 ®á. ª®¤ ”Œ
|
||||||
ld a,(page_manager__)
|
LD A,(page_manager__)
|
||||||
out (SLOT2),a
|
OUT (SLOT2),A
|
||||||
; ¯¥à¥ª ç âì åí¤«ë áâà ¨æ
|
; ¯¥à¥ª ç âì åí¤«ë áâà ¨æ
|
||||||
ld hl,id_block__ ; ®âªã¤
|
LD HL,id_block__ ; ®âªã¤
|
||||||
ld de,id_block ; ªã¤
|
LD DE,id_block ; ªã¤
|
||||||
ld bc,pages_end - id_block__
|
LD BC,pages_end - id_block__
|
||||||
ldir
|
LDIR
|
||||||
;
|
;
|
||||||
ld sp,stack ; á⥪ ”Œ
|
LD SP,stack ; á⥪ ”Œ
|
||||||
; ¥ ¬¥ïâì ¯®«®¦. ¬ë誨 ”Œ
|
; ¥ ¬¥ïâì ¯®«®¦. ¬ë誨 ”Œ
|
||||||
ld c,3 ; ã§ âì áâ âãá ¬ë誨
|
LD C,Dss.Mouse.ReadState ; ã§ âì áâ âãá ¬ë誨
|
||||||
rst 30h
|
RST ToDSS.Mouse
|
||||||
ld (Xcoord),hl ; ª®®à¤¨ â X (0..639)
|
LD (Xcoord),HL ; ª®®à¤¨ â X (0..639)
|
||||||
ld (Ycoord),de ; ª®®à¤¨ â Y (0..255)
|
LD (Ycoord),DE ; ª®®à¤¨ â Y (0..255)
|
||||||
jp 8000h ; ¯¥à¥©â¨ ¯à®£à ¬¬ã
|
JP begin ; ¯¥à¥©â¨ ¯à®£à ¬¬ã
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
; •í¤«ë áâà ¨æ ¬¥¥¤¦¥à
|
; •í¤«ë áâà ¨æ ¬¥¥¤¦¥à
|
||||||
id_block__: db -1 ; ¤¥áªà¨¯â®à ¢ë¤¥«. ¡«®ª ¯ ¬ïâ¨
|
id_block__: DB -1 ; ¤¥áªà¨¯â®à ¢ë¤¥«. ¡«®ª ¯ ¬ïâ¨
|
||||||
|
page_sys_screen__: DB -1 ; +#0000 á¨áâ.íªà , +#1400 íªà ”Œ
|
||||||
|
page_dial_screen__: DB -1 ; ¡ãä¥à á®åà. ¤¨ «. ®ª® ¨ ¢¥àâ. ¬¥î
|
||||||
|
page_left_dir__: DB -1 ; ᯨ᮪ «¥¢®© ¯ ¥«¨
|
||||||
|
page_right_dir__: DB -1 ; ᯨ᮪ ¯à ¢®© ¯ ¥«¨
|
||||||
|
page_manager__: DB -1 ; ®á. ª®¤ ¬¥¥¤¦¥à
|
||||||
|
page_module0__: DB -1 ; ¤à ©¢¥àë ª« ¢ë, ¬ë誨, ¤¨ «. ª®¤ á ®¡à ¡.
|
||||||
|
page_module1__: DB -1 ; ®¯¨á ⥫¨ ¯ ¥«¥©
|
||||||
|
page_spec__: DB -1 ; áâà ¨æ à §¡®à ᯥª-äãªæ¨©
|
||||||
|
page_viewer__: DB -1 ; áâà ¨æ ¢ìî¥à
|
||||||
|
;DB -1
|
||||||
|
DB 0 ; á⮯-¡ ©â
|
||||||
;
|
;
|
||||||
page_sys_screen__:
|
DSS_PAGE__: DB -1 ; á®åà. ¯®àâ 82h
|
||||||
db -1 ; +#0000 á¨áâ.íªà , +#1400 íªà ”Œ
|
port_E2__: DB -1 ; á®åà. ¯®àâ 0E2h
|
||||||
page_dial_screen__:
|
port_89__: DB -1 ; á®åà. ¯®àâ 89h
|
||||||
db -1 ; ¡ãä¥à á®åà. ¤¨ «. ®ª® ¨ ¢¥àâ. ¬¥î
|
|
||||||
page_left_dir__:
|
|
||||||
db -1 ; ᯨ᮪ «¥¢®© ¯ ¥«¨
|
|
||||||
page_right_dir__:
|
|
||||||
db -1 ; ᯨ᮪ ¯à ¢®© ¯ ¥«¨
|
|
||||||
page_manager__:
|
|
||||||
db -1 ; ®á. ª®¤ ¬¥¥¤¦¥à
|
|
||||||
page_module0__: db -1 ; ¤à ©¢¥àë ª« ¢ë, ¬ë誨, ¤¨ «. ª®¤ á ®¡à ¡.
|
|
||||||
page_module1__: db -1 ; ®¯¨á ⥫¨ ¯ ¥«¥©
|
|
||||||
page_spec__: db -1 ; áâà ¨æ à §¡®à ᯥª-äãªæ¨©
|
|
||||||
page_viewer__: db -1 ; áâà ¨æ ¢ìî¥à
|
|
||||||
db -1
|
|
||||||
db 0 ; á⮯-¡ ©â
|
|
||||||
;
|
|
||||||
port_82__: db -1 ; á®åà. ¯®àâ 82h
|
|
||||||
port_E2__: db -1 ; á®åà. ¯®àâ 0E2h
|
|
||||||
port_89__: db -1 ; á®åà. ¯®àâ 89h
|
|
||||||
pages_end:
|
pages_end:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
; ®è¨¡ª § £à㧪¨ ¬¥¥¤¦¥à
|
; ®è¨¡ª § £à㧪¨ ¬¥¥¤¦¥à
|
||||||
read_error: ld a,(id_block__)
|
read_error: LD (.number),A
|
||||||
ld c,3Eh ; ®á¢®¡. ¢ë¤¥«. ¡«®ª ¯ ¬ïâ¨
|
LD A,(id_block__)
|
||||||
rst ToDSS
|
LD C,Dss.FreeMem ; ®á¢®¡. ¢ë¤¥«. ¡«®ª ¯ ¬ïâ¨
|
||||||
ld a,(hFile)
|
RST ToDSS
|
||||||
ld c,12h ; § ªàëâì ä ©«
|
LD A,(hFile)
|
||||||
rst ToDSS
|
LD C,Dss.Close ; § ªàëâì ä ©«
|
||||||
ld hl,load_err
|
RST ToDSS
|
||||||
jp abort
|
LD HL,load_err
|
||||||
|
.number+1: LD B,0
|
||||||
|
LD C,Dss.Exit
|
||||||
|
JP abort
|
||||||
|
|
||||||
no_space: db "Not enough memory to run program !",0Dh,0Ah,0
|
no_space: DZ "Not enough memory to run FM!\r\n"
|
||||||
load_err: db "Disk loading error !",0Dh,0Ah,0
|
load_err: DZ "Disk loading error!\r\n"
|
||||||
|
old_dss: DZ "FM requires DSS version 1.71 or higher!\r\n"
|
||||||
|
|
||||||
|
|
||||||
; <20>®¤£®â®¢¨âì § ª®£¥. ¤«ï á®äâ. ªãàá®à
|
; ; <20>®¤£®â®¢¨âì § ª®£¥. ¤«ï á®äâ. ªãàá®à
|
||||||
setup_znak: ld a,(page_manager__) ; ¢à¥¬. ¡ãä¥à
|
; setup_znak: LD A,(page_manager__) ; ¢à¥¬. ¡ãä¥à
|
||||||
out (SLOT2),a
|
; OUT (SLOT2),A
|
||||||
; ¯®«ãç¨âì á¨áâ. § ª®£¥.
|
; ; ¯®«ãç¨âì á¨áâ. § ª®£¥.
|
||||||
ld de,8000h ; ¡ãä¥à ¤«ï 2048 ¡ ©â ¤ ëå
|
; LD DE,SLOT2.MEM_ADDR ; ¡ãä¥à ¤«ï 2048 ¡ ©â ¤ ëå
|
||||||
push de
|
; PUSH DE
|
||||||
ld c,0B8h ; ¯®«ãç¨âì § ª®£¥.
|
; LD C,BIOS.WIN_GET_ZG ; ¯®«ãç¨âì § ª®£¥.
|
||||||
rst 08h
|
; RST ToBIOS
|
||||||
; § ¯®«¨âì ª®¤®¬ 0FFh 2 ¨¦¨¥ «¨¨¨
|
; ; § ¯®«¨âì ª®¤®¬ 0FFh 2 ¨¦¨¥ «¨¨¨
|
||||||
ld hl,8000h+(2048-(2*256)) ; ¯®á«¥¤¨¥ 512 ¡ ©â
|
; LD HL,SLOT2.MEM_ADDR+(2048-(2*256)) ; ¯®á«¥¤¨¥ 512 ¡ ©â
|
||||||
ld bc,511
|
; LD BC,511
|
||||||
ld a,1Ah ; ®¬¥à § ª®£¥.
|
; LD A,1Ah ; ®¬¥à § ª®£¥.
|
||||||
call fill_data_font
|
; CALL fill_data_font
|
||||||
pop hl
|
; POP HL
|
||||||
; § ¯®«¨âì ®áâ «ìë¥ 6 «¨¨© (¯®«ë© ¡«®ª)
|
; ; § ¯®«¨âì ®áâ «ìë¥ 6 «¨¨© (¯®«ë© ¡«®ª)
|
||||||
ld bc,2048-513
|
; LD BC,2048-513
|
||||||
ld a,19h ; ®¬¥à § ª®£¥.
|
; LD A,19h ; ®¬¥à § ª®£¥.
|
||||||
; <20> áâனª § ª®£¥. ¨ ¥£® ॣ¨áâà æ¨ï
|
; ; <20> áâனª § ª®£¥. ¨ ¥£® ॣ¨áâà æ¨ï
|
||||||
; ¢å®¤: a=®¬¥à § ª®£¥.
|
; ; ¢å®¤: a=®¬¥à § ª®£¥.
|
||||||
; hl=¤ ë¥
|
; ; hl=¤ ë¥
|
||||||
; bc=à §¬¥à ¤ ëå
|
; ; bc=à §¬¥à ¤ ëå
|
||||||
fill_data_font: ld e,l
|
; fill_data_font: LD E,L
|
||||||
ld d,h
|
; LD D,H
|
||||||
ld (hl),-1
|
; LD (HL),-1
|
||||||
inc de
|
; INC DE
|
||||||
ldir
|
; LDIR
|
||||||
ld de,8000h ; § ª®£¥.
|
; LD DE,SLOT2.MEM_ADDR ; § ª®£¥.
|
||||||
ld c,0B6h ; ãáâ. § ª®£¥.
|
; LD C,BIOS.WIN_SET_ZG ; ãáâ. § ª®£¥.
|
||||||
rst 08h
|
; RST ToBIOS
|
||||||
ret
|
; RET
|
||||||
|
;-------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
; ¤¥¯ ª¥à
|
|
||||||
;...
|
|
||||||
|
|
||||||
|
|
||||||
; Š®¥æ § £àã§ç¨ª
|
; Š®¥æ § £àã§ç¨ª
|
||||||
end_loader:
|
end_loader:
|
||||||
@ -250,4 +257,4 @@ end_loader:
|
|||||||
; Š®¤ ¬¥¥¤¦¥à
|
; Š®¤ ¬¥¥¤¦¥à
|
||||||
;-------------------------------------------------
|
;-------------------------------------------------
|
||||||
; incbin 'Build/fm.bin'
|
; incbin 'Build/fm.bin'
|
||||||
include 'main.asm'
|
INCLUDE 'main.asm'
|
||||||
|
|||||||
@ -128,14 +128,14 @@ hsize__:dw 0 ;
|
|||||||
;===========================================================
|
;===========================================================
|
||||||
A837F: ld a,1 ; ç⥨¥
|
A837F: ld a,1 ; ç⥨¥
|
||||||
ld c,11h ; ®âªàëâì ä ©«
|
ld c,11h ; ®âªàëâì ä ©«
|
||||||
rst 10h
|
rst ToDSS
|
||||||
ret c
|
ret c
|
||||||
ld (file_handle),a ; ¤¥áªà. ä ©«
|
ld (file_handle),a ; ¤¥áªà. ä ©«
|
||||||
ld hl,0
|
ld hl,0
|
||||||
ld ix,0
|
ld ix,0
|
||||||
ld a,(file_handle) ; ¤¥áªà. ä ©«
|
ld a,(file_handle) ; ¤¥áªà. ä ©«
|
||||||
ld bc,0215h ; 㪠§ â¥«ì ª®¥æ ä ©«
|
ld bc,0215h ; 㪠§ â¥«ì ª®¥æ ä ©«
|
||||||
rst 10h
|
rst ToDSS
|
||||||
ld (hsize__),hl ; áâ.à §àï¤ à §¬¥à ä ©«
|
ld (hsize__),hl ; áâ.à §àï¤ à §¬¥à ä ©«
|
||||||
ld (lsize__),ix ; ¬«.à §àï¤
|
ld (lsize__),ix ; ¬«.à §àï¤
|
||||||
call get_mem_file ; à áç. ¨ ¢ë¤¥«. áâà ¨æë ¯®¤ ä ©«
|
call get_mem_file ; à áç. ¨ ¢ë¤¥«. áâà ¨æë ¯®¤ ä ©«
|
||||||
@ -144,7 +144,7 @@ A837F: ld a,1 ;
|
|||||||
close_file:
|
close_file:
|
||||||
ld a,(file_handle) ; ¤¥áªà. ä ©«
|
ld a,(file_handle) ; ¤¥áªà. ä ©«
|
||||||
ld c,12h ; § ªàëâì ä ©«
|
ld c,12h ; § ªàëâì ä ©«
|
||||||
rst 10h
|
rst ToDSS
|
||||||
ret
|
ret
|
||||||
;
|
;
|
||||||
A83B3: call close_file
|
A83B3: call close_file
|
||||||
@ -197,7 +197,7 @@ A83ED: ld hl,0
|
|||||||
ld ix,0
|
ld ix,0
|
||||||
ld a,(file_handle) ; ¤¥áªà. ä ©«
|
ld a,(file_handle) ; ¤¥áªà. ä ©«
|
||||||
ld bc,0015h ; 㪠§ ⥫ì ç «® ä ©«
|
ld bc,0015h ; 㪠§ ⥫ì ç «® ä ©«
|
||||||
rst 10h
|
rst ToDSS
|
||||||
ld a,(id_pages) ; ¨¤¥â¨ä. ¡«®ª ¯ ¬ïâ¨
|
ld a,(id_pages) ; ¨¤¥â¨ä. ¡«®ª ¯ ¬ïâ¨
|
||||||
ld b,0 ; «®£. ®¬¥à áâà ¨æë ¢ ¡«®ª¥
|
ld b,0 ; «®£. ®¬¥à áâà ¨æë ¢ ¡«®ª¥
|
||||||
ld c,0C4h ; ¯®«ãç¨âì 䨧. ®¬¥à áâà ¨æë ¢ ¡«®ª¥
|
ld c,0C4h ; ¯®«ãç¨âì 䨧. ®¬¥à áâà ¨æë ¢ ¡«®ª¥
|
||||||
@ -209,7 +209,7 @@ A8404: push af
|
|||||||
ld de,4000h ; ᪮«ìª®
|
ld de,4000h ; ᪮«ìª®
|
||||||
ld a,(file_handle) ; ¤¥áªà.
|
ld a,(file_handle) ; ¤¥áªà.
|
||||||
ld c,13h ; ç¨â âì ä ©«
|
ld c,13h ; ç¨â âì ä ©«
|
||||||
rst 10h
|
rst ToDSS
|
||||||
pop bc
|
pop bc
|
||||||
ret c ; ®è¨¡ª ç⥨ï
|
ret c ; ®è¨¡ª ç⥨ï
|
||||||
inc a ; a=#FF (¯à®ç¨â ® ¬¥ì襥 ç¨á«® ¡ ©â)
|
inc a ; a=#FF (¯à®ç¨â ® ¬¥ì襥 ç¨á«® ¡ ©â)
|
||||||
@ -1389,7 +1389,7 @@ AB593: ld a,(iy+5)
|
|||||||
jp z,AB5A0
|
jp z,AB5A0
|
||||||
ld a,(color_array+42) ; 1Eh âਡãâ
|
ld a,(color_array+42) ; 1Eh âਡãâ
|
||||||
ld e,a
|
ld e,a
|
||||||
ld a,"" ; "<"
|
ld a,#1B ; ?
|
||||||
AB5A0: inc hl
|
AB5A0: inc hl
|
||||||
push hl
|
push hl
|
||||||
ld bc,0181h ; ¢ë¢¥á⨠1 ᨬ¢®« á âਡã⮬
|
ld bc,0181h ; ¢ë¢¥á⨠1 ᨬ¢®« á âਡã⮬
|
||||||
@ -1412,7 +1412,7 @@ loc30: cp len_string+1 ; 80+1
|
|||||||
jp c,AB5C2
|
jp c,AB5C2
|
||||||
ld a,(color_array+42) ; 1Eh âਡãâ
|
ld a,(color_array+42) ; 1Eh âਡãâ
|
||||||
ld e,a
|
ld e,a
|
||||||
ld c,1Ah ; "->"
|
ld c,#1A ; ?
|
||||||
AB5C2: ld a,c
|
AB5C2: ld a,c
|
||||||
ld bc,0181h ; ¢ë¢¥á⨠1 ᨬ¢®« á âਡã⮬
|
ld bc,0181h ; ¢ë¢¥á⨠1 ᨬ¢®« á âਡã⮬
|
||||||
rst 08h
|
rst 08h
|
||||||
|
|||||||
21
FVIEW/Viewer.asm
Normal file
21
FVIEW/Viewer.asm
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
;===========================================================
|
||||||
|
; <09>®¤£à㦠¥¬ë© Œ®¤ã«ì 4. ‚ìî¥à
|
||||||
|
;===========================================================
|
||||||
|
; ¯®¤ª«. ¢à¥¬ï ¢ë§®¢ ¢ìî¥à
|
||||||
|
;
|
||||||
|
DISP #4100
|
||||||
|
|
||||||
|
FM_FVIEW_BLK.Start EQU $
|
||||||
|
include "fview.asm" ; ¢ìî¥à
|
||||||
|
include "msfview.asm" ; ᮡëâ¨ï ¬ë誨
|
||||||
|
include "setview.asm" ; áâனª ¢ìî¥à
|
||||||
|
include "chfont.asm" ; win-1251, koi8-r ª®¤®¢ë¥ â ¡«¨æë
|
||||||
|
include "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
|
||||||
|
;=======================================================================
|
||||||
478
MAIN.ASM
478
MAIN.ASM
@ -8,8 +8,7 @@
|
|||||||
; <20>ਠ᪠¨à®¢ ¨¨ ¯ ¯ª¨ (¯à®æ¥¤ãà ScanTree), ¤«ï ¢à¥¬. ¡ãä¥à ¢ë¤¥«ï¥âáï
|
; <20>ਠ᪠¨à®¢ ¨¨ ¯ ¯ª¨ (¯à®æ¥¤ãà ScanTree), ¤«ï ¢à¥¬. ¡ãä¥à ¢ë¤¥«ï¥âáï
|
||||||
; 1 áâà ¨æ ¯ ¬ïâ¨. <20>®á«¥ ®âà ¡®âª¨ ¯à®æ¥¤ãàë, áâà ¨æ ®á¢®¡®¦¤ ¥âáï.
|
; 1 áâà ¨æ ¯ ¬ïâ¨. <20>®á«¥ ®âà ¡®âª¨ ¯à®æ¥¤ãàë, áâà ¨æ ®á¢®¡®¦¤ ¥âáï.
|
||||||
;
|
;
|
||||||
;
|
|
||||||
; include 'shared_includes/constants/Sp2000.inc'
|
|
||||||
|
|
||||||
EDEPTH equ 36 ; ᫨誮¬ ¡®«ìè ï ¢«®¦. ¯ ¯®ª ¨«¨ >= 1024 ¯ ¯®ª
|
EDEPTH equ 36 ; ᫨誮¬ ¡®«ìè ï ¢«®¦. ¯ ¯®ª ¨«¨ >= 1024 ¯ ¯®ª
|
||||||
EUABORT equ 37 ; User abort (®¯¥à æ¨ï ¯à¥à¢ ¯®«ì§®¢ ⥫¥¬)
|
EUABORT equ 37 ; User abort (®¯¥à æ¨ï ¯à¥à¢ ¯®«ì§®¢ ⥫¥¬)
|
||||||
@ -17,19 +16,24 @@ EUABORT equ 37 ; User abort (
|
|||||||
max_len_comline equ 126;254 ; ¬ ªá. ¤«¨ ª®¬-áâப¨ (¡®«ìè¥ ¥ ¤¥« âì)
|
max_len_comline equ 126;254 ; ¬ ªá. ¤«¨ ª®¬-áâப¨ (¡®«ìè¥ ¥ ¤¥« âì)
|
||||||
history_size equ 128;256 ; à §¬¥à history-¡ãä¥à
|
history_size equ 128;256 ; à §¬¥à history-¡ãä¥à
|
||||||
|
|
||||||
|
|
||||||
; €¤à¥á ᥪ権 ¢à¥¬. ¬ áᨢ 梥⮢ ¢ ¡ãä¥à¥
|
; €¤à¥á ᥪ権 ¢à¥¬. ¬ áᨢ 梥⮢ ¢ ¡ãä¥à¥
|
||||||
;tmp_color_list equ work_buffer + 511 - len_color_array ; ç «® ¢à¥¬. ¬ áᨢ
|
tmp_color_list equ work_buffer + 511 - len_color_array ; ç «® ¢à¥¬. ¬ áᨢ
|
||||||
;color_list2 equ tmp_color_list + col_lst1
|
color_list2 equ tmp_color_list + col_lst1
|
||||||
;color_list3 equ color_list2 + col_lst2
|
color_list3 equ color_list2 + col_lst2
|
||||||
;color_list4 equ color_list3 + col_lst3
|
color_list4 equ color_list3 + col_lst3
|
||||||
;color_list5 equ color_list4 + col_lst4
|
color_list5 equ color_list4 + col_lst4
|
||||||
;color_list6 equ color_list5 + col_lst5
|
color_list6 equ color_list5 + col_lst5
|
||||||
;color_list7 equ color_list6 + col_lst6
|
color_list7 equ color_list6 + col_lst6
|
||||||
;color_list8 equ color_list7 + col_lst7
|
color_list8 equ color_list7 + col_lst7
|
||||||
;color_list9 equ color_list8 + col_lst8
|
color_list9 equ color_list8 + col_lst8
|
||||||
;color_list10 equ color_list9 + col_lst9
|
color_list10 equ color_list9 + col_lst9
|
||||||
;color_list11 equ color_list10 + col_lst10
|
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)
|
||||||
|
|
||||||
|
|
||||||
;---- –¢¥â ¬¥¥¤¦¥à ----
|
;---- –¢¥â ¬¥¥¤¦¥à ----
|
||||||
@ -97,341 +101,75 @@ color_spec equ 1Ch ; ᯥ
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
ORG 0
|
||||||
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||||
|
|
||||||
|
;=======================================================================
|
||||||
; include 'version.inc' ; ¢¥àá¨ï ¬¥¥¤¦¥à
|
; Žá®¢®© Œ®¤ã«ì CORE
|
||||||
|
;=======================================================================
|
||||||
; export id_block
|
; ¢á¥£¤ ¯®¤ª«îç¥
|
||||||
; export len_modul1
|
|
||||||
; export len_modul2
|
|
||||||
; export len_modul3
|
|
||||||
; export len_modul4
|
|
||||||
; export len_modul5
|
|
||||||
; export stack
|
|
||||||
; export Xcoord
|
|
||||||
; export Ycoord
|
|
||||||
|
|
||||||
|
|
||||||
org 8000h
|
|
||||||
|
|
||||||
mod0: ; ¬¥âª ¤«ï ¢ëç¨á«. à §¬¥à
|
|
||||||
;////////////////////////////////////////////////////////////////////////
|
|
||||||
;
|
;
|
||||||
; ’®çª ¢å®¤ ¢ ¬¥¥¤¦¥à
|
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
|
||||||
|
;=======================================================================
|
||||||
jp begin
|
|
||||||
|
|
||||||
|
|
||||||
; •í¤«ë áâà ¨æ ¬¥¥¤¦¥à
|
|
||||||
id_block: db -1 ; ¤¥áªà¨¯â®à ¢ë¤¥«. ¡«®ª ¯ ¬ïâ¨
|
|
||||||
;
|
|
||||||
page_sys_screen:db -1 ; +0 á¨áâ. íªà , +2800h ¤ ë¥ user-menu
|
|
||||||
page_dial_screen:
|
|
||||||
db -1 ; ¡ãä¥à á®åà. ¤¨ «. ®ª® ¨ ¢¥àâ. ¬¥î
|
|
||||||
page_left_dir: db -1 ; ᯨ᮪ «¥¢®© ¯ ¥«¨
|
|
||||||
page_right_dir: db -1 ; ᯨ᮪ ¯à ¢®© ¯ ¥«¨
|
|
||||||
page_manager: db -1 ; ®á. ª®¤ ¬¥¥¤¦¥à
|
|
||||||
page_module0: db -1 ; ¤à ©¢¥àë ª« ¢ë, ¬ë誨, ¤¨ «. ª®¤ á ®¡à ¡.
|
|
||||||
page_module1: db -1 ; ®¯¨á ⥫¨ ¯ ¥«¥©
|
|
||||||
page_spec: db -1 ; áâà ¨æ à §¡®à ᯥª-äãªæ¨©
|
|
||||||
page_viewer: db -1 ; áâà ¨æ ¢ìî¥à
|
|
||||||
db -1
|
|
||||||
db 0 ; á⮯-¡ ©â
|
|
||||||
;
|
|
||||||
port_82: db -1 ; á®åà. ¯®àâ 82h
|
|
||||||
port_E2: db -1 ; á®åà. ¯®àâ 0E2h
|
|
||||||
port_89: db -1 ; á®åà. ¯®àâ 89h
|
|
||||||
|
|
||||||
|
|
||||||
lastdrive: db 'B'-'A' ; ¯®á«¥¤¨© ¤¨áª ¢ á¨á⥬¥ (0..25)
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
;-------------------------------------------------
|
|
||||||
; ‚ë§®¢ „Ž‘-à¥áâ àâ
|
|
||||||
;-------------------------------------------------
|
|
||||||
int10: ex af,af'
|
|
||||||
di
|
|
||||||
ld a,(port_82) ; ¤®á-áâà ¨æ
|
|
||||||
out (SLOT0),a
|
|
||||||
ei
|
|
||||||
ex af,af'
|
|
||||||
rst 10h
|
|
||||||
int__: ex af,af'
|
|
||||||
di
|
|
||||||
ld a,(page_module0)
|
|
||||||
out (SLOT0),a ; ¢®ááâ. áâà. ¤à ©¢¥à®¢ ª« ¢ë, ¬ë誨
|
|
||||||
ei
|
|
||||||
ex af,af'
|
|
||||||
ret
|
|
||||||
|
|
||||||
;-------------------------------------------------
|
|
||||||
; ‚ë§®¢ RST 18h
|
|
||||||
;-------------------------------------------------
|
|
||||||
int18: ex af,af'
|
|
||||||
di
|
|
||||||
ld a,(port_82) ; ¤®á-áâà ¨æ
|
|
||||||
out (SLOT0),a
|
|
||||||
ei
|
|
||||||
ex af,af'
|
|
||||||
rst 18h
|
|
||||||
jr int__
|
|
||||||
|
|
||||||
|
|
||||||
;-------------------------------------------------
|
|
||||||
; ‚ë§®¢ RST 10h ¨§ ᯥª-áâà ¨æë
|
|
||||||
;-------------------------------------------------
|
|
||||||
alt10: ex af,af'
|
|
||||||
di
|
|
||||||
ld a,(port_82) ; ¤®á-áâà ¨æ
|
|
||||||
out (SLOT0),a
|
|
||||||
ei
|
|
||||||
ex af,af'
|
|
||||||
rst 10h
|
|
||||||
alt__: ex af,af'
|
|
||||||
di
|
|
||||||
ld a,(page_spec)
|
|
||||||
out (SLOT0),a ; ¢®ááâ. áâà.
|
|
||||||
ei
|
|
||||||
ex af,af'
|
|
||||||
ret
|
|
||||||
|
|
||||||
;-------------------------------------------------
|
|
||||||
; ‚ë§®¢ RST 18h ¨§ ᯥª-áâà ¨æë
|
|
||||||
;-------------------------------------------------
|
|
||||||
alt18: ex af,af'
|
|
||||||
di
|
|
||||||
ld a,(port_82) ; ¤®á-áâà ¨æ
|
|
||||||
out (SLOT0),a
|
|
||||||
ei
|
|
||||||
ex af,af'
|
|
||||||
rst 18h
|
|
||||||
jr alt__
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
include 'fview/fview.inc' ; ¯à®æ¥¤ãàë ¢ë室 ¨§ £«ï¤¥«ª¨
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
;=======================================================================
|
||||||
; à ¡®ç¨© ¡ãä¥à ”Œ
|
; <09>®¤£à㦠¥¬ë© Œ®¤ã«ì 0
|
||||||
work_buffer: ds 512
|
|
||||||
|
|
||||||
|
|
||||||
ds 80
|
|
||||||
stack: ; á⥪ ”Œ
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
begin:
|
|
||||||
; ã§ âì boot-¤¨áª á¨á⥬ë
|
|
||||||
ld bc,0009h
|
|
||||||
rst 10h
|
|
||||||
add a,"A"
|
|
||||||
ld (ccp_name),a ; launch.asm
|
|
||||||
; ¨¨æ. ®¬¥à áâà ¨æ ¢ áâàãªâãà å ¯ ¥«¥©
|
|
||||||
ld a,(page_left_dir)
|
|
||||||
ld (cash_left_dir),a
|
|
||||||
ld a,(page_right_dir)
|
|
||||||
ld (cash_right_dir),a
|
|
||||||
; ¢ª«. ¢ #4000 áâà. ”Œ
|
|
||||||
ld a,(page_module1)
|
|
||||||
out (SLOT1),a
|
|
||||||
; á®åà. ⥪. ¤¨áª
|
|
||||||
ld c,2
|
|
||||||
rst 10h
|
|
||||||
ld (save_disk),a
|
|
||||||
; á®åà. ⥪ã騩 ¯ãâì
|
|
||||||
ld hl,save_path
|
|
||||||
ld c,1Eh
|
|
||||||
rst 10h
|
|
||||||
|
|
||||||
|
|
||||||
include 'shell.asm' ; ä ©«¥à
|
|
||||||
include 'mod2/fillstr.asm' ; § ¯®«¥¨¥ áâப¨ ä ©«¥à
|
|
||||||
include 'mod2/event.asm' ; ç⥨¥ ᮡë⨩
|
|
||||||
include 'mod2/mouse.asm' ; ¬ëèª
|
|
||||||
include 'mod2/keybar.asm' ; key-¡ à
|
|
||||||
include 'mod2/clock.asm' ; ç áë ¯ ¥«¥©
|
|
||||||
include 'mod2/setup.asm' ; ç⥨¥/§ ¯¨áì ini-ä ©« , mnu-ä ©«
|
|
||||||
include 'mod2/space.asm' ; ᢮¡. ®¡ê¥¬ ¤¨áª
|
|
||||||
include 'mod2/hilight.asm' ; ¯®¤á¢¥âª ä ©«®¢
|
|
||||||
include 'mod2/readdsk.asm' ; ç⥨¥ ®¢®© ¯ ¯ª¨
|
|
||||||
include 'mod2/enter.asm' ; ®¡à ¡®âª ¦ â¨ï <Enter>
|
|
||||||
include 'mod2/launch.asm' ; § ¯ãáª ä ©«®¢
|
|
||||||
include 'mod2/pos.asm' ; ¯®§¨æ. 㪠§ â¥«ï ¯®á«¥ ᬥë ᯨáª
|
|
||||||
include 'mod2/utils.asm' ; ¢á¯®¬. ¯à®æ¥¤ãàë
|
|
||||||
include 'mod2/copy.asm' ; ª®¯¨à®¢ ¨¥ ä ©«®¢
|
|
||||||
include 'mod2/info.asm' ; info-०¨¬ ¯ ¥«¨
|
|
||||||
include 'mod2/qview.asm' ; qview-०¨¬ ¯ ¥«¨
|
|
||||||
include 'mod2/mkdir.asm' ; á®§¤ ¨¥ ¯ ¯ª¨ (F7)
|
|
||||||
include 'mod2/delete.asm' ; 㤠«¥¨¥ ä ©« /¯ ¯ª¨ (F8)
|
|
||||||
include 'mod2/rename.asm' ; ¯¥à¥¨¬¥®¢ ¨¥ ä ©« (F6)
|
|
||||||
|
|
||||||
include 'mod2/debug.asm'
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
; <20>¥¦¨¬ à ¡®âë ¢ìî¥à
|
|
||||||
viewer_mode: db 0 ; 0=®¡ëçë©, 1=¯ ¥«ìë©
|
|
||||||
|
|
||||||
attr_record: db 0 ; âਡãâ ⥪. § ¯¨á¨ ᯨ᪠ª â «®£
|
|
||||||
|
|
||||||
del_confirm: db true ; ä« £ ¯®¤â¢. 㤠«¥¨ï ä ©«®¢/¯ ¯®ª
|
|
||||||
|
|
||||||
flag_del_non_empty:
|
|
||||||
db true ; ä« £ ¯®¤â¢. 㤠«¥¨ï ¥ ¯ãáâëå ¯ ¯®ª
|
|
||||||
|
|
||||||
move_home_end: db false ; ä« £ ®âà ¡®âª¨ Home/End ¯à¨ ®âªà. ¯ ¥«ïå
|
|
||||||
|
|
||||||
enable_mnu_file:db false ; ä« £ «¨ç¨ï mnu-ä ©«
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
;-------------------------------------------------
|
|
||||||
; ‘â ¤ àâë© ¢ë室 ¢ „Ž‘
|
|
||||||
;-------------------------------------------------
|
|
||||||
exit: ld a,b
|
|
||||||
ld (return_code+1),a ; á®åà. ª®¤ ¢®§¢à â
|
|
||||||
; ¢®ááâ. „Ž‘-áâà ¨æã
|
|
||||||
di
|
|
||||||
ld a,(port_82)
|
|
||||||
out (SLOT0),a
|
|
||||||
ei
|
|
||||||
; ¯®«®¦. á¨áâ. ¬ë誨 ¯® ¬¥áâ®¬ã ¤à ©¢¥àã
|
|
||||||
Xcoord+1: ld hl,0 ; ª®®à¤¨ â X (0..639)
|
|
||||||
Ycoord+1: ld de,0 ; ª®®à¤¨ â Y (0..255)
|
|
||||||
ld c,4 ; ãáâ. ¯®«®¦. ¬ë誨
|
|
||||||
rst 30h
|
|
||||||
; ãáâ. á¨áâ. ¤¨áª ¨ ¯ãâì ªâ. ¯ ¥«¨
|
|
||||||
call set_path_from_activ_panel
|
|
||||||
; ¢®ááâ. § 票¥ ¯®àâ
|
|
||||||
ld a,(port_89)
|
|
||||||
out (89h),a
|
|
||||||
; ¢®ááâ. á¨áâ. íªà
|
|
||||||
ld c,0B3h
|
|
||||||
ld a,(page_sys_screen) ; áâà ¨æ ¡ãä¥à
|
|
||||||
call screen__
|
|
||||||
; ¢®ááâ. § 票¥ ¯®àâ
|
|
||||||
ld a,(port_E2)
|
|
||||||
out (SLOT3),a
|
|
||||||
; ¢®ááâ. ¯®«®¦. ªãàá®à á¨áâ. íªà
|
|
||||||
sys_cursor_coords:
|
|
||||||
ld de,0
|
|
||||||
ld c,84h
|
|
||||||
rst 08h
|
|
||||||
; ®á¢®¡. ¢ë¤¥«¥ë© ¡«®ª ¯ ¬ïâ¨
|
|
||||||
ld a,(id_block)
|
|
||||||
ld c,3Eh
|
|
||||||
rst 10h
|
|
||||||
; ®ç¨áâ¨âì ¡ãä¥à á¨áâ. ª« ¢ë
|
|
||||||
ld bc,3135h
|
|
||||||
rst 10h
|
|
||||||
return_code: ld b,0 ; ª®¤ ¢®§¢à â
|
|
||||||
ld c,41h
|
|
||||||
rst 10h
|
|
||||||
ret
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
;-----------------------------------------------------------
|
|
||||||
; ‘®åà ¨âì/¢®ááâ. ¯®«ë© á¨áâ¥¬ë© íªà
|
|
||||||
;-----------------------------------------------------------
|
|
||||||
; ¢å®¤: C = #B2/#B3 á®åà./¢®ááâ. íªà
|
|
||||||
; A = ®¬¥à áâà ¨æë ¡ãä¥à ®ª
|
|
||||||
screen__: ld hl,2050h ; ¢ëá®â /è¨à¨ íªà
|
|
||||||
scrn1__: ld ix,0C000h ; ¤à¥á ¡ãä¥à ¤«ï ¤ ëå
|
|
||||||
scrn2__: ld b,a
|
|
||||||
xor a ; ¨¤¥â¨ä. £«®¡. ®ª
|
|
||||||
ld e,a ; X ¯®«®¦.
|
|
||||||
ld d,a ; Y ¯®«®¦.
|
|
||||||
di
|
|
||||||
rst 08h
|
|
||||||
ei
|
|
||||||
ret
|
|
||||||
|
|
||||||
;-----------------------------------------------------------
|
|
||||||
; ‘®åà ¨âì/¢®ááâ. á¨áâ¥¬ë© íªà ¤® ª®¬. áâப¨
|
|
||||||
;-----------------------------------------------------------
|
|
||||||
; ¢å®¤: C = #B2/#B3 á®åà./¢®ááâ. íªà
|
|
||||||
; A = ®¬¥à áâà ¨æë ¡ãä¥à ®ª (page_sys_screen)
|
|
||||||
screen1__: ld hl,1E50h ; ¢ëá®â /è¨à¨ íªà
|
|
||||||
jr scrn1__
|
|
||||||
|
|
||||||
;-----------------------------------------------------------
|
|
||||||
; ‘®åà ¨âì/¢®ááâ. ¯®«ë© íªà ¬¥¥¤¦¥à
|
|
||||||
;-----------------------------------------------------------
|
|
||||||
; in: c=#B2/#B3 á®åà./¢®ááâ. íªà
|
|
||||||
; a=®¬¥à áâà ¨æë ¡ãä¥à ®ª (page_sys_screen)
|
|
||||||
screen2__: ld hl,2050h ; ¢ëá®â /è¨à¨ íªà
|
|
||||||
ld ix,0C000h+1400h ; ç «® íªà ¬¥¥¤¦¥à
|
|
||||||
jr scrn2__
|
|
||||||
|
|
||||||
;-----------------------------------------------------------
|
|
||||||
; <20>¥áâ àâ ¤«ï Œ¥î ¨ ¤¨ «. ®ª®
|
|
||||||
;-----------------------------------------------------------
|
|
||||||
scrn4__: ld b,a
|
|
||||||
scrn5__: xor a ; ¨¤¥â¨ä. £«®¡. ®ª
|
|
||||||
di
|
|
||||||
rst 08h
|
|
||||||
ei
|
|
||||||
ret
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
mod1: ; ¬¥âª ¤«ï ¢ëç¨á«. à §¬¥à
|
|
||||||
|
|
||||||
;===========================================================
|
|
||||||
; <09>®¤£à㦠¥¬ë© Œ®¤ã«ì 1
|
|
||||||
; „à ©¢¥àë ª« ¢ë, ¬ë誨, ®¡à ¡®â稪 ¤¨ «. ®ª®, tv-®¡ê¥ªâë
|
; „à ©¢¥àë ª« ¢ë, ¬ë誨, ®¡à ¡®â稪 ¤¨ «. ®ª®, tv-®¡ê¥ªâë
|
||||||
;===========================================================
|
;=======================================================================
|
||||||
; ¢á¥£¤ ¯®¤ª«îç¥ (ªà®¬¥ ¢ë§®¢®¢ rst 10h, rst 18h)
|
; ¢á¥£¤ ¯®¤ª«îç¥ (ªà®¬¥ ¢ë§®¢®¢ rst 10h, rst 18h)
|
||||||
|
;
|
||||||
|
DISP 0
|
||||||
|
|
||||||
phase 0000h
|
FM_MOD_0_BLK.Start EQU $
|
||||||
|
|
||||||
include 'mod0/vectors.asm' ; ¢¥ªâ®àë ¯à¥àë¢ ¨©
|
include 'mod0/vectors.asm' ; ¢¥ªâ®àë ¯à¥àë¢ ¨©
|
||||||
include 'mod0/keybdrv.asm' ; ¤à ©¢¥à ª« ¢ë
|
include 'mod0/keybdrv.asm' ; ¤à ©¢¥à ª« ¢ë
|
||||||
include 'mod0/cursor.asm' ; ¯à®£à ¬¬ë© ªãàá®à
|
include 'mod0/cursor.asm' ; ¯à®£à ¬¬ë© ªãàá®à
|
||||||
include 'mod0/mousedrv.asm' ; ¤à ©¢¥à ¬ë誨
|
include 'mod0/mousedrv.asm' ; ¤à ©¢¥à ¬ë誨
|
||||||
|
|
||||||
include 'objs/dialog.asm' ; ®¡à ¡®â稪 ¤¨ «. ®ª®
|
include 'mod0/objs/dialog.asm' ; ®¡à ¡®â稪 ¤¨ «. ®ª®
|
||||||
include 'objs/button.asm' ; ®¡ê¥ªâ ~Button~
|
include 'mod0/objs/button.asm' ; ®¡ê¥ªâ ~Button~
|
||||||
include 'objs/inline.asm' ; ®¡ê¥ªâë ~Input Line~, ~Inp Line~
|
include 'mod0/objs/inline.asm' ; ®¡ê¥ªâë ~Input Line~, ~Inp Line~
|
||||||
include 'objs/listbox.asm' ; ®¡ê¥ªâ ~List Box~
|
include 'mod0/objs/listbox.asm' ; ®¡ê¥ªâ ~List Box~
|
||||||
include 'objs/radio.asm' ; ®¡ê¥ªâë ~Radio Button~, ~Check Box~
|
include 'mod0/objs/radio.asm' ; ®¡ê¥ªâë ~Radio Button~, ~Check Box~
|
||||||
include 'objs/process.asm' ; ®¡ê¥ªâ ~Process Line~
|
include 'mod0/objs/process.asm' ; ®¡ê¥ªâ ~Process Line~
|
||||||
include 'objs/pallete.asm' ; ®¡ê¥ªâ ~Pallete~
|
include 'mod0/objs/pallete.asm' ; ®¡ê¥ªâ ~Pallete~
|
||||||
include 'objs/dialog1.asm' ; ®¡ê¥ªâë ~Text Line~, ~Horiz. Line~
|
include 'mod0/objs/dialog1.asm' ; ®¡ê¥ªâë ~Text Line~, ~Horiz. Line~
|
||||||
include 'objs/hmenu.asm' ; Œ¥î: "Horizontal", "Pull", "Select disk"
|
include 'mod0/objs/hmenu.asm' ; Œ¥î: "Horizontal", "Pull", "Select disk"
|
||||||
include 'objs/umenu.asm' ; ¢ë§®¢ User-Menu
|
include 'mod0/objs/umenu.asm' ; ¢ë§®¢ User-Menu
|
||||||
|
|
||||||
include 'mod0/chdisk.asm' ; ¢ë§®¢ ¬¥î Select Disk
|
include 'mod0/chdisk.asm' ; ¢ë§®¢ ¬¥î Select Disk
|
||||||
include 'mod0/listdrv.asm' ; ¨¨æ. ᯨ᮪ ⨯®¢ ¤¨áª®¢
|
include 'mod0/listdrv.asm' ; ¨¨æ. ᯨ᮪ ⨯®¢ ¤¨áª®¢
|
||||||
include 'mod0/usermenu.asm' ; ¯®¤£®â®¢ª Œ¥î <20>®«ì§®¢ ⥫ï
|
include 'mod0/usermenu.asm' ; ¯®¤£®â®¢ª Œ¥î <20>®«ì§®¢ ⥫ï
|
||||||
|
FM_MOD_0_BLK:
|
||||||
|
.End EQU $
|
||||||
|
.Size EQU .End - .Start
|
||||||
|
|
||||||
dephase
|
ENT
|
||||||
|
;
|
||||||
|
DISPLAY "MODULE 0 ",/H,FM_MOD_0_BLK.Start," ",/H,FM_MOD_0_BLK.End," ",/A,FM_MOD_0_BLK.Size
|
||||||
|
;=======================================================================
|
||||||
|
|
||||||
mod2:
|
|
||||||
|
|
||||||
;===========================================================
|
;=======================================================================
|
||||||
; <09>®¤£à㦠¥¬ë© Œ®¤ã«ì 2
|
; <09>®¤£à㦠¥¬ë© Œ®¤ã«ì 1
|
||||||
;===========================================================
|
;=======================================================================
|
||||||
; ¯®áâ®ï® ¢ª«îç¥
|
; ¯®áâ®ï® ¢ª«îç¥, ªà®¬¥ ¢ë§®¢ ¢ìî¥à
|
||||||
|
;
|
||||||
phase 4000h
|
DISP #4000
|
||||||
|
|
||||||
|
FM_MOD_1_BLK.Start EQU $
|
||||||
include 'mod1/buffers.asm' ; à ¡. ¡ãä¥àë ®¡ê¥ªâ®¢
|
include 'mod1/buffers.asm' ; à ¡. ¡ãä¥àë ®¡ê¥ªâ®¢
|
||||||
include 'mod1/comline.asm' ; ª®¬-áâப
|
include 'mod1/comline.asm' ; ª®¬-áâப
|
||||||
include 'mod1/width.asm' ; ®£à . ¤«¨ë ¯ã⨠¯ ¥«¨
|
include 'mod1/width.asm' ; ®£à . ¤«¨ë ¯ã⨠¯ ¥«¨
|
||||||
@ -461,61 +199,59 @@ mod2:
|
|||||||
include 'mod1/mkdir.z80' ; ®¯¨á â¥«ì ®ª á®§¤ ¨ï ¯ ¯ª¨
|
include 'mod1/mkdir.z80' ; ®¯¨á â¥«ì ®ª á®§¤ ¨ï ¯ ¯ª¨
|
||||||
include 'mod1/delete.z80' ; ®¯¨á â¥«ì ®ª 㤠«¥¨¥ ä ©« /¯ ¯ª¨
|
include 'mod1/delete.z80' ; ®¯¨á â¥«ì ®ª 㤠«¥¨¥ ä ©« /¯ ¯ª¨
|
||||||
include 'mod1/rename.z80' ; ®¯¨á â¥«ì ®ª ¯¥à¥¨¬¥. ä ©«
|
include 'mod1/rename.z80' ; ®¯¨á â¥«ì ®ª ¯¥à¥¨¬¥. ä ©«
|
||||||
dephase
|
FM_MOD_1_BLK:
|
||||||
|
.End EQU $
|
||||||
|
.Size EQU .End - .Start
|
||||||
|
|
||||||
mod3:
|
ENT
|
||||||
|
;
|
||||||
|
DISPLAY "MODULE 1 ",/H,FM_MOD_1_BLK.Start," ",/H,FM_MOD_1_BLK.End," ",/A,FM_MOD_1_BLK.Size
|
||||||
|
;=======================================================================
|
||||||
|
|
||||||
;===========================================================
|
|
||||||
|
|
||||||
|
|
||||||
|
;=======================================================================
|
||||||
; <09>®¤£à㦠¥¬ë© Œ®¤ã«ì 3. ‘¯¥ª-ª®¤
|
; <09>®¤£à㦠¥¬ë© Œ®¤ã«ì 3. ‘¯¥ª-ª®¤
|
||||||
;===========================================================
|
;=======================================================================
|
||||||
; ¯®¤ª«. ¢à¥¬ï ¢ë§®¢ ᯥª-äãªæ¨©
|
; ¯®¤ª«. ¢à¥¬ï ¢ë§®¢ ᯥª-äãªæ¨©
|
||||||
|
;
|
||||||
|
|
||||||
phase 0000h
|
DISP 0
|
||||||
|
|
||||||
include 'spec/vect.asm' ; ¢¥ªâ®àë
|
FM_SPEC_BLK.Start EQU $
|
||||||
include 'spec/funcs.asm' ; ᯥª-äãªæ¨¨
|
include 'spec_fn/vect.asm' ; ¢¥ªâ®àë
|
||||||
|
include 'spec_fn/funcs.asm' ; ᯥª-äãªæ¨¨
|
||||||
|
FM_SPEC_BLK:
|
||||||
|
.End EQU $
|
||||||
|
.Size EQU .End - .Start
|
||||||
|
|
||||||
dephase
|
ENT
|
||||||
|
;
|
||||||
mod4:
|
DISPLAY "SPEC_FN ",/H,FM_SPEC_BLK.Start," ",/H,FM_SPEC_BLK.End," ",/A,FM_SPEC_BLK.Size
|
||||||
|
;=======================================================================
|
||||||
;===========================================================
|
|
||||||
; <09>®¤£à㦠¥¬ë© Œ®¤ã«ì 4. ‚ìî¥à
|
|
||||||
;===========================================================
|
|
||||||
; ¯®¤ª«. ¢à¥¬ï ¢ë§®¢ ¢ìî¥à
|
|
||||||
|
|
||||||
phase 4000h
|
|
||||||
|
|
||||||
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..."
|
|
||||||
|
|
||||||
dephase
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
; €¤à¥á ᥪ権 ¢à¥¬. ¬ áᨢ 梥⮢ ¢ ¡ãä¥à¥
|
; ;===========================================================
|
||||||
tmp_color_list equ work_buffer + 511 - len_color_array ; ç «® ¢à¥¬. ¬ áᨢ
|
; ; <09>®¤£à㦠¥¬ë© Œ®¤ã«ì 4. ‚ìî¥à
|
||||||
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
|
; DISP #4000
|
||||||
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
|
|
||||||
|
|
||||||
|
; 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
|
||||||
|
; ;
|
||||||
addr_id_block equ id_block ; ¤à¥á ï祩ª¨ id_block
|
; DISPLAY "FVIEW ",/H,FM_FVIEW_BLK.Start," ",/H,FM_FVIEW_BLK.End," ",/A,FM_FVIEW_BLK.Size
|
||||||
len_modul1 equ mod1 - mod0 ; à §¬¥à ®á. ª®¤ (#8000)
|
; ;=======================================================================
|
||||||
len_modul2 equ mod2 - mod1 ; à §¬¥à ¬®¤ã«ï (#0000)
|
|
||||||
len_modul3 equ mod3 - mod2 ; à §¬¥à ¬®¤ã«ï (#4000)
|
|
||||||
len_modul4 equ mod4 - mod3 ; à §¬¥à ᯥª-¬®¤ã«ï (#0000)
|
|
||||||
len_modul5 equ $ - mod4 ; à §¬¥à ¢ìî¥à (#4000)
|
|
||||||
@ -1,10 +1,14 @@
|
|||||||
CursorPos:
|
|
||||||
dw 1E00h ; Y/X ¯®§¨ז¨ן ×דאב®א (ם×א . ×®®א¤.)
|
|
||||||
|
|
||||||
|
|
||||||
;-----------------------------------------------------------
|
;-----------------------------------------------------------
|
||||||
; Šãàá®à ®¡ê¥ªâ "Input Line" ¨ äãªæ¨¨ "Command Line"
|
; Šãàá®à ®¡ê¥ªâ "Input Line" ¨ äãªæ¨¨ "Command Line"
|
||||||
;-----------------------------------------------------------
|
;-----------------------------------------------------------
|
||||||
|
INS_CUR_ZG: EQU #9B ; 19h
|
||||||
|
CURSOR_ZG: EQU #5B ; 1Ah
|
||||||
|
NORM_ZG: EQU #1B
|
||||||
|
;
|
||||||
|
CursorPos:
|
||||||
|
dw 1E00h ; Y/X ¯®§¨æ¨ï ªãàá®à (íªà . ª®®à¤.)
|
||||||
|
;
|
||||||
|
;
|
||||||
PrnILCr:db 3Eh ; ld a,..
|
PrnILCr:db 3Eh ; ld a,..
|
||||||
Timer: db 1 ; ¯ ã§ ¬¨£ ¨ï
|
Timer: db 1 ; ¯ ã§ ¬¨£ ¨ï
|
||||||
dec a
|
dec a
|
||||||
@ -22,15 +26,15 @@ PILCurs:ld de,(CursorPos) ; Y/X
|
|||||||
xor a
|
xor a
|
||||||
ld c,0B4h ; ¯®«ãç¨âì ᨬ¢®«
|
ld c,0B4h ; ¯®«ãç¨âì ᨬ¢®«
|
||||||
rst 08h
|
rst 08h
|
||||||
ld bc,1BB5h ; b=§ ×®£¥., ב=ב¨¬¢®« ם×א
|
ld bc,NORM_ZG*256 + #B5 ; b=§ ª®£¥., á=ᨬ¢®« íªà
|
||||||
ld a,(Flag)
|
ld a,(Flag)
|
||||||
or a
|
or a
|
||||||
jr z,curs__
|
jr z,curs__
|
||||||
ld b,1Ah ; ח¥אג
|
ld b,CURSOR_ZG ; ç¥àâ
|
||||||
ld a,(D0642) ; ä« £¨ ª« ¢ë
|
ld a,(D0642) ; ä« £¨ ª« ¢ë
|
||||||
bit 1,a ; ¡¨â Ins
|
bit 1,a ; ¡¨â Ins
|
||||||
jr nz,$+4
|
jr nz,$+4
|
||||||
ld b,19h ; <20>«®×
|
ld b,INS_CUR_ZG ; ¡«®ª
|
||||||
curs__: xor a ; ®¬¥à ®ª
|
curs__: xor a ; ®¬¥à ®ª
|
||||||
rst 08h
|
rst 08h
|
||||||
ld a,1
|
ld a,1
|
||||||
@ -57,6 +61,6 @@ CursPos1:
|
|||||||
xor a
|
xor a
|
||||||
rst 08h
|
rst 08h
|
||||||
xor a
|
xor a
|
||||||
ld bc,1BB5h ; ב¨¬¢®« ם×א
|
ld bc,NORM_ZG*256 + #B5 ; ᨬ¢®« íªà
|
||||||
rst 08h
|
rst 08h
|
||||||
ret
|
ret
|
||||||
|
|||||||
@ -5,15 +5,15 @@
|
|||||||
init_list_types_drives:
|
init_list_types_drives:
|
||||||
ld a,(disk) ; ¤¨áª ªâ. ¯ ¥«¨
|
ld a,(disk) ; ¤¨áª ªâ. ¯ ¥«¨
|
||||||
ld c,1 ; ãáâ. ¤¨áª
|
ld c,1 ; ãáâ. ¤¨áª
|
||||||
rst 10h
|
rst ToDSS
|
||||||
jr nc,init_list_types_drv1
|
jr nc,init_list_types_drv1
|
||||||
; ¨á¯. ®¬¥à boot-¤¨áª
|
; ¨á¯. ®¬¥à boot-¤¨áª
|
||||||
ld bc,0009h
|
ld bc,0009h
|
||||||
rst 10h
|
rst ToDSS
|
||||||
ld (disk),a
|
ld (disk),a
|
||||||
; ã§ âì ®¬¥à ¯®á«. ¤¨áª ¢ á¨á⥬¥
|
; ã§ âì ®¬¥à ¯®á«. ¤¨áª ¢ á¨á⥬¥
|
||||||
ld c,1 ; ãáâ. ¤¨áª
|
ld c,1 ; ãáâ. ¤¨áª
|
||||||
rst 10h
|
rst ToDSS
|
||||||
init_list_types_drv1:
|
init_list_types_drv1:
|
||||||
ld (lastdrive),a ; ¯®á«¥¤. ¤¨áª ¢ á¨á⥬¥ (0..25)
|
ld (lastdrive),a ; ¯®á«¥¤. ¤¨áª ¢ á¨á⥬¥ (0..25)
|
||||||
cp 1+1
|
cp 1+1
|
||||||
@ -29,19 +29,19 @@ make_dlist_loop:
|
|||||||
push bc
|
push bc
|
||||||
ld a,c ; ®¬¥à ¤¨áª
|
ld a,c ; ®¬¥à ¤¨áª
|
||||||
ld c,1 ; open device
|
ld c,1 ; open device
|
||||||
rst 18h
|
rst ToDSS.DRV
|
||||||
pop bc
|
pop bc
|
||||||
jr c,make_dlist_err
|
jr c,make_dlist_err
|
||||||
push bc
|
push bc
|
||||||
ld a,c
|
ld a,c
|
||||||
ld de,work_buffer ; ¡ãä¥à
|
ld de,work_buffer ; ¡ãä¥à
|
||||||
ld c,4 ; get BPB
|
ld c,4 ; get BPB
|
||||||
rst 18h
|
rst ToDSS.DRV
|
||||||
pop bc
|
pop bc
|
||||||
jr c,make_dlist_err
|
jr c,make_dlist_err
|
||||||
ld a,c ; ®¬¥à ¤¨áª
|
ld a,c ; ®¬¥à ¤¨áª
|
||||||
ld c,2 ; close device
|
ld c,2 ; close device
|
||||||
rst 18h
|
rst ToDSS.DRV
|
||||||
pop hl
|
pop hl
|
||||||
pop bc
|
pop bc
|
||||||
ld a,(work_buffer+21) ; ¡ ©â ä®à¬ â ®á¨â¥«ï
|
ld a,(work_buffer+21) ; ¡ ©â ä®à¬ â ®á¨â¥«ï
|
||||||
|
|||||||
@ -161,7 +161,7 @@ RefrMs1:call RestorM
|
|||||||
|
|
||||||
; Restore Screen from Mouse
|
; Restore Screen from Mouse
|
||||||
RestorM:ld de,(TempXY)
|
RestorM:ld de,(TempXY)
|
||||||
in a,(89h)
|
in a,(PORT_Y)
|
||||||
ld c,a
|
ld c,a
|
||||||
in a,(0E2h)
|
in a,(0E2h)
|
||||||
ld b,a
|
ld b,a
|
||||||
@ -178,7 +178,7 @@ RestorM:ld de,(TempXY)
|
|||||||
and 80h
|
and 80h
|
||||||
or 1
|
or 1
|
||||||
add a,e
|
add a,e
|
||||||
out (89h),a
|
out (PORT_Y),a
|
||||||
inc l
|
inc l
|
||||||
inc l
|
inc l
|
||||||
ld a,(hl)
|
ld a,(hl)
|
||||||
@ -187,7 +187,7 @@ RestorM:ld de,(TempXY)
|
|||||||
ld a,b
|
ld a,b
|
||||||
out (0E2h),a
|
out (0E2h),a
|
||||||
ld a,c
|
ld a,c
|
||||||
out (89h),a
|
out (PORT_Y),a
|
||||||
ret
|
ret
|
||||||
|
|
||||||
; Put Text Mouse Cursor On Screen
|
; Put Text Mouse Cursor On Screen
|
||||||
@ -204,7 +204,7 @@ MousWrt:ld de,(Xcoord)
|
|||||||
and 1Fh
|
and 1Fh
|
||||||
ld d,a
|
ld d,a
|
||||||
ld (TempXY),de
|
ld (TempXY),de
|
||||||
in a,(89h)
|
in a,(PORT_Y)
|
||||||
ld c,a
|
ld c,a
|
||||||
in a,(0E2h)
|
in a,(0E2h)
|
||||||
ld b,a
|
ld b,a
|
||||||
@ -221,7 +221,7 @@ MousWrt:ld de,(Xcoord)
|
|||||||
and 80h
|
and 80h
|
||||||
or 1
|
or 1
|
||||||
add a,e
|
add a,e
|
||||||
out (89h),a
|
out (PORT_Y),a
|
||||||
inc l
|
inc l
|
||||||
inc l
|
inc l
|
||||||
ld a,(hl)
|
ld a,(hl)
|
||||||
@ -231,7 +231,7 @@ MousWrt:ld de,(Xcoord)
|
|||||||
ld a,b
|
ld a,b
|
||||||
out (0E2h),a
|
out (0E2h),a
|
||||||
ld a,c
|
ld a,c
|
||||||
out (89h),a
|
out (PORT_Y),a
|
||||||
ret
|
ret
|
||||||
|
|
||||||
; <20>®«ãç¨âì ®¢ãî ¨ä®à¬ æ¨î ® ¬ë誥
|
; <20>®«ãç¨âì ®¢ãî ¨ä®à¬ æ¨î ® ¬ë誥
|
||||||
|
|||||||
@ -7,13 +7,13 @@
|
|||||||
db -1
|
db -1
|
||||||
; RST 08h. ‚ë§®¢ <20>¨®á
|
; RST 08h. ‚ë§®¢ <20>¨®á
|
||||||
push af
|
push af
|
||||||
ld a,0 ; ¢ª«. <20>‡“ <20>¨®á ¢ 0-¥ ®ª®
|
ld a,SYS_PORT.BIOS
|
||||||
out (7Ch),a
|
out (SYS_PORT.ON),a
|
||||||
pop af
|
pop af
|
||||||
ret
|
ret
|
||||||
db -1
|
db -1
|
||||||
; RST 10h. ‚ë§®¢ „Ž‘-
|
; RST 10h. ‚ë§®¢ „Ž‘-
|
||||||
jp int10 ; fm.asm
|
jp int10 ; Main.asm
|
||||||
db -1
|
db -1
|
||||||
db -1
|
db -1
|
||||||
db -1
|
db -1
|
||||||
@ -36,7 +36,7 @@
|
|||||||
; RST 28h. ‚ë§®¢ ᯥª-ª®¤
|
; RST 28h. ‚ë§®¢ ᯥª-ª®¤
|
||||||
push af
|
push af
|
||||||
ld a,0 ; á®åà. page_spec
|
ld a,0 ; á®åà. page_spec
|
||||||
out (82h),a
|
out (SLOT0),a
|
||||||
pop af
|
pop af
|
||||||
ret
|
ret
|
||||||
db -1
|
db -1
|
||||||
|
|||||||
@ -25,7 +25,7 @@ max_depth equ 20+1 ;
|
|||||||
ScanTree:
|
ScanTree:
|
||||||
ld (tree_stack),sp
|
ld (tree_stack),sp
|
||||||
ld bc,3135h ; ®ç¨áâ¨âì ¡ãä¥à á¨áâ. ª« ¢ë
|
ld bc,3135h ; ®ç¨áâ¨âì ¡ãä¥à á¨áâ. ª« ¢ë
|
||||||
rst 10h
|
rst ToDSS
|
||||||
ld sp,work_buffer+512 ; á⥪ ¯à®æ¥¤ãàë
|
ld sp,work_buffer+512 ; á⥪ ¯à®æ¥¤ãàë
|
||||||
in a,(SLOT3)
|
in a,(SLOT3)
|
||||||
ld (tree_page),a ; á®åà. ¯®àâ
|
ld (tree_page),a ; á®åà. ¯®àâ
|
||||||
@ -60,7 +60,7 @@ ScanTree:
|
|||||||
tree_loop:
|
tree_loop:
|
||||||
push hl ; ¤à¥á áâ ண® í«¥¬¥â (¯®á«¥ LoadDIR)
|
push hl ; ¤à¥á áâ ண® í«¥¬¥â (¯®á«¥ LoadDIR)
|
||||||
ld c,31h ; ®¯à®á á¨áâ. ª« ¢ë
|
ld c,31h ; ®¯à®á á¨áâ. ª« ¢ë
|
||||||
rst 10h
|
rst ToDSS
|
||||||
call nz,abort_tree_scan ; ¢ë¢¥á⨠®ª® "¯à¥àë¢. ®¯¥à 樨"
|
call nz,abort_tree_scan ; ¢ë¢¥á⨠®ª® "¯à¥àë¢. ®¯¥à 樨"
|
||||||
pop hl
|
pop hl
|
||||||
ld a,(depth_tree) ; ®¬¥à ⥪. ãà®¢ï ¢«®¦¥¨©
|
ld a,(depth_tree) ; ®¬¥à ⥪. ãà®¢ï ¢«®¦¥¨©
|
||||||
@ -82,13 +82,13 @@ tree_depth_ok:
|
|||||||
jr z,dirs_end ; ¥â ¢«®¦¥¨©, ¢¥àãâìáï ¢ ç. ã஢¥ì
|
jr z,dirs_end ; ¥â ¢«®¦¥¨©, ¢¥àãâìáï ¢ ç. ã஢¥ì
|
||||||
ld (cur_tree_adr+1),hl ; ¨¬ï ¯ ¯ª¨ ⥪. ã஢ï
|
ld (cur_tree_adr+1),hl ; ¨¬ï ¯ ¯ª¨ ⥪. ã஢ï
|
||||||
ld c,1Dh ; ãáâ. ¯ãâì ¯ ¯ªã ⥪. ã஢ï
|
ld c,1Dh ; ãáâ. ¯ãâì ¯ ¯ªã ⥪. ã஢ï
|
||||||
rst 10h
|
rst ToDSS
|
||||||
call scan_cur_level ; ᪠¨à. ®¤®£® ã஢ï + á⮯ª í«¥¬.
|
call scan_cur_level ; ᪠¨à. ®¤®£® ã஢ï + á⮯ª í«¥¬.
|
||||||
jr c,tree_loop ; ¥áâì ¯ ¯ª¨
|
jr c,tree_loop ; ¥áâì ¯ ¯ª¨
|
||||||
; ¢¥àãâìáï ¯à¥¤. ã஢¥ì
|
; ¢¥àãâìáï ¯à¥¤. ã஢¥ì
|
||||||
dirs_end:
|
dirs_end:
|
||||||
ld c,31h ; ®¯à®á á¨áâ. ª« ¢ë
|
ld c,31h ; ®¯à®á á¨áâ. ª« ¢ë
|
||||||
rst 10h
|
rst ToDSS
|
||||||
call nz,abort_tree_scan ; ¢ë¢¥á⨠®ª® "¯à¥àë¢. ®¯¥à 樨"
|
call nz,abort_tree_scan ; ¢ë¢¥á⨠®ª® "¯à¥àë¢. ®¯¥à 樨"
|
||||||
pop hl ; ⥪. í«¥¬¥â ¨§ á⥪
|
pop hl ; ⥪. í«¥¬¥â ¨§ á⥪
|
||||||
ld a,h
|
ld a,h
|
||||||
@ -109,7 +109,7 @@ dirs_end1:
|
|||||||
dirs_end2:
|
dirs_end2:
|
||||||
ld hl,parent_level ; ".."
|
ld hl,parent_level ; ".."
|
||||||
ld c,1Dh ; ãáâ. ¯ãâì
|
ld c,1Dh ; ãáâ. ¯ãâì
|
||||||
rst 10h
|
rst ToDSS
|
||||||
dirs_end3:
|
dirs_end3:
|
||||||
ld hl,depth_tree ; ®¬¥à ⥪. ãà®¢ï ¢«®¦¥¨©
|
ld hl,depth_tree ; ®¬¥à ⥪. ãà®¢ï ¢«®¦¥¨©
|
||||||
dec (hl)
|
dec (hl)
|
||||||
@ -162,7 +162,7 @@ scan_cur_level:
|
|||||||
push de
|
push de
|
||||||
ld a,37h ; ¢á¥, ªà®¬¥ ¬¥âª¨ ⮬
|
ld a,37h ; ¢á¥, ªà®¬¥ ¬¥âª¨ ⮬
|
||||||
ld bc,0119h ; f_first 8.3
|
ld bc,0119h ; f_first 8.3
|
||||||
rst 10h
|
rst ToDSS
|
||||||
pop hl
|
pop hl
|
||||||
pop ix
|
pop ix
|
||||||
jr c,scan_level_exit ; ¥ ©¤¥®
|
jr c,scan_level_exit ; ¥ ©¤¥®
|
||||||
@ -173,7 +173,7 @@ scan_level_loop:
|
|||||||
ld de,work_buffer ; à ¡. ¡ãä¥à
|
ld de,work_buffer ; à ¡. ¡ãä¥à
|
||||||
push de
|
push de
|
||||||
ld c,1Ah ; f_next
|
ld c,1Ah ; f_next
|
||||||
rst 10h
|
rst ToDSS
|
||||||
pop hl
|
pop hl
|
||||||
pop ix
|
pop ix
|
||||||
jr nc,scan_level_loop ; § ¤ ¢ 横«
|
jr nc,scan_level_loop ; § ¤ ¢ 横«
|
||||||
@ -292,7 +292,7 @@ ins_tree_item:
|
|||||||
;-------------------------------------------------
|
;-------------------------------------------------
|
||||||
abort_tree_scan:
|
abort_tree_scan:
|
||||||
ld bc,3135h ; ®ç¨áâ¨âì ¡ãä¥à á¨áâ. ª« ¢ë
|
ld bc,3135h ; ®ç¨áâ¨âì ¡ãä¥à á¨áâ. ª« ¢ë
|
||||||
rst 10h
|
rst ToDSS
|
||||||
ld hl,dial_abort ; ®¯¨á â¥«ì ®ª
|
ld hl,dial_abort ; ®¯¨á â¥«ì ®ª
|
||||||
call DialogEr
|
call DialogEr
|
||||||
cp evCommand ; ᮡë⨥ "ª®¬ ¤ "
|
cp evCommand ; ᮡë⨥ "ª®¬ ¤ "
|
||||||
|
|||||||
@ -1,3 +1,4 @@
|
|||||||
|
MODULE VECT
|
||||||
; rst 00h
|
; rst 00h
|
||||||
jp $+3
|
jp $+3
|
||||||
db -1
|
db -1
|
||||||
@ -7,20 +8,20 @@
|
|||||||
db -1
|
db -1
|
||||||
; RST 08h. BIOS calls
|
; RST 08h. BIOS calls
|
||||||
push af
|
push af
|
||||||
ld a,0 ; ¢ª«. <20>‡“ <20>¨®á ¢ 0-¥ ®ª®
|
ld a,SYS_PORT.BIOS
|
||||||
out (7Ch),a
|
out (SYS_PORT.ON),a
|
||||||
pop af
|
pop af
|
||||||
ret
|
ret
|
||||||
db 0C9h
|
db 0C9h
|
||||||
; RST 10h. DOS calls
|
; RST 10h. DOS calls
|
||||||
jp alt10 ; fm.asm
|
jp alt10 ; Main.asm
|
||||||
db -1
|
db -1
|
||||||
db -1
|
db -1
|
||||||
db -1
|
db -1
|
||||||
db -1
|
db -1
|
||||||
db -1
|
db -1
|
||||||
; RST 18h
|
; RST 18h
|
||||||
jp alt18 ; fm.asm
|
jp alt18 ; Main.asm
|
||||||
db -1
|
db -1
|
||||||
db -1
|
db -1
|
||||||
db -1
|
db -1
|
||||||
@ -35,8 +36,9 @@
|
|||||||
db -1
|
db -1
|
||||||
; rst 28h
|
; rst 28h
|
||||||
rst28: push af
|
rst28: push af
|
||||||
|
.page+1:
|
||||||
ld a,0 ; á®åà. page_module0
|
ld a,0 ; á®åà. page_module0
|
||||||
out (82h),a
|
out (SLOT0),a
|
||||||
pop af
|
pop af
|
||||||
jr spec_interrupt
|
jr spec_interrupt
|
||||||
; rst 30h
|
; rst 30h
|
||||||
@ -99,13 +101,15 @@ rst28: push af
|
|||||||
; ˆá¯®«ì§®¢ âì ᢮© á⥪.
|
; ˆá¯®«ì§®¢ âì ᢮© á⥪.
|
||||||
;-------------------------------------------------
|
;-------------------------------------------------
|
||||||
spec_interrupt:
|
spec_interrupt:
|
||||||
ld (spc_stk+1),sp
|
ld (.spc_stk),sp
|
||||||
ld sp,spec_stack
|
ld sp,spec_stack
|
||||||
call spec_funcs ; ®âà ¡®âª äãªæ¨¨
|
call spec_funcs ; ®âà ¡®âª äãªæ¨¨
|
||||||
spc_stk:ld sp,0
|
.spc_stk+1:
|
||||||
|
ld sp,0
|
||||||
jp rst28 ; ¢ª«. 0-î áâà. ä¬
|
jp rst28 ; ¢ª«. 0-î áâà. ä¬
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
ds 64
|
ds 64
|
||||||
spec_stack: ; á⥪ ¡ ª¨
|
spec_stack: ; á⥪ ¡ ª¨
|
||||||
|
ENDMODULE
|
||||||
@ -1,3 +1,5 @@
|
|||||||
; ‚¥àá¨ï ¬¥¥¤¦¥à
|
; ‚¥àá¨ï ¬¥¥¤¦¥à
|
||||||
major_version equ 0 ; áâ. æ¨äà
|
major_version equ 0 ; áâ. æ¨äà
|
||||||
minor_version equ 8 ; ¬«. æ¨äà
|
minor_version equ 9 ; ¬«. æ¨äà
|
||||||
|
|
||||||
|
DEFINE str_version '0.09'
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user