You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+16-9Lines changed: 16 additions & 9 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -48,6 +48,7 @@ codes.
48
48
$ cd ../../../
49
49
50
50
## Make targets
51
+
* make libs: build library archives
51
52
* make patch: build patch binary
52
53
* make sysex: package binary as sysex
53
54
* make run: upload patch to attached OWL
@@ -61,22 +62,28 @@ codes.
61
62
* make help: print target information
62
63
* make docs: generate HTML documentation
63
64
64
-
All files for a patch must be copied in the `PatchSource` directory, take care to put only files related to the one patch you want to compile here.
65
+
Before you compile a patch you must first call `make libs`. This will create archive files in the `Libraries` folder which will be reused each time you compile a patch.
66
+
The archive files must be updated with `make libs` if you make any changes to the library source code (e.g. with a `git pull`), or to the compiler.
67
+
If you don't have emscripten installed, then the second part of `make libs` will fail. You will still be able to compile normal patches, but compiling to Javascript with `make web` will fail.
65
68
66
-
Make sure to do a `make clean` before compiling a new patch, or add `clean` to your make target, otherwise the previous patch name will be retained.
69
+
Make sure to do a `make clean` before compiling a new patch, or add `clean` to your make target (e.g. `make clean patch`), otherwise the previous patch name will be retained.
67
70
68
71
## Make options
69
-
* PATCHNAME: specify name of patch, e.g. SimpleDelay
70
-
* PATCHCLASS: name of patch class, e.g. SimpleDelayPatch
71
-
* PATCHFILE: name of main patch file, e.g. SimpleDelayPatch.hpp
* PATCHNAME: specify name of patch, default `Template`
74
+
* PATCHCLASS: name of patch class, default `TemplatePatch`
75
+
* PATCHFILE: name of main patch file, default `TemplatePatch.hpp`
72
76
* PATCHIN: number of input channels, default 2
73
77
* PATCHOUT: number of output channels, default 2
74
-
* SLOT: user program slot to store patch in, default 0
78
+
* SLOT: user program slot to store patch in, default 0, use with `store`
75
79
* TARGET: changes the output prefix, default 'patch'
76
80
77
-
If you follow the convention of SimpleDelay then you don't have to specify `PATCHCLASS` and `PATCHFILE`, they will be deduced from `PATCHNAME`.
78
-
t
79
-
Note that when storing user programs, the current OWL firmware has four user defined patches, numbered 37 to 40. These correspond to slot number 0 to 3.
81
+
82
+
All files for a patch must be copied to the `PATCHSOURCE` directory. Take care to put only files required by the patch you want to compile here.
83
+
84
+
If you follow the naming convention above (e.g. `XyzPatch.hpp`) then you don't have to specify `PATCHCLASS` and `PATCHFILE`, they will be deduced from `PATCHNAME`.
85
+
86
+
Note that when storing user programs, the legacy OwlWare firmware has four user defined patches, numbered 37 to 40. These correspond to slot number 0 to 3. For OpenWare firmwares, the slots are numbered from 1 and up.
80
87
81
88
## Building C++ patches
82
89
First copy all patch files to `PatchSource` folder, then issue the appropriate make command.
0 commit comments