ZXNet эхоконференция «hardware.zx»


тема: про видеоконтроллер



от: Андрей Александрович Титов
кому: All
дата: 10 Jan 2007
Hello, boo_boo

boo> теперь непонятка: число тактов на строку (включая обратный ход) у
boo> всех спеков, насколько знаю, одно. а количество строк -- разное, то
boo> есть величина фрейма разная тоже. но ЭЛТ-то не прикажешь, он должен
boo> отрабатывать свои 50гц... чем это компенсируется, неужто частотой
boo> тактового генератора?

Во-первых число тактов в строке не у всех одинаковое,
а во-вторых это вполне компенсируется разной частотой кадров.
Т.е. например, у Пентагона, из за его 320 линий в кадре, вместо 312, кадровая
часота несколько заниженная. А монитору все равно - он синхронизируется под
любую в опредленных пределах (45..55Гц, например)

от: Станислав Ломакин
кому: All
дата: 10 Jan 2007
Hello, All

возникла мысль написать эмуляцию сабжа, и не чтобы как-то работала, а чтобы
работала более-менее по принципу железки. но принципы эти я представляю себе
смутно. плз, прочитайте, и поправьте, где я неправ ;)
как я это понимаю:

прорисовка экрана начинается по фронту кадрового синхроимпульса. экранная
картинка выводится по линиям, два пиксела за такт. по фронту импульса гашения
(который формируется по спаду строчного синхроимпульса) рисование очередной
линии прекращается, луч переходит к началу следующей строки, и по спаду
импульса гашения (пентагон: 32 такта) начинает ее рисовать.
выводится верхняя часть бордюра (64 линии; чем, интересно, это определяется?).
потом начинается отрисовка 192-х линий, включающих в себя спектрумовский экран
и полоски бордюра по сторонам. сперва рисуется левое бордюрное ухо, ширина
которого (пентагон: 36 тактов) определяется, кажется, неким счетчиком
контроллера, назову его "D"; затем 256 пикселов картинки -- контроллер берет из
памяти байт пикселов, байт атрибутов, сохраняет их в своих регистрах, рисует, и
так каждые 8 пикселов. потом по счетчику D снова начинается рисование бордюра
-- правого уха, заканчивается оно с приходом строчного синхроимпульса, и так
все 192 линии.
теперь опять рисуется бордюр, нижняя его часть, до тех пор (пентагон: 48
линий), пока не припрется кадровый синхроимпульс, по спаду которого начинается
обратный ход кадровой развертки (3584 такта). ну а потом все повторяется
сначала.

теперь непонятка: число тактов на строку (включая обратный ход) у всех спеков,
насколько знаю, одно. а количество строк -- разное, то есть величина фрейма
разная тоже. но ЭЛТ-то не прикажешь, он должен отрабатывать свои 50гц... чем
это компенсируется, неужто частотой тактового генератора?

от: Valery Tkachuck
кому: All
дата: 10 Jan 2007
Hello, boo_boo

boo> эмулятор спека думаю написать очередной

Под какую платформу?

от: Марк Антонов
кому: All
дата: 10 Jan 2007
Hello, Titus

Titus правильно все сказал. а вообще цель всего это безобразия какая?

от: Станислав Ломакин
кому: All
дата: 10 Jan 2007
Hello, The Exploited

The> Titus правильно все сказал. а вообще цель всего это безобразия какая?

цель -- софтверная эмуляция сабжа. эмулятор спека думаю написать очередной ;)

от: Дмитрий Демьяненко
кому: All
дата: 10 Jan 2007
Hello, The Exploited

К тому же все которые мультиколорные как раз и эмулят развертку.

от: Марк Антонов
кому: All
дата: 10 Jan 2007
Hello, boo_boo

boo> цель -- софтверная эмуляция сабжа. эмулятор спека думаю написать
boo> очередной

их же тонна готовых - эмуляторов, да еще и с исходниками. а сабжей тоже куча
разных

от: Владимир Кладов
кому: All
дата: 11 Jan 2007
Hello, boo_boo

а классические компы - будут? а если нет, то и ничего интересного. В унрил все
уже есть для СССР-ских клонов, в плане мультиколора. И где там "пару тактов"
добавлено?

от: Станислав Ломакин
кому: All
дата: 11 Jan 2007
Hello, Black_Cat

Bla> Под какую платформу?

под линух и винду как минимум...

The> их же тонна готовых - эмуляторов, да еще и с исходниками. а сабжей
The> тоже куча разных

тонна только под винду, с исходниками полкило, с внятными исходниками нет
почти

от: Станислав Ломакин
кому: All
дата: 11 Jan 2007
Hello, heroy

her> К тому же все которые мультиколорные как раз и эмулят развертку.

да, но написана эта эмуляция обычно по принципу "чтобы все мультиколоры
работали". в духе -- тут чего-то сьехало, надо добавить пару тактов. и фиг
потом поймешь что к чему

от: Станислав Ломакин
кому: All
дата: 11 Jan 2007
Hello, Vladimir Kladov

Vla> а классические компы - будут? а если нет, то и ничего интересного. В
Vla> унрил все уже есть для СССР-ских клонов, в плане мультиколора. И где
Vla> там "пару тактов" добавлено?

классические планируются, но сперва что попроще, конечно.
в анриле эмуляция ориентирована на результат, а не на повторение архитектурных
фишек компа, снаружи это незаметно, но в коде разобраться сложно, все между
собой перемешано...
ну и анрил только под винды, а мне тут в линухе тоскливо без нормального эмуля
:rolleyes:

от: Александр Мельников
кому: All
дата: 11 Jan 2007
Hello, boo_boo

Hа чем писать собираетесь?

от: Алексей Гончаров
кому: All
дата: 11 Jan 2007
Hello, jager

Hу на чём писать выбора не так много, вопрос скорее о фреймворках/либах.

от: Станислав Ломакин
кому: All
дата: 11 Jan 2007
Hello, NovaStorm

jag> Hа чем писать собираетесь?

на чистом Си ;)

Nov> Hу на чём писать выбора не так много, вопрос скорее о
Nov> фреймворках/либах.

да, тут побольше выбора. наверное, SDL, благо он много на чем работает, включая
nintendo ds, на которую я зубы точу

от: Andreas Kaiser
кому: All
дата: 12 Jan 2007
Hello, NovaStorm

Nov> Отдельный от SDL GUI нужен для избавления от велосипедостроительства.
Nov> И если индикаторы и простые элементы можно сделать хоть в SDL, хоть
Nov> например в guichan, то настройки и диалог открытия файлов всё же
Nov> лучше иметь нормальные.
Nov> PS; И; да, нормально написананный эмуль в портировании нуждаться не
Nov> будет, только в перекомпиляции =)

Берётся wxWidgets и на нём строится вся гуя, а потом компиляйте хоть в чёрта
лысого. Вобще кросс-платформенных халявных гуи-либ как песка в море.

от: Vladimir Berezenko
кому: All
дата: 12 Jan 2007
Hello, NovaStorm

Nov> Если на чистом Си, то что будет с GUI? Консоль это конечно правильно,
Nov> но увы не всегда удобно.
Nov> SDL конечно естесственный выбор, но вот насчёт NDS кажется придётся
Nov> подождать, сыровато вроде. Тем более оно неофициально, и этого нет
Nov> даже в транке 1.3?

А нафиг в эмуле ГУЙ? Точнее перефразируем вопрос: зачем в эмуле гуй написаный
не в том-же SDL?

2boo_boo; Звук; тоже надо в SDL. Хочу этот эмуль потом нормально портануть без
всяких там мучений с /dev/dsp...

от: Алексей Гончаров
кому: All
дата: 12 Jan 2007
Hello, Q-Master

Отдельный от SDL GUI нужен для избавления от велосипедостроительства. И если
индикаторы и простые элементы можно сделать хоть в SDL, хоть например в
guichan, то настройки и диалог открытия файлов всё же лучше иметь нормальные.
PS; И; да, нормально написананный эмуль в портировании нуждаться не будет,
только в перекомпиляции =)

от: Алексей Гончаров
кому: All
дата: 12 Jan 2007
Hello, boo_boo

Если на чистом Си, то что будет с GUI? Консоль это конечно правильно, но увы не
всегда удобно.
SDL конечно естесственный выбор, но вот насчёт NDS кажется придётся подождать,
сыровато вроде. Тем более оно неофициально, и этого нет даже в транке 1.3?

от: Камиль Каримов
кому: All
дата: 12 Jan 2007
Hello, Mikka_A

Mik> .. а есть эмуль для Покет ПэЦэ?

Эмулятор для PocketPC!(PocketSpeccy) http://zx.pk.ru/showthread.php?t=3924

от: Михаил Андреев
кому: All
дата: 12 Jan 2007
Hello, boo_boo

boo> возникла мысль написать эмуляцию сабжа.............

Hемного не в тему - а есть эмуль для Покет ПэЦэ?

от: Andreas Kaiser
кому: All
дата: 12 Jan 2007
Hello, NovaStorm

Nov> чур меня. Тем более, что язык то - С, а не С++. Я потому и
Nov> поинтересовался... Сишных гуёв меньше, а наиболее развитый из них(?)
Nov> GTK+ под win32 страх и ужас.
Nov> Ладно, значит консоль =)

Hа С ни один вменяемый гуи писать не будет. А мешать оба языка Богом наказано,
потому как руль :)

от: Алексей Гончаров
кому: All
дата: 12 Jan 2007
Hello, icebear

ice> Берётся wxWidgets

чур меня. Тем более, что язык то - С, а не С++. Я потому и поинтересовался...
Сишных гуёв меньше, а наиболее развитый из них(?) GTK+ под win32 страх и ужас.
Ладно, значит консоль =)

от: Andreas Kaiser
кому: All
дата: 12 Jan 2007
Hello, boo_boo

boo> хм, а GTK+ чем не гуи-библиотека на C? куча вполне вменяемых
boo> приложений написано. хотя для эмуля ИМХО лучше самому гуй сделать

Смотря какой GTK :) если gtkmm - то он на С++. а вообще, гуи на С мне хватило в
WinAPI, больше не хочу.

от: Станислав Ломакин
кому: All
дата: 12 Jan 2007
Hello, NovaStorm

Nov> Если на чистом Си, то что будет с GUI? Консоль это конечно правильно,
Nov> но увы не всегда удобно.
Nov> SDL конечно естесственный выбор, но вот насчёт NDS кажется придётся
Nov> подождать, сыровато вроде. Тем более оно неофициально, и этого нет
Nov> даже в транке 1.3?

гуи в масштабе, достаточном для эмуля, нормально делается ручками на том же
SDL -- всего то, настройки и диалоги чтения/записи файлов, ну и дебаггер.
поддержки мыши не будет, все кнопками ;)
про NDS; к; тому времени как я эмуль сделаю, глядишь и SDL-порт для него
высохнет :rolleyes;

QMa>; Звук тоже надо в SDL. Хочу этот эмуль потом нормально портануть без
QMa> всяких там мучений с /dev/dsp...

надо бы по-хорошему, но лаг такооой будет... вообщем, все равно без поддержки
нативного звука никак.

ice> Hа С ни один вменяемый гуи писать не будет. А мешать оба языка Богом
ice> наказано, потому как руль :)

хм, а GTK+ чем не гуи-библиотека на C? куча вполне вменяемых приложений
написано. хотя для эмуля ИМХО лучше самому гуй сделать

от: Станислав Ломакин
кому: All
дата: 12 Jan 2007
Hello, icebear

ice> Смотря какой GTK :) если gtkmm - то он на С++. а вообще, гуи на С мне
ice> хватило в WinAPI, больше не хочу.

тот GTK, который не mm ;) гуйня через WINAPI полный караул, это точно, но
виноват в этом не С, а проектировщики WINAPI. в GTK лепить гуйню нормально
вполне.

но что касается эмулей, то в 90% виденных мной эмулей с удобным GUI этот GUI
был самописным.

от: Александр Мельников
кому: All
дата: 15 Jan 2007
Hello, NovaStorm

А может быть заранее продумать о том, чтобы использовать разные GUI? Т.е. GUI
на Qt, KDE, GTk... А то как всегда в линухе, приклады выглядят как черт знает
что. В одной один вид и логика (вилософия) GUI в другой другое.

И что-то не понял, зачем писать свой GUI (я так понял речь идет об очередной
библиотеке), если уже столько всего написано?!

от: Александр Мельников
кому: All
дата: 15 Jan 2007
Hello, jager

Если вдруг решите разрабатывать архитектуру под разные GUI, т.е. GUI в виде
плагина, то могу заняться реализацией GUI на Qt/KDE. Опыт с Qt, дизайном GUI и
вкус (делаю вывод на основании отзывов пользователей) имеется. :-)

от: Алексей Гончаров
кому: All
дата: 15 Jan 2007
Hello, boo_boo

А можно примерчик эмуля с хорошим GUI? А то что-то кроме zsnes ничего
нормального не вспоминается...
А насчёт велосипедов - guichan выглядит вполне прилично, работает как на чистом
SDL, так и с OpenGL.
Если делать звук под "большие" OS, то можно поглядеть и на OpenAL.

от: Станислав Ломакин
кому: All
дата: 15 Jan 2007
Hello, NovaStorm

Nov> А можно примерчик эмуля с хорошим GUI? А то что-то кроме zsnes ничего
Nov> нормального не вспоминается...
Nov> А насчёт велосипедов - guichan выглядит вполне прилично, работает как
Nov> на чистом SDL, так и с OpenGL.
Nov> Если делать звук под "большие" OS, то можно поглядеть и на OpenAL.

ну к примеру старый-добрый z80 гюнтеровский, x128. просто, но функционально.
guichan под c++, а мешать си и плюсы ИМХО крайне не гут. к тому же, все эти
полновесные (с мышами, окнами и тп) гуи хороши в развесистых графических
прогах, к примеру CAD -- там режимов и опций туча, а в руке у юзера и так
мышка, самое оно ей по кнопкам и контролам потыкать. в эмуле же только мешать
будет, проще горячие кнопки, селектор файлов и с клавиатуры же управляемый
редактор конфигурации. дебаггером опять же куда удобней пользоваться с
клавиатуры.
openAL... хм, почему б и нет :)

от: Станислав Ломакин
кому: All
дата: 15 Jan 2007
Hello, jager

jag> А может быть заранее продумать о том, чтобы использовать разные GUI?
jag> Т.е. GUI на Qt, KDE, GTk... А то как всегда в линухе, приклады
jag> выглядят как черт знает что. В одной один вид и логика (вилософия)
jag> GUI в другой другое.

я тут склоняюсь к одной мысли. а именно, в эмуле вообще не делать никаких ГУИ,
кроме селектора файлов и дебаггера, а для редактирования конфигурации как раз
можно написать отдельный редактор на Qt или Gtk. вроде минусов нет у такого
решения, одни плюсы. :rolleyes;

jag>; И что-то не понял, зачем писать свой GUI (я так понял речь идет об
jag> очередной библиотеке), если уже столько всего написано?!

нет, о библиотеке не идет речи :D




Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Похожие статьи:
Анонс - Сейчас немного о том что скоро появится!
Зашутим - несколько тупых приколов.
Советы - Сегодня в номере совет по игре "THE HUNDRED".
Реклама - Реклама и объявления.
Альтернативная "жизнь" - в 1988 году журнал "Юный техник" начал публикацию статей о микрокомпьютере "ЮТ-88".

В этот день...   25 апреля