Статья является введением, которое знакомит с компьютерами семейства ATARI XL/XE. На примерах, на встроенном языке ATARI BASIC с щепоткой ассемблера, показаны некоторые особенности графики для этой платформы. Читатель легко сможет повторить примеры на собственном ПК используя эмулятор Altirra. Подготовка статьи велась несколько месяцев и пережила несколько редакций и я решил приурочить её к появлению нового продукта под брендом ATARI - приставки 2600+.
Сергей
@tronix286
User
Cross-Detect для Проверки Качества Пайки в Электронных Цепях
Medium
27 min
4.9K
Tutorial
Как известно электроника это наука о контактах. При этом в реальной разработке контакты часто отсутствуют или не там, где нужно.
Вот пришла электронная плата с производства. Как убедиться, что на этой конкретной плате всё корректно с контактами?
Для этого нужна какая-то технология. Назовем её Cross-Detect.
IBM PC своими руками — это очень просто
34 min
199KПосле того, как я воплотил свою давнишнюю мечту и все-таки (хотя и с опозданием почти на 30 лет) построил Радио 86РК, некоторое время мне казалось, что на этой части моей истории поставлена вполне достойная точка.
Тем не менее, обнаружилось, что болезнь до конца не вылечена, и она вернулась еще более острым рецидивом. Наверное, сказались как неожиданно успешный опыт постройки 86РК, так и то, что у меня в ходе данного процесса образовалось довольно большое количество весьма притягательно выглядящих инструментов, приборов и деталей, которым очень хотелось найти применение.
В конце концов ломка стала нестерпимой, и мне пришлось снова взяться за паяльник, а также вспомнить некоторые другие навыки из прошлого. Что из этого получилось, можно увидеть вместе с некоторым количеством картинок и очень (повторяю – ОЧЕНЬ) большим количеством букв (и даже не букв, а страниц) дальше…
Доработка USB-стека в микроконтроллерах STM32 и TivaC
5 min
31KНаличие USB порта в современных микроконтроллерах открывает широкие возможности для самостоятельного изготовления разнообразных управляемых с компьютера устройств. На практике, однако, выясняется, что поставляемые производителем библиотеки для работы с USB нуждаются в доработке. Если вам интересен опыт подобной доработки для двух популярных семейств МК — добро пожаловать под кат.
Эмуляция носителя FAT32 на stm32f4
6 min
53KНедавно возникла данная задача — эмуляция носителя FAT32 на stm32f4.
Её необычность заключается в том, что среди обвязки микроконтроллера вовсе может не быть накопителя.
В моём случае накопитель был, но правила работы с ним не позволяли разместить файловую систему. В ТЗ, тем не менее, присутствовало требование организовать Mass Storage интерфейс для доступа к данным.
Результатом работы явился модуль, который я озаглавил «emfat», состоящий из одноимённого .h и .c файла.
Модуль независим от платформы. В прилагаемом примере он работает на плате stm32f4discovery.
Функция модуля — отдавать куски файловой системы, которые запросит usb-host, подставляя пользовательские данные, если тот пытается считать некоторый файл.
Микро БД для конфигурации на микроконтроллере
6 min
20KМногие разработчики программ для микроконтроллеров сталкивались с проблемой хранения конфигурационных данных. Это могут быть калибровочные коэффициенты измерительного алгоритма или просто последний выбранный пользователем пункт меню. Для микроконтроллера, имеющего возможность записывать в собственную flash-память, решение кажется простым — стираем сегмент и пишем туда все, что нужно. Однако, если необходимо еще и обеспечить отказоустойчивость по отношению к выключению питания в произвольный момент, задача становится нетривиальной, — по сути необходимо реализовать маленькую базу данных с механизмом обеспечения атомарности операций записи и восстановлением после сбоев. Решение этой задачи для микроконтроллеров семейства MSP430 — под катом. По количеству используемых ресурсов оно подходит даже для самых младших членов этого семейства — с размером RAM от 256 байт и falsh-памяти от 8Kb. В качестве бонуса — интерфейс командной строки (через UART) для чтения и записи конфигурации.
Конкурс для программистов №2
3 min
918Проект ttools.ru объявляет конкурс для программистов №2!
О конкурсах проекта можно почитать в рубрике "Конкурсы" блога ttools.ru
Опыт проведения предыдущего конкурса был учтен и отражен в правилах и плане проведения конкурса
О задаче конкурса #2:
Задача будет сложнее и интереснее задачи конкурса #1. Тем не менее, по опыту первого конкурса, уверен решение «в лоб» самые сильные участники смогут запрограммировать в течении первого часа. Однако объём и характер данных для обработки выбраны таким образом, что при таком решении время вычислений будет существенным, что автоматически даст преимущество участникам, с более оптимальным алгоритмом решения. При этом оптимизация алгоритма не должна быть сложной настолько, чтобы время на его реализацию было неоправданным и не давало преимущества другим участникам. Потребуется найти наиболее эффективное решение за минимальное время. Надеюсь, вам будет интересно побороться!
О конкурсах проекта можно почитать в рубрике "Конкурсы" блога ttools.ru
Опыт проведения предыдущего конкурса был учтен и отражен в правилах и плане проведения конкурса
О задаче конкурса #2:
Задача будет сложнее и интереснее задачи конкурса #1. Тем не менее, по опыту первого конкурса, уверен решение «в лоб» самые сильные участники смогут запрограммировать в течении первого часа. Однако объём и характер данных для обработки выбраны таким образом, что при таком решении время вычислений будет существенным, что автоматически даст преимущество участникам, с более оптимальным алгоритмом решения. При этом оптимизация алгоритма не должна быть сложной настолько, чтобы время на его реализацию было неоправданным и не давало преимущества другим участникам. Потребуется найти наиболее эффективное решение за минимальное время. Надеюсь, вам будет интересно побороться!
Язык Go. Пишем эмулятор CHIP-8
6 min
6.2KЯзык Go отпразновал недавно первый год своей жизни. Интерпретатору CHIP-8 стукнуло уже под сорок.
Любителям новых языков и старого железа посвящается этот пост — в нем мы будем писать эмулятор виртуальной машины CHIP-8 на языке Go.
О том, как настроить окружение для работы с Go писали уже не раз. За последнее время мало что изменилось, разве что версия для Windows стала более стабильной.
Установив все согласно инструкциям, приступаем к изучению внутренностей CHIP-8.
Любителям новых языков и старого железа посвящается этот пост — в нем мы будем писать эмулятор виртуальной машины CHIP-8 на языке Go.
О том, как настроить окружение для работы с Go писали уже не раз. За последнее время мало что изменилось, разве что версия для Windows стала более стабильной.
Установив все согласно инструкциям, приступаем к изучению внутренностей CHIP-8.
Графический «велосипед» по мотивам Turbo Vision (дела давно минувших дней)
4 min
12KОтносительно недавно, прочитав местную статью "Демо, которых никто никогда не видел", решил, что тоже стоит пролить свет на некоторые плоды своей программистской молодости.
Начиналось с этого:
Начиналось с этого:
Использование процедур и функций в Delphi
7 min
127KРано или поздно любому программисту потребляется использовать процедуры и функции. Все мы помним еще с паскаля, что там ничего нет сложного, но некоторые вещи обычно в книжках не описываются, хотя для грамотного составления программы требуется знать.
Vogue-Tec News #1
2 min
4.4KЕжечекпоинтовый обзор нововведений, интересностей и общих событий вокруг плеера из журнала Vogue
Содержание
- miniOS
- SD/MMC
- Обвязка усилителя
- Корпус
- А другие?
Обнаружение объектов методом Оцу
6 min
44KЗдравствуйте, уважаемые хабрачитатели и хабракритики. Этот пост я хотел бы посвятить такой актуальной на сегодняшний день теме, как обнаружение объектов на изображениях.
В качестве одного из алгоритмов такого обнаружения рассмотрим выбор порога быстрым и эффективным методом Оцу.
В качестве одного из алгоритмов такого обнаружения рассмотрим выбор порога быстрым и эффективным методом Оцу.
Vogue-Tec News #0
5 min
9.9KЕжечекпоинтовый обзор нововведений, интересностей и общих событий вокруг плеера из журнала Vogue
Содержание
- Linux? Linux!
- Ковыряем софт
- uCOS & miniOS
- PS/2 интерфейс
- Сайт, мануалы, Downloads и Credits
Расковыривание прошивки Vogue
5 min
4.5KПосле успешного выдирания прошивки tronix286 и Odinokij_Kot наконец появился материал для расковыривания. Минимум что было интересно — определить что же это за девайс, можно ли разблокировать какие-то полезные фичи, ну и как минимум поменять назойливую заставку.
(Для нетерпеливых и практиков: новый софт для смены заставки, перепрошивки и ковыряния прошивки внизу)
Самое первое и простое что можно сделать — просмотреть файлы визуально в текстовом и HEX редакторах. Сразу бросается в глаза:
img_boot.bin и res.bin содержат что-то сильно похожее на битмапы
minios.bin — имеет в начале что-то вроде заголовка с именами файлов
собственно про них я и расскажу дальше.
(Для нетерпеливых и практиков: новый софт для смены заставки, перепрошивки и ковыряния прошивки внизу)
Самое первое и простое что можно сделать — просмотреть файлы визуально в текстовом и HEX редакторах. Сразу бросается в глаза:
img_boot.bin и res.bin содержат что-то сильно похожее на битмапы
minios.bin — имеет в начале что-то вроде заголовка с именами файлов
собственно про них я и расскажу дальше.
Сохранение и восстановление прошивки медиаплеера из журнала Vogue
7 min
12KЭксперименты с плеером из журнала Vogue это очень хорошо, но старая добрая админская привычка делать бекапы всего и вся не даёт мне покоя. Ибо испортить игрушку при экспериментах с чужими прошивками очень легко, а как вернуть её в первозданное состояние не ясно. Обидно будет испортить такую халяву.
Так вот после 3-х дневной мозговой атаки на этот девайс мною был разобран до мелочей процесс сохранения родной прошивки и заливание её обратно. Отдельное спасибо tronix286 за то, что он модифицировал оригинальную программу usb_boot, добавил в неё возможность чтения прошивки в файл и за то что подкинул пару дельных даташитов.
Так вот после 3-х дневной мозговой атаки на этот девайс мною был разобран до мелочей процесс сохранения родной прошивки и заливание её обратно. Отдельное спасибо tronix286 за то, что он модифицировал оригинальную программу usb_boot, добавил в неё возможность чтения прошивки в файл и за то что подкинул пару дельных даташитов.
Подключаем к плееру из Vogue наушники и регулятор громкости
2 min
15KВсеобщая истерия прокатилась по поводу того, что в журнале «Vogue» содержится халявный видеоплеер. Журналы в Москве сметают стопками. И я поддался общей истерии и прикупил данное чудо. Поигравшись, понял что если использовать его в качестве видеоплеера, то необходимы наушники, и было бы не плохо сделать регулятор громкости.
Источник мужского вдохновения
Многие в посте пробовали припаять второй динамик, для которого казалось бы существуют контактные площадки, но были разочарованы отсутствием звука. А при беглом осмотре видно, что для второго канала тоже есть контактные площадки для усилителя. Изначально была мысль взять с другой платы микросхему усилителя и остальную рассыпуху и припаять. Но внимательно рассмотрев плату, я понял что другие площадки предназначены для запайки разъёма для наушников. При чём к этому разъёму идут дорожки от процессора минуя усилитель. Решил проверить и припаял к нему разъём для подключения наушников, выкорчёванный из старого плеера. И я угадал — работают оба канала в режиме стерео!
Источник мужского вдохновения
Подключаем наушники
Многие в посте пробовали припаять второй динамик, для которого казалось бы существуют контактные площадки, но были разочарованы отсутствием звука. А при беглом осмотре видно, что для второго канала тоже есть контактные площадки для усилителя. Изначально была мысль взять с другой платы микросхему усилителя и остальную рассыпуху и припаять. Но внимательно рассмотрев плату, я понял что другие площадки предназначены для запайки разъёма для наушников. При чём к этому разъёму идут дорожки от процессора минуя усилитель. Решил проверить и припаял к нему разъём для подключения наушников, выкорчёванный из старого плеера. И я угадал — работают оба канала в режиме стерео!
Взлом журнала Vogue или видео плеер за 119 руб
1 min
54KПоследний номер журнала Vogue, вышел с очень интересным вкладышем от Мартини.
ЗЫ. Видео удалили за нарушение авторских прав Americhip Russia. Перезалил на вимео
ЗЫ. Видео удалили за нарушение авторских прав Americhip Russia. Перезалил на вимео
Внутри MP3. А как оно всё устроено?
5 min
103KОднажды мне понадобилось решить простенькую (как мне тогда казалось) задачу – в PHP-скрипте узнать длительность mp3-файла. Я слышал о ID3 тегах и сразу подумал, что информация о длительности хранится либо в тегах, либо в заголовках mp3-файла. Поверхностные поиски в интернете показали что за пару-тройку минут решить эту задачу не получится. Поскольку от природы я довольно любопытен а время не поджимало — решил не использовать сторонние инструменты а разобраться в одном из самых популярных форматов самостоятельно.
Если Вам интересно, что там внутри – добро пожаловать под кат (трафик).
Обратная польская запись
4 min
252KДва плюс два, умножить на два?
Не знаю как вы, но я в школе долго мучился, пытаясь разобраться с приоритетом операций и скобками. Потом, как и каждый начинающий программист, я мучился с приоритетом операций и скобками, когда писал собственный калькулятор. А оказалось, что все эти мучения были напрасны. Ведь существует прекрасный механизм, известный, как обратная польская запись. О том, что это такое и как с этим работать я и хочу вам рассказать.
Не знаю как вы, но я в школе долго мучился, пытаясь разобраться с приоритетом операций и скобками. Потом, как и каждый начинающий программист, я мучился с приоритетом операций и скобками, когда писал собственный калькулятор. А оказалось, что все эти мучения были напрасны. Ведь существует прекрасный механизм, известный, как обратная польская запись. О том, что это такое и как с этим работать я и хочу вам рассказать.
Information
- Rating
- Does not participate
- Location
- Москва, Москва и Московская обл., Россия
- Registered
- Activity