Author |
Message |
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22678 Location: Silicon Valley
|
Ещё один тест на вывод 16 символов:
Тест сначала выводит нулевой байт (0x00), затем 6 раз 1 пиксел со сдвигом от правого края до левого (0x04,0x08,0x10,0x20,0x40,0x80), затем 5 раз 2 пиксела (0x0C,0x18,0x30,0x60,0xC0), ну и наконец 4 раза по 3 пиксела (0x1C,0x38,0x70,0xE0).
Вот тоже самое, но снятое фотоаппаратом с экрана моего большого ТВ (левый-верхний угол экрана):
Влияние помех можно посмотреть вот по этому видеоролику (399K) - тотже левый-верхний угол экрана.
То что правая колонка знакоместа (шестой пиксел по счёту) выглядит тоньше остальных - нестрашно, т.к. предполагается использовать символы шириной только в 5 пикселов, т.е. шестой пиксел у знакоместа всегда будет чёрным.
Last edited by Shaos on 26 Dec 2006 00:33, edited 1 time in total.
|
25 Dec 2006 21:57 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22678 Location: Silicon Valley
|
Если использовать знакогенератор через RETLW (храниение и возврат данных по пиковски), то не удаётся влезть в 35 тактов - пробую сделать генератор через DATA (чтение через IREAD - решение только для SX)
|
27 Dec 2006 01:23 |
|
|
cr0acker
God
Joined: 03 Feb 2003 13:53 Posts: 1078
|
А сколько тактов получается?
_________________
Формат конференции позволяет сказать то что я действительно думаю о проблемах...
(с) Путин
|
27 Dec 2006 03:31 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22678 Location: Silicon Valley
|
Пока незнаю, но с RETLW точно больше, т.к. RETLW не возвращает за пределы страницы - возвращает RETP, но чтобы его подружить с последовтельностями RETLW надо добавить еще один вызов подпрограммы и возврат - а это ещё 6 тактов. Шесть тут, шесть там - вот и перескочили за допустимую границу...
|
27 Dec 2006 07:09 |
|
|
DDp
Novelist
Joined: 24 Aug 2006 02:14 Posts: 46 Location: pуcвoceмьнадцaть
|
Захватываешь через композит, а если через s-video ?!!!
|
27 Dec 2006 07:23 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22678 Location: Silicon Valley
|
S-Video по идее можно - я ведь только сигнал яркости могу генерировать, а цветность - не подключать
|
27 Dec 2006 17:40 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22678 Location: Silicon Valley
|
| | | | Shaos wrote: Взаимодействие с девайсом предпологается осуществлять по 10 сигналам (плюс земля): D0, D1, D2, D3, D4, D5, D6, D7, IFLAG, OFLAG (из них выходной только OFLAG, а все остальные - входы).
Внешнее устройство ждёт когда OFLAG=0, затем выводит в D0...D7 нужный код и взводит IFLAG=1, далее ждём когда OFLAG=1 и сбрасываем IFLAG=0. Пока не станет OFLAG=0 новый код засылать нельзя.
Двоичный код вида 000yyyyy задаёт текущую строку. Двоичный код вида 1xxxxxxx задаёт текущий столбец. Все остальные коды (в диапазоне 0x20...0x7F) считаются кодом выводимого символа. | | | | |
В связи с тем что в чип удалось затолкать весь видимый диапазон букв включая псевдографику и русские буквы в альтернативной досовской кодировке (от 0x20 до 0xEF) - потребовался другой способ задания координаты текущего символа. Можно поробовать что-то более стандартное - например как в терминале VT52: PRINT CHR$(27)+"Y"+CHR$(32+Y)+CHR$(32+X).
|
28 Dec 2006 03:00 |
|
|
Sonic
Senior
Joined: 09 Jun 2005 05:34 Posts: 112
|
Ух ты! Надо довести разработку до уровня полного клона VT-52. И сделать чтобы на цветных ТВ цвет был зеленый.
Возможно что я даже знаю кому можно продать некоторое количество данных девайсов. Только там должен быть тогда протокол WYSE.
|
28 Dec 2006 05:43 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22678 Location: Silicon Valley
|
Не знаю что такое WYSE. Да и коммерческих применений не ищу - кому надо, тот разовъет до коммерческого использования
|
28 Dec 2006 10:33 |
|
|
CHRV
God
Joined: 29 Dec 2003 01:00 Posts: 1101 Location: Москва
|
Целеком поддерживаю.
Принцип NedoPC делать в свое удовольствие и класть на коммерцию!
|
28 Dec 2006 12:48 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22678 Location: Silicon Valley
|
IREAD помог уложиться в отведённые 35 тактов на символ (до сих пор не могу понять почему не 36)
|
28 Dec 2006 16:39 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22678 Location: Silicon Valley
|
Очередная закапченная картинка:
Тоже самое снятое фотоаппаратом с экрана большого ТВ:
Левый-верхний угол:
Как можно видеть левый край символов "плывёт" и кое-где почти склеивается с правым краем предыдущих символов (несмотря на то что правее правой колонки каждого символа всегда есть ещё одна пустая чёрная колонка). Пока никак не могу это побороть - если начинаю двигать синхропосылку в делитель частоты влево или вправо относительно строба загрузки сдвигового регистра, то становится ещё хуже - исчезает либо полностью левый край, либо полностью правый край символов. Думаю пока можно считать допустимым то что получилось. Исходники как обычно - на CVS.
Теперь надо сделать возможность управления девайсом снаружи.
|
28 Dec 2006 21:18 |
|
|
lvd
Maniac
Joined: 01 Mar 2005 21:42 Posts: 230
|
Надеюсь, по завершению этой эпопеи стало понятно, что такие вещи не надо делать на МК =)
_________________ Du bist ein Spektrumist!
|
28 Dec 2006 23:52 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22678 Location: Silicon Valley
|
Это скорее имеет место быть некоторая непредсказуемость (или неполная документированность) чипа SX-28 - в чистых пиках подобных "странностей" быть не должно, хоть они и медленнее.
|
29 Dec 2006 10:26 |
|
|
Shaos
Admin
Joined: 08 Jan 2003 23:22 Posts: 22678 Location: Silicon Valley
|
Наконец-то довёл до ума процедуры записи и чтения памяти - на этом скриншоте показано реальное содержимое видеопамяти (первых 2000 байтов двух-килобайтного срама), причём в первых трёх строках можно увидеть все закодированные в знакогенератор символы (записаны в видеопамять вначале работы программы микроконтроллера):
А теперь на очереди управление снаружи - тестировать буду через LPT-порт своего PC под линуксом.
О результатах сообщу - как обычно со скриншотами
|
30 Dec 2006 23:56 |
|
|