diff --git a/DSS/API/Find.asm b/DSS/API/Find.asm index ece270c..50ba524 100644 --- a/DSS/API/Find.asm +++ b/DSS/API/Find.asm @@ -17,9 +17,9 @@ F_FIRST_FN: CALL F_FIRST.INIT_VARS PUSH HL ;!TEST Current Dir ;[x] 15/10/23 CALL DIR_PATH_CHECK + POP HL RET C ; - POP HL JR F_FIRST.begin ; F_FIRST: CALL .INIT_VARS diff --git a/DSS/FS/FAT.asm b/DSS/FS/FAT.asm index c4d5fbf..2dde1a3 100644 --- a/DSS/FS/FAT.asm +++ b/DSS/FS/FAT.asm @@ -443,8 +443,8 @@ FINDDIR: RET Z LD (HL),A INC HL - LD (HL),0 - ;INC HL + XOR A ; сброс CF заодно + LD (HL),A RET ;----------------------------------------------------------------------; diff --git a/DSS/Procedures.asm b/DSS/Procedures.asm index cf7ecdd..58b46f9 100644 --- a/DSS/Procedures.asm +++ b/DSS/Procedures.asm @@ -206,31 +206,32 @@ CalcDayOfWeek: LD A,D ;----------------------------------------------------------------------; ; a..z -> A..Z -UPPER: CP 'a' - RET C - CP 'z' + 1 - JR NC,.MDUPPER - SUB #20 -.NOUPPER: - RET -.MDUPPER: - CP 'а' ; русская буква а, код #A0 - JR C,.NOUPPER - CP 'п' ; русская буква п, код #B0 - JR NC,.BGUPPER - SUB #20 - RET -.BGUPPER: - CP 'р' ; русская буква р, код #E0 - JR C,.NOUPPER - CP 'Ё' ; русская буква Ё, код #F0 - JR NC,.HGUPPER - SUB #50 - RET +UPPER: CP 'a' + RET C + CP 'z' + 1 + JR NC,.CheckRUS +.Dec: SUB #20 + RET + ; +.CheckRUS: CP 'а' ; русская буква а, код #A0 + RET C + CP 'п' ; русская буква п, код #B0 + JR C,.Dec + ; JR NC,.BGUPPER + ; SUB #20 + ; RET + ; +.BGUPPER: CP 'р' ; русская буква р, код #E0 + RET C + CP 'Ё' ; русская буква Ё, код #F0 + JR NC,.HGUPPER + SUB #50 + RET + ; .HGUPPER: CP 'ё' ; русская буква ё, код #F1 - RET NZ - DEC A - RET + RET NZ + DEC A + RET ;----------------------------------------------------------------------; diff --git a/DSS/build.txt b/DSS/build.txt index 2e66562..7003e7f 100644 --- a/DSS/build.txt +++ b/DSS/build.txt @@ -1 +1 @@ -49 \ No newline at end of file +51 \ No newline at end of file