Если нельзя, но очень хочется, то нужно обязательно и ничего в мире не стоит того, чтобы делать из этого проблему!


Интересна Java? Кликай по ссылке и изучай!
Если тебе полезно что-то из того, чем я делюсь в своем блоге - можешь поделиться своими деньгами со мной.
с пожеланием
столько времени читатели провели на блоге - 
сейчас онлайн - 

пятница, 10 августа 2018 г.

Реверсинжиниринг БК ЛИК

Продублирую сообщение тут, у себя в блоге, потому как форума имеют привычку раз в 10 лет закрываться... А та информация, которую я сейчас перерабатываю - она еще не одно поколение будет будоражить. Всем форумам жить долго! Но все же бекап не зря придумали. И пусть на меня обидится гугл за этот копипаст. Ссылка на оригинальный топик.

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

На данный момент у меня есть желание систематизировать все, что накоплено по этому чудному радиоконструктору дабы оно находилось в одном месте. Буду обновлять этот пост новыми новостями. 
  1. Мануал о том, как быстро запустить любую игру с помощью эмулятора Виктора Пыхонина.
  2. Архив программ для ПК "Лик". Прислан А.Болтаевским. Инструкции по запуску в эмуляторе Специалиста в самом архиве. Взято тут
  3. Прошивки ПЗУ для "Специалиста" (9(!) разных Мониторов) в том числе и "ЛИК". Взято тут
  4. Архивы игровых программ для "Специалиста" (они так же подходят для ЛИКа) раздватричетыреВзято тут
  5. Руководство пользователя ПК "Лик" взято так же у Виктора Пыхонина
  6. Подборка программ для ЛИКа от Александра Болтаевского
  7. Описание на Википедии
  8. Краткий обзор Лика со схемой, руководством и фотографиями
  9. Еще одна подборка программ и игр для ЛИКа: раздватри взятые тут
  10. Радиоконструктор "Бытовое электронно-вычислительное устройство ЛИК". Руководство по эксплуатации ДАЯ 4.075.005 РЭ содержащее схему в хорошем разрешении
  11. Схема ЛИК из этого руководства, отдельно в максимально найденном разрешении
  12. Описание применения. Руководство оператора. Руководство программиста. Скан-черновик лежит тут
  13. Фотографии в хорошем разрешении (спасибо xlat) лежат тут
  14. DipTrace схема. Я уперся в ограничение на некоммерческую версию в 2000 контактов, а потому она завершена всего на 98% - не подключены 3 ПЗУ'шки и логика в части контроллера ввода-вывода. Тем не менее схема будет лежать и обновляться тут, а вот и компоненты используемые в проекте.
  15. Некоторые исправления ошибок, выявленных в ходе перегона схемы в DipTrace. Внимание, так как проект на стадии разработки, я уверен что на каждой схеме (и моих исправлениях) накоплены ошибки, которые планируется в ходе "реверсинжиниринга" исправить. Это значит, что наработки вы используете на свой страх и риск - "как есть", без каких-либо гарантий. 
  16. Так же нашел чудную фришную программу Logisim в которой можно изучать логику работы различных схем. Напиcана она на java и запускается одним кликом по jar после установки Java (JDK или JRE) последней версии. Я только начал в ней глубже исследовать схему - и она будет лежать и обновляться тут. В этой же папке есть пару скриншотов для наглядности и сама программа.
  17. Подборка всего, что было найдено за 2 бессонные ночи в одном месте (постоянно обновляется) на случай креша тех или иных сайтов. Жаль, но многие сайты уже не работают - их можно найти только в вебархиве и то не полностью, потому я позволил себе сохранить то что касается ЛИКа в отдельном месте.
Из дальнейших планов:
  1. Найти по сарафану в Черновцах образец ЛИКа и сделать реверсинждиниринг по печатной платы - инфы о ней кроме как схемы и расположения элементов и 2-3 фоток в сети я не нашел, и то пришлось вложить в это 1 ночь.
  2. Так же стоит устранить неточности в документации, которые я еще в школьном возрасте выявил и предложить оцифрованный и более современный формат.
  3. После хочу собрать этот компьютер собственноручно (радиодетали уже заказаны и в пути).
  4. Следом хочу реализовать программатор и сделать копии ПЗУшек, которые у меня остались с тем, чтобы навести порядок в этой области (ROM для эмуляторов есть, но не факт что оригинальные).
  5. Так же игрушки и программы - все будут собраны в одном месте.
  6. Хочу так же реанимировать все, что у нас сохранилось на кассетах (я их хранил последние 15-20 лет).
  7. Есть в тетрадках некоторые заготовки, которыми могу и хочу поделиться. Мелочь, но тоже пригодится.
  8. Так же у меня начат эмулятор на java его хочется продолжать и закончить просто потому что "можется".
  9. Что всплывет по ходу дела так же скорее всего захочется реализовать.
Конечно же время на это не океан, но это проект для души, а потому он будет регулярно пополняться самым ценным активом. 

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

Из следующих шагов: 
  1. Закончить схему в DipTrace
  2. Развести дорожки в DipTrace максимально приближенные к оригиналу
  3. Продолжать исследовать логику работы в Logisim
  4. Максимально отдебажить проект, выявить очепятки и попробовать собрать первую версию
Спасибо за интерес к теме. 
Чего-нибудь неожиданно-приятного нам. 

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

Steps to reproduce:
  1. Reset
  2. Загрузить игру в память любым способом (Alt-F3 или I= в http://emu80.org эмуляторе)
  3. J <ВК>
  4. Видим заставку
  5. Reset
  6. J3456
  7. выбираем скорость игры
  8. загрузился уровень 1й - играем
  9. если надоело, Reset
  10. J3456
  11. выбираем скорость игры
  12. загрузился уровень 2й - играем
  13. если надоело, Reset
  14. goto 7)

Комментариев нет:

Отправить комментарий