Coder Social home page Coder Social logo

qtl866's Introduction

qtl866 - GUI driver for minipro EPROM/Device programmer software See also https://github.com/vdudouyt/minipro Copyright (C) 2014 Al Williams [email protected]

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 3 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.  If not, see <http://www.gnu.org/licenses/>.

There are three parts to this:

  1. A shell script called miniprohex

The script is smart enough to determine the file type from the suffix (.hex or .srec) and uses srec_cat to convert back and forth.

miniprohex by Al Williams http://www.awce.com

Usage:

miniprohex [--o offset] [--unfill byte size] [--obs blksize] [--line-length length] [minipro_options] -r filename.ext

miniprohex [--o offset] [minirpo_options] -w filename.ext

This calls minipro after converting known file types to .bin for writing or converting bin files after reading.

--o: Offset for file conversion (see srec_cat)

--unfill: Unfil blocks of at least size of byte (see srec_cat)

--obs: Output block size (see srec_cat)

--line-length: Output line length max (see srec_cat)

Assumes minipro and srec_cat are on the path.

  1. A QT GUI for minipro

You need QTCreator to compile -- just open the .pro file and run it or compile from inside QTCreator.

By default, the GUI calls minipro (which it expects on the path). But the options dialog lets you set a path, or you can point to minipro.hex to get the features of miniprohex.

You can also add options there such as: miniprohex --obs 16

  1. A shell script that allows for editing binary files

Using the same technique, binhexedit is a script that converts hex or srec files to binary and calls a binary editor (by default bless) to edit the file and then converts it back on exit. This depends on srec_copy doing the conversion correctly in both directions, so you probably want to save a backup unless you are directly editing a .bin file.

Assumes bless and binhexedit are in your path. You need a -r to read a file with binhexedit as in:

binhexedit -r test.hex

You can set the name of the binary editor in the options dialog.

qtl866's People

Contributors

bradan avatar enkore avatar lkundrak avatar stevenhoneyman avatar wd5gnr avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

qtl866's Issues

does not work with arm

The GUI works very well on my x86-64 Linux box, but it never successfully calls minipro in Raspbian Linux on a Raspberry Pi. We just fall off the end of the parser and get the command list again.

The minipro software itself had the same problem with the command line, apparently due to the fact that chars are signed in x86-64 GCC and unsigned in ARM GCC. Adding the compiler flag -fsigned-char to the makefile fixed the problem there, but the same treatment did not fix qtl866. I am not savvy enough in QT to fix the problem there. I suspect the longer term solution is to figure out /why/ minipro requires signed chars and fix that. Will investigate on that end.
-JRS

Device not found due to parameter change

With minipro version 0.4, chips that admit package variation such as:

W25Q64FV(OTP)@SOIC16
W25Q64FV(OTP)@SOIC8
W25Q64FV(OTP)@WSON8

will not work (but W25Q64FV(OTP) does), with Device not found error (indicative of unknown -p parameter in minipro).
I suspect this is due to qtl866 using the old naming scheme (with spaces) and associating them with the text representation internally (typing the correct name without spaces will simply make qtl866 complain about unknown device, using the incorrect name will make minipro complain).

Cannot compile on Ubuntu 16.04

Hello!

Trying to build the executable with QtCreator on a Ubuntu amd64 produces the following messages:

mainwindow.cpp: In function 'QString getColoredText(QString, QString)':
mainwindow.cpp:37:63: error: 'QStringLiteral' was not declared in this scope
     return QStringLiteral("<span style='color: %1;'>%2</span>").arg(
                                                               ^
mainwindow.cpp:40:22: error: 'class QString' has no member named 'toHtmlEscaped'
                     .toHtmlEscaped()

Any idea how to fix that?

Device names not surrounded with quotes

Trying to manipulate a chip using the profile of "at29c256 @dip28" fails with "Unknown device". Poking around with the underlying minipro program, I see a troubling snag: If you don't surround the device name with quotes and the device name contains a space, minipro won't get the whole name. qtl866 is apparently not doing this.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.