nedoPC.org

Community for electronics hobbyists, established in 2002
Atom Feed | View unanswered posts | View active topics It is currently 04 Dec 2024 18:48



Reply to topic  [ 44 posts ]  Go to page 1, 2, 3  Next
Браузерный эмулятор РК-совместимых компьютеров на JavaScript 
Author Message
Senior
User avatar

Joined: 17 Jun 2014 04:29
Posts: 164
Location: 93.80.157.217
Reply with quote
ЭМУЛЯТОР 8-БИТНЫХ РЕТРОКОМПЬЮТЕРОВ

https://86rk.ru/emulator/




Эмулируются только РК-совместимые компьютеры.

Список компьютеров:
  • Радио-86РК -- классический "Радио-86РК" из журнала с объёмом ОЗУ 32 килобайта;
  • Апогей БК-01Ц;
  • Микроша/48 -- компьютер "Микроша" с установленным модулем ОЗУ, увеличивающим объем ОЗУ до 48 килобайт;
  • Микроша/ROM -- компьютер "Микроша" с установленным модулем ПЗУ, запуск программ командой G8000;
  • Криста;
  • Радио-86РК/32-Nova -- улучшенный "Радио-86РК" с максимальной совместимостью;
  • Радио-86РК/60-Nova -- улучшенный "Радио-86РК" с объёмом ОЗУ 60 килобайт;
  • Мега-86РК -- мегаулучшенный "Радио-86РК", реализована частичная эмуляция.

Возможности и особенности эмулятора:
  • Поддерживается механизм drag-and-drop для быстрой загрузки и запуска программ;
  • Поддерживается полноэкранный режим;
  • Полноценная поддержка магнитофонных операций, реализован механизм как записи данных в файл, так и чтение из файла
    через магнитофонные функции;
  • Имеется возможность подключать к компьютеру ROM-диск;
  • Поддерживаются две раскладки клавиатуры: QWERTY и JCUKEN;
  • Поддерживаются три типа микропроцессора: i8080, i8085, Z80;
  • Поддерживается изменение тактовой частоты микропроцессора на лету;
  • Поддерживается воспроизведение однобитного звука;
  • Поддерживается воспроизведение звука от генератора меандра;
  • Имеется возможность делать снимки экрана (скриншоты) эмулируемого компьютера;
  • Каталоги программ, для каждого компьютера отдельный каталог;
  • Отладчик.

Все подробности в файле помощи.
------------------------------------------------------------------------------------------------------
 Предыстория
Писать свой эмулятор у меня не было в планах, но всё поменялось 23 марта после этого сообщения -- https://t.me/c/1263100284/24372
Мысль застряла в голове и вот уже пишу скрипт эмуляции процессора 8080, клавиатуры. Всё быстро заработало и через месяц был готов рабочий прототип эмулятора компьютера "Радио-86РК".
Всё остальное время доводил скрипты до ума, думаю, у меня получился неплохой эмулятор с неплохим отладчиком. Благодаря этому отладчику я смог дописать Монитор для своего модернизированного компьютера "Мега-86РК".
На всё у меня ушло примерно 4 месяца.


------------------------------------------------------------------------------------------------------
Обновление от 19.11.2024, версия 1.1.
Добавлено:
1. Появилась возможность создавать собственные конфигурации на базе компьютера Радио-86РК с собственным распределением памяти и собственными прошивками МОНИТОРа и ЗНАКОГЕНЕРАТОРа.
Вызов интерфейса создания пользовательских конфигураций осуществляется через горячую клавишу Alt+C или из меню списка конфигураций в статусной строке, функция [создать].

 интерфейс
Attachment:
File comment: interface
radio-86rk.ru_emulator_.png
radio-86rk.ru_emulator_.png [ 68.57 KiB | Viewed 111 times ]

2. В отладчике для точек останова появилась возможность задавать диапазон адресов и маску адреса. Подробности находятся в файле помощи эмулятора.

_________________
https://radio-86rk.ru
кто я такой, чтобы спорить с самим собой


Last edited by vital72 on 18 Nov 2024 18:55, edited 2 times in total.



02 Aug 2024 02:02
Profile WWW
Devil

Joined: 06 Oct 2006 03:17
Posts: 884
Location: г.Лянтор,Сургутского р-на,ХМАО
Reply with quote
А почему Вы не называете все эти клоны Радио-86 РК одним компьютером? Эмуляции Ориона и Специалиста не предполагается?


02 Aug 2024 10:25
Profile
Senior
User avatar

Joined: 17 Jun 2014 04:29
Posts: 164
Location: 93.80.157.217
Reply with quote
В смысле одним? Компьютеры разные.
В планах эмулировать Спеца и Ориона нет.

_________________
https://radio-86rk.ru
кто я такой, чтобы спорить с самим собой


02 Aug 2024 11:25
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 23447
Location: Silicon Valley
Reply with quote
Монстр :kruto:

_________________
https://mastodon.social/@Shaos :dj:
https://www.youtube.com/@Shaos1973


02 Aug 2024 23:49
Profile WWW
Senior
User avatar

Joined: 17 Jun 2014 04:29
Posts: 164
Location: 93.80.157.217
Reply with quote
Хотелось бы набрать статистику производительности эмулятора на разных компьютерах.
Например, у меня моноблок 13 года, проц Core i5 на 2,7ГГц, Windows 7, в браузере Гугл-Хром работает идеально, проц грузит на 10-15%%, в Фаерфоксе наблюдаются иногда проблемы со звуком, особенно с тем, который формируется ШИМ-ом и нагрузка на проц выше.
У Аликберова вообще непонятный недокомпьютер и у него всё плохо.
Также зависит от выбранного эмулируемого компьютера. В Радио-86РК звук формируется по одному принципу, в Апогее -- по другому. В Радио-86РК активно используется кеш для вывода изображения, когда картинка не меняется -- не происходит пересчёта точек, а в проапгрейженных РК-шках используется расширенный знакогенератор и кеш сбрасывается каждый кадр, т.е. не используется. Хотя, как оказалось, кеш не особо-то и помогает, потому как основную нагрузку создаёт не расчёт точек, а непосредственный вывод на холст, расчёт точек почти не грузит проц. Это особенно заметно, если в конфигурации включить галочку "Пропускать один кадр" -- в этом режиме точки рассчитываются каждый кадр, а вывод производится через кадр.

_________________
https://radio-86rk.ru
кто я такой, чтобы спорить с самим собой


03 Aug 2024 02:09
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 23447
Location: Silicon Valley
Reply with quote
А где-то есть карта памяти для вот этих вот товарищей?
Quote:
Радио-86РК/32-Upgraded -- улучшенный "Радио-86РК" с максимальной совместимостью;
Радио-86РК/60-Upgraded -- улучшенный "Радио-86РК" с объёмом ОЗУ 60 килобайт;

P.S. Про 60 нашёл: viewtopic.php?p=173406#p173406
Code:
* RADIO-86RK 60K:
* 0000-EFFF: RAM
* F000-F0FF: FDC
* F100-F1FF: TIMER
* F200-F2FF: RTC
* F300-F3FF: ???
* F400-F4FF: KEYBOARD
* F500-F5FF: INTERFACE
* F600-F6FF: CRT
* F700-F7FF: DMA
* F800-FFFF: ROM / FONT RAM
в F300-F3FF там получается дырка?

_________________
https://mastodon.social/@Shaos :dj:
https://www.youtube.com/@Shaos1973


07 Sep 2024 18:08
Profile WWW
Senior
User avatar

Joined: 17 Jun 2014 04:29
Posts: 164
Location: 93.80.157.217
Reply with quote
всё верно, по адресам F300-F3FF ничего не подключено.
но и FDC в эмуляторе не реализован.

_________________
https://radio-86rk.ru
кто я такой, чтобы спорить с самим собой


07 Sep 2024 20:06
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 23447
Location: Silicon Valley
Reply with quote
Понятно, спасибо. И дешифрация у тебя в PLD т.е. теоретически может меняться?
А в Радио-86РК/32-Upgraded есть какие-то отличия от "стандарта"?
Как минимум я вижу, что там есть цвет и нестандартный шрифт :)

Attachment:
Screenshot from 2024-09-07 20-35-04.png
Screenshot from 2024-09-07 20-35-04.png [ 36.31 KiB | Viewed 769 times ]

Или вот это как раз оно и есть?
Quote:
* RADIO-86RK 32K:
* 0000-7FFF: RAM
* 8000-8FFF: KEYBOARD
* 9000-9FFF: TIMER
* A000-AFFF: INTERFACE
* B000-BFFF: RTC
* C000-CFFF: CRT
* E000-EFFF: EXT / DMA
* F000-F7FF: FDC
* F800-FFFF: ROM / FONT RAM

_________________
https://mastodon.social/@Shaos :dj:
https://www.youtube.com/@Shaos1973


07 Sep 2024 20:29
Profile WWW
Senior
User avatar

Joined: 17 Jun 2014 04:29
Posts: 164
Location: 93.80.157.217
Reply with quote
про Радио-86РК/Upgraded я когда-нибудь сделаю пост.
в Радио-86РК/32-Upgraded все микросхемы периферии по своим адресам, изменён дешифратор, чтоб получить новые /CS, на новые адреса посажен таймер и RTC, добавлен цвет и 4 переключаемых знакогенератора, для переключения используются разряды PC0 и PC1 порта клавиатуры и коды E5/E4 в экранной памяти для динамического переключения.

есть три версии реализации этого компьютера:
1. всё на мелкой логике, Радио-86РК/32-Upgraded вообще делается на стандартной журнальной плате. версия Радио-86РК/60-Upgraded отличается только наличием ещё одной микросхемы логики К555ЛИ6 (74LS21).
2. Радио-86РК/XXI -- оба варианта Радио-86РК/32 и Радио-86РК/60 на одной плате. здесь для дешифратора уже применяется PLD. кстати на этой же плате собран FDC также на PLD. плата размером 260 на 160 мм, т.е размер журнальной платы с типичным для РК расположением микросхем -- так сделано специально, чтоб соответствовать прародителю.
3. Радио-86РК/x4 -- кроме двух вариантов проапгрейженной РК реализован Апогей и Микроша, вместе с клавиатурой. 3Д-модель этого проекта я уже выкладывал. дешифратор также на PLD.

могу выложить схемы всех проектов, если интересно. схемы я рисую в Оркаде, могу поделиться файлами проекта, хоть Оркад уже фсё, я привык рисовать в нём.

_________________
https://radio-86rk.ru
кто я такой, чтобы спорить с самим собой


Last edited by vital72 on 07 Sep 2024 22:44, edited 1 time in total.



07 Sep 2024 21:13
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 23447
Location: Silicon Valley
Reply with quote
Ну если не жалко, то выкладывай конечно :)

И герберы тоже выкладывай ;)

По гибриду можно в старую тему: viewtopic.php?f=93&t=10581

А по остальным надо подумать - твой Радио-86РК/XXI имеет какое-либо отношение к топику Paguo-86PK - XXI BEK или "все совпадения случайны"? ;)

Ну или давай сюда всё выкладывай, раз уж ты всё это и так уже эмулируешь :)

_________________
https://mastodon.social/@Shaos :dj:
https://www.youtube.com/@Shaos1973


07 Sep 2024 22:39
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 23447
Location: Silicon Valley
Reply with quote
О!

Я научился звук включать на видеороликах через настройки :lol:


Attachments:
Screenshot from 2024-09-07 23-14-56.png
Screenshot from 2024-09-07 23-14-56.png [ 99.47 KiB | Viewed 751 times ]

_________________
https://mastodon.social/@Shaos :dj:
https://www.youtube.com/@Shaos1973
07 Sep 2024 23:17
Profile WWW
Senior
User avatar

Joined: 17 Jun 2014 04:29
Posts: 164
Location: 93.80.157.217
Reply with quote
тут надо отметить, что скорость моей эмуляции отличается от скорости эмулятора Виктора, поэтому звучать будет странно, а трололо можно нормально слушать только если увеличить частоту проца до 2МГц.
было бы интересно это запустить на реальном железе.
----
все совпадения случайны.
приаттачил схемки своих модификаций РК-шки, а также файлы проекта в Оркаде, для тех у кого есть -- там схемок немного по-больше.
файлы герберов плат, а также прошивок PLD не дам :P, но могу дать герберы маленьких платок для апгрейда журнального РК: одна для таймера и RTC, ставится вместо доп. порта, вторая -- загружаемый знакогенератор (FONT RAM), ставится вместо ПЗУ знакогенератора (есть два варианта).


Attachments:
font-ram-board1.jpg
font-ram-board1.jpg [ 167.91 KiB | Viewed 739 times ]
extend-board1.jpg
extend-board1.jpg [ 151.46 KiB | Viewed 739 times ]
RADIO-86RK.zip [1.7 MiB]
Downloaded 34 times

_________________
https://radio-86rk.ru
кто я такой, чтобы спорить с самим собой


Last edited by vital72 on 07 Sep 2024 23:46, edited 1 time in total.

07 Sep 2024 23:31
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 23447
Location: Silicon Valley
Reply with quote
Ну хоть что-то дал - и на том спасибо :idea:

P.S. Кстати а где герберы маленьких платок то? :roll:

_________________
https://mastodon.social/@Shaos :dj:
https://www.youtube.com/@Shaos1973


07 Sep 2024 23:40
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 23447
Location: Silicon Valley
Reply with quote
vital72 wrote:
тут надо отметить, что скорость моей эмуляции отличается от скорости эмулятора Виктора, поэтому звучать будет странно, а трололо можно нормально слушать только если увеличить частоту проца до 2МГц.
Я тут экспериментировал с 2-битным и 3-битным звуком на РК (в старом эмуляторе Виктора много лет назад) - если бы у тебя наряду с опцией вывода звука на мафон (C0) появились бы ещё и экспериментальные вариации как-то 2-битный ковокс (C0/2+C1), 3-битный ковокс (C0/4+C1/2+C2) и до кучи 4-битный ковокс (C0/8+C1/4+C2/2+C3), то я обещаю выложить ромдиски с весёлой и качественной музычкой :lol:

_________________
https://mastodon.social/@Shaos :dj:
https://www.youtube.com/@Shaos1973


09 Sep 2024 18:45
Profile WWW
Senior
User avatar

Joined: 17 Jun 2014 04:29
Posts: 164
Location: 93.80.157.217
Reply with quote
ок.
добавил ковоксов немножко.
герберы выложу в другой теме, когда соберусь с мыслями, да платку одну спаяю, чтоб было, что показывать.

_________________
https://radio-86rk.ru
кто я такой, чтобы спорить с самим собой


11 Sep 2024 02:02
Profile WWW
Display posts from previous:  Sort by  
Reply to topic   [ 44 posts ]  Go to page 1, 2, 3  Next

Who is online

Users browsing this forum: No registered users and 2 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software.