Pull to refresh
255
0
Send message

Родной Sinclair ZX Spectrum

Reading time 1 min
Views 35K
Не удержался я и купил таки на Ebay'е за 50 фунтов (2500р) ЕГО — родной Sinclair ZX Spectrum, модель с 48КБ ОЗУ. Когда-то у меня он был, но в отечественном исполнении «Ленинград» по схеме Зонова.

(фото из Википедии)



А тут — родной!
Читать дальше →
Total votes 95: ↑66 and ↓29 +37
Comments 95

Энигма, Колоссус или история Британской криптографии в Блетчли-парке

Reading time 2 min
Views 6.5K
Сегодня ездил в Bletchley Park, благо час на машине от дома. Это место было объектом максимальной секретности в годы Второй Мировой. На этой военном базе, например, Алан Тьюринг взламывал коды Энигмы, и тут был построен Колоссус, ламповый компьютер, использовавшийся для взлома шифров.

Сейчас тут музей криптографии и шифрования. Недавно Колоссус был восстановлен, и можно посмотреть его в действии. У меня была цель посмотреть Колоссус и Энигму.
Читать дальше →
Total votes 31: ↑28 and ↓3 +25
Comments 13

Микрокомпьютер GMC-4

Reading time 3 min
Views 5.6K
По наводке Сергея Вакуленко, я купил GMC-4. Все-таки в подобных устройствах есть какой-то неповторимый шарм. Заказал в забавном японском магазине гаджетов Japan Trend Shop.



GMC-4 — это четырех битный микро-компьютер. Характеристики компьютера:
  • размер слова 4 бита
  • восемь регистров, один регистр-флаг
  • 15 однословных и 16 двухсловных машинных инструкций
  • память программ 80 слов
  • память данных 16 слов
  • ПЗУ c набором из 7 игр: орган, угадай мелодию, дави моль, теннис, таймер, музыкальный плеер, генератор морзе
  • семь светодиодов — порт вывода шины адреса
  • семисегментный индикатор — порт вывода шины данных
  • 20-кнопочная клавиатура — порт ввода
  • динамик для вывода звука
  • кнопка сброса
  • питание от 3-х батареек AA

Читать дальше →
Total votes 38: ↑33 and ↓5 +28
Comments 27

Мини-компьютеры: MK802, CuBox, Raspberry PI

Reading time 2 min
Views 99K
Тема микрокомпьютеров однозначно пошла на взлет. Про сборку Maximite я уже писал.

За последнее время удалось пощупать еще несколько мини машин, правда несколько иного класса, чем Maximite, построенных на ARMах.
Читать дальше →
Total votes 48: ↑44 and ↓4 +40
Comments 88

Трейдинговые системы для чайников

Reading time 10 min
Views 17K
В данной статье я попытаюсь рассказать некоторых идеях, лежащих в основе трейдинговых систем. Изложение будет максимально простым, по возможности без технических и экономических заумностей.
Далее...
Total votes 9: ↑7 and ↓2 +5
Comments 5

Формат 32nd (thirty seconds)

Reading time 2 min
Views 1.1K
В работе с трейдинговыми системами наткнулся на необычный формат представления чисел, представляющих котировки ценных бумаг, в частности для государственных облигаций правительства США. Например, цена, представленная как 100-31 далеко не означает 100 долларов и 31 цент, или 100-127 вообще имеет мало смысла, так как в одном долларе всего 100 центов, а не 1000, и нет необходимости резервировать под дробную часть три знака после запятой.
Далее...
Total votes 29: ↑24 and ↓5 +19
Comments 9

Платежный терминал OMNI-395 изнутри

Reading time 3 min
Views 23K
Мое реальное знакомство с «недо» PC случилось (случайно) в начале 2000-х, когда я устроился в отдел процессинга пластиковых карточек одного банка. А конкретнее, в разработку софта для платежных терминалов, POS-ов. ПОС для приема платежей пластиковыми карточками — это обычно законченный девайс, мини- или микро- компьютер, с экраном, клавиатурой, с читалкой магнитной полосы с карты, часто с принтером, а сейчас еще и ридером для чиповых карт.

Я начал с OMNI-395. Построен на Zilog Z180, имеет до 1М non-volatile памяти для хранения данных (журналов операций, например), AT-модем на 2400 (даже с какой-то коррекцией), двенадцативольтовые порты RS232 для PIN-клавиатуры, принтера и просто порт общего назначения (мы его использовали для подключения к мультипортовому шлюзу в TCP/IP) (увы, не все порты имеют полный набор линий RS232, что вынуждает изобретать программные велосипеды), ну и LCD экран.
Читать дальше →
Total votes 32: ↑26 and ↓6 +20
Comments 19

Цветной микрокомпьютер Maximite на базе PIC32

Reading time 2 min
Views 40K
На сегодняшний момент проект Maximite является моим любимым в области рукодельных микрокомпьютеров. Собрав его оригинальный черно-белый вариант, я после запустил на нем RetroBSD, затем даже свой эмулятор Радио-86РК. Что подкупает в проекте, так это законченность. Конструктивно Maximite простой, PIC32 делает почти всю работу. Но Maximite — это не просто идея в виде схемы. Для Maximite разработана плата, корпус и, собственно, прошивка — MMBasic, продвинутый диалект Бейсика, дающий доступ ко всей периферии, а она у Maximite внушительна. В небольшом интервью автор и разработчик Maximite, Джеф Грэхем, рассказал, почему ему фактически пришлось довести проект для столь законченного вида.

Недавно автор выпустил новую, цветную версию, и данный обзор посвящен именно ей.
Читать дальше →
Total votes 25: ↑22 and ↓3 +19
Comments 20

Пример использование Splunk для анализа логов

Reading time 5 min
Views 100K
Splunk — это система хранения и анализа логов. В двух словах принцип работы можно описать так: есть сервер Splunk, который хранит, индексирует и позволяет анализировать логи, и есть рабочие машины (сервера), которые эти логи создают и передают на сервер Splunk. Сервер Splunk в свою очередь может быть кластером из нескольких физических машин, между которыми распределяется хранение информации, и которые используются для ее обработки по технологии MapReduce. Способов передавать логи с рабочих машин очень много: через специальную программу forwarder, которая умеет быстро и эффективно отсылать изменения логов на сервер, через технологии типа NFS/SMB, или SNMP, можно самостоятельно отсылать данные в Splunk по TCP/IP (например, вместо того, чтобы писать в файл). Под Windows Splunk умеет брать данные из Windows Events, Performance Counters или Реестра.
Читать дальше →
Total votes 19: ↑16 and ↓3 +13
Comments 60

Мини-компьютер на базе микроконтроллера Parallax Propeller

Reading time 5 min
Views 58K
Микроконтроллер фирмы Parallax под названием Propeller, в сравнении с «классикой» жанра типа PIC или AVR занимает несколько странную нишу. Про первые два можно сказать, что это архитектуры общего назначения. Создатели же Пропеллера подошли к вопросу «с фланга».
Читать дальше →
Total votes 52: ↑51 and ↓1 +50
Comments 51

Эмулятор Радио-86РК на JavaScript / Перезагрузка

Reading time 2 min
Views 13K


В 2009 я написал первую версию эмулятора Радио-86РК на JavaScript. Тогда мне очень хотелось проверить саму идею подобного эмулятора, поэтому непосредственно реализация вышла несколько сумбурной, хотя и работала в итоге. Тогда я тестировал эмуляцию процессора Intel 8080 в основном визуально, на играх. Поэтому какой-либо рефакторинг кода был мучителен, так как было элементарно что-то сломать.

Недавно я запустил эмулятор РК на микрокомпьютере Maximite. В процессе работы эмуляция ядра Intel 8080 выделилась в отдельный проект i8080-core, в котором также появилась система тестирования. Тесты, особенно, 8080 CPU Execercier, позволяют весьма тщательно проверить качество эмуляции, особенно на предмет недокументированного поведения.

И тут пришла идея вернуться к эмулятору на JavaScript и перетестировать его. В итоге я фактически переписал эмулятор с нуля, разделив его на ядро процессора i8080-js, и, собственно, эмулятор РК.
Читать дальше →
Total votes 41: ↑40 and ↓1 +39
Comments 23

US Visa: Мое первое приложение для iPhone

Reading time 22 min
Views 14K

Почему, собственно?


Имея Mac и iPhone, не попытаться написать мобильное приложение? Как-то неправильно. Благо тут подвернулась задачка, которая прекрасно легла в тему, как весьма полезная и в то же время не очень сложная в реализации. Итак, я погрузился в Objective-C и Cocoa.
Читать дальше →
Total votes 8: ↑4 and ↓4 0
Comments 15

Уровни для Сокобана

Reading time 2 min
Views 40K
Во времена XTшек и ДОС был у меня вариант Сокобана, реализованный в виде махонького бинаря, размером менее десяти килобайт. Называлось это чудо pusher.exe и выглядело вот так:



Это был простой уровень, но как насчет вот такого?
Читать дальше →
Total votes 70: ↑65 and ↓5 +60
Comments 53

Интервью с Чарльзом Уэзереллом, автором книги «Этюды для программистов»

Reading time 2 min
Views 29K
Не секрет, что не одно поколение программистов зачитало до дыр книгу «Этюды для программистов» Чарльза Уэзерелла, оригинал которой на английском вышел аж в 1978.



Книга содержит 27 “этюдов”. Каждый этюд – это законченная содержательная задача для обучающихся программированию. Удивительно, книге более 30 лет, но любой из этюдов может быть до сих пор использован по назначению. Сам, будучи фанатом книги, до сих пор храню родной бумажный вариант русского издания, а относительно недавно таки приобрел оригинал на английском.

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

Волею судеб, недавно у меня появилась возможность связаться с Чарльзом и взять у него интервью.
Читать дальше →
Total votes 76: ↑67 and ↓9 +58
Comments 15

Радио-86РК на железе Maximite

Reading time 1 min
Views 18K
Сначала было слово, затем оригинальный Радио-86РК, который собрал старший брат вместо или во время диплома. Это был хардкор в виде трех разных питаний, вечно горевших микросхем памяти РУ3, загрузки бейсика с кассет (желательно, хромовых) и т.д.

Потом был эмулятор под ДОС, потом под Windows, потом на JavaScript'е.

Но мы возвращаемся к истокам, к железу. Итак, четвертая реинкарнация Радио-86РК в новом, на этот раз железом теле.
Читать дальше →
Total votes 25: ↑22 and ↓3 +19
Comments 16

Онлайновый учебный курс «Algorithms: Design and Analysis, Part I»

Reading time 2 min
Views 19K
Закончил я онлайновый курс Algorithms: Design and Analysis, Part I на coursera.org

Если сказать, что я полном отпаде — это ни чего не сказать. Причем, в отпаде я не сколько от материала. Он на высоте, но этим удивить сложно. А в восторге я от формата самого обучения, качества подготовки материалов и онлайновой технологии проведения.

Вкратце.
Читать дальше →
Total votes 45: ↑38 and ↓7 +31
Comments 26

RetroBSD on Maximite

Reading time 1 min
Views 5.4K
Я уже писал, как собирал Maximite.

Вчера как-то был настрой, и решил я поставить туда RetroBSD.

RetroBSD — это настоящий UNIX, являющийся наследником 2.11BSD и предназначенный для встраиваемых систем с фиксированной структурой памяти. На текущий момент работает на микроконтроллере Microchip PIC32 с 128 килобайтами памяти и 512 килобайтами Flash. Данный процессор позволяет разделять адресное пространство ядра и пользовательских процессов.

RetroBSD обеспечивает защиту памяти ядра, используя аппаратные возможности микропроцессора, полноценную вытесняющую многозадачность, POSIX API (fork, exec, wait4 и т.д.). Можно писать программы прямо на устройстве, так как есть компилятор С. Ядро системы прошивается в кристалл, а файловая система загружается с SD-карты.

RetroBSD поддерживает не только аппаратуру Maximite, но и ряд альтернативных устройств на базе PIC32 (chipKIT Max32, Sparkfun UBW32, Microchip Explorer 16, Microchip PIC32 USB/Ethernet Starter Kit, Olimex Duinomite, Duinomite-Mini и Duinomite-Mega, eflightworks).

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

Торжественный момент включения, и…
Читать дальше →
Total votes 45: ↑42 and ↓3 +39
Comments 5

Многопоточный QuickSort на С++ 2011

Reading time 6 min
Views 13K
Лично я, при всей моей вере в C++, считаю, что даже в редакции 2011, этот язык крайне недружелюбен в плане многозадачности и многопоточности. В качестве очередной попытки переубедить себя в этом я попробовал сделать многопоточный QuickSort.

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

Вот мой наивный велосипед:
Читать дальше →
Total votes 32: ↑29 and ↓3 +26
Comments 15

Взлом программы однокомандного процессора

Reading time 2 min
Views 2K
Разного рода "ненормальное" программирование весьма популярно среди любителей поломать голову над разными задачками. Порой программу для очередной "ненормальной" среды программирования уже нереально написать вручную, а надо писать генератор, создающий код.

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

Итак, имеется модель некоторого виртуального процессора, выполняющего только одну логическую операцию — Стрелку Пирса.
Читать дальше →
Total votes 49: ↑43 and ↓6 +37
Comments 13
1

Information

Rating
Does not participate
Location
Великобритания
Registered
Activity