Konference: Počítač SHARP MZ-800 a emulátory

Od: VELESOFT (SPRINTER)
Datum: 18.11.2007 18:56
Předmět: Re: Kapsacon, PS/2 mys a IDE16 - trochu delsi text


=====================================
Bezna verze ovladace K-MOUSE:

;XECUTE MOUSE
;TAKE COORDINATES FROM CURPOS==COORD
MOUSE  LD HL,(COORD)
       LD BC,#FBDF
       LD DE,(OLDCO)
       IN A,(C)
       LD (OLDCO),A
       SUB E
       JR Z,NM_X
       JP P,MX_PL
       ADD A,L
       JR C,ZER_X
       XOR A
ZER_X  LD L,A
       JR NM_X
MX_PL  ADD A,L
       JR C,BEX_Z
       CP #FD ;MAXIMUM X
       JR C,BEX_B
BEX_Z  LD A,#FD ;MAXIMUM X
BEX_B  LD L,A
NM_X   LD B,#FF
       IN A,(C)
       LD (OLDCO+1),A
       SUB D
       JR Z,NM_Y
       NEG
       JP P,MY_PL
       ADD A,H
       JR C,ZER_Y
       XOR A
ZER_Y  LD H,A
       JR NM_Y
MY_PL  ADD A,H
       JR C,BEY_Z
       CP #BE ;MAXIMUM Y
       JR C,BEY_B
BEY_Z  LD A,#BE ;MAXIMUM Y
BEY_B  LD H,A
NM_Y   LD A,H
       CP #FF
       JR C,BIGY
       LD H,#FF
BIGY   CP #02 ;MINIMUM Y
       JR NC,SMALY
       LD H,#02 ;MINIMUM Y
SMALY  LD A,L
       CP #FF
       JR C,DIRY
       LD L,#FF
DIRY   CP #02 ;MINIMUM X
       JR NC,DIMENS
       LD L,#02 ;MINIMUM X
DIMENS LD (COORD),HL
       LD BC,#FADF
       LD HL,CONTRB
       IN A,(C)
       CPL
       AND 7
       RLCA
       RLCA
       RLCA
       RLCA
       OR (HL)
       LD (HL),A
       RET
;sem se ukladaji souradnice pro osu XaY
COORD  DEFB 0,0
OLDCO  DEFB 0,0;WORKING

Dalsi verze ovladacu jsou na
http://velesoft.speccy.cz/kmouse/km-doc/kempston_mouse_turbo_interface/km-t_
2006/kempston_mouse_turbo-2006.pdf od strany 14. Nekde mam dokonce i
ovladac, ktery umi soucasne emulovat joystick.

VELESOFT

----- Original Message -----
From: "+GAMA" <sharpemu tu byla ta zakroucena vec pandora.czcomputer.research tu byla ta zakroucena vec centrum.cz>
To: "Konference Počítač SHARP MZ-800 a emulátory" <sharpemu tu byla ta zakroucena vec pandora.cz>
Sent: Sunday, November 18, 2007 5:11 PM
Subject: Re: Kapsacon, PS/2 mys a IDE16 - trochu delsi text


>
> >vykreslit a o nic jineho se uzivatel nestara). U ovladace se ha nastavit
> >jeste i minimalni a maximalni hranice os X a Y (okno ve kterem se bude
> >kurzor pohybovat). Ovladac si hlida aby sipka tyto hranice neprekrocila.
> >Velikost ovladace byva tusim od 90 do 200 bajtu, ale da se napsat i
> kratsi
> >nebo delsi. Vsechny zdrojaky mam na webu v PDF dokumentaci.
>
> Když jsem potřeboval narvat obsluhu myši místo kempstonu do utilit pro
Desktop, využil jsem toho, že má ZX obrazovka na šířku těch 256 bodů,
 takže
osa X zůstala nezměněna a rovnou se použila pro kurzor. Na výšku má
obrazovka 192 bodů, což jsou 3/4 z 256, takže jsem hodnotu z myší osy Y
prostě vynásobil 3/4 a vznikla Y souřadnice pro kurzor. To bylo cca 18
bajtů. Myš má pak sice v Y ose trochu jinou rychlost, není to ale poznat.
> Takže není potřeba držet staré souřednice, porovnávat s novými,
hlídat
přetečení - to jen na vysvětlenou, jak se dosáhlo těch 20 bajtů délky.
> Velesoft vymyslel totéž, zcela nezávisle.
> Na SHARPu by to znamenalo vzhledem k rozlišení >256 jezdit s myší
nejspíše
ob bod, což nevadí, pokud není opravdu potřeba bodová přesnost
(například v
případě grafických editorů potřeba je, ale tam se předpokládá, že se
delší
ovladač vejde), naopak je pak myš trochu rychlejší.
> Vzhledem k tomu, že chci časem rozjet CF kartu na MZ-700 a povrtat se
kvůli tomu v CP/M, určitě by mne zdrojáky NIPOSu zajímaly (přeci jen
obsluha
periferií je mi bližší než jejich stavba), i kdyby z toho nakonec třeba
nic
nevzešlo, pokud na tom bude někdo dělat, přidám se k němu.
>          J.D.
>
>
> ---
> Nejlepsi financni produkty roku najdete na
> http://ZlataKoruna.idnes.cz/

 
[2007/1 (22)] [2007/2 (7)] [2007/3 (14)] [2007/5 (3)] [2007/7 (5)] [2007/8 (4)] [2007/9 (56)] [2007/10 (44)] [2007/11 (40)] [2007/12 (6)]


[1999 (1)] [2000 (168)] [2001 (733)] [2002 (459)] [2003 (654)] [2004 (224)] [2005 (105)] [2006 (182)] [2007 (201)] [2008 (294)] [2009 (363)] [2010 (782)] [2011 (522)] [2012 (642)] [2013 (442)]