Расшифровка маркировки дисков: | , | () | ET, DIA, PCD

Содержание

Маркировки дисков: расшифровка

Обозначения дисков выглядят очень сложно для восприятия обычного водителя: 9 J x20H  PCD 5×130 ET60 DIA 71.60.

Однако, если немного знать о том, как выстраивается данная маркировка, то можно легко читать и расшифровывать любые маркировки дисков.

Виды маркировки дисков

Маркировку дисков можно условно разделить на три группы:

1. Геометрические параметры диска:

9Jx20H, где

9 – ширина обода диска, измеряется в дюймах.

J — буква, характеризующая конструктивные особенности диска, а именно – форму закраин, не несет в себе никакой важной информации для водителя.

20 – посадочный диаметр, измеряется в дюймах, должен совпадать с посадочным диаметром размера шины.

H — буквенный символ, идущий сразу же за диаметром диска и обозначающий форму хампа, иные его особенности, а иногда – его отсутствие.

Хамп – это кольцевые выступы на ободе, которые предотвращают соскакивание бескамерной шины с колесного диска. Самый распространенный вид – двойной хамп (обозначается как h3).

Также можно встретить увеличенный двойной хамп (Eh3). Реже можно встретить другие обозначения:

  • H – одинарный хамп
  • FH – плоский хамп
  • AH – асимметричный хамп
  • CH – комбинированный хамп.

Использование дисков с любым из четырех последних символов должно осуществляется только в случае, если это допускается заводской комплектацией автомобиля.

Разделяющий показатели ширины диска и его диаметра значок «Х» обозначает, что диск нераздельный.

Важно! Вышеуказанные параметры диска должны совпадать с соответствующими параметрами шины. Большая или меньшая ширина диска деформирует шину, а несоответствие диаметров не позволит шину на диск смонтировать.

2. Особенности крепления диска:

PCD 5×130 и DIA 71.60

Данные маркировки хоть и разделены, но описывают геометрические и прочие особенности, которые необходимо учитывать при креплении диска на ступицу автомобиля.

PCD (Pitch Circle Diameter) — диаметр окружности, на котором расположены крепежные отверстия диска (а точнее их центры). PCD 5×130 значит, что у диска есть 5 отверстий, размещенных на окружности с диаметром примерно 130 мм.

DIA — диаметр центрального отверстия, которое центрует колесо в сборе на ступице автомобиля, измеряется в мм (в нашем случае – это 71.6 мм).

Важно! Если диск не соответствует параметрам размещения крепежных отверстий, заложенным в первичной комплектации автомобиля, то установить этот диск на автомобиль будет невозможно.

3. Вылет

ET60

Это величина, характеризующая расстояние между вертикальной плоскостью симметрии диска и плоскостью его приложения к ступице.

Один из показателей, который будет нанесен на внутреннюю полость диска, измеряется в мм (в маркировке ET60 вылет равен 60 мм). Может быть положительным (ET60), нулевым (ЕТ0) или отрицательным (ЕТ-60).

Вылет влияет на ширину колесной базы и является одним из особо важных показателей, а поэтому нужно строго придерживаться рекомендации автопроизводителя! Даже самое малое отклонение от рекомендации недопустимо.

При изменении вылета диска (даже на 5 мм) существенно изменяются условия работы всех узлов подвески, создаются усилия, на которые подвеска конкретного автомобиля не рассчитана. Самое простое последствие этого – сокращение срока службы элементов подвески, а в условиях критических нагрузок последствия могут быть гораздо опаснее (разрушение подвески во время движения).

Расшифровка маркировки колёсных дисков

Расшифровка маркировки колёсных дисков

В автомобильном мире существует множество тем, которые, так или иначе, являются, мягко говоря, непонятными для рядового автолюбителя. К таким относится и маркировка дисков. Действительно, далеко не все могут расшифровать «тайные знаки», которые производители наносят на поверхность своей продукции. В данной статье мы попробуем разобраться в этой непростой теме и надеемся помочь водителям в разрешении ситуации связанной с расшифровкой маркировки колёсного диска.

Без примера маркировки в данной теме не обойтись, поэтому для начала нужно его привести, мы возьмём диск предназначенный для Audi A6 С7/A4 B8, его параметры — 7,5Jx18 5/112 ET37 D66.6.

7,5 – означает ширину посадочного обода, измеряется в дюймах. Данный показатель непосредственно связан с шириной шины. Если обод не будет соответствовать, то шина просто напросто может сняться с колеса.

Знак J в данном случае указывает на информацию о различных особенностях закраин обода (высота, радиус и т.д.)

Знак X говорит нам о неразъёмности обода диска, а число 18 означает посадочный диаметр, к слову сказать, он тоже должен соответствовать посадочному диаметру шины, в противном случае несоответствие может привести к печальным последствиям (чаще всего это обозначение отдельно указывается не иначе как R18).

5/112 – где 5 – это число отверстий для болтов на диске, 112 – обозначает диаметр окружности, на которой и располагаются отверстия; измеряется в миллиметрах.

ET37 – означает вылет диска и рассчитывается также в миллиметрах. То есть – это определённое смещение поверхности диска, относительно предполагаемой плоскости, которая размещается на ровно одинаковом расстоянии от внутренней и внешней плоскости.

Показатель D66.6 показывает диаметр центровочного отверстия диска или же размер ступицы, обозначенный в миллиметрах.

Вот вроде бы и всё. Самое главное условие, которое необходимо запомнить – это то, что даже небольшое отклонение от вышеуказанных параметров влечёт за собой дополнительную нагрузку на ступицу, а вследствие этого возможное разрушение несущих конструкций подвески.

расшифровка их обозначений для владельцев авто, что означает дополнительная информация и надписи на автодисках

Темой этого обзора будет маркировка колесных дисков авто и расшифровка их обозначений для легковых автомобилей и иного типа транспорта. Этот аспект весьма важен при замене шин и колес. Ведь неправильно подобранный товар ухудшает множество различных показателей ТС: сцепляемость с поверхностью, превышение предельной нагрузки на подвеску, управляемость машины, эксплуатационный срок. Если монтаж осуществляется для неподходящей модели транспорта, то возникает серьезная опасность для жизни самого водителя. Поэтому следует быть предельно внимательным и научиться грамотно считывать сведения от производителя. Где их найти и как правильно трактовать, читайте далее.


Маркировка колесных дисков – расшифровка

Существует несколько методов нанесения информации. А вот форма подачи остается единой. В большинстве случаев и для штамповки, и для литья используется стандартный сертифицированный европейский способ, un/ece 124. Хотя существуют и исключения, о которых мы поговорим ниже.

Визуально найти необходимые сведения можно на ободе, располагаются они на внешней или внутренней стороне, в зависимости от производителя.

Важно понимать, что эти данные относятся только к основным. Существуют еще и дополнительные, которые наносятся на некоторые типы товара. Их можно встретить не всегда, как пример, – предельное давление покрышки или нагрузка на ресурс. Посмотрим, как это выглядит на схеме.

Маркировка автодисков и ее расшифровка

Чтобы информация была достаточно детальной, попробуем разобрать все на примере. Возьмем за основу вот такую вот запись, которую мы можем обнаружить на диске: 6.5Jx15 h3 5/100 ET45 d54.1. А после этого шаг за шагом рассмотрим каждое из цифровых и буквенных значений, узнаем, насколько важным будет тот или иной параметр.

Ширина обода

Это расстояние от одного края до другого. Считывается по внутренней стороне, на внешней может быть иное значение. Аспект весьма важен, ведь он играет серьезную роль при выборе покрышке. У каждой существует собственный допустимый диапазон, по которому и следует ориентироваться. Причем не стоит плотно подбираться к границам параметра.

В нашем случае ширина в дюймах равняется 6.5 И именно этот средний диапазон и должен быть у покрышки.

Если же 6.5 будет боковым значение, минимальным или максимальным для шины, то допустить к эксплуатации ее, разумеется, можно, но вот срок использования будет существенно сокращен.

Тип кромки обода


Как мы видим, после ширины у нас следует буква J. И она сообщает нам всю необходимую информацию о типе. То есть, форма закраина, места сцепления с шиной. И если вид будет неподходящим, то и соединение будет менее надежным. А это играет роль при монтаже, оказывает влияние на массу балансиров, а также на смещение резины со своей оси, если выполняется резкий маневр или имеет место неблагоприятная внешняя среда. А в аварийной ситуации небольшой просчет по форме закраины может стоить жизни человеку.

J является наиболее распространённым видом на территории Российской Федерации. Второе место удерживает JJ, созданный для полноприводных транспортных средств.

Но использовать один на машине, предназначенной для другого, будет неправильно. Что и говорить об иных типах, как P, D, B, K которые отличаются формой сцепления весьма значительно.

Разъемность обода

Итак, если мы посмотрим на обозначения колесных дисках автомобиля, то следующим параметром идет буква X. Она сообщает нам о том, что указанный тип не обладает разъемностью. Другими словами, его нельзя разобрать на составные части – это монолитное целое. Плюсов у такого обода хватает – большая жесткость, да и с конструкционной точки зрения, трудностей при монтаже будет намного меньше. Но при этом использовать такой тип допустимо только с эластичными покрышками, что подходит для легковых автомобилей. За редким исключением это может быть небольшой грузовичок. Но крупные машины применяют только разъемные виды, иначе установить покрышку не представляется возможным.

Монтажный диаметр

Цифра 15, указанная в нашем примере. Представляет собой размер посадочного места на диске под шину. И он должен строго соответствовать параметру резины. В противном случае при монтаже возникнут серьезные сложности. Да и в эксплуатации несхожие типы не допускаются. С этим значением поиграть не получится, приобретайте лишь при точном соответствии. Сейчас распространены модели от 13 до 21. Небольшие для миникаров и крупные для внушительных грузовиков и специальной техники.

Кольцевые выступы

А также их еще часто именуют хампами (от английского слова «hump»). Это небольшие выступы, которые необходимы при использовании бескамерных шин. Они упираются в нее, не позволяя допустить разгерметизацию при маневрах. Если на резину давят внешние силы, то без специальных уступов они деформируются и воздух начнет уходить. Соответственно, колесо просто спустит.

Итак, маркировка автомобильных литых дисков расшифровка для легковых автомобилей:

  1. H. Хамп присутствует в единственном экземпляре. Это говорит о простом монтаже, натянуть на один выступ покрышку совсем несложно. Справится даже непрофессионал.
  2. h3. А это уже двойной хамп. Выступы располагаются с обеих сторон, внутренней и внешней. И вот здесь с монтажом уже возникают серьезные трудности. Поэтому придется использоваться специальные инструменты.
  3. FH. Это плоский вид подката. Применяется нечасто, но также сложен в установке.
  4. AH. Асимметричный вид. Это золотая середина, один из выступов больше, чем его двойник. Соответственно, натянуть резину будет куда легче. При этом особо не страдает и надежность, уровень возможной утечки воздуха в экстремальных ситуациях примерно соответствует показателю у h3.

Расположение крепежей

В нашем варианте установлено значение в 5*100. Значит, необходимо 5 болтов с диаметром окружности в 100 миллиметров. Этот фактор обычно играет злую шутку с новичками, которые пытаются просто визуально определить размер крепежа и подобрать соответствующий. Ведь варьируются они в довольно большом диапазоне от 98 до 139 миллиметров. И ошибка хотя бы на один мм приведет к очень неприятным последствиям. Со временем начнет расшатываться сам болт, ведь посадочное гнездо слишком велико для него. А в обратном случае при монтаже он либо не войдет по резьбе до конца, либо она будет перекручена. А это опять же приведет к расшатыванию и срыву крепежа в самый неподходящий для этого момент.

Поэтому ориентируйтесь только на конкретные цифры и подбирайте товар в строгом соответствии с ними. Благо, все сведения у нас есть, а расшифровка надписи на дисках довольно проста. Специфических навыков не требуется.

Дисковый вылет

Является расстояние от точки соприкосновения со ступицей до плоскости поперечного сечения. Любопытно то, что это значение способно приобретать как положительные, так и отрицательные формы. В представленном варианте оно выглядит, как ET 45. То есть, положительное. Но существуют такие виды, как ET -30, что уже является отрицательным значением.

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

Диаметр слота посадки

Обозначен в примере под латинской буквой d. Указывается в мм. В принципе, тут тоже играть с параметрами не получится. Все просто: во время установки изделие не сядет на свой слот, если подобрано неверно. Конечно, опасностей на дороге не принесет, ведь даже не может быть установлен. Но покупку придется менять на новую. Вот почему маркировка на дисках колес, расшифровка обозначений и всех параметров является таким важным аспектом.

Крепежные элементы

Используются только болты соответствующих размером. Количество различается, в зависимости от модели. Может быть 4 или 6. Но есть и экзотические варианты по 3, 5, а встречается и 9 болтов. Но для типичного легкового транспорта в РФ ориентироваться нужно на 4 и 6. А вот размеры разнятся, и как уже упоминалось, здесь следует подобрать точно даже не до миллиметра, а до десятой его доли. Иначе ресурс крепежа будет расходоваться в несколько раз быстрее. И хоть стоит сам болт недорого, важно же знать, в какой именно момент его пора менять. Обычно это делается только вместе с полной заменой всей конструкции. А при несоответствии размера, он выйдет из строя куда раньше и возникнет неблагоприятный момент для управления ТС. Вот почему маркировка колеса и расшифровка информации на колесном диске так важна.

Интересен тот факт, что при четном количестве крепежей, расстояние между ними строго одинаковое. А вот при нечетном, от одного болта до другого расстояние растет с коэффициентом в 1,051.

Также хотим обратить ваше внимание на то, что сейчас существуют модели, которые подходят сразу к нескольким типам транспорта. Они указываются в диапазоне, 100/110 или 100/120 и так далее. Это значит, что конструкция универсально и подойдет под крепеж любого диаметра в заявленном диапазоне. Правда, эксплуатационный срок в таком случае будет все же несколько снижен, но не особо существенно.

Готовые решения для всех направлений

Мобильность, точность и скорость пересчёта товара в торговом зале и на складе, позволят вам не потерять дни продаж во время проведения инвентаризации и при приёмке товара.

Узнать больше

Ускорь работу сотрудников склада при помощи мобильной автоматизации. Навсегда устраните ошибки при приёмке, отгрузке, инвентаризации и перемещении товара.

Узнать больше

Обязательная маркировка товаров — это возможность для каждой организации на 100% исключить приёмку на свой склад контрафактного товара и отследить цепочку поставок от производителя.

Узнать больше

Скорость, точность приёмки и отгрузки товаров на складе — краеугольный камень в E-commerce бизнесе. Начни использовать современные, более эффективные мобильные инструменты.

Узнать больше

Повысь точность учета имущества организации, уровень контроля сохранности и перемещения каждой единицы. Мобильный учет снизит вероятность краж и естественных потерь.

Узнать больше

Повысь эффективность деятельности производственного предприятия за счет внедрения мобильной автоматизации для учёта товарно-материальных ценностей.

Узнать больше

Исключи ошибки сопоставления и считывания акцизных марок алкогольной продукции при помощи мобильных инструментов учёта.

Узнать больше

Первое в России готовое решение для учёта товара по RFID-меткам на каждом из этапов цепочки поставок.

Узнать больше

Получение сертифицированного статуса партнёра «Клеверенс» позволит вашей компании выйти на новый уровень решения задач на предприятиях ваших клиентов..

Узнать больше

Используй современные мобильные инструменты для проведения инвентаризации товара. Повысь скорость и точность бизнес-процесса.

Узнать больше

Используй современные мобильные инструменты в учете товара и основных средств на вашем предприятии. Полностью откажитесь от учета «на бумаге».

Узнать больше Показать все решения по автоматизации

Как маркируются литые диски

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

Маркировка штампованных дисков, расшифровка

А вот в этом случае никаких дополнительных сведений нет. Полностью стандартные записи, разобранные детально выше. Но на обоих вариантов вполне может присутствовать дополнительная информация. И она уже способна дать больше сведений, которые если и не несут принципиальной разницы, то способны рассказать потребителю намного больше об изделии.

Дополнительные маркеры

Разберем каждый из них. Эти значения встречаются в произвольном порядке, частично или все вместе разом. И также они могут и отсутствовать.

MAX LOAD

Это индекс предельной допустимой нагрузки на единую точку. То есть, не на всю поверхность, а лишь на одно колесо. Обычно представлены в фунтах. Для перевода в наши родные килограммы просто разделите указанное число на 2,2.

MAX PSI-50 COLD

Посмотрим, что означают цифры на колесных дисках, как расшифровать маркировку такого типа. В этом варианте указано количество атмосфер внутри покрышки. Как видно, 50 PSI. Но что это за единицы измерения? Поясним, что 1 килограмм-сила равняется 14 PSI. Соответственно, можно рассчитать параметр простым делением. Но также мы видим небольшую приписку, которая звучит, как COLD. Нетрудно перевести и понять, что измерения нужно производить при холодной температуре. Ведь, как известно, при нагревании воздух расширяется, и давление будет изменять соответственно.

FORGET

Это небольшая запись говорит о методе изготовления. Тип относится к кованым изделиям.

BEADLOCK

Фиксация шин. Эта методика не прошла необходимых проверок безопасности, поэтому с продажи прототипы были сняты.

BEADLOCK SIMULATOR

А вот это интересный момент. Надпись гласит, что используется симулятор фиксации шин. Но фактически такая симуляция не отличается от обычных моделей. То есть, это конкретную запись вы можете смело игнорировать. Ничего страшного не произойдет.

SAE/ISO/TUV

Многие задаются вопросом, Просто системы контроля качества, проверка которых были произведена. Аналог известных в РФ ГОСТ или ТУ. Кстати, их также вы сможете встретить на местах сертификации. В принципе, наличие подобных маркеров лишь увеличивает уровень доверия к товару, ведь производитель озаботился некой формой гаранта. А вот вопрос, где находится маркировка на литых и штампованных дисках остается открытым. Ведь конкретного места для указания штампа сертификации нет, производитель сам выбирает, где его разместить.

Дата изготовления

Она указывается в нестандартном виде. Поэтому многие ее путаются с чем-то другим. Ведь вместо привычного числа и месяца, мы видим номер недели. Как вариант, 10. Десятая неделя с начала года. Придется немного посчитать. А вот последние две цифры уже являются годом – 21 для современных товаров.

Страна

Полное название, логотип или сокращение. Все остается на усмотрение производителя. Как и необходимость нанесения такой информации.

Японские диски

Существуют два вида нетипичных для российского потребителя маркеров. JWL, сертификат от Министерства транспорта Японии. Требования, которые предъявляются в стране весьма высокие и направлены исключительно на внутренний рынок. Но любой производитель в мире может подать заявку и пройти тест по японской системе. Таким образом, он сможет доказать своему клиенту, что его товар отвечает представлениям о качестве японцев. А они, как известно, весьма требовательны в этой сфере.

Маркер VIA также свидетельствует об уровне. Это не аналог первого, а просто значок пройденных дополнительных тестов. В принципе, тема обзора: маркировка автомобильных дисков и шин на авто и расшифровка обозначений. И японские маркеры сюда относятся косвенно, в нашей стране, а также в Европе их почти нет. Но мы их внесли, так как это прямое свидетельство, что товар произведен на самом высоком уровне, доступным на сегодняшний день. И сомневаться в нем точно не стоит.

Как выбрать правильно

Для различных моделей ТС нам понадобятся разные параметры. Рассмотрим пару примеров.

Модель

Значения

Toyota Corolla

 

Ford Focus

 

Lada Granta

13 / 5.0J PCD 4×98 ET 40 ЦО 58.5

либо 14

Lada Vesta

6Jx15 4/100 ET50 d60. 1

Hyundai Solaris

6Jx15 4/100 ET46 d54.1

KIA Sportage

6.5Jx16 5/114.3 ET31.5 d67.1

Kia Rio

PCD 4×100, 13-15, 5J-6J, 34-48

Нива

5×139.7,ET 40, 6.5 J, ЦО 98.6

Renault Duster

16х6,5, ET45, 5х114,3

Заключение

Теперь ни у одного читателя этой статьи не возникнет вопроса, что означают цифры на дисках колес. И становится понятно, что эти данные несут важный смысл. Отступление от заявленных производителем требований грозит сложностями при монтаже, опасностью на дороге, повышенным уровнем износа. А вот точное соответствие, напротив, обещает комфорт и безопасность при езде. Да и уровень качества товара, как оказалось, проверить можно весьма просто. А для работы с маркированными покрышками, обувью, парфюмерией и другими видами изделий используйте специальное ПО от компании «Клеверенс» – «Склад 15 + ШИНЫ» и «Кировка».


Количество показов: 1503

PCD, ET, DIA центального отверстия

Независимо от того, какой диск легкосплавный (литой) или стальной (штампованный)- все диски имеют стандартную маркировку параметров и компания «Авто-Легион» поможет вам разобраться в этом.

.
Например: 5,5Jx16h3 ET30 PCD: 5/112  d 66.6 
5.5 — Ширина диска в дюймах.(B)

16 — Диаметр диска в дюймах (D)

5/112 — Количество болтов (или гаек) в нашем случае 5. Диаметр, на котором они расположены, называется PCD (Pitch Circle Diameter) и в нашем случае он равен 112 мм.

PCD — диаметр окружности центров крепёжных отверстий (измеряется в миллиметрах).
Отверстия крепления колеса располагаются на различных диаметрах с жестким позиционным допуском, по отношению к центральному отверстию.

При необходимости PCD — можно рассчитать, измерив расстояние между центрами дальних отверстий (это можно сделать обычной линейкой не снимая колеса с автомобиля):
— у дисков с 5 (пятью) крепёжными болтами (или гайками), для получения значения PCD, расстояние  между центрами дальних отверстий нужно умножить на коэффициент 1.051.
— у дисков с 4 (четырьмя) крепёжными болтами (или гайками): значение  PCD равно самому расстоянию между центрами дальних отверстий.

ET 30 — Вылет (или вынос) диска, измеряется в мм. и в нашем случае он равен 30 мм. Это расстояние между привалочной плоскостью колёсного диска (плоскость которой прижимается диск к ступице) и серединой ширины диска (при совпадении этих плоскостей вылет нулевой).
Немцы обозначают вылет ET (допустим, ET30 (мм), если его величина положительная, или ET-30, если отрицательная), французы — DEPORT, производители из других стран обычно пользуются английским OFFSET.

Вылет «положительный», если привалочная плоскость не переходит за воображаемую плоскость.
Вылет «отрицательный», если привалочная плоскость переходит через воображаемую плоскость
Чем размер вылета ближе к «0»-ю, тем колесо (визуально) дальше от кузова.

d 66.6 — Диаметр центрального отверстия, которое измеряется со стороны привалочной плоскости. Диаметр (DIA) измеряется в мм. и в нашем случае равен 66.6 мм.

J и h3 — символы, нужные больше специалистам. В J зашифрована информация о конструкции бортовых закраин обода (может быть JJ, JK, K или L). А h3 — это код конструкции хампов (hump) — кольцевых выступов на посадочных полках обода, служащих для надежного удержания бескамерной шины на диске (вариаций много: H, FH, AH…). Есть простой хамп Н , двойной Н2, плоский FH (Flat Hump), асимметричный AH (Asymmetric Hump), комбинированный CH (Combi Hump)… Иногда обходятся и без хампов;

hump — это небольшие выступы на поверхности диска, сделанные для бескамерной шины.  В поворотах они  улучшают фиксацию борта покрышки на диске, тем самым не допуская разгерметизацию колеса.
Многие производители легкосплавных дисков делают DIA большего диаметра, а для центровки на ступице используют переходные кольца.

 

На диске также может быть указано:
Дата изготовления. Обычно год и неделя. Например: 0407 означает, что диск выпущен в 3 неделю 2007 года.
SAE, ISO, TUV — клеймо контролирующего органа. Маркировка свидетельствует о соответствии колес международным правилам или стандартам.
MAX LOAD 2000LB — очень часто встречается обозначение максимальной нагрузки на колесо (обозначают в килограммах или фунтах). Например, максимальная нагрузка 2000 фунтов (908кг)
PCD 100/4 – присоединительные размеры;
MAX PSI 50 GOLD – означает, что давление в шине не должно превышать 50 фунтов на квадратный дюйм (3,5кгс/кв.см) , словo COLD (холодный) напоминает, что измерять давление следует в холодной шине.

 

Page not found — автомануал заказ автокниг с доставкой в любую точку мира

НАШИ ПАРТНЕРЫ:

Любой современный легковой или грузовой автомобиль можно обслуживать и ремонтировать самостоятельно, в обычном гараже. Все что для этого потребуется – набор инструмента и заводское руководство по ремонту с подробным (пошаговым) описанием выполнения операций. Такое руководство должно содержать типы применяемых эксплуатационных жидкостей, масел и смазок, а самое главное – моменты затяжки всех резьбовых соединений деталей узлов и агрегатов автомобиля. Итальянские автомобили – Fiat (Фиат) Alfa Romeo (Альфа Ромео) Lancia (Лянча) Ferrari (Феррари) Mazerati (Мазерати) имеют свои конструктивные особенности. Также в особую группу можно выделить все французские машины – Peugout (Пежо), Renault (Рено) и Citroen (Ситроен). Немецкие машины сложные. Особенно это относится к Mercedes Benz (Мерседес Бенц), BMW (БМВ), Audi (Ауди) и Porsche (Порш), в чуть меньшей — к Volkswagen (Фольксваген) и Opel (Опель). Следующую большую группу, обособленную по конструктивным признакам составляют американские производители- Chrysler, Jeep, Plymouth, Dodge, Eagle, Chevrolet, GMC, Cadillac, Pontiac, Oldsmobile, Ford, Mercury, Lincoln. Из Корейских фирм следует отметить Hyundai/Kia, GM-DAT (Daewoo), SsangYong.

Совсем недавно японские машины отличались относительно низкой первоначальной стоимостью и доступными ценами на запасные части, но в последнее время они догнали по этим показателям престижные европейские марки. Причем это относится практически в одинаковой степени ко всем маркам автомобилей из страны восходящего солнца – Toyota (Тойота), Mitsubishi (Мицубиси), Subaru (Субару), Isuzu (Исудзу), Honda (Хонда), Mazda (Мазда или как говорили раньше Мацуда), Suzuki (Сузуки), Daihatsu (Дайхатсу), Nissan (Ниссан). Ну, а машины, выпущенные под японо-американскими брендами Lexus (Лексус), Scion (Сцион), Infinity (Инфинити), Acura (Акура) с самого начала были недешевыми.

 

Отечественные автомобили также сильно изменились с введением норм евро-3. лада калина, лада приора и даже лада нива 4х4 теперь значительно сложнее в обслуживании и ремонте.

что делать если машина не заводится, как зарядить аккумулятор, как завести машину в мороз. ответы на эти вопросы можно найти на страницах сайта и книг. представленных здесь же

Автомануал — от англ. manual — руководство. Пособие по ремонту автомобиля или мотоцикла. различают заводские руководства и книги , выпущенные специализированными автомобильными издательствами.

Cайт Автомануал не несет никакой ответственности за возможные повреждения техники или несчастные случаи, связанные с использованием размещенной информации.

Маркировка литых дисков: как расшифровать?


Как расшифровывается маркировка литых дисков? Этим вопросом задаются многие автовладельцы, планирующие установку новых колёс на свою машину.

При подборе дисков на тот или иной автомобиль необходимо обязательно знать параметры, по которым подходят диски. Все они зашифрованы в маркировке.

Из этой статьи вы узнаете:

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


 Где искать маркировку?

Маркировочный код должен располагаться на колесном диске, как правило его указывает производитель в нескольких местах:

  • В районе ступичного центровочного кольца либо в плоскости, где сопрягается ступица и колесный диск, причем как с внутренней стороны, так и с наружной.
  • В пределах периметра обода диска (снаружи или внутри).

Что означает маркировка на дисках?

Маркировка может быть самой различной по внешнему виду и включать в себя большое количество символов, но в основном, необходимо выделить только ключевые параметры диска.

Пример типичной маркировки: 6,5J×16 h3 5×114,3 ET45 D64,1

Разберем каждую составляющую этой маркировки по отдельности:


J

   6,5J×16. Первая цифра с латинской буквой говорит о ширине обода диска, которая исчисляется в дюймах, а также маркировку закраины обода диска. Иногда можно встретить маркировку с двумя буквами JJ, что является признаком усиленного обода. Число 16 − это, собственно, диаметр колесного диска и он также измеряется дюймами, при этом учет величины не предусматривает высоту закраин колесного диска.


h3 (hump)

   h3 (hump). Это литера обозначает выступ кольца (H) на посадочной площадке обода. Хампы необходимы для надежной и четкой фиксации бортов шин без камер при боковом воздействии (например в поворотах) и препятствуют оттоку воздушных масс из покрышки. В случае с индексом h3 необходимо подчеркнуть, что подобные выступы имеются уже на двух сторонах диска.


D

   D64,1. Под данной маркировкой имеется ввиду диаметр центрального отверстия для ступицы колесного диска. Параметры отверстия измеряются с привалочной плоскости. DIA − один из ключевых индексов, которые определяют соответствие диска к конкретной машине. Если данный параметр точно совпал и на колесном диске, и на ступице, то в таком случае можно говорить об абсолютном центрировании колеса. Если же параметры на диске и ступице не совпадают, то финальное центрирование может быть обеспечено посредством сферических/конических форм у болтов крепления либо гаек, а также соответствующим им отверстий колесного диска. Еще один вариант − использование центровочных колец.

Идеальная посадка может быть обеспечена в случае установки оригинальных колесных дисков либо дисков, которые предписаны регламентом конкретного автопроизводителя. Зачастую производители колесных дисков комплектуют свою продукцию центровочными кольцами, что позволяет удешевить производство дисков и максимально их унифицировать со многими моделями автомобилей.


PCD

   5×114,3. Первая цифра означает численность крепежных отверстий диска к ступице (5 болтов или 5 гаек). Вторая цифра − это показатель диаметра окружности отверстий (114,3 миллиметров) − PCD.


ET

   ET Данный параметр расшифровывается как вылет колесного диска. Это расстояние между плоскостью симметрии дискового обода и креплением диска. Для каждой конкретной машины вылет устанавливается заводом-производителем.

Придерживаясь данных значений здесь http://www.diskiplus.ru/catalog/wheels/porsche/ можно точно и безошибочно выбрать нужный колесный диск для своего автомобиля, который обеспечит стабильное поведение на дороге и продолжительный срок службы его ходовой части и рулевого управления.

Маркировка обозначений и расшифровка колесных дисков, читать тут

При выборе и установке любой запчасти на автомобиль весьма важно обращать внимание на маркировку и соответственно маркировка колесных дисков тому не исключение.

На диски легковых автомобилей ее наносят на коробку с дисками, внутреннюю поверхность запчасти и документацию, которая прилагается к данному изделию.

Расшифоровка маркировки дисков для автомобилей

Как правило, на изделие вы можете увидеть такие обозначение, как 8 J *16 Н2 5/112 ET 35 d 66.6. Для новичков данный набор цифр и букв совершенно ничего не говорит, поэтому давайте разбираться на представленном примере, что и как читается.

  1. «8» — этот символ говорит о ширине обода диска и измеряется в дюймах. Важно при монтаже колеса на автомобиль, чтобы ширина диска соответствовала ширине колеса. В противном случае покрышка может слететь.
  2. «J» — этот символ обозначает особенности конструкции, ее углов наклона и радиус закругления дисков.
  3. «16» — обозначает диаметр обода колеса. Разбирая обозначение колесных дисков стоит отметить, что данный показатель также измеряется в дюймах и соответствует диаметру покрышки. На рынке представлены автомобильные диски диаметром 12-32 дюйма, но наиболее популярные – это 14-16 дюймов.
  4. «h3» — говорит о кольцевых выступах, что расположены на полках обода и известны, как хампы. Указанная маркировка говорит о том, что диск оснащен двумя хампами, что характерно для большинства моделей данного элемента.
  5. «5/112» — PCD – цифра пять говорит о том, что параметры колесного диска предусматривают пять отверстий для крепления болтами либо гайками. Под цифрой «112» подразумевается диаметр расположения крепежных отверстий на колесном диске. Он измеряется в миллиметрах.
  6. «ET» — это вылет диска, который в некоторых странах обозначают OFFSET и DEPORT. Единица измерения миллиметры. Данный показатель говорит о расстояние между плоскостью, что прилегает к автомобильной ступице и плоскостью, которая проходит по оси симметрии обода.
  7. «d» показатель говорит о диаметре центрального отверстия, отведенного под ступицу.

Дополнительные характеристики автомобильных дисков

Не исключена и дополнительная маркировка колесных дисков, которая может быть представлена:

  1. «0116» — данная надпись говорит о дате выпуска дисков. Указывается год изготовления и неделя. В данном примере запись читается как первая неделя 2016 года.
  2. MAX LOAD 2500 LB – говорит о максимально допустимой нагрузке на одно колесо – 2500 фунтов.
  3. TUV, SAE, PCT, ISO говорит о том, что колесный диск прошел проверку всех контролирующих органов.
  4. MAX PCI 40 GOLD – обозначает допустимое давление в шинах. В данном примере не более 40 фунтов на один дюйм квадратный. А маркировка GOLD говорит, что замеры могут быть проведены лишь в холодной шине.

3 октября 2016

Как расшифровать дискету Black Ops времен холодной войны и завершить операцию Хаос

Итак, вы хотите узнать, как расшифровать дискету Call of Duty: Black Ops времен холодной войны и завершить операцию «Хаос»? Что ж, вы пришли в нужное место. В шпионской игре 80-х есть несколько побочных головоломок, требующих от вас серьезной шпионской работы, а операция «Хаос» — довольно сложная.

Black Ops Операция времен холодной войны Красный цирк | Black Ops Окончание холодной войны | Black Ops Зомби времен холодной войны | Black Ops Холодная война Dark Ops | Black Ops Лучшее оружие времен холодной войны | Убить или спасти оперативника Black Ops холодной войны Лукас Рихтер

Оперативник ЦРУ Рассел Адлер и его тайная команда пытаются выследить Персея, советского шпиона, который приложил руку к довольно большому количеству глобальных банок с печеньем.Есть две побочные миссии, которые помогут вам победить некоторых из его союзников, и операция «Хаос» является более сложной из двух.

Операция «Хаос» ставит перед вами задачу найти Роберта Олдрича, офицера ЦРУ, перешедшего на сторону Советского Союза и основавшего «спящую ячейку» в США. Чтобы завершить миссию, вам придется немного поработать на протяжении основных миссий кампании и собрать доказательства, которые помогут вам решить числовую головоломку, которая расшифрует дискету. Если вы пропустите какие-либо доказательства, описанные ниже, помните, что вы можете вернуться и воспроизвести каждую миссию, прежде чем начинать последнюю, так что не волнуйтесь.

Без лишних слов, вот как расшифровать дискету Call of Duty: Black Ops Cold War и завершить операцию «Хаос».

ВНИМАНИЕ! Спойлеры для Call of Duty: Black Ops Cold War после этого момента.

Где найти доказательства Call of Duty: Black Ops Операция холодной войны Хаос

(Изображение предоставлено Activision)

Есть три доказательства, которые вам нужно найти, которые помогут вам расшифровать дискету, и они разбросаны по трем разным миссиям.Вот три доказательства и где их найти.

  • Закодированное сообщение : Вы получите это от Квазима в конце первой миссии, «Нигде бежать» — если вы не бросите его через край. Допросите его и попросите рассказать вам больше об Араше, и вы получите это доказательство.
  • Numbers Station Broadcast: Во время миссии «Кирпич в стене» есть возможность освободить информатора, который помог вам получить информацию о советских шпионах. Пройдите туда, где его держат на складе, избавьтесь от охранников, и вы найдете аудиопленку, лежащую на столе. На нем буквально написана «Операция Хаос», вы не можете ее пропустить.
  • Титульная страница газеты The Observer: Внутри странного американского городка, построенного Советскими войсками на базе во время миссии Redlight, Greenlight, есть фальшивый бар. Наверху — последнее свидетельство — первая страница The Observer.

Как получить Call of Duty: Black Ops Код операции Cold War Operation Chaos и кодовую фразу

(Изображение предоставлено Activision)

Теперь, когда у вас есть все три доказательства, вам нужно использовать их, чтобы получите код и парольную фразу , которые расшифруют дискету.Кажется, что каждый игрок получит свое решение этой головоломки, поэтому вам придется немного поработать ногами самостоятельно. Как вы можете видеть на моем скриншоте, на данный момент я не получил окончательного доказательства, поэтому мне не хватает некоторых важных цифр в закодированном сообщении. Не волнуйтесь, у вас будет полный набор цифр, если вы соберете все три доказательства.

Наденьте уши и приготовьтесь заняться математикой. Вот как получить кодовую фразу и код.

  • Парольная фраза : Откройте закодированное сообщение и изучите лист бумаги. Вы заметите последовательность красных и синих цифр и букв с одной горизонтальной линией, заполненной только цифрами и вопросительными знаками. Красные числа и синие числа следуют шаблону, и вам нужно выяснить, что это за шаблон, чтобы выяснить, какие числа отсутствуют. У всех разные модели, так что приготовьтесь к математике. Как только вы выясните, какие числа отсутствуют, вы получите четырехзначную последовательность, которая соответствует городу на Numbers Station Broadcast.Этот город — ваша кодовая фраза.
  • Код : изучите титульную страницу наблюдателя, на которой будет случайный набор букв, написанных красным (эти буквы разные для каждого игрока). Если вы снова посмотрите трансляцию Numbers Station, одно из мест можно будет обозначить по буквам красных букв на газете. Выясните, какой у вас город, а затем получите соответствующий код города в программе Numbers Station Broadcast. Это ваш код.

Как расшифровать дискету Black Ops времен холодной войны и завершить операцию Хаос

Все, что вам нужно сделать сейчас, это выбрать «Расшифровать дискету» и ввести свой код и парольную фразу из головоломок, которые вы решили.Если вы все сделали правильно, вы взломаете код, расшифруете дискету и получите информацию, необходимую для Operation Chaos.

Как сделать гигантский диск для декодирования

Ваши дети любят секретные коды?

Пару месяцев назад мой сын начал делать бумажные декодирующие диски, чтобы писать секретные сообщения. Идея была вдохновлена ​​этой классной книгой для мальчиков (партнерские ссылки включены в пост). С тех пор мы писали друг для друга сообщения, и еще до того, как школа закончилась, мы подготовили диски для всего его класса.Мы так весело писали код, но, может быть, в душе я всего лишь тайный шпион.

Откуда пошло дальше. . .

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

А потом меня ударило по голове большим деревянным кругом.Я должен построить гигантский диск для декодирования. Это могло бы послужить мне местом для установки лотка, но с дополнительной функцией декодирования сверхсекретных сообщений это было бы круто.

Если вашим детям нравится расшифровывать секретные сообщения, этот проект им понравится! Я держал это сюрпризом до тех пор, пока все не было сделано, и пока не закончилось наше последнее раскрытие как конец охоты за мусором.

Как сделать гигантский диск для декодирования

Необходимых материалов:

Я купил свои два деревянных патрона в Home Depot. Проверьте их сайт, чтобы узнать, есть ли они в наличии в вашем местном магазине. Я поговорил с одним человеком, который сказал мне, что у них их нет, но затем, когда я спросил другого сотрудника и показал ему свой телефон с отчетом «в наличии», он стал искать, пока их не нашли.

Вы бы проявили смекалку (а я не был…), чтобы сначала определить центр вашего круга. Смотрите видео ниже для инструкций. Мне нравится смотреть на вещи, и я хотел сразу погрузиться в происходящее. И я так и сделал.

Первое, что нужно сделать, это отметить место, где должны располагаться 26 букв алфавита на деревянном круглом меньшем размере .Я нарисовал звездочку из малярной ленты, чтобы разделить пространство. Имейте в виду, что из 26 букв 13 должны занимать каждую половину. Это означает, что A и N должны быть прямо напротив друг друга.

Отметив клейкой лентой, напишите буквы карандашом.

Убедитесь, что размер ваших букв соответствует. Я использовал край линейки для начала буквы, а затем отрегулировал мои буквы так, чтобы они были чуть больше дюйма в высоту.

Когда вы будете довольны расположением букв и их размерами, достаньте дровяной инструмент.Это требует некоторой практики, но даже после того, как я немного поработал, некоторые из моих писем были не совсем красивыми. Инструмент должен быть очень горячим. Время от времени делайте перерыв между буквами, чтобы дать кончику разогреться. Плавные, сильные удары — это то, к чему вы стремитесь.

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

При необходимости перебрать буквы горелкой второй раз.

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

После определения центра круга просверлите отверстия.Они должны соответствовать стягивающему винту 3/8 ″.

Есть два способа определить интервал между нижними круглыми буквами. Вы можете повторить процесс из первого раунда или определить размещение на основе верхнего раунда. Я выбрал второе. Чтобы освободить пространство таким образом, выровняйте деревянные раны, вставив на место стягивающий винт.

Напишите буквы на нижнем круге карандашом, проходя через весь алфавит.

Снова вытащите линейку, чтобы убедиться в единообразии.При необходимости отрегулируйте. При необходимости сотрите. Я сделал эти буквы крупнее. . . 1 3/4 ″.

СОВЕТ. Если вам не удается удалить все карандашные отметки и вы используете светлое пятно, возьмите кусок наждачной бумаги и отшлифуйте их.

Затем разделите два деревянных круга для удобства и сожгите буквы на нижнем круге.

После того, как оба набора букв сожжены, вам нужно создать кодовые ключи , как на фотографии выше.

Когда вы отправляете код, вы должны сказать своим детям, как его следует расшифровывать.Как они узнают, с чего начать декодирование дисков, чтобы они могли правильно перевести ваше сообщение? Вы скажете им, чтобы они выровняли доски, где A = K? Или вы будете использовать специальные символы? Я выбрал символы.

Если ваша доска поворачивается как моя, возможно, вы не сможете вращать круги и каждый раз выстраивать буквы в линию. У меня было три позиции, в которых буквы хорошо сочетались друг с другом. В этих местах вам нужно будет прожечь символы кодовых ключей.

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

Когда вы закончите прожиг, покрасьте диски декодирования в любой цвет по вашему выбору.

Запечатайте диски. Я использовал гидроизоляцию для колод, которым было 20+ лет, и некоторые части оставались липкими.

Итак, я добавил пару слоев акрилового спрея для внутренних и наружных работ.

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

Мебельные направляющие помогут вашему верхнему декодирующему диску скользить по нижнему. Подумайте об этом как о создании ленивой Сьюзан, и эти ребята не только разделят два слоя, но и помогут поддерживать и поворачивать верхний диск.

Забейте скольжения в доску. Если вы приобрели материалы того же размера, что и я, не нужно беспокоиться о том, что острые концы мебельных направляющих будут проткнуть нижнюю доску.

Просверлите пилотное отверстие в культе. Убедитесь, что вы сверлите подходящий размер! Мы не сделали его достаточно большим и открутили винт. К счастью, культя была немного продолговатой, и мы просверлили новую дырку рядом с исходным местом.

Проверьте, сколько шайб вам нужно между досками, чтобы они не превышали высоту скольжения мебели.

Теперь расположите центральное отверстие нижнего декодирующего диска над пилотным отверстием культи.Затем выровняйте шайбы над отверстием.

Добавьте верхний диск декодирования и еще одну шайбу. Затем вставьте и затяните стопорный винт через древесину и в пень, используя храповик или ударную отвертку.

Для пояснения, вот порядок материалов сверху вниз:

Стягивающий винт
Одна шайба
Малый декодирующий диск
Мебельные направляющие и несколько шайб (по высоте).
Диск декодирования большего размера
Пень

Вот как это выглядит после завершения:

Я отправил детей через дом и двор на охоту за мусором. Это был последний ключ к разгадке.

(Беседка = Дом на дереве)

Обратите внимание, что мой кодовый ключ для этого секретного сообщения — это символ бесконечности. Детям пришлось выстроить символ бесконечности на верхнем и нижнем диске, чтобы понять значение кода.

Вот они бегают по лесу, чтобы обнаружить свое удивление.

Пишу код сестре!

При написании кодов я считаю, что проще всего написать на бумаге букву верхнего диска, чтобы указать и раскрыть букву нижнего диска.Но не заблуждайтесь, написание кода требует концентрации и супер шпионского внимания. Легко перепутать и написать наоборот.

Веселитесь, мои шпионы!

Что подумали бы ваши дети, если бы вы построили для них этот гигантский диск для декодирования? Им бы это понравилось?

Innova Golf Disc Сокращения

Вы когда-нибудь задумывались, что означают эти буквы на внутреннем кольце вашего диска Innova? У вас есть диск, в котором вы не уверены, и вам нужно узнать, что это за модель?

Посмотрите таблицу ниже, чтобы расшифровать ваш диск!

Сокр. Innova Диск Скорость Скольжение Поворот Затухание
AA Архангел 8 6 -4 1
AC Архонт 11 5-2 2
AE Аэро (X) 3 6 0 0
ОБЕЗЬЯ Обезьяна 13 5 0 4
AV Классический Авиар 2 3 0 0
BA, B Банши 7 3 0 3
BB Драйвер Aviar 2 3 0 2
BD Птичка 1 2 0 0
BO Босс 13 5 -1 3
БСТ Зверь 10 5 -2 2
CH Гепард 6 4-2 2
класс Кольт 3 4 -1 1
CO Королевская кобра (X) 4 5 0 2
CO Кобра 4 5-2 2
CRO Cro (X) 5 3 0 2
CS Колосс 14 5 -2 3
CY Койот (X) 4 5 0 1
DG Дракон 8 5-2 2
DL Дедал 13 6 -3 2
DM, DR Доминатор 13 5 -1 2
DS, D Эсминец 12 5 -1 3
DT Дротик 3 4 0 0
DV Teedevil 12 5 -1 2
EG, E, EX Орел 7 4 -1 3
FB Жар-птица 9 3 0 4
FL FL (Х) 9 3 0 2
FT Фоксбат (X) 5 6 -1 0
GT Аллигатор 5 2 0 3
GV Паз 13 6-2 2
GZ ГАЗель 6 4 0 2
HY Гидра 3 3 0 2
JK JK Авиар 2 3 0 2
КА Катана 13 5 -3 3
KC КС Авиар 2 3 0 2
KR Крайт 11 5 -1 2
кт, к Воздушный змей 5 6 -3 1
л Леопард 6 5 -2 1
L3 Леопард 3 7 5-2 1
МАКС Макс. (X) 11 3 0 5
МБ Мамба 11 6-5 1
MC Монарх 10 5 -4 1
MG Мираж 3 4 -3 0
МК Мако 4 5 0 0
МК3, МК Мако 3 5 5 0 0
MN Манта 5 5-2 2
МО, М Монстр (X) 10 3 0 5
ORC, O Орк 10 4 -1 3
PA Пантера 5 4-2 1
ПК Хорек 1 3 0 0
СВИНЬЯ, П Свинья 3 1 0 3
R, KCR, OR Roc 4 4 0 3
R + Roc + 4 5 0 2
R3, R Roc 3 5 4 0 3
RR Roadrunner 9 5 -4 1
RY Рино 2 1 0 3
SD Шпилька 3 3 0 2
SF Звездный огонь 10 4 0 3
SH Акула 4 4 0 2
Ш4, Ш Акула 3 5 4 0 2
SK Скитер 5 5 -1 1
СП Паук 5 3 0 1
СТ Стингрей 4 5 -3 1
SW Сайдвиндер 9 5 -3 1
SY Шрайк 13 6 -2 2
Т3 Teebird3 8 4 0 2
ТБ, Т Тройник 7 5 0 2
TE Крачка 12 6 -3 2
TH Thunderbird 9 5 0 2
TL TL 7 5 0 1
TL3 TL3 8 4 0 1
TR ТиРекс (Х) 11 4 0 4
ВК VCobra 5 5 -1 2
VG Викинг 9 4 -1 2
VI, V Гадюка 6 4 1 5
VL Валькирия 9 4-2 2
VR VRoc 4 4 0 1
ВУ Вулкан 13 5 -4 2
WA Wahoo 12 6 -2 2
WB Вомбат 5 6 -1 0
WD, WE клин 3. 5 3 -3 1
WF, W Волк 4 3 -4 1
WH, WX Уиппет (X) 6 3 1 5
WL Кит 2 3 0 1
WR Призрак 11 5 -1 3
XC Xкалибр 12 5 0 4
XD XD 3 4 -1 1
Ұ Йети Авиар 2 3 0 1
Атлас 5 4 0 1
Новая 2 3 0 0
Авиар 2 3 0 1
Соник (X) 1 2 -4 0

Расшифровка динамики передачи сигналов кальция во время развития крыловых дисков дрозофилы

Abstract

Надежная спецификация развития органов зависит от скоординированной межклеточной коммуникации. Этот процесс требует интеграции сигналов между несколькими путями, полагаясь на вторичных мессенджеров, таких как ионы кальция. Передача сигналов кальция кодирует значительную часть клеточного состояния, регулируя факторы транскрипции, ферменты и белки цитоскелета. Однако отношения между входными данными, определяющими развитие клеток и органов, динамику передачи сигналов кальция и морфологию конечного органа, изучены плохо. Здесь мы разработали конвейер количественного анализа изображений для декодирования передачи сигналов кальция на уровне органов.С помощью этого конвейера мы извлекли пространственно-временные особенности динамики передачи сигналов кальция во время развития личиночного крылового диска Drosophila , генетической модели органогенеза. Мы определили определенные классы фенотипов крыльев, которые возникли в результате нарушений пути передачи сигналов кальция, включая дефекты общей морфологии, дифференцировки жилок и общего размера. Мы обнаружили четыре качественных класса сигнальной активности кальция. Эти классы могут быть упорядочены на основе силы стимуляции агониста G α q-опосредованной передачи сигналов.Динамика передачи кальциевых сигналов in vivo зависит от активности как рецепторной тирозинкиназы / фосфолипазы C γ , так и активности рецептора, связанного с G-белком / фосфолипазы C β . Мы обнаружили, что пространственно структурированная динамика кальция коррелирует с известной дифференциальной скоростью роста между передним и задним отделами. Интегрированная сигнальная активность кальция снижается с увеличением размера ткани и реагирует на морфогенетические пертурбации, влияющие на рост органов. Вместе эти находки определяют, как динамика передачи сигналов кальция интегрирует входящие сигналы выше по течению, чтобы обеспечивать выходы множественных ответов в развивающихся эпителиальных органах.

Рекомендуемые статьиЦитирующие статьи (0)

Просмотреть аннотацию

© 2019 Biophysical Society.

Рекомендуемые статьи

Цитирующие статьи

saoudrizwan / Disk: Замечательный фреймворк для iOS для простого сохранения структур, изображений и данных

Монтаж • Применение • Отладка • Слово • Документация • Приложения, использующие диск • Лицензия • Способствовать • Вопросов?

Disk — это мощная и простая библиотека управления файлами , созданная с учетом рекомендаций Apple по хранению данных iOS. Диск использует новый протокол Codable , представленный в Swift 4, с максимальным преимуществом и дает вам возможность сохранять структуры, не беспокоясь о кодировании / декодировании. Диск также помогает сохранять изображения и другие типы данных на диск с помощью всего одной строчки кода.

Совместимость

Disk требует iOS 9+ и совместим с проектами, использующими Swift 4.0 и выше. Поэтому при работе с Диском вы должны использовать как минимум Xcode 9.

Установка

Участники

Support Disk с ежемесячной подпиской на https://gitroyalty.com/saoudrizwan/Disk для установки этого пакета.


* поставляется с 2-недельной бесплатной пробной версией и может быть отменен в любое время

Использование

Диск в настоящее время поддерживает сохранение следующих типов:

  • кодируемый
  • [кодируемый]
  • UIImage
  • [UIImage]
  • Данные
  • [Данные]

Обычно это единственные типы, которые вам когда-либо понадобятся в iOS.

Disk соответствует рекомендациям Apple по хранению данных iOS и, следовательно, позволяет сохранять файлы в четырех основных каталогах и общих контейнерах:

Справочник документов
. Документы

В каталоге / Documents должны храниться только документы и другие данные, созданные пользователем или которые не могут быть воссозданы другим способом с помощью приложения , и iCloud будет автоматически создавать их резервную копию.

Каталог кешей
.тайники

Данные о том, что можно повторно загрузить или восстановить , следует хранить в каталоге / Library / Caches. Примеры файлов, которые вы должны поместить в каталог Caches, включают файлы кэша базы данных и загружаемый контент, например, используемый журналами, газетами и картографическими приложениями.

Используйте этот каталог для записи любых файлов поддержки для конкретного приложения, которые вы хотите сохранить между запусками приложения или во время обновления приложения. Ваше приложение обычно отвечает за добавление и удаление этих файлов (см. Вспомогательные методы). Он также должен иметь возможность воссоздавать эти файлы по мере необходимости, потому что iTunes удаляет их во время полного восстановления устройства. В iOS 2.2 и более поздних версиях iTunes не выполняет резервное копирование содержимого этого каталога.

Обратите внимание, что система может удалить каталог Caches /, чтобы освободить место на диске, поэтому ваше приложение должно иметь возможность повторно создавать или загружать эти файлы по мере необходимости.

Справочник поддержки приложений
.applicationSupport

Поместите файлы поддержки, созданные приложением, в каталог / Library / Application support. Как правило, этот каталог включает файлы, которые приложение использует для запуска, но которые должны оставаться скрытыми от пользователя. Этот каталог также может включать файлы данных, файлы конфигурации, шаблоны и измененные версии ресурсов, загруженные из пакета приложений.

Временный справочник
. Временный

Данные, которые используются только временно, должны храниться в каталоге / tmp.Хотя эти файлы не копируются в iCloud, не забудьте удалить эти файлы, когда закончите с ними, чтобы они не занимали место на устройстве пользователя.

Общий контейнер группы приложений
.sharedContainer (appGroupName: String)

Несколько приложений на одном устройстве могут получить доступ к общему каталогу, если эти приложения имеют одинаковый идентификатор группы в массиве прав com.apple.security.application-groups , как описано в разделе Добавление приложения в группу приложений в Справке по ключу прав.

Для получения дополнительной информации посетите документацию: https://developer.apple.com/documentation/foundation/nsfilemanager/1412643-containerurlforsecurityapplicati


При всех этих требованиях и передовых методах работа с файловой системой iOS может оказаться сложной задачей, поэтому и родился Disk. Диск делает следование этим утомительным правилам простым и увлекательным занятием.

Использовать диск очень просто.

Диск обрабатывает ошибки, выбрасывая их . См. Обработка ошибок с помощью Do-Catch.

Конструкции (должны соответствовать

кодируемой )

Допустим, у нас есть модель данных под названием Сообщение

 struct Message: Codable {
    let title: String
    let body: String
} 

… и мы хотим сохранить сообщение на диске …

 let message = Сообщение (заголовок: «Привет», текст: «Как дела?») 
 попробуйте Disk.save (message, to: .caches, as: "message.json") 

… или, может быть, мы хотим сохранить его в папке …

 попробуйте Диск.save (message, to: .caches, as: "Folder / message.json") 

… мы могли бы захотеть получить это сообщение позже …

 let retrievedMessage = try Disk.retrieve ("Папка / message.json", из: .caches, как: Message.self) 

Если вы нажмете Option + щелкните retrievedMessage , то Xcode покажет его тип как Сообщение . Довольно аккуратно, да?

Так что же произошло на заднем плане? Диск сначала преобразует сообщение в данные JSON и атомарно записывает эти данные во вновь созданный файл по адресу / Library / Caches / Folder / message.json . Затем, когда мы получаем сообщение , Диск автоматически преобразует данные JSON в наш тип структуры Codable .

А как насчет массивов структур?

Благодаря мощности Codable хранение и извлечение массивов структур так же просто, как и приведенный выше код.

 var messages = [Сообщение] ()
для i в 0 .. <5 {
    messages.append (Сообщение (title: "\ (i)", body: "..."))
} 
 попробуйте Disk.save (messages, to:.кеши, как: "messages.json") 
 let retrievedMessages = try Disk.retrieve ("messages.json", from: .caches, as: [Message] .self) 

Добавление структур (Спасибо за предложение @benpackard)

Disk также позволяет добавлять в файл структуру или массив структур с данными того же типа.

 попробуйте Disk.append (newMessage, to: "messages.json", in: .caches) 

Примечание: вы можете добавить одну структуру к пустому файлу, но затем, чтобы правильно получить эту структуру снова, вы должны получить ее как массив.

Использование кастомного JSONEncoder или JSONDecoder (Спасибо @nixzhu и @mecid)

За кулисами Disk использует классы Apple JSONEncoder и JSONDecoder для кодирования и декодирования необработанных данных JSON. Вы можете использовать собственные экземпляры этих классов, например, если вам требуются специальные стратегии кодирования или декодирования.

 пусть кодировщик = JSONEncoder ()
encoder.keyEncodingStrategy = .convertToSnakeCase
попробуйте Диск.сохранить (сообщения, в: .caches, как: "messages.json", кодировщик: кодировщик) 
 пусть декодер = JSONDecoder ()
decoder.keyDecodingStrategy = .convertFromSnakeCase
let retrievedMessages = попробуйте Disk.retrieve ("messages.json", from: .caches, as: [Message] .self, decoder: decoder) 

Примечание: для добавления структуры Codable требует, чтобы Диск сначала декодировал любые существующие значения в месте расположения файла, добавил новое значение, а затем закодировал получившуюся структуру в это место.

 попробуйте Диск.append (newMessage, to: "messages.json", in: .caches, decoder: decoder, encoder: encoder) 

Изображения

 let image = UIImage (named: "nature.png") 
 попробуйте Disk.save (image, to: .documents, as: "Album / nature.png") 
 let retrievedImage = try Disk.retrieve ("Album / nature.png", from: .documents, as: UIImage.self) 

Массив изображений

Несколько изображений сохраняются в новую папку. Затем каждое изображение получает имя 0.png, 1.png, 2.png и т. Д.

.
 var images = [UIImages] ()
//... 
 попробуйте Disk.save (images, to: .documents, as: "FolderName /") 

Вам не нужно включать "/" после имени папки, но это декларативно, что вы не записываете все данные изображений в один файл, а скорее как несколько файлов в новую папку.

 let retrievedImages = попробуйте Disk.retrieve ("FolderName", из: .documents, как: [UIImage] .self) 

Допустим, вы сохранили кучу изображений в такую ​​папку:

 попробуйте Disk.save (олень, в: .documents, как: "Природа / олень.png ")
попробуйте Disk.save (лев, to: .documents, как: "Nature / lion.png")
попробуйте Disk.save (bird, to: .documents, as: "Nature / bird.png") 

И, возможно, вы даже сохранили файл JSON в этой папке Nature:

 попробуйте Disk.save (дневник, в: .documents, как: "Nature / diary.json") 

Затем вы можете получить все изображения в папке Nature следующим образом:

 let images = try Disk.retrieve ("Природа", от: .documents, как: [UIImage] .self) 

... что вернет -> [олень.png, lion.png, bird.png]

Добавление изображений

В отличие от того, как добавление структуры просто изменяет существующий файл JSON, добавление изображения добавляет это изображение как независимый файл в папку.

 попробуйте Disk.append (goat, to: "Nature", in: .documents) 

Примечание: рекомендуется вручную сохранить независимое изображение с помощью функции save (: to: as :) , чтобы указать имя для этого файла изображения на случай, если вы захотите получить его позже.Использование функции append (: to: in :) приводит к созданию файла с автоматически сгенерированным именем (т.е. если вы добавляете изображение в папку с уже имеющимися изображениями (0.png, 1.png, 2.png) ), тогда новое изображение будет называться 3.png.) Если имя изображения не важно, то можно использовать append (: to: in :) . Добавление массивов изображений похоже на поведение.

Данные

Если вы пытаетесь сохранить такие данные, как, например, видеоданные .mp4, методы диска для Data помогут вам работать с файловой системой для сохранения всех типов данных.

 let videoData = Data (contentsOf: videoURL, options: []) 
 попробуйте Disk.save (videoData, to: .documents, as: "anime.mp4") 
 let retrievedData = try Disk.retrieve ("anime.mp4", from: .documents, as: Data.self) 

Массив данных

Диск сохраняет массивы объектов Data , как и массивы изображений, в виде файлов в папке.

 var data = [Data] ()
// ... 
 попробуйте Disk.save (data, to: .documents, as: "videos") 
 let retrievedVideos = попробуйте Диск.retrieve ("видео", от: .documents, как: [Data] .self) 

Если вы должны получить [Data] из папки с изображениями и файлами JSON, то эти файлы будут включены в возвращаемое значение. Продолжая пример из раздела Массив изображений:

 let files = try Disk.retrieve ("Природа", от: .documents, как: [Data] .self) 

... вернет -> [deer.png, lion.png, bird.png, diary.json]

Добавление данных

Добавление данных или массива данных аналогично добавлению изображения или массива изображений - новые файлы создаются с автоматически сгенерированными именами и добавляются в указанную папку.

 попробуйте Disk.append (newDataObject, to: "Folder /", in: .documents) 

Большие файлы

Важно знать, когда работать с файловой системой в фоновом потоке. Диск синхронно , что дает вам больше контроля над операциями чтения / записи в файловой системе. Apple утверждает, что «поскольку файловые операции включают доступ к диску, выполнение этих операций асинхронно почти всегда предпочтительнее».

Grand Central Dispatch - лучший способ асинхронной работы с Диском.Вот пример:

 activityIndicator.startAnimating ()
DispatchQueue.global (qos: .userInitiated) .async {
    делать {
        попробуйте Disk.save (largeData, to: .documents, как: "Movies / spiderman.mp4")
    } ловить {
        // ...
    }
    DispatchQueue.main.async {
        activityIndicator.stopAnimating ()
        // ...
    }
} 

Не забывайте обрабатывать такие прерванные задачи.

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

Apple представила несколько отличных практик хранения данных iOS в сеансе 204, сделав акцент на нескольких новых деталях емкости тома NSURL , добавленных в iOS 11.Эта информация позволяет нам определить, когда уместно хранить данные на диске пользователя.

  • Доступная емкость для важного использования. Это указывает количество места, которое может быть доступно для вещей, которые пользователь явно запросил в пользовательском интерфейсе приложения (например, загрузка видео или нового уровня для игры).
 Disk.availableCapacityForImportantUsage 
  • Доступная емкость для гибкого использования. Это указывает на объем доступного пространства для вещей, которые, вероятно, понадобятся пользователю, но не запрошены явно (т.е. следующий эпизод в сериале, который они смотрят, или недавно обновленные документы на сервере, который они могут открыть.)
 Disk.availableCapacityForOpportunisticUsage 

Примечание: Эти переменные возвращают Optional Int s, поскольку получение значений ресурсов файловой системы может завершиться ошибкой и вернуть nil . Однако это маловероятно, и такое поведение существует исключительно в целях безопасности.

Вспомогательные методы

  • Очистить весь каталог
 попробуйте Диск.remove ("video.mp4", from: .documents) 
  • Проверить, существует ли файл / папка
, если существует Disk.exists ("альбом" в: .documents) {
    // ...
} 
  • Переместить файл / папку в другой каталог
 попробуйте Disk.move ("album /", в: .documents, to: .caches) 
 попробуйте Disk.rename ("currentName.json", in: .documents, to: "newName.json") 
  • Получить URL-адрес файловой системы для файла / папки
 let url = попробуйте Disk.url (для: "album /", в:.документы) 
  • Отметьте файл / папку с помощью атрибута , не создавайте резервную копию атрибута (это сохраняет файл / папку на диске даже в ситуациях с нехваткой памяти, но предотвращает его резервное копирование с помощью iCloud или iTunes.)
 попробуйте Disk.doNotBackup ("альбом", в: .documents) 

Все, что находится в домашнем каталоге вашего приложения, копируется, за исключением самого пакета приложения, каталога кэшей и временного каталога.

 попробуйте Диск.резервная копия ("альбом", в: .documents) 

(вам, как правило, никогда не следует использовать методы .doNotBackup (: in :) и .backup (: in :) , если вы не абсолютно уверены, что хотите сохранить данные независимо от того, в каком состоянии находится устройство пользователя).

URL Аналоги

Большинство из этих вспомогательных методов имеют URL-адресов , на тот случай, если вы хотите работать с файлами напрямую с их URL-адресами файловой системы.

 let fileUrl = попробуйте Disk.url (для: "file.json ", в: .documents) 
  • Проверить, существует ли файл / папка
, если существует Disk.ex (fileUrl) {
    // ...
} 
  • Переместить файл / папку в другой каталог
 let newUrl = попробуйте Disk.url (для: "Folder / newFileName.json" в: .documents)
попробуйте Disk.move (fileUrl, to: newUrl) 
  • Пометить файл / папку атрибутом не резервировать атрибут
 попробуйте Disk.doNotBackup (fileUrl) 
  • Проверить, относится ли URL к папке
, если Диск.isFolder (fileUrl) {
    // ...
} 

Отладка

Диск - это или , что означает, что он не оставляет ошибки на волю случая. Почти все методы Disk выдают ошибки либо от имени Foundation , либо от имени пользовательских ошибок диска, на которые стоит обратить ваше внимание. Эти ошибки содержат много информации, например описание, причину сбоя и рекомендации по восстановлению:

 do {
    если Disk.exists ("posts.json", in: .documents) {
        попробуйте Disk.remove ("posts.json ", из: .documents)
    }
} перехватить ошибку как NSError {
    фатальная ошибка("""
        Домен: \ (error.domain)
        Код: \ (код ошибки)
        Описание: \ (error.localizedDescription)
        Причина сбоя: \ (error.localizedFailureReason ?? "")
        Предложения: \ (error.localizedRecoverySuggestion ?? "")
        "" ")
} 

В приведенном выше примере устранена наиболее распространенная ошибка при работе с файловой системой: удаление несуществующего файла.

Слово разработчика

После более чем восьмилетней разработки для iOS я столкнулся практически со всеми методами сохранения данных, которые можно предложить (Core Data, Realm, NSKeyedArchiver , UserDefaults и т. Д.) Ничто не подходило под все требования, кроме NSKeyedArchiver , но было слишком много обручей, чтобы перепрыгнуть через них. После того, как был выпущен Swift 4, я был очень взволнован протоколом Codable , потому что я знал, что он может предложить с точки зрения кодирования JSON. Работа с данными JSON сетевых ответов и преобразование их в пригодные для использования структуры никогда не было таким простым. Disk стремится распространить эту простоту работы с данными на файловую систему.

Допустим, мы получаем данные из сетевого запроса...

 let _ = URLSession.shared.dataTask (with: request) {(data, response, error) в
    DispatchQueue.main.async {
        Guard error == nil else {fatalError (error! .localizedDescription)}
        guard let data = data else {fatalError ("Данные не получены")}

        // ... мы можем напрямую сохранить эти данные на диск ...
        пытаться? Disk.save (data, to: .caches, as: "posts.json")

    }
} .resume () 

... и получить его позже как [Сообщение] ...

 let posts = попробуйте Диск.retrieve ("posts.json", от: .caches, как: [Post] .self) 

Disk берет на себя много утомительной и удобной работы, необходимой для кодирования данных в нужный тип, и делает это хорошо. Диск также упрощает выполнение необходимых, но монотонных задач, таких как очистка кешей или временного каталога (в соответствии с требованиями Apple iOS Data Storage Guidelines):

 попробуйте Disk.clear (. Contemporary) 

Disk также значительно быстрее, чем альтернативные решения для сохранения данных, такие как NSKeyedArchiver , поскольку он работает напрямую с файловой системой.Лучше всего то, что Disk тщательно выдает ошибки, гарантируя, что вы понимаете, почему проблема возникает, когда это происходит.

Документация

Option + щелкните любой из методов работы с диском для получения подробной документации.

Приложения, использующие диск

Лицензия

Disk использует лицензию MIT. Сообщите о проблеме, если у вас есть какие-либо вопросы или если вы хотите рассказать, как вы используете Диск.

Внести вклад

Пожалуйста, не стесняйтесь создавать проблемы для запросов функций или отправлять запросы на включение любых дополнений, которые, по вашему мнению, могут дополнить Disk и его философию.

Вопросы?

Свяжитесь со мной по электронной почте [email protected] или через twitter @sdrzn. Пожалуйста, создайте проблему, если вы обнаружите ошибку или хотите добавить функцию.

Декодирование GCR на лету

1541 недостаточно быстро для декодирования в реальном времени.

- MagerValp

Маленькая рутина, представленная здесь, со всем должным скромность, передает лучший код, который я когда-либо писал. Это эзотерично и может и нет обращаются к массам и, конечно, не имеют коммерческой ценности.Но с точки зрения личное удовлетворение от хорошо выполненной работы, это почти как никогда. Вот почему:

  • Код решает реальную практическую проблему, с которой люди боролись. с 30 лет.
  • Ключ к решению заключается в том, чтобы взглянуть на проблему из романа. угол.
  • Реализация была бы невозможна без множества уловок и умные методы кодирования. Несколько инструкций делают больше, чем одно.
  • Программа невероятно компактна и оставляет очень мало места для вариация; это решение.

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

Благодарности

Хочу поблагодарить Крилла из Плюшевый для создания отличного загрузчик, документируя его внутреннюю работу и выпуская весь исходный код и Ninja of The Мечты для краткого справочного материала Все о вашем 1541 году.

Проблема

Commodore-совместимые флоппи-диски 5,25 дюйма хранят данные с магнитной полярностью. развороты по 35 концентрическим следам на поверхности. Позиции привода считывающая головка (катушка и усилитель) над дорожкой, раскручивает диск и считывает от потока единиц и нулей. Переключатель полярности указывает на единицу, тогда как отсутствие переключения полярности в течение заданного периода времени указывает на ноль. Но потому что двигатели шпинделя в разных приводах не будут работать одинаково скорости, не разрешается хранить более двух последовательных нулей на треке.Иначе есть риск, что дисковод отсчитает слишком много или слишком мало нули, и данные выдаются неверно.

Следовательно, данные кодируются с использованием схемы, называемой GCR (групповой код Запись). На каждые четыре бита данных (также известный как nybble ) пять биты записываются на поверхность диска, выбранную из таблицы. Обратимся им как пятерка . Кодировка разработана таким образом, чтобы как бы вы ни заказывали пятерки, больше двух нулей не будет в ряд.

9029 003

Nybble Пятиместный Nybble Пятиместный
0000 01010 1000 01001
1010 11010
0011 10011 1011 11011
0100 01110 1100 01110 1100 01101
1100 01101
0110 10110 1110 11110
0111 10111 1111 10101

При чтении диска дисковод должен преобразовывать входящий битовый поток, пять бит за раз, в исходные ниблы.Биты, однако, сгруппированы вместе восемь за раз и передаются как байты ЦП 6502. Указывать что пришел новый байт, флаг переполнения в регистре состояния процессора устанавливается с помощью вывода SO. Затем процессор должен извлечь пятерки из байтов, декодировать их. согласно схеме GCR, и объединить полученные нубблы в байты. Это работа в режиме реального времени, а сроки очень жесткие: по рельсам с максимальным плотность хранения, новый байт необработанных данных в кодировке GCR прибывает каждые 26 микросекунд.

11111222 22333334 44445555 56666677 77788888

Пятерки упакованы в байты, так что каждый байт содержит части до трех разных пятерок. Наименьшее общее кратное пяти а восемь - 40, поэтому после 40 бит мы снова в фазе. Таким образом, Декодер GCR обычно содержит цикл, который имеет дело с пятью байтами в каждая итерация.

Подход коммодора

Некоторые дисководы для гибких дисков, производимые Commodore, имели частоту 2 МГц. процессоры и большие микросхемы ПЗУ с таблицами поиска для облегчения GCR расшифровка.Тем не менее, Commodore также сделал 1541 недорогой привод, который оказался чрезвычайно популярным и занял свое место в стандартная установка, используемая для демонстрационных композиций C64 (нерасширенный C64 и дискета 1541 привод). 1541 содержит один процессор 6502 с тактовой частотой 1 МГц, 2 КБ ОЗУ и 16 КБ ПЗУ.

С такими скромными характеристиками Commodore пришел к выводу, что 1541 не был способен декодировать данные GCR в реальном времени. Вместо этого необработанные данные для полный 256-байтовый сектор спрятан в буфере (320 байт, из-за расширение 5: 4).Только после этого ЦП пересматривает каждый байт в буфер, используйте серию операций сдвига и маскирования, чтобы каждая пятерка в нижнюю часть индексного регистра и выполнить поиск в таблице ROM из 32 записей. На самом деле таких таблиц ПЗУ две, одна из которых содержит младшие nybbles и один, содержащий старшие nybbles, для объединения в байт с помощью побитовое-или. Во время этого прохода не в реальном времени также вычисляется контрольная сумма сектора. и проверено.

петля
        петля bvc
        clv
        lda $ 1c01
        sta (30 долларов США), г
        iny
        петля bne
 

Цикл выборки в ПЗУ 1541 просто считывает все байты и сохраняет их в буфере.Сначала он занят-ждет, пока не будет установлен флаг переполнения. Затем он сбрасывает флаг в ожидании следующего байта. Затем текущий байт извлекается из аппаратного регистра ($ 1c01) и сохраняется в память. Этот фрагмент читает только 256 байтов, но за ним следует аналогичный цикл, который читает оставшиеся байты.

Циклу требуется 19 тактов для завершения одной итерации (при условии, что инструкция bvc сразу же проваливается). Остается несколько циклов провисания двигателя, чтобы учесть разницу в скорости двигателя в разных диски.

Цикл с более чем 26 циклами будет пропускать байты, тогда как На практике хорошо подойдет 25-тактная петля. Ровно 26 циклов вы бы испытывали удачу.

Народ не доволен работоспособностью оригинальной 1541 ROM процедуры не только из-за медленного декодирования GCR, но и из-за ужасно медленный последовательный протокол, используемый для передачи декодированных данных на компьютер. Тем не менее, единственное, что Commodore правильно понял в этом протоколе, - это что они предоставили способ загрузить код в 1541 и таким образом взять на себя дисковод гибких дисков полностью.Код замены и любые буферы данных должны соответствовать в 2 КБ ОЗУ, но этого достаточно, если все, что вам нужно, это загрузить данные как можно быстрее с диска и как можно быстрее передать его на компьютер. Такой софт называется fastloader .

Подход Криля

В качестве яркого примера современного фастлоадера давайте посмотрим, как GCR декодирование выполняется в загрузчике Крилла. Как и ожидалось, есть цикл, который принимает пять байтов данных в кодировке GCR и работает как как можно больше частичного декодирования между получением байтов (т.е.е. пока сектор проходит мимо считывающей головки). Цель - свести к минимуму выполнение время второго прохода декодирования не в реальном времени, без превышения максимальное время выполнения цикла выборки, 130 циклов (26 циклов раз пять). Частично декодированные данные хранятся в двух буферах (512 байт в total), что соответствует частично декодированным старшим и младшим нибблам.

Но Крилл также понял, что нет необходимости синхронизировать с флагом переполнения для каждого байта.

Каждая дорожка имеет статически назначенный битрейт .Как диск вращается при постоянной угловой скорости (300 об / мин) и битовой плотности среда постоянна, можно хранить больше битов на крайних дорожках. Commodore определил четыре скорости передачи данных: байт прибывает каждые 26, 28, 30 или 32 цикла.

После синхронизации присутствуют первый, второй и третий байт данных. в реестре оборудования по следующему расписанию. Таким образом, если мы сделаем обязательно прочтите регистр в безопасных зонах, указанных в последней строке, мы может читать до трех байтов после цикла bvc.

           цикл
скорость передачи 0 10 20 30 40 50 60 70 80 90
0 1111111111111111111111111111112222222222222222222222222222222233333333333333333333333333333333
1 111111111111111111111111111111222222222222222222222222222222333333333333333333333333333333
2 111111111111111111111111111122222222222222222222222222223333333333333333333333333333
3 111111111111111111111111112222222222222222222222222233333333333333333333333333
безопасные зоны 111111111111111111111 ----- --- 222222222222 ----- --- 333333 -----
 

Из-за незначительных отклонений во времени (из-за трехциклового джиттера введенный циклом bvc, и тот факт, что таймер обнаружения битов сбрасывается после каждого однобита) рекомендуется прочитать регистр оборудования пару раз едет в безопасную зону, но не намного позже.

Поскольку цикл имеет дело с пятью входящими байтами на итерацию, имеет смысл синхронизировать дважды: один раз в ожидании трех байтов и один раз в ожидание двух байтов.

После того, как байт был прочитан, он подвергается ряду сдвигов и маскирования. операций, а частично декодированные пятерки хранятся отдельно. В течение не в реальном времени, декодирование завершается и проверяется контрольная сумма. Интересно, что в загрузчике Крилла нибблы не объединены в байтов, но остаются в отдельных буферах.Это потому, что они будут в любом случае передаются поочередно и, таким образом, разбиваются на еще более мелкие части.

Крещение

В рамках моих усилий по изучению демонстрационного программирования на C64 я заинтересовался Расшифровка ГКЛ. Однажды во вспышке вдохновения я начал думать о том, что произошло бы, если бы все операции переключения были удалены. Рассмотрим второй пятиместный. Он поступает частично в первом байте, частично во втором и обычно вы пытаетесь выровнять его по правому краю в индексном регистре.На второй пятиместный, проще всего сдвинуть влево, вот так:

        11111222 22333334
        ----- 222 22 ------ маска
        --- 22222 -------- смена
 

(Цифры представляют данные из различных пятерок в кодировке GCR. тире - это нулевые биты.)

А что, если вместо смещения объединить замаскированные части в единую byte с помощью побитового или?

        11111222 22333334
        ----- 222 22 ------ маска
        22 --- 222 побитовое или
 

То есть три самых старших бита остаются в младших битах, в то время как два младших бита остаются в старших битах.Конечно, мы могли бы использовать это значение в качестве индекса в полностраничной поисковой таблице, но это было бы разреженным Таблица. Во-первых, мы замаскировали три бита, поэтому мы можем достичь только 32 из 256 записей в таблице. Но на самом деле, потому что это ГКЛ закодированные значения, мы получим доступ только к 16 из этих 32 записей, соответствующие допустимым пятеркам.

Предположим, мы делаем это со всеми восемью пятерками, получая восемь значений индекса:

        11111 ---
        22 --- 222
        --33333-
        4444 --- 4
        5 --- 5555
        -66666--
        777 --- 77
        --- 88888
 

Теперь, если бы мы выделили полную страницу ОЗУ для каждого из этих разреженных таблицы, мы использовали бы все 2 КБ.Но вот что самое интересное: все суть кодирования GCR состоит в том, чтобы гарантировать, что никогда не может быть последовательности из трех последовательные нули в битовом потоке. Поскольку мы маскируем три бита, мы вводим последовательность из трех нулей! Таким образом, каждый индекс содержит ровно один последовательность из трех или более нулевых битов, и это можно рассматривать как ключ, который выбирает один из восьми наборов записей таблицы. Если эти наборы неперекрывающиеся, мы можем объединить все восемь таблиц в одну страницу объем памяти.

К сожалению, наборы перекрываются по следующей причине: кодировка GCR Пятерка может начинаться и / или заканчиваться одним нулевым битом.Если значение индекса содержит последовательность ровно из трех нулей, мы знаем, что это ключ. Если есть последовательность из пяти нулей, мы знаем, что средние биты являются ключевыми. Но если значение индекса содержит последовательность из четырех нулей, то мы не знаем если это ключ, за которым следует бит GCR, или бит GCR, за которым следует ключ. Пример: индекс 00010110 содержит последовательность из четырех нулевых битов (биты 0, 7, 6 и 5, охватывая от правого края к левому краю). Мы не знать, следует ли это интерпретировать как -33333- (пятерка будет 01011, который декодируется как 0001) или --- 88888 ( пятикратный будет 10110, который декодируется как 0110).

Однако, если мы используем две страницы памяти, одну для нечетных пятерок и одну для четных пятерок коллизий быть не может: если четыре последовательные нули в значении индекса, мы знаем, что три, составляющие ключ должен начинаться с нечетной или четной битовой позиции. Продолжая пример из в предыдущем абзаце под индексом 00010110 мы поместили декодированный ниббл 0001 в нечетной таблице и декодированный nybble 0110 в четной Таблица.

В качестве бонуса помните, что пятерки чередуются между высокими и младшие байты декодированных байтов.В нечетной таблице мы можем сдвинуть все ценности в высокий ниббл. Таким образом, чтобы сформировать последний байт из первого два нибара, все, что нам нужно сделать, это вычислить побитовое или odd_table [11111 ---] и even_table [22 --- 222].

Так выглядят таблицы (записи со знаком "-" не доступ):

Четные пятерки

- - - - - - - - - 08 00 01 - 0c 04 05
- - 02 03 - 0f 06 07-09 0a 0b - 0d 0e -
- 02 - - 08 - - - 00 - - - 01 - - -
- 03 - - 0c - - - 04 - - - 05 - - -
- - 08 0c - 0f 09 0d 02 - - - 03 - - -
- 0f - - 0f - - - 06 - - - 07 - - -
- 06 - - 09 - - - 0a - - - 0b - - -
- 07 - - 0d - - - 0e - - - - - - -
- - 00 04 02 06 0a 0e - - - - - - - -
08 09 - - - - - - - - - - - - - -
00 0a - - - - - - - - - - - - - -
01 0b - - - - - - - - - - - - - -
- - 01 05 03 07 0b - - - - - - - - -
0c 0d - - - - - - - - - - - - - -
04 0e - - - - - - - - - - - - - -
05 - - - - - - - - - - - - - - -
 

Пятерки нечетные

- - - - - 00-40-20-60 - а0 - е0
- - 80 - 00 - 10 - - - c0 - 40 - 50 -
- 80 - 90 20 - 30 - - - f0 - 60 - 70 -
- - 90 - a0 - b0 - - - d0 - e0 - - -
- 00 20 а0 - - - - 80 - - - - - - -
00 - - - - - - - 10 - - - - - - -
- 10 30 b0 - - - - c0 - - - - - - -
40 - - - - - - - 50 - - - - - - -
- - - - 80 10 c0 50-30 f0 70 90 b0 d0 -
20 - - - - - - - 30 - - - - - - -
- c0 f0 d0 - - - - f0 - - - - - - -
60 - - - - - - - 70 - - - - - - -
- 40 60 е0 - - - - 90 - - - - - - -
а0 - - - - - - - b0 - - - - - - -
- 50 70 - - - - - d0 - - - - - - -
e0 - - - - - - - - - - - - - - -
 

Красиво, не правда ли?

Напомним алгоритм:

Прочитать пять байтов.

        11111222 22333334 44445555 56666677 77788888
 

Извлеките двенадцать фрагментов с помощью побитового и.

        11111 --- ----- 222 --33333- ------- 4 ---- 5555-66666-- ------ 77 --- 88888
                 22 ------ 4444 ---- 5 ------- 777 -----
 

Объедините фрагменты в восемь байтов с помощью побитового или.

        11111 --- 22 --- 222 --33333- 4444 --- 4 5 --- 5555-66666-- 777 --- 77 --- 88888
 

Получение декодированных полубайтов из таблиц.

Цифры представляют теперь декодированные биты.

        1111 ---- 3333 ---- 5555 ---- 7777 ----
        ---- 2222 ---- 4444 ---- 6666 ---- 8888
 

Объедините их в байты с помощью побитового ИЛИ.

        11112222 33334444 55556666 77778888
 

Сохранить четыре байта в буфере.

Вы можете подумать: это новый и довольно интересный подход и все такое, но нет ничего, чтобы предположить, что это будет быстрее, чем обычное переключение передач.И действительно, предстоит еще много работы.

Уловки

Мы будем использовать много самомодифицирующегося кода. На самом деле это не уловка, а установил технику на процессоре 6502. Чтобы сбрить цикл от каждая инструкция, которая изменяет другую, весь цикл будет помещен в нулевая страница.

Вместо того, чтобы хранить декодированные байты с использованием режима индексированной адресации (пять циклов на байт, плюс еще несколько для продвижения индексного регистра), мы нажмем их в стеке (три цикла на байт, указатель автоматически уменьшается, и оба индексных регистра бесплатны для других целей).Стек 6502 - это ограничен одной страницей, поэтому весь сектор умещается идеально. 257-й байт (контрольная сумма) обрабатывается как особый случай после цикла. Обратной стороной этого Конечно, мы не можем использовать стек ни для чего другого. В в частности, мы не можем выполнять какие-либо вызовы подпрограмм.

Для маскировки мы можем использовать инструкцию and, которая помещает результат в аккумуляторе. Однако иногда мы предпочитаем сохранить содержимое аккумулятор. Используя непреднамеренных (также известных как «незаконных») кодов операций, там есть несколько способов добиться этого: Инструкция по саксофону представляет собой смесь sta и stx; он пытается записать содержимое обоих A и X в память, и из-за процесса NMOS, используемого для производите 6502, нули сильнее единиц, поэтому разногласия по шине разрешаются на побитовые операции и.Таким образом, мы можем использовать саксофон для хранения подмножества биты в A (или X) в память, не затирая остальную часть реестр. Кроме того, мы можем выполнить побитовую операцию и с помощью инструкция sbx (сочетание cpx и налога) с нулевой операнд, который оставит результат в X.

Мы можем получить две копии каждого входящего байта: непреднамеренный код операции lax представляет собой смесь lda и ldx и может использоваться для получить закодированный байт как в A, так и в X.

Чтобы объединить части индекса, мы можем использовать операцию побитового ИЛИ, как описано выше, но, конечно, дополнение будет работать одинаково хорошо.Сложение можно вычислить неявно как часть доступа к индексированной памяти: поскольку нечетные и четные таблицы выровнены по страницам, мы можем хранить некоторые индексные биты в наименее значимых байт операнда команды и оставшиеся биты в индексном регистре.

Наконец, рассмотрим пятерку номер четыре: она состоит из двух частей, одна из который является просто младшим битом второго входящего байта. Скорее чем замаскировать этот бит и сохранить его в регистре, мы можем использовать lsr инструкция (единственная операция сдвига во всем декодере GCR) для его размещения во флаге переноса.Чтобы объединить его с другой частью индекса, мы просто adc (добавление с переносом) постоянный ноль. Это освобождает регистр, но это еще не все: в качестве побочного эффекта операция добавления очистит флаг переполнения. Выполнив adc в нужный момент, мы можем получить избавиться от одной инструкции clv, сэкономив два цикла.

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

Код

Следующий цикл декодирует GCR на лету. Контрольная сумма все еще должна быть проверяется отдельным проходом.

Начать с метки begin_reading_here; это логическое начало петли. На практике первая итерация частично выполняется за пределами цикл, который вводится в zpc_entry («zpc» - сокращение от нулевой страницы код).

zpc_loop
                ; Этот nop необходим для самого медленного битрейта, потому что он
                ; небезопасно читать третий байт уже в цикле 65.

                ; Тем не менее, с nop, лучшее время для всего цикла
                ; составляет 130 циклов, что абсолютно не оставляет зазора для скорости двигателя.
                ; дисперсия при наивысшей скорости передачи данных.

                ; Таким образом, мы модифицируем инструкцию bne в конце цикла на
                ; либо включить, либо пропустить nop в зависимости от текущего
                ; битрейт.нет

                слабый $ 1c01; 62 63 64 65 44445555
                и # $ f0; 66 67
                adc # 0; 68 69 A <- C, также очищает V
                тай; 70 71
zpc_mod3 lda oddtable; 72 73 74 75 фунтов = --33333-
                ora eventable, y; 76 77 78 79 y = 4444 --- 4, lsb = --------

                ; всего 80 циклов от zpc_b1

zpc_b2 bvc zpc_b2; 0 1

                pha; 2 3 4-й полный байт (nybbles 3, 4)
zpc_entry
                lda # $ 0f; 5 6
                sax zpc_mod5 + 1; 7 8 9

                слабый $ 1c01; 10 11 12 13 56666677
                и # 80 долларов США; 14 15
                тай; 16 17
                lda # $ 03; 18 19
                sax zpc_mod7 + 1; 20 21 22
                lda # $ 7c; 23 24
                sbx # 0; 25 26

zpc_mod5 lda oddtable, y; 27 28 29 30 г = 5 -------, лсб = ---- 5555
                ora eventable, x; 31 32 33 34 x = -66666--, lsb = --------
                pha; 35 36 37 третий полный байт (nybbles 5, 6)

                слабый $ 1c01; 38 39 40 41 77788888
                clv; 42 43
                и # $ 1f; 44 45
                тай; 46 47

                ; всего 48 циклов от b2

zpc_b1 bvc zpc_b1; 0 1

                lda # $ e0; 2 3
                sbx # 0; 4 5
zpc_mod7 lda oddtable, x; 6 7 8 9 x = 777 -----, lsb = ------ 77
                ora eventable, y; 10 11 12 13 y = --- 88888, lsb = --------
                pha; 14 15 16 четвертый полный байт (nybbles 7, 8)

begin_reading_here
                lda $ 1c01; 17 18 19 20 11111222
                ldx # $ f8; 21 22
                sax zpc_mod1 + 1; 23 24 25
                и # 07; 26 27
                тай; 28 29
                ldx # $ c0; 30 31

                lda $ 1c01; 32 33 34 35 22333334
                sax zpc_mod2 + 1; 36 37 38
                ldx # $ 3e; 39 40
                sax zpc_mod3 + 1; 41 42 43
                lsr; 44 45 4 -> С

zpc_mod1 lda oddtable; 46 47 48 49 фунтов = 11111 ---
zpc_mod2 или eventable, y; 50 51 52 53 lsb = 22 ------, y = ----- 222
                pha; 54 55 56 первый полный байт (nybbles 1, 2)

                tsx; 57 58
BNE_WITH_NOP = (zpc_loop - (* + 2)) & $ ff
BNE_WITHOUT_NOP = (zpc_loop + 1 - (* + 2)) & $ ff
zpc_bne.byt $ d0, BNE_WITH_NOP; 59 60 61 бнэ zpc_loop
 

Заключительные замечания

Конечно, как только я нашел решение, мне нужно было написать fastloader, чтобы посмотреть, действительно ли он будет работать. Загрузчик превратился в Spindle trackmo toolchain, который я сохраню для другой статьи. К посмотреть, как работает декодер GCR, взгляните на мою демонстрацию Shards of Fancy.

Размещено 31 марта 2013 г., воскресенье 16:40

Обсудить эту страницу

Отказ от ответственности: Я не несу ответственности за то, что люди (кроме меня) пишут на форумах.Сообщайте о любых злоупотреблениях, таких как оскорбления, клевета, спам и незаконные материалы, и я приму соответствующие меры. Не кормите троллей.

Jag tar inget ansvar for det som skrivs i forumet, förutom mina egna inlägg. Vänligen rapportera alla inlägg som bryter mot reglerna, så ska jag se vad jag kan göra. Som regelbrott räknas till excepel förolämpningar, förtal, spam och olagligt материал. Mata inte trålarna.

Аноним
Вт 2-апр-2013 21:59

Действительно потрясающая работа, я больше похож на Z80, но я тем не менее нахожу это действительно интересным, особенно использование «незаконных» кодов операций и нулевой страницы чтобы ускорить процесс.

llbit
Jesper Öqvist
Вт 2-апр-2013 22:12

Действительно впечатляющая и интересная статья. Отличная работа!

Аноним
Вс 7 апреля 2013 03:01

http://www.templeos.org/Wb/Kernel/Compress.html

Аноним
Вс 7-апр-2013 18:19

Этот мас - настоящий гений. Большой респект Вам

с наилучшими пожеланиями - wegi

Анонимный
Вт, 9 апреля 2013 г. 20:49

Действительно интересное чтение - мне интересно, хотя какой-то клон 1541 может использовать 65c02 и нарушить код из-за использованных незаконных операций.

Ничего не могу поделать - не вижу связи с этой ссылкой на сжатие в комментариях 🙂

Аноним
Пт 12-апр-2013 06:17

Изменение bne в зависимости от скорости? Блестяще. Достойно даже Мела. http://mark.aufflick.com/blog/2003/11/24/the-one-true-mel

Anonymous
Fri 12-Apr-2013 06:21

Так как меня больше всего интересует 6502 для Apple] [Я не совсем знал, куда добавить эту ссылку в закладки. Итак, я создал новую папку под названием «Awesome».

Аноним
Пт 12 апреля 2013 15:03

Впечатляет.Спасибо за эту подробную статью.

Аноним
Пн 15-апр-2013 21:31

Молодец.
Поскольку для значений четной таблицы используется только младший младший, а для нечетных - только старший, вы можете наложить их в одну таблицу. Я полагаю, что для этого нет причин, поскольку для этого потребовалось бы больше маскировки, и вы смогли уместить обе таблицы в 2 КБ ОЗУ.

Аноним
Вт 16 апреля 2013 г. 23:11

Все хорошо, но я предпочитаю MFM, так как в нем хранится гораздо больше.
Но, честно говоря, это было возможно только на Амиге ;-).
Я сделал несколько эффективных загрузчиков MFM и для этого.

@reumerd

Аноним
Сб, 29 июня 2013 г. 03:08

Привет, Линус,

Я только что просмотрел довольно подробный разговор о 6502, который, как я думал, вам понравится (https://www.youtube.com/watch ? v = K5miMbqYB4E). Более подробная информация доступна на сайте visual6502.org. Они проанализировали и смоделировали чип на основе фотографий в высоком разрешении.

- jn

Аноним
Вт 2-июл-2013 22:40

Это большое достижение! Итак, удалось ли вам, наконец, загрузить в свой быстрый загрузчик полный трек, включая декодирование и проверку контрольной суммы, за два оборота?

lft
Linus Åkesson
Thu 4-Jul-2013 23:33

Это большое достижение! Итак, удалось ли вам, наконец, загрузить в свой быстрый загрузчик полный трек, включая декодирование и проверку контрольной суммы, за два оборота?


Не считая последовательной передачи, потому что моей целью было сделать загрузчик IRQ.Это добавляет некоторые накладные расходы на последовательный протокол, поскольку он должен иметь возможность справляться с произвольными задержками на стороне C64. Однако у меня есть три оборота для треков 18-35 и четыре для треков 1-17, как измерено на статическом дисплее с 25 штрихами и без спрайтов.

Аноним
Вс 7-июл-2013 23:13

Мой аппаратный ускоритель, S-JiffyDOS, также может декодировать из GCR в hexdec при чтении с диска. Он также использует LAX и стек. Он использует много ROM-таблиц (так что это 32 вместо 16 КБ) и синхронизируется с BVC только каждый 5-й байт.Это на www.nlq.de
Ваш короткий распорядок дня, который уместится в 1541-RAM, просто фантастический.

chesterbr
Carlos Duarte do Nascimento
Tue 14-Jan-2014 06:43

Как таблица декодирования, так и умное использование недокументированных кодов операций - отличная работа, кудос. Я никогда не думал о «нулевых выигрышах» как о побочном эффекте NMOS, но как только вы это сказали, все это стало для меня осмысленным, почти как понимание Матрицы! 🙂 Отличная статья.

Аноним
Пт 25 апреля 2014 18:04

Отличная работа.Я думаю, если вы сделали циклы приема, рассчитанные для каждого из 4 битрейтов, вы могли бы прочитать 5 байтов перед повторной синхронизацией. Возможно, вы даже могли бы сделать это с двумя циклами (каждый из которых покрывает 2 битрейта).
Взгляните на код от Epyx Winter Games, если вы еще этого не сделали. Кроме дорожки каталога, диск не использует GCR. И я почти уверен (память не идеальна после почти 30 лет) он передавал 253 или 254 байта за раз, помещая их в стек на стороне c64, чтобы сохранить цикл по сравнению с sta.

Аноним
ср 5-ноя-2014 21:31

Отличная работа.

В интересах чистой скорости, я бы хотел, чтобы это использовалось с загрузчиком без IRQ / без отображения для передачи 2-х оборотной дорожки. Я изучил это и, к сожалению, не думаю, что это возможно на треках с высокой плотностью записи.

С конца этой обработки до удаления заголовка сектора 2 у вас есть:
- текущий конец сектора - 2 00 с + 4 или более пробелов = 6+ байтов
- пропущенный заголовок сектора - 5 синхронизаций + 10 содержимого + 9 пробелов = 24 байты
- пропущенные данные сектора - 5 синхр. + 325 данных + 4 или более пробелов = 334+ байта
- всего 364+ байта (обратите внимание, что все это в терминах закодированных (GCR) не декодированных байтов)

Итак, 364 - это минимальное количество байтов на диске, которое может пролететь за время, необходимое для передачи только что прочитанного сектора.После этого вам нужно вернуться к чтению заголовка сектора и т. Д.

При максимальной настройке плотности это 26 мксек на байт, или 26 * 364 = 9464 мксек.

Самая быстрая последовательная передача битового сигнала, которую я когда-либо выполняла, - это Vorpal V1 (как в Зимних играх). Он передает 3 байта в цикле 113us, что соответствует 37,67us / байт.

Нам нужно передать 257 байт (256 + контрольная сумма) в 9464us. Это означает, что каждый байт должен быть передан как 9464us / 257 = 36,82us.

Так что я ожидаю, что последовательная передача в стиле Vorpal позволит вам уехать с 2 оборотами на дорожку при более низкой плотности, но просто промахнуться и все равно потребовать 3 оборота на дорожку при максимальной плотности.

Я все же хотел бы настроить этот код, чтобы он больше зависел от плотности, чтобы устранить этот или два BVC. Это должно освободить достаточно циклов, чтобы заменить PHA на STA $ 1801 и разрешить (без IRQ / без отображения) передачу дорожек через параллельный порт на 1 оборот :).

Аарон

Аноним
Пт, 27 февраля 2015 г. 09:06

У меня просто возникла идея, зачем вообще беспокоиться о декодировании GCR, как насчет того, чтобы использовать необработанные байты GCR в качестве индекса для 256-байтовой таблицы, чтобы вернуть 6-битный результат. Исходные биты пришлось бы немного зашифровать, в результате чего получился бы специально закодированный файл.

Кроме того, все ли биты встречаются для выбора некоторого подмножества битов в GCR? Например, просто замаскируйте каждый второй бит и назовите это вашими декодированными данными.

Расширьте это искажение битов еще больше, создайте новую кодировку, которая дает даже 2 декодированных бита на байт, которые вставляются непосредственно на выход (при 2-битной передаче). Однако это довольно расточительно и немного снижает скорость передачи данных, но при этом отправка и декодирование происходит очень быстро.

lft
Linus Åkesson
Fri 27.02.2015 13:03

Хорошие идеи, особенно первая.Это немного уменьшит объем информации, которую вы можете хранить в блоке (6 * 320/8 = 240 байт), поэтому любые преимущества должны быть сопоставлены с этим. Вы также, вероятно, захотите буферизовать данные как 320 байтов до или после поиска в таблице, а затем передать каждый байт в виде трех битовых пар. Неочевидно, что действительно существует хорошая функция отображения; он должен умещаться на одной странице, поэтому одно и то же сопоставление должно работать независимо от выравнивания между фрагментами gcr и байтами, даже если кодировка будет отличаться для каждого выравнивания.Я подумаю еще немного об этом.

Аноним
Вс 23-апр-2017 22:56

Ух ты, Линус, это тяжело. Я написал частичный декодер, который очень похож на код Крилла где-то около 2000 года (на самом деле мы сравнивали наш код в точке останова / версии). И я помню, что я также пытался искоренить GCR в разреженные таблицы, чтобы избавиться от всех смещений, но мне это не удалось. Так что это действительно потрясающее достижение!
Q: когда вы на самом деле проверяете контрольные суммы? Я бы сделал передачу и вычислил, а после отправки сектора сигнализировал, хороший это сектор или нет.одержимые маньяки)

Аноним
Вс 23-апр-2017 23:52

P.S .: Я думаю, что недостающие части были из-за отсутствия досконального знания всех используемых вами трюков. Я не понимал ни саксофона, ни SBX. Также идея самомодификации LSB поиска была для меня новой. И злоупотреблять стеком в то время было запрещено. Но я вижу суть: floopy запускает только эту одну программу, загрузчик - тогда стек может вообще не понадобиться и может "злоупотреблять".

Аноним
Вс 30-июл-2017 12:53

Было похожее, но не такое изящное прозрение, которое было у кого-то (к сожалению, не у меня) на Apple] [которое позволяет декодировать GCR на лету и допускает нулевое чередование полной дорожки загрузка на лету.это был мой комментарий по поводу Apple] [декодирование GCR на лету.

Должен сказать, что когда я увидел код дизассемблера для Apple, я был одновременно потрясен и разочарован тем, что никогда не позволял себе мыслить нестандартно.

Я тоже работал над C64, но не над 1541 ... Это такая потрясающая система, когда второй диск 6502 отвечает за дисковод, а затем крошечная соломинка для подключения к C64 ...

DavidG
David Galloway
Вс 30-июл-2017 13:22

Хорошо, я только что закончил читать вашу статью и особенно ваш код.Вы действительно делаете все возможное. Все техники синтезируются во что-то большее, чем сумма его частей. Действительно, ваш код абсолютно вдохновлен. Мне пришлось опубликовать еще раз, потому что я кодировал 6502 с 1979 года и работал над ранними версиями Apple] [и играми C64 и дисковым кодом для Apple] [и поэтому, если кто-то может оценить то, что вы сделали, это должно быть по крайней мере будь мной, и я не должен молчать. Аплодирую тебе! Хорошая работа, сэр. Мне это нравится больше, чем шедевр искусства. Это шедевр.

fth
Фрэнк Томас
Вс 26-ноя-2017 16:35

Ну, я тот Фрэнк Томас, который разработал вместе с Клаусом Рореджером программно-аппаратный декодер ProfessionalDos для GCR. Итак, я немного подумал о декодировании потоков GCR. Что ж, это давно прошло, и я почти все забыл. Но этот фрагмент кода невероятен. Хотя я знал все незаконные коды операций, я никогда не думал об их использовании в этом контексте. Идея удалить петли bvc тоже очень умная !!
И я не могу поверить, что кто-то в 2013 году задумывается об улучшении программного обеспечения, написанного более 30 лет назад.
Отличная работа !!! Аплодисменты !!

Аноним
Пн 11-дек-2017 09:33

Также с моей стороны мои наилучшие поздравления !!! Подростком я проанализировал все доступные мне в то время быстрые загрузчики и понял, какие уловки они использовали для декодирования GCR и последовательной передачи. Я даже сам написал в качестве хобби быстрый загрузчик (на бумаге он так и не попал в производственное состояние). Итак, я хочу сказать, что я высоко ценю все твои уловки - отличный, отличный материал !!!

Аноним
Ср 13 декабря 2017 г. 08:25

Просто хотел добавить к моему комментарию от 11 декабря 2017 кое-что, что забыл упомянуть.В подростковом возрасте я проанализировал один из методов быстрой передачи данных, разработанный Heureka Sprint. Heureka Sprint была программным «листингом месяца» в немецком журнале «64er». Это было особенно примечательно, поскольку в нем использовалась другая кодировка GCR, которая была намного быстрее, но менее эффективна; насколько я помню, он мог хранить только 228 байт на блок (может быть, он использовал 6 вместо 5 бит на каждый полубайт?). Вы должны были использовать предоставленную программу для хранения ваших приложений в другом формате на вашем диске.Но мальчик, он действительно загружается очень быстро !!! Еще одна хитрость, с которой, как мне кажется, я столкнулся, заключалась в загрузке секторов не по порядку и просто сохранении их в неправильном месте памяти в C64, так же, как они натолкнулись на считывающую головку привода, чтобы избежать переформатирования секторов в определенном порядке. Было бы интересно упомянуть ...

Аноним
Ср 4-июл-2018 16:22

Спасибо, что собрали это вместе. Отличная статья.

Аноним
Ср 15-авг-2018 16:39

Привет, Линус и все,

, благодаря этой работе, я был вдохновлен на то, чтобы придумать следующий шаг.
Полное чтение + декодирование + контрольная сумма блока GCR на лету на складе 1541: https://csdb.dk/release/?id=167152

Я хотел бы написать дополнительную гостевую статью об этом на какой-то момент. 🙂

С уважением,

Криль

Аноним
Ср 1-May-2019 03:47

Привет, Линус и все,

, благодаря этой работе, я был вдохновлен на то, чтобы придумать следующий шаг.
Полное чтение + декодирование + контрольная сумма блока GCR на лету на складе 1541: https://csdb.dk/release/?id=167152

Я хотел бы написать дополнительную гостевую статью об этом на какой-то момент.:)

С уважением,

Krill


Отличная работа Я согласен, и у меня была возможность посмотреть @ что-то, над чем вы недавно работали (Space Beer), и Fuck Me, это быстрый загрузчик. Я повторил демонстрацию 3 раза, чтобы убедиться, что я не просто под кайфом или что-то в этом роде. Что это за загрузчик?

Аноним
Пн 10-июн-2019 01:50

Обожаю! Некоторые большие прыжки / нестандартное мышление. Эффектный код Линуса!

Аноним
Ср 19-июн-2019 10:45

Отличная статья! Я интегрировал код в свою дисковую утилиту, и это позволяет мне сканировать весь диск за 21 секунду, используя чередование двух секторов !! Я отправляю только первые 4 байта и байт ошибки из каждого сектора обратно в C64, поэтому я могу использовать чередование 2.Я использовал короткий фрагмент контрольной суммы от Shards of Fancy. Я также заметил в Shards of Fancy, что вы используете «nop» для плотности 0 и 1 (треки 25-35), а не только для самых медленных (31-35).

А теперь немного улучшений !!
1) вместо хранения $ 0100, $ 01FF -> $ 0101, я сохраняю $ 01FF -> $ 0100, поэтому данные не имеют оболочки. Это достигается запуском стека с $ FF вместо $ 00, а также изменением нескольких последних инструкций на нулевой странице с pha перед tsx на tsx перед pha. Это работает, потому что pha не изменяет нулевой флаг.
2) если первый байт данных не равен 55 долларам, я сдаюсь после 3 попыток, сообщаю об ошибке 04 для этого сектора и двигаюсь дальше. Кроме того, если проверка четности не удалась, откажитесь после 3 попыток и сообщите об ошибке 05. Это потому, что мой проект является дисковой утилитой, а не загрузчиком 🙂 Я не могу «зависнуть», пытаясь вечно.
3) сохранить / восстановить последние 8 байт стека и SP непосредственно перед / после этой процедуры, так что я все еще могу jsr / rts везде в коде.
4) сохранить / восстановить часть ZP до / после чтения всех секторов, которые я хотел, чтобы я мог вернуться в KERNAL, когда закончу.Возврат в KERNAL важен для моего коммунального проекта. Я использую 86- $ E5 для кода ZP и сохраняю / восстанавливаю только $ 99- $ B4 - остальное просто обнулено.

Ура!

Аноним
Пн, 1 июл-2019 04:56

Обновление: сделайте это за 17 секунд. путем декодирования ЗАГОЛОВКИ сектора на лету также уменьшается задержка «смены дорожки» за счет принятия первого сектора, обнаруженного после смены дорожки.

Также важно: код декодирования «первого байта» и «последнего байта» не показан в этом блоге, но его можно увидеть в демонстрации Shards of Fancy.Я обнаружил, что нет необходимости отдельно обрабатывать первый байт и вводить код нулевой страницы посередине. Вы можете начать сверху, если ваша обработка «первого байта» выглядит следующим образом:

; предполагая, что вы уже нашли интересующий заголовок сектора, и
; пропустил следующую «синхронизацию», вот что вы делаете дальше:

@ byte0: bvc @ byte0
clv
lda $ 1C01
cmp # $ 55; Подпись "DATA"
bne fail

ldx # $ FF
txs; установить SP = $ 1FF
jmp decoder

fail: rts; ждать следующего заголовка и т. д...

декодер:
nop; требуемая задержка
@ byte1: bvc @ byte1
clv
lda $ 1C01
tax
lsr A; установить флаг переноса для первого декодирования
txa
и # $ 3E
sta zaddr0 + 1; адрес первого доступа к «нечетной таблице»
nop; требуемая задержка
@ byte2: bvc @ byte2
jmp zpdecode + 1; начало нулевой страницы код (пропустить ноп)

Всем удачи!
- Пол Нельсен
- Oaktree Innovations

AlienTech
Джо Питер
Вт 12-ноя-2019 06:14

Обновление:
Всем удачи!
--Пол Нельсен
--Oaktree Innovations


Пол, вы брат Скотта? Вы были на вечеринках по случаю звездного пути, которые мы посетили?

Я пытался найти тебя, парень, но, кажется, я написал это Нельсон :), и прошло уже почти 30 лет.

Во время варпа я был поражен vorpal и тем, как это было возможно, но в то время был слишком занят, чтобы смотреть дальше, и только когда я встретил Скотта, я обнаружил, что это не обычный код GCR.

AlienTech
Джо Питер
Вт 12 ноя 2019 06:27

Привет, Линус и все,

благодаря этой работе, я был вдохновлен на то, чтобы придумать следующий шаг.
Полное чтение + декодирование + контрольная сумма блока GCR на лету на складе 1541: https://csdb.dk/release/?id=167152

Я хотел бы написать дополнительную гостевую статью об этом на какой-то момент.:)

С уважением,

Криль


Фактически сделал это для системы защиты от копирования, которую я написал для ATG. Он также использовал своего рода загрузку с разбросом, где каждый сектор имел адрес, по которому он должен загружаться. Файл не загружался последовательно. Он считывает биты, декодирует их и, если контрольная сумма в порядке, немедленно передает ее в память компьютера. Для передачи трека требовалось 2 или более оборотов, поскольку ЦП не был достаточно быстрым, чтобы читать и передавать данные на лету, даже если они не были расшифрованы.Vorpal, который читал, декодировал и передавал на лету, не использовал стандартное кодирование GCR. Я думал, что Скотт был тем, кто это сделал, но, возможно, Пол может помочь.

Предпочтение отдавалось защите, а не скорости. Но также было важно исправление ошибок, поскольку, в отличие от обычных данных, зашифрованные данные не могли правильно декодироваться с любыми битовыми ошибками. Следовательно, иногда для загрузки требовалось 3 оборота, если возникали какие-либо ошибки. Также диск нужно было дублировать на стандартных копировальных машинах. Даже если стандартные диски выходили из строя и перестали загружаться, старая защита от копирования пропускала некоторые битовые ошибки, и обычно это было незаметно, поскольку реальный код составлял только 5-10% задействованных данных.Это было сделано для того, чтобы люди могли загружать свой диск, даже если некоторые биты были стерты. Но для полной оболочки это не сработает, потому что битовые ошибки будут уничтожать любые будущие декодированные данные, которые зависят от ранее декодированных значений.

AlienTech
Джо Питер
Вт 12 ноя 2019 06:40

Просто хотел добавить к моему комментарию от 11 декабря 2017 кое-что, что забыл упомянуть. В подростковом возрасте я проанализировал один из методов быстрой передачи данных, разработанный Heureka Sprint.Heureka Sprint была программным «листингом месяца» в немецком журнале «64er». Это было особенно примечательно, поскольку в нем использовалась другая кодировка GCR, которая была намного быстрее, но менее эффективна; насколько я помню, он мог хранить только 228 байт на блок (может быть, он использовал 6 вместо 5 бит на каждый полубайт?). Вы должны были использовать предоставленную программу для хранения ваших приложений в другом формате на вашем диске. Но мальчик, он действительно загружается очень быстро !!! Еще одна хитрость, с которой, как мне кажется, я столкнулся, заключалась в загрузке секторов не по порядку и просто сохранении их в неправильном месте памяти в C64, так же, как они натолкнулись на считывающую головку привода, чтобы избежать переформатирования секторов в определенном порядке.Было бы интересно упомянуть ...


Ах, спасибо 🙂 Спустя десятилетия кто-то признается, что просматривал мой код ... и тоже его взламывал ... Это была система защиты, используемая для автоматизированного процесса, когда компания отправляла нам файлы и мы вставили диск в дисковод, и программа взяла эти файлы, защитила их и записала на другой диск, который можно было отправить дубликаторам.

Я не знал о Heureka Sprint до сегодняшнего дня, иначе вы могли бы увидеть настоящий временная версия этой схемы защиты, похожая на то, что сделал Ворпал.Поскольку 5 к 4 давали больше всего, 5 к 3 битам Vorpal не привлекали большинство компаний, поскольку им требовалось больше места, чем скорость. Но декодер от 6 до 5 не потерял бы так много места на диске ... дополнительные диски для большинства компаний означали потерю 50 000 долларов в качестве минимальной скорости выполнения релиза.

Аноним
Ср 15-янв-2020 10:54

«На каждые четыре бита данных (также известных как ниббл) на поверхность диска записывается пять битов, выбранных из таблицы. Давайте назовем их пятеркой. "

Или придирка.

Аноним
Вт 4-авг-2020 03:28

«Затем он сбрасывает флаг в ожидании следующего байта».

Это распространенное заблуждение.
CLV сбрасывает внешний сдвиговый регистр. Внешний регистр сдвига снова устанавливает SOE по завершении 8 сдвигов с момента CLV. Это не «ожидание», а именно то, где оно должно быть.

Аноним
Вт 4-авг-2020 03:44

Отличная статья! Я интегрировал код в свою дисковую утилиту, и это позволяет мне сканировать весь диск за 21 секунду, используя чередование двух секторов !! Я отправляю только первые 4 байта и байт ошибки из каждого сектора обратно в C64, поэтому я могу использовать чередование 2.Я использовал короткий фрагмент контрольной суммы от Shards of Fancy. Я также заметил в Shards of Fancy, что вы используете «nop» для плотности 0 и 1 (треки 25-35), а не только для самых медленных (31-35).

А теперь немного улучшений !!
1) вместо хранения $ 0100, $ 01FF -> $ 0101, я сохраняю $ 01FF -> $ 0100, поэтому данные не имеют оболочки. Это достигается запуском стека с $ FF вместо $ 00, а также изменением нескольких последних инструкций на нулевой странице с pha перед tsx на tsx перед pha. Это работает, потому что pha не изменяет нулевой флаг.
2) если первый байт данных не равен 55 долларам, я сдаюсь после 3 попыток, сообщаю об ошибке 04 для этого сектора и двигаюсь дальше. Кроме того, если проверка четности не удалась, откажитесь после 3 попыток и сообщите об ошибке 05. Это потому, что мой проект является дисковой утилитой, а не загрузчиком 🙂 Я не могу «зависнуть», пытаясь вечно.
3) сохранить / восстановить последние 8 байт стека и SP непосредственно перед / после этой процедуры, так что я все еще могу jsr / rts везде в коде.
4) сохранить / восстановить часть ZP до / после чтения всех секторов, которые я хотел, чтобы я мог вернуться в KERNAL, когда закончу.Возврат в KERNAL важен для моего коммунального проекта. Я использую 86- $ E5 для кода ZP и сохраняю / восстанавливаю только $ 99- $ B4 - остальное просто обнулено.

Ура!


где найти эту дисковую утилиту?

Аноним
Чт 5 ноя 2020 20:57

Шедевр! прекрасно описан и вдохновляет.
Lunatico - моя любимая демонстрация - конечно же, на настоящей дискете
продолжайте делать демонстрацию!
8bit жизнь материя

Аноним
Вт 29-дек-2020 06:35

Привет! Отличная работа.Вдохновляющий и такой творческий в своем подходе.

Я только что услышал, что Krill теперь разместил на складе фастлоадер x50 1541:

https://csdb.dk/release/?id=197710

С уважением,

Джордж

lft
Linus Åkesson
Mon 11-Jan-2021 14:46

Я только что услышал, что Krill разместил на складе фастлоадер x50 1541


Спасибо за ссылку! Это впечатляет и вдохновляет. Я сам больше увлекаюсь загрузчиками IRQ, но некоторые из новых методов применимы и там.

Анонимный
Ср 31 марта 2021 09:20

Я думал, что мой любимый сборочный хак - это тот, который я сделал, используя флаг направления x86, чтобы использовать тот же код для выполнения перевода байтов AES sbox / isbox и переупорядочения байтов для шифрования, что и для дешифрования ( обычно это невозможно; хотя таблицу трансляции легко поменять местами, байты при шифровании / дешифрировании меняются по-разному).

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

То есть это была моя любимая, пока не нашла вот такую. Это довольно круто, и у меня даже не было C64.

Декодирование и визуализация кодирования: метки, каналы и цвет, Тамара Мунзнер

Посмотреть расшифровку стенограммы

- Хорошо, спасибо, добрый день, и я ценю, что вы вернулись с невероятных выставок, чтобы услышать, те из вас, кто это сделал, те из вас, кто не сделал, я увижу вас позже на видео . Итак, сегодня я очень кратко расскажу об идее кодирования и декодирования визуализаций.Дженнифер попросила меня как бы напрямую затронуть тему того, как люди читают и создают визуализации. Итак, допустим, вы смотрите на визуализации. Вот экран с 20 из них. Многие из них я принимал участие в создании, некоторые из которых принимали участие мои соавторы. Итак, вот 20 различных экранов, как мы можем систематически думать о том, что, черт возьми, здесь происходит? Если мы просто посмотрим только на пиксели, наш первый ответ: «Ну, они все разные», и да, но как мы можем перейти на следующий уровень анализа после этого? Как мы можем думать о том, что между ними общего, даже если пиксели разные? Какие были приняты некоторые дизайнерские решения? Как мы можем рассуждать о процессе построения визуализаций? И поэтому нам нужен какой-то систематический способ думать о них.Итак, давайте, я украду фразу у Рона Ренсинка и расскажу о некоторых плодовых мушках визуализации; а именно гистограммы и точечные диаграммы, и скажите хорошо, что же здесь на самом деле происходит? Как их можно было проанализировать систематическим образом? Итак, действительно полезно иметь словарный запас, чтобы думать об этом в терминах меток и каналов, где метка представляет собой некую разновидность геометрического примитива, это может быть точка в нулевом измерении, линия в одном измерении или области в два измерения или даже объемы в трех измерениях, поэтому думайте об этом как о геометрическом примитиве, который может обозначать какой-то элемент данных, и тогда мы передаем информацию, чтобы иметь некоторую идею управления ее визуальным видом, чтобы затем что-то сообщить .Мы могли бы сделать это с пространственным положением, горизонтальным или вертикальным или обоими вместе взятыми, это может быть цвет, это может быть форма, это может быть величина наклона, это может быть кодирование размера по длине, площади или объему, и поэтому вопрос хорошо, как бы мы принимали решения? Как мы на самом деле это делаем? Как мы используем это, чтобы думать? Итак, во-первых, возвращаясь к этим дрозофилам, мы можем хорошо подумать, что происходит? Мы слышали о гистограмме и точечной диаграмме, что происходит? Здесь мы вертикально кодируем пространственное положение, и наша отметка - линия.Если мы перейдем к двум измерениям, где у нас фактически есть вертикальное и горизонтальное отдельно, мы переключимся на точечную метку. Если мы скажем, что еще мы могли бы ... о, мы могли бы использовать цвет для раскрашивания элементов кода, мы могли бы изменять размер кода по площади, у нас все еще есть эти точечные метки. Таким образом, это дает нам возможность деконструировать и проанализировать, конечно, я выбрал простые примеры, мы могли бы получить гораздо более сложные, но тогда естественный вопрос, который можно задать: хорошо, как вы выбираете? Как выбрать, что из этого делать? И оказывается, что многие люди потратили долгое время на огромную экспериментальную работу, чтобы попытаться действительно приблизить нас к ответам на этот вопрос.Итак, мы хотим принять во внимание некоторые вещи, например, каковы характеристики ваших данных? На самом базовом уровне одна из вещей, которая имеет большое значение, - это то, какого рода, я буду называть эти атрибуты, некоторые люди называют их переменными, полями или записями, любым количеством вещей. Итак, это поле данных, это атрибут, категориальный? Это что-то по сравнению с этим? Или это как-то неявное упорядочивание? В частности, количественный? Такие вещи, как размер этих половиц, можете ли вы на самом деле взять длину и другую длину, вычесть их и проделать с ними полную арифметику? Итак, характеристики данных на самом деле имеют большое значение.Это может даже иметь значение, например, переходите ли вы от минимального к максимальному последовательно? Или семантически существует нулевая точка, и вы спускаетесь от нее вниз и далее вверх? Или он на самом деле вращается циклически, чтобы вернуться туда, откуда он появился? Данные очень важны, но это не единственное, что важно. А что насчет таких вещей, как задача? Что человек пытается понять из этих данных? Итак, задача важна не меньше, чем данные. Система человеческого восприятия имеет множество характеристик, некоторые из них удобны, некоторые из них глубоко неудобны, и они не такие, как вам хотелось бы, поэтому человеческий глаз, по сути, не является камерой.Человеческий мозг - это не жесткий диск. И нам приходится иметь дело с некоторыми из этих реалий. Итак, было проделано много работы, чтобы попытаться охарактеризовать многие из этих различных каналов, ну, а как мы можем думать об их использовании для визуального кодирования данных? Одна из самых важных вещей возвращается к этим характеристикам данных, о которых я только что говорил, а именно, что некоторые из этих каналов действительно воспринимаются как вещи, которые сообщают о величине. Думайте об этом как о количестве. Итак, вы можете сказать такие вещи, как "насколько это больше, чем это?" Насколько это пышнее? И поэтому есть много количественной информации, которая хорошо переносится этими величинами, сколько каналов.И наоборот, есть некоторые каналы, которые действительно сводятся к идентичности. Что это? Это в том или ином регионе? Это тот цвет или тот цвет? Что за движение? Какая форма? Так что они хорошо подходят для категориальных данных. Таким образом, эта идея получить свою выразительность там, где вы ей соответствуете, чтобы вы либо не передавали то, чего нет, либо не бросали информацию на пол и не могли ее закодировать, - это один из действительно фундаментальных принципов, который следует помнить.К сожалению, примечательно, как часто люди не помнят об этом, так что это одна из ловушек, о которой в некотором смысле легче думать. Другое дело, что они не все созданы равными. Некоторые из них воспринимаются более точно, чем другие. Верно, что точность восприятия - не единственный фактор. Также есть такие вещи, как то, действительно ли вы привлекаете людей, но это хорошее место, чтобы подумать об этом. Порядок, который я выбрал для этого списка каналов, не был произвольным, я на самом деле намеренно упорядочил их, основываясь на моей собственной интерпретации текущей литературы о том, насколько мы способны точно их воспринимать.Это все еще предмет активного изучения, но мы, по крайней мере, знаем некоторые вещи, основанные на последних, на самом деле не только десятилетиях, но даже более чем столетней работе в области психофизики того, как на самом деле работает человеческое восприятие. И еще одна очень важная особенность - различимость. Потому что они не все созданы равными с точки зрения того, сколько ячеек воспринимается. Поэтому важно, чтобы вы получили совпадение импеданса, если вам нужно передать 37 уровней в ваших данных, что, если ваш канал восприятия действительно различит только четыре из них? Что ж, тогда у вас нет такого отличного соответствия.В отличие от тех случаев, когда вы хотите показать 10 вещей, а на этом канале не менее 10 ячеек, тогда вы действительно в отличной форме. Итак, вы хотите рассмотреть все эти различные факторы, которые участвуют в попытках решить, какой из этих каналов мне выбрать? Теперь, если у нас будет много времени, мы бы подробно поговорили о множестве различных вариантов дизайна для визуализации. О том, как вы размещаете данные в пространстве? Как вы используете все эти другие переменные? Как вы на самом деле с ним взаимодействуете? Но мы этого делать не будем.Вместо этого я собираюсь выбрать одну интересную тему, а именно цвет, и поговорить о ней чуть подробнее в контексте идеи меток и каналов. Так что же происходит с цветом? Что ж, посмотрим. Сверху у нас есть что-то, где у нас явно есть четыре разных цветовых кода. Это были годы. Но затем, внизу, мы на самом деле смотрим на что-то, что каким-то образом, кажется, немного больше передает порядок, и это действительно хорошо подчеркивает, что в эти годы была последовательность.И, чтобы по-настоящему поразить вас этим, на картинке справа у нас есть карта хороплета, где мы фактически берем географические регионы и кодируем их цветом, а затем вы можете видеть, что есть гистограмма и мы избыточно кодируем такие оттенки зеленого, а также горизонтальное пространственное положение. Итак, что происходит? Я украла этот слайд у Морин Стоун, это часть ее замечательной слайд-колоды, которая рассказывает о том, что происходит с цветом. Итак, я просто сказал вам, что подождите, это действительно имеет значение, упорядочено оно или категорично, и здесь я показываю вам кое-что, в отношении чего он, кажется, не может определиться.и так, что здесь происходит? Итак, с разложением цвета первое правило цвета - не использовать слово цвет. Не говори о цвете. Это сбивает с толку, если рассматривать его как монолитную вещь. Так о чем можно говорить? Что ж, я не собираюсь заставлять вас драться, мы разложим цвет на три канала. И два из них - это упорядоченные каналы, которые показывают величину, и это яркость, подумайте об этом как о чем-то вроде оттенков серого, о сером между белым и черным, насколько темным является что-то? И есть еще один из этих упорядоченных каналов, насыщенность, которая вроде светло-розового цвета, находится между серым и ярко-розовым.И то, что вы, вероятно, думаете о цвете, в просторечии, например, о рубашке какого цвета вы носите? Да, вы носите синюю рубашку, и вы носите красную рубашку, это оттенок. Итак, оттенок - это очень категоричный вид вещей, когда вы на самом деле стремитесь хорошо понять, что вещи отличаются друг от друга, без необходимости неявного упорядочивания. Итак, это здорово, я дал вам способ думать, и теперь я хочу предупредить, что это хорошее руководство к размышлениям, но оно не поддерживается современными инструментами.Многие инструменты покажут вам оттенок и насыщенность, они обычно не показывают вам истинную яркость с точки зрения того, насколько ярко что-то, человеческий глаз по-разному реагирует на разные длины волн света, так что это не то, что очень хорошо поддерживается общие инструменты. Но это определенно руководство к мышлению на уровне визуализации. Итак, возвращаясь назад и думая об этом сейчас как о каналах со свойствами, я задал некоторые из этих вопросов, например, что они передают с точки зрения упорядочивания, а не упорядочивания, и сколько вы можете кодировать? Сколько различаемых бинов мы можем использовать? Спойлер, никогда не бывает столько, сколько хочется.Итак, давайте разберемся, почему. Так что же происходит с категоричным цветом? Так что если вы считаете, что зрительная система человека идеальна, это не совсем верно. Человеческая зрительная система не так хорошо спроектирована, чтобы делать абсолютные вещи, но она совершенно великолепна в проведении относительных сравнений и, чтобы сохранить нам жизнь в мире, она очень долго служила нам хорошо. Итак, если два объекта с цветовой кодировкой расположены рядом друг с другом, мы действительно хороши в сверхмелкозернистой дискриминации.Итак, давайте возьмем этот пример, когда кто-то кодирует гены мыши цветом. Мы можем сказать разницу между действительно тонкими оттенками зеленого, которые расположены рядом друг с другом. Итак, тонко, но мы определенно можем сказать, что происходит, даже на любом проекторе, в том числе и на этом. Итак, что, если у вас есть небольшие регионы, которые не расположены рядом друг с другом? Итак, мы могли бы начать считать, ну, у нас есть загар, а потом ладно, может быть, коричневый, я думаю, есть зеленый, есть красный, о, есть еще один зеленый, подождите, это было то же самое, что и первый зеленый ? Ну, в любом случае есть фиолетовый, хорошо, вот голубой, похоже, может быть королевский синий, и я уже не могу сказать, какой из этих цветов, потому что это небольшие области, которые не являются смежными друг другу.Фактически, это показывает, как различные гены мыши мигрировали в хромосоме человека. Это то, чем биологи часто занимаются. И они действительно хотят, чтобы они могли закодировать 22 вещи. К сожалению, у нас это не очень хорошо получается. У нас это на удивление плохо. И поэтому, если у вас есть эти несмежные маленькие области цвета, всегда меньше ячеек, чем вы действительно хотели бы, у всех возникает соблазн использовать цветовую кодировку больше, чем они действительно могут избежать. Хорошее практическое правило заключается в том, что во многих случаях довольно безопасно использовать от шести до 12, но помните, что это включает в себя цвет фона, цвет по умолчанию, может быть, цвет выделения.Итак, что еще мы могли сделать? Если бы у нас было больше времени, мы бы поговорили о множестве других альтернатив, цветовое кодирование - не единственный ваш выбор. Есть много других способов визуального кодирования данных. Но что я хочу сделать, так это пойти дальше и просто поговорить на мгновение об упорядоченном цвете. Другая большая категория. Людям очень хочется использовать радугу, отчасти, я думаю, из-за физики. У нас есть много демонстраций на выставочной площадке, которые показывают, что свет, проходящий через призму, образует радугу, и это физика, и это должно быть правильно.Но физика и восприятие на самом деле не одно и то же, и в радугах есть одна хитрость, которая, во-первых, как я уже упоминал, не является внутренне упорядоченной перцептуально. Если бы я запер Дженнифер в комнате и дал ей четыре кусочка краски: зеленый, красный, фиолетовый и оранжевый и сказал: «Разложите их в том же порядке», а затем я запер Стива в другой комнате и дал ему те же кусочки краски и я забрал их телефоны, они будут приходить в том же порядке? Я бы не стал ставить миллион долларов, если бы они не сговорились заранее.Но если бы я дал им эти два оттенка серого, белый и черный, я бы поставил на это много денег. Итак, есть проблема с упорядочиванием, а также действительно досадная нелинейность. Если я возьму маленькую рамку от оранжевого до желтого и зеленого, я, возможно, увижу три разных цвета. Коробка одинакового размера в зеленом цвете, я вижу зеленый, зеленый и зеленый. Итак, то, как мы реагируем на эти различные части спектра, на самом деле не является линейным. Иногда радуга бывает интересной. Вы действительно можете называть вещи.Я могу говорить о красных, желтых и синих областях в этой конкретной симуляции потока жидкости, но есть некоторые вещи, которые не так хороши. Итак, одна вещь, которую вы могли бы сделать, - это хорошо сказать, что, может быть, вы не хотите пробовать радугу, если хотите подчеркнуть крупномасштабную структуру, на самом деле вы получаете некоторую тонкость, которую вы не так хорошо чувствуете с этими гораздо более маленькими областями цвет. Меньше оттенков, меньше именованных регионов. Это может быть особенно сложно, если вы не видели это раньше, может быть не очень очевидно, что я показываю, кроме большого пятна.Однако действительно хорошо подобранная цветовая карта может показать, что вы думаете, как Флорида, хорошо ли это видеть или нет, и поэтому, тщательно сегментируя и действительно имея действительно видимую демаркацию, вы можете увидеть большую часть структуры. , и тщательно подобранный спуск в море, подъем в более яркие, что-то дает. Так что, если, конечно, вы хотите съесть свой торт и съесть его, и вы хотите, чтобы и то, и другое? Хороший способ иметь возможность именования и порядок - это на самом деле подумать об именовании от оттенка, и если вам нужен порядок, вы можете подумать о монотонном увеличении яркости от одного к другому.На самом деле сейчас есть несколько хороших инструментов. Цветовые карты Viridis и Magma, это две карты в самом низу, делают довольно хорошую работу, пытаясь максимизировать именуемость и имеют этот возрастающий порядок яркости, особенно по сравнению с тем, что вы можете видеть справа, некоторые из этих других, которые определенно не делают монотонно увеличивающуюся яркость. Итак, еще много читайте, если вам это интересно. Эти слайды фактически размещены в Интернете, если вы хотите, чтобы у вас было больше ресурсов для чтения. На самом деле кое-что из этого было взято из главы моей книги, которая может быть вам интересна.

Автор: alexxlab

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *