// pdcomm.cpp : Defines the entry point for the console application.
//

//#include "stdafx.h"
#include <stdio.h>
#include <tchar.h>

extern "C"
{
	#include "zmodem.h"
}

int _tmain(int argc, _TCHAR* argv[])
{
    static ZMODEM zmodem;
	char filename[80];
	
	printf("\nZmodem program...");
	
	// No arguments?
	if((argc == 1 || argc > 3))
	{
		printf("\nUsage: zmodem /r /s [filename]");
		exit(1);
	}
 
	// Get the filename
	if(argv[1][0] == '/')
	{
		switch(argv[1][1])
		{
		case 'r':	// Receive
		    zmodemDefaults(&zmodem);
		    zmodemInit(&zmodem);
			zmodemReceive(&zmodem);
			zmodemTerm(&zmodem);
			break;

		case 's':	// Send
			if(argc == 3) 
			{
				strcpy(filename, argv[2]);
			}
			else 
			{
				printf("\nError: send requires filename");
				exit(1);
			}
		    zmodemDefaults(&zmodem);
		    zmodemInit(&zmodem);
			zmodemSend(&zmodem, filename);
			zmodemTerm(&zmodem);
			break;
		default:
			printf("\nUnrecognized argument");
		}
	}
	else printf("\nUnrecognized argument");
    
    return (0);
}

