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

User Tag List

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

Тема: Монолоадер для чайников.

  1. #1
    Guru Аватар для ZX_NOVOSIB
    Регистрация
    24.12.2006
    Адрес
    р.п. Маслянино, Новосибирская обл.
    Сообщений
    5,547
    Спасибо Благодарностей отдано 
    233
    Спасибо Благодарностей получено 
    258
    Поблагодарили
    178 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию Монолоадер для чайников.

    Монолоадер. Что это? И с чем его едят? Как сделать монолоадер? Что для этого надо?

    Для начала хотелось бы понять общую идеологию монолоадера, принцип его работы. Я правильно понял, что простейший монолоадер делается примерно так: делаем бейсик-файл, в котором в строку REM помещаем загрузчик в кодах, каким-то образом узнаем адрес этого кодового блока и вызываем его с помощью USR. Потом склеиваем каким-нибудь коммандером этот бейсико-кодовый загрузчик с кодовым блоком.

    http://zxpress.ru/article.php?id=6380 - здесь конечно есть кое-какая инфа по этому поводу, но всё равно многое не понятно. Хотелось бы разобрать на конкретном примере Например сделать REX (Freeway). Только в примере WLODEK BLACK грузится один блок и потом он запускается. В рексе так ведь не получится. Ведь первым делом надо спросить у юзера, какую часть он хочет грузить, и далее грузить то что надо, а не всё подряд.

    Смутно я понимаю как загрузить "всё подряд", надо взять содержимое ячейки #5CF4, и подставить это содержимое в свой кодовый загрузчик и тогда всё загрузится. Но как сделать, чтобы в зависимости от выбора юзера, в кодовый загрузчик подставлялись те сектора, на которых расположен один из трех блоков? Как узнать адрес не первого блока, а остальных двух? И даже если мы узнаем, то как подставить эти адреса? Опять с помощью кодового загрузчика? но тогда он усложняется

    В общем лучше тогда рекса пока не трогать. А начать с самого простейшего. Сделать загрузчик, который просто будет грузить запакованную картинку по адресу 24600 и показывать её. С чего начать? ) Как будет выглядеть кодовый загрузчик? Как его засунуть в REM? Как узнать точку входа в этот кодовый загрузчик?
    Куплю корпус и материнку от Spectrum +2/+3

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

  3. #2
    Guru Аватар для CodeMaster
    Регистрация
    26.04.2009
    Адрес
    г. Воронеж
    Сообщений
    6,211
    Спасибо Благодарностей отдано 
    131
    Спасибо Благодарностей получено 
    210
    Поблагодарили
    181 сообщений
    Mentioned
    6 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ZX_NOVOSIB Посмотреть сообщение
    и вызываем его с помощью USR
    Это не по теме, но всегда было интересно: почему USR используется именно с RANDOMIZE? И если аргумент USR строка, то тоже используется RANDOMIZE?
    "Во времена всеобщей лжи говорить правду - это экстремизм" - афоризм.

  4. #3
    Veteran Аватар для Destr
    Регистрация
    26.03.2008
    Адрес
    Питкяранта
    Сообщений
    1,800
    Спасибо Благодарностей отдано 
    249
    Спасибо Благодарностей получено 
    112
    Поблагодарили
    86 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ZX_NOVOSIB Посмотреть сообщение
    здесь конечно есть кое-какая инфа
    Вон там утилитка для создания монолоадера: http://zxpress.ru/article.php?id=11956

    Цитата Сообщение от CodeMaster Посмотреть сообщение
    Это не по теме, но всегда было интересно: почему USR используется именно с RANDOMIZE?
    Можно и RUN использовать
    И PRINT
    И CLOSE
    В общем любую команду с одним аргументом
    Последний раз редактировалось Destr; 27.12.2014 в 12:37.

  5. #4
    Guru
    Регистрация
    27.02.2005
    Адрес
    москва
    Сообщений
    13,754
    Записей в дневнике
    1
    Спасибо Благодарностей отдано 
    141
    Спасибо Благодарностей получено 
    1,172
    Поблагодарили
    769 сообщений
    Mentioned
    18 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ZX_NOVOSIB Посмотреть сообщение
    Смутно я понимаю как загрузить "всё подряд", надо взять содержимое ячейки #5CF4, и подставить это содержимое в свой кодовый загрузчик и тогда всё загрузится. Но как сделать, чтобы в зависимости от выбора юзера, в кодовый загрузчик подставлялись те сектора, на которых расположен один из трех блоков? Как узнать адрес не первого блока, а остальных двух? И даже если мы узнаем, то как подставить эти адреса? Опять с помощью кодового загрузчика? но тогда он усложняется
    почитай про точку входа в trdos 15635 когда C=5

  6. #5
    Guru Аватар для CodeMaster
    Регистрация
    26.04.2009
    Адрес
    г. Воронеж
    Сообщений
    6,211
    Спасибо Благодарностей отдано 
    131
    Спасибо Благодарностей получено 
    210
    Поблагодарили
    181 сообщений
    Mentioned
    6 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Destr Посмотреть сообщение
    В общем любую команду с одним аргументом
    Ну, какой-то смысл именно в RANDOMIZE был, может удобней набирать на клаве?
    "Во времена всеобщей лжи говорить правду - это экстремизм" - афоризм.

  7. #6
    Veteran Аватар для Destr
    Регистрация
    26.03.2008
    Адрес
    Питкяранта
    Сообщений
    1,800
    Спасибо Благодарностей отдано 
    249
    Спасибо Благодарностей получено 
    112
    Поблагодарили
    86 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от CodeMaster Посмотреть сообщение
    Ну, какой-то смысл именно в RANDOMIZE был, может удобней набирать на клаве?
    Может быть.
    А скорей всего - оттого что RANDOMIZE ни на что не повлияет (кроме SEED) после отработки кода и возврата значения.
    PRINT USR например распечатает значение BC

  8. #7
    Guru Аватар для CodeMaster
    Регистрация
    26.04.2009
    Адрес
    г. Воронеж
    Сообщений
    6,211
    Спасибо Благодарностей отдано 
    131
    Спасибо Благодарностей получено 
    210
    Поблагодарили
    181 сообщений
    Mentioned
    6 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Destr Посмотреть сообщение
    Может быть.
    Ну и последний вопрос ;-) А чего запуск бинарного кода так далеко задвинули (спец вариант функции), почему не отдельная команда? Не предполагалось, что будет широко использоваться или нужна было именно функция, что бы код мог что-то вернуть в Бейсик?
    "Во времена всеобщей лжи говорить правду - это экстремизм" - афоризм.

  9. #8
    dig out your soul Аватар для scl^mc
    Регистрация
    26.01.2005
    Адрес
    Russia, Ulianovsk
    Сообщений
    5,423
    Записей в дневнике
    6
    Спасибо Благодарностей отдано 
    53
    Спасибо Благодарностей получено 
    29
    Поблагодарили
    18 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от CodeMaster Посмотреть сообщение
    нужна было именно функция, что бы код мог что-то вернуть в Бейсик?
    скорее всего да.
    'SONGS FROM CRUEL WORLD' IS REMASTERED!
    unmilky sky and other albums is here
    speccy merchandise

    we can dance beneath the fireflies on an empty road
    there is the light that never goes out... (the smiths)
    если кто-то что-то как-то, то вот моя аська - 371432992

  10. #9
    Veteran
    Регистрация
    15.07.2009
    Адрес
    Череповец
    Сообщений
    1,746
    Спасибо Благодарностей отдано 
    146
    Спасибо Благодарностей получено 
    53
    Поблагодарили
    39 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Тем более ведь возвращается значение регистра BC.
    ZX-Evo Rev. C4 (Double-config) / VDAC2 / ZiFi / NeoGS / ZXM-Soundcard Extreme

  11. #10
    dig out your soul Аватар для scl^mc
    Регистрация
    26.01.2005
    Адрес
    Russia, Ulianovsk
    Сообщений
    5,423
    Записей в дневнике
    6
    Спасибо Благодарностей отдано 
    53
    Спасибо Благодарностей получено 
    29
    Поблагодарили
    18 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    можно в переменную какую-нибудь заполучить результат работы подпрограммы чем-нибудь типа let x=usr 49152
    'SONGS FROM CRUEL WORLD' IS REMASTERED!
    unmilky sky and other albums is here
    speccy merchandise

    we can dance beneath the fireflies on an empty road
    there is the light that never goes out... (the smiths)
    если кто-то что-то как-то, то вот моя аська - 371432992

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

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

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

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

Похожие темы

  1. Ответов: 206
    Последнее: 19.08.2020, 10:36
  2. TS Conf прошивка для Чайников
    от AAA в разделе Софт
    Ответов: 157
    Последнее: 10.01.2015, 04:46
  3. Ответов: 35
    Последнее: 01.12.2006, 10:06
  4. монолоадер.
    от Sinus в разделе Программирование
    Ответов: 17
    Последнее: 07.02.2006, 14:25

Ваши права

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