DEADSOFTWARE

Patched for Linux
[mp3cc.git] / README.txt
1 In this SVN repository you will find the different compiler versions (and it's RTL stubs) available under the following structure (also explained in the INHERITANCE.jpg file, useful for quick reference):
6 COMPILERS
7 ---------
9 /MPC.2.0.2/
10 -- author/s: Niksa Orlic
11 -- description: original compiler source code
12 -- date: 2006 January 14
13 -- design: designed to work as a static library linked to the 2.0 IDE
14 -- preverificator: yes
15 -- project: /MPC.2.0.2/ProjectMobilePascal.dsp (Visual Studio 6)
16 -- readme: /MPC.2.0.2/readme.txt (english)
18 /MPC.3.0.003/
19 -- author/s: Niksa Orlic & Artem
20 -- description: first enhacements to MPC.2.0.2; includes a new lexer, shl & shr operators, smart string concatenation
21 -- date: 2009 October 10
22 -- design: designed to work as an stand-alone application operated by the user via command-line
23 -- preverificator: yes
24 -- project: /MPC.3.0.003/mpc.vcproj (Visual C++ 8)
25 -- readme: /MPC.3.0.003/readmerus.txt (russian)
27 /MPC.3.0.005/
28 -- author/s: Niksa Orlic & Artem
29 -- description: based on MPC.3.0.003 version; bytecode inlining
30 -- date: 2009 October 14
31 -- design: designed to work as an stand-alone application operated by the user via command-line
32 -- preverificator: yes
33 -- project: /MPC.3.0.005/mpc.vcproj (Visual C++ 8)
34 -- readme: /MPC.3.0.005/readmerus.txt (russian)
36 /MPC.3.0.007/
37 -- author/s: Niksa Orlic & Artem
38 -- description: based on MPC.3.0.005 version; max array size up to 32767
39 -- date: 2009 October 23
40 -- design: designed to work as an stand-alone application operated by the user via command-line
41 -- preverificator: yes
42 -- project: /MPC.3.0.007/mpc.vcproj (Visual C++ 8)
43 -- readme: /MPC.3.0.007/readmerus.txt (russian)
45 /MPC.3.0.009/
46 -- author/s: Niksa Orlic & Artem
47 -- description: based on MPC.3.0.007 version; includes {$R+/-} to enable/disable real numbers support, {$V+/-} to enable/disable internal bytecode preverification
48 -- date: 2009 December 07
49 -- design: designed to work as an stand-alone application operated by the user via command-line
50 -- preverificator: yes
51 -- project: /MPC.3.0.009/mpc.vcproj (Visual C++ 8)
52 -- readme: /MPC.3.0.009/readmerus.txt (russian)
54 /MPC.3.0.009.SIMPLE/
55 -- author/s: Niksa Orlic & Artem
56 -- description: modified MPC.3.0.009 version; excludes the internal bytecode preverificator
57 -- date: 2009 December 10
58 -- design: designed to work as an stand-alone application operated by the user via command-line
59 -- preverificator: no
60 -- project: /MPC.3.0.009.SIMPLE/mpc.vcproj (Visual C++ 8)
61 -- readme: /MPC.3.0.009.SIMPLE/readmerus.txt (russian)
63 /MPC.3.0.IDE/
64 -- author/s: Niksa Orlic & Artem & Javier Santo Domingo
65 -- description: official 3.0 compiler source code; based on MPC.3.0.009; ported to GNUCC (with coditional defines), pascal-like errors messages and warnings, new command-line parsing (C way), disabled $R and $V directives (confusing overlapped functionality with the IDE), and several other adjustments (wow64 WM_COPYDATA workaround, etc) and bugfixes (real numbers parsing, SHR-SHL opcode generation, etc)
66 -- date: 2010 May 25
67 -- design: designed to work as an stand-alone command-line application operated by the 3.0 IDE
68 -- preverificator: yes
69 -- project: /MPC.3.0.IDE/mp3CC.cbp (Code::Blocks 8 / GNUCC)
70 -- readme: /MPC.3.0.IDE/readme.txt (english)
72 /MPC.3.0.010.SIMPLE/
73 -- author/s: Niksa Orlic & Artem
74 -- description: modified MPC.3.0.009.SIMPLE version; includes {$T+/-} to enable/disable the use of lowercase on current token
75 -- date: 2010 June 28
76 -- design: designed to work as an stand-alone application operated by the user via command-line
77 -- preverificator: no
78 -- project: /MPC.3.0.010.SIMPLE/mpc.vcproj (Visual C++ 8)
79 -- readme: /MPC.3.0.010.SIMPLE/readmerus.txt (russian)
81 /MPC.3.0.0101/
82 -- author/s: Niksa Orlic & Artem
83 -- description: modified MPC.3.0.010.SIMPLE version; includes a fix for the presence of text after "end." giving only a warning, bugfix on the parser to avoid hangs by endless cycling, removed a comma from the construction "if then; else;" in "if then else;", etc
84 -- date: 2010 July 01
85 -- design: designed to work as an stand-alone application operated by the user via command-line
86 -- preverificator: no
87 -- project: /MPC.3.0.0101/mpc.vcproj (Visual C++ 8)
88 -- readme: /MPC.3.0.0101/readmerus.txt (russian)
90 /MPC.3.1.IDE/
91 -- author/s: Niksa Orlic & Artem & Javier Santo Domingo
92 -- description: official 3.1 compiler source code; based on MPC.3.0.IDE; added infinite-loop support via the repeat/forever keywords and bugfixes (complex-type bidimensional array initialization index out-of-bound, etc)
93 -- date: 2010 July 10
94 -- design: designed to work as an stand-alone command-line application operated by the 3.1 IDE
95 -- preverificator: yes
96 -- project: /MPC.3.1.IDE/mp3CC.cbp (Code::Blocks 8 / GNUCC)
97 -- readme: /MPC.3.1.IDE/readme.txt (english)
99 /MPC.3.0.0101.SIMPLE/
100 -- author/s: Niksa Orlic & Artem
101 -- description: modified MPC.3.0.0101 version; $C+/-/* canvas selection compiler directive, line number display on error reports, etc
102 -- date: 2010 July 25
103 -- design: designed to work as an stand-alone application operated by the user via command-line
104 -- preverificator: no
105 -- project: /MPC.3.0.0101.SIMPLE/mpc.vcproj (Visual C++ 8)
106 -- readme: /MPC.3.0.0101.SIMPLE/readmerus.txt (russian)
108 /MPC.3.1.LINUX/
109 -- author/s: Niksa Orlic & Artem & Javier Santo Domingo & Zoltán Várnagy
110 -- description: 3.1 compiler source code for Linux (tested on PowerPC & x86); based on MPC.3.1.IDE
111 -- date: 2010 July 27
112 -- design: designed to work as an stand-alone command-line application operated by user via command-line
113 -- preverificator: yes
114 -- project: /MPC.3.1.LINUX/mp3CC.cbp (Code::Blocks 8 / GNUCC)
115 -- readme: /MPC.3.1.LINUX/readme.txt (english)
117 /MPC.3.0.011.SIMPLE/
118 -- author/s: Niksa Orlic & Artem
119 -- description: modified MPC.3.0.0101.SIMPLE version; added goto support in inline blocks, etc
120 -- date: 2010 August 05
121 -- design: designed to work as an stand-alone application operated by the user via command-line
122 -- preverificator: no
123 -- project: /MPC.3.0.011.SIMPLE/mpc.vcproj (Visual C++ 8)
124 -- readme: /MPC.3.0.011.SIMPLE/readmerus.txt (russian)
126 /MPC.3.2.IDE/
127 -- author/s: Niksa Orlic & Artem & Javier Santo Domingo
128 -- description: official 3.2 compiler source code; based on MPC.3.1.IDE; added exit keyword support and C-style multiline comment support
129 -- date: 2010 September 25
130 -- design: designed to work as an stand-alone command-line application operated by the 3.2 IDE
131 -- preverificator: yes
132 -- project: /MPC.3.2.IDE/mp3CC.cbp (Code::Blocks 8 / GNUCC)
133 -- readme: /MPC.3.2.IDE/readme.txt (english)
135 /MPC.3.3.IDE/
136 -- author/s: Niksa Orlic & Artem & Javier Santo Domingo
137 -- description: official 3.3 compiler source code; based on MPC.3.2.IDE; added result keyword support, C-style shift operators support and bugfixes (constant assignment crash, etc)
138 -- date: 2011 January 08
139 -- design: designed to work as an stand-alone command-line application operated by the 3.3 IDE
140 -- preverificator: yes
141 -- project: /MPC.3.3.IDE/mp3CC.cbp (Code::Blocks 8 / GNUCC)
142 -- readme: /MPC.3.3.IDE/readme.txt (english)
144 /MPC.3.4.IDE/
145 -- author/s: Niksa Orlic & Artem & Javier Santo Domingo
146 -- description: official 3.4 compiler source code; based on MPC.3.3.IDE; added Project Library Directory support via -p switch, imported the "ASM BLOCK" from the Artem's MPC.3.0.011.SIMPLE parser.c, added bytecode keyword support and ushr/>>> shift operator support
147 -- date: 2011 July 02
148 -- design: designed to work as an stand-alone command-line application operated by the 3.4 IDE
149 -- preverificator: yes
150 -- project: /MPC.3.4.IDE/mp3CC.cbp (Code::Blocks 8 / GNUCC)
151 -- readme: /MPC.3.4.IDE/readme.txt (english)
153 /MPC.3.5.IDE/
154 -- author/s: Niksa Orlic & Artem & Javier Santo Domingo
155 -- description: official 3.5 compiler source code; based on MPC.3.4.IDE; added C-like double quoted strings support, added negative integer constants support and bugfixes (consecutive same variable name declaration collision, etc)
156 -- date: 2013 February 02
157 -- design: designed to work as an stand-alone command-line application operated by the 3.5 IDE
158 -- preverificator: yes
159 -- project: /MPC.3.5.IDE/mp3CC.cbp (Code::Blocks 8 / GNUCC)
160 -- readme: /MPC.3.5.IDE/readme.txt (english)
163 RTL STUBS
164 ---------
167 /MPS.2.02/
168 -- author/s: Niksa Orlic
169 -- description: original RTL stubs source code
170 -- date: 2006 January 14
171 -- readme: /MPS.2.02/readme.txt (english)
173 /MPS.3.0/
174 -- author/s: Niksa Orlic & Javier Santo Domingo
175 -- description: official 3.0 RTL stubs source code; based on MPS.2.02; bugfixes (readNextByte -readByte- now returns 1000 -EOF constant- as expressed in documentation, removed the fixed destination port for SMS messages, etc) and modifications to avoid the AV false alarms
176 -- date: 2010 June 19
177 -- readme: /MPS.3.0/readme.txt (english)
179 /MPS.3.1/
180 -- author/s: Niksa Orlic & Javier Santo Domingo
181 -- description: official 3.1 RTL stubs source code; based on MPS.3.0; Roar Lauritzsen's Real.java updated from version 1.07 to 1.13
182 -- date: 2010 August 28
183 -- readme: /MPS.3.1/readme.txt (english)
187 You will also find the important chronical events of the project listed in HISTORY.txt (since 2006).
189 The IDE source code (which includes the Preprocessor and the Command Line Tools) is located at a different project site as explained in MP 3.0 README.txt: http://sourceforge.net/projects/mp3ide/.
192 Enjoy,
194 Javier Santo Domingo
195 02.february.2013