Project IceStorm - Lattice iCE40 FPGAs Bitstream Documentation (Reverse Engineered)
Go to file
Cliff L. Biffle e787fa2d30 icetime: never silently truncate asc file lines
icetime was reading the asc configuration file using a 128-byte line
buffer -- which is usually fine, but can cause it to truncate the names
of nets given in .sym lines if those names are very, very long.  The way
fgets was being used meant this went undetected.

Long net names like this can arise in deeply hierarchical designs,
particularly if there's a code generator involved.

This change:
1. Increases the buffer size to 64kiB.
2. Adds a truncation check that causes icetime to fail.

A more robust solution would manage the line buffer on the heap, since
the symbol gets copied into a std::string anyway, but this is a
workaround for now.
2017-05-09 08:06:43 -07:00
docs Fix 32c3 video link in docs 2017-03-19 14:04:29 +01:00
examples Add missing .rpt file to iceblink example "make clean" 2017-04-23 16:00:41 +02:00
icebox icefuzz data and test scripts for LP384-CM49 2017-03-10 02:09:46 +01:00
icebram Clean up Makefiles 2017-02-12 16:13:03 +03:00
icecompr Merge branch 'makefiles' of https://github.com/lineprinter/icestorm into lineprinter-makefiles 2017-02-13 14:39:44 +01:00
icefuzz Disable propagation of LP384 ieren bits into iceboxdb.py 2017-03-11 11:16:23 +01:00
icemulti Add icemulti -a<n>, -A<n> 2017-02-16 17:07:14 +01:00
icepack Fix trailing whitespace in icepack.cc 2017-03-07 08:08:10 +01:00
icepll Remove trailing comma in icepll module output. 2017-03-13 23:01:56 -04:00
iceprog Reduced the timer latency to 1 (minimum allowed) some users are reporting better results 2017-05-03 12:57:22 -03:00
icetime icetime: never silently truncate asc file lines 2017-05-09 08:06:43 -07:00
.gitignore Added/improved support for mxe-based win32 cross builds 2016-02-14 13:47:27 +01:00
CodeOfConduct Added CodeOfConduct 2016-02-01 18:54:09 +01:00
Makefile Clean up Makefiles 2017-02-12 16:13:03 +03:00
README Added license to README 2015-08-19 09:10:50 +02:00
config.mk Clean up Makefiles 2017-02-12 16:13:03 +03:00

README

Project IceStorm aims at documenting the bitstream format of Lattice iCE40
FPGAs and providing simple tools for analyzing and creating bitstream files.

See http://www.clifford.at/icestorm/ for more information.

Most of Project IceStorm is licensed under the ISC license:

#  Permission to use, copy, modify, and/or distribute this software for any
#  purpose with or without fee is hereby granted, provided that the above
#  copyright notice and this permission notice appear in all copies.
#
#  THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
#  WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
#  MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
#  ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
#  WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
#  ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
#  OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.