Insanity #10
30 ноября 2001

ZSock TCP/IP Stack - Железка для выхода в Internet.

Аппаратное обеспечениеПериферийное оборудованиеВвод-выводМодемы

               ... ZSock - The Z88 TCP/IP stack ...

    Сбылась  мечта!  Творение  Клайва  Синклера  теперь способно
баражировать  по  просторам  всемирной паутины. Технология ZSock
позволяет пусть даже не Spectrum ZX, но хотя бы Z88 соединить со
множеством  иных  пользователей интернета. Документ приводится в
оригинальном варианте с кратким резюме на русском языке в конце.

                               * * *

    ...What is Zsock?

    ZSock  is  a work-in-progress TCP/IP stack for the Cambridge
z88  portable.  The stack itself is written almost entirely in C
and was developed using z88dk - the z88 Development Kit.

    Zsock  is  supplied  in  the form of an application which is
also  a  package  (A  package  is  the  z88 equivalent of shared
libraries or dlls) which permits you to be able to write network
aware  applications  with the minimum of hassle. Included within
the  ZSock  archive  is  an  example user application and also a
daemon allowing file transfer.

    ...Zsock has the following features: 

  -  Connection to the 'net via the SLIP protocol
  -  Implementation of IP/ICMP/UDP/TCP network layer
  -  Resolving (forward and backward) of hostnames
  -  Ping client
  -  "Plugin" Network Driver Devices
  -  Easily configurable
  -  Extensive API to allow the writing of network applications

    ...The example application/daemon supplies: 

  -  A simple telnet program with a VT52 screen 
  -  A tftp daemon allowing file transfer to and from the z88 


    The  ZSock  project  was  started  back  in June 1998 with a
version   implementing  ICMP, UDP, TCP  and   a   simple  telnet
application  in  assembler.  However is soon became clear that a
hand  written  assembler  TCP stack is no fun, and so a decision
was  made  to  write  it  in C. But where's the compiler? And so
started  the  story of z88dk but we'll leave that for now. Zsock
has  been a long time in development (most of it spent sat on my
harddrive not doing much!) but since March 2000 it has been in a
usable  state,  exporting  an  API  for other applications. With
release  12  (Febuary  2001),  the  tftp daemon returns allowing
automated  file  transfer  to  and  from  the  z88 from across a
                  z88dk - The z88 Development Kit

   ...What is z88dk?
    z88dk   is   a   z80  C  cross  compiler  supplied  with  an
assembler/linker  and  a  set  of  libraries  implementing the C
standard  library  for a number of different z80 based machines.
The  name  z88dk  originates  from the time when the project was
founded and supported only the Cambridge z88 portable.

    The  compiler  featured  in  z88dk  is much enhanced Small C
compiler,  the  compiler  accepts many features of ANSI C and is
only  deficient  in  a  few  areas where implementation on a z80
processor  might prove inefficient. The compiler performs simple
optimizations, but the bulk of the optimization is done by a set
of  peep-hole  rules,  which will typically reduce the size of a
large project by up to a third.

    The  libraries  supplied  with  z88dk  are designed to be as
generic  as  possible,  indeed  it  is possible to port to a new
machine  simply  by  supplying  two  library  routines  and some
startup  code.  It  is  hoped that one day z88dk will support as
many  z80  based  machines as there is information available and
sufficient interest in.

    ...z88dk has the following features: 

    -  Small  C+  based  compiler with structs, floats and other
ANSI extensions;
    -  Module  assembler/linker  which  only  includes  required
library routines;
    -  Peephole  optimizer with rulesets that reduce the size of
generated code by ~30% and improve speed;
    - Easily retargetted C library including studio routines;
    - Retargettable VT100 terminal;
    - Support for  over  a  dozen  z80  machines  (see below for

    ...Supported Targets

  z88dk produces code that will run on the following machines:

         Cambridge  Computers  z88, Sinclair ZX Spectrum,
         Sinclair  ZX81,  CP/M  based  machines,  Amstrad
         NC100,    VZ200/300,   Sharp   MZ   series,   TI
         calculators  (TI82,  TI83,  TI83+,  TI85, TI86),
         ABC80  and  the  Jupiter  Ace.  Support is being
         developed for other z80 based machines including
         the Xircom Rex 6000. Preliminary support is also
         available   for   the   Sam   Coupe,   MSX1  and
         Spectravideo machines.

    z88dk  is  known  to  run on the following platforms: Amiga,
BeOS,  HP-UX  9,  Linux,  Solaris, Win32, Win16 and MSDOS. MSDOS
support may be dropped due to 7inherent limitations it presents.
OpenBSD  compiles  fail  but z88dk should work if compilation is
performed by hand.
   ...Who's responsible?

    Dom Morris started the project in August 1998 targetting the
z88,  and  adding  preliminary  Spectrum support, and functional
Amstrad  NC100  support.  Stefano Bodrato is responsible for the
other  ports.  Henk  Poley recently joined the z88dk team and is
refining and improving, with Stefano, the TI calculator support.

    So,  if  you have a problem with library support (except for
the  z88)  contact  either  Stefano  or  Henk, or a problem with
anything  else,  or  if  you  want  to retarget to a new machine
contact Dom .

                              * * *

    Итак,   создано   устройство   для   родственной   спектруму
архитектуры,  которое  поддерживает  протоколы  передачи данных,
применяемые  в internet'e: TCP/IP, SLIP и т.д. Все это позволяет
обращаться к хостам, т.е. серверам, и получать с них информацию,
равно  как и закачивать ее. Уже создан кросс компилятор, который
предназначен   для   создания   программ   для  поддержки  этого
инженерного  решения.  Сама эта программа, детальные технические
характеристики  доступны  в сети интернет через поисковые машины
по ключу 'zsock'.

Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Похожие статьи:
No carrier - как выбрать из огромного количества хаес модемов тот, который можно поставить на SPECCY.
Железо - небольшая доработка ZSC модема.
Письма - О схеме подключения хайес модема.

В этот день...   25 сентября