diff --git a/DSS/DOS_FM.ASM b/DSS/DOS_FM.ASM index 53a9c50..d6ec3db 100644 --- a/DSS/DOS_FM.ASM +++ b/DSS/DOS_FM.ASM @@ -911,21 +911,43 @@ ADD_DE2: DJNZ ADD_DE1 RET ; HL:DE / BC => DE:IX HL-OSTATOK (DE:BC.HL) -DIV32: LD A,#FF - LD B,E -.loop: SRL C - JR C,.exitLoop - SRL H : RR L : RR D : RR E : SLA A - JP .loop -.exitLoop: - CPL - AND B +DIV32: LD A,C + DEC A + JR Z,.exit +; + AND E + LD B,A ; остаток + LD A,C + RRCA +; +.loop: SRL H : RR L + RR D : RR E + RRCA + JR NC,.loop + LD A,B +; +.exit: LD XH,D LD XL,E EX DE,HL LD H,0 LD L,A RET +; DIV32: LD A,#FF +; LD B,E +; .loop: SRL C +; JR C,.exitLoop +; SRL H : RR L : RR D : RR E : SLA A +; JP .loop +; .exitLoop: +; CPL +; AND B +; LD XH,D +; LD XL,E +; EX DE,HL +; LD H,0 +; LD L,A +; RET /* DEFINE NEW_DIV 1 diff --git a/DSS/INTMOUSE.ASM b/DSS/INTMOUSE.ASM index fe55643..648d1f5 100644 --- a/DSS/INTMOUSE.ASM +++ b/DSS/INTMOUSE.ASM @@ -176,8 +176,9 @@ MS_INIT DI LD A,4 OUT (CMOUSE),A ;!TEST mouse - LD A,#47 + LD A,#47 ; первый множитель = 16 875000/Мн1*Мн2=1215 ;LD A,#44 + ;LD A,#04 ; первый множитель = 1 875000/Мн1*Мн2=4807 ; OUT (CMOUSE),A LD A,5 @@ -186,9 +187,10 @@ MS_INIT DI OUT (CMOUSE),A ;!TEST mouse - LD A,85 + LD A,#55 OUT (Z84.CTC.Ch_0),A - LD A,45 + LD A,#2D ; второй множитель = 45 875000/Мн1*Мн2=1215 + ;LD A,#B6 ; второй множитель = 182 875000/Мн1*Мн2=4807 OUT (Z84.CTC.Ch_0),A ; diff --git a/DSS/build.txt b/DSS/build.txt index da2d398..25bf17f 100644 --- a/DSS/build.txt +++ b/DSS/build.txt @@ -1 +1 @@ -14 \ No newline at end of file +18 \ No newline at end of file diff --git a/Shared_Includes b/Shared_Includes index 6d439eb..afe66b1 160000 --- a/Shared_Includes +++ b/Shared_Includes @@ -1 +1 @@ -Subproject commit 6d439eb5a2fdbf826942b020871dc40726c50ab8 +Subproject commit afe66b1f354cab8d2780826697cf371d1d9e389d