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

User Tag List

Страница 2 из 4 ПерваяПервая 1234 ПоследняяПоследняя
Показано с 11 по 20 из 37

Тема: Машкод из Бейсика.

  1. #11
    Master Аватар для Бука
    Регистрация
    29.08.2012
    Адрес
    Анапа
    Сообщений
    610
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    6 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Sinner Посмотреть сообщение
    А вот это интересно, спасибо.
    Способ как раз для использования функций в машкоде из Бейсика.

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

    Наверно это одно из последствий увольнения ключевых разработчиков, в т.ч. Стива Виккерса (написавшего Бейсик).

    Работает очень элегантно.

    Определяется функция DEF FN f (x,y,z,a,s,d,f,g...) = USR адрес. Ессно по адресу должен быть код.

    Из программы вызывается как FN (параметры через запятую), и процедура в машкоде получает эти параметры!

    В книгах по ссылке множество подпрограмм, например "залить область с координатами x,y,x1,y1 цветом z".

    Потрясающе. Я когда-то тоже пытался освоить машкод, но писать с нуля - не осилил. Фиксированную процедуру типа "перенести 6912 байта оттуда туда" освоил легко.

    А дальше как раз затык - как передать значение Бейсик-переменных машкоду не сообщалось нигде, везде унылое randomize usr.
    Как верх прогресса была находка LET X = USR addr...
    «Земля - слишком маленькая и хрупкая корзина, для того чтобы человечество держало в ней все свои яйца…» - Роберт Энсон Хайнлайн.
    Электроника МК-61, Psion series 5mx.

    Всем умеющим читать советую http://www.skeptik.net/conspir/moonhoax.htm http://lurkmore.to/Лунный_заговор

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

    По умолчанию

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

    вот ещё нашёл.
    книжка прикладная графика стр.150
    там кстати дальше очень хорошо расписано использование встроенного `калькулятора`
    (по его байт коду инфы очень мало)
    Последний раз редактировалось goodboy; 26.12.2016 в 22:27.

  3. #13
    Master Аватар для Бука
    Регистрация
    29.08.2012
    Адрес
    Анапа
    Сообщений
    610
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    6 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Жаль только в книге не нашлось описания кода на ассемблере, механизм приема данных от бейсика и распихивания по регистрам.

    Можно попробовать дизасмить процедуры из книг, но мое знание ассемблера Z80 за последние двадцать лет только уменьшилось...

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

    Цитата Сообщение от goodboy Посмотреть сообщение
    ZX-review полистай, было там про это.
    Все когда-то доступные номера в 90е были прочитаны не раз. Не подскажешь в каком примерно номере, или хотя бы за какой год?

    З.Ы. Проверил мануал 128к, вышедшего позже этих книг. Нет описания этой великолепной фичи. О_о

    Синклер выпускал компьютер, который не знал до конца. Буржуй глупый.

    З.Ы. Проверил мануал +3, та же фигня.
    «Земля - слишком маленькая и хрупкая корзина, для того чтобы человечество держало в ней все свои яйца…» - Роберт Энсон Хайнлайн.
    Электроника МК-61, Psion series 5mx.

    Всем умеющим читать советую http://www.skeptik.net/conspir/moonhoax.htm http://lurkmore.to/Лунный_заговор

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

    По умолчанию

    Цитата Сообщение от Бука Посмотреть сообщение
    механизм приема данных от бейсика и распихивания по регистрам.
    в системных переменных содержится адрес с которого хранятся переданные значения
    дальше всё на усмотрение пользователя,
    параметры сами в регистры непропишутся,
    надо самому рассматривать/анализировать переданные данные

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

    Цитата Сообщение от Бука Посмотреть сообщение
    Синклер выпускал компьютер, который не знал до конца. Буржуй глупый.
    BetaBasic1.7 - 1983г

    очередное изобретение велосипеда
    Последний раз редактировалось goodboy; 26.12.2016 в 22:41.

  5. #15
    Master Аватар для Бука
    Регистрация
    29.08.2012
    Адрес
    Анапа
    Сообщений
    610
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    6 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от goodboy Посмотреть сообщение
    в системных переменных содержится адрес с которого хранятся переданные значения
    Да, но нигде в мануалах нет про то, что бейсик умеет как-то передавать значения в процедуру на машкоде.

    Если бы это знали в начале 80х в Британии и в начале 90х у нас - количество гибридных бейсик/машкод игрушек было б +100500!!!

    Игру класса Диззи таким методом сваять элементарно...

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

    Ага, про бетабарсик я забыл. У меня к нему доступа не было, увы. Хотя в в моем маленьком городе искал...

    Но всё-таки странно, что такая мегаполезная команда вообще не описана в мануалах.
    «Земля - слишком маленькая и хрупкая корзина, для того чтобы человечество держало в ней все свои яйца…» - Роберт Энсон Хайнлайн.
    Электроника МК-61, Psion series 5mx.

    Всем умеющим читать советую http://www.skeptik.net/conspir/moonhoax.htm http://lurkmore.to/Лунный_заговор

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

    По умолчанию

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

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

  8. #17
    Master Аватар для Бука
    Регистрация
    29.08.2012
    Адрес
    Анапа
    Сообщений
    610
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    6 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от goodboy Посмотреть сообщение
    ???
    Вопрос - как вызванный стандартной командой RANDOMIZE USR код будет знать где лежат в памяти какие-то параметры?

    Я когда-то издевался с POKE по нужным адресам перед вызовом USR, ессно тормозной вариант.
    «Земля - слишком маленькая и хрупкая корзина, для того чтобы человечество держало в ней все свои яйца…» - Роберт Энсон Хайнлайн.
    Электроника МК-61, Psion series 5mx.

    Всем умеющим читать советую http://www.skeptik.net/conspir/moonhoax.htm http://lurkmore.to/Лунный_заговор

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

    По умолчанию

    Цитата Сообщение от Бука Посмотреть сообщение
    Вопрос - как вызванный стандартной командой RANDOMIZE USR код будет знать где лежат в памяти какие-то параметры?
    Цитата Сообщение от goodboy Посмотреть сообщение
    в системных переменных содержится адрес с которого хранятся переданные значения
    только не говори что они плохо расписаны в мануалах
    Последний раз редактировалось goodboy; 26.12.2016 в 23:03.

  10. #19
    Veteran Аватар для Oleg N. Cher
    Регистрация
    24.08.2007
    Адрес
    Днепропетровская обл.
    Сообщений
    1,593
    Спасибо Благодарностей отдано 
    2,158
    Спасибо Благодарностей получено 
    130
    Поблагодарили
    96 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Вот пример передачи параметров из Basic в машкод через USR:

    Fill_2.tap.zip




    P.S. Смотрю с умилением, насколько сильна тяга писать именно на Бейсике. ;-)

  11. #20
    Master Аватар для Бука
    Регистрация
    29.08.2012
    Адрес
    Анапа
    Сообщений
    610
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    6 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от goodboy Посмотреть сообщение
    только не говори что они плохо расписаны в мануалах
    Переменные то расписаны, ага. DEFADD - но вот только в описании барсика нигде не говорится что DEF FN можно юзать для машкода.
    "Попробуй догадайся" (С)

    Короче забавная история...

    Последнее время таких много. Например про аппаратную возможность расширенного управления бипером и т.д.

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

    Цитата Сообщение от Oleg N. Cher Посмотреть сообщение
    насколько сильна тяга писать именно на Бейсике. ;-)
    20 лет назад была тяга писать на всём.

    А сейчас просто ностальгия и вот удивление что можно было так делать.
    «Земля - слишком маленькая и хрупкая корзина, для того чтобы человечество держало в ней все свои яйца…» - Роберт Энсон Хайнлайн.
    Электроника МК-61, Psion series 5mx.

    Всем умеющим читать советую http://www.skeptik.net/conspir/moonhoax.htm http://lurkmore.to/Лунный_заговор

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

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

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

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

Похожие темы

  1. Порча Бейсика-48 в ОЗУ
    от Максагор в разделе Программирование
    Ответов: 19
    Последнее: 12.01.2016, 22:54
  2. Спрайты из бейсика
    от Руслан в разделе Графика
    Ответов: 15
    Последнее: 26.07.2012, 20:54
  3. 30 часов БЕЙСИКА для начинающих
    от newart в разделе Пресса
    Ответов: 14
    Последнее: 13.05.2011, 13:35
  4. Ответов: 12
    Последнее: 09.01.2011, 16:31
  5. Диалекты Бейсика для ZX Spectrum
    от NUK в разделе Пресса
    Ответов: 6
    Последнее: 03.11.2009, 22:30

Ваши права

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