/trunk/wpj/README.TXT |
---|
1,45 → 1,82 |
Prerequisites |
=================== |
1) flex and bison |
The easiest way to get these (and many other useful GNU tools) is described here: |
http://getgnuwin32.sourceforge.net/ |
Set path variable to the binaries |
BUILDING FILTER FOUNDRY ON OPENWATCOM |
by Peter Heckert and Daniel Marschall |
2) Photoshop 6.0 SDK |
Available from Photoshop 6.0 CD |
Most recently tested with OpenWatcom 1.9 with Adobe Photoshop SDK CC 2017 |
Prerequisites: |
================ |
1) Flex and Bison |
Available here: |
https://sourceforge.net/projects/winflexbison/ |
2) Adobe Photoshop SDK |
Available on some Photoshop CDs, or can be downloaded at |
https://www.adobe.com/devnet/photoshop/sdk.html |
3) Watcom 1.6beta RC1 or later |
Available here: |
http://www.openwatcom.org/ftp/devel/ |
http://www.openwatcom.org/ |
4) SVN client |
After installing Watcom get the command line svn client: |
http://subversion.tigris.org/files/documents/15/34093/svn-1.4.0-setup.exe |
https://tortoisesvn.net/index.de.html |
After installing all these reboot, or set the environment manually |
How to get filterfoundry: |
How to get FilterFoundry: |
=========================== |
Make a directory anywhere for telegraphics plugins, remember, no spaces in pathname |
cd into the directory. |
type |
svn checkout http://www.telegraphics.com.au/svn/common/trunk common |
svn checkout http://www.telegraphics.com.au/svn/filterfoundry/trunk filterfoundry |
svn checkout https://www.telegraphics.com.au/svn/common/trunk common |
svn checkout https://www.telegraphics.com.au/svn/filterfoundry/trunk filterfoundry |
How to build: |
=============== |
Build setup: |
============== |
Hint: |
If you never used Watcom to build Photoshop plugins best start with the |
countcolours plugin and ensure it compiles. Read the HowTo. |
Look for it at http://www.telegraphics.com.au/sw/ or get it with |
svn checkout http://www.telegraphics.com.au/svn/countcolours/trunk countcolours |
Look for it at https://www.telegraphics.com.au/sw/ or get it with |
svn checkout https://www.telegraphics.com.au/svn/countcolours/trunk countcolours |
Open filterfoundry.wpj in Watcom's IDE. |
In menu File->Before set the path to your Photoshop SDK. |
1. Open filterfoundry.wpj in Watcom's IDE. |
Thats all, you can build the project then. |
2. In menu File->Before set the path to your Photoshop SDK, |
Flex and Bison. |
If this doesn't work (there seem to be a bug in OpenWatcom 1.9 where you can only make the |
text smaller, but not bigger), you have to edit the WPJ file with an text editor. |
Remember how many characters you have added or deleted, and subtract or add them |
to the number written above the before-instructions (currently 445). |
3. Thats all, you can build the project then. |
Troubleshooting: |
================== |
- If you get the error message "Fatal Error! 62: Unable to open 'sdkddkver.h'", please open |
pluginsdk\photoshopapi\photoshop\PITypes.h in your Adobe Photoshop SDK and |
comment out the line "#include <sdkddkver.h> // for WINVER", |
or use an older Photoshop SDK. |
- It is important that the correct calling convention is used. |
The calling convention needs to be set in |
Options -> C Compiler Switches -> Memory Model and Processor Switches. |
There, select "Pentium Pro stack-based calling" (default is "Pentium Pro register based calling"). |
The wpj project should already have this setting applied. |
- If you receive the error message "lex.yy.c(580): Error! E1009: Expecting ';' but found '1'", |
check if the compiler directive "YY_SKIP_YYWRAP" is set. |
Go to Options -> C Compiler Switches -> Source switches , and add YY_SKIP_YYWRAP=1 . |
The wpj project should already have this setting applied. |
Remarks |
========= |
49,17 → 86,3 |
Therefore the output files of bison and lex are renamed. |
There is no error checking done. |
Probably it would be better to write a small wmake file for this purpose. |
If there are problems building or using the watcom generated plugin please |
inform me. |
I dont regulary use filterfoundry but I checked all examples if they work. |
I used Photoline 32, available at www.pl32.com to check it, because it has very |
flexible configuration (multiple paths) for plugins, very good plugin compatibility, |
(16 and 8 bit) and fast startup time. |
I am reachable at: |
peter dot heckert at arcor dot de |
Enjoy! |
/trunk/wpj/filterfoundry.tgt |
---|
65,119 → 65,128 |
15 |
WVList |
1 |
16 |
ActionStates |
17 |
WString |
5 |
&Make |
18 |
WVList |
-1 |
1 |
1 |
16 |
19 |
WPickList |
31 |
17 |
20 |
MItem |
3 |
*.c |
18 |
21 |
WString |
4 |
COBJ |
19 |
22 |
WVList |
6 |
20 |
23 |
MVState |
21 |
24 |
WString |
3 |
WCC |
22 |
25 |
WString |
25 |
n????Include directories: |
1 |
23 |
26 |
WString |
129 |
$(%watcom)\h;$(%watcom)\h\nt;..\..\common\adobeplugin;..\..\common\tt;$(%PSAPI)\Pica_sp;$(%PSAPI)\Photoshop;$(%PSAPI)\General;..\ |
24 |
27 |
MVState |
25 |
28 |
WString |
3 |
WCC |
26 |
29 |
WString |
23 |
?????Macro definitions: |
1 |
27 |
30 |
WString |
57 |
_WINDOWS MSWindows=1 WIN32=1 WIN_ENV=1 INSIDE_PHOTOSHOP=1 |
74 |
_WINDOWS MSWindows=1 WIN32=1 WIN_ENV=1 INSIDE_PHOTOSHOP=1 YY_SKIP_YYWRAP=1 |
28 |
31 |
MCState |
29 |
32 |
WString |
3 |
WCC |
30 |
33 |
WString |
34 |
?????Change char default to signed |
1 |
1 |
31 |
34 |
MVState |
32 |
35 |
WString |
3 |
WCC |
33 |
36 |
WString |
19 |
?????Other options: |
1 |
34 |
37 |
WString |
3 |
-aq |
35 |
38 |
MRState |
36 |
39 |
WString |
3 |
WCC |
37 |
40 |
WString |
39 |
??2??Pentium Pro Register based calling |
??2??Pentium Pro register-based calling |
1 |
38 |
41 |
MRState |
39 |
42 |
WString |
3 |
WCC |
40 |
43 |
WString |
36 |
??2??Pentium Pro Stack based calling |
??2??Pentium Pro stack-based calling |
1 |
1 |
41 |
44 |
WVList |
1 |
42 |
45 |
ActionStates |
43 |
46 |
WString |
5 |
&Make |
44 |
47 |
WVList |
-1 |
184,563 → 193,563 |
1 |
1 |
45 |
48 |
MItem |
34 |
..\..\COMMON\ADOBEPLUGIN\dllmain.c |
46 |
49 |
WString |
4 |
COBJ |
47 |
50 |
WVList |
48 |
51 |
WVList |
1 |
49 |
52 |
ActionStates |
50 |
53 |
WString |
5 |
&Make |
51 |
54 |
WVList |
17 |
20 |
1 |
1 |
52 |
55 |
MItem |
32 |
..\..\common\tt\choosefile_win.c |
53 |
56 |
WString |
4 |
COBJ |
54 |
57 |
WVList |
55 |
58 |
WVList |
17 |
20 |
1 |
1 |
56 |
59 |
MItem |
31 |
..\..\COMMON\TT\compat_string.c |
57 |
60 |
WString |
4 |
COBJ |
58 |
61 |
WVList |
59 |
62 |
WVList |
17 |
20 |
1 |
1 |
60 |
63 |
MItem |
28 |
..\..\common\tt\compat_win.c |
61 |
64 |
WString |
4 |
COBJ |
62 |
65 |
WVList |
63 |
66 |
WVList |
17 |
20 |
1 |
1 |
64 |
67 |
MItem |
25 |
..\..\COMMON\TT\dbg_win.c |
65 |
68 |
WString |
4 |
COBJ |
66 |
69 |
WVList |
67 |
70 |
WVList |
17 |
20 |
1 |
1 |
68 |
71 |
MItem |
33 |
..\..\common\tt\file_compat_win.c |
69 |
72 |
WString |
4 |
COBJ |
70 |
73 |
WVList |
71 |
74 |
WVList |
17 |
20 |
1 |
1 |
72 |
75 |
MItem |
30 |
..\..\COMMON\TT\sprintf_tiny.c |
73 |
76 |
WString |
4 |
COBJ |
74 |
77 |
WVList |
75 |
78 |
WVList |
17 |
20 |
1 |
1 |
76 |
79 |
MItem |
21 |
..\..\COMMON\TT\str.c |
77 |
80 |
WString |
4 |
COBJ |
78 |
81 |
WVList |
79 |
82 |
WVList |
17 |
20 |
1 |
1 |
80 |
83 |
MItem |
31 |
..\..\COMMON\TT\ui_compat_win.c |
81 |
84 |
WString |
4 |
COBJ |
82 |
85 |
WVList |
83 |
86 |
WVList |
17 |
20 |
1 |
1 |
84 |
87 |
MItem |
10 |
..\funcs.c |
85 |
88 |
WString |
4 |
COBJ |
86 |
89 |
WVList |
87 |
90 |
WVList |
17 |
20 |
1 |
1 |
88 |
91 |
MItem |
11 |
..\lex_yy.c |
89 |
92 |
WString |
4 |
COBJ |
90 |
93 |
WVList |
91 |
94 |
WVList |
17 |
20 |
1 |
1 |
92 |
95 |
MItem |
13 |
..\load_win.c |
93 |
96 |
WString |
4 |
COBJ |
94 |
97 |
WVList |
95 |
98 |
WVList |
17 |
20 |
1 |
1 |
96 |
99 |
MItem |
9 |
..\main.c |
97 |
100 |
WString |
4 |
COBJ |
98 |
101 |
WVList |
99 |
102 |
WVList |
17 |
20 |
1 |
1 |
100 |
103 |
MItem |
9 |
..\make.c |
101 |
104 |
WString |
4 |
COBJ |
102 |
105 |
WVList |
103 |
106 |
WVList |
17 |
20 |
1 |
1 |
104 |
107 |
MItem |
13 |
..\make_win.c |
105 |
108 |
WString |
4 |
COBJ |
106 |
109 |
WVList |
107 |
110 |
WVList |
17 |
20 |
1 |
1 |
108 |
111 |
MItem |
9 |
..\node.c |
109 |
112 |
WString |
4 |
COBJ |
110 |
113 |
WVList |
111 |
114 |
WVList |
17 |
20 |
1 |
1 |
112 |
115 |
MItem |
12 |
..\preview.c |
113 |
116 |
WString |
4 |
COBJ |
114 |
117 |
WVList |
115 |
118 |
WVList |
17 |
20 |
1 |
1 |
116 |
119 |
MItem |
12 |
..\process.c |
117 |
120 |
WString |
4 |
COBJ |
118 |
121 |
WVList |
119 |
122 |
WVList |
17 |
20 |
1 |
1 |
120 |
123 |
MItem |
9 |
..\read.c |
121 |
124 |
WString |
4 |
COBJ |
122 |
125 |
WVList |
123 |
126 |
WVList |
17 |
20 |
1 |
1 |
124 |
127 |
MItem |
9 |
..\save.c |
125 |
128 |
WString |
4 |
COBJ |
126 |
129 |
WVList |
127 |
130 |
WVList |
17 |
20 |
1 |
1 |
128 |
131 |
MItem |
14 |
..\scripting.c |
129 |
132 |
WString |
4 |
COBJ |
130 |
133 |
WVList |
131 |
134 |
WVList |
17 |
20 |
1 |
1 |
132 |
135 |
MItem |
11 |
..\symtab.c |
133 |
136 |
WString |
4 |
COBJ |
134 |
137 |
WVList |
135 |
138 |
WVList |
17 |
20 |
1 |
1 |
136 |
139 |
MItem |
12 |
..\trigtab.c |
137 |
140 |
WString |
4 |
COBJ |
138 |
141 |
WVList |
139 |
142 |
WVList |
17 |
20 |
1 |
1 |
140 |
143 |
MItem |
7 |
..\ui.c |
141 |
144 |
WString |
4 |
COBJ |
142 |
145 |
WVList |
143 |
146 |
WVList |
17 |
20 |
1 |
1 |
144 |
147 |
MItem |
13 |
..\ui_build.c |
145 |
148 |
WString |
4 |
COBJ |
146 |
149 |
WVList |
147 |
150 |
WVList |
17 |
20 |
1 |
1 |
148 |
151 |
MItem |
17 |
..\ui_build_win.c |
149 |
152 |
WString |
4 |
COBJ |
150 |
153 |
WVList |
151 |
154 |
WVList |
17 |
20 |
1 |
1 |
152 |
155 |
MItem |
11 |
..\ui_win.c |
153 |
156 |
WString |
4 |
COBJ |
154 |
157 |
WVList |
155 |
158 |
WVList |
17 |
20 |
1 |
1 |
156 |
159 |
MItem |
10 |
..\y_tab.c |
157 |
160 |
WString |
4 |
COBJ |
158 |
161 |
WVList |
159 |
162 |
WVList |
17 |
20 |
1 |
1 |
160 |
163 |
MItem |
4 |
*.rc |
161 |
164 |
WString |
5 |
NRESC |
162 |
165 |
WVList |
2 |
163 |
166 |
MVState |
164 |
167 |
WString |
3 |
WRC |
165 |
168 |
WString |
23 |
n????Macro definitions: |
1 |
166 |
169 |
WString |
61 |
WIN32 _WIN32 __NT__ WIN_ENV=1 INSIDE_PHOTOSHOP=1 MSWindows=1 |
167 |
170 |
MVState |
168 |
171 |
WString |
3 |
WRC |
169 |
172 |
WString |
25 |
n????Include directories: |
1 |
170 |
173 |
WString |
70 |
$[:;$(%watcom)\h;$(%watcom)\h\nt;$(%PSAPI)\Photoshop;$(%PSAPI)\Pica_sp |
171 |
174 |
WVList |
-1 |
747,21 → 756,21 |
1 |
1 |
172 |
175 |
MItem |
13 |
..\win_res.rc |
173 |
176 |
WString |
5 |
NRESC |
174 |
177 |
WVList |
175 |
178 |
WVList |
160 |
163 |
1 |
1 |
/trunk/wpj/filterfoundry.wpj |
---|
4,8 → 4,8 |
VpeMain |
1 |
WRect |
1216 |
768 |
7680 |
9728 |
2 |
12,14 → 12,14 |
MProject |
3 |
MCommand |
310 |
set PSSDK=E:\Adobe_Photoshop_6.0_SDK |
set PSAPI =E:\Adobe_Photoshop_6.0_SDK\PhotoshopAPI |
445 |
set PSSDK=D:\FilterFoundry\adobe_photoshop_sdk_cc_2017_win\pluginsdk |
set PSAPI=D:\FilterFoundry\adobe_photoshop_sdk_cc_2017_win\pluginsdk\photoshopapi |
cd .. |
if exist y_tab.c del y_tab.c |
if exist lex_yy.c del lex_yy.c |
bison parser.y -d -y |
flex lexer.l y.tab.c |
D:\FilterFoundry\win_flex_bison\win_bison parser.y -d -y |
D:\FilterFoundry\win_flex_bison\win_flex lexer.l y.tab.c |
rem IDE doesnt like multiple dots in filenames |
ren y.tab.c y_tab.c |
ren lex.yy.c lex_yy.c |
43,7 → 43,7 |
8 |
WRect |
704 |
692 |
5712 |
4352 |
52,6 → 52,6 |
WFileName |
17 |
filterfoundry.tgt |
3 |
13 |
7 |