Sei sulla pagina 1di 4

In teory it's possible to use my programmer with other free software in the web but i've decided to write

my own software for some reasons:


1. Free software are DOS based, with a very poor users interface; 2. Some programmers have problems reading particular eprom due to the

software timing; sometimes infact reading an eprom twice give different results; making the reading time higher often resolvs this problem; this is due to a bad eprom but sometimes it's important to save eprom data before eprom "goes off"; so I wrote my own KISSEPROM software trying to give it big flexibility on the I/O timing; 3. it was the right time to learn Visual Basic programming; Follows a short description of various Menu':

MENU FILE: 1) OPEN : let you open a file; at moment KissEprom can handle only "true" binary file (*.BIN), but it's possible to select also Intel HEX; in this case the *.HEX file will automatically be converted in *.BIN and saved in the same directory as filename.BIN (or BIN1,BIN2 if the file already exist); just open this new file with the OPEN Menu; You can have following case: - the file is of the same dimension of the eprom size > the file will be read and loaded in memory as is (standard case); - the file is smaller than eprom size > the file will be read as is and KissEprom will fill the end with zero (0); a message will inform you about that (this is not a problem); - the file is bigger than eprom size > KissEprom will read as byte as the eprom size; a message will inform you that the file will be cutted (it is possible you've not selected the right file or eprom type). 2) SAVE AS: let you save on disk the read data in "pure" binary .BIN format (but you can always save it as Intel .HEX file using UTILITY Menu'); note that some software uses to save a "data-Type indicator" at beginning of file and then the Data; this is not good when handling file with different software. 3) EXIT : Exit KissEprom and return to Windows

MENU ACTION: 1) READ EPROM: Let you read a selected eprom; 2) WRITE EPROM: Let you write on the selected eprom; if the "check eprom is empty (ALL FF) before writing" is enabled KissEprom will at first read the eprom verifyng all is FF and then will write eprom; if some data is different from "FF" a message will inform you the eprom is not empty; in this case KissEprom will not write anything to the eprom; after a byte is written in the eprom, it's read back and if the results does not match with the written byte a message of "Bad Eprom" will inform you about that; 3) FILL ALL WITH 00: fill the memory buffer with a 0 (zero);

MENU CONFIGURATION 1) SELECT EPROM: Let you select the eprom type(27xx - 27Cxx); 2) OPTION : Open a new windows where : - Select the LPT port (if a no-standard port is used, use Decimal value > NO HEX) - Enable or disable the "ALL FF VERIFY" before writing; - Select the I/O Delay time (Note that Visual Basic does not allow a direct control of the PC's chip timer so it's not possible to have a precise clock time; I've use the Windows API SLEEP function just for the programming pulse (a value of 1 will be enough); for other timing i've used a simple FOR cycle; that means I/O delay is machine depended: on my Pentium 166 a value of 50-100 is good, may be on a new 1 GHZ PIII will be necessary a longer time; The API SLEEP time for Programming Pulse should be machine independend. By the way the I/O Delay tuning is quite simple: read the same eprom more time and if you have different results increase the I/O delay time until KissEprom read the same; for the writing delay tuning wil be better use a frequency meter, but the defaul value will be good (1). 3) DIAGNOSTIC: nothing for now; the idea is to offer a graphical inteface to help tuning and building the programmer step by step.

MENU UTILITY NOTE: I've used free external software found on the web to handle some utilities. 1) FILE CONVERSION : call SWAP.EXE to convert a file; select what conversion you want (Binary File *.BIN >>>> INTEL IHX8 *.HEX or INTEL IHX8 *.HEX >>>> Binary File *.BIN) then select the file to convert; a new file with new extension will be created in the same directory. 2) HEX EDITOR : call the HEDIT.EXE Hex editor wich will work on the KissEprom opened file (so save your file before calling HEDIT.EXE) 3) CRC32 : call CRC32.EXE wich is a 32 bit CRC calculator; KISSEPROM uses a simple CheckSum but a 32 bit CRC is much better; usually you don't need it (except when you want absolutly be sure two file are identical).

MENU HELP : No on-line help available at moment (except those pages included in the zip file)

NOTE: there's no installation software for KissEprom; simply make a directory "C:\KISSEPROM" and copy there all the file in the .ZIP archive (from version 1.1 that's no more necessary, for e.g. I run kisseprom from a floppy); then copy the DLL in the system directory "C:\WINDOWS\SYSTEM" (or keep it in the same directory of KISSEPROM).

KissEprom needs only the external DLL in the zip archive; by the way I found in some PC there 're missing VBRUN6.DLL and MSCOMCTL.OCX (for example, when the error "Component 'MSCOMCTL.OCX' or one of its dependencies not correctly registered: a file is missing or invalid" occurs); in this case simply download the DLL or the component (easy to find on the web) and install it; I wrote KISSEPROM in two week, so it's not a "finished" work, but it does what it was born for and I think that's enough. I've tested KISSEPROM on 4 my PC with various LPT port setting and these are results; anyway remember to set your LPT Port (BIOS Setting) as SPP (or EPP). TEST MADE Pentium 166Mhz + WIN98 SPP=OK EPP=OK ECP=OK ECP+EPP=OK P150+WIN98 SPP=OK EPP=OK ECP=OK ECP+EPP=OK AMD K6-2@400Mhz + WIN ME (SPP) Normal=NO EPP=OK ECP=NO (all 04) ECP+EPP=NO (all 01) AMD K6-2@400Mhz + WIN98 SPP=OK EPP=OK ECP=NO (all 04 o FF) ECP+EPP=OK

Potrebbero piacerti anche