0.00
Рейтинг
6.44
Сила
Бедненький, если бы не пересёкся со мной, до сих мог бы на умного походить. А теперь каждый может убедиться, какой ты на самом деле www.youtube.com/watch?v=IYtVFNhDdVo
? Ты нарисовал 7-бит часть адреса DRAM идущую по сигналу строба RAS:
RAS: c13, с12, с11, с10, с9, с8,h7
CAS: h6,h5,h4,^3,^2,^1,^0 (a)
CAS: v6,v5,v4,v3,v2,v1,v0 (p)
Если это 7 бит адреса, стробируемые RAS и передаваемые в микруху, то какие требования предъявляет микросхема 4116?
Почему ты считаешь что это «я» с тебя требую, а не DRAM 4116?
Ты до сих пор не понял, чем (а не кем) обусловлено такое требование?
КАКОЕ «такое»? Это что еще за обращение к телепату? «Предъявляет требования» К ЧЕМУ? К силе тока, температуре и напряжению? За этим в даташит. Если ты про частоту рефреша, то к частному вопросу о подборе адресов для отдельно взятого page mode цикла это никакого отношения НЕ ИМЕЕТ. Если ты про комбинацию 7 бит, то в одном отдельно взятом доступе микросхема к ней не предъявляет НИКАКИХ требований. Допустима ЛЮБАЯ комбинация, и прочитана будет корректная информация. Вот такая для тебя шокирующая новость (c)

Значит рисуй заново.
С чего «значит»? Ты совсем не можешь в логику, ни на бит?

1. Нужно не писать чушь, что выше, а знать что 4116 в отсутствие ULA рефрешит Z80.
2. Не надо переходить тонкую грань между шутками и оскорблением.
Но ведь ты действительно, мягко говоря, неумён, если сам не понимаешь, что следует и что не следует из твоих же собственных слов и сечёшь себя хуже унтер-офицерской вдовы. Ну, рефрешит юла медленную память в спеке, И ЧТО ИЗ ЭТОГО? Вот с чего ты делаешь странный вывод, что в принципе рефрешить её может ТОЛЬКО юла? И притом еще ЕДИНСТВЕННЫМ способом, только чтением строго пикселей и атрибутов, ничего больше? Тогда как в нашей унылой реальности без летающих розовых слонов для рефреша нужен только доступ к каждому ряду с частотой не ниже оговоренной, и кто будет обеспечивать эти доступы — пдп, процессор, юла, волчок, диаболо, слинки или йо-йо — для микросхемы совершенно НЕ ВАЖНО.

В сухом остатке.
Предложенная тобой схема столбцов — не работает.
В сухом остатке: ты тупишь, а схема вполне рабочая.
Закольцованный экран без края?
снова смысловые галлюцинации? где там было сказано, что ЭКРАН?

Закольцованный экран без края?
Ват зе… Прям слышно как трещит мой шаблон…
Я всё понял. Страшный ты человек, зря я с тобой связался…
Пацаны, бегите… :)))
Не паясничай. И ты еще смеешь обвинять меня в клоунаде…
Вот напишешь формулу, и тогда сможешь смело встать у подножия пьедестала этого специалиста по извращениям)))
Я конечно видел много клоунады, но такую чтобы мой оппонент сначала что-то нарисовал или написал,
а потом, несмотря на четко нарисованные биты, заявил что я должен якобы представлять это не так (при том что написал/нарисовал — он всё вполне четко) — вот такую изворотливость я вижу впервые.
Клоунадой ты сейчас занимаешься. И нарисовано, и сказано было чётко: «c — столбцы». А то, что в этих битах непременно должны перебраться все комбинации — исключительно твои личные сексуальные фантазии. Я же ничего такого не утверждал.

Поздравляю. Ведь если уменьшить количество столбцов, уменьшится количество бит (или диапазон пересчета) и будет происходить регенерация не всех строк DRAM.
иииииишто? Кто сказал из религиозных авторитетов, что регенерация должна осуществляться именно чтением растра для отображения и никак иначе?

Дело в том что у тебя нарушена регенерация памяти и железо не рабочее. Дело в этом.
И пустым птицебольством «выше сказано, что могла усложниться схема регенерации» — не отделаешься.
Дурачок? Если нет, то прекращай включать дурачка. Даже в спектруме есть огромный промежуток в регенерации в 152 строки развёртки, почти полкадра. То есть достаточно делать один лишний доступ во время hblank, последовательно перебирая RAS от 0 до 127 — промежуток даже меньше получится. Можно даже применить для этого штатный счётчик строк видеоузла (но тогда на один hblank могут понадобиться два доступа, если промежуток в 184 строки слишком долгий).

Дело за малым, жду от тебя столбцовую раскладку адресов, такую чтобы работало.
Всё рабочее. Заканчивай клоунаду. От тебя жду формулу «коэффициента извратности перестановок»
Чистка стеком применяется много где. Да хотя бы в той же Elite 1985 года. Но вот на пример именно копирования буфера, чтобы стеком и чтение, и запись осуществлялись, могу вспомнить только Wec le Mans от 1988
Инженеры не пользуются подобной терминологией, в электронике сложно представлять «средние». Именно этот образ мышления, терминология и форма выражения мысли поначалу вводит в полный ступор.
а при чём тут электроника? когда это нужно было представлять в ГЕОМЕТРИИ )))

Не удивительно, что я долгое время не мог ничего понять, у меня даже мысли не работают подобным извращенно-искривленным образом, чтобы я смог до такого додуматься. Смеялся я дооолго…
Ндаа… и эти люди раскритиковали Sinclair ZX Spectrum!
Нет, у ТЕБЯ они работают таким образом, если ты извращённо-искривлённый спектрум считаешь лучше. Это же именно на спектруме приходится извращаться для такой простой операции, как сдвиг по вертикали экранного адреса. Да и для вычисления по координатам самого адреса.

Соответствие | центр.пикс = край атр.
Ты неправильно используешь слово «край». У закольцованной структуры нету краёв. У фрагментов же внутри такой структуры край считается по выходу за фрагмент.

Lethargeek должен быть внесен в анналы спектрумистов как выдумщик
Если что, я не претендую на единоличное авторство))
Это всё результат одного давнего коллегиального обсуждения.

самого наибольшего hardware-извращения, какое только можно представить.
За сим нарекаю справедливо заслуженным титулом «хардварный Петросян».
Ладно, понимаю, со стороны софта у тебя мозги могли быть безнадёжно искривлённо-извращены многолетним программированием на спеке. Но вот с чего ты в hardware извращение усмотрел? Применяется ведь тот же самый приём, что в спектруме — перепутывание адресных линий. А теперь ВНИМАНИЕ, ВОПРОС: ПОЧЕМУ ОДНО ПЕРЕПУТЫВАНИЕ ТЫ СЧИТАЕШЬ ИЗВРАЩЁННЕЙ ДРУГОГО? Ведь у тебя наверняка есть какие-то СЕРЬЁЗНЫЕ основания (раз уж ты такой серьёзный Непетросян)) Напиши, пожалуйста, нам здесь серьёзную формулу для вычисления КОЭФФИЦИЕНТА ИЗВРАТНОСТИ по заданной комбинации 14 неповторяющихся номеров! :|
в общепринятом смысле «байты» (октеты) в адресе видеоконтроллера,
выставляемого на DRAM отсутствуют,
поскольку ША видео-адреса, будучи представленной выводами счётчиков,
не пересекается с микропроцессорной ША, вот такая для тебя шокирующая новость.
это для меня совсем не новость, представь себе

Однако говорить о старшей и младшей части адреса можно.
ну и к чему тогда пустая придирка выше? Чтобы только показать вумность?

14 бит, 2^14 = 16384.
У вас факапчик-с приключился с видеообластью объемом 16кб.
Нет, здесь факапчик-с у тебя приключился. Ты не подумал, что 16k нужно было бы для всех теоретических 64 столбцов, но столько даже в тв-строку не влезает с квадратным пикселем. 32 столбца как на спеке — 8k. А хочешь 320 пикселей в ширину, как на всех нормальных компах обычно — 10k. И то, что эта схема НЕ ДИКТУЕТ единственно возможную ширину экрана, как у Альтвассера — жирный ПЛЮС.

Тут еще один факапчик из-за банального незнания как регенерируется DRAM.
К сведению: tREF по даташиту MAX 2 ms. Бит h7 — половина высоты растра. Сколько это ms?
Нет, еще один факапчик тут опять у тебя из-за привычки очень выборочно читать. К сведению: выше сказано, что могла усложниться схема регенерации. И дело даже не в h7, а в том, что не перебираются все столбцы. Переделывать ничего не требуется, а достаточно 1-2 «лишних» чтений на строку растра, что практически процессор не замедляло бы (но, возможно привело бы к удорожанию изделий на пару фунтов, если бы не влезло в юлу).
У меня к тебе предложение, перестать заниматься странным делом, пытаясь доказать мне что мой тест должен читаться как-то иначе.
Что здесь странного, если в тексте семантические ошибки и альтернативный русский язык? Даже раз, небось, прочесть поленился, отсюда перлы типа 14 бит, которые равны 16 килобитам))

Текст написал я, и его смысл лучше всего известен мне. Его не я должен понимать так, как понимаешь ты, а наоборот — твоя задача — понять его так, как понимаю его я, не вводя лишних сущностей и не доказывая их мне.
Даааааа? С чего бы? Текст ты написал НЕ СЕБЕ, а выложил на общее обозрение. И потому ТВОЯ задача писать его так, чтоб не было нечёткостей и ошибок. Я считаю, что моё прочтение текста согласуется с логикой и правилами русского языка.

Уточняю, чтобы тебе было более понятно — под «software» имеется в виду обобщенно любой «программный доступ», отличие от hardware. В т.ч. из BASIC ROM.
Снова нелады с русским? Раз ЛЮБОЙ, то в том числе и такой, для которого раскладка Спектрума НЕУДОБНА.

Ты второй раз даёшь мне ссылку на чужой пост со словами «а вот тут вот было», ты, дескать, просто не заметил. Но Weiv и Lethargeek, надеюсь, разные люди? И даже если Weiv полагает нечто так, то ты можешь думать иначе. Какое мне дело до чужих постов? Для меня невозможно знать заранее, что Weiv и ты думаете одинаково. Не надо заниматься такими вещами.
А теперь проблемы с логикой. Вот какая разница, КТО писал, если Я дал в качестве ОТВЕТА на твой вопрос. Или мне теперь и буквами не пользоваться, потому что их придумал кто-то другой?

Снова проигнорированы важные вопросы о геометрии экрана.
Где? Какие важные вопросЫ (теперь еще во множественном числе)? Что ты понимаешь под ГЕОМЕТРИЕЙ? Видимо, не ширину и не высоту, потому что на вопросы о ширине и высоте я ОТВЕТИЛ — они могут быть практически какими угодно (лишь бы влезло в тв-стандарт и в 256 байтов на вертикаль)

Между тем, инорировать их нельзя, поскольку надо доказать, что удастся опрашивать 8K «столбцами» вместе с цветом каждые 1/60сек для микросхем 4116 самой медленной отбраковки, т.е. самых дешевых. Это и есть именно то, из-за чего я веду с тобой эту беседу,
СТОП! с чего доказывать вдруг надо именно ЭТО? Ни «8k», ни тем более «1/60сек» совершенно к делу отношения не имеют. Доказать нужно ТОЛЬКО то, что байт полоски пикселей и байт соответствующего ей атрибута можно прочитать в страничном режиме. А для этого достаточно совпадения любых 7 бит в 14-битных адресах этих двух байтов. Лично мне это очевидно.

Я пока не согласен с утверждением для page mode, но это выяснится далее. Мне не удалось понять твою схему адресации, возникли вопросы. Прошу пойти мне навстречу и по-циклам описать примерно так, как я описал в заметке;

Вот у нас есть 14 бит адреса микросхем 4116, мультиплексированные по 7 и 7 бит. Опиши (напиши биты) по-циклам, как дисплейный контроллер стробируя сигналами RAS и CAS передает по 7 бит экранный адрес так, чтобы получить такую развёртку пикселей и цвета, как придумал ты. Укажи, какие биты адреса в каком цикле там совпадают. Только делай это не словесно, а выписав в каждом цикле проименованные и пронумерованные биты, иначе я снова ничего не пойму.
Ёжкин кот жеж. Совпадающие (то есть СТАРШИЕ 7 БИТ) выставить, естественно, в RAS. Я же русским языком написал, что в старшем байте адреса совпадёт 6 бит (то есть все, кроме двух старших и неучитываемых) и в младшем байте адреса совпадёт еще один (старший) бит. Ну, на в цифрах, если ты по-русски не понимаешь:

RAS: c13, с12, с11, с10, с9, с8,h7
CAS: h6,h5,h4,^3,^2,^1,^0 (a)
CAS: v6,v5,v4,v3,v2,v1,v0 (p)

c — столбцы экрана, инкремент слева направо
v — вертикаль пикселей, инкремент сверху вниз
^ — вертикаль атрибутов, инкремент снизу вверх
h — верхняя или нижняя половина (все биты h* равны)
sla a:sla a:sla a:xor #F
* sra, не sla (ну вот почему каменты править нельзя)
Совпадает старший бит младшего адреса.
* старший бит младшего байта адреса, конечно же
1. Опять сферические кони в ваккуме. :) «другая». Какая именно?
ZOMG, мне что, столбцы в каждом предложении поминать?

2. С выдумкой по ходу дела firmware/software это ты ловко. Подвела таксономия, firmware это часть software.
А человеки это часть человечества. Это же не повод сказать начальнику, что повышения зарплаты требует человечество.

И выдумывать не надо, о чем идет речь ясно 2мя предложениями выше.
«Выше» относительно чего, где? Теперь ты давай конкретику, процитируй.

Конечно мало. В этом-то всё и дело, дьявол таится в мелочах, когда начинаешь разбирать. Просто предложение иметь столбцы — это лишь наши с тобой мечты с дивана, не более. Столбцы, для начала, должны иметь высоту обязательно 256 байт, иначе с другими столбцами затея теряет смысл.
И в чём проблема? Значит, будет 256 байт. Что совсем не означает столько же пикселей.

Что насчет цвета? А то этот вопрос у тебя остался за кадром, спектрум получился монохромный как «Специалист».
Он остался у тебя, а не у меня, потому что ты в прошлый раз не соизволил пройти по ссылке:
hype.retroscene.org/blog/889.html#comment23547
где обсуждается, куда пихать атрибуты

Какова геометрия экрана?
Какая хочешь, при условии 256 байт на столбец.

Сколько столбцов?
Сколько влезет или меньше, сколько захочешь.

Какой получается суммарный объем?
Кол-во столбцов * 256 байт

Как на 4116 (не на 4164) организовать page mode read страниц по адресам кратным 256? Напоминаю, у нее страница — 7 бит. Т.е. 128 байт.
Кратность 256 не имеет отношения к «страницам» микросхем памяти. Для возможности применения видеоконтроллером page mode требование простое — из 14 бит адреса (2 самых старших не учитываем) у полоски пикселей и соответствующего атрибута должны совпадать 7 бит. И притом неважно каких, потому что всегда можно и на плате линии перепутать.

Поскольку атрибуты лежат в одном столбце с пикселями, то старший байт адреса один, то есть совпадают уже 6 бит. Последний совпадающий бит найти можно, например, если начинать распределять байты от средней линии. То есть центр столбца по высоте это младшие байты адреса для пикселей #7F и #80, соответствующих атрибутов — #00 и #FF. Сдвиг от центра на пиксельную линию — #7E и #81 против тех же #00 и #FF. Сдвиг на знакоместо — #77 и #88 против #01 и #FE. Совпадает старший бит младшего адреса. Все 7 нужных совпадающих бит нашли.

Единственное мелкое неудобство — номер линии растёт сверху вниз, а номер атрибута снизу вверх. Но всё равно для движения достаточно inc и dec. И конверсия адресов пикселей и атрибутов тоже выполняется очень просто:
P2A: sla a:sla a:sla a:xor #F
A2P: xor #F:add a:add a:add a
(это для атрибутов 8x8, но в данной схеме можно также регулировать их размер в связи с размером растра по вертикали)
переставить биты — это не соцсети приделать, это как переместить гвоздик для бумаги или щеколду
Слова у меня в статье следующие:
«Исходная причина перестановки бит вызвана требованиями hardware. Но сама аранжировка бит, такая, а не иначе – задана требования software». (выше я пояснял, что на самом деле биты можно было аранжировать иначе)
Ё-моё. Ну вот с этими словами и не согласен я. С тем, ИМЕННО ТАКАЯ «аранжировка бит» была якобы «задана требованиями software». Потому что в тот момент никакого software не было, был (или планировался) firmware, по приказу руководства который драли, где возможно, с прошлой модели. А вот как раз для будущего software ИМЕННО ТАКАЯ «аранжировка» совсем НЕ требовалась, а лучше подошла бы совсем другая.

1. какие у тебя вопросы к дизайну Altwasser'а?
НЕУДОБНАЯ для кодера адресация. И нет, требование соответствовать особенностям элементной базы его НЕ оправдывает. Потому что можно было И сделать лучшую раскладку, И соответствовать.

2. Что именно, что конкретно ты бы мог предложить? Может быть попробуешь сформулировать? А я попытаюсь тебя понять. Пока что мне удалось тебя понять так — основная твоя претензия в том что можно было бы сделать экран по-столбцам, а то неудобно писать программное обеспечение, код раздувается в объеме. Я верно тебя понял? Постарайся выразить мысль как можно полнее.
Да куда полнее-то, непонятно. В том, что касается конкретно темы твоей статьи, я вполне конкретно предложил столбцовую раскладку — тебе что, мало? Кстати, код не только лишь раздувается, но и раздутый, всё еще проигрывает по скорости коду для столбцовой раскладки.
это неспектрумы :P
ну здрасьте, то ты говоришь неинтересно, то интересно, но рисуюсь я почему-то?!
график я там выложил, чтоб узнать, мб кто-то лучше с тех пор придумал, нах тогда мне париться с продолжением
благо тема именно об этом была такая, но походу все последние активные кодеры разбежались с «гяфа» за эти годы
и я не придумал)) да и незачем, табличка тоже необязательна 8)
в xpeccy или в zxspin, они поудобней
так это, смотрю в эмуле на счётчик тактов до/после call
график мой неточный, ломаной по нескольким точкам
поверх старых точных графиков топикстартера
и накинул щедро 500 тактов сверху на вход еще
по завершении должно получиться немного меньше
получается, тут наши самоделкины лучше выкрутились, чем буржуйские инженеры
несмотря на то, что по не зависящим от них причинам меньше «могли»