|
Главная.
Новости.
Файлы.
Работы.
Контакты.
Чат "Пиво".
Статьи.
Ссылки.
Гостевая.
|
Подключение к спектруму джойстика от приставки SEGA и другое...
В рамках этой статьи я попытаюсь изложить несколько идей, родившихся в моём мозге :-)).
Для начала я расскажу о вещице, которая явно обрадует геймеров.
Джойстик от приставки SEGA.
Многие, наверно, скажут, что это, блин, старо, но у меня есть свои соображения на этот счет. У всех, кто подключил пульт от SEGA, наверняка используется всего пять кнопок из 12 возможных. Меня это тоже весьма огорчило, когда я припаял к сгоревшему пульту несколько проводов и штеккер и воткнул это произведение искусства в разъем KEMPSTON на своем PROFI.
Работало оно хорошо, но меня грызла мысль, что хорошо бы в некоторых играх, где используется большее количество клавиш, чем пять, например в UFO 1-2, Черном Вороне.
А ведь это реально!
Делается это так. Берете пульт, разбираете его, с платы сковыриваете микросхему и тонкими проводками припаиваете:
кнопки "B" и "A"
"C" и "вверх"
"X" и "вниз"
"Y" и "влево"
"Z" и "вправо"
между собой. Припаивайте только один из контактов этих кнопок и припаяйте каждую пару на кабель. С другой стороны эти провода пойдут на разъем клавиатуры к сигналам Kb_in0...Kb_in4 по схеме Scorpion'a.
Другие контакты кнопок "X", "B", "C", "Y", "Z" соедините между собой и припаяйте на кабель. Этот провод пойдет на Kb_a8. Аналогично поступите с другой группой кнопок, только провод пойдет на Kb_a12.
Пары можно сформировывать по-другому, как вам удобно, но идея, я надеюсь, вам ясна: пять кнопок вешаются параллельно на полуряд SINCLAIR джойстика, а еще пять - на полуряд CAPS-V.
Можно использовать еще и кнопки START и MODE по тому же принципу.
Напоследок скажу, что если сей девайс будет у вас глючить, то надо применить какие-нибудь буферные элементы, например 555ЛП9.
А теперь расскажу о том, что можно сделать с исправным SEG'овским пультом. Сразу скажу, что распайки исправного пульта у меня нет по причине отсутствия такового (ну не буду же я покупать пульт только для того, чтобы узнать его распайку), но я знаю назначения проводов в кабеле:
1 - общий провод
2 - +5 вольт (питание)
3 - вверх / A
4 - вниз / B
5 - влево / C
6 - вправо / X
7 - START / Y
8 - MODE / Z
9 - сигнал, производящий переключение каналов
Краткий принцип действия пульта:
Внутри стоит микросхема, похожая на КП11, только она на 6 каналов, она же играет роль буферного усилителя.
Понятно, что когда на 9-м проводе низкий уровень, по проводам передаются сигналы каналов 0, а когда высокий уровень - передаются сигналы каналов 1.
Повторяю, что я не знаю распайку штеккера и не уверен, что кнопки стоят именно такими парами, как я написал (иначе схема описанного ниже устройства была бы уже готова), но мне хотелось бы это знать.
Если бы у меня каким-то чудом появился пульт хотя бы на 2 часа (лучше всего вместе с приставкой), я это все буду знать, а также, может быть, даже разработаю технологию ремонта пульта.
Теперь, зная принцип работы пульта, можно подключить его аналогично тому, как я описал в предыдущей части статьи, а можно построить программируемый пульт.
Интерфейс программируемого пульта выполняется на микросхеме статического ОЗУ и работает следующим образом. Выбор микросхемы ОЗУ осуществляется точно так же, как клавиатуры Спектрума - с помощью сигналов А0, -RD, -IORQ, то есть при чтении из порта с адресом FE.
Так как при опросе клавиатуры используется "блуждающий" по линиям адреса A8 - A15 логический 0, то его необходимо преобразовать на шифраторе из 8 в 3 и подать на адресные входы ОЗУ. Остальные адресные входы ОЗУ связываем с пультом.
При обычном режиме работы микросхема ОЗУ находится в режиме "чтение" и непрерывно, с частотой, с которой опрашивается клавиатура, выдает на шину данных данные из адресов, определяемых "бегущим" кодом на A8 - A15 и нажатыми клавишами пульта.
Для записи этих данных в микросхему ОЗУ нужно нажать комбинацию кнопок на пульте, нажать кнопку на клавиатуре, за которой вы хотите закрепить эту комбинацию, и нажать кнопку "ЗАПИСЬ".
Следовательно, можно будет использовать все 12 кнопок SEG'овского пульта и играть даже во всеми любимую игру -=ELITE=- с максимальным комфортом.
Добавлю лишь, что, в принципе, можно использовать и ПЗУ, но в этом случае пульт будет менее удобен в программировании, то есть раскладку можно будет поменять, только перепрограммировав ПЗУ, что сделать может далеко не каждый.
По вопросам разработки более подробной схемы обращайтесь ко мне (или в редакцию газеты) и не забудьте принести исправный пульт или хотя бы распайку и соответствие кнопок каналам.
Сканер на SPECCY.
Вообще-то основная идея не моя. Как-то, просматривая на работе содержимое CD, я наткнулся на журнал SPECTOPHOBY. Мое внимание сразу привлекла статья "СКАНЕР v-1" от Юдина Виктора. Идея у него хорошая - взять принтер, скинуть с него голову, приделать вместо оной оптическую и присоединить ее к порту "KEMPSTON". После чего вставляете в принтер бумажку с изображением, которое хотите сосканировать, эмулируете печать, и дело в шляпе. Дело только в том, что для каждого принтера надо учитывать скорость движения головки и шаг прокрутки барабана.
В моем девайсе все гораздо проще:
Берете принтер, открываете его, отсоединяете движок головки и движок прокрутки барабана, присоединяете их к некой плате, а ее, в свою очередь, к разъему принтера, например. Печатающую голову снимаете и на ее место ставите оптическую.
Общение с устройством элементарное:
4 бита на вывод, 2 бита на ввод.
Устройству я кидаю 4 бита:
(сигналы активны в 1)
1 - шаг головки влево
2 - шаг головки вправо
3 - проворот барабана вперед на шаг
4 - проворот барабана назад на шаг
Снимаю с устройства 2 бита:
1 - означает, что головка занимает крайнее левое положение
2 - собственно бит информации, который сообщает, темный или светлый участок под фотоэлементом.
Как видите, с этим сканером можно работать даже из BASIC'а.
К моему великому сожалению, не могу в рамках этой статьи привести принципиальную схему, потому что она отсутствует: движки у разных принтеров работают на разных напряжениях и токах, поэтому для каждого принтера нужно схему рассчитывать индивидуально. Можно, конечно, забабахать универсальную схему, но полюбому найдется такой принтер, который работать с этой схемой не захочет. Вот этот момент является единственным минусом моего девайса.
Но если применить хотя бы 6-ти битный АЦП, то можно будет сканировать изображения в 64 градациях яркости в память, а затем с помощью математических вычислений получать 1-битовые спековские изображения.
>>
|