Xinu7/src/cmd/download/OLD/eload/h/dlpack.h
/* dlpack.h */
/* Declarations and Constants for downloader protocol */
/* Protocol: downloader delivers packets over the Ethernet and */
/* expects ACKs back over the serial line. Normal packet contains */
/* a real memory address, 0 <= address <= 48K, length, and data to */
/* be placed at that address. Special command packet contains the */
/* address value DLCMD, and the data area contains register values */
/* delay, and autostart code. All packets are ACKed. */
#define DLMAXD 1024 /* max data in packet */
#define DLCMD -1 /* commands have this address */
#define DLPS 8 /* index of PS in reg table */
#define DLDELAY 9 /* index of delay in reg table */
#define DLSTART 10 /* index of start addr in table */
struct dlpack { /* format of download packet */
short dl_addr; /* destination memory address */
short dl_len; /* length of data area only */
union { /* either data area or register */
char dl_data[DLMAXD];/* data to store in memory */
short dl_regs[11]; /* r0-r7, PS, delay, start addr */
} dl;
short dl_cksum; /* checksum (now unused) */
};