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

User Tag List

Страница 5 из 10 ПерваяПервая 123456789 ... ПоследняяПоследняя
Показано с 41 по 50 из 97

Тема: С чего начать

  1. #41
    Guru Аватар для jerri
    Регистрация
    01.03.2005
    Адрес
    Samara
    Сообщений
    4,752
    Спасибо Благодарностей отдано 
    264
    Спасибо Благодарностей получено 
    279
    Поблагодарили
    207 сообщений
    Mentioned
    12 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    обычно это делается так

    Код:
    org program
    ;здесь  твоя программа начинается
    
    ...
    
    
    display $ ;здесь твоя программа заканчивается
    ;по $ sjasm пишет текущий адрес
    
    или 
    
    display "free: ",#10000-$ ; пишет сколько до конца памяти
    С уважением,
    Jerri / Red Triangle.

  2. #42
    Veteran Аватар для Bedazzle
    Регистрация
    02.05.2015
    Адрес
    г. Таллин, Эстония
    Сообщений
    1,486
    Спасибо Благодарностей отдано 
    221
    Спасибо Благодарностей получено 
    149
    Поблагодарили
    115 сообщений
    Mentioned
    9 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от megozavr Посмотреть сообщение
    Подскажите, вот я работаю в zx-spin. Мне нужно понять сколько в кб "весит" мой текущий код. Нужно же знать сколько еще у меня запаса памяти на игру)
    Вычесть начальный адрес из следующего за последним использованным.


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

    По умолчанию

    Цитата Сообщение от Sergey Посмотреть сообщение
    Какой тонкий юмор! Я бы даже сказал, утончённый садизм.
    Заявив о медлительности индексной адресации, привести в качестве альтернативы одну значительно более медленную, а другую одинаковую по скорости процедуры. Да к тому же, в отличие от индексной адресации, требующих дополнительных регистров
    а чем мне поможет индексный регистр если например номер выбираемого слова из массива изначально неизвестен ???
    вот ещё пример

    HL==IX
    Код:
    LD L,(IX+0)
    LD H,(IX+1)
    альтернатива явно короче (размер/такты)
    Код:
    LD A,(HL)
    INC HL
    LD H,(HL)
    LD L,A

  4. #44
    Member
    Регистрация
    16.06.2008
    Адрес
    Челябинск
    Сообщений
    56
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Bedazzle как я понимаю, также можно посчитать размер и во вкладке memory. Где моя программа размещаеться с адреса 25000 до 29000, что составляет около 4кб.

  5. #45
    Veteran Аватар для Bedazzle
    Регистрация
    02.05.2015
    Адрес
    г. Таллин, Эстония
    Сообщений
    1,486
    Спасибо Благодарностей отдано 
    221
    Спасибо Благодарностей получено 
    149
    Поблагодарили
    115 сообщений
    Mentioned
    9 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от megozavr Посмотреть сообщение
    Bedazzle как я понимаю, также можно посчитать размер и во вкладке memory. Где моя программа размещаеться с адреса 25000 до 29000, что составляет около 4кб.
    Вероятно.
    Я Spin не использую (намного удобней собирать в sjasm, и затем грузить в эмуль).

  6. #46
    Activist Аватар для Sergey
    Регистрация
    23.12.2006
    Адрес
    Славный город Самара
    Сообщений
    473
    Спасибо Благодарностей отдано 
    94
    Спасибо Благодарностей получено 
    12
    Поблагодарили
    8 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от goodboy Посмотреть сообщение
    а чем мне поможет индексный регистр если например номер выбираемого слова из массива изначально неизвестен ???
    Интересно... Забавность ситуации в том, что альтернативу индексной адресации ты предложил, как раз, в ответ на пример для заранее известных смещений.
    С уважением,
    Gris / Red Triangle.
    _____________________________________
    ZX-EVO/TS-Labs config/NGS/HDD/SD-card
    Amiga A1200/Blizzard 1230@50/32/60GB
    Amiga A1200/Apollo 1260@66/32/60GB
    UnAmiga (C5) AGA GM7123 VideoDAC

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

  8. #47
    Junior
    Регистрация
    31.03.2016
    Адрес
    г. Санкт-Петербург
    Сообщений
    20
    Записей в дневнике
    3
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    11
    Поблагодарили
    3 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от megozavr Посмотреть сообщение
    Доброго времени! Надеюсь не ошибся темой. Допустим хочу научиться кодить под speccy (через эмулятор, реала нет), то с чего начать, Конкретно алгоритм изучения?! Изучить структуру - изучить ассемблер- изучить приемы. А может сразу начать с книги как написать игру для zx ?! Коннечно у каждого кодера свой путь но все же. Еще в далеко 2000-м один из профи сказал начать изучать с : Программирование в машинных кодах и на языке АССЕМБЛЕРА - Инфорком'93, своеобразной библии на тот момент. Был неб. опыт на васике, если чес и его подзабыл. Вообщем буду благодарен за конкретный вариант...типа сначала это потом это потом то! Если не трудно то напишите)
    Приветствую.

    То что вы спрашиваете, я называю путь "программирования извне". То есть программировать утилитами и средствами из среды PC для Спектрума, а не средствами Спектрума для нужд самого Спектрума (типа Zeus, Gens-Mons и пр.). Я пробовал именно с первого варианта.

    Понимаю, что отвечаю с запозданием, но я только вчера тут зарегистрировался. Я сам в программировании не соображал, когда был реальный ZX-совместимый. Немного знал BASIC, а команда RANDOMIZE USR ... казалась дверью в другой неизвестный и яркий мир. К сожалению эта дверь долгое время для меня оставалась наглухо закрытой. Как алхимики в старину, в детстве, я пытался найти такую волшебную программу или "золотой ключик на Бейсике", который внезапно превратит содержимое, прячущееся за неприступной дверью с надписью "RANDOMIZE USR" в понятную BASIC программу. И все время недоумевал, почему же все красочные игры расположены в "таинственных ячейках", а всякая ерунда делается в открытом BASIC... Эх юность-детство. А сбил меня с толку злосчастный ToBoS-FP из игры STEK-D, который только подлил масла в огонь.

    Теперь по поводу советов. Каждый человек индивидуален, и поэтому способ, который подходит одному человеку, может не подойти другому.
    Лично я с нуля натренировался очень просто практическим способом с теоретической подсказкой, которая всегда лежала под рукой. Еще в 2000-х кто-то из коллег по работе разгребая завалы, презентовал мне бумажное издание книги Родионова и Ларченко "ZX-SPECTRUM для пользователей и программистов". На мой взгляд это самая удачная книга. Так вот, там четко и ясно с 60-й по 95-ю страницу описана работа компьютера и принцип действия команд. Доходчиво описана.
    А с практикой все просто. Открываете Spectaculator, загружаете в него любимую игру, выставляете в DEBUGGER'е точки прерывания в интересных, на Ваш взгляд, местах со стартового адреса. И вперед:



    Внимательно наблюдаете за курсором который гуляет по командам, а следом за ним меняются значения регистров в окошке и содержимое ячеек. Записываете на бумагу или текстовый файл добытые знания, тренируетесь с короткими подпрограммами. Одновременно вспоминайте, какие действия стоят за теми или этими событиями в Вашей любимой игре. Меняйте содержимое ячеек, смотрите на результат, выписывайте короткие программы и пробуйте их запускать отдельно от игры... Компьютер рестартнулся? Не страшно! Снова вставляйте, анализируйте причину.
    В играх, в отличие от сухих теоретических книжных знаний, вы будете запоминать разные методы решения тех или иных проблем, выверты программистов с недокументированными особенностями, половинками индексных регистров, нецелевым использованием машинного стека (например для закраски экрана), и прочими шедеврами. Со временем навскидку будете отсортировывать графическо-текстовые ресурсы, карты полей и переменных, отображаемые командами ассемблера, от последовательности команд реально исполняемой программы.
    Первая изучаемая игра пойдет тяжело, но в конечном итоге вы будете раскатывать игры средней сложности довольно быстро, и черпать оттуда бесценный опыт программирования.
    Но проще начинать с простых и коротких программ. Отличный базовый навык можно приобрести изучая Debugger'ом пакеты программ SUPERCODE. Они достаточно короткие и станут настоящей находкой.

    Следует сразу понять, что BASIC это, грубо говоря, оболочка, которая по сути такая-же машинная программа, расположенная в ПЗУ. Изучая дизассемблер интерпретатора, можно также подчерпнуть массу полезных идей, состоящих из машинных процедур. Поэтому, поковырять отдельные куски BASIC-системы через Debugger тоже стоит.

    Создание программ и компиляция. Как мне кажется, проще и удобнее, чем EmulZWin средств просто нет. Никаких дополнительных команд. Одна директива ORG (или несколько в разные точки) с адресом размещения. Все! Создал txt файл в блокноте Windows, написал какую-нибудь простенькую коротенькую программку. Две манипуляции пальцами CTRL+C - CTRL+V в эмулятор, Compile. И... программа готова:



    Сохраняй в .Z80 и работай в любом эмуляторе, записывай в любой полюбившийся формат... В общем, у меня метод изучения машинного языка был такой. Возможно что-то из моего опыта Вам приглянется.
    Последний раз редактировалось Yuri80; 01.04.2016 в 21:55.

  9. #48
    Member Аватар для Photocor
    Регистрация
    27.06.2017
    Адрес
    г. Жуковский
    Сообщений
    164
    Спасибо Благодарностей отдано 
    44
    Спасибо Благодарностей получено 
    7
    Поблагодарили
    6 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Как задача-максимум для начала изучения "кодинга" почему-то придумалась игра "Бега" из одноименного игрового автомата 80х. Бежит лошадка по прямой, навстречу ей бугорки, которые надо перепрыгивать. Стал мониторить форум, с чего бы начать. Путевой камень куда можно пойти на этой развилке в виде темы http://zx-pk.ru/threads/5335-posetit...-razdela!.html нашел, начал читать легендарную "Как написать игру на ассемблере". Эта тема дала дополнительную пищу для размышлений. Спасибо всем, кому не жалко потратить время на новичков. Может, мы ничего и не добьемся, бросив в самом начале, но сам процесс пробования уже приносит эндорфины - поэтому надо пробовать.

  10. #49
    Guru Аватар для null_device
    Регистрация
    26.09.2009
    Адрес
    г. Красноярск
    Сообщений
    3,100
    Спасибо Благодарностей отдано 
    22
    Спасибо Благодарностей получено 
    84
    Поблагодарили
    68 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Photocor Посмотреть сообщение
    игра "Бега" из одноименного игрового автомата 80х
    Вот этот?

    Когда есть, но не знаешь где - это все равно, что нету.

  11. #50
    Member Аватар для Photocor
    Регистрация
    27.06.2017
    Адрес
    г. Жуковский
    Сообщений
    164
    Спасибо Благодарностей отдано 
    44
    Спасибо Благодарностей получено 
    7
    Поблагодарили
    6 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от null_device Посмотреть сообщение
    Вот этот?
    Да-да, но мне попадался только полностью черно-белый )) Показалось, что это самая элементарная задачка.

Страница 5 из 10 ПерваяПервая 123456789 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. БК-0011: С чего начать, или вопросы нуба
    от BYTEMAN в разделе БК-0010/0011
    Ответов: 82
    Последнее: 13.06.2021, 22:20
  2. Голая Амига с чего начать
    от alex51 в разделе Amiga
    Ответов: 335
    Последнее: 22.02.2016, 00:26
  3. Электроника МС 0511 с чего начать?
    от AHTuXPuCT в разделе ДВК, УКНЦ
    Ответов: 16
    Последнее: 22.11.2012, 14:30
  4. sdcc. с чего начать.
    от ALKO в разделе Программирование
    Ответов: 42
    Последнее: 16.09.2012, 15:49
  5. C чего начать геймдэв для горбатыша?
    от ALKO в разделе Для начинающих
    Ответов: 69
    Последнее: 24.01.2012, 15:49

Ваши права

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