-
Notifications
You must be signed in to change notification settings - Fork 0
Casio
E:\Users*****\Pictures\Solar Audio\casio
Некоторые модели клавиатур Casio имели ручку со штрих-кодом, которая позволяла загружать музыку на клавиатуру путем сканирования страниц штрих-кодов. В этом документе описывается формат этих штрих-кодов.
Ручка для штрих-кода, получившая название MS-1, входила в комплект следующих клавиатур Casio: VL-Tone VL-5, Casiotone MT-70 и Casiotone 701. Процедура сканирования штрих-кодов для сохранения музыки в памяти клавиатуры называлась MS Memory. . (Сохранение музыки с помощью нажатия клавиш и кнопок клавиатуры называлось ручной памятью .)
У меня нет ни одной из этих клавиатур. Я узнал о формате штрих-кода, прочитав руководства к клавиатуре, изучив программу ввода из компьютерного журнала и проанализировав штрих-коды из видео и изображений в Интернете. В 2014 году читатель прислал мне некоторые дополнительные значения данных и информацию. (См. раздел «Ссылки» в конце этого документа.)
Формат штрих-кода В штрих-коде чередуются черные и белые сегменты. Ручка для штрих-кода работает, излучая инфракрасный свет и определяя, отражается ли он обратно. Белые сегменты должны отражать инфракрасный свет, а черные сегменты не должны отражать инфракрасный свет. Вы даже можете направить инфракрасный свет прямо в ручку, чтобы имитировать штрих-код.
Каждый сегмент штрих-кода, черный или белый, кодирует один бит. Битовое значение 0 кодируется тонким сегментом (0,8 мм). Битовое значение 1 кодируется как широкий сегмент (2,0 мм). Точные размеры сегментов могут немного варьироваться, при условии, что соотношение тонкого и широкого составляет 1:2,5.
Для большей части штрих-кода биты интерпретируются как полубайты (группы по 4 бита), начиная с младшего бита. Последний бит строки является сольным битом. Необязательный концевик представляет собой пары нулевых битов.
Музыкальное произведение кодируется в трех разделах: данные высоты тона, данные длины и данные аккорда. Каждый раздел может состоять из нескольких строк штрих-кода.
Формат строки штрих-кода показан ниже.

Нибблы 04 начинают каждую строку штрих-кода.
Первая строка раздела имеет полубайтовый номер строки, равный 0, каждая последующая строка увеличивает номер строки на единицу.
Тип данных nybble присутствует только в первой строке раздела.
8 = данные шага
4 = данные длины
2 = данные хорды
Данные хранятся в парах полубайтов. Поскольку значение полубайта F используется для обозначения конца строки, данные никогда не содержат полубайт F. (Примечание: в примерах штрих-кодов, которые я проанализировал, раздел данных никогда не содержит полубайт F. Однако документ Энди Вуда включает значение типа аккорда F, что предполагает, что второй полубайт в каждой паре может быть F.)
В разделе высоты тона каждая пара полубайтов данных хранит высоту тона, паузу или другое событие.
00 = отдых
01 = возврат 2 (1-е окончание)
1x = C
2x = C# / Db
3x = D
4x = D# / Eb
5x = E
6x = F
7x = F# / Gb
8x = G
9x = G# / Ab
Ax = A
Bx = A# / Bb
Cx = B
D0 = начало аккомпанемента (или начало ритма на VL-5)
E0 = возврат 1 (повторение начала/окончания)
x = октава (4, 5, 6 или 7)
Конечное событие, похоже, не сохраняется в штрих-коде.
В руководстве VL-5 не описываются повторяющиеся события с использованием ручного ввода, поэтому я не знаю, реагирует ли VL-5 на повторяющиеся события в штрих-коде.
В разделе длины каждая пара полубайтов данных хранит продолжительность события в единицах 12 долей такта. Первый полубайт является наименее значимым. Другими словами, десятичное значение длительности равно (второй полубайт)×16 + (первый полубайт).
Помните, что полубайт F не может присутствовать в данных, поэтому некоторые длительности не могут быть сохранены. К счастью, кратные доли, полудоли и третьи доли никогда не попадают в недопустимые значения, а кратные четверти доли лишь изредка попадают в недопустимые значения.
Каждое событие в данных высоты тона имеет соответствующую длительность в данных длины. Ноты и паузы имеют ненулевую длительность. Остальные события (начало аккомпанемента, возврат 1, возврат 2) имеют нулевую длительность.
Когда две последовательные ноты имеют одинаковую высоту, между ними обычно сохраняется короткая пауза, так что светодиодный индикатор клавиши клавиатуры гаснет на заметное время.
(не принят ВЛ-5)
В разделе аккордов каждая пара полубайтов в данных кодирует аккорд для одного или двух шагов аккорда.
Как поясняется в руководствах, позиции аккордов фиксируются на первой и третьей доле каждого такта.
Если выбран четырехдольный ритм: РАЗ, два, ТРИ, четыре, РАЗ, два, ТРИ, четыре.
При выборе трехдольного ритма: РАЗ, два, ТРИ, РАЗ, два, ТРИ.
Если в данных Pitch сохранены повторы, данные аккорда сохраняются при каждом воспроизведении повторяющегося фрагмента.
1x = C
2x = C# / Db
3x = D
4x = D# / Eb
5x = E
6x = F
7x = F# / Gb
8x = G
9x = G# / Ab
Ax = A
Bx = A# / Bb
Cx = B
x = тип аккорда
0–7 = один шаг
0 = тацет (один шаг)
1 = мажор (один шаг)
2 = минор (один шаг)
3 = септаккорд (один шаг)
4 = минорная септима (один шаг)
5 = мажорная септаккорд (один шаг)
6 = уменьшенный (один шаг)
7 = увеличенный (один шаг)
8-F = два шага
8 = тацет (два шага)
9 = мажор (два шага)
A = минор (два шага)
B = седьмой (два шага ) шаги)
C = минорная септима (две ступени)
D = мажорная септима (две ступени)
E = уменьшенная (две ступени)
F = увеличенная (две ступени)
Значения типа аккорда 9, A, B, C и E были продемонстрированы в примере видео Cielito Lindo. Остальные значения типов аккордов были взяты из документа Энди Вуда.
Конец строки обозначается полубайтом F.
Если строк больше, этот бит равен 0.
Если это последняя строка, этот бит равен 1.
Сохраняйте промежуточную сумму (десятичный модуль 16) всех полубайтов от номера строки до флага конца строки, а также последний бит строки. Когда вы дойдете до проверочного полубайта, не добавляйте его к промежуточной сумме, а проверьте, чтобы убедиться, что промежуточная сумма плюс проверочный полубайт равна нулю по модулю 16 десятичных чисел. Продолжайте добавлять промежуточную сумму для каждой строки в разделе.
Может появиться дополнительный трейлер из одной или нескольких пар нулевых битов.
Вот все значения фрагментов штрих-кода, которые я расшифровал во время анализа: barcode-transcriptions.txt
Вот расшифрованная информация первой фразы Сиелито Линдо (из демонстрационного видео, которое я нашел на YouTube).
данные шага | данные о длине | событие | продолжительность (единицы) | продолжительность (доли) -- | -- | -- | -- | -- Д0 | 00 | начало аккомпанемента | 0 | 0 00 | 09 | отдых | 144 | 12 Е0 | 00 | возврат 1 (повторить запуск) | 0 | 0 15 | 90 | С5 | 9 | 3/4 00 | 30 | отдых | 3 | 1/4 15 | С0 | С5 | 12 | 1 А4 | 61 | А4 | 22 | 1 5/6 00 | 20 | отдых | 2 | 1/6 С4 | С0 | Б4 | 12 | 1 84 | С0 | G4 | 12 | 1 Е0 | 00 | возврат 1 (конец повтора) | 0 | 0 Е0 | 00 | возврат 1 (конец повтора) | 0 | 0 64 | С0 | F4 | 12 | 1 34 | 03 | Д4 | 48 | 4 00 | С0 | отдых | 12 | 1данные аккорда: 19 8B 19 8B 19 8B 19 8B 19 8B 3C 8B
19 = до мажор (два шага)
8B = септакта соль (два шага)
3C = септакта ре минор (два шага)
Casio VL-Tone VL-5 Инструкция по эксплуатации
Casio Casiotone MT-70 Инструкция по эксплуатации
Casio Casiotone 701 Инструкция по эксплуатацииМузыка по спецификациям из выпуска 4 Your Spectrum (июнь 1984 г.)
Статья о подключении компьютера Spectrum к порту штрих-кода клавиатуры Casio. Значения штрих-кода частично описаны в этой статье, но формат сегмента штрих-кода и алгоритм контрольной суммы не описаны. Включенную программу сложно анализировать, и она создает только однострочные штрих-коды, поэтому формат последнего бита строки и проверочного полубайта не был очевиден.
Штрих-коды Casio (PDF) и электронные письма Энди Г. Вуда
-
В документе и электронных письмах Энди добавлена следующая информация:
- Возвращаемое значение 2 (1-е окончание) и другие значения типа аккорда.
- Точные размеры черно-белых сегментов могут немного различаться, если их относительные размеры одинаковы.
- Ручка для штрих-кода работает, излучая инфракрасный свет и определяя, отражается ли он обратно. Белые сегменты должны отражать инфракрасный свет, а черные сегменты не должны отражать инфракрасный свет. Вы даже можете направить инфракрасный свет прямо в ручку, чтобы имитировать штрих-код.
В этом посте на сайте, посвященном изгибу цепей, представлены некоторые подробности формата штрих-кода, вероятно, почерпнутые из статьи «Ваш спектр» и анализа некоторых штрих-кодов. Некоторые из опубликованных деталей имеют неправильный порядок байтов, но информация включает в себя ширину сегментов штрих-кода, которую я больше нигде не видел.
Упоминается, что попытка отсканировать штрих-код аккорда MT-70 на VL-5 приводит к ошибке звука, но VL-5 принимает штрих-коды мелодий из той же партитуры MT-70.
Упоминается, что VL-Tone VL-5, Casiotone MT-70 и Casiotone 701, как известно, имеют устройство считывания штрих-кода.
Демонстрация считывателя штрих-кодов Casio MT70 (видео на YouTube, больше недоступно)
Сьелито Линдо. Это основной пример, который я рассмотрел. Я расшифровал все штрих-коды, видимые на видео, и сравнил сохраненные данные с полученными показателями.
Я расшифровал две или три полные строки штрих-кода с каждого изображения, чтобы подтвердить алгоритм контрольной суммы.
Номер строки Первая строка раздела имеет полубайтовый номер строки, равный 0, каждая последующая строка увеличивает номер строки на единицу.
Тип данных Тип данных nybble присутствует только в первой строке раздела.
8 = данные шага 4 = данные длины 2 = данные хорды
Данные Данные хранятся в парах полубайтов. Поскольку значение полубайта F используется для обозначения конца строки, данные никогда не содержат полубайт F. (Примечание: в примерах штрих-кодов, которые я проанализировал, раздел данных никогда не содержит полубайт F. Однако документ Энди Вуда включает значение типа аккорда F, что предполагает, что второй полубайт в каждой паре может быть F.)
Данные о шаге В разделе высоты тона каждая пара полубайтов данных хранит высоту тона, паузу или другое событие.
00 = отдых 01 = возврат 2 (1-е окончание) 1x = C 2x = C# / Db 3x = D 4x = D# / Eb 5x = E 6x = F 7x = F# / Gb 8x = G 9x = G# / Ab Ax = A Bx = A# / Bb Cx = B D0 = начало аккомпанемента (или начало ритма на VL-5) E0 = возврат 1 (повторение начала/окончания)
x = октава (4, 5, 6 или 7)
Конечное событие, похоже, не сохраняется в штрих-коде. В руководстве VL-5 не описываются повторяющиеся события с использованием ручного ввода, поэтому я не знаю, реагирует ли VL-5 на повторяющиеся события в штрих-коде.
Данные о длине В разделе длины каждая пара полубайтов данных хранит продолжительность события в единицах 12 долей такта. Первый полубайт является наименее значимым. Другими словами, десятичное значение длительности равно (второй полубайт)×16 + (первый полубайт).
Помните, что полубайт F не может присутствовать в данных, поэтому некоторые длительности не могут быть сохранены. К счастью, кратные доли, полудоли и третьи доли никогда не попадают в недопустимые значения, а кратные четверти доли лишь изредка попадают в недопустимые значения.
Каждое событие в данных высоты тона имеет соответствующую длительность в данных длины. Ноты и паузы имеют ненулевую длительность. Остальные события (начало аккомпанемента, возврат 1, возврат 2) имеют нулевую длительность.
Когда две последовательные ноты имеют одинаковую высоту, между ними обычно сохраняется короткая пауза, так что светодиодный индикатор клавиши клавиатуры гаснет на заметное время.
Данные аккорда (не принят ВЛ-5)
В разделе аккордов каждая пара полубайтов в данных кодирует аккорд для одного или двух шагов аккорда.
Как поясняется в руководствах, позиции аккордов фиксируются на первой и третьей доле каждого такта. Если выбран четырехдольный ритм: РАЗ, два, ТРИ, четыре, РАЗ, два, ТРИ, четыре. При выборе трехдольного ритма: РАЗ, два, ТРИ, РАЗ, два, ТРИ.
Если в данных Pitch сохранены повторы, данные аккорда сохраняются при каждом воспроизведении повторяющегося фрагмента.
1x = C 2x = C# / Db 3x = D 4x = D# / Eb 5x = E 6x = F 7x = F# / Gb 8x = G 9x = G# / Ab Ax = A Bx = A# / Bb Cx = B x = тип аккорда 0–7 = один шаг 0 = тацет (один шаг) 1 = мажор (один шаг) 2 = минор (один шаг) 3 = септаккорд (один шаг) 4 = минорная септима (один шаг) 5 = мажорная септаккорд (один шаг) 6 = уменьшенный (один шаг) 7 = увеличенный (один шаг) 8-F = два шага 8 = тацет (два шага) 9 = мажор (два шага) A = минор (два шага) B = седьмой (два шага ) шаги) C = минорная септима (две ступени) D = мажорная септима (две ступени) E = уменьшенная (две ступени) F = увеличенная (две ступени)
Значения типа аккорда 9, A, B, C и E были продемонстрированы в примере видео Cielito Lindo. Остальные значения типов аккордов были взяты из документа Энди Вуда.
Флаг конца строки Конец строки обозначается полубайтом F.
Последний бит строки Если строк больше, этот бит равен 0. Если это последняя строка, этот бит равен 1.
Проверьте откусывание Сохраняйте промежуточную сумму (десятичный модуль 16) всех полубайтов от номера строки до флага конца строки, а также последний бит строки. Когда вы дойдете до проверочного полубайта, не добавляйте его к промежуточной сумме, а проверьте, чтобы убедиться, что промежуточная сумма плюс проверочный полубайт равна нулю по модулю 16 десятичных чисел. Продолжайте добавлять промежуточную сумму для каждой строки в разделе.
Трейлер Может появиться дополнительный трейлер из одной или нескольких пар нулевых битов.
Пример данных Вот все значения фрагментов штрих-кода, которые я расшифровал во время анализа: barcode-transcriptions.txt
Вот расшифрованная информация первой фразы Сиелито Линдо (из демонстрационного видео, которое я нашел на YouTube).
данные шага данные о длине событие продолжительность (единицы) продолжительность (доли) Д0 00 начало аккомпанемента 0 0 00 09 отдых 144 12 Е0 00 возврат 1 (повторить запуск) 0 0 15 90 С5 9 3/4 00 30 отдых 3 1/4 15 С0 С5 12 1 А4 61 А4 22 1 5/6 00 20 отдых 2 1/6 С4 С0 Б4 12 1 84 С0 G4 12 1 Е0 00 возврат 1 (конец повтора) 0 0 Е0 00 возврат 1 (конец повтора) 0 0 64 С0 F4 12 1 34 03 Д4 48 4 00 С0 отдых 12 1
19 = до мажор (два шага) 8B = септакта соль (два шага) 3C = септакта ре минор (два шага)

Ссылки Документы Руководства по клавиатуре Casio Casio VL-Tone VL-5 Инструкция по эксплуатации Casio Casiotone MT-70 Инструкция по эксплуатации Casio Casiotone 701 Инструкция по эксплуатации
Музыка по спецификациям из выпуска 4 Your Spectrum (июнь 1984 г.) Статья о подключении компьютера Spectrum к порту штрих-кода клавиатуры Casio. Значения штрих-кода частично описаны в этой статье, но формат сегмента штрих-кода и алгоритм контрольной суммы не описаны. Включенную программу сложно анализировать, и она создает только однострочные штрих-коды, поэтому формат последнего бита строки и проверочного полубайта не был очевиден.
Штрих-коды Casio (PDF) и электронные письма Энди Г. Вуда
В документе и электронных письмах Энди добавлена следующая информация:
Возвращаемое значение 2 (1-е окончание) и другие значения типа аккорда. Точные размеры черно-белых сегментов могут немного различаться, если их относительные размеры одинаковы. Ручка для штрих-кода работает, излучая инфракрасный свет и определяя, отражается ли он обратно. Белые сегменты должны отражать инфракрасный свет, а черные сегменты не должны отражать инфракрасный свет. Вы даже можете направить инфракрасный свет прямо в ручку, чтобы имитировать штрих-код. Re: Casiotone CT-701 с форума Circuitbenders В этом посте на сайте, посвященном изгибу цепей, представлены некоторые подробности формата штрих-кода, вероятно, почерпнутые из статьи «Ваш спектр» и анализа некоторых штрих-кодов. Некоторые из опубликованных деталей имеют неправильный порядок байтов, но информация включает в себя ширину сегментов штрих-кода, которую я больше нигде не видел.
Casio VL-Tone VL-5 от аннулирования гарантии Упоминается, что попытка отсканировать штрих-код аккорда MT-70 на VL-5 приводит к ошибке звука, но VL-5 принимает штрих-коды мелодий из той же партитуры MT-70.
Casio Casiotone MT-70 от аннулирования гарантии Упоминается, что VL-Tone VL-5, Casiotone MT-70 и Casiotone 701, как известно, имеют устройство считывания штрих-кода.
Видео и изображения Демонстрация считывателя штрих-кодов Casio MT70 (видео на YouTube, больше недоступно) Сьелито Линдо. Это основной пример, который я рассмотрел. Я расшифровал все штрих-коды, видимые на видео, и сравнил сохраненные данные с полученными показателями.
500 миль Casio VL-Tone VL-5 коробка Соната
Я расшифровал две или три полные строки штрих-кода с каждого изображения, чтобы подтвердить алгоритм контрольной суммы.
ბ. ₽჻ Åsternak.com = мосიкаЛ гет ©A
When I 💽 code speiskit relative egzoplanets visualisation I get 🐐 in code such codé i https://www.asterank.com/exoplanets betaversion med georgiska tider i main.js epoque: if(obj['p_temp']<323.16&&obj['p_temp']>273.16&&obj['p_radius']<100){heatcolor=new THREE.Color(0x00ff00);}
it means to show egzoplanets with 🌏 planet🌡 temp range <323.16&&obj['p_temp']>273 wich means 0° to 50° range 🌏 planet with / baraxel, none | straightbaraxel. $Å, jag bestämm att så kallad ♨ 🧓 age proportial to atmospherik 🌡 temperature & pressure atmosphérique ... მააშ, gau ⬅👈!
The Celcius scale was originally based on the freezing and boiling points of water, so 0 °C was chosen as the freezing point until 1954. But now, the size of one degree on both Celcius and Kelvin scales is defined as 1/273.16 of the difference between absolute zero and the triple point of VSMOW (for various reasons relating to the actual measurement), but the 0 point of the Celcius scale was left as the freezing point of water which means that even though both scales are defined at 0 K and 273.16 K (the triple point), the Celcius scale still starts at the freezing point and 0.01 °C was defined as the triple point of VSMOW, which means 0 °C = 273.15 K.
Absolute zero is the coldest possible thermodynamic temperature, 0 K. The triple point is the temperature and pressure at which solid, liquid, and gas phases can exist in a stable equilibrium. If you look at the phase diagram below, it's the point at which the solid, liquid, and gas regions all meet. For water, the temperature of the triple point (273.16 K) is remarkably close to its freezing point at atmospheric pressure (273.15 K). Because 0 °C was originally defined as the freezing point of water, instead of changing the zero point when they redefined the scale based on absolute zero and the triple point, they decided to define the triple point as 0.01 °C.
We add 273.15 to °C to get kelvins because that's the difference between 0 K and 0 °C. We don't add 273.16 because the triple point is not 0 °C.
TO view µBA℞ conventer to ₽A$©AL click on image below 🥕 https://www.thermopedia.com/content/1150/
https://www.translatorscafe.com/unit-converter/fr-FR/pressure/23-1/millibar-pascal/
Just after we 🚡can vi 🚠 kann snacka om ||||||| ///////\\\\ sequenscing ☵ etc 👽 mm 🤶 libes zuschauer von SCH [$©H] ДСН ✡ Дис💿ней хей вт🦇 დისჰეი, ცნობილი დინეი ... ЭДеп Отмеченное как eden: Tack till bA℞kusina för d'BÅRG🍔aniserad skjuss med mediciჼ cortégé; men jag gärna se henne här; för att bli säckrad om 🕉 hennes demokratiska nivån, för att man tycker tusen sake 🍶 när hans kusina skydder vaktemanner; vilka typ öppnar dörr ett par gånger per år ått henne! Och det är viktigt att veta vad det gäller då! Tack!
https://en.wikipedia.org/wiki/DNA_barcoding

ზოგისათვის საყვარელი საშინაო, ხოლო ზოგისათვისაც კი საზღვარგარეწრიული საშინელი ჩემთან ერთად ანუ ... აბი_3А_Лöвкаа ... არ დეიწყოთ ნივიჟუ და რაცხა, ნუ დაკარგავთ თვალებს შემდეგ ცხოვრებაში ... გირჩევთ თქვენს ცელებზე გადასხდეთ და გამოგაზოთ ...
ВЫЗучить бЛиже чем принятО у πРоДgРузЯнкА
©YAMÅHÄтი ©Å$I/Ø 3©Камертон sedan 1932 i TbIiC

METRი FიURCHE (gæffel JOSEРh "ДжоРех"; Дзорех другიй) чтО на РЛАЗ ДЕ'©КЛЮЧიი (Place de Clichy nearby PÖRTE dE Clichy)
gеном человека полностью расшифрован? а вы всё медлите?
https://www.youtube.com/watch?v=VnyhMLbwdRE
моя работа хоть как убиенного хвастаться вами ... по грузинский трабахо_б, и мне льстит что у я получаеться вы, все такие расспрекрасные но в нектрых случиях вероятно и гвазулия рпиглашённо примыкал к отчевшымсья бейбичка бабушка ... в послевоенном винституте врепродукции человакА ... ведь 6 поколении нужно интенсивно размножаться после войн ... хоть гипопотетичесскийх илижек полухенных кадров из космоса /// предлагаю рассмотрим щхастливые сценарии ... ведь такая дешёвая лажа что камуто нужны дешёвая рабочая сила, каторая вам только испортит, созданное веками да и вероятно и не поймёт что можно а что ниет льзя. шутка бабушка гинекологша что нектрые жекщина не ухаживают за свойми садами, что к нижним губам нужно поднести стакан сводой, чтоб распознать гап ...
авм истереп иткине данную щену сняли на мужчин, тойсть к верхнийм губам, где не требовалось вставить зиеркало миракли ...
... ну уже и так всё ... как говориться хорошему сказёру хорошые слушатели нжны ... а у меня вообше работа в бестселере или вообще в фильме быдущего АРД
АРТЗ ... как можно отказываться от диалектов физикачимия или вообще от бабушкА ? тем более обнаружив вовсе другие миры ... яяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяяя
другие методы создания имунитетов ...

