Это смотря чего генерить - NTSC легко (сам пробовал на PIC32), а вот с PAL будут проблемы т.к. он каждую строку крутит на 120 градусов по фазе - чистого программного цвета для PAL я у людей так и не увидел...heavy wrote:Единственное, с чем я не сталкивался - так это с генерацией цвета в ТВ-сигнале. Читал что-то про квадратурную модуляцию, но, насколько понимаю, для цветов Спека хватит просто двигать фазу цветовой несущей, верно ?
Аппаратный эмулятор Радио-86РК на ESP8266
Moderator: Shaos
-
- Admin
- Posts: 24094
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Re: Аппаратный эмулятор Радио-86РК на ESP8266
Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Novelist
- Posts: 32
- Joined: 03 Mar 2018 01:22
Re: Аппаратный эмулятор Радио-86РК на ESP8266
При учете мультисистемности современных телеков, думаю, можно и NTSC генерить.Shaos wrote:Это смотря чего генерить - NTSC легко (сам пробовал на PIC32), а вот с PAL будут проблемы т.к. он каждую строку крутит на 120 градусов по фазе - чистого программного цвета я у людей так и не увидел
К тому же у ESP8266 очень удобный модуль I2S. Ему можно не просто буфера скармливать, а цепочку буферов, при этом указывать в какие моменты он будет мне дергать прерывание, чтобы я готовил следующие буфера. Т.е. можно будет создать цепочку: синхра, цвет, яркость, гашение. При этом буфер для цвета генерить один раз на 8 строк. Синхра и гашение будут вообще одним буфером для всех строк. Это будет неплохо экономить ОЗУ.
-
- Admin
- Posts: 24094
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Re: Аппаратный эмулятор Радио-86РК на ESP8266
Ну я в своё время не смог в России найти правильный (60 Гц) телек NTSC (в 2003 году), а сейчас в штатах (с 2004 года) не могу найти правильный (50 Гц) телек понимающий PAL, так что с видео режимами не всё так просто...
P.S. Тут у меня были только коммодоровский монитор, который сам по себе 50 Гц / 15 кГц но с RGB-входом, и самсунговский мультисистемный видеомагнитофон, генерящий очень хреновую картинку из PAL в NTSC (уже сгорел), ну и китайские мелкие ч/б-телеки с кинескопами, у которых частота кадров подкручивалась сзади, но это не считается, т.к. они не цветные...
P.S. Тут у меня были только коммодоровский монитор, который сам по себе 50 Гц / 15 кГц но с RGB-входом, и самсунговский мультисистемный видеомагнитофон, генерящий очень хреновую картинку из PAL в NTSC (уже сгорел), ну и китайские мелкие ч/б-телеки с кинескопами, у которых частота кадров подкручивалась сзади, но это не считается, т.к. они не цветные...
Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Devil
- Posts: 716
- Joined: 30 Nov 2013 11:08
- Location: WWW
Re: Аппаратный эмулятор Радио-86РК на ESP8266
А не слишком ли затруднит чуть прдробнее рассказать о подходах к созданию программных эмуляторов железа ?heavy wrote:Я обычно начинаю с эмуляции железа.
Я, при необходимости, функциональность одного железа другим (HDL) реализовываю, но периодически сталкиваюсь с тем, что вроде бы проще/логичнее было бы что-то программно сделать...
-
- Novelist
- Posts: 32
- Joined: 03 Mar 2018 01:22
Re: Аппаратный эмулятор Радио-86РК на ESP8266
Записал небольшой видосик. Правда на мелком телеке (3.5"), на котором отлаживаюсь на столе.
-
- Novelist
- Posts: 32
- Joined: 03 Mar 2018 01:22
Re: Аппаратный эмулятор Радио-86РК на ESP8266
Честно говоря, не знаю с чего и начать. В принципе эмуляция делается обычно макро-блоками. Я не делаю точной эмуляции микросхемы. Например, есть ИК57, мне от нее нужно только поймать команду на установку адреса для передачи. Просто обрабатываю запись в регистры ИК57 и когда мне приходят все данные команды, перенастраиваю свой видеоадаптер.newold86 wrote:А не слишком ли затруднит чуть прдробнее рассказать о подходах к созданию программных эмуляторов железа ?heavy wrote:Я обычно начинаю с эмуляции железа.
Я, при необходимости, функциональность одного железа другим (HDL) реализовываю, но периодически сталкиваюсь с тем, что вроде бы проще/логичнее было бы что-то программно сделать...
Мой первый эмулятор был для PIC16F84 как только они появились. У Микрочипа тогда был только mpasm, я же тогда сделал эмулятор под дос еще на паскале. Много чего тогда на этом эмуляторе отладил. Самое удобное в таких самодельных эмуляторах то, что можно доделать эмуляцию железа, чего обычно готовые эмуляторы не делают.
В общем по эмуляции лучше задавать вопросы, что просто так написать - хз.
-
- Devil
- Posts: 716
- Joined: 30 Nov 2013 11:08
- Location: WWW
Re: Аппаратный эмулятор Радио-86РК на ESP8266
Да как раз в этом и проблема - чтобы задавать нормальные вопросы, нужно предмет более-менее понимать... Какой-то замкнутый круг получается...heavy wrote:В общем по эмуляции лучше задавать вопросы, что просто так написать - хз.
Например, каким образом обеспечивается параллельная работа разных частей проекта ? Есть что-то типа глобального тактового сигнала ?
-
- Admin
- Posts: 24094
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Re: Аппаратный эмулятор Радио-86РК на ESP8266
Эмуляция микрокомпьютеров как я понимаю пляшет от системы команд этого микрокомпьютера (как минимум я плясал всегда оттуда)
Есть более "запущенные" варианты, где, например, надо параллельно генерить звук - для этого, например, смотрим исходники эмуля emu80
Есть более "запущенные" варианты, где, например, надо параллельно генерить звук - для этого, например, смотрим исходники эмуля emu80
Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Admin
- Posts: 24094
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Re: Аппаратный эмулятор Радио-86РК на ESP8266
Тут люди уже и PC-XT на этой железяке запустили!
https://www.open-electronics.org/esp8266-pc-xt-emulator-with-cga-video-output/

https://www.open-electronics.org/esp8266-pc-xt-emulator-with-cga-video-output/
Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Novelist
- Posts: 32
- Joined: 03 Mar 2018 01:22
Re: Аппаратный эмулятор Радио-86РК на ESP8266
Делаю клавиатуру, нужна помощь по ВВ55. Похоже, я что-то неправильно понимаю.
ВВ55 переводится в режим 0, т.е. просто 3 порта A,B,C.
Главный вопрос относительно светодиода РУС/ЛАТ. Монитор постоянно пишет в порт C значение 0, потом пишет в управляющий регистр 0x06 (ЛАТ) или 0x07 (РУС). Что соответствует сбросу и установке бита 3 регистра C. Т.е. в режиме "РУС" на светодиод идет меандр ? Или я как-то не так понял принцип работы порта C в ВВ55 ?
ВВ55 переводится в режим 0, т.е. просто 3 порта A,B,C.
Главный вопрос относительно светодиода РУС/ЛАТ. Монитор постоянно пишет в порт C значение 0, потом пишет в управляющий регистр 0x06 (ЛАТ) или 0x07 (РУС). Что соответствует сбросу и установке бита 3 регистра C. Т.е. в режиме "РУС" на светодиод идет меандр ? Или я как-то не так понял принцип работы порта C в ВВ55 ?
-
- Devil
- Posts: 716
- Joined: 30 Nov 2013 11:08
- Location: WWW
Re: Аппаратный эмулятор Радио-86РК на ESP8266
Кстати, а почему тема называется «аппаратный» эмулятор ?
-
- Novelist
- Posts: 32
- Joined: 03 Mar 2018 01:22
Re: Аппаратный эмулятор Радио-86РК на ESP8266
А как его назвать, если он сам-в-себе, нужен только телек и клава ? Ведь РК86 на ПЛИС называете аппаратным эмулятором ? Чем тот же VHDL от Си отличается по сути дела ?newold86 wrote:Кстати, а почему тема называется «аппаратный» эмулятор ?
-
- Novelist
- Posts: 32
- Joined: 03 Mar 2018 01:22
Re: Аппаратный эмулятор Радио-86РК на ESP8266
У меня тут новости. Позанимался сегодня пару часом эмулятором.
Сделал нормальную поддержку PS/2 клавы. При этом почкался с перекодированием раскладок. Т.ч. можно на РК86 писать так же, как нарисовано на кнопках клавы. По-моему удобно, хотя кому-то может показаться неправильным.
Все выложено на гитхабе. Завтра постараюсь еще видосик запилить на нормальном телеке и чтобы все было видно.
Сделал нормальную поддержку PS/2 клавы. При этом почкался с перекодированием раскладок. Т.ч. можно на РК86 писать так же, как нарисовано на кнопках клавы. По-моему удобно, хотя кому-то может показаться неправильным.
Все выложено на гитхабе. Завтра постараюсь еще видосик запилить на нормальном телеке и чтобы все было видно.
-
- Devil
- Posts: 716
- Joined: 30 Nov 2013 11:08
- Location: WWW
Re: Аппаратный эмулятор Радио-86РК на ESP8266
Это шутка такая ?heavy wrote: Чем тот же VHDL от Си отличается по сути дела ?
-
- Admin
- Posts: 24094
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Re: Аппаратный эмулятор Радио-86РК на ESP8266
Ну по большому счёту VHDL - это язык программирования для эмуляции железа на сети LUT-ов...
Я тут за главного - если что шлите мыло на me собака shaos точка net