OpenCores
URL https://opencores.org/ocsvn/plasma/plasma/trunk

Subversion Repositories plasma

Compare Revisions

  • This comparison shows the changes necessary to convert path
    /plasma/trunk
    from Rev 385 to Rev 386
    Reverse comparison

Rev 385 → Rev 386

/tools/etermip.c
16,7 → 16,12
#include <conio.h>
 
//#define SIMULATE_PLASMA
//#define USE_WPCAP
#ifdef SIMULATE_PLASMA
#define USE_WPCAP
#endif
 
#ifdef USE_WPCAP
#if 0
#include "pcap.h"
#else
56,6 → 61,8
static const unsigned char ethernetAddressPhantom2[] = {0x00, 0x10, 0xdd, 0xce, 0x15, 0xd5};
 
static pcap_t *adhandle;
#endif //USE_WPCAP
 
static HANDLE serial_handle;
static int PacketBytes, PacketLength, PacketChecksum, Checksum;
static int ChecksumOk, ChecksumError;
73,6 → 80,7
#endif
 
 
#ifdef USE_WPCAP
int WinPcapInit(void)
{
pcap_if_t *alldevs;
164,7 → 172,8
{
if(EthernetActive == 0)
WinPcapInit();
EthernetActive = 1;
EthernetActive = 1;
//if((rand() % 8) == 0) return;
pcap_sendpacket(adhandle, packet, length);
}
 
216,55 → 225,7
#endif
}
 
/**************************************************************/
 
long SerialOpen(char *name, long baud)
{
DCB dcb;
COMMTIMEOUTS comm_timeouts;
BOOL rc;
serial_handle = CreateFile(name, GENERIC_READ|GENERIC_WRITE,
0, NULL, OPEN_EXISTING, 0, NULL);
if(serial_handle == INVALID_HANDLE_VALUE)
printf("Serial Port In Use!\n");
rc = SetupComm(serial_handle, 16000, 16000);
if(rc == FALSE)
printf("Serial port already in use!!!\n");
rc = GetCommState(serial_handle, &dcb);
if(rc == FALSE)
printf("ERROR2\n");
dcb.BaudRate = baud;
dcb.fBinary = 1;
dcb.ByteSize = 8;
dcb.fAbortOnError = 0;
dcb.StopBits = 0; //ONESTOPBIT;
dcb.fOutX = 0;
dcb.fInX = 0;
dcb.fNull = 0;
dcb.Parity = 0;
dcb.fOutxCtsFlow = 0;
dcb.fOutxDsrFlow = 0;
dcb.fOutX = 0;
dcb.fInX = 0;
dcb.fRtsControl = 0;
rc = SetCommState(serial_handle, &dcb);
if(rc == FALSE)
printf("ERROR3\n");
rc = GetCommTimeouts(serial_handle, &comm_timeouts);
if(rc == FALSE)
printf("ERROR4\n");
comm_timeouts.ReadIntervalTimeout = MAXDWORD; //non-blocking read
comm_timeouts.ReadTotalTimeoutMultiplier = 0;
comm_timeouts.ReadTotalTimeoutConstant = 0;
comm_timeouts.WriteTotalTimeoutMultiplier = 0; //blocking write
comm_timeouts.WriteTotalTimeoutConstant = 0;
rc = SetCommTimeouts(serial_handle, &comm_timeouts);
if(rc == FALSE)
printf("ERROR5\n");
return(0);
}
 
 
static void UartPacketRead(int value)
{
if(PacketBytes == 0 && value == 0xff)
314,8 → 275,58
}
}
}
#endif //USE_WPCAP
 
/**************************************************************/
 
long SerialOpen(char *name, long baud)
{
DCB dcb;
COMMTIMEOUTS comm_timeouts;
BOOL rc;
serial_handle = CreateFile(name, GENERIC_READ|GENERIC_WRITE,
0, NULL, OPEN_EXISTING, 0, NULL);
if(serial_handle == INVALID_HANDLE_VALUE)
printf("Serial Port In Use!\n");
rc = SetupComm(serial_handle, 16000, 16000);
if(rc == FALSE)
printf("Serial port already in use!!!\n");
rc = GetCommState(serial_handle, &dcb);
if(rc == FALSE)
printf("ERROR2\n");
dcb.BaudRate = baud;
dcb.fBinary = 1;
dcb.fParity = 0;
dcb.ByteSize = 8;
dcb.StopBits = 0; //ONESTOPBIT;
dcb.fOutX = 0;
dcb.fInX = 0;
dcb.fNull = 0;
dcb.Parity = 0;
dcb.fOutxCtsFlow = 0;
dcb.fOutxDsrFlow = 0;
dcb.fOutX = 0;
dcb.fInX = 0;
dcb.fRtsControl = 0;
dcb.fDsrSensitivity = 0;
rc = SetCommState(serial_handle, &dcb);
if(rc == FALSE)
printf("ERROR3\n");
rc = GetCommTimeouts(serial_handle, &comm_timeouts);
if(rc == FALSE)
printf("ERROR4\n");
comm_timeouts.ReadIntervalTimeout = MAXDWORD; //non-blocking read
comm_timeouts.ReadTotalTimeoutMultiplier = 0;
comm_timeouts.ReadTotalTimeoutConstant = 0;
comm_timeouts.WriteTotalTimeoutMultiplier = 0; //blocking write
comm_timeouts.WriteTotalTimeoutConstant = 0;
rc = SetCommTimeouts(serial_handle, &comm_timeouts);
if(rc == FALSE)
printf("ERROR5\n");
return(0);
}
 
 
long SerialRead(unsigned char *data, unsigned long length)
{
DWORD count, bytes;
327,9 → 338,11
ReadFile(serial_handle, buf, 1, &bytes, NULL);
if(bytes == 0)
break;
#ifdef USE_WPCAP
if(buf[0] == 0xff || PacketBytes)
UartPacketRead(buf[0]);
else
#endif
data[count++] = buf[0];
if(count >= length)
break;
337,7 → 350,6
return count;
}
 
 
//****************************************************
 
#define BUF_SIZE 1024*1024
409,6 → 421,7
printf("%s", buf);
}
 
#ifdef USE_WPCAP
// Read Ethernet
while(EthernetActive)
{
420,6 → 433,7
if(EthernetActive)
packet_handler(NULL, &header, pkt_data);
}
#endif
Sleep(10);
ticks = GetTickCount();
if(ticks - ticksLast > 1000)
/tools/makefile
73,9 → 73,15
# traffic over UART. Get wpcap.lib from http://www.winpcap.org/.
# Requires Windows OS
# For Linux, use any serial port program at 57600 baud 8-bits;1-stop bit
# This version does not support Ethernet packet transfers
etermip: etermip.c
-@$(CC_X86) -o etermip.exe etermip.c wpcap.lib
 
# Uses wpcap.lib for receiving and transmitting raw Ethernet packets
# Get wpcap.lib from http://www.winpcap.org/.
etermip2: etermip.c
@echo Get wpcap.lib from http://www.winpcap.org/
-@$(CC_X86) -DUSE_WPCAP -o etermip.exe etermip.c wpcap.lib
 
nomult.exe: nomult.c
-@$(CC_X86) -o nomult.exe nomult.c
142,7 → 148,7
$(AS_MIPS) -o boot.o boot.asm
$(GCC_MIPS) count.c
$(GCC_MIPS) no_os.c
$(LD_MIPS) -Ttext 0x1000 -eentry -Map test.map -s -N -o test.axf \
$(LD_MIPS) -Ttext 0x2000 -eentry -Map test.map -s -N -o test.axf \
boot.o count.o no_os.o
-$(DUMP_MIPS) --disassemble test.axf > test.lst
$(CONVERT_BIN)
205,7 → 211,7
memtest:
$(AS_MIPS) -o boot.o boot.asm
$(GCC_MIPS) memtest.c
$(LD_MIPS) -Ttext 0x1000 -eentry -o test.axf boot.o memtest.o
$(LD_MIPS) -Ttext 0x2000 -eentry -o test.axf boot.o memtest.o
$(CONVERT_BIN)
memtest2:

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.