REKLAMA

PonyProg.7z

Program do przekonwertowania zapisu TXT do obsługi sterownika dzwonów

Jeśli chodzi o przeliczanie jest wszystko OK. Problem jest z zapisem pliku jego rozszerzenie nie jest dla mnie znajome. Już wyjaśniam o co chodzi. Tym programikiem co stworzyłeś chcę otrzymać wsad ( przykładowy podałem w załączniku "dzwony kościol"). Następnie przy pomocy programu Pony program wgrać go do pamięci a następnie pamięcią przerzucić do sterownika. A więc potrzebuje pliku który będzie zrozumiały dla tego programu zobacz jakie rozszerzenia on odcztuje. To co uzyskamy na Twoim kalkulatorze po przeliczeniach to samo mamy otrzymać po otwarciu tego zapisanego pliku w PONY PROGRAM oczywiście z ogonem który u Ciebie jest nie widoczny. Jeśli chodzi o wgrywanie wybiórcze to myślę żę nie da się tego zrobić, wgrywa się cały wsad programowy na raz. Załóżmy mamy wgrane 10 programów zajmuje to adres 000000 do 000090 ( popatrz w pony program ) a dalej są wartości "0" i na końcu ogon, jeśli teraz wgramy program od 000000 do 000040 dalej są zera więc wykasuje nam wcześniejsze wartości i zapisze zera. Tak mi się wydaje a jak jest tego do końca nie wiem.


Pobierz plik - link do postu
  • PonyProg.7z
    • unins000.dat
    • PONYPROG.EXE
    • unins000.exe
    • PONYPROG.INI
    • LOADDRIVER.EXE
    • PONYPROG.HTML
    • unins000.msg
    • bogomips.out
    • dzwony kosciol.hex
    • README.TXT


PonyProg.7z > PONYPROG.HTML

PonyProgr Documentation





PonyProg2000 documentation
by


http://www.LancOS.com


Last update 14 October 2000


Contents



1 Intalling


2 Menu
Commands



2.1 File




2.1.1 New




2.1.2 Open




2.1.3 Save




2.1.4 Save as




2.1.5 Print




2.1.6 Close




2.1.7 Exit



2.2 Edit




2.2.1 Edit note




2.2.2 Edit security
bits




2.2.3 Edit buffer
enabled



2.3 Device




2.3.1 Type




2.3.2 Read




2.3.3 Write




2.3.4 Verify




2.3.5 GetInfo




2.3.6 Reset



2.4 Utility




2.4.1 Double bank




2.4.2 & nbsp; Byte swap




2.4.3 Write security




2.4.4 & nbsp; Write high endurance




2.4.5 Clear buffer




2.4.6 Fill buffer



2.5 Options




2.5.1 Setup




2.5.2 Calibration


3 Hardware
interfaces



3.1 & nbsp; SI Prog




3.1.1 The main board




3.1.2 I²CBus eeprom adapter




3.1.3 Microwire eeprom adapter




3.1.4 SPI eeprom adapter




3.1.5 SDE2506 eeprom adapter




3.1.6 NVM eeprom adapter




3.1.7 AVR micro adapter




3.1.8 PIC micro adapter




3.1.9 Jumper setting summary




3.1.10 Serial cable




3.1.11 Electric schematic




3.1.12 Mounting plan




& nbsp;


Appendix



A





1 Installing

Installing PonyProg depend on the system you have.
With Windows95/98 or NT/2000 just run the Setup.exe and follow the instructions.

With Linux you need the V library v1.22 or newer correctly installed and the
GNU g++ compiler. If you want to use any parallel port interface you need also
a 2.2.x kernel and parport , parport_pc and ppuser kernel
modules.
Before to start install the V library, I assume you have the symbolic link from
your home directory to v library directory.
Login as root and follow these instructions:
Copy the file downloaded to a directory like /usr/local/src and decompress it
with & quot;tar xvfz ponyprog.tar.gz & quot;, then enter the directory ponyprog.
Make a link to the V configuration file, the Config.mk in the root directory
of the V library:
& quot;rm -f Config.mk; ln -s ~/v/Config.mk ./Config.mk & quot;
Then build the executable and install it with & quot;make linux; make installLinux & quot;
for a static linked executable or
& quot;make linuxelf; make installLinuxElf & quot; for a dinamic linked executable.
The executable will be installed in /usr/local/bin. You must run it in X-Window
environment. Before to run the executable insert the modules into the kernel
(insmod parport; insmod parport_pc; insmod ppuser).
The first time you run the program remember to select the interface and port
you use with the Setup . If the program report
a message like & quot;The interface don't respond & quot; when started, it means
that you not have configured the port properly, or the interface is not connected.
You need also to run Calibration in most
cases.



2 Menu commands

The following is an explanation of each menu command.



2.1 File

2.1.1 New

Open a new window, each window can display the content of a device or file.



2.1.2 Open

Open a file by name, and read its content in the current window. You can select the
file to open through a dialog. PonyProg recognize four different types of file format:
e2p, intel hex, motorola S-record and raw binary. If the selected file don't seem to be a
e2p, it tries to open the file as intel hex; if also this operation fails, then it opens
the file as binary. If the file has e2p format, you don't have to worry about the device
type currently setted, otherwise you first have to select
the correct device type, then load a file. If you want to load a file for the Atmel AVR,
be sure to load the content of the flash first, and then the content of the eeprom. To do
so you have to configure the AVR assembler to generate Intel hex format with extension
.hex for the flash and .eep for the eeprom. The content of the eeprom will be displayed
after the content of the flash memory in the current window.



2.1.3 Save

Save the content of current window to a file. If no name has been specified work like Save as .



2.1.4 Save as

Open a dialog box where you can specify the name of the file. In the bottom of the
dialog box you can select the file format for the file to save (indicated by the
extension). If you press OK the content of the current window will be saved in the file
specified. I suggest to save always in e2p format, doing so the device type and the notes
will be recorded in the file. The .bin format is raw binary format, it's suitable for
exporting the file to other programs.





2.1.5 Print

Open a dialog box where you can select the printer name and options. If you press OK
the content of the current buffer will be printed.



2.1.6 Close

Close the current window, if there is only one opened window it ask if you want to
exit; you can choose Yes or No. If the current buffer is modified it ask you if you want
to save the content in a file before to close the window.



2.1.7 Exit

Close all the opened window and exit the program. If exist a modified buffer it ask you
if you want to save the content in a file before to close the window.



2.2 Edit

2.2.1 Edit note

Open a dialog box where you can edit a Chip id and a note. These two fields are saved
within the window content if you use the e2p file format (see Open ). These two fields are free text editing, and are
useful for a description of the device programmed and the meaning of its content.




2.2.2 Security Bits
Open a dialog box where you can edit a device specific Fuse and Security bits.
This dialog is especially useful for microcontrollers, because they could not
work at all without set these bits in the correct way. The following screen
dumps show the fuse bits of some microcontroller family. Note that disabled
bits (grayed) are not used or not modificable.
AVR AT90S4433 Security and Fuse bits

PIC 16F84


CP: if checked all memory is code protected
PWRTE: if checked power-up timer is enabled
WDTE: if checked watchdog timer is disabled
FOSC1,FOSC0: oscillator selection bits


FOSC1
FOSC0
Status


not checked
not checked
RC resistor/capacitor oscillator


not checked
checked
HS high speed crystal/resonator oscillator


checked
not checked
XT crystal/resonator oscillator


checked
checked
LP low power oscillator





AT89S8252



2.2.3 Edit buffer enabled

You can toggle this item either to enable or disable the edit mode. If this mode is
enabled you can edit the buffer content by clicking on a location of the current window.
Two editing modes are available: hexadecimal editing and text editing. If you click on the
HEX (center) part of the screen or press ENTER you open a dialog where you can insert the
new value for that byte in decimal, hexadecimal, or character. If you click on the ASCII
(right) part of the screen you open a dialog where you can insert or modify a text
starting from that location. You can CUT & amp; PASTE in the text entry dialog by the use
of the right mouse button. Note that you can enable/disable the edit mode of the current
window only, so if there are more than one buffer window opened, the edit mode of other
window remains unchanged.





2.3 Device

2.3.1 Select

Select the type of current device. You have to select the device type before reading or
writing the device. Selecting an & quot;Auto XXX & quot; & nbsp; type means that the device
type is determined by the program during the read or write operation, this feature is
useful when you need to query a device to know if it works and which device it is. There
are some different device family: the I²C Bus eeproms that are addressed with 8 bit word,
the I²C Bus eeproms that are addressed with 16 bit word, the Microwire eeproms, the SPI
eeproms, the AVR microcontrollers and the PIC microcontrollers. You can select the device
family in the tool bar with the combo-box, or directly the device type in the menu. The
current device type is stored in the .INI file, so the next time you run the program it's
recalled. To read and write I²C Bus eeproms other than 24xx (i.e. the SDE2526, SDA2546,
SDA2586, SDA3546, SDA3586) select the type & quot;24XX Auto & quot;.
The 24C01 can be readed but not writed, you can read it as a 2402 or 24XX Auto device.
Note that you can replace a 24C01 eeprom with a new 24C02 eeprom, because it's fully
compatible to the 24C01.



2.3.2 Read

Read the content of a device in the current window. & nbsp; This operation can take a
while to execute, so a dialog box shows that the operation is still in progress. If you
want to stop the current read just press the & quot;Abort & quot; button. Finally a dialog
box showing the result of the operation appears.
If the program report the message & quot;The device not responding & quot; means that you
have missed to connect the device to read, or the interface is not configured properly
(see the Setup ). Note that only the devices that
support probing report this type of message, other device simply read all 0's of FF's (if
the device is missed). The devices that support probing are the 24XX serie and the
& quot;AT90SXX Auto & quot;. In the specific case of & nbsp; & quot;AT90SXX Auto & quot; device
type selected, the program can report the message & quot;The device is locked & quot; in case
of the locked bits was programmed. Even some preproduction devices don't support auto
probing. You can't read a locked device, to program it see Write .
Since version 1.15c if you select an AVR device (AT90S2313 for
example) and read it, the program try to probe the device first. If the device is missing,
or the device is locked, or the device is a preproduction device a dialog box appears. It
asks if you want to abort operation, retry or ignore the error. In case of a preproduction
device just select & quot;Ignore & quot;.



2.3.3 Write

Write the content of the current window to a device. A dialog box ask you to confirm
this unrecoverable operation. This operation can take a while to execute, so a dialog box
shows that the operation is still in progress. If you want to stop the current write just
press the & quot;Abort & quot; button. After the writing an automatic verify is executed.
Finally a dialog box showing the result of the operation appears.
Before to do a write I suggest to select the specific device type, not the & quot;24XX
Auto & quot; or & quot;AT90SXX Auto & quot;. Note that if you select a & quot;AT90SXX Auto & quot;
device and try to write a locked device you get the message: & quot;The device is
locked & quot;.
Note that both the flash and eeprom are writed (only if the device have both flash and
eeprom like the AVR), and then verified.
Since the version 1.15c a probe is performed on every AVR device (see Read ).



2.3.4 Verify

Verify the content of a device, compares it to the content of & nbsp; the current
window. & nbsp; This operation can take a while to execute, so a dialog box shows that the
operation is still in progress. If you want to stop the current verify just press the
& quot;Abort & quot; button. Finally a dialog box showing the result of the operation
appears.



2.3.5 GetInfo

Shows some informations about the device. Some of these informations are showed also in
the status bar at the bottom of the main window.


Size of the buffer, it's equal to the size of the device in bytes. In the case of AVR
devices, it's equal to the sum of the flash size plus the eeprom size.
CRC calculated on the content of the buffer.
Bank roll over. It's a characteristic of some old I²C Bus eeprom. You can't simply
replace a & quot;roll-over eeprom & quot; with a & quot;no roll-over eeprom & quot;.
Security and High endurance block. The 24C65, have a feature to protect some block from
writing, or enable some block to have 10 milions writing cycles. (see Write security to change it). & nbsp;





2.3.6 Reset

Reset the device. It's useful with in-system applications.



2.4 Utility

2.4.1 Double bank

This operation duplicates every bank in the current buffer and changes the
device type to a bigger device type. A bank is a cluster of 256 bytes for the
24xx and a word for other devices. This utility is useful to replace a SDA2546
device with a 24C08 or a SDA2586 with a 24C16. To do it you have to select the
device type & quot;24xx Auto & quot;, connect the SDA2546 device and perform a
Read operation. Then you have to perform
a & quot;Double bank & quot;, replace the SDA2546 with a blank 24C08 and perform
a Write operation.



2.4.2 Byte swap

This operation swap bytes within every word in the buffer. This command is useful to
convert from little endian representation to big endiand and viceversa. Some devices uses
16bit word so you can represent it in both ways depending on your needs.
For example consider the number 1234 hex (4660 decimal), the little endian is 34 - 12,
while the big endiand is 12 - 34.



2.4.3 Write security

This command is implemented only for some devices.
With the AVR you can lock the program and eeprom memory from further reading by using this
command. When the device is locked you can rewrite it, but not read it. Note that if you
try to read a locked device with the type & quot;AT90Sxx Auto & quot; setted you receive the
message & quot;The device is locked & quot;; you have to select the specific device before to
write to it.
With the 24C65 a dialog ask to insert the first block and the number of blocks to lock.
When the device is locked you can't do a & quot;write security & quot; or a & quot;write high
endurance & quot; anymore. To lock the device the number of blocks must be greater than 0.



2.4.4 Write high endurance

This command is implemented only for the 24C65 eeprom. A dialog ask you to insert the
high endurance block (support more write operations). When the device is locked this
command don't work.



2.4.5 Clear Buffer

Clear the current buffer with FF's.



2.4.6 Fill Buffer

Fill the current buffer with a character. Open a dialog where you can select the
addresses fo fill (from - to locations), and the value of the character to fill. You can
insert the value either in decimal (i.e. 45), hexadecimal (i.e. 0x45) or octal (i.e. 045)
base.



2.5 Options

2.5.1 Setup

Open a dialog box where you can select the interface type and the port number where the
hardware is connected. You can choose from several hardware interfaces (see PonyProg Hardware interfaces for more info). Note that
only SI Prog support all the devices.




SI-Prog interface select & quot;serial & quot; check-box and
choose & quot;SI-Prog API & quot; or & nbsp; & quot;SI-Prog I/O & quot; in the combo-box.
Windows 95, 98, 2000 and NT work either with & quot;PonyProg API & quot; and
& quot;PonyProg I/O & quot;, but the latter is faster. To use the & quot;SI-Prog
I/O & quot; with Linux you need to run PonyProg as root. Then select the COM
port you want to use, if some COM ports are disabled it means that they are
used by other programs (usually by the mouse driver or modem), or not present.
AVR ISP Parallel port interface select & quot;parallel & quot;
check-box and choose & quot;Avr ISP API & quot; or & quot;Avr ISP I/O & quot; in
the combo-box. WindowsNT/2000 work only with & quot;Avr ISP I/O & quot;. To use
the & quot;Avr ISP I/O & quot; with Linux you need to run PonyProg as root. Then
select the LPT port you want to use. Note that if you want to program the
AT89Sxx device you need to select the & quot;Invert Reset & quot; check-box.
To use this interface with Linux you need a 2.2.x kernel and parport, parport_pc
and ppuser kernel modules.
You can use this interface to read/write the AVR micros and SPI eeproms..
Ludipipo interface select & quot;serial & quot; check-box
and choose & quot;SI-Prog API & quot; or & quot;SI-Prog I/O & quot;. Then select
the COM port you use and select the & quot;Invert D-OUT & quot; check-box. You
can use this interface to read/write the PIC16x84.
Easy I²CBus interface select the & quot;parallel & quot; check-box,
then select the LPT port you want to use. With Linux you need to run PonyProg
as root because EasyI2CBus interface use the I/O driver.




2.5.2 Calibration

Calibration tunes the serial bus speed for your computer. When you run Calibration
be sure that PonyProg is the only program running in the PC, and the hard disk
is idle (look at the HD led). If your PC is busy because it's performing other
tasks the Calibration thinks your PC is slower than actual speed, and all I/Os
are performed without proper delay.
After the Calibration you can choose the speed for every serial bus modifying the
following parameters in the ponyprog.ini (.PonyProgrc under Linux) file:


I2CBusSpeed = NORMAL & nbsp; & nbsp; & nbsp; affect 24Cxx eeprom and
other I²CBus devices
SPIBusSpeed = NORMAL & nbsp; & nbsp; & nbsp; affect AVR micro, AT89Sxx
micro and 25xxx eeprom
MicroWireBusSpeed = NORMAL & nbsp; & nbsp; & nbsp; affect 93Cxx eeprom
PICBusSpeed = NORMAL & nbsp; & nbsp; & nbsp; affect PIC16x84 micro
SDEBusSpeed = NORMAL & nbsp; & nbsp; & nbsp; affect SDE2506 eeprom


Every parameter can be assigned the value SLOW , NORMAL , FAST
or TURBO.
Avoid to use the TURBO value because it means & quot;no delay & quot;, and
probably it doesn't work on your PC, especially with the I/O driver.
Just for example my PC (Pentium MMX 200MHz) run I²CBus at about 80Khz with NORMAL,
and 110 Khz with FAST. Note that a lot of I²CBus devices don't work
at speed above the 100KHz.


3 Hardware interfaces
PonyProg supports several hardware interfaces, however note that only with
SI-Prog interface you are able to program all the devices.
Next paragraphs show all the hardware interfaces in detail.


3.1 SI-Prog
3.1.1 The main board
Connect the DB9 connector to PC COM port using standard serial cable.
Connect J2 connector to the correct adapter observing polarity (look at pin
1 and pin 10).

3.1.2 I²CBus eeprom adapter
This adapter is needed to program all I²CBus devices: 24Cxx, PCF858x and some
SDE/SDA eeproms. Connect the adapter to main board observing polarity.

3.1.11 Electric schematic
Version 2.2 of PDF schematic

3.1.12 Mounting plan
Version 2.2 of PDF mounting plan

& nbsp;


PonyProg.7z > README.TXT

-------------------------------------------
PonyProg - Serial Device Programmer v1.17h

PonyProg comes with a user friendly GUI framework available for Windows95/98,
Windows2000, WindowsNT 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, AT89SXX 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
lancos@libero.it with the subject " PROG BUG REPORT " .

--------
Features
- Support 2402, 2404, 2408, 2416 I²C Bus EEPROM.
- Auto detect 24XX EEPROM capacity
- Support 2432, 2464, 2465, 24128, 24256, 24512 I²C Bus EEPROM.
- Support 24325, 24645 I²C Bus EEPROM.
- 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 AT90S2323, AT90S2343, AT90S2333, AT90S4433, AT90S4434, AT90S8535
and AT90S8534 mcrocontrollers
- Support AVR mega microcontroller
- Support AVR tiny microcontroller (not tested)
- 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 the AT89S8252 and AT89S53 micro
- 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 and PIC16F84A microcontroller
- Support 25010, 25020, 25040 SPI EEPROM
- Support 25080, 25160, 25320, 25640, 25642, 25128, 25256, 95640 Big SPI EEPROM
- Read Intel hex format file as well as raw binary file.
- Read Motorola S-record format 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, Windows2000, WindowsNT and Linux.
- Work with " ludipipo " and AVR ISP (STK200/300) hardware.
- Easily adaptable to any new hardware interface.


=======
TODO (PonyProg is still under development)
=======
- Add 8 bit organization microwire eeprom
- Add 24C01 support
- Add NVM3060 (IMBUS)
- Setup dialog to change parameters in INI file
- Write flash and eeprom separately in the AVR
- Add color to highlight differences after a verify
- Add remote control mode for Build/Makefile support
- Add PIC16F8XX and PIC12C50x support
- Add autoprogram command (like AVR ISP)
- Add multilanguage support
- Add SX Parallax micro
... any suggestions are welcome

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

v 1.17h
-------
Fixed the " Verify failed " message at the end of PIC16F84A
programming.

v 1.17g
-------
Fixed a problem in loading HEX files for PIC generated
by MPAsm.
Extension appended instead of replaced (Windows only).

v 1.17f
-------
Fixed another problem with the new driver for Win2K.
Fixed a load problem with Motorola S-record files.

v 1.17e
-------
Changed the driver for direct I/O, the old one work only
with WinNT, while the new one work on Win2000 too (tested
by Luis Frigon, thanks).
Added the " AVRISP I/O " interface, and renamed the old one to
" AVRISP API " . WinNT/2000 users have to select " AVRISP I/O "

v 1.17c
-------
Added ponyprog.sys driver for direct I/O on WinNT and Win2000.
Fixed some bugs in IntelHex and MotorolaSRec file loading.
Now generate a S2 format for ATmega. Lengthened the reset delay
for PIC.

v 1.17a
-------
Added the Erase command. At the moment work only for AVR
AT89S and PIC. Corrected the lock programming of AT89S.
Use the hardware timer for usec delay on fast machines.

v 1.16h
-------
Patch release. Corrected a bug in the AT89S53 routine.
Modified the default BigSPIPageWrite value to 16 to make
the 25080 and 25160 write succesfull.

v 1.16g
-------
Patch release. Corrected some severe bugs, reading PIC16F84,
writing AT89S8252 and verifing 24C32 and upper devices.

v 1.16b
-------
Modified BogoMIPS calibration routine (Windows).
Added full Security and Fuse bit support for AVR
and PIC. Some other minor improvement.

v 1.15c
-------
AVR: Timeout bug fixed, and added the probe
before any read/write, with retry capability.
Some Linux version bug fixes.

v 1.15i
-------
Added some error messages.
Some bug fixes.
Added all AVR devices.
Configurable programming delay for the AVR (only in the .INI
file).

v 1.15a
-------
Some bug fixes in the 25640 write routine and menu selection.
Automatic timing calibration. Unified the calibration for all
devices and buses, so modified the I2CBus routine. Bug fixed
in I2CBus Stop routine.
Some speed improvement (mainly " SI Prog I/O " interface).
Added the " Retry, Abort, Ignore " dialog when the AVR id is
wrong (Device missing, device locked or pre-production device).

v 1.14b
-------
Added the " ClearBuffer " and " FillBuffer " utility.
Added AVR reset retries.

v 1.13h
-------
Setup file for Windows.
Improvements of Big SPI routines. Now it should work fine with
the 25640, 25642 and 95640.
Some corrections and improvements provided by Uwe Bonnes.

v 1.13e
-------
Corrected the AT89Sxx timeout bug, and a bug in the Big SPI
eeprom routines.

v 1.13d
-------
Corrected a bug in the read/write I2CBus eeproms like 24C645 and
24C256 introduced in v1.13b.

v 1.13c
-------
Improved the ATmega programming routines.
Corrected a bug in the selection of the EasyI2C interface in
the setup dialog.

v 1.13b
-------
Added the Big SPI eeprom, the AT89Sxx micro and the 24XX5 eeprom.
Added the motorola S-Record format (only read, not write).
Corrected a bug in the AVRmega programming due to the poor documentation.

v 1.12r
-------
Added the capability to inverts at run-time all the line (thanks to Uwe Bonnes).
Now work with " ludipipo " hardware. Added the AVR ISP parallel interface.
The test in the configuration dialog now works. (But need a little
modification at the hardware: PIN 6 and 7 connected together, look at
the schematics for more info).

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 at http://www.objectcentral.com.

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

PonyProg for Windows95
Run setup.exe and follow the instructions.

If you are updating from an older release deinstall it before
to install the new release. Be sure to delete the ponyprog.ini
file.

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

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

E-mail: lancos@libero.it

Download last version of PonyProg from my home page:
http://www.LancOS.com

if you have problems to reach this site try

http://members.tripod.com/lancos