mirror of
https://github.com/Tolik-Trek/Estex-DSS.git
synced 2026-06-15 01:11:48 +03:00
-bug с выводом строки в BAT
This commit is contained in:
parent
b90cabb44b
commit
f389fbb938
@ -122,8 +122,4 @@ PUTCHAR: LD C,0
|
|||||||
;
|
;
|
||||||
POP HL
|
POP HL
|
||||||
RET
|
RET
|
||||||
|
|
||||||
; .NO_SCROLL:
|
|
||||||
|
|
||||||
; .CHAR: DZ "X"
|
|
||||||
;///////////////////////////////////////////////////////////////////////
|
;///////////////////////////////////////////////////////////////////////
|
||||||
@ -1 +1 @@
|
|||||||
65
|
66
|
||||||
@ -323,8 +323,10 @@ CMDMODE:
|
|||||||
ld b,a
|
ld b,a
|
||||||
inc hl ;+5
|
inc hl ;+5
|
||||||
push bc
|
push bc
|
||||||
ld c,BIOS.LP_PRINT_LINE2 ; ¢ë¢®¤ áâப¨ ¡¥§ âਡã⮢
|
LD C,Dss.PChars
|
||||||
RST ToBIOS
|
RST ToDSS
|
||||||
|
;ld c,BIOS.LP_PRINT_LINE2 ; ¢ë¢®¤ áâப¨ ¡¥§ âਡã⮢
|
||||||
|
;RST ToBIOS
|
||||||
pop bc ; b=¤«¨ áâப¨
|
pop bc ; b=¤«¨ áâப¨
|
||||||
ld a,(width_inpline) ; è¨à¨ ¯®«ï ¢¢®¤ (76..48)
|
ld a,(width_inpline) ; è¨à¨ ¯®«ï ¢¢®¤ (76..48)
|
||||||
sub b
|
sub b
|
||||||
@ -403,7 +405,7 @@ EVALCMD: xor a
|
|||||||
call EVALSTR
|
call EVALSTR
|
||||||
ld hl,Buffers.work.buffer2 ;work_buffer+256
|
ld hl,Buffers.work.buffer2 ;work_buffer+256
|
||||||
ld de,Buffers.input_line.Path ; ªã¤
|
ld de,Buffers.input_line.Path ; ªã¤
|
||||||
ld bc,255 ;!HARDCODE
|
ld bc,max_len_comline+2
|
||||||
.loop: LD A,C
|
.loop: LD A,C
|
||||||
DEC A
|
DEC A
|
||||||
JR Z,.error
|
JR Z,.error
|
||||||
@ -413,10 +415,11 @@ EVALCMD: xor a
|
|||||||
inc b
|
inc b
|
||||||
or a
|
or a
|
||||||
jr nz,.loop
|
jr nz,.loop
|
||||||
|
;
|
||||||
dec b
|
dec b
|
||||||
ld a,b
|
ld a,b
|
||||||
ld (Buffers.input_line.Symbols_Num),a ; ¤«¨ áâப¨ (edline.asm)
|
ld (Buffers.input_line.Symbols_Num),a ; ¤«¨ áâப¨ (edline.asm)
|
||||||
and a
|
;and a
|
||||||
ret
|
ret
|
||||||
;
|
;
|
||||||
.error: LD (DE),A
|
.error: LD (DE),A
|
||||||
|
|||||||
@ -57,6 +57,7 @@ input_line:
|
|||||||
ld (cursor_position),de ; Y/X ¯®§¨æ¨ï ªãàá®à
|
ld (cursor_position),de ; Y/X ¯®§¨æ¨ï ªãàá®à
|
||||||
call clear_inpline ; ®ç¨áâ¨âì áâàãªâãàã ~input line~
|
call clear_inpline ; ®ç¨áâ¨âì áâàãªâãàã ~input line~
|
||||||
call print_compath ; ¢ë¢¥á⨠¯ãâì + ®¢ ï è¨à¨ ¯®«ï ¢¢®¤
|
call print_compath ; ¢ë¢¥á⨠¯ãâì + ®¢ ï è¨à¨ ¯®«ï ¢¢®¤
|
||||||
|
call print_inpline
|
||||||
jp event_input_line ; ®¡à ¡. áâப¨ ¢¢®¤
|
jp event_input_line ; ®¡à ¡. áâப¨ ¢¢®¤
|
||||||
|
|
||||||
|
|
||||||
@ -98,6 +99,7 @@ print_compath:
|
|||||||
ld a,">"
|
ld a,">"
|
||||||
ld bc,1*256 + BIOS.LP_PRINT_SYM ; ᨬ¢®« ¡¥§ âਡãâ
|
ld bc,1*256 + BIOS.LP_PRINT_SYM ; ᨬ¢®« ¡¥§ âਡãâ
|
||||||
RST ToBIOS
|
RST ToBIOS
|
||||||
|
RET
|
||||||
;jr print_inpline ; ¢ë¢®¤ áâப¨ ¢¢®¤
|
;jr print_inpline ; ¢ë¢®¤ áâப¨ ¢¢®¤
|
||||||
;-------------------------------------------------
|
;-------------------------------------------------
|
||||||
; ‚뢮¤ áâப¨ ~input line~ íªà
|
; ‚뢮¤ áâப¨ ~input line~ íªà
|
||||||
@ -156,7 +158,7 @@ print_inpline:
|
|||||||
ld e,(iy + Input_Line.Cur_X) ;+2 ⥪. ¯®«®¦. ªãàá®à ¢ áâப¥
|
ld e,(iy + Input_Line.Cur_X) ;+2 ⥪. ¯®«®¦. ªãàá®à ¢ áâப¥
|
||||||
add a,e
|
add a,e
|
||||||
cp width_inpline.MAX ; è¨à¨ íªà
|
cp width_inpline.MAX ; è¨à¨ íªà
|
||||||
jr c,prne1__
|
jr c,.prne1
|
||||||
ld b,width_inpline.MAX-1
|
ld b,width_inpline.MAX-1
|
||||||
sub b
|
sub b
|
||||||
ld d,a ; " ¥§¤" § ¯à ¢ë© ªà ©
|
ld d,a ; " ¥§¤" § ¯à ¢ë© ªà ©
|
||||||
@ -164,7 +166,7 @@ print_inpline:
|
|||||||
sub d
|
sub d
|
||||||
ld (iy + Input_Line.Cur_X),a ;+2 ®¢®¥ ¯®«®¦. ªãàá®à
|
ld (iy + Input_Line.Cur_X),a ;+2 ®¢®¥ ¯®«®¦. ªãàá®à
|
||||||
ld a,b
|
ld a,b
|
||||||
prne1__:ld (cursor_position),a ; X ¯®«®¦. ªãàá®à íªà ¥
|
.prne1: ld (cursor_position),a ; X ¯®«®¦. ªãàá®à íªà ¥
|
||||||
ret
|
ret
|
||||||
|
|
||||||
; ¢å®¤: HL - ¯®«ë© ¯ãâì
|
; ¢å®¤: HL - ¯®«ë© ¯ãâì
|
||||||
@ -367,7 +369,7 @@ inpline_work:
|
|||||||
add a,(iy + Input_Line.Left_Shift)
|
add a,(iy + Input_Line.Left_Shift)
|
||||||
cp (iy + Input_Line.max_Len)
|
cp (iy + Input_Line.max_Len)
|
||||||
;ret nc
|
;ret nc
|
||||||
JR NC,LastChar_BEEP
|
JR NC,NoMoreChars_BEEP
|
||||||
bit 7,(iy + Input_Line.ReadyString)
|
bit 7,(iy + Input_Line.ReadyString)
|
||||||
;ret nz
|
;ret nz
|
||||||
JR NZ,NoMoreChars_BEEP
|
JR NZ,NoMoreChars_BEEP
|
||||||
@ -424,22 +426,34 @@ no_insert:
|
|||||||
pop de ; ¢®ááâ. ¡ « á á⥪
|
pop de ; ¢®ááâ. ¡ « á á⥪
|
||||||
input_line_done:
|
input_line_done:
|
||||||
ret
|
ret
|
||||||
LastChar_BEEP:
|
; LastChar_BEEP:
|
||||||
;!TODO ¥á«¨ ᨬ¢®«ë ¯à¨¢ëᨫ¨ ¬ ªá¨¬ «ì®¥ ç¨á«®, â® íªà ¥
|
; ; ¥á«¨ ᨬ¢®«ë ¯à¨¢ëᨫ¨ ¬ ªá¨¬ «ì®¥ ç¨á«®, â® íªà ¥
|
||||||
; ¢ áâப¥ ®áâ ñâáï íå® ¦ ⮩ ª« ¢¨è¨, ª®â®à ï ¥ ¢«¥§«
|
; ; ¢ áâப¥ ®áâ ñâáï íå® ¦ ⮩ ª« ¢¨è¨, ª®â®à ï ¥ ¢«¥§«
|
||||||
; ¨ ¢¨á¨â ¤® ¦ â¨ï ®ç¥à¥¤®© ª« ¢¨è¨. ˆá¯à ¢¨âì.
|
; ; ¨ ¢¨á¨â ¤® ¦ â¨ï ®ç¥à¥¤®© ª« ¢¨è¨. ˆá¯à ¢¨âì.
|
||||||
LD A,7 ;ASCII BELL
|
; LD A,7 ;ASCII BELL
|
||||||
LD C,Dss.PutChar
|
; LD C,Dss.PutChar
|
||||||
JP ToDSS
|
; JP ToDSS
|
||||||
|
|
||||||
|
;!FIXIT SCROLL ᤥ« âì 㦥 äãªæ¨¨ ¤®á ¤«ï ¯¥ç ⨠¢ ª®á®«ì ¡¥§ áªà®««
|
||||||
NoMoreChars_BEEP:
|
NoMoreChars_BEEP:
|
||||||
;!TODO ¥á«¨ ᨬ¢®«ë ¯à¨¢ëᨫ¨ ¬ ªá¨¬ «ì®¥ ç¨á«®, â® íªà ¥
|
;!TODO ¥á«¨ ᨬ¢®«ë ¯à¨¢ëᨫ¨ ¬ ªá¨¬ «ì®¥ ç¨á«®, â® íªà ¥
|
||||||
; ¢ áâப¥ ®áâ ñâáï íå® ¦ ⮩ ª« ¢¨è¨, ª®â®à ï ¥ ¢«¥§«
|
; ¢ áâப¥ ®áâ ñâáï íå® ¦ ⮩ ª« ¢¨è¨, ª®â®à ï ¥ ¢«¥§«
|
||||||
; ¨ ¢¨á¨â ¤® ¦ â¨ï ®ç¥à¥¤®© ª« ¢¨è¨. ˆá¯à ¢¨âì.
|
; ¨ ¢¨á¨â ¤® ¦ â¨ï ®ç¥à¥¤®© ª« ¢¨è¨. ˆá¯à ¢¨âì.
|
||||||
LD A,7 ;ASCII BELL
|
LD DE,(cursor_position)
|
||||||
|
LD C,Dss.Locate
|
||||||
|
RST ToDSS
|
||||||
|
PUSH DE
|
||||||
|
LD C,Dss.RdChar
|
||||||
|
RST ToDSS ; A - ᨬ¢®«, B - âਡãâ
|
||||||
|
POP DE
|
||||||
|
LD A,' ' ; ᨬ¢®«
|
||||||
|
LD C,Dss.WrChar ; #58
|
||||||
|
RST ToDSS
|
||||||
|
LD A,7 ;ASCII BELL
|
||||||
LD C,Dss.PutChar
|
LD C,Dss.PutChar
|
||||||
JP ToDSS
|
JP ToDSS
|
||||||
|
|
||||||
|
|
||||||
; ‘®¡ë⨥ - ªãàá. ª« ¢¨è¨ ¨«¨ ª®¬¡¨ 樨
|
; ‘®¡ë⨥ - ªãàá. ª« ¢¨è¨ ¨«¨ ª®¬¡¨ 樨
|
||||||
EvComComb:
|
EvComComb:
|
||||||
ld b,(hl) ;+1 what
|
ld b,(hl) ;+1 what
|
||||||
|
|||||||
@ -8,8 +8,8 @@ SAVEHL: dw 0
|
|||||||
;-------------------------------------------------------------
|
;-------------------------------------------------------------
|
||||||
COMP: call EVALCMD ; (batch.asm)
|
COMP: call EVALCMD ; (batch.asm)
|
||||||
RET C
|
RET C
|
||||||
ld hl,Buffers.input_line.Path
|
ld hl,Buffers.input_line.Path - 1
|
||||||
dec hl
|
;dec hl
|
||||||
ld c,(hl) ; か┃<E3818B> 痰牀<E797B0>
|
ld c,(hl) ; か┃<E3818B> 痰牀<E797B0>
|
||||||
ld b,0
|
ld b,0
|
||||||
inc hl ; Buffers.input_line.Path
|
inc hl ; Buffers.input_line.Path
|
||||||
|
|||||||
@ -553,6 +553,12 @@ T8C24: db "OFF",0
|
|||||||
include 'Commands/set.asm' ; § ¤ âì ¯¥à¥¬¥ãî ®ªà㦥¨ï
|
include 'Commands/set.asm' ; § ¤ âì ¯¥à¥¬¥ãî ®ªà㦥¨ï
|
||||||
include 'Commands/reboot.asm' ; á®äâ à¥á¥â
|
include 'Commands/reboot.asm' ; á®äâ à¥á¥â
|
||||||
;
|
;
|
||||||
|
DISPLAY "bat_params: ",/H,Buffers.bat_params, ". Size: ",/H, BAT_PARAMS, " End: ",/H, Buffers.bat_params + BAT_PARAMS - 1
|
||||||
|
DISPLAY "screen_path: ",/H,Buffers.screen_path, ". Size: ",/H, 2 + max_screen_path + 1, " End: ",/H, Buffers.screen_path + (2 + max_screen_path + 1) - 1
|
||||||
|
DISPLAY "sys_path: ",/H,Buffers.sys_path, ". Size: ",/H, 256, " End: ",/H, Buffers.sys_path + 255
|
||||||
|
DISPLAY "input_line: ",/H,Buffers.input_line, ". Size: ",/H, Input_Line, " End: ",/H, Buffers.input_line + Input_Line - 1
|
||||||
|
DISPLAY "history: ",/H,Buffers.history, ". Size: ",/H, history_size, " End: ",/H, Buffers.history + history_size - 1
|
||||||
|
DISPLAY "work: ",/H,Buffers.work, ". Size: ",/H, Work, " End: ",/H, Buffers.work + Work - 1
|
||||||
DISPLAY "Empty space for buffers from ",/H,$
|
DISPLAY "Empty space for buffers from ",/H,$
|
||||||
DISPLAY "Free space from ",/H,$ + Struc_Buffers
|
DISPLAY "Free space from ",/H,$ + Struc_Buffers
|
||||||
assert ($ + Struc_Buffers) < (stack_point - stack_size), "Buffers can leack to stack!"
|
assert ($ + Struc_Buffers) < (stack_point - stack_size), "Buffers can leack to stack!"
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
STRUCT Input_Line
|
STRUCT Input_Line
|
||||||
.max_Len BYTE 253 ;+0 254 ¬ ªá. ç¨á«® ¢¢®¤. ᨬ¢®«®¢
|
.max_Len BYTE max_len_comline ;+0 .max_Len-1=254 ¬ ªá. ç¨á«® ¢¢®¤. ᨬ¢®«®¢
|
||||||
.ReadyString BYTE 0 ;+1 ä« £ ReadyString
|
.ReadyString BYTE 0 ;+1 ä« £ ReadyString
|
||||||
.Cur_X BYTE 0 ;+2 X ⥪. ¯®«®¦. ªãàá®à ¢ ¯à¥¤¥« å áâப¨
|
.Cur_X BYTE 0 ;+2 X ⥪. ¯®«®¦. ªãàá®à ¢ ¯à¥¤¥« å áâப¨
|
||||||
.Left_Shift BYTE 0 ;+3 X ᬥé. áâப¨ § «¥¢ë© ªà © (¢ ᨬ¢®« å)
|
.Left_Shift BYTE 0 ;+3 X ᬥé. áâப¨ § «¥¢ë© ªà © (¢ ᨬ¢®« å)
|
||||||
|
|||||||
@ -1 +1 @@
|
|||||||
Subproject commit 51198ce44bd19f511b63e6fafaf91b3de5470f9d
|
Subproject commit d2ba40c4620459681fdc5eb8d4cadcb50eb79aa8
|
||||||
Loading…
Reference in New Issue
Block a user