\
-
diff --git a/doc/images/icestudio-logo.icns b/doc/images/icestudio-logo.icns
index 5b214437f..bd7223201 100644
Binary files a/doc/images/icestudio-logo.icns and b/doc/images/icestudio-logo.icns differ
diff --git a/doc/images/icestudio-logo.ico b/doc/images/icestudio-logo.ico
index f8dbf862d..bf1e5c43d 100644
Binary files a/doc/images/icestudio-logo.ico and b/doc/images/icestudio-logo.ico differ
diff --git a/doc/images/icestudio-logo.png b/doc/images/icestudio-logo.png
new file mode 100644
index 000000000..f281d96b5
Binary files /dev/null and b/doc/images/icestudio-logo.png differ
diff --git a/doc/images/icestudio-logo.svg b/doc/images/icestudio-logo.svg
index b82c896b1..23bf03726 100644
--- a/doc/images/icestudio-logo.svg
+++ b/doc/images/icestudio-logo.svg
@@ -9,72 +9,42 @@
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
- width="111.07935mm"
- height="111.07935mm"
- viewBox="0 0 393.58825 393.58825"
- id="svg8825"
+ width="103.81227mm"
+ height="103.80888mm"
+ viewBox="0 0 367.83883 367.82675"
+ id="svg4694"
version="1.1"
inkscape:version="0.91 r13725"
- sodipodi:docname="icestudio-logo.svg">
+ sodipodi:docname="icon.svg"
+ inkscape:export-filename="/home/jesus/code/icestudio/doc/icons/icon.png"
+ inkscape:export-xdpi="62.638184"
+ inkscape:export-ydpi="62.638184">
-
-
-
-
-
-
-
-
+ id="defs4696" />
+ id="metadata4699">
@@ -89,48 +59,72 @@
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1"
- transform="translate(-14.634449,-281.28232)">
+ transform="translate(-56.086737,-137.01309)">
-
+ id="g4255"
+ transform="translate(1.3533226e-5,-1.3846548e-5)">
-
-
-
-
+ id="g4144">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/doc/images/main-1.png b/doc/images/main-1.png
new file mode 100644
index 000000000..7ef965493
Binary files /dev/null and b/doc/images/main-1.png differ
diff --git a/doc/images/main.png b/doc/images/main.png
index 0ec99f3fa..3c3168239 100644
Binary files a/doc/images/main.png and b/doc/images/main.png differ
diff --git a/gruntfile.js b/gruntfile.js
index 762cb94da..9714a8bac 100644
--- a/gruntfile.js
+++ b/gruntfile.js
@@ -16,7 +16,7 @@ module.exports = function(grunt) {
platforms = ['linux32', 'linux64', 'win32', 'win64'];
options = { scope: ['devDependencies'] };
distCommands = ['compress:linux32', 'compress:linux64', 'appimage:linux32', 'appimage:linux64',
- 'compress:win32', 'compress:win64', 'wget:python', 'exec:nsis32', 'exec:nsis64'];
+ 'compress:win32', 'compress:win64', 'wget:python32', 'wget:python64', 'exec:nsis32', 'exec:nsis64'];
}
function all(dir) {
@@ -56,8 +56,8 @@ module.exports = function(grunt) {
exec: {
nw: 'nw app' + (WIN32 ? '' : ' 2>/dev/null'),
stopNW: (WIN32 ? 'taskkill /F /IM nw.exe >NUL 2>&1' : 'killall nw 2>/dev/null || killall nwjs 2>/dev/null') + ' || (exit 0)',
- nsis32: 'makensis -DARCH=win32 -DVERSION=<%=pkg.version%> -V3 scripts/windows_installer.nsi',
- nsis64: 'makensis -DARCH=win64 -DVERSION=<%=pkg.version%> -V3 scripts/windows_installer.nsi'
+ nsis32: 'makensis -DARCH=win32 -DPYTHON="python-2.7.13.msi" -DVERSION=<%=pkg.version%> -V3 scripts/windows_installer.nsi',
+ nsis64: 'makensis -DARCH=win64 -DPYTHON="python-2.7.13.amd64.msi" -DVERSION=<%=pkg.version%> -V3 scripts/windows_installer.nsi'
},
// Reads HTML for usemin blocks to enable smart builds that automatically
@@ -315,7 +315,14 @@ module.exports = function(grunt) {
// Wget: Python installer and Default collection
wget: {
- python: {
+ python32: {
+ options: {
+ overwrite: false
+ },
+ src: 'https://www.python.org/ftp/python/2.7.13/python-2.7.13.msi',
+ dest: 'cache/python/python-2.7.13.msi'
+ },
+ python64: {
options: {
overwrite: false
},
diff --git a/package.json b/package.json
index a1fc81b9a..8fc4c4990 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "icestudio",
- "version": "0.3.0-rc",
+ "version": "0.3.0",
"description": "Experimental graphic editor for open FPGAs",
"author": "Jesús Arroyo Torrens ",
"repository": "https://github.com/FPGAwars/icestudio",
@@ -12,10 +12,10 @@
"postinstall": "npmpd && cd app && npm install && bower install && cd ../tasks && npm install && cd .. && grunt getcollection"
},
"apio": {
- "min": "0.2.2",
- "max": "0.2.3"
+ "min": "0.2.4",
+ "max": "0.2.5"
},
- "collection": "0.3.0-rc1",
+ "collection": "0.3.0",
"devDependencies": {
"bower": "^1.8.0",
"grunt": "^1.0.1",
diff --git a/samples/counter.ice b/samples/counter.ice
index 11482a286..f93d21a5e 100644
--- a/samples/counter.ice
+++ b/samples/counter.ice
@@ -11,31 +11,6 @@
"board": "icezum",
"graph": {
"blocks": [
- {
- "id": "02460189-14a0-48d0-ad87-74faf9a1177e",
- "type": "basic.constant",
- "data": {
- "name": "N",
- "value": "20",
- "local": false
- },
- "position": {
- "x": 376,
- "y": 56
- }
- },
- {
- "id": "976c6f41-7ed1-41b5-953b-cd4a5709c701",
- "type": "3e6c249e205080168c1bf4ee8dbc33b50653d5f4",
- "position": {
- "x": 608,
- "y": 56
- },
- "size": {
- "width": 96,
- "height": 64
- }
- },
{
"id": "1a49c635-92d6-4641-bd3b-dbd7604a76bf",
"type": "basic.output",
@@ -74,46 +49,6 @@
"y": 136
}
},
- {
- "id": "e38831b6-fd92-4e35-9fea-17b439002721",
- "type": "basic.code",
- "data": {
- "code": "// Counter 4 bits\n// @include div.v\n\nwire trig; reg out;\n\nDIV #(N) div (\n .clk(clk),\n .out(trig)\n);\n\nalways @(posedge trig) begin\n if (rst == 1)\n out <= 0;\n else if (ena == 1)\n out <= out + 1;\nend\n",
- "params": [
- {
- "name": "N"
- }
- ],
- "ports": {
- "in": [
- {
- "name": "clk"
- },
- {
- "name": "ena"
- },
- {
- "name": "rst"
- }
- ],
- "out": [
- {
- "name": "out",
- "range": "[3:0]",
- "size": 4
- }
- ]
- }
- },
- "position": {
- "x": 248,
- "y": 184
- },
- "size": {
- "width": 352,
- "height": 288
- }
- },
{
"id": "4c30cdb0-f1af-4af1-bb4b-12e443b84a17",
"type": "basic.output",
@@ -186,6 +121,87 @@
"x": 40,
"y": 392
}
+ },
+ {
+ "id": "02460189-14a0-48d0-ad87-74faf9a1177e",
+ "type": "basic.constant",
+ "data": {
+ "name": "N",
+ "value": "20",
+ "local": false
+ },
+ "position": {
+ "x": 376,
+ "y": 56
+ }
+ },
+ {
+ "id": "976c6f41-7ed1-41b5-953b-cd4a5709c701",
+ "type": "3e6c249e205080168c1bf4ee8dbc33b50653d5f4",
+ "position": {
+ "x": 608,
+ "y": 56
+ },
+ "size": {
+ "width": 96,
+ "height": 64
+ }
+ },
+ {
+ "id": "e38831b6-fd92-4e35-9fea-17b439002721",
+ "type": "basic.code",
+ "data": {
+ "code": "// Counter 4 bits\n// @include div.v\n\nwire trig; reg out;\n\nDIV #(N) div (\n .clk(clk),\n .out(trig)\n);\n\nalways @(posedge trig) begin\n if (rst == 1)\n out <= 0;\n else if (ena == 1)\n out <= out + 1;\nend\n",
+ "params": [
+ {
+ "name": "N"
+ }
+ ],
+ "ports": {
+ "in": [
+ {
+ "name": "clk"
+ },
+ {
+ "name": "ena"
+ },
+ {
+ "name": "rst"
+ }
+ ],
+ "out": [
+ {
+ "name": "out",
+ "range": "[3:0]",
+ "size": 4
+ }
+ ]
+ }
+ },
+ "position": {
+ "x": 248,
+ "y": 184
+ },
+ "size": {
+ "width": 352,
+ "height": 288
+ }
+ },
+ {
+ "id": "e91d0b4f-0fc5-421d-a032-e59368bc322a",
+ "type": "basic.info",
+ "data": {
+ "info": "Counter 4 bits\n--------------\n\nInput: Enable, Reset\nParameter: N\nOutput: LED bus",
+ "readonly": true
+ },
+ "position": {
+ "x": 40,
+ "y": 56
+ },
+ "size": {
+ "width": 192,
+ "height": 128
+ }
}
],
"wires": [
@@ -254,8 +270,8 @@
},
"state": {
"pan": {
- "x": 0,
- "y": 0
+ "x": 2,
+ "y": -0.5
},
"zoom": 1
}
diff --git a/scripts/windows_installer.nsi b/scripts/windows_installer.nsi
index cf9158898..81cb7344c 100755
--- a/scripts/windows_installer.nsi
+++ b/scripts/windows_installer.nsi
@@ -8,7 +8,9 @@
!define DIST "..\dist"
!define CACHE "..\cache"
!define APP "${DIST}\icestudio\${ARCH}"
-!define PYTHON "python-2.7.13.amd64.msi"
+!ifndef PYTHON
+ !define PYTHON "python-2.7.13.amd64.msi"
+!endif
!define PYPATH "${CACHE}\python\${PYTHON}"
!define ICON "${APP}\resources\images\icestudio-logo.ico"