where everything is under control |
ZiLOG Application Note |
---|
How to make eZ80 Webservers configurable online, update its website contents and the firmware |
Date: 02.07.2002 - 16.09.2002
The Command Protocol structure.
The v.1.6. release is called "New Generation". This release
is major rewrite of the UDP control thread. The goal is to make the command
processing in universal way. The control thread contains the UDP receive
loop as before and as before it makes call to udp_parse_cmd function.
The udp_wait flag is added after the call to syncronize with binary downloads
(TCP data threads). The change is made in the udp_parse_cmd
function.
Now it contains a general loop that compares the contents of the datagramm
received with the members of the ezconfig structure of the type
struct CommandProtocol. This structure contains three fields:
the command name, the function to execute on the command receive and
the help string for the command line user interface convenience.
The number of commands in the structure is given by the
const int num_commands;
variable.
The Application Header. At the 8 byte offset after the program
start there is an area where application header resides. Every application
that wants to be compatible with the eZ80 Remote Access should declare
this header. The header structure is as follows.
eZRA - the identifier, 4 bytes
application size - the size of code in ROM, 4 bytes
application name - the name of the application, arbitrary size
Features:
Project Structure:
The project consists of configuration files, source files, libraries and
header files. The header files of the Remote Access Server are in include
directory. The project file is in the netboot/realtek directory which
peflects the version compiled for the eZ80 Realtek board. The source
directory contains all necessary source files to configure the project and
adjust it for specific user needs.
The ipworks directory provides the version 1.3.2 of IPWorks. The set of includes, libraries and stubs eliminates the necessity to install that over again.
Memory Map:
SPACE ALLOCATION: ================= Space Base Top Span -------------------------------- -------- -------- -------- ROM 00008000 0002A4BB 0224BBh RAM 00400000 004453ED 0453EDh SEGMENTS WITHIN SPACE: ====================== ROM Type Base Top Span -------------------------------- ------------ -------- -------- -------- .startup relocatable 00008000 000081B3 1B4h .const relocatable 000081B4 00009600 144Dh .akov relocatable 00009601 000096C1 C1h .text relocatable 000096C2 00009CBD 5FCh .ra relocatable 00009CBE 00009E55 198h .flash relocatable 00009E56 0000ADDF F8Ah $Copy1..ndata * copy of * 0000ADE0 0000BB1C D3Dh .intram absolute 0000DC00 0000FFFF 2400h .ntext relocatable 00010000 0002A4BB 1A4BCh .mydata relocatable 00400000 00400002 3h .ndata relocatable 00400003 00400D3F D3Dh .nbss relocatable 00400D40 004453ED 446AEh