mirror of
https://github.com/Tolik-Trek/File-Manager.git
synced 2026-06-15 09:21:37 +03:00
72 lines
1.5 KiB
NASM
Executable File
72 lines
1.5 KiB
NASM
Executable File
width_max equ 32 ; ¬ ªá. ¤«¨ ¯ã⨠¯ ¥«¨
|
|
|
|
|
|
;-------------------------------------------------
|
|
; Ž£à ¨ç¥¨¥ áâப¨ ¯ã⨠(¬ ªá. 32 ᨬ¢®« )
|
|
;-------------------------------------------------
|
|
width_path:
|
|
xor a
|
|
ld (width1__),a ; á¡à. ä« £ ¯¥à¥¯®«. áâப¨
|
|
; ã§ âì ¤«¨ã ¯ãâ¨
|
|
ld iy,(__path) ; ®¯¨á â¥«ì ¯ã⨠ªâ. ¯ ¥«¨
|
|
ld hl,(__buff) ; ¡ãä¥à ¯ã⨠ªâ. ¯ ¥«¨
|
|
ld e,l
|
|
ld d,h
|
|
ld bc,127;255 ; ¬ ªá. ¤«¨ ¯ã⨠;!HARDCODE cmd len
|
|
cpir
|
|
dec hl
|
|
push hl ; á®åà. ª®¥æ ¯ã⨠¢ ¡ãä¥à¥
|
|
sbc hl,de
|
|
ld a,l
|
|
cp width_max+1 ; 33
|
|
jr c,width__
|
|
; ¤«¨ ¯ã⨠> 32
|
|
ld a,width_max ; 32
|
|
ld (width1__),a ; ãáâ. ä« £
|
|
width__:
|
|
ld c,a ; ¤«¨ áâப¨ ¯ãâ¨
|
|
ld b,0
|
|
add a,3+1 ; + ¨¬ï ¤¨áª ¨ ª®æ¥¢®© ¯à®¡¥«
|
|
ld (iy+0),a ; ¯®« ï ¤«¨ áâப¨
|
|
ex af,af'
|
|
push iy
|
|
pop hl
|
|
ld de,7
|
|
add hl,de
|
|
ex de,hl ; de=¯à¨¥¬ë© ¡ãä¥à
|
|
pop hl ; ¢®ááâ. ª®¥æ ¯ã⨠¢ ¡ãä¥à¥
|
|
; ᪮¯¨à®¢ âì áâபã
|
|
and a
|
|
sbc hl,bc ; hl= ç «® ¯¥à¥ª 窨
|
|
push de
|
|
ldir
|
|
ld a," "
|
|
ld (de),a ; ª®æ¥¢®© ¯à®¡¥«
|
|
inc de
|
|
xor a
|
|
ld (de),a ; ª®¥æ ®¯¨á ⥫ï
|
|
pop de
|
|
width1__+1:
|
|
ld a,0 ; 0/32 ¥â/¤ ä« £ ¯¥à¥¯®«. áâப¨
|
|
or a
|
|
jr z,width2__
|
|
ld a,'\'
|
|
ld (de),a
|
|
inc de
|
|
ld a,"."
|
|
ld (de),a
|
|
inc de
|
|
ld (de),a
|
|
; æ¥âà¨à®¢ âì áâபã
|
|
width2__:
|
|
ex af,af' ; ¯®« ï ¤«¨ áâப¨
|
|
srl a ; / 2
|
|
ld c,a
|
|
ld a,20 ; è¨à¨ ¯ ¥«¨ / 2
|
|
sub c
|
|
ld (iy+3),a ; X ¯®«®¦. áâப¨
|
|
ld a,(disk) ; ®¬¥à ¤¨áª ªâ. ¯ ¥«¨
|
|
add a,"A"
|
|
ld (iy+5),a
|
|
ret
|