Pull to refresh
813
312.2
Сергей @dlinyj

Автор-фрилансер

Send message

Тюнинг старого тетриса

Level of difficultyEasy
Reading time4 min
Views13K

Недавно я прикупил себе старенький и оригинальный — «тот самый» тетрис, а дальше меня затянуло. Собственно, нормальная ситуация. Однако, мне пришлось столкнуться с одной неприятной проблемой: если во время игры — скорость (ака сложность) повышается выше двух пунктов, то играть становится совершенно невозможно, а скоростей-то много…

Понятно, что идёт какая-то ошибка в подборе частоты задающего генератора в контроллере тетриса, и это даже слышно на слух, так как мелодия играет уж больно быстро. Потому, мне пришла в голову мысль, а возможно ли как-то внести аппаратные изменения в устройство, так чтобы понизить частоту контроллера для корректной игры? Сам спросил — сам ответил.
Читать дальше →
Total votes 58: ↑71.5 and ↓-13.5+85
Comments50

Сканер отпечатков кошачьих носиков

Level of difficultyEasy
Reading time5 min
Views19K
Расширение сферы применения биометрической системы контроля доступа на других существ, открывает поистине потрясающие возможности.


Так сложилось, что на территории мануфактуры, где я располагаюсь, живёт достаточно большое семейство иссиня-чёрных котов, все братья от одной матери, но из разных помётов. Весь этот прайд мы именуем просто Бандиты, по соответствующему характеру и поведению. Из всей этой стаи один кошак полюбился мне больше всего: самый адекватный и интеллигентный; и именно его я иногда пускаю в свои кабинеты.
И возжелал я пускать того прекрасного кошака, а остальных отсеивать, дабы не хулиганили в моё отсутствие. И пришла в мою голову мысль о пропускной системе, именуемой КотСКУД — кошачья система контроля доступа.
Читать дальше →
Total votes 214: ↑211 and ↓3+208
Comments81

Медная фотография

Reading time8 min
Views11K

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

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

В детстве я замечал, как отполированная медная фольга, приклеенная к текстолиту, достаточно быстро темнела на солнечном свету, однако потемнение не происходило на необлучённых участках. Тогда я отметил, что какая-никакая фоточувствительность у меди имеется. Потом у меня долго витала идея получения фотографии на медной пластине. А ещё, мне очень хотелось понять, почему же такой фотографии нет повсеместно?
Читать дальше →
Total votes 140: ↑134 and ↓6+128
Comments37

Калькуляторы с обратной польской нотацией

Level of difficultyMedium
Reading time12 min
Views14K

На хабре уже многократно проскакивали статьи и переводы о калькуляторах с обратной польской нотацией. Раньше я не придавал им большого значения, пока на глаза не попался перевод статьи «Мягкое знакомство с дополнительным кодом», где фигурировал программистский калькулятор HP-16C. Что сподвигло меня разобраться, что за зверь такой «обратная польская нотация» или reverse Polish notation (далее по тексту RPN).

Искра, буря, безумие… Спешно поставив эмулятор HP-16C на телефон, я полез искать калькуляторы с поддержкой RPN, попутно скупая найденные экземпляры. В этой статье хочу поведать о четырёх редких! экземплярах, которые мне удалось найти на отечественных досках объявлений, и дать некоторые рекомендации тем, кто решит прикоснуться к удивительному миру программируемых калькуляторов.
Читать дальше →
Total votes 133: ↑132 and ↓1+131
Comments80

Измерение скорости чтения-записи носителей с помощью утилиты dd

Level of difficultyMedium
Reading time11 min
Views13K
Недавно, я вновь побывал в роли технического эксперта, когда занимался переводом книги «Understanding Software Dynamics» от Richard L. Sites. В ходе работы над главой — про скорость работы с жёстким диском, мне поступил вопрос от коллеги: каким образом можно просто и быстро измерить скорость чтения и записи твердотельных носителей информации, в разрабатываемых в компании устройствах? При этом стояла задача реализовать всё это наиболее простыми способами, чтобы они были переносимы между совершенно разными платформами и архитектурами. Носители же информации могут быть любыми: USB Flash, eMMC, SD, NAND и прочее, прочее. Единственное, что их объединяет — это Linux.

Задача захватила меня с головой…
Читать дальше →
Total votes 61: ↑59 and ↓2+57
Comments47

Простая гравировка для дома: электрический карандаш

Level of difficultyEasy
Reading time5 min
Views24K


Наверняка, многие из вас, хоть раз сталкивались с металлообработкой — хоть в каком-то виде, или возможно видели, нанесённые неровной рукой, надписи на подшипниках, свёрлах, фрезах, оправках. При этом — они прямо-таки выгравированы на металле, хотя и практически гладкие на ощупь. Делалось это всё электроискровым карандашом (он же: электрокарандаш, электроискровой маркер, электрограф, электроперо, электроэрозионный аппарат, электроискровое перо). Можно его ещё называть гравером, но тут есть шанс спутать с ротационным гравером.

В долазерную эру — это был практически единственный способ, быстро нанести надпись на калёный металл, типа быстрорежущей стали. Узнал я о таком удивительном устройстве от Павла Серкова aka spiritus_sancti в его канале Мир глазами инженера. После прочтения его поста в нашем общем чате обмолвился, что было бы круто иметь такое устройство в хозяйстве, а Павел, взял и предложил мне его прислать. Отказаться от такого предложения я не мог и с этого момента начинается квест по разбору в принципах действия этого устройства, приведение его в чувство, доработка его напильником и окончательный запуск.
Читать дальше →
Total votes 107: ↑106 and ↓1+105
Comments70

Разработка BIOS на языках высокого уровня

Level of difficultyHard
Reading time11 min
Views23K
Ничего лишнего: материнская плата, видеокарта и ROM-BIOS

Меня давно волнует вопрос, как подступиться к разработке на голом железе, на чистом си. Хотелось понять, каким же образом идёт запуск BIOS, u-boot, grub и прочих первичных загрузчиков. Ведь необходимо перейти от ассемблера к тёплому ламповому си и соблюсти условие, собрать всё это в линукс любимым компилятором gcc.

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

Здесь я хочу свести основные моменты разработки BIOS в одном месте и разобраться обо всех проблемах, которые я получил во время своих опытах в разработке (первая и вторая части).
Читать дальше →
Total votes 134: ↑133 and ↓1+132
Comments58

SSD технологии древних: DiskOnChip

Level of difficultyMedium
Reading time8 min
Views18K

В середине 1990-х, FLASH-накопители были очень дорогими, поэтому появление твердотельных накопителей сильно задерживалось. Стоимость 1 МБ FLASH-памяти была несоизмеримо дорога в сравнении со стоимостью 1 МБ памяти на физическом жёстком диске, с блинами.

Но, несмотря на это, в 1995 году — израильская компания M-Systems представила первый полупроводниковый накопитель. Это был настоящий жёсткий «диск», который выглядел как обычная 32-х контактная DIP-микросхема. Более того, он устанавливался вместо микросхемы расширения BIOS, при этом имел на борту ёмкость в десятки, а то и сотни мегабайт. В те годы — это было просто космические технологии, и в последствии они встречались и использовались достаточно часто, но уже в промышленном секторе.

Это система DiskOnChip – фактически полноценный жёсткий диск на одной маленькой микросхеме, с минимальной обвязкой, которая для своей работы потребует всего два чипа логики.

Ну что же, попробуем собрать свою необычную систему с этим жёстким «диском», проверю, может ли она работать с обычной ROM-памятью, запущу наконец свой BIOS на 386 машине с ISA-картой, чего не удалось в прошлый раз.
Читать дальше →
Total votes 118: ↑116 and ↓2+114
Comments67

Реверс-инжиниринг нестандартной ps/2 клавиатуры

Reading time7 min
Views8.8K

Терминал VT520 c клавиатурой LK46W-A2

После моего предыдущего поста с подключением советской клавиатуры к современному ПК, я как-то заразился оригинальными клавиатурами от DEC, и уж больно хотелось их испытать в деле. И на удивление, на досках удалось найти даже клавиатуру LK201, однако для меня показалась не очень уж интересной. А вот клавиатуру Wyse 85 со свичами Cherry MX нашёл намного более стильной и крутой. Однако смущал вопрос, как же её использовать с современным железом, удобно ли будет такое расположение клавиш?

И тут мне на глаза попадается объявление с ещё одной терминальной клавиатурой LK46W-A2 которую можно подключить к обычному компьютеру по стандартному интерфейсу PS/2, но с количеством клавиш и расположением, как у LK201 с небольшими дополнениями. После того как ознакомился с информацией, принял волевое решение купить кота в мешке и попробовать эту клавиатуру с обычным ПК, а также понять, что же делают все остальные «нестандартные клавиши». Этакий реверс-инжиниринг клавиатуры.
Читать дальше →
Total votes 94: ↑93 and ↓1+92
Comments29

Подключение советской клавиатуры Электроника МС 7004 к современному ПК

Reading time8 min
Views16K

Когда я листал доски объявлений, на глаза попалась отличная клавиатура «Электроника МС 7004». Даже по современным меркам клавиатура выглядит просто потрясающе. У неё есть откидной блок со светодиодами, клавиши механика. И она настолько крутая, что даже сейчас на ней хочется работать. Но, как обычно есть один маленький нюанс: у неё свой интерфейс и электропитание.

Такие клавиатуры встречаются часто, выглядят стильно и, в общем-то, можно получить уникальное устройство ввода, но как же её подключить? Этим вопросом я занялся уже после покупки, потому что клавиатура была крута, и вылилось всё в интересное копание в схемотехнике клавиатуры, протоколах и многом другом.
Читать дальше →
Total votes 88: ↑83 and ↓5+78
Comments50

Как и зачем компании накручивают голоса на хабре

Reading time9 min
Views20K


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

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

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

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

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

Сократ мне друг, но истина дороже

Поэтому расскажу вам, механизм рейтинга, и как компании его накручивают. И предложить методы борьбы с накрутками у компаний, для администрации Хабра.
Читать дальше →
Total votes 255: ↑242 and ↓13+229
Comments227

Пишем свой ROM BIOS

Reading time12 min
Views27K

Со стародавних времён хотел попробовать создать собственный ROM BIOS, который будет записан в отдельную микросхему и будет выполнять какие-то полезные действия. Например, ROM BIOS установлен в видеокартах (по крайне мере старых), контроллерах дисков и много где ещё — это фактически расширения обычного BIOS. Понимаю, что это всё старьё и тягаться с возможностями современного UEFI бессмысленно, но мне очень хотелось создать свой собственный образ, который находится физически в отдельной микросхеме и работает при старте системы. Поэтому пришлось даже для этих целей найти старый комп.

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

В этой статье мы с вами разберём создание своего ROM BIOS, дальше я расскажу про тонкости и нюансы, напишу низкоуровневый «Hello world», сделаю настоящий интерпретатор BASIC ROM, который стартует при включении компьютера, как в первых IBM PC.
Читать дальше →
Total votes 141: ↑140 and ↓1+139
Comments70

Правка чужого кода

Reading time6 min
Views17K
Всегда приятно, когда удаётся сделать мир чуточку лучше.


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

Старожилы знают, что в комплекте с различными версиями ДОС шли дополнительные утилиты, и среди них была «замечательная» утилита debug, которая убога чуть более, чем полностью. Ещё во времена моей молодости эта утилита вызывала у меня самые противоречивые чувства, то сейчас и подавно. Пользоваться ей без успокоительных очень сложно, с другой стороны, хорошо, что она есть. Но мне возможностей и удобства этой утилиты не хватало, поэтому пришлось искать другой подходящий инструмент. После длительного гугления наткнулся на исходники утилиты RAM View.

К сожалению, исполняемого файла найти не удалось, только исходные коды под Borland C++ 3.1, и как впоследствии оказалось, сама программа содержала ошибки.

Всё это вылилось в интересный квест по поиску старого компилятора, исправления ошибок в программе 25-летней давности и создания запроса на слияние.
Читать дальше →
Total votes 91: ↑90 and ↓1+89
Comments48

Аппаратный ЭЛТ-фильтр для картинок

Reading time10 min
Views12K

Всю мою жизнь мне нравятся средства отображения информации — в виде электронно-лучевых трубок. В них есть определённый романтизм и шарм. Недаром их часто используют в иллюстрациях к фильмам антиутопиям. 

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

Как вы понимаете, этот проект — самый эпичный долгострой в моей жизни, раз я задумал его ещё в конце 2000-х. Где-то примерно в году 2015 он работал для друзей, и даже в 2016 году он ездил на Chaos Construction. Но это всё было не то, интерфейсы не те. И вот, наконец проект завершён, и может быть показан широкому зрителю.

А прежде, чем вы залезете под кат, можно сразу попробовать отфильтровать картинку — достаточно просто зайти в мой телеграмм бот

Поехали, ниже много аппаратной жести.
Читать дальше →
Total votes 117: ↑116 and ↓1+115
Comments33

Подключаем алфавитно-цифровой экран к VGA

Reading time5 min
Views15K

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

Ларчик просто открывается, всё дело в том, что в интерфейсе VGA (а также в других видеоинтерфейсах) присутствует ещё одна шина данных I²C, которая доступна для использования и её легко можно применить в своих самоделках.
Читать дальше →
Total votes 129: ↑127 and ↓2+125
Comments46

Изумрудный венгерский терминал Videoton VDX 52600

Reading time6 min
Views11K
Администрируем сервера с настоящего аппаратного терминала.

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

Мне было по-настоящему интересно попробовать использовать его для реальной работы с удалёнными серверами, для которой они и были изначально предназначены. Всё это попробую реализовать в рамках данной статьи.
Читать дальше →
Total votes 110: ↑109 and ↓1+108
Comments82

Серверные мощности в домашнем ПК

Reading time12 min
Views49K
Сказ о том, как собрать себе мощный комп с минимальным бюджетом.

В один прекрасный день мой коллега сказал, что на досках объявлений появились недорогие списанные мощные двухпроцессорные серверные материнские платы Supermicro X8DTL-i. В этом лоте на плате уже установлены процессоры, память и радиаторы, включай и работай. При этом формат платы E-ATX позволяет без особых проблем уместить её в обычный компьютерный корпус. Единственное, о чём стоит задуматься — это об охлаждении этих серверных мощностей.

Ценник на такой комплект на досках объявлений начинается от трёх тысяч рублей, что по карману даже школьнику. Это весьма интересное предложение для того, чтобы повозиться с серверным железом, да ещё и в домашнем компьютере. Я загорелся, и мне казалось, что никаких проблем возникнуть не должно, но как обычно, дьявол кроется в мелочах. Как и бывает в таких случаях, проблем посыпался ворох: охлаждение, расположение нестандартной матери, драйвера управления вентиляторов, организация электропитания.

В результате это всё вылилось в настоящий кастомный проект, который существует в единственном экземпляре. 3D-печать, ковыряние драйверов, разработка и пайка своих приспособлений. В общем, путь настоящего технаря.
Читать дальше →
Total votes 121: ↑118 and ↓3+115
Comments349

Магия ssh

Reading time12 min
Views63K

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

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

  • Удалённый доступ — логично, ведь для этого он и предназначался.
  • Монтирование папок по сети — очень удобно для работы с кодом на удалённой машине.
  • Удалённое выполнение команд — нечастая, но используемая мной операция. Удобно получать выхлоп команды в канал другой команды на текущей машине.
  • Запуск графических приложений на удалённой машине.
  • Проксирование трафика — способ перенаправления трафика. Этакий быстрый и простой аналог VPN.
  • Обратный ssh — использую для проброса портов к системам, находящимися за NAT, когда лень настраивать firewall.

Далее вкратце разберу каждый пункт, и особенно пути эффективного и простого использования под Windows.
Читать дальше →
Total votes 105: ↑97 and ↓8+89
Comments131

Создание демки специально для HABR — Часть 3

Reading time8 min
Views3.9K
Наконец-то мы подобрались к финальной части большой саги о создании демки для ПЭВМ «Микроша». В предыдущих первой и второй части я реализовал заходник, само видео вращения, и понял, как сделать звук. Теперь осталось всё свести воедино, исправить некоторые недочёты и добавить нормальную музыку. Но, как обычно, дьявол кроется в мелочах.
Читать дальше →
Total votes 68: ↑67 and ↓1+66
Comments24

Создание демки специально для HABR — Часть 2

Reading time10 min
Views4.9K

В предыдущей части мы только начали входить во вкус создания демки, как статья неожиданно закончилась на самом интересном месте. Не буду сильно томить и продолжу описывать свой квест по созданию этой интересной программы. Борьба за размеры памяти, задержки, звук, всё в этой серии.
Читать дальше →
Total votes 76: ↑75 and ↓1+74
Comments33

Information

Rating
6-th
Location
Москва, Москва и Московская обл., Россия
Registered
Activity