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

Od: +GAMA
Datum: 18.11.2007 16:11
Předmět: 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.


Ostatní příspěvky vlákna:

 
[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)]