ПК-01 ЛЬВОВ
http://lvovpc.ho.ua/forum/

Хочу написать свой эмулятор ПК-01 Львов на Delphi
http://lvovpc.ho.ua/forum/viewtopic.php?f=12&t=193
Страница 14 из 15

Автор:  MARAT_BEST [ 11 дек 2013, 13:34 ]
Заголовок сообщения:  Re: Хочу написать свой эмулятор ПК-01 Львов на Delphi

liberation писал(а):
Удалось кое-что новенькое накопать по багу с ассемблером под wine. Во-первых, проблему можно решить, просто сменив в настройках SetupAssembler параметр Path for save LVT and LST file. Нужно выбрать какую-нибудь иную директорию вместо дефолтной Assembler. К примеру, можно создать директорию Assembler1 и назначить ее целевой. Все заработает. Самое забавное, что если в качестве целевой создать и назначить директорию с именем "assembler", то все опять безнадежно поломается.

Заметил еще один тонкий момент. Если удалить исходную директорию Assembler, то редактор будет падать с ошибкой в модальном окошке "Cannot create file "%path%\temp.asm. Path not found.". Хотя целевая директория выбрана иная.

С правами на директории все в порядке.

Магию слова "assembler" пока никак объяснить не могу.

p.s.
Наш друг Zelya передает этот замечательный скриншот из MacOS. Эмулятор работает под wine 1.6, но имеет те же проблемы с ассемблером.


orest писал(а):
Основньіе фичи овулятора испьітаньі на прочность под линуксом (slackware). Весьма симпатичньій продукт, смею заметить, как-то сразу понравился. Но название все же стоить сменить на менее гинекологическое, имхо :)

Загрузка програм из репозитория - вообще киллер-фича. Мегаубойная вещь.

НО! Продукт требует некоторой доработки напильником, єто верно. Нижеследует нижеследующий список соображений:

1) Запуск редактора ассемблера: без папочки Assembler в рабочей директории запускаться отказьівается. Надо бьі автоматизировать.
2) Файл bios.dat все таки должен бьіть встроен в программу, с возможностью горячей заменьі из меню. Иначе при запуске вьіскакивает пренеприятнейшее окошко "Файло нот фаунд". Что єто за файл и где его искать - никто не говорит. Так ведь можна всех неизощренньих пользователей распугать :)
3) Редактор кода зависает наглухо при попьітке оттранслировать и запустить тестовую программу. Но ето какие-то кроссплатформенньіе непонятки. скорее всего.
Может можна редактор кода отдельной утилитой оформить, во избежание, тсзать?


Обещаю что все исправлю :roll: , скорее всего скоро опять будет время (до нового года)

Автор:  orest [ 11 дек 2013, 13:50 ]
Заголовок сообщения:  Re: Хочу написать свой эмулятор ПК-01 Львов на Delphi

MARAT_BEST писал(а):
liberation писал(а):
Удалось кое-что новенькое накопать по багу с ассемблером под wine. Во-первых, проблему можно решить, просто сменив в настройках SetupAssembler параметр Path for save LVT and LST file. Нужно выбрать какую-нибудь иную директорию вместо дефолтной Assembler. К примеру, можно создать директорию Assembler1 и назначить ее целевой. Все заработает. Самое забавное, что если в качестве целевой создать и назначить директорию с именем "assembler", то все опять безнадежно поломается.

да, действительно, создание ісчо одной папочки Assembler1 (к примеру) решает вопрос. Теперь все работает и мигает :mrgreen:
Целесообразность создания отдельной утилитьі подвергнута сомнению.

Автор:  orest [ 12 дек 2013, 14:16 ]
Заголовок сообщения:  Re: Хочу написать свой эмулятор ПК-01 Львов на Delphi

еще пару слов с пожеланиями. если позволите:

- в окне "Debugger step by step" - Run from - добавить бьі отработку клавиши Enter, дабьі не перескакивать каждьій раз с клавиатурьі на мьішь рукой;
- не знаю, вожможно ли, но реализовать откат назад step by step, хотя бьі на несколько инструкций. Ну, или добавить память состояний регистров на те же несколько инструкций. Чем больше, тем лучше, разумеется.
- в меню открьітия файла желательно сохранять путь к последней открьівавшейся директории. Єто важно, ибо некоторьім образом нервирует :)

Остальное может и подождать. Но, если надо, могу написать расширенньій список пожеланий :)

Автор:  liberation [ 17 окт 2016, 00:41 ]
Заголовок сообщения:  Re: Хочу написать свой эмулятор ПК-01 Львов на Delphi

Как внезапно оказалось, эмулятор уважаемого Марата написан на Delphi. Но раз уж я решил написать это сообщение, то все-таки не отступлюсь. Из интернетов стало известно, что в ФРГ был написан эмулятор CP/M-80 для Raspberry PI. Самое интересное, что CP/M в данном случае выступает в роли, так сказать, хостовой ОС, или вот так скажем:
Цитата:
Here is the emulator without an operating system "bare metal" operated on the Raspberry PI.
Т.е. никаких предварительно установленных линуксов не нужно, вообще ничего не нужно, кроме "blank SD card".

Примечательно, как этот проект реализован. Вот обширная цитата, которая попутно поясняет, почему этот материал появился в этой теме:
Цитата:
The secret to this development is an open source system known as Ultibo, a framework based on Open Pascal which allows you to create bare metal applications for the Raspberry Pi. The choice of Free Pascal will delight some and annoy others, depending on your predilections. Ultibo is still very much in active development, but the most common functions are already there; you can write to the framebuffer, read USB keyboards, and write to a serial port. That’s all you really need to make your own emulator or write your own Doom clone.

Словом, можно было бы и эмулятор Марата конвертнуть в "bare metal" приложения для Распи, если оно работает с Free Pascal. А потом мы прячем Распи в корпус от ПК-01 и тема про памятник "Львову"приобретает новую жисть. Или даже про ПК-04 можно будет снова поговорить.

Другое практическое применение дерзновенной задумке найти трудно.

Перелiк посилань:
1. RASPBERRY PI BOOTS CP/M,
2. EMUZ80 RPI - Z80 / CP/M - Emulator on Rapberry PI(2),
3. Ultibo

p.s.
Кстати, можно еще барыжить такими "восстановленными" ПК-01. Молодежь все равно подвоха не заметит. Наоборот, буду еще восхищаться, что комп 88-го года выпуска HDMI искаробки умеет. )))

Автор:  MARAT_BEST [ 17 окт 2016, 03:02 ]
Заголовок сообщения:  Re: Хочу написать свой эмулятор ПК-01 Львов на Delphi

liberation писал(а):
Как внезапно оказалось, эмулятор уважаемого Марата написан на Delphi.

почему внезапно, ни когда не скрывал этого :D
у меня где то есть даже чистый проект , который я из под lazarus компилировал для ANDROID, можно его переделать в Free Pascal...

orest писал(а):
p.s.
Кстати, можно еще барыжить такими "восстановленными" ПК-01. Молодежь все равно подвоха не заметит. Наоборот, буду еще восхищаться, что комп 88-го года выпуска HDMI искаробки умеет. )))

:lol: :lol: :lol:

Автор:  liberation [ 17 окт 2016, 10:30 ]
Заголовок сообщения:  Re: Хочу написать свой эмулятор ПК-01 Львов на Delphi

MARAT_BEST писал(а):
почему внезапно, ни когда не скрывал этого :D
у меня где то есть даже чистый проект , который я из под lazarus компилировал для ANDROID, можно его переделать в Free Pascal...

Это меня память подвела. Я почему-то думал, что эмулятор изначально написан на Free Pascal. А открыл форум, прочитал название темы - сюрпрайз!.. )))

Автор:  liberation [ 25 янв 2017, 14:05 ]
Заголовок сообщения:  Re: Хочу написать свой эмулятор ПК-01 Львов на Delphi

Марат, а есть ли у Вашего эмулятора оф.страничка? Спрашиваю, поскольку сегодня возникла потребность дать ссылку на него в паблике VK. В результате ограничился ссылкой на тему на zx-pk.ru, т.к. там она не столь раздута содержательно.

Автор:  MARAT_BEST [ 26 янв 2017, 02:54 ]
Заголовок сообщения:  Re: Хочу написать свой эмулятор ПК-01 Львов на Delphi

liberation писал(а):
Марат, а есть ли у Вашего эмулятора оф.страничка? Спрашиваю, поскольку сегодня возникла потребность дать ссылку на него в паблике VK. В результате ограничился ссылкой на тему на zx-pk.ru, т.к. там она не столь раздута содержательно.

Странички нет и не будет наверное ... :(
все описание только тут и на zx-pk.ru, больше ни где про него не написано .... так что .... :roll:

ЗЫ.
Возможно в скором времени допилю немного под Android его

Автор:  liberation [ 31 май 2017, 12:03 ]
Заголовок сообщения:  Re: Хочу написать свой эмулятор ПК-01 Львов на Delphi

liberation писал(а):
Словом, можно было бы и эмулятор Марата конвертнуть в "bare metal" приложения для Распи, если оно работает с Free Pascal. А потом мы прячем Распи в корпус от ПК-01 и тема про памятник "Львову"приобретает новую жисть. Или даже про ПК-04 можно будет снова поговорить.

Сегодня прочитал интересную новость про bare-metal эмулятор Спектрума для всего семейства Raspberry. Особенно занятно, что все это работает на 5-ти баксовом Zero. Все-таки здорово было бы переиздать ПК-01 "Львов" в таком формате. И дешево, и сердито. )

Автор:  IvanK [ 23 дек 2017, 15:29 ]
Заголовок сообщения:  Re: Хочу написать свой эмулятор ПК-01 Львов на Delphi

Ув. участники, на волне растущего интереса к нейросетям прикидываю, как можно использовать нейросеть к прохождению одной знаменитой игры на ПК-01 Львов - "Башня". Для наглядности что хочу сделать - пример использования нейросети для игры "Марио" https://www.youtube.com/watch?v=qv6UVOQ0F44

Есть пара вопросов:
1. Разобрался, где и что лежит в памяти самого ПК-01 Львов, но где это (или его преобразование) находится в памяти (насколько понимаю оперативной), выделенной для эмулятора?
2. Есть ли у эмулятора, созданного Маратом, настройка скорости эмуляции, т.к. скорость явно выше "заводской"?

Автор:  als [ 23 дек 2017, 18:32 ]
Заголовок сообщения:  Re: Хочу написать свой эмулятор ПК-01 Львов на Delphi

Существуют следующие эмуляторы ПК-01 Львов

LVOV105 (DOS),
LVOVulator (Эмулятор Марата)
SASEmulator (мной писанный, на исходниках LVOVulator )
Башкирия
"Эмулятор 3000"

Настройки скорости эмуляции в LVOVulator (Эмулятор Марата) - НЕТ! Скорость там явно завышена!

В SASEmulator, - ЕСТЬ настройка скорости эмуляции, но этот эмулятор считают "кривым" хотя мне он нравится. :-)

"Эмулятор 3000" - ЕСТЬ скорость эмуляции, но сам эмулятор ИМХО дубовый! :-(

Башкирия - нет возможности регулировать скорость эмуляции, но считается самым почётным эмулятором!

LVOV105 (DOS) - - нет возможности регулировать скорость эмуляции, но он может работать под ДОС, т.е. он 16-битный! Точнее говоря сокрость там можна регулировать "норма" и "быстро" что врядле будет кого устраивать!

Пока выкладываю ссылку на SASEmulator -
viewtopic.php?f=12&t=232&p=4932#p4932

остальные выложу позже, ну или сам найди. :-)

Автор:  als [ 23 дек 2017, 18:38 ]
Заголовок сообщения:  Re: Хочу написать свой эмулятор ПК-01 Львов на Delphi

Башкирия
http://bashkiria-2m.narod.ru/index/emul/0-8

Эмулятор 3000
http://www.emulator3000.org/rus-e3.htm

Автор:  MARAT_BEST [ 24 дек 2017, 11:09 ]
Заголовок сообщения:  Re: Хочу написать свой эмулятор ПК-01 Львов на Delphi

IvanK писал(а):
2. Есть ли у эмулятора, созданного Маратом, настройка скорости эмуляции, т.к. скорость явно выше "заводской"?


Вложения:
Снимок.JPG
Снимок.JPG [ 56.16 KiB | Просмотров: 226 ]

Автор:  Zelya [ 24 дек 2017, 14:02 ]
Заголовок сообщения:  Re: Хочу написать свой эмулятор ПК-01 Львов на Delphi

IvanK писал(а):
Ув. участники, на волне растущего интереса к нейросетям прикидываю, как можно использовать нейросеть к прохождению одной знаменитой игры на ПК-01 Львов - "Башня". Для наглядности что хочу сделать - пример использования нейросети для игры "Марио" https://www.youtube.com/watch?v=qv6UVOQ0F44


Очень интересно! Как реализирована нейросеть? Могу помочь с эмуляцией, и сетью, если есть базовые наработки.

Автор:  IvanK [ 24 дек 2017, 17:25 ]
Заголовок сообщения:  Re: Хочу написать свой эмулятор ПК-01 Львов на Delphi

Марат, спасибо! До чего ж всё просто - на самом видном месте) Видно, глаз замылился...

Zelya писал(а):
Очень интересно! Как реализирована нейросеть? Могу помочь с эмуляцией, и сетью, если есть базовые наработки.


Нейросеть формируется по тому же алгоритму, что и в ролике с Марио, - нейроэволюция усложняющихся топологий. "Нейро" - значит есть нейросеть, "эволюция" - значит нейросетей несколько и их отбор происходит посредством генетического алгоритма (он довольно-таки непростой), "усложняющихся топологий" - количество нейронов и связей между ними (в отдельной нейросети) меняется (может как увеличиваться, так и уменьшаться), т.е. нет выделенных слоев и жестко заданного числа нейронов и/или связей между ними. Т.е. изначально вид нейросетей крайне прост: есть входы и есть выходы, никаких промежуточных слоев нет, связи между входами и выходами устанавливаются случайным образом. Задается критерий успешности, например, время прохождения и расстояние (в случае "Башни" это, по всей вероятности, будет высота), и далее начинается магия... Сети тестируются, сегрегируются, отсеиваются, скрещиваются, усложняются, и так до достижения какой-то степени успешности, либо до бесконечности.

Я использую известный проект SharpNEAT написанный на c# в VisualStudio. По сути, сейчас есть только одна проблема - разобраться из какого места памяти, выделенной для эмулятора, считывать положения объектов. Всё остальное делается на раз-два.

Страница 14 из 15 Часовой пояс: UTC + 2 часа [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/