Как обычно, да простят меня живые читающие. Slipknot's Dragon Maid Ведь были ж времена, когда от slipknot уши закладывало. А сейчас так себе. Попсовенько.
Не люблю писать на хайповые темы. Но с этим вирусом творится какой-то пиздец. Знакомый работает на заводе. Их переводят на вахтовый режим вот просто с нихуя. Типа две недели работает, две недели дома. А нет, не дома. На поселении. Недалеко от завода без права выхода. ___ А на маилру висит новость о победе российских ученых над вирусом. Ну вы поняли.
Чувак сегодня разбирал со мной проблемы преждевременной оптимизации, O-нотацию и сокрытие данных. А потом выкатил пример организации "типа класса" в C, от которого мне плакать хочется. В смысле, я пытаюсь развивать свою грамотность и читать чужой код, но когда не в состоянии понять, что написано-то, начинаешь почти физически чувствовать на плечах массу дырок в знаниях. Да, нытье, да, опять, да, ятупой.
Чувак из маршрутки прям крепко за меня взялся. Накидывает вопросы и темы, накидывает. А я офигеваю (в который раз-то), сколько еще материала даже по заголовку не встречал. Интересно, когда ему надоест это волонтерство? Но честно. Наверное, мне именно такого и не хватало, чтобы можно было с кем-то пообщаться на программистские темы вот так просто, а не со страхом получить в лоб "вали нахер, я занят".
Из-за этих ваших карантинов мои курсы отменили. Не то, чтобы надеялся там узнать что-то новое (это не я такой умный, это занятия для второкурсников), но хотел убедиться, что самостоятельно выучил то, что нужно. Ну и пообщаться с программистами. Но нет. Что там у меня на полке. Ах да. Седжвик. Кажется, уже начинал читать... На улице ноль после вчерашнего дождя, и выходить не хочется. Надо попробовать двухслойную сетку сделать. Вот ведь проблема найти, где купить антикошку в рулоне за разумную цену. Либо готовое изделие в рамке, либо заказывать из другого города.
Продал вело, новый никак не выберу. Выгнали в отпуск. В последний рабочий день заставил tlv прокинуть вход на выход. Типа звук есть, я молодец, пошел отдыхать. Случайно встретил в маршрутке чувака, с которым познакомились случайно в больнице лет восемь назад, который случайно был пассией девушки, которая нравилась мне, и который случайно два месяца как работает в компании моей мечты, случайно на желаемой мною должности. Жизнь, это великолепно.
Просыпаешься, а в голове крутиться какая-то японская песенка. С утра и без этого не очень, и сообразить, откуда вообще в голове эта хрень, так сразу и не получается. Потом оказывается это из beck. БАМ. Начались курсы. Пока уныло на уровне "вот терминал Линукс, да, это Линукс, привыкайте, а вот так вызвать гсс..." ну и т.д. Препод впаривал тему (вот иначе не могу сформулировать), что времени у программистов настолько мало, что им некогда поднимать руку от клавиатуры и тянуться до мышки. Поэтому emacs. На мой вопрос "а как дебажить контроллеры, с регистрами и пакетами, да чтоб без мышки и боли в виде терминального openocd с breakpoint function", тот пожал плечами, мол, контроллеры не мое, а сам я дебажу принтами. Что я хочу сказать? Что все еще хочу общения с профессиональными контроллершиками. Ибо наши ребята дальше keil не вылезают. Keil достаточно хорош, но не верится мне, что его покупают в крупных IT (а нам хватает пробной версии, лол, такие задачи мощные). Ну а так я продолжаю прозябать. Опять накатила волна "нахер все, ничего не получается" прпрпрпрвыпоняли. Думаю, вело поменять.
Скучали? Да нет конечно. Чем бы так порадовать... Ну я смог в sdcard fatfs, tft lcd и мысленно смог в touch. Курсы все никак не начнутся. Заработал кучу долгов по отгулам, ибо жизнь ставит палки в подходящие места. Телом почти не занимаюсь. Так, раз в недельку. Ну и да. Неоднократно высказывал свою любовь к персонажам, сливающимся с разного рода ресурсов, не предупредив людей. Создается впечатление, что все-таки я нахер никому не нужен. При том, этот самый персонаж сам изноется в личку, как ему одиноко, но если свалит, то молча. Так что прям рад. Рад. Ну и да [2] Раз тут снова тонет уютный, да и мой собственный дайри не особо меня втянул, то и я куда-нибудь навострю лыжи. НО. Обязательно сообщу об этом. Как в прошлый раз. Вдруг кто-то заинтересован не терять контакт.
Сходил в оркестр, пощупал барабан. Мое электронное поделие по механике слишком непохожее. Мой мягкий, с сильным отскоком. В реальный нужно долбить для извлечения звука, отскок слабее, в палец ощутимая отдача. И он громкий.
Переделал крепление датчика на барабан. Работает хорошо, но иногда при громкой быстрой дроби отваливается звук. Хз, с чем это связано. Стабилитрон стоит подходящий. Схожее поведение было до добавления мегаома, но сейчас все есть. В целом, играть несложные вещи играть можно. Буду второй добавлять.
Парсить xm оказалось не просто сложно, а охренеть как сложно. Невнятная документация - большая проблема. В голове надо держать ограниченные возможности контроллера. Выбор структур данных надо делать сразу с учетом интерфейса воспроизведения, которого нет. Потому что уже наступал на эти грабли и переписывал кучу кода в другой задаче, где не учел, как в будущем будет программа пользоваться данными. Короч, хз. Сам придумал головную боль. И бросать не хочется.
Собрался с духом и сходил с вопросом к нашим гуру программирования. Посмотрел как эти двое срутся между собой бьются над ответом. Одна голова - хорошо, две - быть срачу. В результате ответ вроде как есть, а вроде как и нет.
Подумал я распарсить xm файл. В начале было норм. В начале - это первые шестьдесят байт. А потом в доке написано: 4 (dword) Header size. Считываю по байтам в прямом порядке 0x14 0x01 0x00 0x00. И как это интерпретировать? Мне нужен размер в байтах. Забавно, это значение повторяется для всех опробованных файлов. Второе забавно: из доки можно вытащить, что хедер имеет размер двадцать байт. Двадцать = 0x14. Что значит тогда 0x01? Ладно, положим пока болт на это, и распарсим до следующей схожей неопределенности. _ Спустя пару часов тупления так и не обнаружил ситуации, когда бы фактическое значение в поле хедера превышало байт. _ UPD А внезапно размер не двадцать, ага, а двести семьдесят шесть. Что более удивляет, первые байты шли прямым порядком, а потом почему-то начинают меняться старший-младший байты. Так вот если их поменять, то 0x14 0x01 => 0x114 = 276; 276+60 = 336=0x150, и это сходится с xxd. С какого момента и почему вертятся байты? Надо ли их вертеть дальше? _ UPD[2] А, понял. Были char, вертеть ничего не надо было. Там, где word - читать второй байт, первый байт. Где dword - читать четвертый-третий-второй-первый. Удобно, однако.