Не могу пройти мимо умных разговоров взрослых дядь. Занесу свои пять копеек и побуду капитаном.
Работа у меня такая — написание всякого софта для работы по сети. Только этим всю жизнь и занимаюсь.
Мне нравится концепт Arduino. Сейчас я его уже забросил, а раньше много чего на эту тему делал.
Самое главное — это библиотека реализации TCP/IP. В Ардуине для этих целей есть Cишные библиотеки. Примеры тут:
http://arduino.cc/en/reference/ethernetБольшая часть рутины (стек) реализована на самом чипе WIznet. Концепция ввода/вывода — прочитать/записать строку символов/байт.
Если этот минимум реализовать в нашем девайсе, то реализовать любое прикладное приложение не составит труда.
HTTP — текстовый протокол, реализация POST/GET покроет 99% потребностей.
FTP — текстовый протокол. Банальный список файлов на удалённом Linux-хосте — уже победа. Или список файлов на HDD Эво — клиент и сервер почти идентичны по сложности реализации.
Файлокачалка — запрос на файл — пишем поток байт на диск (SD, HDD, для любителей извращений можно и на дискету). Отсюда и обновление прошивки — скачивание файла и сохранение на винте. И скачивание и подмонтирование образов сюда же.
Писать в твитор со спектрума? Проще простого.
Вся работа с сетью на высоком уровне — отправь запрос, получи ответ, распознай буковки, сохрани результат (далее в цикле). Соответственно, потребуется много универсального, открытого и расширяемого кода.
Кому интересно — могу рассказать, как за вечер реализовать некоторое серверное приложение, где клиентом будет выступать текстовый интерфейс ZX Evo. Ну то есть, на Ruby я умею многое, а на Ruby + PostgreSQL + Nginx — вообще всё.
Для меня только один неясный момент есть. Всё вышеперечисленное реализуемо при наличии годного си-компилятора. Библиотек готовых достаточно, подпилить их по железную реализацию — ну это копнуть надо.
Как это всё реализовать на Асме — вот в чём вопрос. HTML, даже самый простейший, надо уметь как-то парсить. Даже HTTP-ответы от сервера могут быть самыми разнообразными. Мастер ассемблера отправив первый же HTTP-запрос и получив ответ, столкнётся с необходимостью авторизации например. В ответ придут cookie — что с ними сделать надо, кто сходу скажет? И какому серверу какие куки отдавать впоследствии? Да чтоб подчищались вовремя. Сейчас всё больше сайтов используют HTML5 и UTF8 — кто на спектруме реализовал поддержку юникода и тэгов <article>, <header>, <footer>? И таких тонкостей в HTTP и HTML на каждом шагу.
На чистом Си это можно реализовать в обозримое время. Но есть ли под это дело наработки на Асме? Одними процедурами и джампами тут не обойдёшься.