Вход

Просмотр полной версии : Симуляция "ЛИКа" (модификации Специалиста)



apofig
02.05.2018, 19:27
Приветствую Коллеги!

Я начинал свой путь с модификации Специалиста - Лик, разработанного Черновицким заводом "Электронмаш" в Украине.

На данный момент у меня есть желание систематизировать все, что накоплено по этому чудному радиоконструктору дабы оно находилось в одном месте. Буду обновлять этот пост новыми новостями.


Мануал о том, как быстро запустить любую игру (http://www.apofig.com/2010/02/blog-post_28.html) с помощью эмулятора Виктора Пыхонина (http://emu80.org).
Архив программ для ПК "Лик" (http://emu80.org/files/lik_spc1.zip). Прислан А.Болтаевским. Инструкции по запуску в эмуляторе Специалиста в самом архиве. Взято тут (http://emu80.org/dl.html)
Прошивки ПЗУ для "Специалиста" (http://emu80.org/files/roms_1.zip) (9(!) разных Мониторов) в том числе и "ЛИК". Взято тут (http://emu80.org/dl.html)
Архивы игровых программ для "Специалиста" (они так же подходят для ЛИКа) раз (http://emu80.org/files/gs_1.zip), два (http://emu80.org/files/gs_2.zip), три (http://emu80.org/files/gs_3.zip), четыре (http://emu80.org/files/gs_4.zip). Взято тут (http://emu80.org/dl.html)
Руководство пользователя ПК "Лик" (http://emu80.org/dev/dev_lk.html) взято так же у Виктора Пыхонина
Подборка программ для ЛИКа (http://www.pk-info.ru/aboutindex.html) от Александра Болтаевского
Описание на Википедии (https://ru.wikipedia.org/wiki/Лик_(компьютер))
Краткий обзор Лика со схемой, руководством и фотографиями (http://www.spetsialist-mx.ru/index16.html)
Еще одна подборка программ и игр для ЛИКа: раз (http://www.spetsialist-mx.ru/Soft/soft_lik_rks.rar), два (http://www.spetsialist-mx.ru/Games/games_lik_rks.rar), три (http://www.spetsialist-mx.ru/Soft/others_lik_rks.rar) взятые тут (http://www.spetsialist-mx.ru/index6.html)
Радиоконструктор "Бытовое электронно-вычислительное устройство ЛИК". Руководство по эксплуатации (http://ebooks2012.narod.ru/radiokonstruktor_bytovoe_ehlektronno-vychislitelno.djvu) ДАЯ 4.075.005 РЭ содержащее схему в хорошем разрешении
Схема ЛИК (https://www.dropbox.com/s/ye47ksqbu6pxone/%D0%A1%D1%85%D0%B5%D0%BC%D0%B0%20%D0%9B%D0%98%D0%9 A.png?dl=0) из этого руководства, отдельно в максимально найденном разрешении
Описание применения. Руководство оператора. Руководство программиста. Скан-черновик лежит тут (https://www.dropbox.com/sh/u2gqivpcgspaq2j/AADKgie_2J0k94qY1VJn3LySa/%D1%80%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D 1%82%D0%B2%D0%BE/Scan?dl=0)
Фотографии в хорошем разрешении (спасибо xlat) лежат тут (https://www.dropbox.com/sh/u2gqivpcgspaq2j/AAAKAaxu6nZimTq4wTzPHzYYa/xlat.livejournal.com/Фото?dl=0)
DipTrace (http://cxem.net/software/diptrace.php)схема. Я уперся в ограничение на некоммерческую версию в 2000 контактов, а потому она завершена всего на 98% - не подключены 3 ПЗУ'шки и логика в части контроллера ввода-вывода. Тем не менее схема будет лежать и обновляться тут (https://www.dropbox.com/sh/u2gqivpcgspaq2j/AACfC0N2DOA54clVjJ3dSYija/apofig.com/%D1%81%D1%85%D0%B5%D0%BC%D0%B0?dl=0&preview=%D0%9B%D0%98%D0%9A.dch), а вот и компоненты используемые в проекте (https://www.dropbox.com/sh/u2gqivpcgspaq2j/AACfC0N2DOA54clVjJ3dSYija/apofig.com/%D1%81%D1%85%D0%B5%D0%BC%D0%B0?dl=0&preview=%D0%9B%D0%98%D0%9A.eli).
Некоторые исправления ошибок (https://www.dropbox.com/sh/u2gqivpcgspaq2j/AABx44qbxFKwIrqYGpx1Xcmta/apofig.com?dl=0&preview=%D0%A1%D1%85%D0%B5%D0%BC%D0%B0+%D0%9B%D0%9 8%D0%9A+-+%D0%B8%D1%81%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D0%B5% D0%BD%D0%B8%D1%8F.png), выявленных в ходе перегона схемы в DipTrace.
Так же нашел чудную фришную программу Logisim (http://www.cburch.com/logisim/ru/index.html) в которой можно изучать логику работы различных схем. Напиcана она на java и запускается одним кликом по jar после установки Java (JDK или JRE) последней версии (http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html). Я только начал в ней глубже исследовать схему - и она будет лежать и обновляться тут (https://www.dropbox.com/sh/u2gqivpcgspaq2j/AAAi-vhS9uE2KwTOwtxX1b61a/apofig.com/%D1%81%D1%85%D0%B5%D0%BC%D0%B0/logisim?dl=0). В этой же папке есть пару скриншотов для наглядности и сама программа.
Подборка всего, что было найдено (https://www.dropbox.com/sh/u2gqivpcgspaq2j/AADmkdZB502RCtr6KLxpUTlDa?dl=0) за 2 бессонные ночи в одном месте (постоянно обновляется) на случай креша тех или иных сайтов. Жаль, но многие сайты уже не работают - их можно найти только в вебархиве и то не полностью, потому я позволил себе сохранить то что касается ЛИКа в отдельном месте.


Из дальнейших планов:

Найти по сарафану в Черновцах образец ЛИКа и сделать реверсинждиниринг по печатной платы - инфы о ней кроме как схемы и расположения элементов и 2-3 фоток в сети я не нашел, и то пришлось вложить в это 1 ночь.
Так же стоит устранить неточности в документации, которые я еще в школьном возрасте выявил и предложить оцифрованный и более современный формат.
После хочу собрать этот компьютер собственноручно (радиодетали уже заказаны и в пути).
Следом хочу реализовать программатор и сделать копии ПЗУшек, которые у меня остались с тем, чтобы навести порядок в этой области (ROM для эмуляторов есть, но не факт что оригинальные).
Так же игрушки и программы - все будут собраны в одном месте.
Хочу так же реанимировать все, что у нас сохранилось на кассетах (я их хранил последние 15-20 лет).
Есть в тетрадках некоторые заготовки, которыми могу и хочу поделиться. Мелочь, но тоже пригодится.
Так же у меня начат эмулятор на java его хочется продолжать и закончить просто потому что "можется".
Что всплывет по ходу дела так же скорее всего захочется реализовать.

Конечно же время на это не океан, но это проект для души, а потому он будет регулярно пополняться самым ценным активом.

Надеюсь с пользой

Alex_B
12.05.2018, 04:56
Очень хорошая тема, я тоже начинал с ПК "ЛИК" :)

На всякий случай, оригинальное ПЗУ от Лик-04 на 12Кб во вложении, и там же немного текстовой документации из "руководства оператора" и "описания применения".


Хочу так же реанимировать все, что у нас сохранилось на кассетах (я их хранил последние 15-20 лет).
Думаю с радостью отзеркалим архив Ваших кассет на своих сайтах, если Вы будете непротив.

Ищу документацию от ЛИК в сканах:
Руководство по эксплуатации (гуляющий djvu в сети плохого качества);
Руководство оператора;
Описание применения;
Руководство программиста.

Хотелось бы оригинальную кассету в виде WAV (тоже давно утеряна).

А также книги-самоучители по Бейсику, Ассемблеру для ПК Специалист или Лик. Выпускались такие книжки кооперативами, но пока не встречалось на просторах интернета.

fifan
12.05.2018, 06:35
Если наберётся достаточно много информацию о Лике, то я посвящу ему целую страницу на сайте, а не пару фотографий на странице "другие клоны" (http://www.spetsialist-mx.ru/index16.html).

xlat
13.05.2018, 15:39
Есть фотки с "Ликом" из моей коллекции - может, чем-нибудь будут полезны: https://www.flickr.com/photos/xlat8086/albums/72157693228655201

fifan
13.05.2018, 16:00
Есть фотки с "Ликом" из моей коллекции - может, чем-нибудь будут полезны
Но: Владелец отключил загрузку своих фотографий. Пришлось изгалится, чтоб загрузить две фотки.

xlat
13.05.2018, 16:26
Но: Владелец отключил загрузку своих фотографий. Пришлось изгалится, чтоб загрузить две фотки.
Упс. Извиняюсь. Я как-то привыкла к закрытым теперь яндекс.фоткам, где оригиналы были всем доступны, и на Flickr'e не проверила, как оно снаружи :)
Тогда так: эти же фотки есть у меня в ЖЖ, смотреть не так удобно, но оттуда их вытянуть проще:
https://xlat.livejournal.com/625691.html
https://xlat.livejournal.com/626093.html

apofig
13.05.2018, 16:53
Коллеги приветствую! Спасибо за ваши наработки (xlat за качественные фото, Alex_B за пак с ROM'ами). Добавил их так же в общую кладовую (тут (https://www.dropbox.com/sh/u2gqivpcgspaq2j/AABBWEorl5QTruQ0pek1QIWsa/Alex_B?dl=0) и тут (https://www.dropbox.com/sh/u2gqivpcgspaq2j/AAAKAaxu6nZimTq4wTzPHzYYa/xlat.livejournal.com/%D0%A4%D0%BE%D1%82%D0%BE?dl=0)).


Думаю с радостью отзеркалим архив Ваших кассет на своих сайтах, если Вы будете не против.
Конечно же не против. Как буду на родине в Черновцах, заберу кассеты с собой и дома оцифрую.


Ищу документацию от ЛИК в сканах:
Два руководства (https://www.dropbox.com/sh/u2gqivpcgspaq2j/AADjdBdqN3aYpSprsU-jul3xa/%D1%80%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D 1%82%D0%B2%D0%BE?dl=0) есть в моем зеркале. Других я не встречал. С детства помню только два - один со схемой, другой для пользователя.

Из новостей с моей стороны появились такие артефакты:

DipTrace (http://cxem.net/software/diptrace.php)схема. Я уперся в ограничение на некоммерческую версию в 2000 контактов, а потому она завершена всего на 98% - не подключены 3 ПЗУ'шки и логика в части контроллера ввода-вывода. Тем не менее схема будет лежать и обновляться тут (https://www.dropbox.com/sh/u2gqivpcgspaq2j/AACfC0N2DOA54clVjJ3dSYija/apofig.com/%D1%81%D1%85%D0%B5%D0%BC%D0%B0?dl=0&preview=%D0%9B%D0%98%D0%9A.dch), а вот и компоненты используемые в проекте (https://www.dropbox.com/sh/u2gqivpcgspaq2j/AACfC0N2DOA54clVjJ3dSYija/apofig.com/%D1%81%D1%85%D0%B5%D0%BC%D0%B0?dl=0&preview=%D0%9B%D0%98%D0%9A.eli).
Некоторые исправления ошибок (https://www.dropbox.com/sh/u2gqivpcgspaq2j/AABx44qbxFKwIrqYGpx1Xcmta/apofig.com?dl=0&preview=%D0%A1%D1%85%D0%B5%D0%BC%D0%B0+%D0%9B%D0%9 8%D0%9A+-+%D0%B8%D1%81%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D0%B5% D0%BD%D0%B8%D1%8F.png), выявленных в ходе перегона схемы в DipTrace.
Так же нашел чудную фришную программу Logisim (http://www.cburch.com/logisim/ru/index.html) в которой можно изучать логику работы различных схем. Напиcана она на java и запускается одним кликом по jar после установки Java (JDK или JRE) последней версии (http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html). Я только начал в ней глубже исследовать схему - и она будет лежать и обновляться тут (https://www.dropbox.com/sh/u2gqivpcgspaq2j/AAAi-vhS9uE2KwTOwtxX1b61a/apofig.com/%D1%81%D1%85%D0%B5%D0%BC%D0%B0/logisim?dl=0). В этой же папке есть пару скриншотов для наглядности и сама программа.


Внимание, так как проект на стадии разработки, я уверен что на каждой схеме (и моих исправлениях) накоплены ошибки, которые планируется в ходе "реверсинжиниринга" исправить. Это значит, что наработки вы используете на свой страх и риск - "как есть", без каких-либо гарантий.

Что касается сборки. Микросхемы уже приехали. Приобрел 4 комплекта прозапас.
Ищу кто бы мог продать/подарить/позаимствовать ЛИК дабы я мог аккуратно изучить печатную плату и дорожки. Было бы минимально достаточно, если бы кто-то из числа счастливых владельцев ЛИКа сфотографировал(а) бы мне обратную сторону платы и переднюю сторону платы (эту сторону с максимально различных ракурсов). Цель - максимально подглядеть расположение дорожек. А если у кого-то есть не паянная плата - отсканировать ее было бы пределом мечтания.

Из следующих шагов:

Закончить схему в DipTrace
Развести дорожки в DipTrace максимально приближенные к оригиналу
Продолжать исследовать логику работы в Logisim
Максимально отдебажить проект, выявить очепятки и попробовать собрать первую версию

Спасибо за интерес к теме.
Чего-нибудь неожиданно-приятного нам.

P/S/ Для любителей игры Клад, в нем есть одна хитрость. Если запускать программу с J0000 с последующим ресетом и далее с J4567 то можно будет сразу стартовать игру со следующего уровня, на котором играли в прошлый запуск. Reset Монитора и очередная команда J4567 запустит уже очередной уровень. Подобрано "патологоанатомом" школьником опытным путем с мыслью "а что если..." в ходе очередного "там там тадам там тадам тадам тадааам"...

fifan
14.05.2018, 07:32
Если запускать программу не с J0000 а с J3456 то можно будет сразу стартовать игру со следующего уровня, на котором играли в прошлый запуск.
Какой ещё прошлый запуск? Вы до сих пор пользуетесь магнитофоном?

apofig
14.05.2018, 11:47
d
P/S/ Для любителей игры Клад, в нем есть одна хитрость. Если запускать программу не с J0000 а с J4567 то можно будет сразу стартовать игру со следующего уровня, на котором играли в прошлый запуск. Reset Монитора и очередная команда J4567 запустит уже очередной уровень. Подобрано "патологоанатомом" школьником опытным путем с мыслью "а что если..." в ходе очередного "там там тадам там тадам тадам тадааам"...


Какой ещё прошлый запуск? Вы до сих пор пользуетесь магнитофоном?
Steps to reproduce:

Reset
Загрузить игру в память любым способом (Alt-F3 или I= в http://emu80.org эмуляторе)
J <ВК>
Видим заставку
Reset
J4567
выбираем скорость игры
загрузился уровень 1й - играем
если надоело, Reset
J4567
выбираем скорость игры
загрузился уровень 2й - играем
если надоело, Reset
goto 7)


То же на видео

https://www.youtube.com/watch?v=69Mim4XHRHg

Нет, магнитофоном не пользуюсь - пользуюсь пока эмулятором http://emu80.org


Ищу документацию от ЛИК в сканах:
1) Руководство оператора;
2) Описание применения;
3) Руководство программиста.

Так же вчера нашел у себя руководство программиста, оператора. У меня они собраны в одну книжечку. Отсканированный черновик лежит тут (https://www.dropbox.com/sh/u2gqivpcgspaq2j/AADKgie_2J0k94qY1VJn3LySa/%D1%80%D1%83%D0%BA%D0%BE%D0%B2%D0%BE%D0%B4%D1%81%D 1%82%D0%B2%D0%BE/Scan?dl=0).

Alex_B
14.05.2018, 21:24
apofig, спасибо, собственно это оно. Забавно, в первых версиях было ПО исключительно для Лик, а в последующих добавили софт от Специалиста и монитор от Специалиста сверху (оказывается я в молодости был не оригинален :)).
Вообщем это вторая версия мануала, но то - что давно искалось там есть. Буду переводить в текст.

По игре "Клад" так и не получилось воспроизвести этот хак, видимо какая то особая версия была.

p.s.: Dropbox позволяет скачивать не более 17 файлов в течении небольшого времени, потом скачивание блокируется. Рекомендую файлы хранить в архивах, ввиду ограничений на скачивание в Dropbox.

Titus
15.05.2018, 01:28
Вроде бы у меня в эмуляторе Специалиста запускались все программы от Лик'а. Тогда чем же он принципиально отличается?

apofig
16.05.2018, 14:09
Коллеги, прошу простить за дезинформацию. Запускать надо не J3456 а J4567. Вот на видео записал. В прошлом сообщении исправил steps to reproduce.

https://www.youtube.com/watch?v=69Mim4XHRHg

fifan
16.05.2018, 14:53
Я нашёл на своём сайте место под "новый" клон. Скоро уберу ЛИК из раздела Другие. Также отдельными страницами могут похвастать другие клоны Специалиста, а именно Экспресс, М, МХ, Сябр, Линёвский, УЦА. Все эти клоны имеют больше информации, чем помещается в две строки текста.

Titus
16.05.2018, 16:56
Кто нибудь знает, как сложилась судьба Волкова, автора 'Специалист'а? Жив ли он сейчас?

fifan
16.05.2018, 18:56
Кто нибудь знает, как сложилась судьба Волкова, автора 'Специалист'а? Жив ли он сейчас?
Вроде ещё жив. Здесь (http://www.nedopc.org/forum/viewtopic.php?f=90&t=9672&start=60) о нём его знакомый писал и фотографировал его первый компьютер.

Alex_B
30.05.2018, 00:00
Мануал на Лик, который предоставил apofig в виде сканов (за что ему ещё раз спасибо), перекинул в текст и выложил здесь:

http://pk-info.ru/arhiv/lik/lik_manual.zip - в архиве .docx и .pdf (2 Mb)
http://pk-info.ru/arhiv/lik/lik_manual_original.djvu - оригинальный мануал пожатый в djvu (9 Mb)

apofig
14.01.2022, 23:28
Моя мечта сбылась. Мой (уже) Лик начал свое путешествие ко мне домой. А значит совсем скоро будут обновления в этой ветке. Спасибо всем, кто помог этому случиться.

К этому времени у меня есть частично отрисованная плата. Но так как по фотографии это делать сильно неудобно, да и косяков много - заканчивать буду уже с живой материнкой в руках.

apofig
18.01.2022, 07:35
Вчера вечером в поисках новых материалов по ЛИКу нашел крутые наработки по эмулятору на java (http://www.nedopc.org/forum/viewtopic.php?f=90&t=9475).

Спасибо Lavr за публикацию исходников.

Базируясь на них перевел проект с Ant+Applet на Jetty+Maven+JNLP+Applet.
Запустил на нем ROM Лика и игру Клад (не без глюков).
Описал мануал по запуску (https://github.com/codenjoyme/8080-emulator#%D0%B7%D0%B0%D0%BF%D1%83%D1%81%D0%BA-%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D 0%B8%D1%8F).
Опубликовал проект на GitHub (https://github.com/codenjoyme/8080-emulator).
И поделился "наполеоновскими планами" (https://github.com/codenjoyme/8080-emulator#%D0%BF%D0%BB%D0%B0%D0%BD-%D0%B4%D0%B5%D0%B9%D1%81%D1%82%D0%B2%D0%B8%D0%B9).

Спасибо всем, кто повлиял на это (https://github.com/codenjoyme/8080-emulator#%D0%B1%D0%BB%D0%B0%D0%B3%D0%BE%D0%B4%D0%B 0%D1%80%D0%BD%D0%BE%D1%81%D1%82%D0%B8).

Продолжение следует.

apofig
21.01.2022, 08:27
Эксперименты с эмулятором (https://github.com/codenjoyme/8080-emulator/tree/a7b480fd1b963e61a11126813199c8566e1dfb3b) продолжаются. На сегодня он умеет:

Загружать ROM и RKS из файла (пока что в ручном режиме в сырцах true на false надо сменить).
При этом можно загружать ПЗУ Лика или Специалиста.
Игра Клад уже работает без ошибков. Бейсик все еще глючит.
Появился программный ассемблер/дизассемблер. Он сейчас еще работает не полноценно, т.к. не все команды реализованы (пока что 30% готовности).
Появились юнит тесты - тестирующие команды процессора.
Появились интеграционные тесты, тестирующие что будет в результате выполнения 10M тиков на определенной ROM/игре c CPU/экраном (в формате png).
Постепенно переношу полезные материалы (мануалы, игры) в ресурсы проекта. Этот репозиторий планируется как единое место для всех наработок и контента.
Код сильно отрефакторен. Удален старый код ZX Spectrum, расширенные команды Z80, фичи, которые пока что не сильно нужны (после переноса на новый модерновый UI фреймворк часть из них верну). Сильно упрощал везде, где только можно. Разделил все GodObjects на компоненты.

HardWareMan
21.01.2022, 10:37
Код для эмулирования z80 не подходит для эмуляции i8080. Даже если тупо убрать все расширенные команды. Вот поэтому барсик и глючит.

apofig
21.01.2022, 18:01
Код для эмулирования z80 не подходит для эмуляции i8080. Даже если тупо убрать все расширенные команды. Вот поэтому барсик и глючит.

Спасибо. Вы правы, обратной совместимости у них нет, потому я переношу команда за командой, с юнит тестами. Все несоответствия устраняю. Пока что готовность 30%. Критерием успеха есть рабочий Бейсик. Игра Клад уже заработала.

Хотел спросить, есть ли какая-то тест-программа для i8080 которая использует все корнер кейзы всех команд, чтобы прогнав ее как тест я могу понять все ли я сделал правильно, или где-то не отловил багу?

HardWareMan
21.01.2022, 18:06
Да, есть. Экзорцист. Он есть на этом форуме, прямо в это разделе, рассчитан на Специалист. Мы на нём верилог модель гоняли.

apofig
29.01.2022, 06:25
Обновления в эмуляторе (https://github.com/codenjoyme/8080-emulator/tree/d05dfe34290c306f6a515c425625b14ce2e54839):

Все команды мигрированы из старого процедурного стиля в новый OOP.
Попутно устранены проблемы с флагом P и командой DAA (в этом как оказалось крылись отличия Z80 и i8080).
Спасибо Автору статьи про различия i8080 и Z80 (https://webhamster.ru/mytetrashare/index/mtb0/1637215098k115beckd4).
Спасибо Viktor Pykhonin за исходники (https://github.com/vpyk/emu80v4/blob/master/src/Cpu8080.cpp) и emu80-дебаггер они очень помогли разобраться в отличиях.
Спасибо Авторам тестов команд i8080 (https://github.com/begoon/i8080-core) и Begoon за то, что выложил их на своем GitHub вместе с исходниками.
Спасибо Svofski за чудный assembler редактор (https://svofski.github.io/pretty-8080-assembler/) - благодаря ему я смог адаптировать нерабочие тесты к работе на ЛИКе. Речь про test.asm (https://github.com/codenjoyme/8080-emulator/blob/d05dfe34290c306f6a515c425625b14ce2e54839/src/main/resources/test/test.asm) и test.rks (https://github.com/codenjoyme/8080-emulator/blob/d05dfe34290c306f6a515c425625b14ce2e54839/src/main/resources/test/test.rks).
Итого игра Клад работает до самого последнего призового уровня (раньше не работала), а так же бейсик завелся и предварительно работает.
Уверен есть еще много косяков связанных с флагами. У меня в очереди жду еще три обширных теста команд i8080. В ближайшем будущем поправим. Тесты лежат тут (https://github.com/codenjoyme/8080-emulator/tree/d05dfe34290c306f6a515c425625b14ce2e54839/src/main/resources/test).
Так как разработка ведется через тесты - улучшен фреймворк для написания тестов. Можно ассемблировать-дизассемблировать команды. Можно останаваливать cpu по какому-то указанному в тесте критерию. Можно трейсить выполнение программы. Можно запускать тесты с записанными сценариями нажатых клавиш.
Исправлена раскладка клавиатуры. Были ошибки.
Для удобства есть возможность переключаться QWERTY/JCUKENG по переключению раскладки на хостовой машине, или по временно зажатому Ctrl.
Модификаторы Ctrl, Alt, Shift (и их комбинации) так же обрабатываются - на некоторые клавиши 2, 4, 6, 7 (и другие) с модификаторами "повешаны" дополнительные символы, которые ждешь глядя на современную калавиатуру.
По хоткеям NUM_PAD(* + -) можно влиять на скорость эмуляции: максимально ускорять, ускорять на 15% и замедлять на 15% соответственно.
При работе эмулятора в корне создается файлик keys.rec в нем записано когда (тик) какая клавиша была нажата и когда отпущена. Это позволяет записать вручную сценарий, а потом детерминированно его воспроизводить в тестах или как replay.
По хоткею NUM_PAD(.) можно загружать любой такой replay.
По хоткею NUM_PAD(/) можно загружать rks/bin/com файлы. При этом эмулятор заботливо вобьет в мониторе JXXYY и нажмет Enter.
Выпилены старые Апплеты, запуск приложения заменен на Swing.
Добавлены скрипты build/build-client.sh для запуска десктопной версии, и build/build-server.sh чтобы поднять jetty и раздавать это же приложение в сети.
Добавлены найденные на просторах сети игры ЛИКа и тексты.


Продолжение следует.

apofig
29.01.2022, 15:31
Коллеги приветствую,
Спасибо за позитивную критику. Учту ваши пожелания.

Как заявлял в начале поста хочу собрать все, что у меня есть по ЛИКу воедино. Реверсинжиниринг платы остановился пару лет назад на том, что реализовывал дороги по картинкам найденным из сети, с одной стороны на 100% с другой на 70% (очень не просто по фотографиям прозванивать дороги под микросхемами, а схема содержит множество ошибок и полагаться на нее не стоит. И только пару недель назад у меня получилось приобрести ЛИК с помощью Форума. Сейчас прорабатываю его доставку ко мне. Там начнется новая волна железных квестов. А тем временем...

Недавно нашел на просторах сети эмулятор java. Моей радости небыло предела. Так как в этом языке чувствую себя хорошо посчитал, что этим шансом надо воспользоваться. Этот эмулятор не планируется для эмуляции других платформ, кроме как Лик и немного Специалист. Этот инструмент мне нужен для работы с ассемблером (компиляция/дизассемблирование), отладки игр и rom'ов. Инструменты, уже существующие на просторах сети имеют каждый свою специализацию, и не всегда легки в расширении (хоть часто и опенсорсные) по нескольким причинам: 1) платформа на которой разработан инструмент часто не близка для для меня, а потому эффективность будет низкой. 2) Автору инструмента стратегически может не пригодится мой PR и есть риск, что мы не договоримся. 3) Порой случается так, что к Автору месяцами пробиться не получается и ты просто делаешь форк и потом спумтя время вы скорее всего уже не и смержитесь...

Если своими новостями о проделанной в данный момент работе нарушаю правила форума - посыпаю голову пеплом (не подозрвал, что это проблема) и буду меньше постить новостей про эмулятор. Просто сейчас нахожусь в этой фазе. Но так или иначе - все новости есть на Github. Ссылки с этой ветки так же присутствуют - любой желающий сможет в будущем "взять след", а именно для него эти публикации, для того самого старателя, который как я сегодня поднимит наработки спустя 5-10 лет и сделает свой виток улучшений. Этим и вдохновит следующее поколение.

Почему/Зачем? Потому что может. Ценности во всем, что делаю (эмулятор, реверсинжиниринг) нет иной, кроме как инженерно-познавательной. Причина, по которой выбан Лик - мое детство и ностальгия. Есть много отличных компьютеров созданных в то время, но внутренний отклик у меня есть именно при работе с Лик'ом. Ценность публикаций - в следах.

Но все решает модератор. Если мои доводы не убедительны, прошу помочь с решением - что может быть в этой теме, а чему тут не место? Если нельзя публиковать тут все наработки, подскажите пожалуйста, как отдельно для Лик'а создать группу тем: игры+программы и их код; отдельно эмулятор как инструмент познания программ; отдельно аппаратная часть (новости по которой продолжатся сразу, как я получу компьютер в руки); отдельно еще что-то связанное с ЛИКом и железом/софтом который он использует или который нужен мне для его познания? Хотелось бы иметь все о Лик'е вместе, с этой целью открыл эту тему и начал ее вести.

Спасибо Авторам Форума за их время, наработки и публикации. Без этого всего не смог бы получить все те чудные квесты, которыми периодически (запоями) наполняются мои будни. Это ценю. Очень надеюсь мои труды позволят в будущем ощутить те же эмоции кому-то еще.

fifan
03.02.2022, 16:36
Переименовал тему и удалил спам. Автор пусть продолжает.

lexarr
20.02.2022, 18:40
Может пригодится: эмуляция процессора i80 (https://zx-pk.ru/attachment.php?attachmentid=81952) (проходит все тесты) и набор тестов (https://zx-pk.ru/attachment.php?attachmentid=77042) для «Специалиста».
77042

fifan
20.02.2022, 19:50
Может пригодится: эмуляция процессора i80 (на ассемблере x86 (https://github.com/usr38259/i8x), проходит все тесты) и набор тестов (https://zx-pk.ru/attachment.php?attachmentid=77042) для «Специалиста».
77042
Может и пригодится (хотя мы уже эти файлы видели, HardWareMan не даст соврать), но на будущее необходимо писать в тему. А такой вот выброс предложения считается спамом.

lexarr
06.06.2022, 20:31
Ещё: адаптированная си-версия (https://zx-pk.ru/attachment.php?attachmentid=81952) эмуляции, взятая из MAME (https://github.com/mamedev/mame/tree/master/src/devices/cpu/i8085). Считается наиболее проработанной, проходит все тесты, хотя флаги выставляет несколько по-другому. Есть также для Z80 (https://zx-pk.ru/attachment.php?attachmentid=81953), взято оттуда же (https://github.com/mamedev/mame/tree/master/src/devices/cpu/z80), для эмуляции Сябр'а.
Пример выполнения тестов 8080exer в Termux (Android).
unzip i80test.zip -x \*.c \*.h
chmod a+x i80test
./i80test
81952, 81953, 77415