This commit is contained in:
Anatoliy Belyanskiy 2024-02-17 03:45:17 +10:00
parent 1d38b8ae10
commit 336436ee76
10 changed files with 147 additions and 143 deletions

View File

@ -132,47 +132,46 @@ RST_0x30: JP INTMOUS ;
;' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ';
;
;
;' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ';
; <[MAIN INT]> ;
_mInfoBLOCK #38-$,#FF ;
RST_38: ;
JP RST_0x38 ; <20>â®â ¤¦ ¬¯ ­ã¦¥­, ç⮡ á®äâë ¬®£«¨ «¥£ª® ¬¥­ïâì ®¡à ¡®â稪 ­  ᢮©. Š®áâë«ì­®.
RST_0x38: ;
INT_: PUSH AF ;
EX AF,AF' ;
PUSH AF ;
PUSH BC ;
PUSH DE ;
PUSH HL ;
EXX ;
PUSH BC ;
PUSH DE ;
PUSH HL ;
PUSH IX ;
PUSH IY ;
CALL KEYSCAN ;
LD C,#80 ;
RST ToDSS.Mouse ;
IFN CLASSIC_CURSOR ;
////////////////////////////////////////////////////////////////////////
; <[MAIN INT]>
_mInfoBLOCK #38-$,#FF
RST_38: ;¤«ï ⮣®, ç⮡ á®äâë ¬®£«¨ ¬¥­ïâì ®¡à ¡®â稪 ­  ᢮©.
JP RST_0x38
RST_0x38:
INT_: PUSH AF
EX AF,AF'
PUSH AF
PUSH BC
PUSH DE
PUSH HL
EXX
PUSH BC
PUSH DE
PUSH HL
PUSH IX
PUSH IY
CALL KEYSCAN
; LD C,Dss.Mouse.GetPackets
; RST ToDSS.Mouse
CALL M_INT
IFN CLASSIC_CURSOR
CALL cursor_interrupt; ¢¥ªâ®à ®¡á«ã¦. ªãàá®à  ;!!!!! VASIL
ENDIF ;
POP IY ;
POP IX ;
POP HL ;
POP DE ;
POP BC ;
EXX ;
POP HL ;
POP DE ;
POP BC ;
POP AF ;
EX AF,AF' ;
POP AF ;
EI ;
RETI ;
;' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ';
;
ENDIF
POP IY
POP IX
POP HL
POP DE
POP BC
EXX
POP HL
POP DE
POP BC
POP AF
EX AF,AF'
POP AF
EI
RETI
////////////////////////////////////////////////////////////////////////
;
NMI: RETN

View File

@ -628,16 +628,17 @@ READ_M: IN A,(PORT_MOUSE.Ctrl)
RET Z
;[x] mouse freeeeezzzz
LD BC,#2000
LD BC,MOUSE_READ_PORT_TIMEOUT
;
TST_01: IN A,(PORT_MOUSE.Ctrl)
.TST_01:
IN A,(PORT_MOUSE.Ctrl)
RRCA
;[x] mouse freeeeezzzz
JR C,.NXT
DEC BC
LD A,B
OR C
JR NZ,TST_01
JR NZ,.TST_01
RET
;JR NC,TST_01
;
@ -649,7 +650,7 @@ TST_01: IN A,(PORT_MOUSE.Ctrl)
RET NZ
;[x] mouse freeeeezzzz
LD BC,#2000
LD BC,MOUSE_READ_PORT_TIMEOUT
;
TST_02: IN A,(PORT_MOUSE.Ctrl)
RRCA
@ -692,9 +693,9 @@ TST_02: IN A,(PORT_MOUSE.Ctrl)
RLCA
RLCA
RES 6,A
JR NC,STBU
JR NC,.STBU
SET 6,A
STBU RLCA
.STBU: RLCA
RLCA
AND #03
LD (MB),A
@ -821,11 +822,12 @@ M_MODE LD (MODE_M),A
JR Z,S320256
CP 2
JR Z,S640256
UNKMODE XOR A ; ????? ¬®¦¥â âãâ ­ ¤® .INVALID_COMMAND ?
UNKMODE:
XOR A ; ????? ¬®¦¥â âãâ ­ ¤® .INVALID_COMMAND ?
SCF
RET
S320256
S320256:
LD HL,0 ;MIN X
LD DE,319 ;MAX X
CALL MS_HORZ
@ -835,7 +837,7 @@ S320256
XOR A
RET
S640256
S640256:
LD HL,0 ;MIN X
LD DE,639 ;MAX X
CALL MS_HORZ
@ -846,7 +848,7 @@ S640256
RET
;Mouse Interrupt
M_INT IN A,(SLOT3)
M_INT: IN A,(SLOT3)
LD B,A
IN A,(PORT_Y)
LD C,A
@ -867,16 +869,17 @@ M_REFR CALL CONTROL
CONTROL CALL READ_M
RET NC
CALL MCORECT
LD A,#00
LD (REDY),A
;LD A,#00
; XOR A
; LD (REDY),A
RET
REFRESH:
.hide+1: LD A,#01
OR A
RET NZ
REDY+1: LD A,#00
;????? ¯®ç¥¬ã § ª®¬¬¥­â¨à®¢ ­­® ¢ ®à¨£¨­ «¥?
;
; REDY+1: LD A,#01
; OR A
; RET NZ
;
@ -884,8 +887,8 @@ REDY+1: LD A,#00
LD HL,(PIX_X)
LD DE,(PIX_Y)
CALL MOUSE
LD A,#FF
LD (REDY),A
; LD A,#FF
; LD (REDY),A
RET
MODE_M: DB #03

View File

@ -352,10 +352,10 @@ TESTKEY:
K_CLEAR:
LD A,(HOST)
LD (HEAD),A
LD A,#2F
LD A,Dss.WaitKey - 1
CP B
JR NC,.error
LD A,#34 ;R02
LD A,Dss.EDIT ;R02
CP B
JR C,.error
LD C,B
@ -434,10 +434,10 @@ FULL_BF:
KEYSCAN:
LD IX,KEYFLAG
.RESCAN:
IN A,(COM_A)
IN A,(Z84.SIO.Ch_A.Ctrl)
BIT 0,A
RET Z
IN A,(DAT_A)
IN A,(Z84.SIO.Ch_A.Data)
CP #F0
JR Z,FULL_BF.F0_KEY
CP #E0
@ -944,27 +944,24 @@ BPP2 DEC BC
JR NZ,BEEP
RET
COM_A EQU #19 ;!FIXIT sp2000.inc
DAT_A EQU #18 ;!FIXIT sp2000.inc
KINIT XOR A ;LD A,0
OUT (COM_A),A
OUT (Z84.SIO.Ch_A.Ctrl),A
INC A ;LD A,1
OUT (COM_A),A
OUT (Z84.SIO.Ch_A.Ctrl),A
XOR A ;LD A,0 ;#18
OUT (COM_A),A
OUT (Z84.SIO.Ch_A.Ctrl),A
LD A,3
OUT (COM_A),A
OUT (Z84.SIO.Ch_A.Ctrl),A
LD A,#C1
OUT (COM_A),A
OUT (Z84.SIO.Ch_A.Ctrl),A
LD A,4
OUT (COM_A),A
OUT (Z84.SIO.Ch_A.Ctrl),A
LD A,#07 ;#05
OUT (COM_A),A
OUT (Z84.SIO.Ch_A.Ctrl),A
LD A,5
OUT (COM_A),A
OUT (Z84.SIO.Ch_A.Ctrl),A
LD A,#62
OUT (COM_A),A
OUT (Z84.SIO.Ch_A.Ctrl),A
RET
;//MODULE: KEYINTER

View File

@ -764,18 +764,18 @@ PRINT_INIT:
; ª« ¢ 
XOR A ;LD A,0
OUT (COM_A),A
OUT (Z84.SIO.Ch_A.Ctrl),A
;[x] 29/9/23
INC A
OUT (COM_A),A
OUT (Z84.SIO.Ch_A.Ctrl),A
DEC A
;
OUT (COM_A),A
OUT (Z84.SIO.Ch_A.Ctrl),A
LD A,5
OUT (COM_A),A
OUT (Z84.SIO.Ch_A.Ctrl),A
LD A,#62 ; bit 7 - Direction for Bufer (0), Bit 1 - Bufer Enable (1)
OUT (COM_A),A
OUT (Z84.SIO.Ch_A.Ctrl),A
RET
;//MODULE: VIDEO
;[END]

View File

@ -1 +1 @@
905
912

View File

@ -8,7 +8,8 @@
;
;
DEFINE MOUSE_COM_BAUD_4800 0
DEFINE MOUSE_COM_BAUD 0 ; 1 - 2404, 2 - 4807, else - 1215 (default)
DEFINE MOUSE_READ_PORT_TIMEOUT 1280
;
;
@ -92,7 +93,12 @@ HANDBUF.SIZE EQU 32
;
;----------------------------------------------------;
IF MOUSE_COM_BAUD_4800
IF MOUSE_COM_BAUD = 1
MOUSE_BAUD:
.multiplier_1 EQU #02 ; ¯¥à¢ë© ¬­®¦¨â¥«ì = 2. 875000/Œ­1*Œ­2=2404
.multiplier_2 EQU #B6 ; ¢â®à®© ¬­®¦¨â¥«ì = 182. 875000/Œ­1*Œ­2=2404
ELSEIF MOUSE_COM_BAUD = 2
MOUSE_BAUD:
.multiplier_1 EQU #04 ; ¯¥à¢ë© ¬­®¦¨â¥«ì = 1. 875000/Œ­1*Œ­2=4807
.multiplier_2 EQU #B6 ; ¢â®à®© ¬­®¦¨â¥«ì = 182. 875000/Œ­1*Œ­2=4807

View File

@ -36,8 +36,7 @@ cmd_cls:ex de,hl ; hl=
jp c,invalid_param ; "Invalid parametr"
or b
ld b,a
cls_clear:
ld a,b
cls_clear: ld a,b
ld (color_screen),a ;  âਡãâ
ld de,0 ; Y/X ¯®«®¦.
ld hl,#2050 ; Y/X à §¬¥à

View File

@ -471,10 +471,10 @@ EvComComb:
cp #50 ; Ins, ᬥ­  ०¨¬  ¢¢®¤ 
jr z,change_insert_mode
bit 5,b ; Ctrl ¡¨â
jr z,$+7
jr z,.exit
cp #4F+#80 ; Ctrl+Del, ®ç¨áâ¨âì ¨áâ®à¨î ª®¬ ­¤
jp z,clear_history
pop de
.exit: pop de
ret
; ‘¬¥­  ०¨¬  ¢¢®¤ 

View File

@ -495,8 +495,8 @@ Restore_Screen:
PUSH AF
LD C,Dss.GetVMod
RST ToDSS
AND #80
JR Z,.exit
CP #80
JR C,.exit
LD BC,1 * 256 + Dss.SetVMod
LD A,Dss.SetVMod.txt80x32
RST ToDSS

@ -1 +1 @@
Subproject commit 9b22b7b05ab2b344b1778419d28da83ee74fb297
Subproject commit 9a8cc2fa8438c6e27c72b60a7cfd3a2e3470b314