mirror of
https://github.com/Tolik-Trek/Estex-DSS.git
synced 2026-06-15 09:21:47 +03:00
был баг при переполнении переменной окружения
This commit is contained in:
parent
507064e64f
commit
c024399f44
@ -128,6 +128,7 @@ DELETE_LFN_RECORDS:
|
||||
; <20>®¨áª § ¯¨á¨ ª â «®£ ¢ ᯨ᪥ ª â «®£
|
||||
;
|
||||
; ¢å®¤: a = âਡãâ § ¯¨á¨
|
||||
; (MASKARE) = ¨¬ï ä ©« /¤¨à¥ªâ®à¨¨
|
||||
; ¢ë室: de = ¨¤¥ªá § ¯¨á¨ ¢ ᯨ᪥ ª â «®£
|
||||
; (HANDBUF) = file's direcory record
|
||||
; CF - ª â «®£ ¥ ©¤¥
|
||||
|
||||
@ -280,6 +280,7 @@ CMDMODE:
|
||||
;xor a
|
||||
;ld (D96A6),a ; (inline.asm)
|
||||
call EVALCMD ; (batch.asm)
|
||||
RET C
|
||||
;ld ix,T96AC ; 㦮?? § ª®¬¥â ਫ (inline.asm)
|
||||
;ld hl,T96AE ;;256 ¡ãä¥à (inline.asm)
|
||||
ld hl,Buffers.input_line.Path
|
||||
@ -403,7 +404,11 @@ EVALCMD: xor a
|
||||
ld hl,Buffers.work.buffer2 ;work_buffer+256
|
||||
ld de,Buffers.input_line.Path ; ªã¤
|
||||
ld bc,255 ;!HARDCODE
|
||||
.loop: ld a,(hl)
|
||||
.loop: LD A,C
|
||||
DEC A
|
||||
JR Z,.error
|
||||
;
|
||||
ld a,(hl)
|
||||
ldi
|
||||
inc b
|
||||
or a
|
||||
@ -413,6 +418,12 @@ EVALCMD: xor a
|
||||
ld (Buffers.input_line.Symbols_Num),a ; ¤«¨ áâப¨ (edline.asm)
|
||||
and a
|
||||
ret
|
||||
;
|
||||
.error: LD (DE),A
|
||||
LD A,DSS_Error.sys.ENV_ITEM_OVERFLOW
|
||||
CALL print_err_message
|
||||
SCF
|
||||
RET
|
||||
|
||||
; HL - STRING WITH %VAR%
|
||||
EVALSTR: ld a,(hl)
|
||||
|
||||
@ -3,33 +3,33 @@
|
||||
; SET. “áâ ®¢¨âì ¯¥à¥¬¥ãî ®ªà㦥¨ï
|
||||
;
|
||||
;///////////////////////////////////////////////////
|
||||
cmd_set:ld a,(de) ; ª®¬-áâப
|
||||
or a
|
||||
jr z,A85EE ; ¯ãáâ ï
|
||||
; ãáâ. ¯¥à¥¬¥ãî ®ªà㦥¨ï
|
||||
inc de
|
||||
cp 9
|
||||
jr z,cmd_set
|
||||
cp " "+1
|
||||
jr c,cmd_set
|
||||
dec de
|
||||
ex de,hl
|
||||
ld bc,Dss.Environ.Set
|
||||
RST ToDSS
|
||||
call c,print_err_message ; ¢ë¢®¤ á®®¡é¥¨ï
|
||||
ret
|
||||
cmd_set: ld a,(de) ; ª®¬-áâப
|
||||
or a
|
||||
jr z,A85EE ; ¯ãáâ ï
|
||||
; ãáâ. ¯¥à¥¬¥ãî ®ªà㦥¨ï
|
||||
inc de
|
||||
cp 9
|
||||
jr z,cmd_set
|
||||
cp " "+1
|
||||
jr c,cmd_set
|
||||
dec de
|
||||
ex de,hl
|
||||
ld bc,Dss.Environ.Set
|
||||
RST ToDSS
|
||||
call c,print_err_message ; ¢ë¢®¤ á®®¡é¥¨ï
|
||||
ret
|
||||
|
||||
; <20>®ª § âì á¨á⥬®¥ ®ªà㦥¨¥
|
||||
A85EE: ;ld hl,T9186 ; ªã¤
|
||||
ld hl,Buffers.work.buffer1;
|
||||
ld bc,Dss.Environ.Read ; ¯®«ãç¨âì á¨áâ. ®ªà㦥¨¥
|
||||
RST ToDSS
|
||||
;ld hl,T9186
|
||||
ld hl,Buffers.work.buffer1;
|
||||
A85F8: ld c,Dss.PChars
|
||||
RST ToDSS
|
||||
call newline
|
||||
ld a,(hl)
|
||||
or a ; ª®¥æ á¨áâ. ®ªà㦥¨ï ?
|
||||
jr nz,A85F8 ; ¥â
|
||||
ret
|
||||
A85EE: ;ld hl,T9186 ; ªã¤
|
||||
ld hl,Buffers.work.buffer1;
|
||||
ld bc,Dss.Environ.Read ; ¯®«ãç¨âì á¨áâ. ®ªà㦥¨¥
|
||||
RST ToDSS
|
||||
;ld hl,T9186
|
||||
ld hl,Buffers.work.buffer1;
|
||||
A85F8: ld c,Dss.PChars
|
||||
RST ToDSS
|
||||
call newline
|
||||
ld a,(hl)
|
||||
or a ; ª®¥æ á¨áâ. ®ªà㦥¨ï ?
|
||||
jr nz,A85F8 ; ¥â
|
||||
ret
|
||||
|
||||
@ -7,6 +7,7 @@ SAVEHL: dw 0
|
||||
; <20> §¡®à ¨ ¢ë¯®«¥¨¥ ¢¢¥¤¥ëå ª®¬ ¤ ¨ ¨¬¥ ä ©«®¢
|
||||
;-------------------------------------------------------------
|
||||
COMP: call EVALCMD ; (batch.asm)
|
||||
RET C
|
||||
ld hl,Buffers.input_line.Path
|
||||
dec hl
|
||||
ld c,(hl) ; ¤«¨ áâப¨
|
||||
|
||||
@ -1 +1 @@
|
||||
Subproject commit e1dc7ec10dc9c7e9153a05884e42973a57378a63
|
||||
Subproject commit e9eb5c7c06a16b07f348992ee8ba3557cf5884c2
|
||||
Loading…
Reference in New Issue
Block a user