    avrp - Ateml AVR programming software to use with Atmel's
           serial-port programmers.
    Copyright (C) 1997-1998 Jon Anders Haugum

    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation; either version 2 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program; see the file COPYING.  If not, write to
    the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
    Boston, MA 02111-1307, USA.


    Author of avrp can be reached at:
       email: jonah@colargol.tihlde.hist.no
       www: http://www.colargol.tihlde.hist.no/~jonah/el/avrp.html
       Postal address: Jon Anders Haugum
                       Øvre Møllenbergsgt 52
                       7014 Trondheim

----------------------------------------------------------------------

1. Introduction

avrp works on serial-port programmers which use Atmel's communication standard
for serial-port programmers.  These programmers can program AVR (and other)
chips both in serial and parallel mode.

These programmers are known:
   AVR ICP - Atmel In-circuit programmer
   AVR PPR - Atmel parallel programmer
   AVR DEV - Atmel development board
   AVR A.G - Parallel mode programmer by Adrian Godwin

Adrian Godwin's programmer can be found on http://www.fangorn.demon.co.uk

Instruction on how to build Atmel's in-circuit programmer can be found on
Atmel's homepage (http://www.atmel.com). Look for application note avr910

avrp is currently supporting these systems:
   Linux
   FreeBSD
   AmigaOS
   win32 (windows 95++ and NT)

The source-code part of Atmel's application note AVR910 was used to determine
how to communicate with these programmers.

----------------------------------------------------------------------

2. Installation

To install avrp you should copy the avrp-executeable to a apropriate location.

avrp.def should be put in the system-dependent config dir.  Although it's
location can be overrided with the -d option or by setting the environment
variable ARVP_DEFFILE to where avrp.def can be found.

To compile you should rename the apropritate makefile, and do a make (use smake
for Amiga SAS/C, and nmake for Mickeysoft visual c++).


2.1 Linux and FreeBSD

First you should compile the source by typing make.

avrp should be copied to /usr/local/bin/ or other apropriate directory.

avrp.def should be copied to /usr/local/etc/

Doing a 'make install' will do the same thing.

You should also consider to set the environment variable AVRP_SERIALPORT to the
serial port you are using.
Example (bash):  export AVRP_SERIALPORT=/dev/ttyS1


2.2 AmigaOS

avrp should be copied to c: or other apropriate directory.

avrp.def should be located in env:  (Or put it in envarc:  to make it permament
in the system.)

If you are using the source-distribution a 'make install' will do the same.

You should also consider to set the environment variable AVRP_SERIALPORT to the
serial device and unit you are using.
Example:  setenv AVRP_SERIALPORT serial.device:0


2.3 win32 (Windows 95 (++) and Windows NT)

avrp.exe should be copied to an apropriate location.  A 'nmake install' will
copy it and avrp.def to c:\bin\

avrp.def should be located in c:\bin\ but it can be overided if desireable.

You should also consider to set the environment variable AVRP_SERIALPORT to the
serial port you are using.  This can be done with set in windows95 and in NT you
must do it in system in your control panel.
Example win95:  set AVRP_SERIALPORT=COM2

----------------------------------------------------------------------

4. Adding support for other systems

avrp is written mostly in ANSI-C, so it should be possible to port it
to other 32-bit systems.

Checklist to do a port:
 -Make a system dependent io_xxxxx.c file
 -Edit avrp.h to support your system
 -Make a system-dependent Makefile
 -Send your modification to the author, so they can be included in the next
  release.
