NedoText на рассыпухе

Публичный форум для http://www.nedopc.org/nedopc

Moderator: Shaos

User avatar
Shaos
Admin
Posts: 24011
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Post by Shaos »

cr0acker wrote:
Shaos wrote:
cr0acker wrote:
Shaos wrote:
cr0acker wrote:Пиксель клок будет 16Мгц что в теории даст.640х200, что достаточно для вывода текста в формате 80х25. Пока bw-only
Для вывода текста в формате 80х25 хватит экрана 480х200 (одно знакоместо 6х8 пикселов) - на это должно хватить 10 МГц с заталкиванием кадра в видимую область NTSC и PAL. Надо?
Угу
Если 1 бит на пиксел, то это будет 60 байт в строке или 12000 байт в кадре. Логику можно сделать на рассыпухе или действительно в ПЗУ затолкать.

По идее можно и чисто текстовое решение сделать (графику в этом случае можно будет псевдографикой городить - 160х50 пвсевдопикселов). Быстрее будет текст программно выводиться и заморочек меньше с синхронизацией.
Или так.
Вобщем прикидываю чисто текстовое решение - 80x25 со знакоместом 6x8 (получается 480x200 в PAL/NTSC). На мелкой логике схема будет более чем монстроидальная - даже с использованием ПЗУ или программируемой логики. Быстрый микроконтроллер типа SX-28 надо фтыкать.
А если графика 480х200? Вроде попроще должно быть
Не - сложность в синхросмесях
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
Shaos
Admin
Posts: 24011
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Post by Shaos »

Shaos wrote:Вобщем прикидываю чисто текстовое решение - 80x25 со знакоместом 6x8 (получается 480x200 в PAL/NTSC). На мелкой логике схема будет более чем монстроидальная - даже с использованием ПЗУ или программируемой логики. Быстрый микроконтроллер типа SX-28 надо фтыкать.
Вроде придумал как обойтись одной ПЗУ на 2К и некоторой обёрточной логикой - так что вполне можно соорудить на советских микросхемах ;)
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
Shaos
Admin
Posts: 24011
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Post by Shaos »

Shaos wrote:
Shaos wrote:Вобщем прикидываю чисто текстовое решение - 80x25 со знакоместом 6x8 (получается 480x200 в PAL/NTSC). На мелкой логике схема будет более чем монстроидальная - даже с использованием ПЗУ или программируемой логики. Быстрый микроконтроллер типа SX-28 надо фтыкать.
Вроде придумал как обойтись одной ПЗУ на 2К и некоторой обёрточной логикой - так что вполне можно соорудить на советских микросхемах ;)
Ещё добавим 2К ПЗУ на знакогенератор - 256 символов 5x7 в досовской кодировке плюс альтернативный шрифт для псевдополутоновой псевдографики 80x50 (16 "полутонов") - выглядеть оно будет примерно так:

Image

Ну и ещё 2К ОЗУ на видеопамять...
Last edited by Shaos on 04 Aug 2006 21:06, edited 1 time in total.
Я тут за главного - если что шлите мыло на me собака shaos точка net
Shiru Otaku
Retired
Posts: 490
Joined: 16 Mar 2002 17:00

Post by Shiru Otaku »

Ооо, чанки. ZX-демомейкеры будут очень довольны;)
User avatar
Shaos
Admin
Posts: 24011
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Post by Shaos »

Shiru Otaku wrote:Ооо, чанки.
Причём заметь - "аппаратные" чанки ;)
Shiru Otaku wrote:ZX-демомейкеры будут очень довольны;)
Боюсь неочень - тут ведь Z80 не будет :)
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
cr0acker
God
Posts: 1078
Joined: 03 Feb 2003 13:53

Post by cr0acker »

Круто, жду схемы.
Image
Формат конференции позволяет сказать то что я действительно думаю о проблемах...
(с) Путин
Mac Buster
Retired
Posts: 1474
Joined: 03 Aug 2003 22:37
Location: Moscow

Post by Mac Buster »

Эх, жаль к ЦЦ'06 не успеем :D
Extreme Entertainment
User avatar
Shaos
Admin
Posts: 24011
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Post by Shaos »

Вот как будут выглядеть некоторые наши картинки на таком дисплее (чтобы посмотреть нужна джава - JRE):

http://www.nedopc.org/test_nedotext.php ... inity2.jpg
http://www.nedopc.org/test_nedotext.php ... inity3.jpg
http://www.nedopc.org/test_nedotext.php ... inity4.jpg
http://www.nedopc.org/test_nedotext.php ... finity.jpg
http://www.nedopc.org/test_nedotext.php ... 60801b.jpg
http://www.nedopc.org/test_nedotext.php ... 60801d.jpg
http://www.nedopc.org/test_nedotext.php ... /cccp1.jpg
http://www.nedopc.org/test_nedotext.php ... /cccp2.jpg
http://www.nedopc.org/test_nedotext.php ... /cccp3.jpg
http://www.nedopc.org/test_nedotext.php ... d/hole.jpg
http://www.nedopc.org/test_nedotext.php ... d/worm.png
http://www.nedopc.org/test_nedotext.php ... d/SpNC.gif
http://www.nedopc.org/test_nedotext.php ... ad/9_2.jpg
http://www.nedopc.org/test_nedotext.php ... load/1.jpg
http://www.nedopc.org/test_nedotext.php ... dTaper.jpg
http://www.nedopc.org/test_nedotext.php ... Sound1.jpg
http://www.nedopc.org/test_nedotext.php ... edowin.gif
http://www.nedopc.org/test_nedotext.php ... lm_key.jpg
http://www.nedopc.org/test_nedotext.php ... lmpix1.jpg
http://www.nedopc.org/test_nedotext.php ... lmpix6.jpg
http://www.nedopc.org/test_nedotext.php ... -prog1.jpg
http://www.nedopc.org/test_nedotext.php ... ge/ups.jpg
http://www.nedopc.org/test_nedotext.php ... _flame.gif
http://www.nedopc.org/test_nedotext.php ... p_mand.gif
http://www.nedopc.org/test_nedotext.php ... sp_psy.gif
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
HardWareMan
Banned
Posts: 2139
Joined: 20 Mar 2005 13:41
Location: От туда

Post by HardWareMan »

Respect! Вот если бы еще его повторить..... Когда доки будут?
User avatar
Shaos
Admin
Posts: 24011
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Post by Shaos »

Shaos wrote:
Shaos wrote:
Shaos wrote:Вобщем прикидываю чисто текстовое решение - 80x25 со знакоместом 6x8 (получается 480x200 в PAL/NTSC). На мелкой логике схема будет более чем монстроидальная - даже с использованием ПЗУ или программируемой логики. Быстрый микроконтроллер типа SX-28 надо фтыкать.
Вроде придумал как обойтись одной ПЗУ на 2К и некоторой обёрточной логикой - так что вполне можно соорудить на советских микросхемах ;)
Ещё добавим 2К ПЗУ на знакогенератор - 256 символов 5x7 в досовской кодировке плюс альтернативный шрифт для псевдополутоновой псевдографики 80x50 (16 "полутонов") - выглядеть оно будет примерно так:

Image

Ну и ещё 2К ОЗУ на видеопамять...
А вот примеры текстовых экранов (только что закончил подготовку шрифта):

Image

Image

Image
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
HardWareMan
Banned
Posts: 2139
Joined: 20 Mar 2005 13:41
Location: От туда

Post by HardWareMan »

Не трави душу! Когда будет готово?
User avatar
Shaos
Admin
Posts: 24011
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Post by Shaos »

HardWareMan wrote:Не трави душу! Когда будет готово?
Прежде чем городить окончательную схему, надо определиться - либо я даю полный адресный доступ к видеопамяти, либо оперирую тремя (четырмя) портами для заполнения видеопамяти.
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
HardWareMan
Banned
Posts: 2139
Joined: 20 Mar 2005 13:41
Location: От туда

Post by HardWareMan »

Shaos wrote:
HardWareMan wrote:Не трави душу! Когда будет готово?
Прежде чем городить окончательную схему, надо определиться - либо я даю полный адресный доступ к видеопамяти, либо оперирую тремя (четырмя) портами для заполнения видеопамяти.
Ну, если это все равно символный экран, т.е. маленький, можно и портами... Чтобы проводков меньше было. :)
User avatar
cr0acker
God
Posts: 1078
Joined: 03 Feb 2003 13:53

Post by cr0acker »

HardWareMan wrote:
Shaos wrote:
HardWareMan wrote:Не трави душу! Когда будет готово?
Прежде чем городить окончательную схему, надо определиться - либо я даю полный адресный доступ к видеопамяти, либо оперирую тремя (четырмя) портами для заполнения видеопамяти.
Ну, если это все равно символный экран, т.е. маленький, можно и портами... Чтобы проводков меньше было. :)
Соглачен.
Image
Формат конференции позволяет сказать то что я действительно думаю о проблемах...
(с) Путин
User avatar
Shaos
Admin
Posts: 24011
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Post by Shaos »

Ну, если это все равно символный экран, т.е. маленький, можно и портами... Чтобы проводков меньше было.
Ну тогда можно и к NI-15 его присобачить ;)

Примерный расклад такой - имеем 4 порта:
#B0 - порт управления (пока мыслится один бит 0 - обычный шрифт "0" или псевдографика "1")
#B1 - порт координаты X (допустимые значения 0...79)
#B2 - порт координаты Y (допустимые значения 0...24)
#B3 - код символа в указанных координатах (прочитать или записать)
Все порты функционируют и на запись, и на чтение. Ввиду того, что схема не будет тормозить центральный проц в случае занятости, центральный проц должен будет переспрашивать значение символа после каждой записи, чтобы убедиться, что он действительно записан:

Code: Select all

PRINT: ; B-x, C-y, D-code
 MOV A,B ;5t
 OUT #B1 ;10t
 MOV A,C ;5t
 OUT #B2 ;10t
PRINT1:
 MOV A,D ;5t
 OUT #B3 ;10t
 IN #B3 ;10t
 CMP D ;4t
 JNZ PRINT1 ;10t
 RET;10t
Время выполнения подпрограммы - 40+39*N тактов, где N - количество попыток записи. Вывод одного символа в лучшем случае займёт 40+39=79 тактов (или 25316 символов в секунду при 2 МГц), но с учётом того, что в пределах кадра будут "мёртвые зоны", внутри которых видеопамять будет недоступна внешнему процессору, реальная скорость будет меньше (будет больше неудачных попыток записи) - предположительно "мёртвые зоны" будут занимать 6% всего времени (это для PAL, а для NTSC больше - 7.2%).

P.S. В будущих версиях можно прикрутить автоматический инкремент координат по чтению или успешной записи символа (будет устанавливаться двумя битами в порту управления).

P.P.S. Кроме того в будущем можно вообще избавиться от "мёртвых зон" тщательно подсчитав тактирование так, чтобы заведомо более медленный центральный проц всегда попадал своими запросами на свободную видеопамять (причём без насильственного торможения центрального проца).
Я тут за главного - если что шлите мыло на me собака shaos точка net