From
Aleksandr Majorov
→
To
Evgeny Ivanov
3 June 1999
Greetings, oh dearest Evgeny!
Once in morning 01-06-99 14:29:00 somebody Evgeny Ivanov has
written to All about ''.
[ ]
EI> Please tell me how to work on the Spectrum with a mouse. I mean, ports, etc.
There are only three ports, you read from them and that’s it:
#FBDF - X coordinate (0...255), move to the right - number
increases, reaches 255 and resets to 0
#FBDF - Y coordinate (0...255), move down - number
increases, reaches 255 and resets to 0
#FADF - buttons by bits:
bit0 - left controversial issue, some believe
bit1 - right / vice versa ;-)))
bit2 - average
if the button is pressed - bit=0
Here, I found a certain mouse driver, as an example:
====================================================
;MOUSE DRIVER WITH FIRE BUTTON AUTOCONFIG
;(C) Andrey Rachkin'95
JR MDRV
DIRECTZ NOP ;FIRE
NOP ;UP
NOP ;DOWN
NOP ;RIGHT
NOP ;LEFT
NOP ;CANCEL
MCOORD DEFW 0 ;LAST CURSOR COORDS
;IN PIXELZ
MPORTS DEFW 0 ;LAST READED MAUSY COORDS
NONDEF AND 3 ;HERE COMEZ BUTTONZ
;CONTROL IF FIRE BUTTON
;NOT DEFINED
JR Z,MDRV4 ;IF NONE BUTTON
;PUSHED CP 1
JR Z,NONDEF_
XOR A
LD (MDRV3+2),A
LD A,5
LD (MDRV2+2),A
NONDEF_ LD HL,0
LD (MDRV1),HL
POP IX
; ***** MAIN PROC OF MOUSEDRIVER *****
MDRV PUSH IX
LD HL,DIRECTZ
PUSH HL
POP IX
XOR A
LD (HL),A ;CLEARING
INC HL ;OF
LD (HL),A ;DIRECTZ
INC HL ;BUFER
LD (HL),A
INC HL
LD (HL),A
INC HL
LD (HL),A
INC HL
LD (HL),A
INC HL
LD BC,#FADF ;BUTTONZ CONTROL
IN A,(C) ;READING FROM PORT
;OF BUTTONS
CPL
MDRV1 JR NONDEF ;JR UNTIL FIRE
;BUTTON NOT DEFINED
RRA
MDRV2 RL (IX+0) ;FIRE
RRA
MDRV3 RL (IX+5) ;CANCEL
; ***** COORDS CONTROL *****
MDRV4 LD HL,(MCOORD) ;FROM LAST
;CURSOR COORDS
LD DE,(MPORTS) ;FROM LAST
;READED MOUSE
;COORDS
LD BC,#FBDF
IN A,(C) ;READING FROM
;PORT X-COORDS (0-#FF)
LD (MPORTS),A
SUB E
JR Z,MDRV9
JP P,MDRV6
LD (IX+4),1 ;MOVE LEFT
ADD A,L
JR C,MDRV5
XOR A
MDRV5 LD L,A
JR MDRV9
MDRV6 ADD A,L
LD (IX+3),1 ;MOVE RIGHT
JR C,MDRV7
CP #FE ;MAX X-COORD
JR C,MDRV8
MDRV7 LD A,#FE ;MAX X-COORD
MDRV8 LD L,A
MDRV9 LD B,#FF
IN A,(C) ;READING FROM
;PORT Y-COORD (0-#FF)
LD (MPORTS+1),A
SUB D
JR Z,MDRV14
NEG
JP P,MDRV11
LD (IX+1),1 ;MOVE UP
ADD A,H
JR C,MDRV10
XOR A ;MIN Y-COORD
MDRV10 LD H,A
JR MDRV14
MDRV11 ADD A,H
LD (IX+2),1 ;MOVE DOWN
JR C,MDRV12
CP #BF ;MAX Y-COORD
JR C,MDRV13
MDRV12 LD A,#BF ;MAX Y-COORD
MDRV13 LD H,A
MDRV14 LD (MCOORD),HL ;NEW CURSOR
;POSITION
;IN PIXELZ
POP IX
RET
=================================================
Hу вот и все *MAS* с кувалдой
From
Roman Petrov
→
To
Aleksandr Majorov
5 June 1999
Hello, Alexander!
On Thursday June 03 1999 Aleksandr Majorov wrote to Evgeny Ivanov:
AM> #FADF - buttons by bits:
AM> bit0 - left controversial issue, some believe
AM> bit1 - right / vice versa ;-)))
AM> bit2 - average
AM> if the button is pressed - bit=0
In my opinion, the standard is just the opposite. At least almost everywhere it’s the other way around.
Bye, Alexander! Megus/Brainwave^X-Project. [ZX] [NeOS] [LMDF!]
From
Kirill Frolov
→
To
Roman Petrov
6 June 1999
Press RESET immediately, Roman!
05 Jun 99 12:46, Roman Petrov wrote to Aleksandr Majorov:
AM>> #FADF - buttons by bits:
AM>> bit0 - left controversial issue, some believe
AM>> bit1 - right / vice versa ;-)))
AM>> bit2 - average
AM>> if the button is pressed - bit=0
RP> In my opinion, the standard is just the opposite. At least almost everywhere
RP> vice versa.
I don’t need fairy tales here! Even in the emulator it’s like this by default!
And in formats there was always a left 0. And some bad people right
The button is used as a left button, which is why all sorts of left buttons appear.
Kirill Frolov. [ZX]
From
Aleksandr Majorov
→
To
Roman Petrov
6 June 1999
Greetings, oh dearest Roman!
05-06-99 at 12:46:02 someone Roman Petrov wrote 2 Aleksandr Majorov on
topic ''.
[ ]
AM>> #FADF - buttons by bits:
AM>> bit0 - left controversial issue, some believe
AM>> bit1 - right / vice versa ;-)))
AM>> bit2 - average
AM>> if the button is pressed - bit=0
RP> In my opinion, the standard is just the opposite. At least almost everywhere it’s the other way around.
ah, well, here it begins.....
I won’t argue which button is the left one, only in the very first
The descriptions of the mouse mentioned exactly what I wrote!
And just so you know, “at least almost everywhere” they’re already doing it
auto-detection of the active button, since no one
knows the standard
Well that's it *MAS* with a sledgehammer
From
Igor Turashev
→
To
Kirill Frolov
8 June 1999
├┼e└└o, Kirill!
Once Sun 6 Jun 1999 at 06:18:22 someone Kirill Frolov and Roman were talking
Petrov
AM>>> #FADF - buttons by bits:
AM>>> bit0 - left controversial issue, some believe
AM>>> bit1 - right / vice versa ;-)))
AM>>> bit2 - average
AM>>> if the button is pressed - bit=0
RP>> In my opinion, the standard is just the opposite. At least almost everywhere
RP>> vice versa.
KF> I don’t need fairy tales here! Even in the emulator it’s like this by default!
KF> And in formats there was always a left 0. And some bad people right
Here in formats they use the system of the first button pressed: which one was pressed
first, it became the left one by default, IMHO the most convenient thing there is...
Well, bye! Tigrr... -■BrainWave / X-Project■-
--[GOA] [BREAKBEAT] [ARIA] [I.ZX]--
From
Kirill Frolov
→
To
Igor Turashev
13 June 1999
Press RESET immediately, Igor!
08 Jun 99 01:06, Igor Turashev wrote to Kirill Frolov:
IT> Here in formats they use the system of the first button pressed:
IT> which
IT> pressed the first one, it became the left one by default, IMHO the most convenient thing
IT> yes...
Exactly... But it sucks. I remembered - I kept pressing the wrong button.
No one is stopping you from making a “Swap Buttons” switch in the program.
Kirill Frolov. [ZX]