User Tag List

Страница 33 из 41 ПерваяПервая ... 293031323334353637 ... ПоследняяПоследняя
Показано с 321 по 330 из 403

Тема: Дискуссии вокруг УКНЦ и прочее.

  1. #321

    Регистрация
    06.02.2020
    Адрес
    г. Москва
    Сообщений
    486
    Спасибо Благодарностей отдано 
    143
    Спасибо Благодарностей получено 
    392
    Поблагодарили
    147 сообщений
    Mentioned
    8 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Hunta Посмотреть сообщение
    И как это связано с .ASECT и .=0?
    Хочется получить некий простой способ написания кода для ПП в абсолютных адресах и чтобы оно лежало в одной .sav, а не в чем-то типа "тут у нас основная программка, а вот тут допустим ppu.bin код для ПП который надо неким лоадером туда загрузить". Фактически это означает "приклеить" этот bin в конец .sav-ки которая для ЦП и собственно его по нужному адресу потом положить в ПП.
    Ладно.. чего-то я муторно слишком объясняю. Забей
    Шедевр портирования на УКНЦ - игра Highway Encounter
    Эмуляторы: UKNCBTL, EmuStudio (респект авторам)

  2. #322

    Регистрация
    30.11.2015
    Адрес
    г. Самара
    Сообщений
    7,557
    Спасибо Благодарностей отдано 
    346
    Спасибо Благодарностей получено 
    720
    Поблагодарили
    602 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от BlaireCas Посмотреть сообщение
    по нужному адресу потом положить в ПП
    Насколько мне помнится (но тут могу ошибаться), там вроде по правилам сначала надо получить блок памяти, а потом уже грузить туда, нет?

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

    Цитата Сообщение от BlaireCas Посмотреть сообщение
    Хочется получить некий простой способ написания кода для ПП в абсолютных адресах
    И проблема то как раз в этих абсолютных адресах - если бы у PDP-11 был бы абсолютно перемещаемый код - вообще было бы фиолетово - с какого адреса грузить.

    Ну а что бы не писать стопитсот раз конструкции типа приведённой выше - есть макросы, в том числе стандартные. Уж в RT-11, учитывая её перемещаемость при загрузке и начальной и последующей - все это DEC сделала

  3. #323

    Регистрация
    06.02.2020
    Адрес
    г. Москва
    Сообщений
    486
    Спасибо Благодарностей отдано 
    143
    Спасибо Благодарностей получено 
    392
    Поблагодарили
    147 сообщений
    Mentioned
    8 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Hunta Посмотреть сообщение
    если бы у PDP-11 был бы абсолютно перемещаемый код
    Вот в этом-то и неудобство написания для ПП если не делать какие-то кастомные загрузчики. Да банально что-то навроде MOV ADDR(R0), R0 (если вот прям так просто написать для ЦП и попытаться закинуть это в ПП) уже там не пройдет и приходится выкручиваться. Ну и просто неудобно так-то уж. Поэтому возможно не так много творений было которые используют периферийный процессор на всю его катушку.

    (я понимаю что это звучит как нытье, но собственно не я первый кто "обнаружил" что в УКНЦ есть второй проц и нормально с ним поработать так и не смог, сложнаааа неудобнааа..)

    .. на закуску кусок кода в ПП от Alex_K за что ему спасибо, останавливает моторчик дисковода:
    Код:
    	clr	R0
    	call	@7132(R0)		; stop FD motor
    Зачем такие сложности? А черт его знает Это-ж УКНЦ
    Последний раз редактировалось BlaireCas; 03.07.2023 в 11:37.
    Шедевр портирования на УКНЦ - игра Highway Encounter
    Эмуляторы: UKNCBTL, EmuStudio (респект авторам)

  4. #324

    Регистрация
    30.11.2015
    Адрес
    г. Самара
    Сообщений
    7,557
    Спасибо Благодарностей отдано 
    346
    Спасибо Благодарностей получено 
    720
    Поблагодарили
    602 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от BlaireCas Посмотреть сообщение
    Да банально что-то навроде MOV ADDR(R0), R0 (если вот прям так просто написать для ЦП и попытаться закинуть это в ПП) уже там не пройдет и приходится выкручиваться.
    Мне много приходилось (да и сейчас с хобби приходится) писать перемещаемый код, так что просто привык.

    Цитата Сообщение от BlaireCas Посмотреть сообщение
    Ну и просто неудобно так-то уж
    От этого никуда не деться - принять как данность. Ну и что бы не ошибаться - макросы. Один вариант макросов - когда код пишется полностью перемещаемым (больше команд), второй вариант - когда как результат трансляции строится таблица, а потом по этой таблице небольшая (она действительно будет небольшой) процедура патчит код - подстраивая его под адрес загрузки

    Цитата Сообщение от BlaireCas Посмотреть сообщение
    нормально с ним поработать так и не смог, сложнаааа неудобнааа..
    Когда я мучал во времена оные свой УК-НЦ - ничего сложного и особо неудобного в нём не увидел. Да, некоторые архитектурные его решения выглядят.. странноватенько, но, как показывает практика - если нечто создавала более менее нормальная команда - то обоснования всегда есть. Просто как правило(!) их (описанных обоснований) нет у нас. Кто-то ноет, кто-то принимает как данность.

    Таже байтовость в ПП возможно(!) последствия трёх (байтовых) планов графики. Сделали бы четыре - возможно(!) и ПП был бы словный. Но - 4 плана - это ещё 8 РУ5 то есть плюс ещё к цене (и место найти на плате) - а у нас тут и так есть народ, поющий - ЛИШИТЬ ДЕМОНА ВТОРОГО ПРОЦЕССОРА ИБО НАХ НЕ НУЖЕН (и цена упадёт в разы)

    Учитывая современные возможности - почему бы этим товарищам, что бы уесть полностью Аппонентов - не сделать УК-НЦ своей "мЯчты" - вот и поглядели бы - нужен али нет. Но пока они только предъявы кидать умееют

  5. #325

    Регистрация
    05.04.2016
    Адрес
    г. Мончегорск, Мурманская обл.
    Сообщений
    414
    Спасибо Благодарностей отдано 
    98
    Спасибо Благодарностей получено 
    68
    Поблагодарили
    45 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от BlaireCas Посмотреть сообщение
    Зачем такие сложности? А черт его знает Это-ж УКНЦ
    Нужно вызвать п/п, адрес которой находится по адресу 7132.
    После сброса, там адрес п/п заглушки. А после обращения к дисководу, адрес п/п останавливающей двигатель.

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

  6. #326

    Регистрация
    30.11.2015
    Адрес
    г. Самара
    Сообщений
    7,557
    Спасибо Благодарностей отдано 
    346
    Спасибо Благодарностей получено 
    720
    Поблагодарили
    602 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от BlaireCas Посмотреть сообщение
    на закуску кусок кода в ПП от Alex_K
    Я бы написал так
    Код:
    	MOV	@#7132, R0
    	call	(R0)

  7. #327

    Регистрация
    19.04.2013
    Адрес
    г. Чебоксары
    Сообщений
    614
    Спасибо Благодарностей отдано 
    18
    Спасибо Благодарностей получено 
    178
    Поблагодарили
    137 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от randomizer Посмотреть сообщение
    Нужно вызвать п/п, адрес которой находится по адресу 7132.
    А почему не делают так?
    Код:
    mov @#7132, -(SP)
    call @(SP)+
    Потому что так медленнее? Или ещё более непонятно?

  8. #328

    Регистрация
    30.11.2015
    Адрес
    г. Самара
    Сообщений
    7,557
    Спасибо Благодарностей отдано 
    346
    Спасибо Благодарностей получено 
    720
    Поблагодарили
    602 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от gid Посмотреть сообщение
    Потому что так медленнее?
    Будет два лишних обращения к памяти. Но - если надо сохранить регистры не тронутые - пуркуа бы и не па?

    Цитата Сообщение от gid Посмотреть сообщение
    Или ещё более непонятно?
    У меня впечатление, что бОльшая часть современного поколения (ну и определённая часть более старших) в принципе не любит включать мозги и всё делает по принципу - из говна и палок, причём и ***** и палки - тоже не их

  9. #329

    Регистрация
    06.02.2020
    Адрес
    г. Москва
    Сообщений
    486
    Спасибо Благодарностей отдано 
    143
    Спасибо Благодарностей получено 
    392
    Поблагодарили
    147 сообщений
    Mentioned
    8 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от randomizer Посмотреть сообщение
    всё тот же перемещаемый код
    А почему нельзя call @#7132? Как-бы не пофиг оно?

    (но для этого надо будет кусок кода для ПП писать с .=0 ведь так? а чтобы его загрузить нужен будет свой загрузчик уже собственный который разложит код по нужным адресам итого получаем лишние извращения, собственно Хунта и написал мол привыкайте к перемещаемому коду, ничего не поделать)
    Последний раз редактировалось BlaireCas; 03.07.2023 в 14:20.
    Шедевр портирования на УКНЦ - игра Highway Encounter
    Эмуляторы: UKNCBTL, EmuStudio (респект авторам)

  10. #330

    Регистрация
    30.11.2015
    Адрес
    г. Самара
    Сообщений
    7,557
    Спасибо Благодарностей отдано 
    346
    Спасибо Благодарностей получено 
    720
    Поблагодарили
    602 сообщений
    Mentioned
    13 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от BlaireCas Посмотреть сообщение
    А почему нельзя call @#7132? Как-бы не пофиг оно?
    Потому что это вызов процедуры с адреса 7132, а не процедуры, адрес которой находится В 7132. Полный аналог того кода - CALL @7132, но он не перемещаемый, в отличии от обращения @#7132, которое перемещаемое (при условии, что ячейка с адресом 7132 не входит в твой код

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

    Цитата Сообщение от BlaireCas Посмотреть сообщение
    но для этого надо будет кусок кода для ПП писать с .=0 ведь так?
    Нет.

    Правило перемещаемого кода - если обращаешься к чему то в своём блоке (код и/или данные), ссылки должны быть относительные (7132 или @7132, например), а не абсолютные (#7132 или @#7132), если к чему то не своем блоке - то абсолютные (#7132 или @#7132, но не 7132 или @7132)

    В данном случае ячейка НЕ у тебя - значит #7132 или @#7132
    Последний раз редактировалось Hunta; 03.07.2023 в 17:57.

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

    BlaireCas(03.07.2023)

Страница 33 из 41 ПерваяПервая ... 293031323334353637 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Материнки от УКНЦ и прочее.
    от tntpro в разделе Барахолка (архив)
    Ответов: 31
    Последнее: 13.06.2011, 23:21
  2. SDCC вокруг да около
    от andrews в разделе Программирование
    Ответов: 8
    Последнее: 26.03.2008, 08:16

Ваши права

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