Важная информация

User Tag List

Страница 1 из 9 12345 ... ПоследняяПоследняя
Показано с 1 по 10 из 82

Тема: Хочу писать программы для ретрокомпьютеров

  1. #1
    Member
    Регистрация
    02.02.2019
    Адрес
    г. Одинцово
    Сообщений
    65
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    8
    Поблагодарили
    5 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию Хочу писать программы для ретрокомпьютеров

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

    Я студент старших курсов и прилично разбираюсь в C, C++ и OpenGL. Помогут ли мне эти знания, если я хочу писать игры для ретро компьютеров? Или там требуются знания basic и ассемблера? Может все-таки есть какие-то компьютеры, для которых существуют кросс-компиляторы? Если все-таки требуются знания basic и ассемблера, то какие компьютеры (желательно отечественные) документированы лучше всего, чтобы было проще начать.

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

  3. #2
    Member
    Регистрация
    18.01.2021
    Адрес
    п. Новый Ургал
    Сообщений
    145
    Спасибо Благодарностей отдано 
    30
    Спасибо Благодарностей получено 
    66
    Поблагодарили
    31 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Конечно надо брать ассемблер и писать для БК0011М. Там полно документации, примеров и широкое поле для творчества
    Последний раз редактировалось IgorR76; 16.03.2022 в 10:50.
    Блог проекта "The Goonies для БК11М"
    БК-0011М, БК-0011М-01, SMK-512, AZ

  4. #3
    Guru
    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    7,843
    Спасибо Благодарностей отдано 
    654
    Спасибо Благодарностей получено 
    1,818
    Поблагодарили
    1,044 сообщений
    Mentioned
    22 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Kuprin Посмотреть сообщение
    прилично разбираюсь в C, C++ и OpenGL. Помогут ли мне эти знания, если я хочу писать игры для ретро компьютеров?
    Начать наверно проще с кросс-компилятора z88dk, который поддерживает кучу целевых платформ. Он не идеален, но программы при желании можно писать. А потом уже будет видно, что делать дальше.

  5. Этот пользователь поблагодарил ivagor за это полезное сообщение:

    Oleg N. Cher (16.03.2022)

  6. #4
    Master Аватар для Sandro
    Регистрация
    20.01.2010
    Адрес
    г. Зеленоград
    Сообщений
    590
    Спасибо Благодарностей отдано 
    27
    Спасибо Благодарностей получено 
    211
    Поблагодарили
    115 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Для начала лучше всё-таки БК0010. Она проще.

  7. #5
    Administrator Аватар для CityAceE
    Регистрация
    13.01.2005
    Адрес
    г. Москва
    Сообщений
    4,574
    Записей в дневнике
    7
    Спасибо Благодарностей отдано 
    399
    Спасибо Благодарностей получено 
    1,207
    Поблагодарили
    394 сообщений
    Mentioned
    48 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Kuprin Посмотреть сообщение
    Может все-таки есть какие-то компьютеры, для которых существуют кросс-компиляторы?
    Основная проблема ретро-компьютеров - это недостаток ресурсов (малый объём памяти и медленные процессоры). Именно поэтому все пишется на максимально низкоуровневом языке (ассемблере), так как ни один компилятор для ретро-платформ не сможет обеспечить такое же быстродействие и компактность кода, как это сделает программист на ассемблере.
    С уважением, Станислав.

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

    grf (16.03.2022), MM (16.03.2022)

  9. #6
    Master
    Регистрация
    03.07.2021
    Адрес
    г. Кировск
    Сообщений
    905
    Спасибо Благодарностей отдано 
    76
    Спасибо Благодарностей получено 
    205
    Поблагодарили
    153 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Из отечественных, как уже писали - БК0010. Из импортных, как нетрудно догадаться - ZX Spectrum 48/128.
    Бейсик на них использовать можно, но для несложных и не требующих динамичной графики игр.
    Полноценные игры - только ассемблер. После Си его изучение не должно вызвать проблем, тем более на таких машинах.
    С точки зрения человека, начинавшего со Спектрума, его ассемблер понятней. БКашники не согласятся =)

  10. #7
    Guru Аватар для andrews
    Регистрация
    20.04.2006
    Адрес
    Санкт-Петербург
    Сообщений
    2,689
    Спасибо Благодарностей отдано 
    423
    Спасибо Благодарностей получено 
    196
    Поблагодарили
    174 сообщений
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Советую обратить внимание на PDP8 - (аналоги в СССР Саратов-2 и Электроника-100). Там UNIX и компилятор C. Эмуляторы и ассемблеры тоже есть, причем и в исходниках. В России на них мало кто обращает внимание. Поэтому есть возможность сразу "засиять на небосклоне" и быть цитируемым в интернете. Ну а ряд аналогов PDP-11 представлен широко и специалистов в советские времена были сотни тысяч человек. Если думаете о трудоустройстве, то тогда надо выбирать конечно PDP-11.

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

    Цитата Сообщение от reddie Посмотреть сообщение
    С точки зрения человека, начинавшего со Спектрума, его ассемблер понятней
    поскольку он, z80 CISC, то весьма сложен для начинающего. Огромное количество "недокументированных команд". С ассемблером PDP-8 (или PIC-12)не сравнить!

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

    Цитата Сообщение от CityAceE Посмотреть сообщение
    как это сделает программист на ассемблере.
    хороший программист на ассемблере.
    Последний раз редактировалось andrews; 16.03.2022 в 12:29.

  11. #8
    Member
    Регистрация
    02.02.2019
    Адрес
    г. Одинцово
    Сообщений
    65
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    8
    Поблагодарили
    5 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Большое спасибо всем за ответы! Постараюсь резюмировать информацию для себя и для тех, кому это тоже может быть интересно.

    Существует кросс-компилятор z88dk, который компилирует код на языке C для процессоров I8080 и Z80 и поддерживает особенности ряда популярных компьютеров для работы с графикой и звуком. Но, как я понял, этот проект все еще активно развивается, и почти все компьютеры поддерживаются не в полной мере. Плюс скорее всего данный компилятор работает не совсем оптимально при адаптации кода под конкретную платформу.

    Если хочется писать быстрый код и использовать все возможности машины, придется писать код на ассемблере. Из западных компьютеров популярней и доступней всего ZX Spectrum, а из отечественных компьютеры серии БК. Еще есть более редкие машины на архитектуре PDP-8, но скорее всего будет сложно найти рабочие экземпляры этих машин, а ведь хочется запустить свой код на реальном железе.

    Лично для меня интересней было бы попробовать БК, тем более, что в интернете быстро нашлись две книги с подробным описанием программирования под БК 0010 и 0011. Оставлю тут ссылки на них. Еще оставлю ссылку на статью на Хабре, где помимо всего прочего описывается новый удобный кросс ассемблер для БК
    http://gid.pdp-11.ru/books/Zaltsman.html
    http://gid.pdp-11.ru/books/00015-01.32.01.html
    https://habr.com/ru/post/469117/

    Поправьте меня, если что-то не так понял

  12. #9
    Member
    Регистрация
    18.01.2021
    Адрес
    п. Новый Ургал
    Сообщений
    145
    Спасибо Благодарностей отдано 
    30
    Спасибо Благодарностей получено 
    66
    Поблагодарили
    31 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Не хватает ссылки на шикарный эмулятор всех конфигураций БК: http://gid.pdp-11.ru/
    Блог проекта "The Goonies для БК11М"
    БК-0011М, БК-0011М-01, SMK-512, AZ

  13. #10
    Master
    Регистрация
    03.07.2021
    Адрес
    г. Кировск
    Сообщений
    905
    Спасибо Благодарностей отдано 
    76
    Спасибо Благодарностей получено 
    205
    Поблагодарили
    153 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от andrews Посмотреть сообщение
    он, z80 CISC, то весьма сложен для начинающего. Огромное количество "недокументированных команд"
    Насчет огромного количества, это, конечно, преувеличение. А с точки зрения человека именно ассемблерные записи Z80 выглядят куда понятней, чем для PDP11.
    С его кучей способов адресации и восьмеричной записью чисел, нигде, кроме PDP, не применяющейся. 10-тичную и 16-ричную любой программист поймет, они везде есть.

    Цитата Сообщение от Kuprin Посмотреть сообщение
    Поправьте меня, если что-то не так понял
    Все понятно правильно. Добавлю лишь, что недостаточно выучить ассемблер такого-то процессора, придется изучать железные особенности конкретной машины.
    Потому как везде разное строение экрана (работа с экранами), порты ввода-вывода и прочие тонкости, без которых полноценное написание игр невозможно.
    Соответственно, работа со звуком, с клавиатурой, загрузка-сохранение данных на каждой конкретной машине будут свои, даже если процессор одинаковый.
    Имеются в виду разные компьютеры, построенные на одном процессоре: ZX Spectrum, Amstrad, MSX и так далее.

Страница 1 из 9 12345 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Ответов: 105
    Последнее: 10.02.2020, 18:51
  2. Программы для Apple II
    от sergey2b в разделе Apple
    Ответов: 3
    Последнее: 17.03.2019, 14:51
  3. Для спектрума можно писать на FASM
    от ZX_NOVOSIB в разделе Программирование
    Ответов: 5
    Последнее: 23.07.2017, 21:22
  4. Программы для модемов
    от p@lex в разделе Софт
    Ответов: 21
    Последнее: 11.02.2006, 21:36

Ваши права

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