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