on ethernetPacket *
{
if ((this.udp.IsAvailable()) && (this.udp.byteLength >= 16))
{
word val;
val = this.udp.Word(15);
}
}
on key '1'
{
int i;
ethernetPacket pkt;
// initialize packet with IPv4 and UDP protocols
pkt.udp.Init();
// set IPv4 addresses
pkt.ipv4.source.ParseAddress("192.168.1.1");
pkt.ipv4.destination.ParseAddress("192.168.1.255");
// set UDP ports
pkt.udp.source = 40001;
pkt.udp.destination = 40002;
// set UDP payload
pkt.udp.ResizeData(10);
for(i = 0; i < 10; i++)
{
pkt.udp.Byte(i) = i;
}
// calculate UDP and IPv4 checksum and send Ethernet packet
pkt.CompletePacket();
output(pkt);
}