PDA

Просмотр полной версии : Lightpen



alex51
26.10.2014, 23:31
А у кого-нибудь в Москве есть такое?
Посмотреть хочу вживую :)

DJs3000
27.10.2014, 00:52
Яб тоже посмотрел бы

easy_john
28.10.2014, 01:04
У меня есть пистолет от денди, примерно то же самое :)

ЗЫ Видел lightpen в работе в комплекте с древней 286 и монитором cga. Точность была убийственная, плюс/минус 50 пикселей.

DJs3000
28.10.2014, 01:07
Речь идет как я понимаю об этом девайсе http://www.msx.org/photoshoots/nijmegen-2010/light-pens-actually-work хз какой там принцип работы

easy_john
29.10.2014, 11:50
хз какой там принцип работы
Такой же, как у всех лайтпенов.
Половина cga видеокарт была с разъемом под световое перо.

DJs3000
29.10.2014, 12:19
Такой же, как у всех лайтпенов.
Половина cga видеокарт была с разъемом под световое перо.

Само перо так-то не проблема как я понял но нужен сам контроллер который вставляется как картридж.

easy_john
29.10.2014, 12:43
Для PC контроллера не надо, cga сам контролирует, т.к. она знает какую строку и столбец она сейчас рисует на мониторе.
А ты говоришь о MSX.

DJs3000
29.10.2014, 13:24
easy_john, именно MSX :)

easy_john
29.10.2014, 13:33
easy_john, именно MSX :)
А, блин. Топикстартер ничего не написал, а я не заметил в каком разделе он пишет.

dk_spb
01.11.2014, 19:20
У меня вроде такое есть, но не в msk нифига.

ram_scan
01.11.2014, 20:20
Речь идет как я понимаю об этом девайсе http://www.msx.org/photoshoots/nijmegen-2010/light-pens-actually-work хз какой там принцип работы

Принципов работы светового пера два.

1) Как было сделано на писюке. Видеоконтроллер в паре своих регистров знает какой именно пиксель по состоянию здесь и сейчас рисует луч. Кнопку нажал - координаты получил. Дисплей в данном случае нужен чисто как координатная сетка по которой стробирование делается, кнопку нажал, пиксель в нужном месте мелькнул, перо поймало/не поймало.

2) В момент нажатия на кнопку пера через весь экран (либо через конкретный обьект) пробегает световой маркер, который детектируется фотоэлементом в пере. Координаты вычисляются через тайминги (в какое время погасло-загорелось, в какое время вспышка зафиксирована). При таком раскладе чем выше точность, тем тормозливее работа пера (нужен не один кадр прогнать пару светящихся осей чтобы уточниться). Таким образом работает дендюковый (и не только) световой пистолет. На современных матричных (не ЭЛТ) телеках принцип развертки мальца отличается, поэтому и в Duck Hunt на них поиграть не удаецца.

На ямахе (по крайней мере MSX2) скорее всего комбинация этих двух способов. Там есть прерывание по строкам, поэтому выводимую строку посчитать можно. Но нет регистра по горизонтальной развертке, поэтому горизонтальное положение пера можно определить либо вторым способом (прогоняя по строке световой маркер), либо до такта расчитывая тайминги. На тайминги полагаться опасно (потому-что существует куча реализаций MSX2).

Спектрумисты (и NESовцы кстати тоже) через это дело очень мрачно заморочены на создание потактово точных клонов оригинальных машин. Потому-что когда из архитектуры отжимается все допоследнего клока синхронизация по времени начинает роялить очень большую роль.

Cat_Alex/QRP
10.09.2016, 22:35
А софтваре какой-нибудь под энту чтуку есть???

finevlad
12.09.2016, 00:35
Принципов работы светового пера два.
1) Как было сделано на писюке. Видеоконтроллер в паре своих регистров знает какой именно пиксель по состоянию здесь и сейчас рисует луч. Кнопку нажал - координаты получил. Дисплей в данном случае нужен чисто как координатная сетка по которой стробирование делается, кнопку нажал, пиксель в нужном месте мелькнул, перо поймало/не поймало.

2) В момент нажатия на кнопку пера через весь экран (либо через конкретный обьект) пробегает световой маркер, который детектируется фотоэлементом в пере. Координаты вычисляются через тайминги (в какое время погасло-загорелось, в какое время вспышка зафиксирована). При таком раскладе чем выше точность, тем тормозливее работа пера (нужен не один кадр прогнать пару светящихся осей чтобы уточниться). Таким образом работает дендюковый (и не только) световой пистолет. На современных матричных (не ЭЛТ) телеках принцип развертки мальца отличается, поэтому и в Duck Hunt на них поиграть не удаецца.

На ямахе (по крайней мере MSX2) скорее всего комбинация этих двух способов. Там есть прерывание по строкам, поэтому выводимую строку посчитать можно. Но нет регистра по горизонтальной развертке, поэтому горизонтальное положение пера можно определить либо вторым способом (прогоняя по строке световой маркер), либо до такта расчитывая тайминги. На тайминги полагаться опасно (потому-что существует куча реализаций MSX2).

что-то сомнения в том что вы сказали
для пробегания светового маркера даже для 256 пикселей по горизонтали потребуется >5 секунд
в писюках даже если будет знать контроллер какой пиксель выводится - никто не отменял задержки в сигнале в мониторе и момент свечения фосфора будет отставать от этого момента

поэтому как раз полагаются на тайминги
и один раз откалибровав (а это обязательная часть для светового пера!) можно спокойно вычислять координаты по всего-лишь одному счетчику
привязка к прерыванию от видеопроцессора
либо можно пропустить через себя выход RGB c MSX(ибо там вертикальная и горизонтальная синхра)
очень похоже на картинке именно так и сделано (толстый провод с DIN разъемом вставлен в картидж)

железо в этом устройстве несложное

а вот ром от этого картриджа было бы интересно найти

OrionExt
12.09.2016, 01:16
finevlad, ошибаетесь. Световое перо и на ВГ75 работает. Без прерываний на каждой строке.

cherkasy
12.09.2016, 01:46
они постоянно для спека продаются) даже вот OCR прибамбас был ! но я не фанат такого редкого железа)

OrionExt
12.09.2016, 02:24
Это аппаратная штука. Ни кто не ловит это перо в прерываниях по строке. Ток согласно мануалу на микросхему.
Открою страшную тайну. Световое перо синхронно работает с разверткой ТВ микрухи (аппаратная штука). Если была засветка, в момент нажатия кнопки на указке. ВИН!

У MSX световое перо на VDP предусмотрено. На хх58 его по-моему выпилили.

- - - Добавлено - - -

Чего еще добавить. Перо не работает на переделанном сигнале от микрухи (VDP), аля преобразователи to VGA и т.д.

finevlad
12.09.2016, 11:53
finevlad, ошибаетесь. Световое перо и на ВГ75 работает. Без прерываний на каждой строке.

я и не говорил про прерывания на каждой строке
как раз я сказал что достаточно одной привязки на кадр и желательно аппаратной
но если синхра валится то грех ее не использовать

Cat_Alex/QRP
14.09.2016, 02:38
Однако само перо можно взять от ЕС7927 или чего иного, т.к судя по описанию V9938 нужно только сигнал нажатия кнопки и сигнал с компаратора для датчика... Надо бы попробовать собрать, да только проверить (программы в смысле) нечем. Перевернул весь архив MSXIsland, но не нашел...

DJs3000
14.09.2016, 09:18
Как я понял не все машины могли работать с световым пером, а только определенные модели. https://www.msx.org/wiki/Light_pen

OrionExt
15.09.2016, 13:01
Ожидаемо. Световое перо – специфический девайс. Я и программ не вспомню, хотя специально их не искал.

cherkasy
15.09.2016, 15:13
CAD-Master - Light Pen & Graphics Software для Trojan Light Pen

Datel Lightwriter

DK'Tronics Light Pen MK2/3

Light Pen

The Light Pen

Magnum Light Pen

Spectrum Doodler Lightpen

Spectrum Light Gun Project

Tenkolek Light Pen и так далее)

OrionExt
15.09.2016, 15:50
Google молчит о данных программах для MSX, куда уж мне:)

- - - Добавлено - - -

Даже самый продвинутый эмулятор openMSX, ничего не знает о Пистолетах со световым лучом:D

cherkasy
17.09.2016, 00:51
не, как раз о пистолетах там все верно !)
на msx все работает с:

Cosmic Sheriff
Solo
Target Plus
Duck Hunt
Mike Gunner
Dungeon Hunter (ASCII Plus-X Terminator Laser)

а так , да, тот софт для спека...
_____
The light pen works just like an on-screen touchpad, and applications should be interchangeable between it and the MSX-Touchpad. The only subtle differences that applications developers should take into account are:

While the light pen works over the real screen, the touchpad is a "blind" device. Thus, the light pen will not require any kind of "mouse pointer" , while the touchpad will require one.
The light pen is designed to force the user to click the button to get a reading, while on the touchpad the user get a reading simply by touching the pad and the button can be pressed independently. On the light pen, to click the button without touching the screen the user must literally do that: click the light pen outside of the CRT glass area.
_____
There are two standards for the light pen interface. The MSX BIOS abstracts the differences in their hardware.
User software programmers *must* read the touchpad only by using the BIOS GTPAD call as described in the beginning of the article. The low-level implementation details listed bellow are explained just to provide information for hardware designers, emulator programmers and the programmers of the C-BIOS. В сети есть лучшее качество ниже приведенной фотки.

58239

Cat_Alex/QRP
17.09.2016, 01:07
не, как раз о пистолетах там все верно !)
на msx все работает с:

Cosmic Sheriff
Solo
Target Plus
Duck Hunt
Mike Gunner
Dungeon Hunter (ASCII Plus-X Terminator Laser)

cherkasy, ясно... То есть пр наличии соответствующего по, мы можем припаять к msx, имеющему должный интерфейс, и пистоль от денди, и перо от ес7927 :v2_dizzy_vodka: