User Tag List

Страница 2 из 6 ПерваяПервая 123456 ПоследняяПоследняя
Показано с 11 по 20 из 56

Тема: ZPU на Векторе

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    Регистрация
    20.06.2007
    Адрес
    С.-Петербург
    Сообщений
    4,308
    Спасибо Благодарностей отдано 
    1,034
    Спасибо Благодарностей получено 
    819
    Поблагодарили
    490 сообщений
    Mentioned
    26 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

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

    Цитата Сообщение от NEO SPECTRUMAN Посмотреть сообщение
    и втыкаю как на ваших векторах что либо запускают с дисководов
    Это крайне неудобно, но для консольного вывода иначе пришлось бы приделывать полмикродоса.
    Надеюсь, что твой браузер сможет осилить скачивание образа отсюда: https://github.com/svofski/vector06j...fdd/os-t34.fdd.
    В VirtualVector подключаешь его как диск A, жмешь F11, потом F12. Как диск B подключаешь каталог с .com файлом.

    Вектор тут на самом деле не нужен. Ты можешь переделать консольный вывод, который тут все равно на жовке прикручен, и запускать в любой системе.
    Больше игр нет

  2. #1
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  3. #2

    Регистрация
    22.05.2011
    Адрес
    г. Дзержинск, Украина
    Сообщений
    6,829
    Спасибо Благодарностей отдано 
    483
    Спасибо Благодарностей получено 
    663
    Поблагодарили
    513 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от svofski Посмотреть сообщение
    В VirtualVector
    ну все это я и сам осилил
    только взял то сюда
    http://sensi.org/scalar/ware/763/
    но вот чота этот микродос не понимает никаких dir-ов
    чтоб удостоверитсо

    - - - Добавлено - - -

    ага твой бинарник запустил

    - - - Добавлено - - -

    свой бинарник тоже запустил
    Последний раз редактировалось NEO SPECTRUMAN; 01.12.2020 в 20:35.

  4. #3

    Регистрация
    20.06.2007
    Адрес
    С.-Петербург
    Сообщений
    4,308
    Спасибо Благодарностей отдано 
    1,034
    Спасибо Благодарностей получено 
    819
    Поблагодарили
    490 сообщений
    Mentioned
    26 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Там все команды одной буквой. Дир - это просто D.
    Больше игр нет

  5. #4

    Регистрация
    22.05.2011
    Адрес
    г. Дзержинск, Украина
    Сообщений
    6,829
    Спасибо Благодарностей отдано 
    483
    Спасибо Благодарностей получено 
    663
    Поблагодарили
    513 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    спектрум же (пентагон с подключаемой ram0)


    - - - Добавлено - - -

    https://anonfiles.com/D1u8T2uap6/zpu_r0001_trd
    https://dropmefiles.com.ua/ru/yazU8L
    http://www.mediafire.com/file/4rsw4x..._r0001.7z/file



    "консоль" с nsid-а
    поэтому никаких управляющих кодов она не понимаит
    да и кодировка не та

    загружалка файлов неполноценная
    больше чем $1000 байт загрузится но не переложиться по адресу $0000
    тк r0001



    Цитата Сообщение от svofski Посмотреть сообщение
    У тебя же есть весь текст.
    покурил сорец
    переписывать нужно много
    декодер сильно не рационально написан и тратит кучу времени в пустую

    мне проще было бы написать с нуля
    чем выпилить весь мусор от сюда
    но зачем?

    на этом гуляние во всякие там zpu я прекращаю
    Последний раз редактировалось NEO SPECTRUMAN; 02.12.2020 в 05:16.

  6. #5

    Регистрация
    20.06.2007
    Адрес
    С.-Петербург
    Сообщений
    4,308
    Спасибо Благодарностей отдано 
    1,034
    Спасибо Благодарностей получено 
    819
    Поблагодарили
    490 сообщений
    Mentioned
    26 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Круто, что у тебя получилось запустить на Спектруме!

    Цитата Сообщение от NEO SPECTRUMAN Посмотреть сообщение
    декодер сильно не рационально написан и тратит кучу времени в пустую
    Декодер занимает 40 строк из 800. Ты на мелочи распаляешься преждевременно, особенно по части классификации мусора.

    Я сегодня добавил нативную реализацию многих инструкций, которые съедали время. Тест исполнялся за 3:30 сегодня утром, а сейчас за 0.59. Декодер 12 ядерных инструкций я переделал на диспатч на закуску. Это дало в лучшем случае секунду, что в моем случае с ручным секундомером просто погрешность измерения. Наверняка улучшение есть, но по сравнению с ускорением в 3.5 раза, согласись, не так существенно.

    Я обновил gist и ссылку на прекрасм в оригинальном сообщении. Еще не хватает mult и может быть div/mod, но уже есть смысл заниматься более низкоуровневой оптимизацией.
    Больше игр нет

  7. #6

    Регистрация
    20.06.2007
    Адрес
    С.-Петербург
    Сообщений
    4,308
    Спасибо Благодарностей отдано 
    1,034
    Спасибо Благодарностей получено 
    819
    Поблагодарили
    490 сообщений
    Mentioned
    26 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Спасибо ivagorу за операции знакового и беззнакового деления!

    Любопытно: стандартный ZPU предусматривает только операции DIV и MOD со знаком. А xprintf(), например, делит без знака. Поскольку такой операции в машине не определено, деление без знака транслируется в вызов __udivmodsi3, который работает так же медленно, как если бы никаких div и mod не было. Самым простым оказалось добавить инструкции UDIV, UMOD с кодами 32, 33 и добавить их поддержку в binutils и gcc. Это может быть интересно и тем, кто использует ZPU для более практичных целей.

    Тесто теперь проскакивает за 19 секунд.
    Больше игр нет

    Эти 2 пользователя(ей) поблагодарили svofski за это полезное сообщение:

    ivagor(02.12.2020), tnt23(05.12.2020)

  8. #7

    Регистрация
    20.06.2007
    Адрес
    С.-Петербург
    Сообщений
    4,308
    Спасибо Благодарностей отдано 
    1,034
    Спасибо Благодарностей получено 
    819
    Поблагодарили
    490 сообщений
    Mentioned
    26 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Невероятными усилиями ivagora и меня время выполнения целочисленного Мандельброта доведено до 1ч 5минут.
    Картинка отличается от стандартной. Я сделал ошибку, когда правил код, но картинка получилась интересней "правильной" версии и я решил ее оставить.

    Прекрасм

    Скриншот от ivagora:
    Последний раз редактировалось svofski; 04.12.2020 в 14:05.
    Больше игр нет

    Эти 2 пользователя(ей) поблагодарили svofski за это полезное сообщение:

    ivagor(04.12.2020), tnt23(05.12.2020)

  9. #8

    Регистрация
    20.06.2007
    Адрес
    С.-Петербург
    Сообщений
    4,308
    Спасибо Благодарностей отдано 
    1,034
    Спасибо Благодарностей получено 
    819
    Поблагодарили
    490 сообщений
    Mentioned
    26 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Давно не было новостей из мира zpu8080. Между тем ivagor и я даром времени не теряли, всячески его совершенствовали и ускоряли. В дополнение к старым тестам появилось еще несколько примеров его использования.

    Наш главный киберпанковый бенчмарк — quicksort демо. Массив данных 4096 байт держится прямо в экранной области для зрелищности, где и сортируется. Справа — стек ZPU. Красный — нативный стек 8080. После окончания сортировки данные перетасовываются и сортировка запускается заново. Демку можно запустить в браузере: sort4k.


    Из-под Микродоса теперь можно поиграть в Star Trek:


    В пока секретной сборке v06x под Линуксом Вектор стал интернет-вещью. На нем работает веб-сервер, который отдает страничку с интерфейсом, через который можно управлять светодиодом РУС/LAT. Небольшое демо:

    Чтобы интернеты на Векторе вышли из виртуальности понадобится сетевая плата, этого пока нет. Сейчас она эмулируется довольно условно потоком байт на порту ПУ.

    Бинарники + образ fdd в зипе:
    https://gitlab.com/svofski/zpu8080/-/releases/demo1

    Сорцы.
    https://gitlab.com/svofski/zpu8080/-/tree/master
    Можно собрать самому. Под линуксом это очень просто, нужен только docker.io. Этим же докером можно воспользоваться просто для сборки zpugcc. Под виндой это тоже можно, но плавно.

    В принципе ничто не мешает запустить zpu8080 на любом другом компьютере на кр580. С наступающим!
    Больше игр нет

    Эти 4 пользователя(ей) поблагодарили svofski за это полезное сообщение:

    bakka(06.03.2021), ivagor(25.12.2020), Oleg N. Cher(24.01.2021), tnt23(25.12.2020)

  10. #9

    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,581
    Спасибо Благодарностей отдано 
    64
    Спасибо Благодарностей получено 
    112
    Поблагодарили
    97 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от svofski Посмотреть сообщение
    В пока секретной сборке v06x под Линуксом Вектор стал интернет-вещью. На нем работает веб-сервер, который отдает страничку с интерфейсом, через который можно управлять светодиодом РУС/LAT. Небольшое демо:

    Чтобы интернеты на Векторе вышли из виртуальности понадобится сетевая плата, этого пока нет. Сейчас она эмулируется довольно условно потоком байт на порту ПУ.
    Делали с b2m UIP на вполне реальной RTL8019AS (эмулируется в моем эмуляторе и башкирии). Раз тут фишка в виртуальной машине ZPU (я правильно понимаю - там что-то вида интерпретатора байткода? который можно собирать gcc), то почему бы просто не взять те модули (там есть и собственно эмуляция устройства 8019 - на TAP-адаптер, т.е. через бридж можно штатно ходить в этот эмулятор по IP откуда угодно из Инета, и модуль для драйвера uIP есть).

    - - - Добавлено - - -

    А вообще, эмпирически - на сколько код в ZPU медленнее выполняется, чем такой же алгоритм, собранный в нативный бинарный код?
    Версия для Z80 была бы быстрее, на сколько (возможно есть какие-то вещи которые лучше ложатся на индексные регистры или работу с массивами от Z80)?
    Лучше сделать и жалеть, чем не сделать и жалеть.

    Некоторые из моих поделок тут: https://github.com/serge-404

  11. #10

    Регистрация
    20.06.2007
    Адрес
    С.-Петербург
    Сообщений
    4,308
    Спасибо Благодарностей отдано 
    1,034
    Спасибо Благодарностей получено 
    819
    Поблагодарили
    490 сообщений
    Mentioned
    26 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Error404 Посмотреть сообщение
    А вообще, эмпирически - на сколько код в ZPU медленнее выполняется, чем такой же алгоритм, собранный в нативный бинарный код?
    По производительности есть смысл сравнивать с Бейсиком. Мы сравнивали на примере Мандельброта и Эратосфена. ZPU побеждает. Предположительно за счет того, что Бейсик на Векторе не умеет в целые. Реализацию квиксорта на бейсике я бы посмотрел.

    Сравнивать с собранным нативным кодом трудно по причине отсуствия того, чем собирать нативный код под 8080. Я знаю, что ACK вполне умеет собирать под 8080, но пока руки не дошли его завести. В общем не надо быть ракетным хирургом, чтобы предсказать, что нативный код с эмулируемым никто не перепутает =) Сравнить было бы интересно еще и компактность.

    Я не спец по Z80, но кажется у него много дополнительных регистров. Благодаря дополнительным регистрам версия для Z80 может быть сделана ощутимо быстрее. У ZPU всего два хардовых регистра -- SP и PC. На 8080 приходится их все время класть и доставать из памяти, что конечно же медленно.

    Цитата Сообщение от Error404 Посмотреть сообщение
    Делали с b2m UIP на вполне реальной RTL8019AS (эмулируется в моем эмуляторе и башкирии). Раз тут фишка в виртуальной машине ZPU (я правильно понимаю - там что-то вида интерпретатора байткода? который можно собирать gcc), то почему бы просто не взять те модули (там есть и собственно эмуляция устройства 8019 - на TAP-адаптер, т.е. через бридж можно штатно ходить в этот эмулятор по IP откуда угодно из Инета, и модуль для драйвера uIP есть).
    Да, почему бы просто не взять. А где бы на это посмотреть?

    Это немного оффтоп в этой теме, но когда-нибудь увидеть FUZIX на Векторе мне тоже было бы интересно.
    Больше игр нет

Страница 2 из 6 ПерваяПервая 123456 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Биперная музыка на Векторе-06Ц
    от ivagor в разделе Вектор
    Ответов: 352
    Последнее: 29.07.2025, 19:04
  2. Джойстики на Векторе-06ц
    от svofski в разделе Вектор
    Ответов: 104
    Последнее: 04.07.2025, 15:57
  3. Какой игры не хватает на векторе?
    от ivagor в разделе Вектор
    Ответов: 56
    Последнее: 24.02.2017, 08:35
  4. Картинки демок Amstrad на векторе
    от yur в разделе Вектор
    Ответов: 13
    Последнее: 14.03.2016, 08:25
  5. Катинки С64 на Векторе
    от yur в разделе Вектор
    Ответов: 6
    Последнее: 13.03.2016, 15:40

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •