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

User Tag List

Страница 35 из 36 ПерваяПервая ... 313233343536 ПоследняяПоследняя
Показано с 341 по 350 из 353

Тема: Секреты и трюки программирования (в том числе и игр) для РК-86

  1. #341
    Veteran Аватар для Pyk
    Регистрация
    05.04.2013
    Адрес
    с. Починки, Нижегородская обл.
    Сообщений
    1,181
    Спасибо Благодарностей отдано 
    263
    Спасибо Благодарностей получено 
    457
    Поблагодарили
    182 сообщений
    Mentioned
    7 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от NEO SPECTRUMAN Посмотреть сообщение
    Реквестируются
    результаты (40 фоток\скриншотов) работы на разных телеках\тв тюнерах
    Вот результаты на моем ТВ-тюнере:
    https://yadi.sk/d/5BZy6k4G3GcV9A
    К сожалению, нет возможности пока подключить в цвете - надо либо схему типа video doctor от vinxru паять либо что-то другое изобретать...
    В принципе, есть PAL-кодер от nedopc, но по-моему, кто-то уже писал, что с сигналом Апогея он просто так работать не будет...

    Цитата Сообщение от NEO SPECTRUMAN Посмотреть сообщение
    и впилевание поддержки эффекта в emu80
    Что-то я не уверен, что эта дрожащая картинка стоит поддержки в эмуляторе. Хотя, если получится добиться стабильных результатов на разных устройствах... тогда можно будет подумать над этим...

  2. #342
    Banned
    Регистрация
    22.05.2011
    Адрес
    г. Дзержинск, Украина
    Сообщений
    6,841
    Спасибо Благодарностей отдано 
    483
    Спасибо Благодарностей получено 
    658
    Поблагодарили
    512 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Pyk Посмотреть сообщение
    дрожащая картинка
    а как проявляет себе дрожание?
    оно дрыгается?
    или на каждой картинке стабильное изображение?
    и просто смещение строк


    оно на каждой картинке?

    некоторые из них и так могут вызывать смещение

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

    Цитата Сообщение от Pyk Посмотреть сообщение
    К сожалению, нет возможности пока подключить в цвете
    по идеи кроме фона еще будут окрашены и сами столбики
    и того на картинке должно быть видно под 70 цветов
    Последний раз редактировалось NEO SPECTRUMAN; 03.04.2017 в 22:49.

  3. #343
    Veteran Аватар для Pyk
    Регистрация
    05.04.2013
    Адрес
    с. Починки, Нижегородская обл.
    Сообщений
    1,181
    Спасибо Благодарностей отдано 
    263
    Спасибо Благодарностей получено 
    457
    Поблагодарили
    182 сообщений
    Mentioned
    7 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от NEO SPECTRUMAN Посмотреть сообщение
    а как проявляет себе дрожание?
    Похоже, что это в самом Апогее какие-то наводки при пониженной яркости. В общем, вот:
    https://yadi.sk/d/RRbkKNzy3GcXuG

  4. #344
    Banned
    Регистрация
    22.05.2011
    Адрес
    г. Дзержинск, Украина
    Сообщений
    6,841
    Спасибо Благодарностей отдано 
    483
    Спасибо Благодарностей получено 
    658
    Поблагодарили
    512 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Расматриваю результаты.

    В вашем случае на фон прет содержимое только двух последних знакомест
    точнее участок в одно знакоместо между 2-мя
    (видно по 20-му тесту)

    как и предполагалось в инверсированном виде

    при этом вполне можно смешивать 2 разных цвета (видно по 21-му тесту)

    разрешение довольно высокое
    можно рассмотреть каждую пиксельную строку
    задеркжа в одну строку
    (видно на тестах 29,32)

    при плавной смене цветов искажений(смещение по оси Х) практически не видно

    Для вашего случая тесты 5,7,8,9,10,11,12,13,14,15,16,17,18,28,31,34,37,40
    к сожалению не актуальны

    самое интересное что в данном случае
    фон остается не изменным кроме варианта когда за границей экрана ничего нет вообще (черный бордюр)
    вот тогда фон немножко прибавляет яркости

    а яркость нормально меняется только у светящихся точек...





    ...интересно что это за кубоид справа снизу о_О
    в видео памяти его нет...

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

    Цитата Сообщение от Pyk Посмотреть сообщение
    Похоже, что это в самом Апогее какие-то наводки при пониженной яркости. В общем, вот:
    как по мне хорошее изображение
    стабильное но с какими то шумами
    (чего я не впилил обычный экран без каких либо эффектов о_О)

    щас быстренько сделаю закину

    вот
    0001.zip

    00 - без каких либо эффектов
    с него же стартует

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


    вот последние достижения
    как минимум 56 цветов (4 раза подряд) во всей своей красе
    Нажмите на изображение для увеличения. 

Название:	02.jpg 
Просмотров:	270 
Размер:	30.5 Кб 
ID:	60471
    правда на чернобелом телевизоре
    Последний раз редактировалось NEO SPECTRUMAN; 04.04.2017 в 18:09.

  5. #345
    Banned
    Регистрация
    22.05.2011
    Адрес
    г. Дзержинск, Украина
    Сообщений
    6,841
    Спасибо Благодарностей отдано 
    483
    Спасибо Благодарностей получено 
    658
    Поблагодарили
    512 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    тк тут дополнительных цветных результатов тестов по управлению яркостью фона
    до сих пор нету

    обсуждение получения Hires-а переезжает в другую тему
    http://zx-pk.ru/threads/27593-progra...adio-86rk.html

  6. #346
    Master
    Регистрация
    21.08.2006
    Адрес
    Ижевск
    Сообщений
    910
    Спасибо Благодарностей отдано 
    20
    Спасибо Благодарностей получено 
    272
    Поблагодарили
    149 сообщений
    Mentioned
    12 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от NEO SPECTRUMAN Посмотреть сообщение
    тк тут дополнительных цветных результатов тестов по управлению яркостью фона
    до сих пор нету
    Может, никому это не нужно
    Цитата Сообщение от NEO SPECTRUMAN Посмотреть сообщение
    Реквестируются
    результаты (40 фоток\скриншотов) работы на разных телеках\тв тюнерах

    Цитата Сообщение от NEO SPECTRUMAN Посмотреть сообщение
    и впилевание поддержки эффекта в emu80
    Можно. И только ради того что бы показать *****код (рисование на бордюрах)

    Ссылка на некоторые результаты (не вечная).

    ---

    Upd: уточнил название чипа в тюнере. Обновил его драйвера и софт. В новом софте доступна опция режима горизонтальной синxронизации. Снял видео в режиме "Poor Signal".
    Последний раз редактировалось DDp; 16.04.2017 в 16:52.
    D356 47C0 35F8 F55E 8A52 A88F F3F8 B003 03EB 3D7F

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

  8. #347
    Activist Аватар для SegaBoy
    Регистрация
    12.11.2009
    Адрес
    Москва
    Сообщений
    390
    Спасибо Благодарностей отдано 
    37
    Спасибо Благодарностей получено 
    80
    Поблагодарили
    59 сообщений
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от NEO SPECTRUMAN Посмотреть сообщение
    тк тут дополнительных цветных результатов тестов по управлению яркостью фона
    до сих пор нету
    На маленьком жк-тв, к которому у меня подключён Апогей, никаких эффектов яркости не наблюдается. Во всех 40-а тестах вертикальные цветные полосы на чёрном фоне - уровень яркости у фона и самих полос одинаковый, сверху-донизу, и не меняется от теста к тесту.
    Сейчас Апогей с отпаяной клавиатурой - как соберу его обратно, могу проверить на ещё двух жк-тв. Но есть вероятность что и там никаких эффектов заметно не будет.

  9. #348
    Banned
    Регистрация
    22.05.2011
    Адрес
    г. Дзержинск, Украина
    Сообщений
    6,841
    Спасибо Благодарностей отдано 
    483
    Спасибо Благодарностей получено 
    658
    Поблагодарили
    512 сообщений
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от DDp Посмотреть сообщение
    Можно. И только ради того что бы показать *****код (рисование на бордюрах)
    Ну во первых эффект теплый и ламповый (то есть возникает на реальном железе)
    во вторых если я буду что то делать я буду его использовать

    и на помню что в eightyone эмулируются даже помехи от проца на экране...
    (хотя и не на каждом видео на ютубе их и видно(у некоторых идеально чистый экран...))

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

    что то мне сходу не дошло что тапки летят не в мою сторону...

    Цитата Сообщение от DDp Посмотреть сообщение
    Может, никому это не нужно
    может

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

    Да
    результаты 0001.rka.SAA7135.RGB
    впечатляют (меня)
    я ожидал более слабого эффекта
    такие симпатичные цветные градиенты
    вот бы так вели себя все телевизоры!!!

    Нажмите на изображение для увеличения. 

Название:	28.JPG 
Просмотров:	263 
Размер:	38.4 Кб 
ID:	60564Нажмите на изображение для увеличения. 

Название:	18.JPG 
Просмотров:	740 
Размер:	29.6 Кб 
ID:	60561Нажмите на изображение для увеличения. 

Название:	05.JPG 
Просмотров:	246 
Размер:	32.2 Кб 
ID:	60558Нажмите на изображение для увеличения. 

Название:	16.JPG 
Просмотров:	286 
Размер:	34.8 Кб 
ID:	60560Нажмите на изображение для увеличения. 

Название:	26.JPG 
Просмотров:	208 
Размер:	32.0 Кб 
ID:	60563Нажмите на изображение для увеличения. 

Название:	25.JPG 
Просмотров:	196 
Размер:	29.8 Кб 
ID:	60562Нажмите на изображение для увеличения. 

Название:	07.JPG 
Просмотров:	351 
Размер:	25.2 Кб 
ID:	60559

    Цитата Сообщение от DDp
    а видео даже еще лучше
    видно чаво нельзя делать
    и как при этом срывается синхронизация

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

    Цитата Сообщение от DDp Посмотреть сообщение
    (не вечная).
    оставьте 0001.rka.SAA7135.RGB
    выглядит не плохо
    весит не много
    Последний раз редактировалось NEO SPECTRUMAN; 09.04.2017 в 18:00.

  10. #349
    Guru Аватар для Denn
    Регистрация
    04.05.2006
    Адрес
    St.-Petersburg
    Сообщений
    2,220
    Спасибо Благодарностей отдано 
    475
    Спасибо Благодарностей получено 
    900
    Поблагодарили
    592 сообщений
    Mentioned
    6 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Вопрос к знатокам кухни программирования под РАДИО-86РК.

    Столкнулся с великой странностью при работе с п/п Монитора. Заметил, что обращения к п/п вывода символа на экран (F809h) по каким-то неведомым причинам и поперёк всякой разумной логики сбрасываются биты порта.. клавиатуры (8002h)! Казалось бы при чём тут печать в экран и клавиатурный порт ВВ55? Сначала грешил на аппаратный глюк, но потом выяснилось, что и в эмуляторе точно также, значит дело не в железке.
    И действительно, анализ "по-диагонали" содержимого п/п F809h показал, что прямо с первых строк идёт обращение к п/п F812h (тест клавы), а из неё к F81Bh (получение кода нажатой клавиши), в последней первым делом записывается 00h в тот самый порт клавиатуры (8002h). Это какая-то жесть!

    Зачем это всё? Какой в этом сакральный смысл? От п/п вывода требуется только вывод символов или ESC-последовательностей. Или я чего-то не понимаю?
    Критиковать - значит объяснять автору, что он делает не так, как делал бы я, если бы умел

  11. #350
    Banned
    Регистрация
    05.10.2016
    Адрес
    г. Санкт-Петербург
    Сообщений
    1,080
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    5
    Поблагодарили
    5 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Denn
    Какой в этом сакральный смысл? От п/п вывода требуется только вывод символов или ESC-последовательностей. Или я чего-то не понимаю?
    Насколько я помню в РК86 работа с клавиатурой сделана грамотнее, чем в ОРИОНЕ. Суть в том, чтобы эмулировать работу аппаратной клавиатуры. Которая, в отличие от ОРИОНА и РК86 работает самостоятельно, не нуждаясь в процессоре. Такая клавиатура поставляет в каком-то порту бит статуса (флаг есть код или нет) и в каком-то порту выдаёт готовый ASCII-код. При аппаратной клавиатуре нажатия на клавиши не пропадают, а при программной клавиатуре пропадают, если процессор недостаточно часто проверяет клавиатуру.

    Идея эмулирования такой клавиатуры заключается в том, что каждая подпрограмма ПЗУ должна вызывать исполнительную часть подпрограммы STATUS (F812) и проверять нет ли нажатия. Если такое нажатие есть, то вызывается F81B, считывается код нажатой клавиши и кладётся в буфер клавиатуры. После чего подпрограмма STATUS всегда будет выдавать готовность символа до тех пор пока не будет вызова F803. Поэтому даже когда вызов F803 произойдёт уже после того, как пользователь отпустил клавишу, будет считан правильный код, т.к он будет считан не с клавиатуры, а взят из буфера.

    А в порт C клавиатуры кидается код, чтобы была верная индикация регистра светодиодом РУС-ЛАТ. Т.к нажатие могло быть и на клавишу РУС-ЛАТ, а светодиод должен загораться в момент нажатия на РУС-ЛАТ, а не несколько секунд позднее. Т.к клавиша РУС-ЛАТ не в основном поле, то для неё нет автоповтора, потому ждётся пока клавишу отпустят. Это свойство используется для останова ролика экрана при долгом TYPE.

    Таким образом подпрограммы ПЗУ РК лезут в клавиатуру даже тогда, когда об этом не просят ради того, чтобы не потерять нажатия клавиш (например при долгом TYPE огромного текста). Такая работа с клавиатурой упрощает установку CP/M на РК86. А в ОРИОНЕ этого нет и в первых версиях CP/M для ОРИОНА работа с клавиатурой сделана неграмотно (так же неграмотно как это в мониторе), отчего есть проблемы двойных нажатий или дребезг и только с 1992 работа с клавиатурой сделана более менее грамотно. А в OS-DOS это так и осталось неграмотно.

    В ACP/M и последующих ДОС использован следующий принцип борьбы с бешенным автоповтором и двойными нажатиями. Если по CONIN введён код клавиши, то в счётчик заносится 256. После чего независимо от того, нажата клавиша или нет, функция STATUS в течение 256-ти вызовов выдаёт флаг, что символа в буфере нет. И лишь по 257-мому вызову STATUS начинается реальный опрос клавиатуры. Так грамотно устраняется бешенный автоповтор.

    Думаю, что такую идею в РК86 использовали по аналогии с другими компьютерами или же из опасения, что скоростей РК86 не хватит. Но в вообще-то делать такой опрос клавиш не стоило. Можно было проще, как в ОРИОНЕ. Потому что в BDOS CP/M есть свой буфер клавиатуры, который по вызову STATUS также кладёт символ в свой буфер. Т.е делает то же самое, что делает ПЗУ РК86. В итоге получается двойная буферизация. Программа CP/M перед вводом освобождает клавиатуру. Она действует так. Сначала вызывает STATUS и если получает флаг неготовности, то уходит на CONIN. А если получен флаг, что в буфере клавиатуры есть символ, то вызывается CONIN, символ считывается и отбрасывается и только потом делается переход на CONIN. Освобождение клавиш делается, чтобы прежние нажатия не влияли. А при двойной буферизации, освобождение клавиатуры не достигается. Таким образом, в IBM PC буфер клавиатуры на 16 нажатий, в базовой CP/M - на одно нажатие, а в CP/M РК86 на два нажатия. Правильнее, для опустошения буфера считывать с CONIN до тех пор пока STATUS не выдаст признак отсутствия символа в буфере.

    Сакральный смысл есть. Из-за этого смысла программы РК86 работают с клавиатурой в стиле CP/M, хотя это и не требуется. Для этого сначала в долгом цикле вызывается STATUS и когда получен флаг, то делается уход на CONIN. Смысл при этом в том, что пока идёт периодический в цикле опрос STATUS, процессор может делать и другую работу. Например, мигать курсором, если курсор не аппаратный, обслуживать периферию (в частности, делать фоновую печать на принтер, как это делает программа фоновой печати CP/M), а также в играх гонять спрайты по экрану.

    Но в РК86 курсор сдуру сделали аппаратным, отчего процессору просто нечего делать в цикле контроля STATUS-а клавиатуры. Проще просто сделать JMP на CONIN. Именно из-за такого трюка многие игры от РК86 не работают на ОРИОНЕ, а нуждаются в небольшой доработке. Курсор следовало сделать программным, т.к тогда можно было бы использовать 11 символов псевдографики (расход деталей кучка диодов и резистор), потому что горизонтальная линия псевдографики и позиция курсора задаётся одним и тем же числом. Потому стоит выбор, или рисование сплошных рамок псевдо графикой, или аппаратный курсор.

    А программный курсор выгоднее, чем аппаратный. Программный курсор зажигается по первому-же вызову STATUS или CONIN, гасится перед исполнением CONOUT, а мигает по вызовам STATUS и CONIN. Разницы между программным курсором и аппаратным курсором нет. Только удобнее программно менять форму курсора и не надо принимать специальных мер, чтобы отключить курсор.
    Последний раз редактировалось barsik; 29.05.2017 в 10:28.

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

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

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

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

Похожие темы

  1. Ответов: 210
    Последнее: 26.07.2019, 11:45
  2. Ответов: 6
    Последнее: 07.02.2016, 11:55
  3. Трюки с контроллером FDD 82077
    от Titus в разделе Утилиты
    Ответов: 4
    Последнее: 10.06.2011, 19:17

Ваши права

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