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

User Tag List

Страница 3 из 8 ПерваяПервая 1234567 ... ПоследняяПоследняя
Показано с 21 по 30 из 79

Тема: Специалист: программирование на ассемблере

  1. #21

    Регистрация
    13.01.2005
    Адрес
    г. Москва
    Сообщений
    5,215
    Записей в дневнике
    7
    Спасибо Благодарностей отдано 
    706
    Спасибо Благодарностей получено 
    1,648
    Поблагодарили
    573 сообщений
    Mentioned
    50 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от HardWareMan Посмотреть сообщение
    Но увы, мнемоники Z80 на Специалисте у меня вызывают отторжение.
    Я уверен, что тоже бы негодовал, если бы сам программировал на Специалисте как положено, то есть в мнемониках i8080.
    С уважением, Станислав.

  2. #22
    HardWareMan
    Гость

    По умолчанию

    Цитата Сообщение от CityAceE Посмотреть сообщение
    Я уверен, что тоже бы негодовал, если бы сам программировал на Специалисте как положено, то есть в мнемониках i8080.
    Просто это началось в 1988 году и непрерывно продолжалось практически до 1994. А потом от случая к случаю. Поэтому, это сродни ощущению носителя языка, когда он слышит жёсткий акцент иммигранта.
    Ладно, это личное, против кино ничего не имею, снято круто, наполнение годное. Настоятельно рекомендую тебе продолжать свою деятельность.

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

    CityAceE(10.01.2024)

  3. #23

    Регистрация
    13.01.2005
    Адрес
    г. Москва
    Сообщений
    5,215
    Записей в дневнике
    7
    Спасибо Благодарностей отдано 
    706
    Спасибо Благодарностей получено 
    1,648
    Поблагодарили
    573 сообщений
    Mentioned
    50 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    HardWareMan, я тебя отлично понимаю! Но для меня, к сожалению (или же к счастью), родные мнемоники i8080 ровным счётом ничего не значат. Скорее всего именно поэтому я так бесцеремонно, без угрызений совести, не только сам программирую, но и показываю остальным, как это делать в "неправильных" мнемониках Z80. Скорее всего это произошло из-за того, что когда Специалист был моим первым и единственным компьютером, я не умел программировать на ассемблере. У меня не было знакомых, которые могли бы меня чему-то научить. Единственным источником информации по Специалисту для меня были журналы Моделист-Конструктор. Ну и то, что я сам смог накопать, ковыряясь через Монитор в играх. А ассемблер в моей жизни появился позже, когда я обзавёлся Спектрумом. И мнемоника Z80 - это единственное, что на сегодня я знаю без справочников. Например, сейчас я могу на Python не пописать пару месяцев, а потом даже не вспомнить какой синтаксис у цикла. Я ассемблер ARM трижды с нуля учил, потому что делал перерыв и всё начисто забывал. А с Z80 всё иначе. Это первые знания, которые были получены в молодом возрасте на пике энтузиазма. Полагаю, что у тебя так с i8080, и мои методы, естественно, кажутся тебе кощунственными.
    Последний раз редактировалось CityAceE; 11.01.2024 в 14:45.
    С уважением, Станислав.

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

    tihsasha(24.04.2024)

  4. #24
    HardWareMan
    Гость

    По умолчанию

    CityAceE, ты, кстати, выводил надпись на спецтрумский манер (что логично, используя мнемоники Z80 - ФЬЮТЬ-ХА!). А ты выводи теперь по-Спецовски, 6х8. Я не советую тебе ковырять монитор, его вывод символа медленный из-за использования стека, но могу подкинуть часть своего BIOS. Если решишь использовать в своём новом кино - я не против.

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

    CityAceE(11.01.2024)

  5. #25

    Регистрация
    24.01.2008
    Адрес
    Уфа
    Сообщений
    3,926
    Спасибо Благодарностей отдано 
    105
    Спасибо Благодарностей получено 
    291
    Поблагодарили
    217 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от CityAceE Посмотреть сообщение
    Единственным источником информации по Специалисту для меня были журналы Моделист-Компьютер.
    Ну да, конечно, Компьютер...

  6. #26

    Регистрация
    13.01.2005
    Адрес
    г. Москва
    Сообщений
    5,215
    Записей в дневнике
    7
    Спасибо Благодарностей отдано 
    706
    Спасибо Благодарностей получено 
    1,648
    Поблагодарили
    573 сообщений
    Mentioned
    50 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от b2m Посмотреть сообщение
    Ну да, конечно, Компьютер...
    Оговорочка по Фрейду, как говорится
    С уважением, Станислав.

  7. #27

    Регистрация
    13.01.2005
    Адрес
    г. Москва
    Сообщений
    5,215
    Записей в дневнике
    7
    Спасибо Благодарностей отдано 
    706
    Спасибо Благодарностей получено 
    1,648
    Поблагодарили
    573 сообщений
    Mentioned
    50 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от HardWareMan Посмотреть сообщение
    А ты выводи теперь по-Спецовски, 6х8.
    Ну да, так было бы правильнее. Показать как это делается с помощью вызова процедуры из ПЗУ, а затем продемонстрировать реализацию этого метода с нуля. Однако в твоих же исходниках есть такой комментарий относительно процедуры вывода символа на экран:
    Код:
    ; Вывод символа
    ; Самая муторная подпрограмма
    Вот именно по этой причине я решил продемонстрировать создание процедуры печати со шрифтом, у которого ширина кратна байту. Но за базовые процедуры спасибо. Я их перевёл в понятную мне мнемонику и скомпилировал с помощью SJAsmPlus:



    Но, видимо, где-то ошибся при конвертировании, так как выше нижней строчки поднять текст никак не получается. Для вывода использую процедуру OutText, а координаты записываю в ячейки CurX и CurY.
    Вложения Вложения
    • Тип файла: 7z bios.7z (5.7 Кб, Просмотров: 51)
    Последний раз редактировалось CityAceE; 11.01.2024 в 19:01.
    С уважением, Станислав.

  8. #28

    Регистрация
    07.08.2008
    Адрес
    г. Уфа
    Сообщений
    8,391
    Спасибо Благодарностей отдано 
    763
    Спасибо Благодарностей получено 
    2,367
    Поблагодарили
    1,317 сообщений
    Mentioned
    39 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Ты пробовал CurY от 9 до 255?

  9. #29
    HardWareMan
    Гость

    По умолчанию

    Цитата Сообщение от ivagor Посмотреть сообщение
    Ты пробовал CurY от 9 до 255?
    Там 0:0 это левый верхний угол. И ЕМНИП координатная логика полностью повторяет мониторовскую. Всмысле, X это координата с шагом 2 точки, а Y - с шагом в 1 точку, но 0-7 эквивалентны 8. Сами ячейки должны быть в ОЗУ и инициироваться до вывода символа. Либо можно вставить код #0C перед текстом (или даже #1F). Первый просто отправит текст домой (в левый верхний угол), а второй при этом ещё и экран очистит.

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

    PS В комментах может быть путаница, имейте в виду.

  10. #30

    Регистрация
    13.01.2005
    Адрес
    г. Москва
    Сообщений
    5,215
    Записей в дневнике
    7
    Спасибо Благодарностей отдано 
    706
    Спасибо Благодарностей получено 
    1,648
    Поблагодарили
    573 сообщений
    Mentioned
    50 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ivagor Посмотреть сообщение
    Ты пробовал CurY от 9 до 255?
    Да, конечно. Я же посмотрел логику:
    Код:
                   lda     CurX            ;
                   ani     0FCh            ;
                   rrc                     ;
                   rrc                     ;
                   adi     90h             ;
                   mov     h,a             ;
                   lda     CurY            ;
                   cpi     08h             ;
                   jnc     OutSymCrd       ;
                   mvi     a,08h           ;
                   sta     CurY            ;
    OutSymCrd:     sui     08h             ;
                   mov     l,a             ; [HL] верх координаты

    Код:
                   ld      a,(CurX)        ;
                   and     a,0FCh          ;
                   rrca                    ;
                   rrca                    ;
                   add     a,90h           ;
                   ld      h,a             ;
                   ld      a,(CurY)        ;
                   cp      a,08h           ;
                   jp      nc,OutSymCrd    ;
                   ld      a,08h           ;
                   ld      (CurY),a        ;
    OutSymCrd:     sub     a,08h           ;
                   ld      l,a             ; [HL] верх координаты
    С уважением, Станислав.

Страница 3 из 8 ПерваяПервая 1234567 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Программирование на ассемблере
    от shuran33 в разделе Вектор
    Ответов: 341
    Последнее: 05.11.2025, 20:00
  2. Программирование на ассемблере
    от tnt23 в разделе Океан-240
    Ответов: 6
    Последнее: 30.10.2025, 12:56
  3. Ответов: 22
    Последнее: 12.02.2023, 16:13
  4. Ответов: 275
    Последнее: 16.12.2018, 23:01
  5. Продам книгу- AMIGA: программирование на ассемблере
    от Doctor Max в разделе Барахолка (архив)
    Ответов: 11
    Последнее: 01.03.2012, 00:35

Ваши права

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