<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://libredevelop.zdechov.net/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Chronos</id>
	<title>LibreDevelop - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://libredevelop.zdechov.net/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Chronos"/>
	<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/Special:Contributions/Chronos"/>
	<updated>2026-04-05T07:39:22Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.40.0</generator>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Main_Page&amp;diff=11119</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Main_Page&amp;diff=11119"/>
		<updated>2023-08-20T21:38:37Z</updated>

		<summary type="html">&lt;p&gt;Chronos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=About=&lt;br /&gt;
&lt;br /&gt;
LibreDevelop is a initiative to build FOSS alternative to Delphi IDE and compiler.&lt;br /&gt;
&lt;br /&gt;
* [[Motivation]]&lt;br /&gt;
* [[Concept]]&lt;br /&gt;
* [[Implementation]]&lt;br /&gt;
&lt;br /&gt;
=Projects=&lt;br /&gt;
&lt;br /&gt;
* [[Platform]] - generic base application platform &lt;br /&gt;
* [[Studio]] - RAD development IDE&lt;br /&gt;
* [[Universe]] - forge portal for projects&lt;br /&gt;
* [[Compiler]] - Object Pascal/Delphi compatible compiler&lt;br /&gt;
* [[Libraries]] - RTL / VCL similar libraries&lt;br /&gt;
* [[Operating System]] - demonstration OS&lt;br /&gt;
* [[Virtual machine]] - simplified clean design which should run OS and applications&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Project source code is available in SVN repository at URL:&lt;br /&gt;
 https://svn.zdechov.net/libredevelop/&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
&lt;br /&gt;
* [http://www.embarcadero.com/products/delphi Embarcadero Delphi website]&lt;br /&gt;
&lt;br /&gt;
[[Category:Main]]&lt;br /&gt;
&lt;br /&gt;
__NOTOC__&lt;br /&gt;
__NOEDITSECTION__&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Main_Page&amp;diff=11110</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Main_Page&amp;diff=11110"/>
		<updated>2018-12-21T20:27:12Z</updated>

		<summary type="html">&lt;p&gt;Chronos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=About=&lt;br /&gt;
&lt;br /&gt;
LibreDevelop is a initiative to build FOSS alternative to Delphi IDE and compiler.&lt;br /&gt;
&lt;br /&gt;
* [[Motivation]]&lt;br /&gt;
* [[Concept]]&lt;br /&gt;
* [[Implementation]]&lt;br /&gt;
&lt;br /&gt;
=Projects=&lt;br /&gt;
&lt;br /&gt;
* [[Platform]] - generic base application platform &lt;br /&gt;
* [[Studio]] - RAD development IDE&lt;br /&gt;
* [[Universe]] - forge portal for projects&lt;br /&gt;
* [[Compiler]] - Object Pascal/Delphi compatible compiler&lt;br /&gt;
* [[Libraries]] - RTL / VCL similar libraries&lt;br /&gt;
* [[Operating System]] - demonstration OS&lt;br /&gt;
* [[Virtual machine]] - simplified clean design which should run OS and applications&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Project source code is available in SVN repository at URL:&lt;br /&gt;
 http://svn.zdechov.net/libredevelop/&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
&lt;br /&gt;
* [http://www.embarcadero.com/products/delphi Embarcadero Delphi website]&lt;br /&gt;
&lt;br /&gt;
[[Category:Main]]&lt;br /&gt;
&lt;br /&gt;
__NOTOC__&lt;br /&gt;
__NOEDITSECTION__&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Main_Page&amp;diff=11109</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Main_Page&amp;diff=11109"/>
		<updated>2016-08-31T21:08:10Z</updated>

		<summary type="html">&lt;p&gt;Chronos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=About=&lt;br /&gt;
&lt;br /&gt;
LibreDevelop is a initiative to build FOSS alternative to Delphi IDE and compiler.&lt;br /&gt;
&lt;br /&gt;
* [[Motivation]]&lt;br /&gt;
* [[Concept]]&lt;br /&gt;
* [[Implementation]]&lt;br /&gt;
&lt;br /&gt;
=Projects=&lt;br /&gt;
&lt;br /&gt;
* [[Platform]] - generic base application platform &lt;br /&gt;
* [[Studio]] - RAD development IDE&lt;br /&gt;
* [[Universe]] - forge portal for projects&lt;br /&gt;
* [[Compiler]] - Object Pascal/Delphi compatible compiler&lt;br /&gt;
* [[Libraries]] - RTL / VCL similar libraries&lt;br /&gt;
* [[Operating System]] - demonstration OS&lt;br /&gt;
* [[Virtual machine]] - simplified clean design which should run OS and applications&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Project source code is available in SVN repository at URL:&lt;br /&gt;
 http://svn.zdechov.net/svn/libredevelop/&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
&lt;br /&gt;
* [http://www.embarcadero.com/products/delphi Embarcadero Delphi website]&lt;br /&gt;
&lt;br /&gt;
[[Category:Main]]&lt;br /&gt;
&lt;br /&gt;
__NOTOC__&lt;br /&gt;
__NOEDITSECTION__&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Delphi_language_features&amp;diff=65</id>
		<title>Delphi language features</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Delphi_language_features&amp;diff=65"/>
		<updated>2016-03-24T08:36:51Z</updated>

		<summary type="html">&lt;p&gt;Chronos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Here is incomplete Delphi/Object Pascal feature tree. Some features are dependent on others so some have precedence during compiler development.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! Name !! Description !! Level&lt;br /&gt;
|-&lt;br /&gt;
| Statements || || 0&lt;br /&gt;
|-&lt;br /&gt;
| Variables || &#039;&#039;&#039;var&#039;&#039;&#039; keyword, global || 0&lt;br /&gt;
|-&lt;br /&gt;
| Variables - Local || Inside function and procedures || &lt;br /&gt;
|-&lt;br /&gt;
| Constants || &#039;&#039;&#039;const&#039;&#039;&#039; keyword, global || 0&lt;br /&gt;
|-&lt;br /&gt;
| Name spaces || Not directly supported || Future&lt;br /&gt;
|-&lt;br /&gt;
| Memory access || Direct access to memory (pointers, directive absolute) || &lt;br /&gt;
|-&lt;br /&gt;
| Compiler directives || || &lt;br /&gt;
|-&lt;br /&gt;
| Compiler directives - Conditionals || $IFDEF, $ENDIF, $DEFINE, ...) ||&lt;br /&gt;
|-&lt;br /&gt;
| Compiler directives - Region || code hiding using $REGION ||&lt;br /&gt;
|-&lt;br /&gt;
| Compiler directives - Options || ($M+/-, ...) ||&lt;br /&gt;
|-&lt;br /&gt;
| Operators || and, or, xor, not, +, -, /, *, div, mod || 0&lt;br /&gt;
|-&lt;br /&gt;
| Operators - Shifting || shl, shr ||&lt;br /&gt;
|-&lt;br /&gt;
| Operators - Type || as, in ||&lt;br /&gt;
|-&lt;br /&gt;
| Expressions || operator priority, infix notation || 0&lt;br /&gt;
|-&lt;br /&gt;
| Expressions - Parentheses || || 1&lt;br /&gt;
|-&lt;br /&gt;
| Assignment || &#039;&#039;&#039;:=&#039;&#039;&#039; symbol || 0&lt;br /&gt;
|-&lt;br /&gt;
| Integrated assembler || asm-end ||&lt;br /&gt;
|-&lt;br /&gt;
| Comments || One line // or Block level {}, (* *) ||&lt;br /&gt;
|-&lt;br /&gt;
| Functions || Functions and procedures || 0&lt;br /&gt;
|-&lt;br /&gt;
| Functions - Overloading || Function overloading, &#039;&#039;&#039;overload&#039;&#039;&#039; keyword ||&lt;br /&gt;
|-&lt;br /&gt;
| Functions - Nested || Local functions inside function&lt;br /&gt;
|-&lt;br /&gt;
| Functions - Parameters ||  ||&lt;br /&gt;
|-&lt;br /&gt;
| Functions - Parameters - Reference || &#039;&#039;&#039;var&#039;&#039;&#039; keyword for references ||&lt;br /&gt;
|-&lt;br /&gt;
| Functions - Parameters - Default value || parameters with default value ||&lt;br /&gt;
|-&lt;br /&gt;
| Functions - Inlined  || Inlining code using &#039;&#039;&#039;inline&#039;&#039;&#039; keyword&lt;br /&gt;
|-&lt;br /&gt;
| Types || &#039;&#039;&#039;type&#039;&#039;&#039; keyword || 0 &lt;br /&gt;
|-&lt;br /&gt;
| Types - Enumeration || (Boolean, ...) ||&lt;br /&gt;
|-&lt;br /&gt;
| Types - Subrange || (0..100, ...) ||&lt;br /&gt;
|-&lt;br /&gt;
| Types - Ordinals || SmallInt, Byte, Integer, Word, Cardinal, Int64, ... || 0&lt;br /&gt;
|-&lt;br /&gt;
| Types - Floating numbers || Real, Single, Double, Extended, ... ||&lt;br /&gt;
|-&lt;br /&gt;
| Types - Characters || Char, WideChar, AnsiChar, ... ||&lt;br /&gt;
|-&lt;br /&gt;
| Types - Strings || String, ShortString, AnsiString, WideString, PChar, ... ||&lt;br /&gt;
|-&lt;br /&gt;
| Types - Pointers || Pointer, @, ^ ||&lt;br /&gt;
|-&lt;br /&gt;
| Types - Variant || ||&lt;br /&gt;
|-&lt;br /&gt;
| Types - Procedural types || ||&lt;br /&gt;
|- &lt;br /&gt;
| Types - Composed || ||&lt;br /&gt;
|-&lt;br /&gt;
| Types - Array || static/dynamic ||&lt;br /&gt;
|-&lt;br /&gt;
| Types - Record || ||&lt;br /&gt;
|- &lt;br /&gt;
| Types - Record - Variant ||  Překrývání proměnných (variant records): case Integer of... ||&lt;br /&gt;
|-&lt;br /&gt;
| Types - Record - Packed || ||&lt;br /&gt;
|-&lt;br /&gt;
| Types - Record - Operator redefinition || ||&lt;br /&gt;
|-&lt;br /&gt;
| Types - Record - Advanced || with constants,types,variables,procedure/functions ||&lt;br /&gt;
|-&lt;br /&gt;
| Types - Set || &#039;&#039;&#039;set of&#039;&#039;&#039;, &#039;&#039;in&#039;&#039; operator, [] as set initializer || &lt;br /&gt;
|-&lt;br /&gt;
| Types - Class || &#039;&#039;&#039;class&#039;&#039;&#039; keyword ||&lt;br /&gt;
|-&lt;br /&gt;
| Types - Class - Visibility || published, public, private, protected ||&lt;br /&gt;
|-&lt;br /&gt;
| Types - Class - Methods || Methods (procedure, function) || &lt;br /&gt;
|-&lt;br /&gt;
| Types - Class - Virtual methods || (virtual, override)&lt;br /&gt;
|-&lt;br /&gt;
| Types - Class - Inlining || inline ||&lt;br /&gt;
|-&lt;br /&gt;
| Types - Class - Inheritance || inherited ||&lt;br /&gt;
|-&lt;br /&gt;
| Types - Class - Properties || (property, read, write, default, indexed) ||&lt;br /&gt;
|-&lt;br /&gt;
| Types - Class - Nested definitions || ||&lt;br /&gt;
|-&lt;br /&gt;
| Types - Class - Constructors and destructors || constructor, destructor ||&lt;br /&gt;
|-&lt;br /&gt;
| Types - Interface || &#039;&#039;&#039;interface&#039;&#039;&#039; keyword ||&lt;br /&gt;
|-&lt;br /&gt;
| Globals || (variables, constants, types, functions) ||&lt;br /&gt;
|-&lt;br /&gt;
| Units || Modularity using &#039;&#039;&#039;unit&#039;&#039;&#039; keyword, interface and implementation sections ||&lt;br /&gt;
|-&lt;br /&gt;
| Units - Types || program, unit, package, library || &lt;br /&gt;
|-&lt;br /&gt;
| Units - Initialization/Finalization || (initialization, finalization) ||&lt;br /&gt;
|-&lt;br /&gt;
| Controls structures || ||&lt;br /&gt;
|-&lt;br /&gt;
| Condition || (if-then-else) ||&lt;br /&gt;
|-&lt;br /&gt;
| Loop with known cycle count || for-to-do ||&lt;br /&gt;
|-&lt;br /&gt;
| Repeat loop || repeat-until ||&lt;br /&gt;
|-&lt;br /&gt;
| While loop || while-do || &lt;br /&gt;
|-&lt;br /&gt;
| Loop exit || break&lt;br /&gt;
|-&lt;br /&gt;
| Loops - Continue || Jump to next iteration (continue) ||&lt;br /&gt;
|-&lt;br /&gt;
| Compound statement || begin-end ||&lt;br /&gt;
|-&lt;br /&gt;
| Multiple branching || case-of ||&lt;br /&gt;
|-&lt;br /&gt;
| Context change || with-do ||&lt;br /&gt;
|-&lt;br /&gt;
| Exceptions || || raise (raise)&lt;br /&gt;
|-&lt;br /&gt;
| Exceptions - handling || try-except ||&lt;br /&gt;
|-&lt;br /&gt;
| Exceptions - Finalization || try-finally ||&lt;br /&gt;
|-&lt;br /&gt;
| Loop with enumerators || for-in-do ||&lt;br /&gt;
|-&lt;br /&gt;
| Generics || Parametric types &lt;br /&gt;
|-&lt;br /&gt;
| Generics - Constraints || Limit generics parameters to class, record, ordinal, float, ...&lt;br /&gt;
|-&lt;br /&gt;
| Translation strings || &#039;&#039;&#039;resourcestring&#039;&#039;&#039; keyword&lt;br /&gt;
|-&lt;br /&gt;
| Multi-threading || ||&lt;br /&gt;
|-&lt;br /&gt;
| Multi-threading - Thread local variables || &#039;&#039;&#039;threadvar&#039;&#039;&#039; keyword&lt;br /&gt;
|-&lt;br /&gt;
| Interfaces || like abstract classes, multiple inheritance ||&lt;br /&gt;
|-&lt;br /&gt;
| Interfaces - Reference counting || ||&lt;br /&gt;
|-&lt;br /&gt;
| Memory manager || Automatic memory management ||&lt;br /&gt;
|-&lt;br /&gt;
| File types || file, text || Obsolete&lt;br /&gt;
|-&lt;br /&gt;
| Direct jump || goto, label keywords || Obsolete&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Category:Main]]&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Main_Page&amp;diff=64</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Main_Page&amp;diff=64"/>
		<updated>2016-02-06T17:51:35Z</updated>

		<summary type="html">&lt;p&gt;Chronos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=About=&lt;br /&gt;
&lt;br /&gt;
LibreDevelop is a initiative to build FOSS alternative to Delphi IDE and compiler.&lt;br /&gt;
&lt;br /&gt;
* [[Motivation]]&lt;br /&gt;
* [[Concept]]&lt;br /&gt;
* [[Implementation]]&lt;br /&gt;
&lt;br /&gt;
=Projects=&lt;br /&gt;
&lt;br /&gt;
* [[Platform]] - generic base application platform &lt;br /&gt;
* [[Studio]] - RAD development IDE&lt;br /&gt;
* [[Universe]] - forge portal for projects&lt;br /&gt;
* [[Compiler]] - Object Pascal/Delphi compatible compiler&lt;br /&gt;
* [[Libraries]] - RTL / VCL similar libraries&lt;br /&gt;
* [[Operating System]] - demonstration OS&lt;br /&gt;
* [[Virtual machine]] - simplified clean design which should run OS and applications&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Project source code is available in SVN repository at URL:&lt;br /&gt;
 http://svn.zdechov.net/svn/libredevelop/&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
&lt;br /&gt;
* [http://www.embarcadero.com/products/delphi Embarcadero Delphi website]&lt;br /&gt;
&lt;br /&gt;
[[Category:Main]]&lt;br /&gt;
&lt;br /&gt;
__NOTOC__&lt;br /&gt;
__NOEDITSECTION__&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Virtual_machine&amp;diff=63</id>
		<title>Virtual machine</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Virtual_machine&amp;diff=63"/>
		<updated>2015-10-25T10:18:11Z</updated>

		<summary type="html">&lt;p&gt;Chronos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Specially designed virtual machine is useful for testing [[compiler]], [[Operating System|operating system]] and it is also necessary for running applications under [[Operating System|operating system]] which need to be CPU architecture independent and should be either interpreted or compiled to native code.&lt;br /&gt;
&lt;br /&gt;
=Objectives=&lt;br /&gt;
&lt;br /&gt;
* Support various data width (bit width 8, 16, 32, 64, ...)&lt;br /&gt;
* Simple to be implemented&lt;br /&gt;
* Effective execution also in interpreting mode&lt;br /&gt;
* Mostly register oriented instructions&lt;br /&gt;
* Stack support&lt;br /&gt;
* Instruction set should be extensible&lt;br /&gt;
&lt;br /&gt;
=Features=&lt;br /&gt;
&lt;br /&gt;
* Instructions&lt;br /&gt;
** Constant loading&lt;br /&gt;
** I/O ports&lt;br /&gt;
** Stack&lt;br /&gt;
** Subroutines&lt;br /&gt;
** Jumps&lt;br /&gt;
** Arithmetic operations&lt;br /&gt;
** Logic bitwise operations&lt;br /&gt;
** Bit manipulation&lt;br /&gt;
** Shifts&lt;br /&gt;
** Special instructions&lt;br /&gt;
* Registers&lt;br /&gt;
* Memory addressing&lt;br /&gt;
* Flags&lt;br /&gt;
* Interrupt system&lt;br /&gt;
&lt;br /&gt;
=Instructions=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! Code !! Short name !! Full name !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0 || NOP || No operation ||&lt;br /&gt;
|-&lt;br /&gt;
| 1 || CP Op1, Op2 || Copy || Copy data from one operand to another&lt;br /&gt;
|-&lt;br /&gt;
| 2 || CMP Op1, Op2 || Compare || Compare two operands&lt;br /&gt;
|-&lt;br /&gt;
| 3 || INC Op1 || Increment || Increment operand by one&lt;br /&gt;
|-&lt;br /&gt;
| 4 || DEC Op1 || Decrement || Decrement operand by one&lt;br /&gt;
|-&lt;br /&gt;
| 5 || IN Op1, (Op2) || Input || Read data to Op1 from I/O port Op2&lt;br /&gt;
|-&lt;br /&gt;
| 6 || OUT (Op1), Op2 || Output || Write data Op2 to I/O port Op1&lt;br /&gt;
|-&lt;br /&gt;
| 7 || HALT || Halt || Stops execution of program&lt;br /&gt;
|-&lt;br /&gt;
| 8 || ADD Op1, Op2 || Addition || Add Op2 to Op1&lt;br /&gt;
|-&lt;br /&gt;
| 9 || SUB Op1, Op2 || Subtraction || Subtract Op2 from Op1&lt;br /&gt;
|-&lt;br /&gt;
| 10 || MUL Op1, Op2 || Multiplication || Multiply Op1 by Op2&lt;br /&gt;
|-&lt;br /&gt;
| 11 || DIV Op1, Op2 || Division || Divide Op1 by Op2&lt;br /&gt;
|-&lt;br /&gt;
| 12 || MOD Op1, Op2 || Modulo || Set Op1 to remainder of division of Op1 by Op2&lt;br /&gt;
|-&lt;br /&gt;
| 13 || AND Op1, Op2 || Logical AND || Set Op1 to logical AND of Op1 and Op2&lt;br /&gt;
|-&lt;br /&gt;
| 14 || OR Op1, Op2 || Logical OR || Set Op1 to logical OR of Op1 and Op2&lt;br /&gt;
|-&lt;br /&gt;
| 15 || XOR Op1, Op2 || Exclusive OR || Set Op1 to logical XOR of Op1 and Op2&lt;br /&gt;
|-&lt;br /&gt;
| 16 || CALL Op1 || Call subroutine || Store return address to stack and jump to given address by Op1&lt;br /&gt;
|-&lt;br /&gt;
| 17 || RET || Return from subroutine || Return to address stored on top of stack&lt;br /&gt;
|-&lt;br /&gt;
| 18 || SHL Op1, Op2 || Shift left || Shift all bits in Op1 to the left by Op2&lt;br /&gt;
|-&lt;br /&gt;
| 19 || SHR Op1, Op2 || Shift right || Shift all bits in Op1 to the right by Op2&lt;br /&gt;
|-&lt;br /&gt;
| 20 || JP Op1 || Jump to absolute address || Set program counter to new absolute address&lt;br /&gt;
|-&lt;br /&gt;
| 21 || JR Op1 || Jump to relative address || Set program counter to new address relative from current&lt;br /&gt;
|-&lt;br /&gt;
| 22 || PUSH Op1 || Push to stack || Put Op1 to the top of stack&lt;br /&gt;
|-&lt;br /&gt;
| 23 || POP Op1 || Pop from stack || Pop Op1 from the top of stack&lt;br /&gt;
|-&lt;br /&gt;
| 24 || BIT Op1, Op2 || Test bit || Test if bit at position Op2 in Op1 is set&lt;br /&gt;
|-&lt;br /&gt;
| 25 || SET Op1, Op2 || Set bit || Set bit at position Op2 in Op1 to 1&lt;br /&gt;
|-&lt;br /&gt;
| 26 || RES Op1, Op2 || Reset bit || Set bit at position Op2 in Op1 to 0&lt;br /&gt;
|-&lt;br /&gt;
| 27 || MR Op1, [Op2] || Memory read || Read data Op1 from memory address Op1&lt;br /&gt;
|-&lt;br /&gt;
| 28 || MW [Op1], Op2 || Memory write || Write data Op2 to memory address Op1&lt;br /&gt;
|-&lt;br /&gt;
| 29 || SKIP Op1 || Skip next instruction || Skip next instruction if Op1 is non zero&lt;br /&gt;
|-&lt;br /&gt;
| 30 || SR Op1, {Op2} || Special register read || Read data Op1 from special register Op1&lt;br /&gt;
|-&lt;br /&gt;
| 31 || SW {Op1}, Op2 || Special register write || Write data Op2 to special register Op1&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Operands=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
!  !! colspan=&amp;quot;6&amp;quot;|Bit width&lt;br /&gt;
|-&lt;br /&gt;
! Register !! Native !! 8-bit !! 16-bit !! 32-bit !! 64-bit !! 128-bit&lt;br /&gt;
|-&lt;br /&gt;
| Constant || 0 || 16 || 32 || 48 || 64 || 80&lt;br /&gt;
|-&lt;br /&gt;
| R1 || 1 || 17 || 33 || 49 || 65 || 81&lt;br /&gt;
|-&lt;br /&gt;
| R2 || 2 || 18 || 34 || 50 || 66 || 82&lt;br /&gt;
|-&lt;br /&gt;
| R3 || 3 || 19 || 35 || 51 || 67 || 83&lt;br /&gt;
|-&lt;br /&gt;
| R4 || 4 || 20 || 36 || 52 || 68 || 84&lt;br /&gt;
|-&lt;br /&gt;
| R5 || 5 || 21 || 37 || 53 || 69 || 85&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;7&amp;quot; | ...&lt;br /&gt;
|-&lt;br /&gt;
| R14 || 14 || 30 || 46 || 62 || 78 || 94&lt;br /&gt;
|-&lt;br /&gt;
| R15 || 15 || 31 || 47 || 63 || 79 || 95&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Special registers=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! Code !! Short name !! Full name !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0 || PC || Program Counter || Holds pointer to current program execution point&lt;br /&gt;
|-&lt;br /&gt;
| 1 || SP || Stack Pointer || Memory address to top of the stack&lt;br /&gt;
|-&lt;br /&gt;
| 2 || DW || Data width (read only) || Native data width (0 - dynamic, 1 - 8-bit, 2 - 16-bit, 3 - 32-bit, 4 - 64-bit, 5 - 128-bit)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Category:Projects]]&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Virtual_machine&amp;diff=62</id>
		<title>Virtual machine</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Virtual_machine&amp;diff=62"/>
		<updated>2015-10-25T10:17:25Z</updated>

		<summary type="html">&lt;p&gt;Chronos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Specially designed virtual machine is useful for testing [[compiler]], [[Operating System|operating system]] and it is also necessary for running applications under [[Operating System|operating system]] which need to be CPU architecture independent and should be either interpreted or compiled to native code.&lt;br /&gt;
&lt;br /&gt;
=Objectives=&lt;br /&gt;
&lt;br /&gt;
* Support various data width (bit width 8, 16, 32, 64, ...)&lt;br /&gt;
* Simple to be implemented&lt;br /&gt;
* Effective execution also in interpreting mode&lt;br /&gt;
* Mostly register oriented instructions&lt;br /&gt;
* Stack support&lt;br /&gt;
* Instruction set should be extensible&lt;br /&gt;
&lt;br /&gt;
=Features=&lt;br /&gt;
&lt;br /&gt;
* Instructions&lt;br /&gt;
** Constant loading&lt;br /&gt;
** I/O ports&lt;br /&gt;
** Stack&lt;br /&gt;
** Subroutines&lt;br /&gt;
** Jumps&lt;br /&gt;
** Arithmetic operations&lt;br /&gt;
** Logic bitwise operations&lt;br /&gt;
** Bit manipulation&lt;br /&gt;
** Shifts&lt;br /&gt;
** Special instructions&lt;br /&gt;
* Registers&lt;br /&gt;
* Memory addressing&lt;br /&gt;
* Flags&lt;br /&gt;
* Interrupt system&lt;br /&gt;
&lt;br /&gt;
=Instructions=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! Code !! Short name !! Full name !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0 || NOP || No operation ||&lt;br /&gt;
|-&lt;br /&gt;
| 1 || CP Op1, Op2 || Copy || Copy data from one operand to another&lt;br /&gt;
|-&lt;br /&gt;
| 2 || CMP Op1, Op2 || Compare || Compare two operands&lt;br /&gt;
|-&lt;br /&gt;
| 3 || INC Op1 || Increment || Increment operand by one&lt;br /&gt;
|-&lt;br /&gt;
| 4 || DEC Op1 || Decrement || Decrement operand by one&lt;br /&gt;
|-&lt;br /&gt;
| 5 || IN Op1, (Op2) || Input || Read data to Op1 from I/O port Op2&lt;br /&gt;
|-&lt;br /&gt;
| 6 || OUT (Op1), Op2 || Output || Write data Op2 to I/O port Op1&lt;br /&gt;
|-&lt;br /&gt;
| 7 || HALT || Halt || Stops execution of program&lt;br /&gt;
|-&lt;br /&gt;
| 8 || ADD Op1, Op2 || Addition || Add Op2 to Op1&lt;br /&gt;
|-&lt;br /&gt;
| 9 || SUB Op1, Op2 || Subtraction || Subtract Op2 from Op1&lt;br /&gt;
|-&lt;br /&gt;
| 10 || MUL Op1, Op2 || Multiplication || Multiply Op1 by Op2&lt;br /&gt;
|-&lt;br /&gt;
| 11 || DIV Op1, Op2 || Division || Divide Op1 by Op2&lt;br /&gt;
|-&lt;br /&gt;
| 12 || MOD Op1, Op2 || Modulo || Set Op1 to remainder of division of Op1 by Op2&lt;br /&gt;
|-&lt;br /&gt;
| 13 || AND Op1, Op2 || Logical AND || Set Op1 to logical AND of Op1 and Op2&lt;br /&gt;
|-&lt;br /&gt;
| 14 || OR Op1, Op2 || Logical OR || Set Op1 to logical OR of Op1 and Op2&lt;br /&gt;
|-&lt;br /&gt;
| 15 || XOR Op1, Op2 || Exclusive OR || Set Op1 to logical XOR of Op1 and Op2&lt;br /&gt;
|-&lt;br /&gt;
| 16 || CALL Op1 || Call subroutine || Store return address to stack and jump to given address by Op1&lt;br /&gt;
|-&lt;br /&gt;
| 17 || RET || Return from subroutine || Return to address stored on top of stack&lt;br /&gt;
|-&lt;br /&gt;
| 18 || SHL Op1 || Shift left || Shift all bits in Op1 to the left&lt;br /&gt;
|-&lt;br /&gt;
| 19 || SHR Op1 || Shift right || Shift all bits in Op1 to the right&lt;br /&gt;
|-&lt;br /&gt;
| 20 || JP Op1 || Jump to absolute address || Set program counter to new absolute address&lt;br /&gt;
|-&lt;br /&gt;
| 21 || JR Op1 || Jump to relative address || Set program counter to new address relative from current&lt;br /&gt;
|-&lt;br /&gt;
| 22 || PUSH Op1 || Push to stack || Put Op1 to the top of stack&lt;br /&gt;
|-&lt;br /&gt;
| 23 || POP Op1 || Pop from stack || Pop Op1 from the top of stack&lt;br /&gt;
|-&lt;br /&gt;
| 24 || BIT Op1, Op2 || Test bit || Test if bit at position Op2 in Op1 is set&lt;br /&gt;
|-&lt;br /&gt;
| 25 || SET Op1, Op2 || Set bit || Set bit at position Op2 in Op1 to 1&lt;br /&gt;
|-&lt;br /&gt;
| 26 || RES Op1, Op2 || Reset bit || Set bit at position Op2 in Op1 to 0&lt;br /&gt;
|-&lt;br /&gt;
| 27 || MR Op1, [Op2] || Memory read || Read data Op1 from memory address Op1&lt;br /&gt;
|-&lt;br /&gt;
| 28 || MW [Op1], Op2 || Memory write || Write data Op2 to memory address Op1&lt;br /&gt;
|-&lt;br /&gt;
| 29 || SKIP Op1 || Skip next instruction || Skip next instruction if Op1 is non zero&lt;br /&gt;
|-&lt;br /&gt;
| 30 || SR Op1, {Op2} || Special register read || Read data Op1 from special register Op1&lt;br /&gt;
|-&lt;br /&gt;
| 31 || SW {Op1}, Op2 || Special register write || Write data Op2 to special register Op1&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Operands=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
!  !! colspan=&amp;quot;6&amp;quot;|Bit width&lt;br /&gt;
|-&lt;br /&gt;
! Register !! Native !! 8-bit !! 16-bit !! 32-bit !! 64-bit !! 128-bit&lt;br /&gt;
|-&lt;br /&gt;
| Constant || 0 || 16 || 32 || 48 || 64 || 80&lt;br /&gt;
|-&lt;br /&gt;
| R1 || 1 || 17 || 33 || 49 || 65 || 81&lt;br /&gt;
|-&lt;br /&gt;
| R2 || 2 || 18 || 34 || 50 || 66 || 82&lt;br /&gt;
|-&lt;br /&gt;
| R3 || 3 || 19 || 35 || 51 || 67 || 83&lt;br /&gt;
|-&lt;br /&gt;
| R4 || 4 || 20 || 36 || 52 || 68 || 84&lt;br /&gt;
|-&lt;br /&gt;
| R5 || 5 || 21 || 37 || 53 || 69 || 85&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;7&amp;quot; | ...&lt;br /&gt;
|-&lt;br /&gt;
| R14 || 14 || 30 || 46 || 62 || 78 || 94&lt;br /&gt;
|-&lt;br /&gt;
| R15 || 15 || 31 || 47 || 63 || 79 || 95&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Special registers=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! Code !! Short name !! Full name !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0 || PC || Program Counter || Holds pointer to current program execution point&lt;br /&gt;
|-&lt;br /&gt;
| 1 || SP || Stack Pointer || Memory address to top of the stack&lt;br /&gt;
|-&lt;br /&gt;
| 2 || DW || Data width (read only) || Native data width (0 - dynamic, 1 - 8-bit, 2 - 16-bit, 3 - 32-bit, 4 - 64-bit, 5 - 128-bit)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Category:Projects]]&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Virtual_machine&amp;diff=61</id>
		<title>Virtual machine</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Virtual_machine&amp;diff=61"/>
		<updated>2015-10-25T10:16:40Z</updated>

		<summary type="html">&lt;p&gt;Chronos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Specially designed virtual machine is useful for testing [[compiler]], [[Operating System|operating system]] and it is also necessary for running applications under [[Operating System|operating system]] which need to be CPU architecture independent and should be either interpreted or compiled to native code.&lt;br /&gt;
&lt;br /&gt;
=Objectives=&lt;br /&gt;
&lt;br /&gt;
* Support various data width (bit width 8, 16, 32, 64, ...)&lt;br /&gt;
* Simple to be implemented&lt;br /&gt;
* Effective execution also in interpreting mode&lt;br /&gt;
* Mostly register oriented instructions&lt;br /&gt;
* Stack support&lt;br /&gt;
* Instruction set should be extensible&lt;br /&gt;
&lt;br /&gt;
=Features=&lt;br /&gt;
&lt;br /&gt;
* Instructions&lt;br /&gt;
** Constant loading&lt;br /&gt;
** I/O ports&lt;br /&gt;
** Stack&lt;br /&gt;
** Subroutines&lt;br /&gt;
** Jumps&lt;br /&gt;
** Arithmetic operations&lt;br /&gt;
** Logic bitwise operations&lt;br /&gt;
** Bit manipulation&lt;br /&gt;
** Shifts&lt;br /&gt;
** Special instructions&lt;br /&gt;
* Registers&lt;br /&gt;
* Memory addressing&lt;br /&gt;
* Flags&lt;br /&gt;
* Interrupt system&lt;br /&gt;
&lt;br /&gt;
=Instructions=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! Code !! Short name !! Full name !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0 || NOP || No operation ||&lt;br /&gt;
|-&lt;br /&gt;
| 1 || CP Op1, Op2 || Copy || Copy data from one operand to another&lt;br /&gt;
|-&lt;br /&gt;
| 2 || CMP Op1, Op2 || Compare || Compare two operands&lt;br /&gt;
|-&lt;br /&gt;
| 3 || INC Op1 || Increment || Increment operand by one&lt;br /&gt;
|-&lt;br /&gt;
| 4 || DEC Op1 || Decrement || Decrement operand by one&lt;br /&gt;
|-&lt;br /&gt;
| 5 || IN Op1, (Op2) || Input || Read data to Op1 from I/O port Op2&lt;br /&gt;
|-&lt;br /&gt;
| 6 || OUT (Op1), Op2 || Output || Write data Op2 to I/O port Op1&lt;br /&gt;
|-&lt;br /&gt;
| 7 || HALT || Halt || Stops execution of program&lt;br /&gt;
|-&lt;br /&gt;
| 8 || ADD Op1, Op2 || Addition || Add Op2 to Op1&lt;br /&gt;
|-&lt;br /&gt;
| 9 || SUB Op1, Op2 || Subtraction || Subtract Op2 from Op1&lt;br /&gt;
|-&lt;br /&gt;
| 10 || MUL Op1, Op2 || Multiplication || Multiply Op1 by Op2&lt;br /&gt;
|-&lt;br /&gt;
| 11 || DIV Op1, Op2 || Division || Divide Op1 by Op2&lt;br /&gt;
|-&lt;br /&gt;
| 12 || MOD Op1, Op2 || Modulo || Set Op1 to remainder of division of Op1 by Op2&lt;br /&gt;
|-&lt;br /&gt;
| 13 || AND Op1, Op2 || Logical AND || Set Op1 to logical AND of Op1 and Op2&lt;br /&gt;
|-&lt;br /&gt;
| 14 || OR Op1, Op2 || Logical OR || Set Op1 to logical OR of Op1 and Op2&lt;br /&gt;
|-&lt;br /&gt;
| 15 || XOR Op1, Op2 || Exclusive OR || Set Op1 to logical XOR of Op1 and Op2&lt;br /&gt;
|-&lt;br /&gt;
| 16 || CALL Op1 || Call subroutine || Store return address to stack and jump to given address by Op1&lt;br /&gt;
|-&lt;br /&gt;
| 17 || RET || Return from subroutine || Return to address stored on top of stack&lt;br /&gt;
|-&lt;br /&gt;
| 18 || SHL Op1 || Shift left || Shift all bits in Op1 to the left&lt;br /&gt;
|-&lt;br /&gt;
| 19 || SHR Op1 || Shift right || Shift all bits in Op1 to the right&lt;br /&gt;
|-&lt;br /&gt;
| 20 || JP Op1 || Jump to absolute address || Set program counter to new absolute address&lt;br /&gt;
|-&lt;br /&gt;
| 21 || JR Op1 || Jump to relative address || Set program counter to new address relative from current&lt;br /&gt;
|-&lt;br /&gt;
| 22 || PUSH Op1 || Push to stack || Put Op1 to the top of stack&lt;br /&gt;
|-&lt;br /&gt;
| 23 || POP Op1 || Pop from stack || Pop Op1 from the top of stack&lt;br /&gt;
|-&lt;br /&gt;
| 24 || BIT Op1, Op2 || Test bit || Test if bit at position Op2 in Op1 is set&lt;br /&gt;
|-&lt;br /&gt;
| 25 || SET Op1, Op2 || Set bit || Set bit at position Op2 in Op1 to 1&lt;br /&gt;
|-&lt;br /&gt;
| 26 || RES Op1, Op2 || Reset bit || Set bit at position Op2 in Op1 to 0&lt;br /&gt;
|-&lt;br /&gt;
| 27 || MR Op1, [Op2] || Memory read || Read data Op1 from memory address Op1&lt;br /&gt;
|-&lt;br /&gt;
| 28 || MW [Op1], Op2 || Memory write || Write data Op2 to memory address Op1&lt;br /&gt;
|-&lt;br /&gt;
| 29 || SKIP Op1 || Skip next instruction || Skip next instruction if Op1 is non zero&lt;br /&gt;
|-&lt;br /&gt;
| 27 || SR Op1, {Op2} || Special register read || Read data Op1 from special register Op1&lt;br /&gt;
|-&lt;br /&gt;
| 28 || SW {Op1}, Op2 || Special register write || Write data Op2 to special register Op1&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Operands=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
!  !! colspan=&amp;quot;6&amp;quot;|Bit width&lt;br /&gt;
|-&lt;br /&gt;
! Register !! Native !! 8-bit !! 16-bit !! 32-bit !! 64-bit !! 128-bit&lt;br /&gt;
|-&lt;br /&gt;
| Constant || 0 || 16 || 32 || 48 || 64 || 80&lt;br /&gt;
|-&lt;br /&gt;
| R1 || 1 || 17 || 33 || 49 || 65 || 81&lt;br /&gt;
|-&lt;br /&gt;
| R2 || 2 || 18 || 34 || 50 || 66 || 82&lt;br /&gt;
|-&lt;br /&gt;
| R3 || 3 || 19 || 35 || 51 || 67 || 83&lt;br /&gt;
|-&lt;br /&gt;
| R4 || 4 || 20 || 36 || 52 || 68 || 84&lt;br /&gt;
|-&lt;br /&gt;
| R5 || 5 || 21 || 37 || 53 || 69 || 85&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;7&amp;quot; | ...&lt;br /&gt;
|-&lt;br /&gt;
| R14 || 14 || 30 || 46 || 62 || 78 || 94&lt;br /&gt;
|-&lt;br /&gt;
| R15 || 15 || 31 || 47 || 63 || 79 || 95&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Special registers=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! Code !! Short name !! Full name !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0 || PC || Program Counter || Holds pointer to current program execution point&lt;br /&gt;
|-&lt;br /&gt;
| 1 || SP || Stack Pointer || Memory address to top of the stack&lt;br /&gt;
|-&lt;br /&gt;
| 2 || DW || Data width (read only) || Native data width (0 - dynamic, 1 - 8-bit, 2 - 16-bit, 3 - 32-bit, 4 - 64-bit, 5 - 128-bit)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Category:Projects]]&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Virtual_machine&amp;diff=60</id>
		<title>Virtual machine</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Virtual_machine&amp;diff=60"/>
		<updated>2015-10-25T10:15:14Z</updated>

		<summary type="html">&lt;p&gt;Chronos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Specially designed virtual machine is useful for testing [[compiler]], [[Operating System|operating system]] and it is also necessary for running applications under [[Operating System|operating system]] which need to be CPU architecture independent and should be either interpreted or compiled to native code.&lt;br /&gt;
&lt;br /&gt;
=Objectives=&lt;br /&gt;
&lt;br /&gt;
* Support various data width (bit width 8, 16, 32, 64, ...)&lt;br /&gt;
* Simple to be implemented&lt;br /&gt;
* Effective execution also in interpreting mode&lt;br /&gt;
* Mostly register oriented instructions&lt;br /&gt;
* Stack support&lt;br /&gt;
* Instruction set should be extensible&lt;br /&gt;
&lt;br /&gt;
=Features=&lt;br /&gt;
&lt;br /&gt;
* Instructions&lt;br /&gt;
** Constant loading&lt;br /&gt;
** I/O ports&lt;br /&gt;
** Stack&lt;br /&gt;
** Subroutines&lt;br /&gt;
** Jumps&lt;br /&gt;
** Arithmetic operations&lt;br /&gt;
** Logic bitwise operations&lt;br /&gt;
** Bit manipulation&lt;br /&gt;
** Shifts&lt;br /&gt;
** Special instructions&lt;br /&gt;
* Registers&lt;br /&gt;
* Memory addressing&lt;br /&gt;
* Flags&lt;br /&gt;
* Interrupt system&lt;br /&gt;
&lt;br /&gt;
=Instructions=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! Code !! Short name !! Full name !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0 || NOP || No operation ||&lt;br /&gt;
|-&lt;br /&gt;
| 1 || CP Op1, Op2 || Copy || Copy data from one operand to another&lt;br /&gt;
|-&lt;br /&gt;
| 2 || CMP Op1, Op2 || Compare || Compare two operands&lt;br /&gt;
|-&lt;br /&gt;
| 3 || INC Op1 || Increment || Increment operand by one&lt;br /&gt;
|-&lt;br /&gt;
| 4 || DEC Op1 || Decrement || Decrement operand by one&lt;br /&gt;
|-&lt;br /&gt;
| 5 || IN Op1, (Op2) || Input || Read data to Op1 from I/O port Op2&lt;br /&gt;
|-&lt;br /&gt;
| 6 || OUT (Op1), Op2 || Output || Write data Op2 to I/O port Op1&lt;br /&gt;
|-&lt;br /&gt;
| 7 || HALT || Halt || Stops execution of program&lt;br /&gt;
|-&lt;br /&gt;
| 8 || ADD Op1, Op2 || Addition || Add Op2 to Op1&lt;br /&gt;
|-&lt;br /&gt;
| 9 || SUB Op1, Op2 || Subtraction || Subtract Op2 from Op1&lt;br /&gt;
|-&lt;br /&gt;
| 10 || MUL Op1, Op2 || Multiplication || Multiply Op1 by Op2&lt;br /&gt;
|-&lt;br /&gt;
| 11 || DIV Op1, Op2 || Division || Divide Op1 by Op2&lt;br /&gt;
|-&lt;br /&gt;
| 12 || MOD Op1, Op2 || Modulo || Set Op1 to remainder of division of Op1 by Op2&lt;br /&gt;
|-&lt;br /&gt;
| 13 || AND Op1, Op2 || Logical AND || Set Op1 to logical AND of Op1 and Op2&lt;br /&gt;
|-&lt;br /&gt;
| 14 || OR Op1, Op2 || Logical OR || Set Op1 to logical OR of Op1 and Op2&lt;br /&gt;
|-&lt;br /&gt;
| 15 || XOR Op1, Op2 || Exclusive OR || Set Op1 to logical XOR of Op1 and Op2&lt;br /&gt;
|-&lt;br /&gt;
| 16 || CALL Op1 || Call subroutine || Store return address to stack and jump to given address by Op1&lt;br /&gt;
|-&lt;br /&gt;
| 17 || RET || Return from subroutine || Return to address stored on top of stack&lt;br /&gt;
|-&lt;br /&gt;
| 18 || SHL Op1 || Shift left || Shift all bits in Op1 to the left&lt;br /&gt;
|-&lt;br /&gt;
| 19 || SHR Op1 || Shift right || Shift all bits in Op1 to the right&lt;br /&gt;
|-&lt;br /&gt;
| 20 || JP Op1 || Jump to absolute address || Set program counter to new absolute address&lt;br /&gt;
|-&lt;br /&gt;
| 21 || JR Op1 || Jump to relative address || Set program counter to new address relative from current&lt;br /&gt;
|-&lt;br /&gt;
| 22 || PUSH Op1 || Push to stack || Put Op1 to the top of stack&lt;br /&gt;
|-&lt;br /&gt;
| 23 || POP Op1 || Pop from stack || Pop Op1 from the top of stack&lt;br /&gt;
|-&lt;br /&gt;
| 24 || BIT Op1, Op2 || Test bit || Test if bit at position Op2 in Op1 is set&lt;br /&gt;
|-&lt;br /&gt;
| 25 || SET Op1, Op2 || Set bit || Set bit at position Op2 in Op1 to 1&lt;br /&gt;
|-&lt;br /&gt;
| 26 || RES Op1, Op2 || Reset bit || Set bit at position Op2 in Op1 to 0&lt;br /&gt;
|-&lt;br /&gt;
| 27 || MR Op1, [Op2] || Memory read || Read data Op1 from memory address Op1&lt;br /&gt;
|-&lt;br /&gt;
| 28 || MW [Op1], Op2 || Memory write || Write data Op2 to memory address Op1&lt;br /&gt;
|-&lt;br /&gt;
| 29 || SKIP Op1 || Skip next instruction || Skip next instruction if Op1 is non zero&lt;br /&gt;
|-&lt;br /&gt;
| 27 || SR Op1, {Op2} || Special register read || Read data Op1 from special register Op1&lt;br /&gt;
|-&lt;br /&gt;
| 28 || SW {Op1}, Op2 || Special register write || Write data Op2 to special register Op1&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Operands=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
!  !! colspan=&amp;quot;6&amp;quot;|Bit width&lt;br /&gt;
|-&lt;br /&gt;
! Register !! Native !! 8-bit !! 16-bit !! 32-bit !! 64-bit !! 128-bit&lt;br /&gt;
|-&lt;br /&gt;
| Constant || 0 || 16 || 32 || 48 || 64 || 80&lt;br /&gt;
|-&lt;br /&gt;
| R1 || 1 || 17 || 33 || 49 || 65 || 81&lt;br /&gt;
|-&lt;br /&gt;
| R2 || 2 || 18 || 34 || 50 || 66 || 82&lt;br /&gt;
|-&lt;br /&gt;
| R3 || 3 || 19 || 35 || 51 || 67 || 83&lt;br /&gt;
|-&lt;br /&gt;
| R4 || 4 || 20 || 36 || 52 || 68 || 84&lt;br /&gt;
|-&lt;br /&gt;
| R5 || 5 || 21 || 37 || 53 || 69 || 85&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;7&amp;quot; | ...&lt;br /&gt;
|-&lt;br /&gt;
| R14 || 14 || 30 || 46 || 62 || 78 || 94&lt;br /&gt;
|-&lt;br /&gt;
| R15 || 15 || 31 || 47 || 63 || 79 || 95&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Special registers=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! Code !! Short name !! Full name !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0 !! PC !! Program Counter !! Holds pointer to current program execution point&lt;br /&gt;
|-&lt;br /&gt;
| 1 !! SP !! Stack Pointer !! Memory address to top of the stack&lt;br /&gt;
|-&lt;br /&gt;
| 2 !! DW !! Data width !! Native data width (0 - dynamic, 1 - 8-bit, 2 - 16-bit, 3 - 32-bit, 4 - 64-bit, 5 - 128-bit)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Category:Projects]]&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Virtual_machine&amp;diff=59</id>
		<title>Virtual machine</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Virtual_machine&amp;diff=59"/>
		<updated>2015-10-25T10:08:48Z</updated>

		<summary type="html">&lt;p&gt;Chronos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Specially designed virtual machine is useful for testing [[compiler]], [[Operating System|operating system]] and it is also necessary for running applications under [[Operating System|operating system]] which need to be CPU architecture independent and should be either interpreted or compiled to native code.&lt;br /&gt;
&lt;br /&gt;
=Objectives=&lt;br /&gt;
&lt;br /&gt;
* Support various data width (bit width 8, 16, 32, 64, ...)&lt;br /&gt;
* Simple to be implemented&lt;br /&gt;
* Effective execution also in interpreting mode&lt;br /&gt;
* Mostly register oriented instructions&lt;br /&gt;
* Stack support&lt;br /&gt;
* Instruction set should be extensible&lt;br /&gt;
&lt;br /&gt;
=Features=&lt;br /&gt;
&lt;br /&gt;
* Instructions&lt;br /&gt;
** Constant loading&lt;br /&gt;
** I/O ports&lt;br /&gt;
** Stack&lt;br /&gt;
** Subroutines&lt;br /&gt;
** Jumps&lt;br /&gt;
** Arithmetic operations&lt;br /&gt;
** Logic bitwise operations&lt;br /&gt;
** Bit manipulation&lt;br /&gt;
** Shifts&lt;br /&gt;
** Special instructions&lt;br /&gt;
* Registers&lt;br /&gt;
* Memory addressing&lt;br /&gt;
* Flags&lt;br /&gt;
* Interrupt system&lt;br /&gt;
&lt;br /&gt;
=Instructions=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! Code !! Short name !! Full name !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0 || NOP || No operation ||&lt;br /&gt;
|-&lt;br /&gt;
| 1 || CP Op1, Op2 || Copy || Copy data from one operand to another&lt;br /&gt;
|-&lt;br /&gt;
| 2 || CMP Op1, Op2 || Compare || Compare two operands&lt;br /&gt;
|-&lt;br /&gt;
| 3 || INC Op1 || Increment || Increment operand by one&lt;br /&gt;
|-&lt;br /&gt;
| 4 || DEC Op1 || Decrement || Decrement operand by one&lt;br /&gt;
|-&lt;br /&gt;
| 5 || IN Op1, (Op2) || Input || Read data to Op1 from I/O port Op2&lt;br /&gt;
|-&lt;br /&gt;
| 6 || OUT (Op1), Op2 || Output || Write data Op2 to I/O port Op1&lt;br /&gt;
|-&lt;br /&gt;
| 7 || HALT || Halt || Stops execution of program&lt;br /&gt;
|-&lt;br /&gt;
| 8 || ADD Op1, Op2 || Addition || Add Op2 to Op1&lt;br /&gt;
|-&lt;br /&gt;
| 9 || SUB Op1, Op2 || Subtraction || Subtract Op2 from Op1&lt;br /&gt;
|-&lt;br /&gt;
| 10 || MUL Op1, Op2 || Multiplication || Multiply Op1 by Op2&lt;br /&gt;
|-&lt;br /&gt;
| 11 || DIV Op1, Op2 || Division || Divide Op1 by Op2&lt;br /&gt;
|-&lt;br /&gt;
| 12 || MOD Op1, Op2 || Modulo || Set Op1 to remainder of division of Op1 by Op2&lt;br /&gt;
|-&lt;br /&gt;
| 13 || AND Op1, Op2 || Logical AND || Set Op1 to logical AND of Op1 and Op2&lt;br /&gt;
|-&lt;br /&gt;
| 14 || OR Op1, Op2 || Logical OR || Set Op1 to logical OR of Op1 and Op2&lt;br /&gt;
|-&lt;br /&gt;
| 15 || XOR Op1, Op2 || Exclusive OR || Set Op1 to logical XOR of Op1 and Op2&lt;br /&gt;
|-&lt;br /&gt;
| 16 || CALL Op1 || Call subroutine || Store return address to stack and jump to given address by Op1&lt;br /&gt;
|-&lt;br /&gt;
| 17 || RET || Return from subroutine || Return to address stored on top of stack&lt;br /&gt;
|-&lt;br /&gt;
| 18 || SHL Op1 || Shift left || Shift all bits in Op1 to the left&lt;br /&gt;
|-&lt;br /&gt;
| 19 || SHR Op1 || Shift right || Shift all bits in Op1 to the right&lt;br /&gt;
|-&lt;br /&gt;
| 20 || JP Op1 || Jump to absolute address || Set program counter to new absolute address&lt;br /&gt;
|-&lt;br /&gt;
| 21 || JR Op1 || Jump to relative address || Set program counter to new address relative from current&lt;br /&gt;
|-&lt;br /&gt;
| 22 || PUSH Op1 || Push to stack || Put Op1 to the top of stack&lt;br /&gt;
|-&lt;br /&gt;
| 23 || POP Op1 || Pop from stack || Pop Op1 from the top of stack&lt;br /&gt;
|-&lt;br /&gt;
| 24 || BIT Op1, Op2 || Test bit || Test if bit at position Op2 in Op1 is set&lt;br /&gt;
|-&lt;br /&gt;
| 25 || SET Op1, Op2 || Set bit || Set bit at position Op2 in Op1 to 1&lt;br /&gt;
|-&lt;br /&gt;
| 26 || RES Op1, Op2 || Reset bit || Set bit at position Op2 in Op1 to 0&lt;br /&gt;
|-&lt;br /&gt;
| 27 || MR Op1, [Op2] || Memory read || Read data Op1 from memory address Op1&lt;br /&gt;
|-&lt;br /&gt;
| 28 || MW [Op1], Op2 || Memory write || Write data Op2 to memory address Op1&lt;br /&gt;
|-&lt;br /&gt;
| 29 || SKIP Op1 || Skip next instruction || Skip next instruction if Op1 is non zero&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Operands=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
!  !! colspan=&amp;quot;6&amp;quot;|Bit width&lt;br /&gt;
|-&lt;br /&gt;
! Register !! Native !! 8-bit !! 16-bit !! 32-bit !! 64-bit !! 128-bit&lt;br /&gt;
|-&lt;br /&gt;
| Constant || 0 || 16 || 32 || 48 || 64 || 80&lt;br /&gt;
|-&lt;br /&gt;
| R1 || 1 || 17 || 33 || 49 || 65 || 81&lt;br /&gt;
|-&lt;br /&gt;
| R2 || 2 || 18 || 34 || 50 || 66 || 82&lt;br /&gt;
|-&lt;br /&gt;
| R3 || 3 || 19 || 35 || 51 || 67 || 83&lt;br /&gt;
|-&lt;br /&gt;
| R4 || 4 || 20 || 36 || 52 || 68 || 84&lt;br /&gt;
|-&lt;br /&gt;
| R5 || 5 || 21 || 37 || 53 || 69 || 85&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;7&amp;quot; | ...&lt;br /&gt;
|-&lt;br /&gt;
| R14 || 14 || 30 || 46 || 62 || 78 || 94&lt;br /&gt;
|-&lt;br /&gt;
| R15 || 15 || 31 || 47 || 63 || 79 || 95&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Category:Projects]]&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Virtual_machine&amp;diff=58</id>
		<title>Virtual machine</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Virtual_machine&amp;diff=58"/>
		<updated>2015-10-25T10:08:38Z</updated>

		<summary type="html">&lt;p&gt;Chronos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Specially designed virtual machine is useful for testing [[compiler]], [[Operating System|operating system]] and it is also necessary for running applications under [[Operating System|operating system]] which need to be CPU architecture independent and should be either interpreted or compiled to native code.&lt;br /&gt;
&lt;br /&gt;
=Objectives=&lt;br /&gt;
&lt;br /&gt;
* Support various data width (bit width 8, 16, 32, 64, ...)&lt;br /&gt;
* Simple to be implemented&lt;br /&gt;
* Effective execution also in interpreting mode&lt;br /&gt;
* Mostly register oriented instructions&lt;br /&gt;
* Stack support&lt;br /&gt;
* Instruction set should be extensible&lt;br /&gt;
&lt;br /&gt;
=Features&lt;br /&gt;
&lt;br /&gt;
* Instructions&lt;br /&gt;
** Constant loading&lt;br /&gt;
** I/O ports&lt;br /&gt;
** Stack&lt;br /&gt;
** Subroutines&lt;br /&gt;
** Jumps&lt;br /&gt;
** Arithmetic operations&lt;br /&gt;
** Logic bitwise operations&lt;br /&gt;
** Bit manipulation&lt;br /&gt;
** Shifts&lt;br /&gt;
** Special instructions&lt;br /&gt;
* Registers&lt;br /&gt;
* Memory addressing&lt;br /&gt;
* Flags&lt;br /&gt;
* Interrupt system&lt;br /&gt;
&lt;br /&gt;
=Instructions=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! Code !! Short name !! Full name !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0 || NOP || No operation ||&lt;br /&gt;
|-&lt;br /&gt;
| 1 || CP Op1, Op2 || Copy || Copy data from one operand to another&lt;br /&gt;
|-&lt;br /&gt;
| 2 || CMP Op1, Op2 || Compare || Compare two operands&lt;br /&gt;
|-&lt;br /&gt;
| 3 || INC Op1 || Increment || Increment operand by one&lt;br /&gt;
|-&lt;br /&gt;
| 4 || DEC Op1 || Decrement || Decrement operand by one&lt;br /&gt;
|-&lt;br /&gt;
| 5 || IN Op1, (Op2) || Input || Read data to Op1 from I/O port Op2&lt;br /&gt;
|-&lt;br /&gt;
| 6 || OUT (Op1), Op2 || Output || Write data Op2 to I/O port Op1&lt;br /&gt;
|-&lt;br /&gt;
| 7 || HALT || Halt || Stops execution of program&lt;br /&gt;
|-&lt;br /&gt;
| 8 || ADD Op1, Op2 || Addition || Add Op2 to Op1&lt;br /&gt;
|-&lt;br /&gt;
| 9 || SUB Op1, Op2 || Subtraction || Subtract Op2 from Op1&lt;br /&gt;
|-&lt;br /&gt;
| 10 || MUL Op1, Op2 || Multiplication || Multiply Op1 by Op2&lt;br /&gt;
|-&lt;br /&gt;
| 11 || DIV Op1, Op2 || Division || Divide Op1 by Op2&lt;br /&gt;
|-&lt;br /&gt;
| 12 || MOD Op1, Op2 || Modulo || Set Op1 to remainder of division of Op1 by Op2&lt;br /&gt;
|-&lt;br /&gt;
| 13 || AND Op1, Op2 || Logical AND || Set Op1 to logical AND of Op1 and Op2&lt;br /&gt;
|-&lt;br /&gt;
| 14 || OR Op1, Op2 || Logical OR || Set Op1 to logical OR of Op1 and Op2&lt;br /&gt;
|-&lt;br /&gt;
| 15 || XOR Op1, Op2 || Exclusive OR || Set Op1 to logical XOR of Op1 and Op2&lt;br /&gt;
|-&lt;br /&gt;
| 16 || CALL Op1 || Call subroutine || Store return address to stack and jump to given address by Op1&lt;br /&gt;
|-&lt;br /&gt;
| 17 || RET || Return from subroutine || Return to address stored on top of stack&lt;br /&gt;
|-&lt;br /&gt;
| 18 || SHL Op1 || Shift left || Shift all bits in Op1 to the left&lt;br /&gt;
|-&lt;br /&gt;
| 19 || SHR Op1 || Shift right || Shift all bits in Op1 to the right&lt;br /&gt;
|-&lt;br /&gt;
| 20 || JP Op1 || Jump to absolute address || Set program counter to new absolute address&lt;br /&gt;
|-&lt;br /&gt;
| 21 || JR Op1 || Jump to relative address || Set program counter to new address relative from current&lt;br /&gt;
|-&lt;br /&gt;
| 22 || PUSH Op1 || Push to stack || Put Op1 to the top of stack&lt;br /&gt;
|-&lt;br /&gt;
| 23 || POP Op1 || Pop from stack || Pop Op1 from the top of stack&lt;br /&gt;
|-&lt;br /&gt;
| 24 || BIT Op1, Op2 || Test bit || Test if bit at position Op2 in Op1 is set&lt;br /&gt;
|-&lt;br /&gt;
| 25 || SET Op1, Op2 || Set bit || Set bit at position Op2 in Op1 to 1&lt;br /&gt;
|-&lt;br /&gt;
| 26 || RES Op1, Op2 || Reset bit || Set bit at position Op2 in Op1 to 0&lt;br /&gt;
|-&lt;br /&gt;
| 27 || MR Op1, [Op2] || Memory read || Read data Op1 from memory address Op1&lt;br /&gt;
|-&lt;br /&gt;
| 28 || MW [Op1], Op2 || Memory write || Write data Op2 to memory address Op1&lt;br /&gt;
|-&lt;br /&gt;
| 29 || SKIP Op1 || Skip next instruction || Skip next instruction if Op1 is non zero&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Operands=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
!  !! colspan=&amp;quot;6&amp;quot;|Bit width&lt;br /&gt;
|-&lt;br /&gt;
! Register !! Native !! 8-bit !! 16-bit !! 32-bit !! 64-bit !! 128-bit&lt;br /&gt;
|-&lt;br /&gt;
| Constant || 0 || 16 || 32 || 48 || 64 || 80&lt;br /&gt;
|-&lt;br /&gt;
| R1 || 1 || 17 || 33 || 49 || 65 || 81&lt;br /&gt;
|-&lt;br /&gt;
| R2 || 2 || 18 || 34 || 50 || 66 || 82&lt;br /&gt;
|-&lt;br /&gt;
| R3 || 3 || 19 || 35 || 51 || 67 || 83&lt;br /&gt;
|-&lt;br /&gt;
| R4 || 4 || 20 || 36 || 52 || 68 || 84&lt;br /&gt;
|-&lt;br /&gt;
| R5 || 5 || 21 || 37 || 53 || 69 || 85&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;7&amp;quot; | ...&lt;br /&gt;
|-&lt;br /&gt;
| R14 || 14 || 30 || 46 || 62 || 78 || 94&lt;br /&gt;
|-&lt;br /&gt;
| R15 || 15 || 31 || 47 || 63 || 79 || 95&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Category:Projects]]&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Virtual_machine&amp;diff=57</id>
		<title>Virtual machine</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Virtual_machine&amp;diff=57"/>
		<updated>2015-10-25T09:49:56Z</updated>

		<summary type="html">&lt;p&gt;Chronos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Specially designed virtual machine is useful for testing [[compiler]], [[Operating System|operating system]] and it is also necessary for running applications under [[Operating System|operating system]] which need to be CPU architecture independent and should be either interpreted or compiled to native code.&lt;br /&gt;
&lt;br /&gt;
=Objectives=&lt;br /&gt;
&lt;br /&gt;
* Support various data width (bit width 8, 16, 32, 64, ...)&lt;br /&gt;
* Simple to be implemented&lt;br /&gt;
* Effective execution also in interpreting mode&lt;br /&gt;
* Mostly register oriented instructions&lt;br /&gt;
* Stack support&lt;br /&gt;
* Instruction set should be extensible&lt;br /&gt;
&lt;br /&gt;
=Features&lt;br /&gt;
&lt;br /&gt;
* Instructions&lt;br /&gt;
** Constant loading&lt;br /&gt;
** I/O ports&lt;br /&gt;
** Stack&lt;br /&gt;
** Subroutines&lt;br /&gt;
** Jumps&lt;br /&gt;
** Arithmetic operations&lt;br /&gt;
** Logic bitwise operations&lt;br /&gt;
** Bit manipulation&lt;br /&gt;
** Shifts&lt;br /&gt;
** Special instructions&lt;br /&gt;
* Registers&lt;br /&gt;
* Memory addressing&lt;br /&gt;
* Flags&lt;br /&gt;
* Interrupt system&lt;br /&gt;
&lt;br /&gt;
=Instructions=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! Code !! Short name !! Full name !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0 || NOP || No operation ||&lt;br /&gt;
|-&lt;br /&gt;
| 1 || CP Op1, Op2 || Copy || Copy data from one operand to another&lt;br /&gt;
|-&lt;br /&gt;
| 2 || CMP Op1, Op2 || Compare || Compare two operands&lt;br /&gt;
|-&lt;br /&gt;
| 3 || INC Op1 || Increment || Increment operand by one&lt;br /&gt;
|-&lt;br /&gt;
| 4 || DEC Op1 || Decrement || Decrement operand by one&lt;br /&gt;
|-&lt;br /&gt;
| 5 || IN Op1, (Op2) || Input || Read data to Op1 from I/O port Op2&lt;br /&gt;
|-&lt;br /&gt;
| 6 || OUT (Op1), Op2 || Output || Write data Op2 to I/O port Op1&lt;br /&gt;
|-&lt;br /&gt;
| 7 || HALT || Halt || Stops execution of program&lt;br /&gt;
|-&lt;br /&gt;
| 8 || ADD Op1, Op2 || Addition || Add Op2 to Op1&lt;br /&gt;
|-&lt;br /&gt;
| 9 || SUB Op1, Op2 || Subtraction || Subtract Op2 from Op1&lt;br /&gt;
|-&lt;br /&gt;
| 10 || MUL Op1, Op2 || Multiplication || Multiply Op1 by Op2&lt;br /&gt;
|-&lt;br /&gt;
| 11 || DIV Op1, Op2 || Division || Divide Op1 by Op2&lt;br /&gt;
|-&lt;br /&gt;
| 12 || MOD Op1, Op2 || Modulo || Set Op1 to remainder of division of Op1 by Op2&lt;br /&gt;
|-&lt;br /&gt;
| 13 || AND Op1, Op2 || Logical AND || Set Op1 to logical AND of Op1 and Op2&lt;br /&gt;
|-&lt;br /&gt;
| 14 || OR Op1, Op2 || Logical OR || Set Op1 to logical OR of Op1 and Op2&lt;br /&gt;
|-&lt;br /&gt;
| 15 || XOR Op1, Op2 || Exclusive OR || Set Op1 to logical XOR of Op1 and Op2&lt;br /&gt;
|-&lt;br /&gt;
| 16 || CALL Op1 || Call subroutine || Store return address to stack and jump to given address by Op1&lt;br /&gt;
|-&lt;br /&gt;
| 17 || RET || Return from subroutine || Return to address stored on top of stack&lt;br /&gt;
|-&lt;br /&gt;
| 18 || SHL Op1 || Shift left || Shift all bits in Op1 to the left&lt;br /&gt;
|-&lt;br /&gt;
| 19 || SHR Op1 || Shift right || Shift all bits in Op1 to the right&lt;br /&gt;
|-&lt;br /&gt;
| 20 || JP Op1 || Jump to absolute address || Set program counter to new absolute address&lt;br /&gt;
|-&lt;br /&gt;
| 21 || JR Op1 || Jump to relative address || Set program counter to new address relative from current&lt;br /&gt;
|-&lt;br /&gt;
| 22 || PUSH Op1 || Push to stack || Put Op1 to the top of stack&lt;br /&gt;
|-&lt;br /&gt;
| 23 || POP Op1 || Pop from stack || Pop Op1 from the top of stack&lt;br /&gt;
|-&lt;br /&gt;
| 24 || BIT Op1, Op2 || Test bit || Test if bit at position Op2 in Op1 is set&lt;br /&gt;
|-&lt;br /&gt;
| 25 || SET Op1, Op2 || Set bit || Set bit at position Op2 in Op1 to 1&lt;br /&gt;
|-&lt;br /&gt;
| 26 || RES Op1, Op2 || Reset bit || Set bit at position Op2 in Op1 to 0&lt;br /&gt;
|-&lt;br /&gt;
| 27 || MR Op1, [Op2] || Memory read || Read data Op1 from memory address Op1&lt;br /&gt;
|-&lt;br /&gt;
| 28 || MW [Op1], Op2 || Memory write || Write data Op2 to memory address Op1&lt;br /&gt;
|-&lt;br /&gt;
| 29 || LC Op1 || Load constant || Load constant parameter from program memory to Op1&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Operands=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
!  !! colspan=&amp;quot;6&amp;quot;|Bit width&lt;br /&gt;
|-&lt;br /&gt;
! Register !! Native !! 8-bit !! 16-bit !! 32-bit !! 64-bit !! 128-bit&lt;br /&gt;
|-&lt;br /&gt;
| Constant || 0 || 16 || 32 || 48 || 64 || 80&lt;br /&gt;
|-&lt;br /&gt;
| R1 || 1 || 17 || 33 || 49 || 65 || 81&lt;br /&gt;
|-&lt;br /&gt;
| R2 || 2 || 18 || 34 || 50 || 66 || 82&lt;br /&gt;
|-&lt;br /&gt;
| R3 || 3 || 19 || 35 || 51 || 67 || 83&lt;br /&gt;
|-&lt;br /&gt;
| R4 || 4 || 20 || 36 || 52 || 68 || 84&lt;br /&gt;
|-&lt;br /&gt;
| R5 || 5 || 21 || 37 || 53 || 69 || 85&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;7&amp;quot; | ...&lt;br /&gt;
|-&lt;br /&gt;
| R14 || 14 || 30 || 46 || 62 || 78 || 94&lt;br /&gt;
|-&lt;br /&gt;
| R15 || 15 || 31 || 47 || 63 || 79 || 95&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Category:Projects]]&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Terminology&amp;diff=56</id>
		<title>Terminology</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Terminology&amp;diff=56"/>
		<updated>2015-10-25T09:31:19Z</updated>

		<summary type="html">&lt;p&gt;Chronos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;;IDE:Integrated Development Environment&lt;br /&gt;
;RAD:Rapid Application Development&lt;br /&gt;
;VCL:Visual Component Library&lt;br /&gt;
;RTL:Run-Time Library&lt;br /&gt;
;RTTI:Runtime Type Information&lt;br /&gt;
;OS:Operating System&lt;br /&gt;
;FOSS:Free and Open Source Software&lt;br /&gt;
;RSS:Rich Site Summary&lt;br /&gt;
;CPU:Central Processing Unit&lt;br /&gt;
;API:Application Programming Interface&lt;br /&gt;
;VPS:Virtual Private Server&lt;br /&gt;
;SVN:Subversion&lt;br /&gt;
;URL:Uniform Resource Locator&lt;br /&gt;
;HTTP:Hypertext Transport Protocol&lt;br /&gt;
;HTML:HyperText Markup Language&lt;br /&gt;
;TCP:Transmission Control Protocol&lt;br /&gt;
;UDP:User Datagram Protocol&lt;br /&gt;
;ICMP:Internet Control Message Protocol&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Virtual_machine&amp;diff=55</id>
		<title>Virtual machine</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Virtual_machine&amp;diff=55"/>
		<updated>2015-10-25T09:29:41Z</updated>

		<summary type="html">&lt;p&gt;Chronos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Specially designed virtual machine is useful for testing [[compiler]], [[Operating System|operating system]] and it is also necessary for running applications under [[Operating System|operating system]] which need to be CPU architecture independent and should be either interpreted or compiled to native code.&lt;br /&gt;
&lt;br /&gt;
=Objectives=&lt;br /&gt;
&lt;br /&gt;
* Support various data width (bit width 8, 16, 32, 64, ...)&lt;br /&gt;
* Simple to be implemented&lt;br /&gt;
* Effective execution also in interpreting mode&lt;br /&gt;
* Mostly register oriented instructions&lt;br /&gt;
* Stack support&lt;br /&gt;
* Instruction set should be extensible&lt;br /&gt;
&lt;br /&gt;
=Instructions=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! Code !! Short name !! Full name !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0 || NOP || No operation ||&lt;br /&gt;
|-&lt;br /&gt;
| 1 || CP Op1, Op2 || Copy || Copy data from one operand to another&lt;br /&gt;
|-&lt;br /&gt;
| 2 || CMP Op1, Op2 || Compare || Compare two operands&lt;br /&gt;
|-&lt;br /&gt;
| 3 || INC Op1 || Increment || Increment operand by one&lt;br /&gt;
|-&lt;br /&gt;
| 4 || DEC Op1 || Decrement || Decrement operand by one&lt;br /&gt;
|-&lt;br /&gt;
| 5 || IN Op1, (Op2) || Input || Read data to Op1 from I/O port Op2&lt;br /&gt;
|-&lt;br /&gt;
| 6 || OUT (Op1), Op2 || Output || Write data Op2 to I/O port Op1&lt;br /&gt;
|-&lt;br /&gt;
| 7 || HALT || Halt || Stops execution of program&lt;br /&gt;
|-&lt;br /&gt;
| 8 || ADD Op1, Op2 || Addition || Add Op2 to Op1&lt;br /&gt;
|-&lt;br /&gt;
| 9 || SUB Op1, Op2 || Subtraction || Subtract Op2 from Op1&lt;br /&gt;
|-&lt;br /&gt;
| 10 || MUL Op1, Op2 || Multiplication || Multiply Op1 by Op2&lt;br /&gt;
|-&lt;br /&gt;
| 11 || DIV Op1, Op2 || Division || Divide Op1 by Op2&lt;br /&gt;
|-&lt;br /&gt;
| 12 || MOD Op1, Op2 || Modulo || Set Op1 to remainder of division of Op1 by Op2&lt;br /&gt;
|-&lt;br /&gt;
| 13 || AND Op1, Op2 || Logical AND || Set Op1 to logical AND of Op1 and Op2&lt;br /&gt;
|-&lt;br /&gt;
| 14 || OR Op1, Op2 || Logical OR || Set Op1 to logical OR of Op1 and Op2&lt;br /&gt;
|-&lt;br /&gt;
| 15 || XOR Op1, Op2 || Exclusive OR || Set Op1 to logical XOR of Op1 and Op2&lt;br /&gt;
|-&lt;br /&gt;
| 16 || CALL Op1 || Call subroutine || Store return address to stack and jump to given address by Op1&lt;br /&gt;
|-&lt;br /&gt;
| 17 || RET || Return from subroutine || Return to address stored on top of stack&lt;br /&gt;
|-&lt;br /&gt;
| 18 || SHL Op1 || Shift left || Shift all bits in Op1 to the left&lt;br /&gt;
|-&lt;br /&gt;
| 19 || SHR Op1 || Shift right || Shift all bits in Op1 to the right&lt;br /&gt;
|-&lt;br /&gt;
| 20 || JP Op1 || Jump to absolute address || Set program counter to new absolute address&lt;br /&gt;
|-&lt;br /&gt;
| 21 || JR Op1 || Jump to relative address || Set program counter to new address relative from current&lt;br /&gt;
|-&lt;br /&gt;
| 22 || PUSH Op1 || Push to stack || Put Op1 to the top of stack&lt;br /&gt;
|-&lt;br /&gt;
| 23 || POP Op1 || Pop from stack || Pop Op1 from the top of stack&lt;br /&gt;
|-&lt;br /&gt;
| 24 || BIT Op1, Op2 || Test bit || Test if bit at position Op2 in Op1 is set&lt;br /&gt;
|-&lt;br /&gt;
| 25 || SET Op1, Op2 || Set bit || Set bit at position Op2 in Op1 to 1&lt;br /&gt;
|-&lt;br /&gt;
| 26 || RES Op1, Op2 || Reset bit || Set bit at position Op2 in Op1 to 0&lt;br /&gt;
|-&lt;br /&gt;
| 27 || MR Op1, [Op2] || Memory read || Read data Op1 from memory address Op1&lt;br /&gt;
|-&lt;br /&gt;
| 28 || MW [Op1], Op2 || Memory write || Write data Op2 to memory address Op1&lt;br /&gt;
|-&lt;br /&gt;
| 29 || LC Op1 || Load constant || Load constant parameter from program memory to Op1&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Category:Projects]]&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Virtual_machine&amp;diff=54</id>
		<title>Virtual machine</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Virtual_machine&amp;diff=54"/>
		<updated>2015-10-25T09:13:17Z</updated>

		<summary type="html">&lt;p&gt;Chronos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Objectives=&lt;br /&gt;
&lt;br /&gt;
* Support various data width (bit width 8, 16, 32, 64, ...)&lt;br /&gt;
* Simple to be implemented&lt;br /&gt;
* Mostly register oriented instructions&lt;br /&gt;
* Stack support&lt;br /&gt;
* Instruction set should be extensible&lt;br /&gt;
&lt;br /&gt;
=Instructions=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! Code !! Short name !! Full name !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0 || NOP || No operation ||&lt;br /&gt;
|-&lt;br /&gt;
| 1 || CP Op1, Op2 || Copy || Copy data from one operand to another&lt;br /&gt;
|-&lt;br /&gt;
| 2 || CMP Op1, Op2 || Compare || Compare two operands&lt;br /&gt;
|-&lt;br /&gt;
| 3 || INC Op1 || Increment || Increment operand by one&lt;br /&gt;
|-&lt;br /&gt;
| 4 || DEC Op1 || Decrement || Decrement operand by one&lt;br /&gt;
|-&lt;br /&gt;
| 5 || IN Op1, (Op2) || Input || Read data to Op1 from I/O port Op2&lt;br /&gt;
|-&lt;br /&gt;
| 6 || OUT (Op1), Op2 || Output || Write data Op2 to I/O port Op1&lt;br /&gt;
|-&lt;br /&gt;
| 7 || HALT || Halt || Stops execution of program&lt;br /&gt;
|-&lt;br /&gt;
| 8 || ADD Op1, Op2 || Addition || Add Op2 to Op1&lt;br /&gt;
|-&lt;br /&gt;
| 9 || SUB Op1, Op2 || Subtraction || Subtract Op2 from Op1&lt;br /&gt;
|-&lt;br /&gt;
| 10 || MUL Op1, Op2 || Multiplication || Multiply Op1 by Op2&lt;br /&gt;
|-&lt;br /&gt;
| 11 || DIV Op1, Op2 || Division || Divide Op1 by Op2&lt;br /&gt;
|-&lt;br /&gt;
| 12 || MOD Op1, Op2 || Modulo || Set Op1 to remainder of division of Op1 by Op2&lt;br /&gt;
|-&lt;br /&gt;
| 13 || AND Op1, Op2 || Logical AND || Set Op1 to logical AND of Op1 and Op2&lt;br /&gt;
|-&lt;br /&gt;
| 14 || OR Op1, Op2 || Logical OR || Set Op1 to logical OR of Op1 and Op2&lt;br /&gt;
|-&lt;br /&gt;
| 15 || XOR Op1, Op2 || Exclusive OR || Set Op1 to logical XOR of Op1 and Op2&lt;br /&gt;
|-&lt;br /&gt;
| 16 || CALL Op1 || Call subroutine || Store return address to stack and jump to given address by Op1&lt;br /&gt;
|-&lt;br /&gt;
| 17 || RET || Return from subroutine || Return to address stored on top of stack&lt;br /&gt;
|-&lt;br /&gt;
| 18 || SHL Op1 || Shift left || Shift all bits in Op1 to the left&lt;br /&gt;
|-&lt;br /&gt;
| 19 || SHR Op1 || Shift right || Shift all bits in Op1 to the right&lt;br /&gt;
|-&lt;br /&gt;
| 20 || JP Op1 || Jump to absolute address || Set program counter to new absolute address&lt;br /&gt;
|-&lt;br /&gt;
| 21 || JR Op1 || Jump to relative address || Set program counter to new address relative from current&lt;br /&gt;
|-&lt;br /&gt;
| 22 || PUSH Op1 || Push to stack || Put Op1 to the top of stack&lt;br /&gt;
|-&lt;br /&gt;
| 23 || POP Op1 || Pop from stack || Pop Op1 from the top of stack&lt;br /&gt;
|-&lt;br /&gt;
| 24 || BIT Op1, Op2 || Test bit || Test if bit at position Op2 in Op1 is set&lt;br /&gt;
|-&lt;br /&gt;
| 25 || SET Op1, Op2 || Set bit || Set bit at position Op2 in Op1 to 1&lt;br /&gt;
|-&lt;br /&gt;
| 26 || RES Op1, Op2 || Reset bit || Set bit at position Op2 in Op1 to 0&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Category:Projects]]&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Virtual_machine&amp;diff=53</id>
		<title>Virtual machine</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Virtual_machine&amp;diff=53"/>
		<updated>2015-10-25T09:12:57Z</updated>

		<summary type="html">&lt;p&gt;Chronos: Created page with &amp;quot;=Objectives=  * Support various data width (bit width 8, 16, 32, 64, ...) * Simple to be implemented * Mostly register oriented instructions * Stack support * Instruction set ...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Objectives=&lt;br /&gt;
&lt;br /&gt;
* Support various data width (bit width 8, 16, 32, 64, ...)&lt;br /&gt;
* Simple to be implemented&lt;br /&gt;
* Mostly register oriented instructions&lt;br /&gt;
* Stack support&lt;br /&gt;
* Instruction set should be extensible&lt;br /&gt;
&lt;br /&gt;
=Instructions=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable sortable&amp;quot;&lt;br /&gt;
! Code !! Short name !! Full name !! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0 || NOP || No operation ||&lt;br /&gt;
|-&lt;br /&gt;
| 1 || CP Op1, Op2 || Copy || Copy data from one operand to another&lt;br /&gt;
|-&lt;br /&gt;
| 2 || CMP Op1, Op2 || Compare || Compare two operands&lt;br /&gt;
|-&lt;br /&gt;
| 3 || INC Op1 || Increment || Increment operand by one&lt;br /&gt;
|-&lt;br /&gt;
| 4 || DEC Op1 || Decrement || Decrement operand by one&lt;br /&gt;
|-&lt;br /&gt;
| 5 || IN Op1, (Op2) || Input || Read data to Op1 from I/O port Op2&lt;br /&gt;
|-&lt;br /&gt;
| 6 || OUT (Op1), Op2 || Output || Write data Op2 to I/O port Op1&lt;br /&gt;
|-&lt;br /&gt;
| 7 || HALT || Halt || Stops execution of program&lt;br /&gt;
|-&lt;br /&gt;
| 8 || ADD Op1, Op2 || Addition || Add Op2 to Op1&lt;br /&gt;
|-&lt;br /&gt;
| 9 || SUB Op1, Op2 || Subtraction || Subtract Op2 from Op1&lt;br /&gt;
|-&lt;br /&gt;
| 10 || MUL Op1, Op2 || Multiplication || Multiply Op1 by Op2&lt;br /&gt;
|-&lt;br /&gt;
| 11 || DIV Op1, Op2 || Division || Divide Op1 by Op2&lt;br /&gt;
|-&lt;br /&gt;
| 12 || MOD Op1, Op2 || Modulo || Set Op1 to remainder of division of Op1 by Op2&lt;br /&gt;
|-&lt;br /&gt;
| 13 || AND Op1, Op2 || Logical AND || Set Op1 to logical AND of Op1 and Op2&lt;br /&gt;
|-&lt;br /&gt;
| 14 || OR Op1, Op2 || Logical OR || Set Op1 to logical OR of Op1 and Op2&lt;br /&gt;
|-&lt;br /&gt;
| 15 || XOR Op1, Op2 || Exclusive OR || Set Op1 to logical XOR of Op1 and Op2&lt;br /&gt;
|-&lt;br /&gt;
| 16 || CALL Op1 || Call subroutine || Store return address to stack and jump to given address by Op1&lt;br /&gt;
|-&lt;br /&gt;
| 17 || RET || Return from subroutine || Return to address stored on top of stack&lt;br /&gt;
|-&lt;br /&gt;
| 18 || SHL Op1 || Shift left || Shift all bits in Op1 to the left&lt;br /&gt;
|-&lt;br /&gt;
| 19 || SHR Op1 || Shift right || Shift all bits in Op1 to the right&lt;br /&gt;
|-&lt;br /&gt;
| 20 || JP Op1 || Jump to absolute address || Set program counter to new absolute address&lt;br /&gt;
|-&lt;br /&gt;
| 21 || JR Op1 || Jump to relative address || Set program counter to new address relative from current&lt;br /&gt;
|-&lt;br /&gt;
| 22 || PUSH Op1 || Push to stack || Put Op1 to the top of stack&lt;br /&gt;
|-&lt;br /&gt;
| 23 || POP Op1 || Pop from stack || Pop Op1 from the top of stack&lt;br /&gt;
|-&lt;br /&gt;
| 24 || BIT Op1, Op2 || Test bit || Test if bit at position Op2 in Op1 is set&lt;br /&gt;
|-&lt;br /&gt;
| 25 || SET Op1, Op2 || Set bit || Set bit at position Op2 in Op1 to 1&lt;br /&gt;
|-&lt;br /&gt;
| 26 || RES Op1, Op2 || Reset bit || Set bit at position Op2 in Op1 to 0&lt;br /&gt;
&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Main_Page&amp;diff=52</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Main_Page&amp;diff=52"/>
		<updated>2015-10-25T08:50:57Z</updated>

		<summary type="html">&lt;p&gt;Chronos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=About=&lt;br /&gt;
&lt;br /&gt;
LibreDevelop is a initiative to build FOSS alternative to Delphi IDE and compiler.&lt;br /&gt;
&lt;br /&gt;
* [[Motivation]]&lt;br /&gt;
* [[Concept]]&lt;br /&gt;
* [[Implementation]]&lt;br /&gt;
&lt;br /&gt;
=Projects=&lt;br /&gt;
&lt;br /&gt;
* [[Platform]] - generic base application platform &lt;br /&gt;
* [[Studio]] - RAD development IDE&lt;br /&gt;
* [[Universe]] - forge portal for projects&lt;br /&gt;
* [[Compiler]] - Object Pascal/Delphi compatible compiler&lt;br /&gt;
* [[Libraries]] - RTL / VCL similar libraries&lt;br /&gt;
* [[Operating System]] - demonstration OS&lt;br /&gt;
* [[Virtual machine]] - simplified clean design which should run OS and applications&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Project source code is available in SVN repository at URL:&lt;br /&gt;
 http://libredevelop.zdechov.net/svn/&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
&lt;br /&gt;
* [http://www.embarcadero.com/products/delphi Embarcadero Delphi website]&lt;br /&gt;
&lt;br /&gt;
[[Category:Main]]&lt;br /&gt;
&lt;br /&gt;
__NOTOC__&lt;br /&gt;
__NOEDITSECTION__&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Compiler&amp;diff=51</id>
		<title>Compiler</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Compiler&amp;diff=51"/>
		<updated>2015-10-25T08:48:37Z</updated>

		<summary type="html">&lt;p&gt;Chronos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Will be advanced multi-target Delphi/Object Pascal compiler&lt;br /&gt;
&lt;br /&gt;
=Objectives=&lt;br /&gt;
&lt;br /&gt;
* Compile to custom [[virtual machine]] code for simpler and independent development&lt;br /&gt;
* Will have support for compilation to multiple high-level languages as targets&lt;br /&gt;
* Will support multiple target processor architectures&lt;br /&gt;
* Delphi language compatibility&lt;br /&gt;
* Implement Delphi compiler features&lt;br /&gt;
* Support for concurrent compilation on multi-core CPU&lt;br /&gt;
&lt;br /&gt;
=See also=&lt;br /&gt;
* [[Delphi language features]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Projects]]&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Operating_System&amp;diff=50</id>
		<title>Operating System</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Operating_System&amp;diff=50"/>
		<updated>2015-10-24T19:51:19Z</updated>

		<summary type="html">&lt;p&gt;Chronos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Will be open source and different alternative to todays systems. &lt;br /&gt;
&lt;br /&gt;
=Objectives=&lt;br /&gt;
&lt;br /&gt;
* Operation system created using Studio and Delphi compiler&lt;br /&gt;
* Will serve as complex project to present many advanced features and benefits of rapid development&lt;br /&gt;
* Will use also other operating systems as virtual hardware layer&lt;br /&gt;
* Similar features to other today available systems&lt;br /&gt;
* Top-down design and extensive interfacing and layer virtualization&lt;br /&gt;
* As start it should run on Windows and Linux as &amp;quot;application&amp;quot; or as desktop replacement&lt;br /&gt;
&lt;br /&gt;
=Possible features=&lt;br /&gt;
&lt;br /&gt;
* CPU&lt;br /&gt;
** Multi CPU architecture support&lt;br /&gt;
** Multi-core support&lt;br /&gt;
** Task scheduler&lt;br /&gt;
* Drivers&lt;br /&gt;
* Execute applications&lt;br /&gt;
** API&lt;br /&gt;
** Persistent configuration management&lt;br /&gt;
** Services&lt;br /&gt;
** Installation and update management&lt;br /&gt;
* Memory management&lt;br /&gt;
** Memory protection&lt;br /&gt;
** Virtual memory&lt;br /&gt;
* Graphic rendering&lt;br /&gt;
** 3D acceleration&lt;br /&gt;
** Multi-display support&lt;br /&gt;
* Multi-user support&lt;br /&gt;
* Filesystem support&lt;br /&gt;
** Access permissions&lt;br /&gt;
** Attributes&lt;br /&gt;
** Per file compression, Sparse files, Copy-on-write, Encryption&lt;br /&gt;
* Networking&lt;br /&gt;
** IPv4, IPv6&lt;br /&gt;
** TCP, UDP, ICMP&lt;br /&gt;
* Audio&lt;br /&gt;
* Input devices: Mouse, Keyboard, Touch&lt;br /&gt;
&lt;br /&gt;
[[Category:Projects]]&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Operating_System&amp;diff=49</id>
		<title>Operating System</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Operating_System&amp;diff=49"/>
		<updated>2015-10-24T19:43:05Z</updated>

		<summary type="html">&lt;p&gt;Chronos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Will be open source and different alternative to todays systems. &lt;br /&gt;
&lt;br /&gt;
=Objectives=&lt;br /&gt;
&lt;br /&gt;
* Operation system created using Studio and Delphi compiler&lt;br /&gt;
* Will serve as complex project to present many advanced features and benefits of rapid development&lt;br /&gt;
* Will use also other operating systems as virtual hardware layer&lt;br /&gt;
* Similar features to other today available systems&lt;br /&gt;
* Top-down design and extensive interfacing and layer virtualization&lt;br /&gt;
* As start it should run on Windows and Linux as &amp;quot;application&amp;quot; or as desktop replacement&lt;br /&gt;
&lt;br /&gt;
=Possible features=&lt;br /&gt;
&lt;br /&gt;
* Task scheduler&lt;br /&gt;
* Drivers&lt;br /&gt;
* Execute applications, API&lt;br /&gt;
* Memory manager&lt;br /&gt;
* Graphic rendering&lt;br /&gt;
* Multi-user support&lt;br /&gt;
* Filesystem support&lt;br /&gt;
* Networking&lt;br /&gt;
* Audio&lt;br /&gt;
* Input devices: Mouse, Keyboard, Touch&lt;br /&gt;
&lt;br /&gt;
[[Category:Projects]]&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Motivation&amp;diff=48</id>
		<title>Motivation</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Motivation&amp;diff=48"/>
		<updated>2014-04-27T12:21:02Z</updated>

		<summary type="html">&lt;p&gt;Chronos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Problems=&lt;br /&gt;
&lt;br /&gt;
* Delphi doesn&#039;t run on Linux&lt;br /&gt;
* No free non-commercial or free limited commercial license is provided.&lt;br /&gt;
* As no free version is available no new programmers will start using Delphi in future&lt;br /&gt;
* Delphi installation is too heavy (bloated).&lt;br /&gt;
* Offline help contains code examples and other information related to C++ Builder which is not interesting for Delphi programmers.&lt;br /&gt;
* Delphi can build multi-platform applications but only for commercially interesting platforms.&lt;br /&gt;
&lt;br /&gt;
=Goals=&lt;br /&gt;
&lt;br /&gt;
* Create open source alternative to Embarcadero RAD Studio/Delphi and Delphi compiler.&lt;br /&gt;
* Create community development portal (forge) - to allow to make common project management tasks easy.&lt;br /&gt;
* Provide tutorials and learning stuff for new beginners programmers &lt;br /&gt;
&lt;br /&gt;
[[Category:Main]]&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Independence&amp;diff=47</id>
		<title>Independence</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Independence&amp;diff=47"/>
		<updated>2013-10-30T09:54:19Z</updated>

		<summary type="html">&lt;p&gt;Chronos: Created page with &amp;quot;To accelerate inital development use of already existed tools as Delphi IDE is needed. Although main focus is to mimic sucessfull product like Delphi IDE it is good to achieve...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;To accelerate inital development use of already existed tools as Delphi IDE is needed. Although main focus is to mimic sucessfull product like Delphi IDE it is good to achieve independency in future. This means no need to use any third party tools. To fulfill such goal we need to create self-compiled pascal compiler. This is also useful for transfer to other platforms.&lt;br /&gt;
&lt;br /&gt;
Self-compiler should support basic subset of pascal language. It could serve as jumping board for implementation of fully featured compiler.&lt;br /&gt;
&lt;br /&gt;
[[Category:Main]]&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Platform&amp;diff=46</id>
		<title>Platform</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Platform&amp;diff=46"/>
		<updated>2013-05-10T07:29:47Z</updated>

		<summary type="html">&lt;p&gt;Chronos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Will be generic extensible open source application platform. Packed with chosen extensions and built as setup program it could form as various IDEes.&lt;br /&gt;
&lt;br /&gt;
=Objectives=&lt;br /&gt;
&lt;br /&gt;
* General development platform serve as basement for LibreDevelop Studio&lt;br /&gt;
* Allow to build custom package set and make custom rebranded IDE&lt;br /&gt;
* Automatic updates&lt;br /&gt;
* Multiple compiler backends&lt;br /&gt;
* Multi-language support&lt;br /&gt;
* Multi-platform&lt;br /&gt;
* Context help support&lt;br /&gt;
* Translated/localized/multi-lingual environment&lt;br /&gt;
* General extensions/plugins/modules/addons management&lt;br /&gt;
&lt;br /&gt;
[[Category:Projects]]&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=MediaWiki:Mainpage&amp;diff=45</id>
		<title>MediaWiki:Mainpage</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=MediaWiki:Mainpage&amp;diff=45"/>
		<updated>2013-05-09T19:27:33Z</updated>

		<summary type="html">&lt;p&gt;Chronos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Main Page&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Main_Page&amp;diff=44</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Main_Page&amp;diff=44"/>
		<updated>2013-05-08T20:54:57Z</updated>

		<summary type="html">&lt;p&gt;Chronos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=About=&lt;br /&gt;
&lt;br /&gt;
LibreDevelop is a initiative to build FOSS alternative to Delphi IDE and compiler.&lt;br /&gt;
&lt;br /&gt;
* [[Motivation]]&lt;br /&gt;
* [[Concept]]&lt;br /&gt;
* [[Implementation]]&lt;br /&gt;
&lt;br /&gt;
=Projects=&lt;br /&gt;
&lt;br /&gt;
* [[Platform]] - generic base application platform &lt;br /&gt;
* [[Studio]] - RAD development IDE&lt;br /&gt;
* [[Universe]] - forge portal for projects&lt;br /&gt;
* [[Compiler]] - Object Pascal/Delphi compatible compiler&lt;br /&gt;
* [[Libraries]] - RTL / VCL similar libraries&lt;br /&gt;
* [[Operating System]] - demonstration OS&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Project source code is available in SVN repository at URL:&lt;br /&gt;
 http://libredevelop.zdechov.net/svn/&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
&lt;br /&gt;
* [http://www.embarcadero.com/products/delphi Embarcadero Delphi website]&lt;br /&gt;
&lt;br /&gt;
[[Category:Main]]&lt;br /&gt;
&lt;br /&gt;
__NOTOC__&lt;br /&gt;
__NOEDITSECTION__&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Terminology&amp;diff=43</id>
		<title>Terminology</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Terminology&amp;diff=43"/>
		<updated>2013-05-08T20:54:28Z</updated>

		<summary type="html">&lt;p&gt;Chronos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;;IDE:Integrated Development Environment&lt;br /&gt;
;RAD:Rapid Application Development&lt;br /&gt;
;VCL:Visual Component Library&lt;br /&gt;
;RTL:Run-Time Library&lt;br /&gt;
;RTTI:Runtime Type Information&lt;br /&gt;
;OS:Operating System&lt;br /&gt;
;FOSS:Free and Open Source Software&lt;br /&gt;
;RSS:Rich Site Summary&lt;br /&gt;
;CPU:Central Processing Unit&lt;br /&gt;
;API:Application Programming Interface&lt;br /&gt;
;VPS:Virtual Private Server&lt;br /&gt;
;SVN:Subversion&lt;br /&gt;
;URL:Uniform Resource Locator&lt;br /&gt;
;HTTP:Hypertext Transport Protocol&lt;br /&gt;
;HTML:HyperText Markup Language&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Operating_System&amp;diff=42</id>
		<title>Operating System</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Operating_System&amp;diff=42"/>
		<updated>2013-05-08T20:53:02Z</updated>

		<summary type="html">&lt;p&gt;Chronos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Will be open source and different alternative to todays systems. &lt;br /&gt;
&lt;br /&gt;
=Objectives=&lt;br /&gt;
&lt;br /&gt;
* Operation system created using Studio and Delphi compiler&lt;br /&gt;
* Will serve as complex project to present many advanced features and benefits of rapid development&lt;br /&gt;
* Will use also other operating systems as virtual hardware layer&lt;br /&gt;
* Similar features to other today available systems&lt;br /&gt;
* Top-down design and extensive interfacing and layer virtualization&lt;br /&gt;
* As start it should run on Windows and Linux as &amp;quot;application&amp;quot; or as desktop replacement&lt;br /&gt;
&lt;br /&gt;
[[Category:Projects]]&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Terminology&amp;diff=41</id>
		<title>Terminology</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Terminology&amp;diff=41"/>
		<updated>2013-05-08T20:45:42Z</updated>

		<summary type="html">&lt;p&gt;Chronos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;;IDE:Integrated Development Environment&lt;br /&gt;
;RAD:Rapid Application Development&lt;br /&gt;
;VCL:Visual Component Library&lt;br /&gt;
;RTL:Run-Time Library&lt;br /&gt;
;RTTI:Runtime Type Information&lt;br /&gt;
;OS:Operating System&lt;br /&gt;
;FOSS:Free and Open Source Software&lt;br /&gt;
;RSS:Rich Site Summary&lt;br /&gt;
;CPU:Central Processing Unit&lt;br /&gt;
;API:Application Programming Interface&lt;br /&gt;
;VPS:Virtual Private Server&lt;br /&gt;
;SVN:Subversion&lt;br /&gt;
;URL:Uniform Resource Locator&lt;br /&gt;
;HTTP:Hypertext Transport Protocol&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=User:Chronos&amp;diff=40</id>
		<title>User:Chronos</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=User:Chronos&amp;diff=40"/>
		<updated>2013-05-08T20:44:26Z</updated>

		<summary type="html">&lt;p&gt;Chronos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Name: Jiří Hajda&lt;br /&gt;
* Phone: 737785792&lt;br /&gt;
* E-mail: robie@centrum.cz&lt;br /&gt;
* Jabber: chronos@jabbim.cz&lt;br /&gt;
* ICQ: 277158770&lt;br /&gt;
&lt;br /&gt;
=Administration=&lt;br /&gt;
&lt;br /&gt;
* [[Terminology]]&lt;br /&gt;
* [[Mediawiki:sidebar]]&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Main_Page&amp;diff=39</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Main_Page&amp;diff=39"/>
		<updated>2013-05-08T20:43:35Z</updated>

		<summary type="html">&lt;p&gt;Chronos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=About=&lt;br /&gt;
&lt;br /&gt;
LibreDevelop is a initiative to build free &amp;amp; open source alternative to Delphi IDE and compiler.&lt;br /&gt;
&lt;br /&gt;
* [[Motivation]]&lt;br /&gt;
* [[Concept]]&lt;br /&gt;
* [[Implementation]]&lt;br /&gt;
&lt;br /&gt;
=Projects=&lt;br /&gt;
&lt;br /&gt;
* [[Platform]] - generic base application platform &lt;br /&gt;
* [[Studio]] - RAD development IDE&lt;br /&gt;
* [[Universe]] - forge portal for projects&lt;br /&gt;
* [[Compiler]] - Object Pascal/Delphi compatible compiler&lt;br /&gt;
* [[Libraries]] - RTL / VCL similar libraries&lt;br /&gt;
* [[Operating System]] - demonstration OS&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Project source code is available in SVN repository at URL:&lt;br /&gt;
 http://libredevelop.zdechov.net/svn/&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
&lt;br /&gt;
* [http://www.embarcadero.com/products/delphi Embarcadero Delphi website]&lt;br /&gt;
&lt;br /&gt;
[[Category:Main]]&lt;br /&gt;
&lt;br /&gt;
__NOTOC__&lt;br /&gt;
__NOEDITSECTION__&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Compiler&amp;diff=38</id>
		<title>Compiler</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Compiler&amp;diff=38"/>
		<updated>2013-05-08T20:18:50Z</updated>

		<summary type="html">&lt;p&gt;Chronos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Will be advanced multi-target Delphi/Object Pascal compiler&lt;br /&gt;
&lt;br /&gt;
=Objectives=&lt;br /&gt;
&lt;br /&gt;
* Will have support for compilation to multiple high-level languages as targets&lt;br /&gt;
* Will support multiple target processor architectures&lt;br /&gt;
* Delphi language compatibility&lt;br /&gt;
* Implement Delphi compiler features&lt;br /&gt;
* Support for concurrent compilation on CPU with multiple cores&lt;br /&gt;
&lt;br /&gt;
=See also=&lt;br /&gt;
* [[Delphi language features]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Projects]]&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Delphi_language_features&amp;diff=37</id>
		<title>Delphi language features</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Delphi_language_features&amp;diff=37"/>
		<updated>2013-05-08T20:18:10Z</updated>

		<summary type="html">&lt;p&gt;Chronos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Here is incomplete Delphi/Object Pascal feature tree. Some features are dependent on others so some have precedence during compiler development.&lt;br /&gt;
&lt;br /&gt;
* Statements&lt;br /&gt;
* Variables (var)&lt;br /&gt;
* Constants (const)&lt;br /&gt;
* Name spaces (namespace)&lt;br /&gt;
* Direct access to memory (pointers, directive absolute)&lt;br /&gt;
* Compiler directives: &lt;br /&gt;
** Conditionals (IFDEF, ENDIF, DEFINE, ...)&lt;br /&gt;
** Region, code hiding (REGION)&lt;br /&gt;
** Compiler options (M, ...)&lt;br /&gt;
* Operators (and, or, xor, not, shl, shr, +, -, /, *, div, mod, as, in, ...)&lt;br /&gt;
* Expressions (parenthesis, operator priority, infix notation)&lt;br /&gt;
* Assignment (:=)&lt;br /&gt;
* Function overloading (overload)&lt;br /&gt;
* Integrated assembler (asm-end)&lt;br /&gt;
* Comments ( {}, //, (* *) )&lt;br /&gt;
* Subroutines (function, procedure)&lt;br /&gt;
** Nested functions&lt;br /&gt;
** Functions parameters&lt;br /&gt;
** Inlined code (inline)&lt;br /&gt;
* Types (type)&lt;br /&gt;
** Elementary&lt;br /&gt;
*** Enumeration (Boolean, ...)&lt;br /&gt;
*** Subrange (0..100, ...)&lt;br /&gt;
*** Ordinals (SmallInt, Byte, Integer, Word, Cardinal, Int64, ...)&lt;br /&gt;
*** Floating numbers (Real, Single, Double, Extended, ...)&lt;br /&gt;
*** Characters (Char, WideChar, AnsiChar, ...)&lt;br /&gt;
*** Strings (String, ShortString, AnsiString, WideString, PChar, ...)&lt;br /&gt;
*** Pointers (Pointer, @, ^)&lt;br /&gt;
*** Variant&lt;br /&gt;
*** Procedural types&lt;br /&gt;
** Composed&lt;br /&gt;
*** Array, static/dynamic&lt;br /&gt;
*** Record&lt;br /&gt;
**** Překrývání proměnných (variant records): case Integer of...&lt;br /&gt;
**** Packed&lt;br /&gt;
**** Operator redefinition&lt;br /&gt;
**** Advanced with constants,types,variables,procedure/functions&lt;br /&gt;
*** Set&lt;br /&gt;
*** Class&lt;br /&gt;
**** Visibility (published, public, private, protected)&lt;br /&gt;
**** Methods (procedure, function)&lt;br /&gt;
***** Virtual methods (virtual, override)&lt;br /&gt;
***** Inlined (inline)&lt;br /&gt;
**** Inheritance (inherited)&lt;br /&gt;
**** Properties (property, default, indexed)&lt;br /&gt;
**** Events (property with function type)&lt;br /&gt;
**** Nested definitions&lt;br /&gt;
**** Constructors and destructors (constructor, destructor)&lt;br /&gt;
*** Interface (interface)&lt;br /&gt;
* Globals (variables, constants, types, functions)&lt;br /&gt;
* Modularity (unit)&lt;br /&gt;
** Types (program, unit, package, library)&lt;br /&gt;
** Initialization (initialization)&lt;br /&gt;
** Finalization (finalization)&lt;br /&gt;
** Sections (interface, implementation)&lt;br /&gt;
* Controls structures&lt;br /&gt;
** Condition (if-then-else)&lt;br /&gt;
** Loop with known cycle count (for-to-do)&lt;br /&gt;
** Loop (repeat-until)&lt;br /&gt;
** Loop (while-do)&lt;br /&gt;
** Loop exit (break)&lt;br /&gt;
** Jump to next iteration (continue)&lt;br /&gt;
** Compound statement (begin-end)&lt;br /&gt;
** Multiple branching (case-of)&lt;br /&gt;
** Context change (with-do)&lt;br /&gt;
** Exception raise (raise)&lt;br /&gt;
** Exception handling (try-except)&lt;br /&gt;
** Exception finalization (try-finally)&lt;br /&gt;
** Loop with enumerators (for-in-do)&lt;br /&gt;
* Parametric types (generics)&lt;br /&gt;
** Constraints (class, record, ordinal, float, ...)&lt;br /&gt;
* Translation strings (resourcestring)&lt;br /&gt;
* Thread local variables (threadvar)&lt;br /&gt;
* Reference counting (interface)&lt;br /&gt;
* Automatic memory management (memory manager)&lt;br /&gt;
&lt;br /&gt;
=Historic features=&lt;br /&gt;
&lt;br /&gt;
* File types (file, text)&lt;br /&gt;
* Direct jump (goto, label)&lt;br /&gt;
&lt;br /&gt;
[[Category:Main]]&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Delphi_language_features&amp;diff=36</id>
		<title>Delphi language features</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Delphi_language_features&amp;diff=36"/>
		<updated>2013-05-08T20:13:09Z</updated>

		<summary type="html">&lt;p&gt;Chronos: Created page with &amp;quot;* Statements * Variables (var) * Constants (const) * Name spaces (namespace) * Direct access to memory (pointers, directive absolute) * Compiler directives: IFDEF, ENDIF, DEFI...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Statements&lt;br /&gt;
* Variables (var)&lt;br /&gt;
* Constants (const)&lt;br /&gt;
* Name spaces (namespace)&lt;br /&gt;
* Direct access to memory (pointers, directive absolute)&lt;br /&gt;
* Compiler directives: IFDEF, ENDIF, DEFINE, ...&lt;br /&gt;
* Operators (and, or, xor, not, shl, shr, +, -, /, *, div, mod, as, in, ...)&lt;br /&gt;
* Expressions (parenthesis, operator priority, infix notation)&lt;br /&gt;
* Assignment (:=)&lt;br /&gt;
* Function overloading (overload)&lt;br /&gt;
* Integrated assembler (asm-end)&lt;br /&gt;
* Subroutines (function, procedure)&lt;br /&gt;
** Nested functions&lt;br /&gt;
** Functions parameters&lt;br /&gt;
** Inlined code (inline)&lt;br /&gt;
* Types (type)&lt;br /&gt;
** Elementary&lt;br /&gt;
*** Enumeration (Boolean, ...)&lt;br /&gt;
*** Subrange (0..100, ...)&lt;br /&gt;
*** Ordinals (SmallInt, Byte, Integer, Word, Cardinal, Int64, ...)&lt;br /&gt;
*** Floating numbers (Real, Single, Double, Extended, ...)&lt;br /&gt;
*** Characters (Char, WideChar, AnsiChar, ...)&lt;br /&gt;
*** Strings (String, ShortString, AnsiString, WideString, PChar, ...)&lt;br /&gt;
*** Pointers (Pointer, @, ^)&lt;br /&gt;
*** Variant&lt;br /&gt;
*** Procedural types&lt;br /&gt;
** Composed&lt;br /&gt;
*** Array, static/dynamic&lt;br /&gt;
*** Record&lt;br /&gt;
**** Překrývání proměnných (variant records): case Integer of...&lt;br /&gt;
**** Packed&lt;br /&gt;
**** Operator redefinition&lt;br /&gt;
**** Advanced with constants,types,variables,procedure/functions&lt;br /&gt;
*** Set&lt;br /&gt;
*** Class&lt;br /&gt;
**** Visibility (published, public, private, protected)&lt;br /&gt;
**** Methods (procedure, function)&lt;br /&gt;
***** Virtual methods (virtual, override)&lt;br /&gt;
***** Inlined (inline)&lt;br /&gt;
**** Inheritance (inherited)&lt;br /&gt;
**** Properties (property, default, indexed)&lt;br /&gt;
**** Events (property with function type)&lt;br /&gt;
**** Nested definitions&lt;br /&gt;
**** Constructors and destructors (constructor, destructor)&lt;br /&gt;
*** Interface (interface)&lt;br /&gt;
* Globals (variables, constants, types, functions)&lt;br /&gt;
* Modularity (unit)&lt;br /&gt;
** Initialization (initialization)&lt;br /&gt;
** Finalization (finalization)&lt;br /&gt;
** Sections (interface, implementation)&lt;br /&gt;
* Controls structures&lt;br /&gt;
** Condition (if-then-else)&lt;br /&gt;
** Loop with known cycle count (for-to-do)&lt;br /&gt;
** Loop (repeat-until)&lt;br /&gt;
** Loop (while-do)&lt;br /&gt;
** Loop exit (break)&lt;br /&gt;
** Jump to next iteration (continue)&lt;br /&gt;
** Compound statement (begin-end)&lt;br /&gt;
** Multiple branching (case-of)&lt;br /&gt;
** Context change (with-do)&lt;br /&gt;
** Exception raise (raise)&lt;br /&gt;
** Exception handling (try-except)&lt;br /&gt;
** Exception finalization (try-finally)&lt;br /&gt;
** Loop with enumerators (for-in-do)&lt;br /&gt;
* Parametric types (generics)&lt;br /&gt;
* Translation strings (resourcestring)&lt;br /&gt;
* Thread local variables (threadvar)&lt;br /&gt;
* Reference counting (interface)&lt;br /&gt;
* Automatic memory management (memory manager)&lt;br /&gt;
&lt;br /&gt;
=Historic features=&lt;br /&gt;
&lt;br /&gt;
* File types (file, text)&lt;br /&gt;
* Direct jump (goto, label)&lt;br /&gt;
&lt;br /&gt;
[[Category:Main]]&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Main_Page&amp;diff=35</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Main_Page&amp;diff=35"/>
		<updated>2013-05-08T19:57:57Z</updated>

		<summary type="html">&lt;p&gt;Chronos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=About=&lt;br /&gt;
&lt;br /&gt;
LibreDevelop is a initiative to build free &amp;amp; open source alternative to Delphi IDE and compiler.&lt;br /&gt;
&lt;br /&gt;
* [[Motivation]]&lt;br /&gt;
* [[Concept]]&lt;br /&gt;
* [[Implementation]]&lt;br /&gt;
&lt;br /&gt;
=Projects=&lt;br /&gt;
&lt;br /&gt;
* [[Platform]] - generic base application platform &lt;br /&gt;
* [[Studio]] - RAD development IDE&lt;br /&gt;
* [[Universe]] - forge portal for projects&lt;br /&gt;
* [[Compiler]] - Object Pascal/Delphi compatible compiler&lt;br /&gt;
* [[Libraries]] - RTL / VCL similar libraries&lt;br /&gt;
* [[Operating System]] - demonstration OS&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
&lt;br /&gt;
* [http://www.embarcadero.com/products/delphi Embarcadero Delphi website]&lt;br /&gt;
&lt;br /&gt;
[[Category:Main]]&lt;br /&gt;
&lt;br /&gt;
__NOTOC__&lt;br /&gt;
__NOEDITSECTION__&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Terminology&amp;diff=34</id>
		<title>Terminology</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Terminology&amp;diff=34"/>
		<updated>2013-05-08T19:57:32Z</updated>

		<summary type="html">&lt;p&gt;Chronos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;;IDE:Integrated Development Environment&lt;br /&gt;
;RAD:Rapid Application Development&lt;br /&gt;
;VCL:Visual Component Library&lt;br /&gt;
;RTL:Run-Time Library&lt;br /&gt;
;RTTI:Runtime Type Information&lt;br /&gt;
;OS:Operating System&lt;br /&gt;
;FOSS:Free and Open Source Software&lt;br /&gt;
;RSS:Rich Site Summary&lt;br /&gt;
;CPU:Central Processing Unit&lt;br /&gt;
;API:Application Programming Interface&lt;br /&gt;
;VPS:Virtual Private Server&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Terminology&amp;diff=33</id>
		<title>Terminology</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Terminology&amp;diff=33"/>
		<updated>2013-05-08T19:56:44Z</updated>

		<summary type="html">&lt;p&gt;Chronos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;;IDE:Integrated Development Environment&lt;br /&gt;
;RAD:Rapid Application Development&lt;br /&gt;
;VCL:Visual Component Library&lt;br /&gt;
;RTL:Run-Time Library&lt;br /&gt;
;RTTI:Runtime Type Information&lt;br /&gt;
;OS:Operating System&lt;br /&gt;
;FOSS:Free and Open Source Software&lt;br /&gt;
;RSS:Rich Site Summary&lt;br /&gt;
;CPU:Central Processing Unit&lt;br /&gt;
;API:Application Programming Interface&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Terminology&amp;diff=32</id>
		<title>Terminology</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Terminology&amp;diff=32"/>
		<updated>2013-05-08T19:55:36Z</updated>

		<summary type="html">&lt;p&gt;Chronos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;;IDE:Integrated Development Environment&lt;br /&gt;
;RAD:Rapid Application Development&lt;br /&gt;
;VCL:Visual Component Library&lt;br /&gt;
;RTL:Run-Time Library&lt;br /&gt;
;RTTI:Runtime Type Information&lt;br /&gt;
;OS:Operating System&lt;br /&gt;
;FOSS:Free and Open Source Software&lt;br /&gt;
;RSS:Rich Site Summary&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Concept&amp;diff=31</id>
		<title>Concept</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Concept&amp;diff=31"/>
		<updated>2013-05-08T19:54:35Z</updated>

		<summary type="html">&lt;p&gt;Chronos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Description==&lt;br /&gt;
&lt;br /&gt;
LibreDevelop will be developer platform combine projects around development of free &amp;amp; open source alternative to famous Embarcadero RAD Studio a Delphi/Object pascal language. Main focus is to create online web services to allow rapid development of modular development platform, development environment and open Delphi compiler. Similar to Embarcadero RAD Studio also LibreDevelop Studio will be designed as extensible modular application support also many various compilers. Development will be directed as open under free license. Project will be developed using Embarcadero Delphi and will be later developed with own tools then custom compiler and visual components will be ready.&lt;br /&gt;
&lt;br /&gt;
==Sustainability concept==&lt;br /&gt;
&lt;br /&gt;
* Diversity and independence are important key points. There will be no only one final product but it will be constantly evolving as selection of many small parts combined together. Selected finished projects will be combined by maintainers to form complete products.&lt;br /&gt;
* Project will be focused mainly to make easy usable online platform to help maximize efficiency of development process. &lt;br /&gt;
* People with common interests should be connected together to easily reach their goals without taking care about setup of usual development tools and solving common basic problems.&lt;br /&gt;
* Project should be covered by non-profit &#039;&#039;LibreDevelop foundation&#039;&#039; then time will come&lt;br /&gt;
* Possible funding models:&lt;br /&gt;
** Pay-for-feature - Customers will pay for particular feature by one time payment.&lt;br /&gt;
** Donations - People who like project would donate any amount to money to project&lt;br /&gt;
** Dedicated external employees - in later phase it would be possible that some companies would pay some of their employees to work on project&lt;br /&gt;
&lt;br /&gt;
==Objectives==&lt;br /&gt;
&lt;br /&gt;
* Develop FOSS Delphi alternative&lt;br /&gt;
* In first phase use Delphi as development tool for fast start and further rapid progress&lt;br /&gt;
* Develop IDE, compiler, libraries to finally create independent development platform&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Main]]&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Terminology&amp;diff=30</id>
		<title>Terminology</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Terminology&amp;diff=30"/>
		<updated>2013-05-08T19:54:19Z</updated>

		<summary type="html">&lt;p&gt;Chronos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;;IDE:Integrated Development Environment&lt;br /&gt;
;RAD:Rapid Application Development&lt;br /&gt;
;VCL:Visual Component Library&lt;br /&gt;
;RTL:Run-Time Library&lt;br /&gt;
;RTTI:Runtime Type Information&lt;br /&gt;
;OS:Operating System&lt;br /&gt;
;FOSS:Free and Open Source Software&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Terminology&amp;diff=29</id>
		<title>Terminology</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Terminology&amp;diff=29"/>
		<updated>2013-05-08T19:53:31Z</updated>

		<summary type="html">&lt;p&gt;Chronos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;;IDE:Integrated Development Environment&lt;br /&gt;
;RAD:Rapid Application Development&lt;br /&gt;
;VCL:Visual Component Library&lt;br /&gt;
;RTL:Run-Time Library&lt;br /&gt;
;RTTI:Runtime Type Information&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Terminology&amp;diff=28</id>
		<title>Terminology</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Terminology&amp;diff=28"/>
		<updated>2013-05-08T19:51:50Z</updated>

		<summary type="html">&lt;p&gt;Chronos: Created page with &amp;quot;;IDE:Integrated Development Environment ;RAD:Rapid Application Development&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;;IDE:Integrated Development Environment&lt;br /&gt;
;RAD:Rapid Application Development&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Implementation&amp;diff=27</id>
		<title>Implementation</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Implementation&amp;diff=27"/>
		<updated>2013-05-08T19:45:20Z</updated>

		<summary type="html">&lt;p&gt;Chronos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Task !! Status&lt;br /&gt;
|-&lt;br /&gt;
| Set up VPS || Done&lt;br /&gt;
|- &lt;br /&gt;
| Register free subdomain libredevelop.zdechov.net || Done&lt;br /&gt;
|-&lt;br /&gt;
| Install mediawiki as main web for fresh start. Then in future custom web should be created. || Done&lt;br /&gt;
|-&lt;br /&gt;
| Setup Universe portal &lt;br /&gt;
* URL (libredevelop.zdechov.net/universe/). &lt;br /&gt;
* There are few similar systems but these doesn&#039;t meet requested criteria. &lt;br /&gt;
* Is it possible to use some open source projects from these [http://en.wikipedia.org/wiki/Forge_%28software%29 listed on wikipedia]. &lt;br /&gt;
* Selection of existed project would affect later migration to custom system. &lt;br /&gt;
* System should be implemented finally in Delphi language || &lt;br /&gt;
|-&lt;br /&gt;
| Create LD Studio || &lt;br /&gt;
|-&lt;br /&gt;
| Create LD Delphi compiler&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Category:Main]]&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=User:Chronos&amp;diff=26</id>
		<title>User:Chronos</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=User:Chronos&amp;diff=26"/>
		<updated>2013-05-08T18:25:02Z</updated>

		<summary type="html">&lt;p&gt;Chronos: Created page with &amp;quot;* Name: Jiří Hajda * Phone: 737785792 * E-mail: robie@centrum.cz * Jabber: chronos@jabbim.cz * ICQ: 277158770&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Name: Jiří Hajda&lt;br /&gt;
* Phone: 737785792&lt;br /&gt;
* E-mail: robie@centrum.cz&lt;br /&gt;
* Jabber: chronos@jabbim.cz&lt;br /&gt;
* ICQ: 277158770&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Concept&amp;diff=25</id>
		<title>Concept</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Concept&amp;diff=25"/>
		<updated>2013-05-08T18:23:42Z</updated>

		<summary type="html">&lt;p&gt;Chronos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Description==&lt;br /&gt;
&lt;br /&gt;
LibreDevelop will be developer platform combine projects around development of free &amp;amp; open source alternative to famous Embarcadero RAD Studio a Delphi/Object pascal language. Main focus is to create online web services to allow rapid development of modular development platform, development environment and open Delphi compiler. Similar to Embarcadero RAD Studio also LibreDevelop Studio will be designed as extensible modular application support also many various compilers. Development will be directed as open under free license. Project will be developed using Embarcadero Delphi and will be later developed with own tools then custom compiler and visual components will be ready.&lt;br /&gt;
&lt;br /&gt;
==Sustainability concept==&lt;br /&gt;
&lt;br /&gt;
* Diversity and independence are important key points. There will be no only one final product but it will be constantly evolving as selection of many small parts combined together. Selected finished projects will be combined by maintainers to form complete products.&lt;br /&gt;
* Project will be focused mainly to make easy usable online platform to help maximize efficiency of development process. &lt;br /&gt;
* People with common interests should be connected together to easily reach their goals without taking care about setup of usual development tools and solving common basic problems.&lt;br /&gt;
* Project should be covered by non-profit &#039;&#039;LibreDevelop foundation&#039;&#039; then time will come&lt;br /&gt;
* Possible funding models:&lt;br /&gt;
** Pay-for-feature - Customers will pay for particular feature by one time payment.&lt;br /&gt;
** Donations - People who like project would donate any amount to money to project&lt;br /&gt;
** Dedicated external employees - in later phase it would be possible that some companies would pay some of their employees to work on project&lt;br /&gt;
&lt;br /&gt;
==Objectives==&lt;br /&gt;
&lt;br /&gt;
* Develop free &amp;amp; open source Delphi alternative&lt;br /&gt;
* In first phase use Delphi as development tool for fast start and further rapid progress&lt;br /&gt;
* Develop IDE, compiler, libraries to finally create independent development platform&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Main]]&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Motivation&amp;diff=24</id>
		<title>Motivation</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Motivation&amp;diff=24"/>
		<updated>2013-05-08T18:23:26Z</updated>

		<summary type="html">&lt;p&gt;Chronos: Created page with &amp;quot;* Create open source alternative to Embarcadero RAD Studio/Delphi and Delphi compiler. * Because this would require enormous time and effort then build development forge porta...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Create open source alternative to Embarcadero RAD Studio/Delphi and Delphi compiler.&lt;br /&gt;
* Because this would require enormous time and effort then build development forge portal suited for project needs. To make common project management tasks fast and easy.&lt;br /&gt;
&lt;br /&gt;
[[Category:Main]]&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Operating_System&amp;diff=23</id>
		<title>Operating System</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Operating_System&amp;diff=23"/>
		<updated>2013-05-08T18:19:12Z</updated>

		<summary type="html">&lt;p&gt;Chronos: Created page with &amp;quot;Will be open source and different alternative to todays systems.   =Objectives=  * Operation system created using Studio and Delphi compiler * Will serve as complex project to...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Will be open source and different alternative to todays systems. &lt;br /&gt;
&lt;br /&gt;
=Objectives=&lt;br /&gt;
&lt;br /&gt;
* Operation system created using Studio and Delphi compiler&lt;br /&gt;
* Will serve as complex project to present many advanced features and benefits of rapid development&lt;br /&gt;
* Will use also other operating systems as virtual hardware layer&lt;br /&gt;
* Similar features to other today available systems&lt;br /&gt;
&lt;br /&gt;
[[Category:Projects]]&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Libraries&amp;diff=22</id>
		<title>Libraries</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Libraries&amp;diff=22"/>
		<updated>2013-05-08T18:15:48Z</updated>

		<summary type="html">&lt;p&gt;Chronos: Created page with &amp;quot;Will be created as advanced Delphi-like codebase.  =Objectives=  * Native clear libraries should be developed, in early phase existed third party could be used as backends * I...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Will be created as advanced Delphi-like codebase.&lt;br /&gt;
&lt;br /&gt;
=Objectives=&lt;br /&gt;
&lt;br /&gt;
* Native clear libraries should be developed, in early phase existed third party could be used as backends&lt;br /&gt;
* Include Delphi compatible RTL and VCL libraries&lt;br /&gt;
* Visual components with customizable backends (Win32, Gtk, Qt, etc.)&lt;br /&gt;
* OS API components (Windows, Linux, OSX, iOS, Andorid, etc.)&lt;br /&gt;
&lt;br /&gt;
[[Category:Projects]]&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Category:Projects&amp;diff=21</id>
		<title>Category:Projects</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Category:Projects&amp;diff=21"/>
		<updated>2013-05-08T18:14:08Z</updated>

		<summary type="html">&lt;p&gt;Chronos: Created page with &amp;quot;Category:Main&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Main]]&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Platform&amp;diff=20</id>
		<title>Platform</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Platform&amp;diff=20"/>
		<updated>2013-05-08T18:13:58Z</updated>

		<summary type="html">&lt;p&gt;Chronos: Created page with &amp;quot;Will be generic extensible open source application platform. Packed with chosen extensions and built as setup program it could form as various IDEes.  =Objectives=  * General ...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Will be generic extensible open source application platform. Packed with chosen extensions and built as setup program it could form as various IDEes.&lt;br /&gt;
&lt;br /&gt;
=Objectives=&lt;br /&gt;
&lt;br /&gt;
* General development platform serve as basement for LibreDevelop Studio&lt;br /&gt;
* Allow to build custom package set and make custom rebranded IDE&lt;br /&gt;
* Automatic updates&lt;br /&gt;
* Multiple compiler backends&lt;br /&gt;
* Multi-language support&lt;br /&gt;
* Multi-platform&lt;br /&gt;
&lt;br /&gt;
[[Category:Projects]]&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
	<entry>
		<id>https://libredevelop.zdechov.net/index.php?title=Universe&amp;diff=19</id>
		<title>Universe</title>
		<link rel="alternate" type="text/html" href="https://libredevelop.zdechov.net/index.php?title=Universe&amp;diff=19"/>
		<updated>2013-05-08T18:11:19Z</updated>

		<summary type="html">&lt;p&gt;Chronos: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;LibreDevelop Universe will be general web platform to allow easy multiple project development. To not waste a time with common management tasks.&lt;br /&gt;
&lt;br /&gt;
= Objectives=&lt;br /&gt;
* Multi-project management&lt;br /&gt;
* Wiki&lt;br /&gt;
* Bug tracking&lt;br /&gt;
* Documentation, books&lt;br /&gt;
* Code versioning repository&lt;br /&gt;
* News&lt;br /&gt;
* RSS feeds&lt;br /&gt;
* Forum&lt;br /&gt;
* User management, permission management&lt;br /&gt;
* Translation&lt;br /&gt;
* File storage&lt;br /&gt;
* Automated build system, daily builds, deployment, packaging, installer creation&lt;br /&gt;
* Work planning, coordination, assignment&lt;br /&gt;
* Screenshots&lt;br /&gt;
&lt;br /&gt;
[[Category:Projects]]&lt;/div&gt;</summary>
		<author><name>Chronos</name></author>
	</entry>
</feed>