User Tag List

Страница 15 из 35 ПерваяПервая ... 111213141516171819 ... ПоследняяПоследняя
Показано с 141 по 150 из 342

Тема: Программирование на ассемблере

  1. #141

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

    По умолчанию

    Цитата Сообщение от svofski Посмотреть сообщение
    Мне казалось, что то, что ты делаешь, это по сути бейсиковский пейнт. То есть flood fill.
    Изначально я отталкивался от бейсиковской процедуры, хотя потом ушел довольно далеко. В бейсике (да и практически везде, кроме рембрандта) примерно вот такой scanline fill.

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

    Ты, как я понимаю скорее о вот таком scanline. Такой вариант несколько из другой оперы, хотя я изобрел велосипед и использовал элементы такого подхода в V13.

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

    Наверно самый правильный вариант - называть то, что используется в бейсиках и графических редакторах Scanline Floodfill with stack.

  2. #142

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

    По умолчанию

    Цитата Сообщение от b2m Посмотреть сообщение
    Закраска была бы быстрее, если бы не надо было постоянно переключать карту памяти для доступа к разным битовым планам.
    В следующем посте я написал
    Цитата Сообщение от ivagor Посмотреть сообщение
    Смотря с чем сравнивать. mvi+out - 7+10=17 тактов, если без тормозов. Или 8+12=20 было бы на векторе. У вектора аналогичный по занятию регистров вариант перехода между плоскотями mvi+add+mov - 8+4+8=20 тактов. "Быстрый" dad не всегда получается использовать, т.к. выигрыш от него съест сохранение/восстановление регистров.
    Но я оставил за бортом частный случай, когда 2 плоскости (не 3 и не 4) доступны без переключения страниц, типа искры. Тут самым быстрым похоже будет вариант с выделением двух регистровых пар под адреса. Хотя выигрыш будет не на полную величину переключений, они уйдут, но вместо них добавится inr/dcr для второй регистровой пары. Для такого обращения с 3мя или 4мя плоскостми у ВМ80 регистров не хватит. Для 3х хватит у 580ВМ1, для 4х - у z80.
    Последний раз редактировалось ivagor; 07.01.2019 в 14:49.

  3. #143

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

    По умолчанию

    Еще капелька велосипедизма. При цветной заливке с произвольной маской можно обойтись без теневого буфера (V24) и без разных видов буферов координат обработанных строк (V13, V16).
    2 этапа:
    1. Заливаем цветом, отличающимся от цвета границы и от цветов заливки.
    2. По выбранному цвету заливаем произвольной маской.
    Это точно медленнее V24 и V13, зато не нужны дополнительные большие буферы. В V16 буфер маленький, им можно практически пренебречь при сравнении. По скорости - если в маске нет или мало нулевых строк, то V16 будет быстрее, в лучшем случае раза в два. Наоборот, если почти все строки маски пустые, то вариант с промежуточной заливкой скорее всего будет более быстрым.

  4. #144

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

    По умолчанию

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

  5. #145

    Регистрация
    27.08.2019
    Адрес
    г. Ростов-на-Дону
    Сообщений
    1,034
    Спасибо Благодарностей отдано 
    467
    Спасибо Благодарностей получено 
    194
    Поблагодарили
    125 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Дорогие друзья, Рад что есть такой форум.. НЕдавно присоединился, вспомнил комп, который был у меня 25 лет назад, посидел в эмуляторе, и сейчас уже нашел железный вектор, который через пару недель приедет ко мне из Минска...

    В целом, основной целью моего возвращения к Вектору является Ассемблер 8080.. И сейчас, пока что на эмуляторе я с ним разбираюсь...

    И у меня появились некоторые вопросы, если кто то может помочь мне в этом, или по крайней мере намекнуть что нибудь, буду очень благодарен !

    Один из первых вопросов - как на асемблере 8080 в частности на Векторе обратиться к текстовому файлу, находящемуся на дискете или жестком диске, с определенным именем, прочитать определенное количество строк из него ? всего этого нет в руководстве по ассемблеру вроде, векторовскому.. Помогите пожалуйста разобраться, или по крайней мере скажите, где можно информацию поискать ?

    Есть еще вопрос, не маловажный, сейчас в основном я пользуюсь Pretty 8080 Assembler, огромное спасибо его создателю !!! Но есть желание освоить что то более консервативное, железное, и работающее под вин10, при всем, способное компилить код для вектора. Есть ли что то такое? В этой ветке я обнаружил ссылку на "Пакет для i8080: WinAsm Studio + fasm g" но так и не понял до конца, как всем этим пользоваться. С ассемблером я никогда не имел дела, работал в borland kylix, lazarus, GNU С Builder, ну и разными интерпретаторами типа бейсика, php+javascript, phyton, C# и прочим... Очень хочу разобраться в Ассемблере. Заранее благодарен за ответ !!!

  6. #146

    Регистрация
    06.02.2018
    Адрес
    г. Волгоград
    Сообщений
    1,065
    Спасибо Благодарностей отдано 
    582
    Спасибо Благодарностей получено 
    471
    Поблагодарили
    253 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от electroscat Посмотреть сообщение
    Один из первых вопросов - как на асемблере 8080 в частности на Векторе обратиться к текстовому файлу, находящемуся на дискете или жестком диске, с определенным именем, прочитать определенное количество строк из него ? всего этого нет в руководстве по ассемблеру вроде, векторовскому.. Помогите пожалуйста разобраться, или по крайней мере скажите, где можно информацию поискать ?
    Уже ответил тут, немного дополню: ещё можно посмотреть исходники чужих программ, и, естественно, различные периодические издания тех лет.

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

    shapipovo(23.12.2019)

  7. #147

    Регистрация
    20.06.2007
    Адрес
    С.-Петербург
    Сообщений
    4,299
    Спасибо Благодарностей отдано 
    1,028
    Спасибо Благодарностей получено 
    813
    Поблагодарили
    484 сообщений
    Mentioned
    26 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Что до файлов итд, сам я для справки пользовался бы современным справочником с вызовами BDOS CP/M. Их много. Вот, например, нашелся такой:
    http://members.iinet.net.au/~daveb/cpm/bdos.html
    Там проще искать, чем в сканах старинных манускриптов. А совпадение с МикроДОС почти полное.
    Больше игр нет

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

    shapipovo(23.12.2019)

  8. #148

    Регистрация
    27.08.2019
    Адрес
    г. Ростов-на-Дону
    Сообщений
    1,034
    Спасибо Благодарностей отдано 
    467
    Спасибо Благодарностей получено 
    194
    Поблагодарили
    125 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

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

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

    Цитата Сообщение от svofski Посмотреть сообщение
    Что до файлов итд, сам я для справки пользовался бы современным справочником с вызовами BDOS CP/M. Их много. Вот, например, нашелся такой:
    http://members.iinet.net.au/~daveb/cpm/bdos.html
    Там проще искать, чем в сканах старинных манускриптов. А совпадение с МикроДОС почти полное.
    Очень благодарен! спасибо за ссылки, буду изучать !

  9. #149

    Регистрация
    02.01.2007
    Адрес
    Волгоград, Россия
    Сообщений
    1,454
    Спасибо Благодарностей отдано 
    195
    Спасибо Благодарностей получено 
    161
    Поблагодарили
    99 сообщений
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от x-code Посмотреть сообщение
    Про сейчас и речи нет! Разумеется, я и сам свои эксперименты с вертикальным скроллом пятилетней давности писал на PC и загонял для компиляции в эмуляторе Вектора на образ дискеты через плагин в FAR. А знал бы тогда про tasm - и так бы не мучился

    Меня съедало любопытство, как программировали тогда, в конце 80х-начале 90х, но, наверное, достоверно мы этого уже не узнаем, а все правдоподобные гипотезы в этой теме уже обсудили
    В "те самые" годы я был очень дружен с Сергеем Новиковым и неоднократно бывал у него дома. "Вектором" я тогда не интересовался, но помню, что РС у него в то время не было. Квазидиск - да, был, дисковод - вроде бы, тоже. Но РС не было.

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

    lafromm31(01.10.2019)

  10. #150

    Регистрация
    27.08.2019
    Адрес
    г. Ростов-на-Дону
    Сообщений
    1,034
    Спасибо Благодарностей отдано 
    467
    Спасибо Благодарностей получено 
    194
    Поблагодарили
    125 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Дорогие друзья, хочу представить програмку, которую я написал на базе дизасемблированной CMU2 с базиса. Программа работает и в досе, и без него. Скажу сразу, программа для реального вектора, потому что у эмулятора бит входа с магнитофона всегда в 1, и соответственно на экране все что можно при отсутствии сигнала, ну а при наличии (например при вводе какого нибудь WAV) - в целом примерно похоже на реал, вопрос только в том, что тот формат WAV который понимает эмулятор - это уже искажения сплошные в плане качества звука. А на реальном компе я просто подключаю на вход магитофона линейный выход компьютера, или плеера, разветвляю его переходником, чтобы еще и в колонки вывести, и качество звука норм, и эффекты выводятся..

    В общем, програмка - это ЦМУ, которая в отличии от стандартных, имеющих место среди программ для вектора ЦМУ - выводит разные смайлы 8Х8 разных цветов. Управление - СС - смена смайла, УС - автоматическая смена смайлов. УС пока не с первого раза работает, и нужно подержать немного, но думаю со временем исправлю... Решил поделиться в связи с восстановлением форума, поздравляю друзья !!!

    https://yadi.sk/d/p8ZXTM_ZPeidCQ




    В архиве по ссылке есть скриншоты вывода программы.

    В архиве два файла, с разными палитрами. Одна по ярче, другая по бледнее.

    С программой работал не на векторе, хочу поблагодарить создателей и поддерживающих "Прекрасного Ассемблера" Это очень хороший проект. Очень выручал. Но основную массу времени я пользовался The Telemark Assembler (TASM) Version 3.2.
    Последний раз редактировалось electroscat; 22.12.2019 в 17:06.

    Эти 3 пользователя(ей) поблагодарили electroscat за это полезное сообщение:

    Improver(23.12.2019), PPC(28.12.2019), svofski(23.12.2019)

Страница 15 из 35 ПерваяПервая ... 111213141516171819 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Вычисление числа Пи на ассемблере
    от perestoronin в разделе Разное
    Ответов: 330
    Последнее: 06.08.2025, 15:04
  2. Ответов: 275
    Последнее: 16.12.2018, 23:01
  3. try-catch на ассемблере z80
    от siril в разделе Программирование
    Ответов: 22
    Последнее: 30.10.2012, 21:17
  4. Продам книгу- AMIGA: программирование на ассемблере
    от Doctor Max в разделе Барахолка (архив)
    Ответов: 11
    Последнее: 01.03.2012, 00:35
  5. Подпрограмма на ассемблере в памяти?
    от jimled в разделе Программирование
    Ответов: 1
    Последнее: 29.11.2009, 06:46

Ваши права

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