Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: GlasgowEmbedded/glasgow
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 6bac51089926
Choose a base ref
...
head repository: GlasgowEmbedded/glasgow
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: adc69bf20989
Choose a head ref

Commits on Aug 31, 2019

  1. Copy the full SHA
    2ab1831 View commit details
  2. Copy the full SHA
    21641a1 View commit details

Commits on Sep 20, 2019

  1. software: switch to setuptools_scm.

    emilazy authored and whitequark committed Sep 20, 2019
    Copy the full SHA
    902fa23 View commit details
  2. software: add setuptools dependency.

    emilazy authored and whitequark committed Sep 20, 2019
    Copy the full SHA
    b272bb2 View commit details
  3. cli: fix -V.

    emilazy authored and whitequark committed Sep 20, 2019
    Copy the full SHA
    d0e10e5 View commit details

Commits on Sep 22, 2019

  1. target.hardware: force use of abc9 and HeAP.

    This significantly improves QoS and reduces time spent in placement.
    whitequark committed Sep 22, 2019
    Copy the full SHA
    bec36fa View commit details

Commits on Sep 23, 2019

  1. Copy the full SHA
    4409cd6 View commit details
  2. Copy the full SHA
    05b8bbd View commit details
  3. software: bump libfx2 version.

    libfx2 0.7 has a bug where installing it from PyPI as a dependency
    would fail.
    
    This also updates the README to install most dependencies
    system-wide.
    whitequark committed Sep 23, 2019
    Copy the full SHA
    c35b5b0 View commit details
  4. Copy the full SHA
    06dad0d View commit details
  5. Travis: ignore deprecation warnings.

    These aren't useful on CI and they make the log unreadable.
    whitequark committed Sep 23, 2019
    Copy the full SHA
    6c11895 View commit details
  6. Copy the full SHA
    eb60009 View commit details
  7. Copy the full SHA
    ed517d6 View commit details
  8. cli: make output legible on black-on-white terminals too

    If you happen to use a black-on-white terminal, the regular output
    was white on white -> invisible. So do not enforce white, just
    keep the colors as they are by default. This should produce legible
    output on white-on-black and black-on-white.
    electroniceel authored and whitequark committed Sep 23, 2019
    Copy the full SHA
    b6c88af View commit details
  9. Copy the full SHA
    1b927c6 View commit details
  10. Copy the full SHA
    20356d3 View commit details
  11. Copy the full SHA
    e43966a View commit details
  12. Copy the full SHA
    26e4314 View commit details
  13. applet.video.ws2812_output: fix argument parsing.

    And fix tests too.
    whitequark committed Sep 23, 2019
    Copy the full SHA
    469bbee View commit details
  14. applet.program.ice40_sram: remove useless condition.

    The reset pin is not optional anymore.
    whitequark committed Sep 23, 2019
    Copy the full SHA
    4302a71 View commit details
  15. Copy the full SHA
    1eed212 View commit details
  16. Copy the full SHA
    adc69bf View commit details
11 changes: 10 additions & 1 deletion .travis.yml
Original file line number Diff line number Diff line change
@@ -7,10 +7,19 @@ python:
addons:
apt:
update: true
cache:
directories:
- "$HOME/.ccache"
- "$HOME/.local"
before_install:
- export PATH="/usr/lib/ccache:$HOME/.local/bin:$PATH"
- sudo apt install sdcc
install:
- "(cd vendor/libfx2/software && SDAR='sdcclib r' python setup.py install)"
- git clone https://github.com/YosysHQ/yosys
- (cd yosys && if ! yosys -V || [ $(git rev-parse HEAD $(yosys -V | awk 'match($0,/sha1 ([0-9a-f]+)/,m) { print m[1] }') | uniq | wc -l) != 1 ]; then make CONFIG=gcc ENABLE_ABC=1 PREFIX=$HOME/.local install; fi)
- git clone https://github.com/YosysHQ/nextpnr
- (cd nextpnr && if ! nextpnr-ice40 --version || [ $(git rev-parse HEAD $(nextpnr-ice40 --version | awk 'match($0,/sha1 ([0-9a-f]+)/,m) { print m[1] }') | uniq | wc -l) != 1 ]; then sudo apt install libeigen3-dev python3-dev libboost-all-dev && (git clone https://github.com/cliffordwolf/icestorm && cd icestorm && make ICEPROG=0 PREFIX=$HOME/.local install) && mkdir build-ice40 && cd build-ice40 && cmake .. -DCMAKE_INSTALL_PREFIX=$HOME/.local -DBUILD_GUI=OFF -DARCH=ice40 && make install; fi)
script:
- "(cd software && python setup.py install)"
- "(cd software && python setup.py test)"
- "(cd software && python -W ignore::DeprecationWarning setup.py test)"
8 changes: 6 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -76,14 +76,18 @@ Debugging new applets can be hard, especially if bidirectional buses are involve

### ... with Linux?

You will need Python 3.7 (or a newer version, in which case replace `3.7` with that version below) and sdcc. On a Debian or Ubuntu system these can be installed with:
You will need git, build tools, sdcc, Python 3.7 (or a newer version, in which case replace `3.7` with that version below). On a Debian or Ubuntu system these can be installed with:

apt-get install python3.7 sdcc
apt-get install --no-install-recommends git build-essential sdcc \
python3.7 python3-setuptools python3-libusb1 python3-aiohttp python3-bitarray python3-crcmod

You will also need Yosys and nextpnr-ice40, both from the master branch. Follow the setup instructions for [Yosys](https://github.com/yosysHQ/yosys/#setup) and [nextpnr](https://github.com/YosysHQ/nextpnr/#nextpnr-ice40).

Obtain the source code:

git clone https://github.com/GlasgowEmbedded/Glasgow
cd Glasgow
git submodule update --init vendor/libfx2

Configure your system to allow unprivileged access (for anyone in the `plugdev` group) to the Glasgow hardware:

1 change: 0 additions & 1 deletion software/.gitattributes

This file was deleted.

8 changes: 5 additions & 3 deletions software/glasgow/__init__.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
from ._version import get_versions
__version__ = get_versions()['version']
del get_versions
import pkg_resources
try:
__version__ = pkg_resources.get_distribution(__name__).version
except pkg_resources.DistributionNotFound:
__version__ = 'unknown'

import logging

Loading