------------------------------------------------
PonyProg - Serial Device Programmer  v1.12h Beta

PonyProg comes with a user friendly GUI framework available for Windows95, 98 & NT
and Intel Linux. Its purpose is reading and writing every serial device.
At the moment it supports I²C Bus, Microwire, and SPI eeprom and the flash
ATMEL AVR AT90SXXXX microcontrollers, and PIC micro.
PonyProg needs a very cheap and simple hardware. But if you don't want to make it
yourself, you can email me and ask for a pcb ready to use.
You can send well documented bug reports to
lanconel@cs.unibo.it with the subject "PROG BUG REPORT". 

--------
Features
- Support 2402, 2404, 2408, 2416 I²C Bus EEPROM.
- Support 2432, 2464, 2465, 24128, 24256, 24512 I²C Bus EEPROM.
- Auto detect 24XX EEPROM capacity 
- Support Siemens SDE2526, SDA2546, SDA2586, SDA3546, SDA3586   EEPROM (as 24XX Auto).
- Support Siemens SDE2506
- Detect the bank roll over capability of some old 24XX EEPROM.
- Support AT90S1200, AT90S2313, AT90S4414, AT90S8515 Flash microcontrollers
- Support AVR mega microcontroller
- Auto detect AVR microcontroller type
- Write lock bits to protect the AVR microcontroller from reading
- Write both the Flash and EEPROM memory of the AVR micro in one shot
- Support 93C06, 93C46, 93C56, 93C66, 93C76, 93C86 Microwire EEPROM (C and LC series,
  the CS serie is not supported yet).
- Support 93C13 (as a 93C06) and 93C14 (as a 93C46) Microwire EEPROM
- Support PIC 16C84/16F84 microcontroller
- Support 25010, 25020, 25040 SPI EEPROM
  other (bigger) SPI EEPROM will be added soon.
- Read Intel hex format file as well as raw binary file.
- Features a custom E²P format file to store the EEPROM characteristics, an editable
  comment and memory content all together with CRC. 
- Enhanced buffer edit, text and hexadecimal.
- Work with Windows95, Windows98, WindowsNT and Linux.

PonyProg is still under development, I'll add AT89SXX support soon. If you are an
OS/2 programmer interested in the porting of PonyProg to OS/2 send me a mail.
It should be relatively easy because the V library now work with OS/2.

=======
History
=======

v 1.12h
-------
Added the SDE2506 eeprom.

v 1.12g
-------
PonyProg can use the API or direct I/O (selectable through the
interface dialog). direct I/O is faster than API, but don't
work with Windows NT.

v 1.12e
-------
Added the abort button and the progress bar during the read/write operations.
Corrected a bug that slowing the read of 2432-512 eeproms.

v 1.12c
-------
Now if a serial port is not available the COM radio button is not
activated, and if you try to read/write report an error.

v 1.12b
-------
Added some shortcuts.
Corrected a bug when loading of a file from the command line
argument (or drag a file on the PonyProg icon). Now it ask to
save a modified buffer also when you load a new file.

v 1.12a
-------
Added the lock and reload icons in the toolbar.
Added the two last opened file in the file menu.
Now record the device type in the .INI file.

v 1.11b
-------
Now it ask if you want to save when exit the program with a modified
buffer. Improved the AVR programming speed.

v 1.11a
-------
COM access through the API's. No more use direct port I/O.
Open the serial port before any op and close it at the end, so
the mouse don't freeze anymore with some PC. Added the multibyte
edit facilities. Changed the PIC read/write algorithms.
Added text colors.

v 1.10f
-------
Added the text edit buffer (by clicking in the ASCII rapresentation)
Added the * in the status bar for a modified buffer.

v 1.10d
-------
Added some SPI eeproms.
Corrected a bug in the edit buffer introduced in v1.10c.

v 1.10c
-------
Now the 24C65 Write security and Write high endurance block are
fully usable. Added the dialog box to enter these value.

v 1.10b
-------
Added the PIC16F84/PIC16C84. Corrected the Microwire reading
algorithm to extend the compatibility to all the 93Cx6 eeproms.

v 1.09j
-------
Added tooltip-text. Added programming lock bits in the AVR. Autodetect
AVR type. Some bug fixes.

v 1.09b
-------
Added support for microwire eeproms, and support for security bits in
the 24C65 model.

v 1.08b
-------
Corrected a "swap byte into word bug" for Atmel AVR. The intel hex
format is little endian, so PonyProg have to be too.


-----------------------------------
Copyright, Licensing and Donations

PonyProg is copyright by Claudio Lanconelli. PonyProg is free
software, you can freely copy and redistribute it if no fee is
charged for use, copying or distribution. Is not required any
payment to the author; however the author would welcome any
donations.

PONYPROG IS PROVIDED TO YOU "AS IS," WITHOUT
WARRANTY. THERE IS NO WARRANTY FOR THE
PROGRAM, EITHER EXPRESSED OR IMPLIED,
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE AND NONINFRINGEMENT OF
THIRD PARTY RIGHTS. THE ENTIRE RISK AS TO THE
QUALITY AND PERFORMANCE OF THE PROGRAM IS
WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE,
YOU ASSUME THE COST OF ALL NECESSARY
SERVICING, REPAIR OR CORRECTION.

IN NO EVENT THE AUTHOR WILL BE LIABLE TO YOU FOR
DAMAGES, INCLUDING ANY GENERAL, SPECIAL,
INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
OUT OF THE USE OR INABILITY TO USE THE PROGRAM
(INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR
DATA BEING RENDERED INACCURATE OR LOSSES
SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE
OF THE PROGRAM TO OPERATE WITH ANY OTHER
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY
HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
DAMAGES.

PonyProg is statically linked with the V library. The V library is
copyright by Bruce E.Wampler and it's distributed under a
different license, the GNU GPL. You can find the V library and
related license related license at http://www.objectcentral.com.

-----------------------------
Downloading and Installing

PonyProg for Windows95
Create a new directory named C:\PONYPROG, then copy the file just downloaded to C:\PONYPROG 
and unpack it (with WinZip or pkunzip), finally you can copy PonyProg (the link) on the 
desktop.

-------------------
Send donations to:

Claudio Lanconelli
via Minardi, 10
48022 Lugo (RA)
Italy

E-mail: lanconel@CS.UniBO.it

You can download last version of PonyProg from my home page:
http://www.cs.unibo.it/~lanconel
