mirror of
https://github.com/Tolik-Trek/Estex-DSS.git
synced 2026-06-15 09:21:47 +03:00
bug fixes
This commit is contained in:
parent
35fbce1274
commit
7c9c4311a4
@ -115,36 +115,7 @@ RST_30: JP MOUSE_DRV.API
|
||||
////////////////////////////////////////////////////////////////////////
|
||||
; <[MAIN INT]> ;
|
||||
BLOCK #38-$,#C7 ;
|
||||
A0038: ;
|
||||
; JP RST_38 ;
|
||||
; RST_38: ;
|
||||
; 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 ;
|
||||
; POP IY ;
|
||||
; POP IX ;
|
||||
; POP HL ;
|
||||
; POP DE ;
|
||||
; POP BC ;
|
||||
; EXX ;
|
||||
; POP HL ;
|
||||
; POP DE ;
|
||||
; POP BC ;
|
||||
; POP AF ;
|
||||
; EX AF,AF' ;
|
||||
; POP AF ;
|
||||
/*
|
||||
;!TEST SIO INT
|
||||
; reg 0 - error reset
|
||||
IF KEYBOARD_INT_ENABLED && MOUSE_INT_ENABLED == 0
|
||||
@ -179,6 +150,15 @@ A0038: ;
|
||||
ENDIF
|
||||
EI ;
|
||||
RETI ;
|
||||
*/
|
||||
RST_38_DRV: JP .Portal
|
||||
BLOCK RST_38_IM1.Portal - $,0
|
||||
.Portal: PUSH AF
|
||||
LD A,(DRV_PAGE.MAIN_PAGE_NUMBER)
|
||||
OUT (SLOT0),A
|
||||
POP AF
|
||||
EI
|
||||
RETI
|
||||
////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
|
||||
@ -139,53 +139,31 @@ RST_0x30: PUSH AF
|
||||
////////////////////////////////////////////////////////////////////////
|
||||
; <[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
|
||||
;¤«ï ⮣®, ç⮡ á®äâë ¬®£«¨ ¬¥ïâì ®¡à ¡®â稪 ᢮©.
|
||||
RST_38_IM1: JP .Handler
|
||||
.Handler: CALL INTx38_Handler
|
||||
EI
|
||||
RETI
|
||||
;
|
||||
.Portal: PUSH AF
|
||||
LD A,(RST_0x30.drv_page)
|
||||
OUT (SLOT0),A
|
||||
POP AF
|
||||
CALL INTx38_Handler
|
||||
JR .Portal
|
||||
;
|
||||
|
||||
////////////////////////////////////////////////////////////////////////
|
||||
|
||||
;
|
||||
NMI: RETN
|
||||
;NMI: RETN
|
||||
;
|
||||
|
||||
;
|
||||
;' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ';
|
||||
; <[ NMI ]> ;
|
||||
_mInfoBLOCK #66-$,#FF ;
|
||||
NMI_0x66: JP NMI ;
|
||||
NMI_0x66: RETN ;JP NMI ;
|
||||
;' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ';
|
||||
;
|
||||
|
||||
@ -278,6 +256,39 @@ CLEAR_BUFFER_AND_INIT_PROC:
|
||||
JP VERSION
|
||||
|
||||
|
||||
|
||||
INTx38_Handler: 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
|
||||
RET
|
||||
;R03
|
||||
;R07Allocate memory
|
||||
; LD BC,#03C2
|
||||
|
||||
@ -7,24 +7,24 @@
|
||||
;
|
||||
|
||||
;
|
||||
DEFINE SHORT_RSTx10_TABLE 0 ; 㪮à®ç¥ ï â ¡«¨æ äãªæ¨© rst #10. 96 äãªæ¨©.
|
||||
DEFINE SHORT_RSTx10_TABLE 0 ; 㪮à®ç¥ ï â ¡«¨æ äãªæ¨© rst #10. 96 äãªæ¨©.
|
||||
DEFINE COMPILE_UNUSED_CODE 0
|
||||
;
|
||||
|
||||
; MOUSE
|
||||
DEFINE MOUSE_COM_BAUD 0 ; 1 - 2485, 2 - 4807, else - 1215 (default)
|
||||
DEFINE MOUSE_INT_ENABLED 0 ; INT from SIO ch. B
|
||||
DEFINE MOUSE_READ_PORT_TIMEOUT 16*1024 ; Š®áâë«ìë© â ©¬- ãâ ®¦¨¤ ¨¥ ¡ ©â ®â ¬ë誨.
|
||||
DEFINE MOUSE_COM_BAUD 0 ; 1 - 2485, 2 - 4807, else - 1215 (default)
|
||||
DEFINE MOUSE_INT_ENABLED 0 ; INT from SIO ch. B
|
||||
DEFINE MOUSE_READ_PORT_TIMEOUT 5*512 ; Š®áâë«ìë© â ©¬- ãâ ®¦¨¤ ¨¥ ¡ ©â ®â ¬ë誨. …᫨ = 0, â® «¨è¨© ª®¤ ¥ ª®¬¯¨«¨âáï
|
||||
|
||||
; KEYBOARD
|
||||
DEFINE KEYBOARD_INT_ENABLED 0 ; INT from SIO ch. A
|
||||
DEFINE CHANGE_LANG_CTRL_SHIFT 1 ; [x] 0: Ctrl + Space, 1: Ctrl + Shift.
|
||||
DEFINE BREAK_PROCESS_CODE #AC00 ; CTRL+C
|
||||
DEFINE KEYBOARD_INT_ENABLED 0 ; INT from SIO ch. A
|
||||
DEFINE CHANGE_LANG_CTRL_SHIFT 1 ; [x] 0: Ctrl + Space, 1: Ctrl + Shift.
|
||||
DEFINE BREAK_PROCESS_CODE #AC00 ; CTRL+C
|
||||
DEFINE USE_E1_SCANCODE 0
|
||||
DEFINE CLASSIC_CURSOR 0
|
||||
;
|
||||
|
||||
;LD_DSK EQU 16 ; ¬ ªá¨¬ «ì®¥ ª®«¨ç¥á⢮ «®£¨ç¥áª¨å HDD ¤¨áª®¢ ¢ á¨á⥬¥
|
||||
;LD_DSK EQU 16 ; ¬ ªá¨¬ «ì®¥ ª®«¨ç¥á⢮ «®£¨ç¥áª¨å HDD ¤¨áª®¢ ¢ á¨á⥬¥
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
DEFINE CHANGE_FREE_CLU_AFTER_DEL 1
|
||||
|
||||
@ -14,20 +14,25 @@ PORT_MOUSE.Data EQU Z84.SIO.Ch_B.Data
|
||||
RRCA
|
||||
RET NC
|
||||
ELSE
|
||||
;[x] mouse freeeeezzzz
|
||||
;LD BC,MOUSE_READ_PORT_TIMEOUT
|
||||
IF MOUSE_READ_PORT_TIMEOUT != 0
|
||||
;[x] mouse bug
|
||||
LD BC,MOUSE_READ_PORT_TIMEOUT
|
||||
;
|
||||
ENDIF
|
||||
.READ_BYTE: IN A,(PORT_MOUSE.Ctrl)
|
||||
RRCA
|
||||
;[x] mouse freeeeezzzz
|
||||
;JR C,.NEXT
|
||||
;DEC BC
|
||||
;LD A,B
|
||||
;OR C
|
||||
;JR NZ,.READ_BYTE
|
||||
;RET
|
||||
JR NC,.READ_BYTE
|
||||
IF MOUSE_READ_PORT_TIMEOUT != 0
|
||||
;[x] mouse bug
|
||||
JR C,.NEXT
|
||||
DEC BC
|
||||
LD A,B
|
||||
OR C
|
||||
JR NZ,.READ_BYTE
|
||||
RET
|
||||
.NEXT: ;
|
||||
ELSE
|
||||
JR NC,.READ_BYTE
|
||||
ENDIF
|
||||
ENDIF
|
||||
ENDM
|
||||
////////////////////////////////////////////////////////////////////////
|
||||
@ -678,7 +683,7 @@ CLEAR_MOUSE_BUFFER:
|
||||
|
||||
;----------------------------------------------------------------------;
|
||||
|
||||
READ_M: /*;[ ] 18/02/2024 能恥丞<E681A5> <20> 砲鄍祚垠平言 ~銗<EFBD9E>
|
||||
READ_M: ;[ ] 18/02/2024 能恥丞<E681A5> <20> 砲鄍祚垠平言 ~銗<EFBD9E>
|
||||
; reg 1
|
||||
LD A,1
|
||||
OUT (PORT_MOUSE.Ctrl),A
|
||||
@ -698,7 +703,6 @@ READ_M: /*;[ ] 18/02/2024
|
||||
;
|
||||
JR CLEAR_MOUSE_BUFFER
|
||||
;
|
||||
*/
|
||||
IF MOUSE_INT_ENABLED
|
||||
.Prepare: LD HL,.Step
|
||||
LD A,(HL)
|
||||
@ -722,8 +726,8 @@ READ_M: /*;[ ] 18/02/2024
|
||||
LD L,A
|
||||
ENDIF
|
||||
AND %0100'0000
|
||||
RET Z
|
||||
;JP Z,CLEAR_MOUSE_BUFFER
|
||||
;RET Z
|
||||
JP Z,CLEAR_MOUSE_BUFFER
|
||||
;
|
||||
IF MOUSE_INT_ENABLED
|
||||
INC (HL)
|
||||
@ -745,10 +749,10 @@ READ_M: /*;[ ] 18/02/2024
|
||||
LD E,A
|
||||
AND %0100'0000
|
||||
;!TEST
|
||||
RET NZ
|
||||
;JR Z,.READ_THIRD_BYTE
|
||||
;LD L,E
|
||||
;JR .READ_SECOND_BYTE
|
||||
;RET NZ
|
||||
JR Z,.READ_THIRD_BYTE
|
||||
LD L,E
|
||||
JR .READ_SECOND_BYTE
|
||||
ENDIF
|
||||
;
|
||||
.READ_THIRD_BYTE:
|
||||
@ -769,10 +773,10 @@ READ_M: /*;[ ] 18/02/2024
|
||||
LD D,A
|
||||
AND %0100'0000
|
||||
;!TEST
|
||||
RET NZ
|
||||
;JR Z,.packet_end
|
||||
;LD L,D
|
||||
;JR .READ_SECOND_BYTE
|
||||
;RET NZ
|
||||
JR Z,.packet_end
|
||||
LD L,D
|
||||
JR .READ_SECOND_BYTE
|
||||
.packet_end: ;
|
||||
ENDIF
|
||||
;
|
||||
@ -901,9 +905,9 @@ SENSE: LD HL,(SENSEXY)
|
||||
RET Z
|
||||
DEC A
|
||||
RET Z
|
||||
; CP 2
|
||||
; CCF
|
||||
; JR NC,.check_Y
|
||||
; CP 2
|
||||
; CCF
|
||||
; JR NC,.check_Y
|
||||
;
|
||||
LD A,E
|
||||
BIT 7,A
|
||||
@ -924,10 +928,10 @@ SENSE: LD HL,(SENSEXY)
|
||||
.next: LD E,B
|
||||
; [x] 15/03/2024 ⥯¥àì ¯®¯à ¢ª¨ çã¢á⢨⥫ì®á⨠¯® ª®®à¤¨ â ¬ à ¡®â îâ ª®à४â®
|
||||
.check_Y:
|
||||
LD A,H
|
||||
CP 2
|
||||
CCF
|
||||
RET NC
|
||||
; LD A,H
|
||||
; CP 2
|
||||
; CCF
|
||||
; RET NC
|
||||
;
|
||||
LD A,D
|
||||
BIT 7,A
|
||||
@ -1055,7 +1059,7 @@ MIN_Y: DW 0
|
||||
MAX_Y: DW 255
|
||||
SENSEXY: ; ‘í ‘íªá¨
|
||||
.X: DB 0
|
||||
.Y: DB 2
|
||||
.Y: DB 0
|
||||
|
||||
XHOT_SP: DW 0
|
||||
YHOT_SP: DW 0
|
||||
|
||||
@ -1 +1 @@
|
||||
Subproject commit 399bf41c5cbd12d2866204ee3ff1cc357a3d3a99
|
||||
Subproject commit 1cb8eb13fb8e8b20bba324a5ab9f4e18d6bf8b3c
|
||||
Loading…
Reference in New Issue
Block a user