Áhh, itt egy nagyon jó téma, amit ha felhozok a srácoknak a munkahelyen, nem hisznek nekem.
Mielõtt válaszolnánk a kérdésre tisztázzuk, hogy is mûködik a fényceruza. Sajnos LCD megjelenítõvel rendelkezõ EP tulajdonosok errõl nem is álmodhatnak, ugyanis ez a technika feltételezi, hogy Katódsugárcsöves monitoron (TV-n) használjuk kedvenc gépünket.
Képzeljük el, hogy van egy ceruzánk, amit a képernyõhöz érintve, az ott található fényt egy optikai üvegszálon keresztül elvezeti egy fényérzékelõ diódához, aminek a jelét aztán a számítógép kapja meg.
Ha lelassítanánk az idõt, és úgy néznénk a képernyõt, azt látnánk, hogy egy világos pont halad balról jobbra a képernyõn, majd ahogy végigért, balról újrakezdi, de már egy picivel lejjebb, ezt addig ismételve míg el nem éri a képernyõ alját. Ezek után újrakezdi fentrõl.
A valóságban ez olyan gyorsan történik, hogy a fénypontot, nem látjuk, csak azt a képet, amit a képernyõn hagyott fluoreszkálni, és mivel újra és újra végigmegy, úgy tûnik mintha folyamatos lenne minden fénypont világítása.
Hogyan tudja a számítógép, hogy éppen hova tettük a fényceruzát, mikor csak egyetlen vezeték megy a ceruzából?
A számítógép mindig tudja, hogy merre van ez a fénypont, hiszen pont õ irányítja.
Vegyünk egy példát: Ha a ceruzát a kép kellõs közepére helyezem. A sugár meg pont fent van a legtetején, és halad folyamatosan jobbról-balra, miközben lassan lefelé is megyeget... A ceruzámnál csak sötétség van egészen addig, amíg oda nem ér a sugár. Ekkor a ceruza jelez a számítógépnek, hogy "Igen, most itt van!!".
A számítógép gyorsan eltárolja, hogy hanyadik sort pásztázta, és a sorban körülbelül hanyadik pixel lehet.
Tulajdonképpen ennyi.
Ha jobban belemászunk a dologba ahhoz, hogy megállapítsuk merre jár a fény, azt kell megmondani, hogy mennyi idõ telt el a V-sync óta (ez lesz az Y koordináta) és mennyi idõ telt el H-sync óta (ez lesz az X) amikor jelzett a fényceruza.
Fekete képernyõn sajnos alig látszódik a pásztázó sugár, ezért azt szokták csinálni, hogy világos (fehér) háttéren dolgoznak, másik lehetõség, hogy felemelik a fényerõt (Brightness - Napocska) így erõsebben világít, felismerhetõbb a ceruzának.
Itt jött az, hogy nem hittek nekem, és gyártották a munkatársak a kérdéseket:
- Mi van akkor ha pont egy fehér folton áll a ceruza, nem zavar be?
Válasz:
- Ami nekünk fénypaca, az a lassított világban egy fénypont, ami tapogat. Nincsenek alakzatok, az csak érzéki csalódás. Nagyon leegyszerûsítve a képernyõ mindig sötét, kivéve ha ott a sugár.
Kérdés:
- Ugyan már, a fénypisztolyon amikor mehúzod a ravaszt, honnan tudod hogy éppen akkor van ott a sugár? Olyan gyorsan úgysem lehet meghúzni a ravasz.
Válasz:
- Ezt nem így kell értelmezni. A fénypisztolynak van egy lencséje, ami kinagyítja a fotodiódára a képernyõ egy adott területét. Amikor meghúzod a ravaszt, tulajdonképpen csak jelzel a számítógépnek, hogy pont a célra tartod a fegyvert. Ekkor, ahogy fent említettem a fényceruzánál, a pásztázó sugár alapján meghatározza, hogy kb. hova nézhet a fegyvered. Ha éppen ott a madár, amit le kell lõni, akkor eltaláltad. Ha egy picit arréb van, akkor nem. A ravaszt kb. fél másodpercig tartod meghúzva, ezalatt lemegy vagy 25 félkép, tehát 25-ször vizsgálhatja, hogy merre néz a puskacsõ. Természetesen csak az elsõ párat nézi, mert az ember keze is remeghet picit.
Kérdés:
- Ugyan már, ezek a gagyi piaci cuccok, akkor is jelezték hogy eltaláltam, amikor a lámpa felé tartottam, ez kamu!
Válasz:
- Azok a piaci cuccok lehet, hogy kamuk. Egy igazi berendezésnél ha a fény felé fordítod a fegyvert, és meghúzod a ravaszt, akkor az jelez a számítógépnek, hogy folyamatosan kapja a fényt. A TV irányából nem érkezhet folyamatos jel, hanem impulzusokban jelenik meg. Tehát nem is a TV felé fordítottad a pisztolyt.
Visszatérve az igazi játéktermi gépeknél meg lehet figyelni, hogy a képernyõn valóban ott jelenik meg a jel, ahova lõttél.
A commodore-nál szerintem a joy helyére lehetett csatlakoztatni a fényceruzát. És amikor érzékelte a fénypontot, adott egy tûzgomb parancsot. Volt plusz két regiszter, ami a joystick tûzgombjának megnyomásakor mindig eltárolta a sugár x és y koordinátáit. Ezeket a regisztereket csak akkor vették figyelembe, ha épp rajzolóprogramot használtak. A többi progi figyelmen kívül hagyta, noha mindig ott van/volt.
Most hogy már tudjuk hogyan mûködik a berendezés, kérnék javaslatokat, hogy EP-nél hogyan lehetne megoldani a dolgot. Szerintem a Joy port kizárva. Túl lassú. Külsõ kártya kellene.