Pull to refresh
35
0
Send message

Еще один клон Радио-86РК

Reading time9 min
Views13K

Как-то так получилось, что неожиданно у меня образовалось хобби – делать свои версии ретрокомпьютеров. Т.е. не просто найти схему, сдуть с нее пыль и спаять как это было когда-то придумано, а сделать свой вариант. Но обязательно с настоящим процессором и другими основными микросхемами, а не эмулятор на микроконтроллере.

Замечу, что мне интересен сам процесс сборки. Как-то пользоваться тем, что в итоге получается, я не вижу смысла.

Сегодня будет рассказ про Радио-86РК.

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

Итак, дошла у меня очередь до РК после всяких спектрумов. В свое время он прошел как-то мимо меня. В 86-м году я еще был слишком мал и не читал журнал «Радио», а когда стал постарше, всех домашних восьмибитников уже затмил великий Спектрум.

Делать я решил классическую версию 32кБ, но со следующими особенностями:

Процессор Z80. Он был у меня в наличии, и плюс к этому он по всем параметрам лучше i8080.

Выход на монитор VGA 640х480. Никаких телевизоров. 21 век все-таки.

Память на двух 41464 вместо 8 или 16 К565РУ… Эти (41464) тоже были у меня в наличии. Получается 64кБ, а не 32. Но это не важно.

Параллельный порт К580ВВ55 только один на клавиатуру – внешних устройств для подключения у меня нет, поэтому второй порт не пригодится.

Всякую мелкую логику реализовать в ПЛИС.

Монтаж проводами на макетной плате.

Вот и весь план. Набросал реально в уме эскиз будущей конструкции, заказал макетную плату размером А4 и основные микросхемы.

Читать далее

Интерфейсы в C#

Reading time4 min
Views113K
У тех, кто только начинает осваивать C# часто возникает вопрос что такое интерфейс и зачем он нужен.

Сначала о том, что можно найти по первой же ссылке в поисковике. В большинстве статей смысл интерфейса разъясняется как «договор» о том, что должен содержать класс, какие свойства и методы. Например у нас есть интерфейс:

public interface IForecast
{
    int GetForecast(int value);
    int Size { get; set; }
}


Соответственно, если какой-то класс реализует данный интерфейс, то он должен содержать реализацию метода int GetForecast(int value) и свойство Size.

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

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

Читать дальше →

MvvmCross для простого приложения iOS на C#

Reading time8 min
Views8.3K
Здравствуйте. Разработчики кроссплатформенных приложений под .NET (далее все про C#) наверно знают о существовании MvvmCross. Отличный продукт, главным недостатком которого является весьма скудная документация. А на русском языке и того почти нет. Здесь я хочу в общих чертах рассказать о структуре простого приложения с меню для iOS на базе MvvmCross.
Читать дальше →

Information

Rating
Does not participate
Registered
Activity