Difference between revisions of "Platform list"

From Lazarus wiki
m (Z80 converted to link)
(Supported architectures)
 
(37 intermediate revisions by 5 users not shown)
Line 1: Line 1:
 
{{Platform list}}
 
{{Platform list}}
 +
 +
This list presents all processor architectures and operating system platforms supported by [[Free Pascal]] (including experimental implementations).
 +
 +
__TOC__
 +
 +
{| class="wikitable" style="font-size:85%;"
 +
!  !! colspan = "2" | Classic home computers !! colspan = "3" | Gaming consoles !! colspan = "4" | Mobile systems !! Desktop !! colspan = "19" | Universal systems (desktop, workstation, server etc.) !!  colspan = "2" | Embedded !! Mainframe !! colspan = "2" | Virtual machines
 +
|-
 +
| style="text-align:center;" | OS<br/>Processor || style="writing-mode: sideways-lr; width:20px; text-align:center;" | ZX Spectrum || style="writing-mode: sideways-lr; width:20px; text-align:center;" | MSX || style="writing-mode: sideways-lr; width:20px; text-align:center;" | GameBoy Advance || style="writing-mode: sideways-lr; width:20px; text-align:center;" | Nintendo DS || style="writing-mode: sideways-lr; width:20px; text-align:center;" | Nintendo Wii || style="writing-mode: sideways-lr; width:20px; text-align:center;" | Android || style="writing-mode: sideways-lr; width:20px; text-align:center;" | iOS || style="writing-mode: sideways-lr; width:20px; text-align:center;" | Palm OS / Garnet OS || style="writing-mode: sideways-lr; width:20px; text-align:center;" | Symbian OS || style="writing-mode: sideways-lr; width:20px; text-align:center;" | DOS / Go32 || style="writing-mode: sideways-lr; width:20px; text-align:center;" | AmigaOS || style="writing-mode: sideways-lr; width:20px; text-align:center;" | AROS || style="writing-mode: sideways-lr; width:20px; text-align:center;" | Haiku || style="writing-mode: sideways-lr; width:20px; text-align:center;" | MorphOS || style="writing-mode: sideways-lr; width:20px; text-align:center;" | TOS || style="writing-mode: sideways-lr; width:20px; text-align:center;" | BeOS || style="writing-mode: sideways-lr; width:20px; text-align:center;" | FreeBSD || style="writing-mode: sideways-lr; width:20px; text-align:center;" | NetBSD || style="writing-mode: sideways-lr; width:20px; text-align:center;" | OpenBSD || style="writing-mode: sideways-lr; width:20px; text-align:center;" | Solaris || style="writing-mode: sideways-lr; width:20px; text-align:center;" | Mac OS Classic || style="writing-mode: sideways-lr; width:20px; text-align:center;" | macOS (OS X) || style="writing-mode: sideways-lr; width:20px; text-align:center;" | [[FPC AIX Port|AIX]] || style="writing-mode: sideways-lr; width:20px; text-align:center;" | Linux || style="writing-mode: sideways-lr; width:20px; text-align:center;" | Win16 || style="writing-mode: sideways-lr; width:20px; text-align:center;" | Win32 || style="writing-mode: sideways-lr; width:20px; text-align:center;" | Win64 || style="writing-mode: sideways-lr; width:20px; text-align:center;" | OS/2 ||style="writing-mode: sideways-lr; width:20px; text-align:center;" | Netware || style="writing-mode: sideways-lr; width:20px; text-align:center;" | FreeRTOS || style="writing-mode: sideways-lr; width:20px; text-align:center;" | Embedded || style="text-align:center; writing-mode: sideways-lr; width:20px;" | [[ZSeries|z/OS]] || style="text-align:center; writing-mode: sideways-lr; width:20px;" | WASI || style="text-align:center; writing-mode: sideways-lr; width:20px;" | Java
 +
|-
 +
| i386 || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || style="text-align:center; background-color:lightgreen" | + || style="text-align:center; background-color:lightgreen" | + || style="text-align:center; background-color:lightgreen" | + || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" |  || bgcolor="lightgray" |
 +
|-
 +
| x86-64 || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || style="text-align:center; background-color:gold" | O || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" |
 +
|-
 +
| i8086 || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" |
 +
|-
 +
| [[ARM]] (AArch32) || bgcolor="lightgray" | || bgcolor="lightgray" | || style="text-align:center; background-color:gold" | O || style="text-align:center; background-color:gold" | O || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || style="text-align:center; background-color:lightgreen" | + || style="text-align:center; background-color:gold" | O || style="text-align:center; background-color:gold" | O || bgcolor="lightgray" | || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" |
 +
|-
 +
| ARM (AArch64) || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" |
 +
|-
 +
| [[PowerPC|PowerPC32]] || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || style="text-align:center; background-color:gold" | O || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || style="text-align:center; background-color:lightgreen" | + || style="text-align:center; background-color:lightgreen" | + || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" |
 +
|-
 +
| [[PowerPC64 Port|PowerPC64]] || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + ||  style="text-align:center; background-color:lightgreen" | + || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" |
 +
|-
 +
| [[m68k]] || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" |
 +
|-
 +
| SPARC32 || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" |
 +
|-
 +
| SPARC64 || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" |
 +
|-
 +
| [[MIPS port|MIPS]] || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" |
 +
|-
 +
| PIC || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" |
 +
|-
 +
| [[AVR]] || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" |
 +
|-
 +
| RISC-V || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" |
 +
|-
 +
| [[Xtensa]] || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" |
 +
|-
 +
| [[Z80]] || style="text-align:center; background-color:lightgreen" | + || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" |
 +
|-
 +
| [[WebAssembly|WebAssembly 32-bit]] || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" |
 +
|-
 +
| [[ZSeries|Z Systems]] || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || style="text-align:center; background-color:gold" | O || bgcolor="lightgray" | || bgcolor="lightgray" |
 +
|-
 +
| [[FPC_JVM|Java bytecode]] || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | + || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || bgcolor="lightgray" | || style="text-align:center; background-color:lightgreen" | +
 +
|}
 +
 +
+: supported; O: under development.
  
 
== Supported architectures ==
 
== Supported architectures ==
 +
 
SVN trunk contains support at various levels of completeness for the following architectures:
 
SVN trunk contains support at various levels of completeness for the following architectures:
  
 
* i386
 
* i386
* AMD64 (x86-64)
 
 
* i8086
 
* i8086
 
* [[ARM]]
 
* [[ARM]]
* AArch64
+
* ARM64 (AArch64)
 +
* AMD64 (x86_64)
 +
* [[AVR]]
 +
* LLVM IR
 +
* [[m68k]]
 +
* [[MIPS port|MIPS]]
 
* [[PowerPC]]
 
* [[PowerPC]]
 
* [[PowerPC64 Port|PowerPC64]]
 
* [[PowerPC64 Port|PowerPC64]]
* [[m68k]]
 
 
* SPARC
 
* SPARC
 
* SPARC64
 
* SPARC64
* MIPS
+
* RISC-V
* [[AVR]]
+
* [[Z80]]
* JVM bytecode
+
* [[FPC_JVM|Java bytecode]]
* LLVM IR
+
* [[Xtensa]]
 +
* [[WebAssembly]]
  
 
== Other architectures and their status ==
 
== Other architectures and their status ==
* RISC-V: separate branch
+
* <del>Webassembly: separate branch, initial implementation only</del> merged to trunk.
* [[Z80]]: separate branch, initial implementation only
 
* Webassembly: separate branch, initial implementation only
 
  
 
== Former ports which were removed ==
 
== Former ports which were removed ==
Line 32: Line 85:
  
 
== Supported targets for i386 ==
 
== Supported targets for i386 ==
* Win32 for i386
+
 
* Linux for i386
 
* [[Target Darwin]] (macOS) for i386 (2.1.x and later)
 
* [[FreeBSD]]/ELF for i386
 
 
* [[Android]] for i386
 
* [[Android]] for i386
* OpenBSD for i386 (under development, currently maintainerless)
+
* [[AROS]] for i386
* [[Target OS2|OS/2]] / eComStation
+
* [[BeOS port|BeOS, Zeta and Haiku]] for i386
 +
* [[FreeBSD]] for i386
 
* [[GO32V2]] DOS extender
 
* [[GO32V2]] DOS extender
* SunOS/ELF for i386 (under development)
+
* Linux for i386
* [[BeOS port]] for i386 (under development)
+
* [[Target Darwin|macOS]] for i386
* NetBSD for i386 (under development, currently maintainerless)
+
* NetBSD for i386
 
* [[Netware]] for i386 (clib and libc)
 
* [[Netware]] for i386 (clib and libc)
 +
* OpenBSD for i386
 +
* [[Target OS2|OS/2]] / eComStation
 +
* OS/2 and DOS via EMX (currently not completely up to date)
 +
* [[Solaris Port|Solaris for i386]]
 +
* Watcom compatible DOS extenders
 
* WDOSX DOS extender
 
* WDOSX DOS extender
* OS/2 via EMX (equal to OS/2 target in 1.0.x and earlier; RTL based on EMX runtime library allows building applications running under DOS with EMX extender; currently not completely up to date)
+
* [[Win32/64 Interface|Win32 for i386]]
* Watcom compatible DOS extenders
+
 
* [http://sourceforge.net/projects/befpc/ BeOS/Zeta/Haiku] for i386
+
== Supported targets for AMD64 (x86-64) ==
* [[Target NativeNT]] for i386 (under development)
 
* [[AROS]] for i386
 
  
== Supported targets for [[AMD64]] ([[x86-64]]) ==
+
* [[AROS]] for AMD64 (experimental)
 +
* DragonFlyBSD for AMD64
 +
* [[FreeBSD|FreeBSD for AMD64]]
 +
* [[Installing Lazarus on Haiku|Haiku for AMD64]]
 
* [[Linux for AMD64]]
 
* [[Linux for AMD64]]
 +
* [[Target Darwin|macOS for AMD64]]
 
* [[Win64 for AMD64]]
 
* [[Win64 for AMD64]]
* [[Target Darwin]] (macOS) (2.3.x and later)
 
* FreeBSD for AMD64 (2.4.2 and later)
 
  
== Supported targets for [[i8086]] ==  
+
== Supported targets for i8086 ==  
 
* [[DOS]]
 
* [[DOS]]
* Windows 16bit
+
* Windows 16 bit
 
* Embedded
 
* Embedded
  
 
== Supported targets for ARM ==
 
== Supported targets for ARM ==
* [[Linux for ARM]]
+
 
* [[Android]] for ARM
+
* [[Android]]
 +
* [[AROS]]
 +
* [[Embedded]]
 +
* FreeRTOS
 +
* [[GameBoy Advance]] (under development)
 
* [[iPhone/iPod_development|Target Darwin]] (iOS) (2.3.x and later)
 
* [[iPhone/iPod_development|Target Darwin]] (iOS) (2.3.x and later)
* [[WinCE port|Windows CE/Windows Mobile/Pocket PC]]
+
* [[Linux for ARM|Linux]]
* [[GameBoy Advance]] (under development)
+
* [[Native ARM Systems]] (not cross-development)
 
* [[Nintendo DS]] (under development)
 
* [[Nintendo DS]] (under development)
 
* [[PalmOS port]] (under development)
 
* [[PalmOS port]] (under development)
 
* [[SymbianOS]] (development abandoned)
 
* [[SymbianOS]] (development abandoned)
* [[Native ARM Systems]] (not cross-development)
 
* [[Embedded]]
 
  
 
== Supported targets for AArch64 ==
 
== Supported targets for AArch64 ==
 +
 
* Linux for AArch64
 
* Linux for AArch64
* [[Target Darwin]] (iOS 64bit)
+
* [[Target Darwin]] (iOS 64bit, macOS 64 bit)
 +
* Windows for ARM64
  
 
== Supported targets for PowerPC ==
 
== Supported targets for PowerPC ==
Line 92: Line 152:
  
 
== Supported targets for m68k ==
 
== Supported targets for m68k ==
* [[Amiga]]
+
* [[Amiga|Commodore Amiga]]
 
* [[Portal:Linux|Linux]] for m68k
 
* [[Portal:Linux|Linux]] for m68k
 
* NetBSD (ELF only)
 
* NetBSD (ELF only)
 
* [[Atari|Atari TOS]] (compiler itself works, but it's still in early stage)
 
* [[Atari|Atari TOS]] (compiler itself works, but it's still in early stage)
 
* [[Target MacOS|MacOS]] (classic, planned)
 
* [[Target MacOS|MacOS]] (classic, planned)
* [[PalmOS port|Palm OS / Garnet OS]] (planned)
+
* [[PalmOS port|Palm OS / Garnet OS]] (works, but experimental)
 
* [[Embedded]] (planned)
 
* [[Embedded]] (planned)
  
Line 103: Line 163:
  
 
== Supported targets for SPARC ==
 
== Supported targets for SPARC ==
* [[SunOS/ELF]] for SPARC (in maintenance mode)
+
* [[SunOS/ELF|Solaris]] for SPARC (in maintenance mode)
 
* Linux for SPARC
 
* Linux for SPARC
  
Line 121: Line 181:
  
 
See [[AVR]] page for details.
 
See [[AVR]] page for details.
 +
 +
== Supported targets for RISC-V ==
 +
* Linux
 +
* Embedded
 +
 +
Both 32- and 64-bit are supported.
 +
 +
== Supported targets for Xtensa ==
 +
* Linux
 +
* FreeRTOS
 +
* Embedded
 +
 +
== Supported targets for Z80 ==
 +
* ZX Spectrum
 +
* MSX-DOS
 +
* Embedded
  
 
== Unofficial 3rd party ports ==
 
== Unofficial 3rd party ports ==
Line 129: Line 205:
  
 
* [[ZSeries]] IBM System/370, S/390 and zSeries mainframes (under development as "i370")
 
* [[ZSeries]] IBM System/370, S/390 and zSeries mainframes (under development as "i370")
 +
 +
== Stalled ports ==
 +
 +
* [[GameCube]]
 +
* [[xbox|Xbox]]
  
 
== Unlikely to be ported ==
 
== Unlikely to be ported ==
  
 
* [[Sanos]] Win32-compatible console-mode operating system
 
* [[Sanos]] Win32-compatible console-mode operating system
 
 
* MUSIC/SP OS-compatible IBM mainframe operating system, using EBCDIC. [[Qemu and other emulators#MUSIC/SP using Sim/390 or Hercules]]
 
* MUSIC/SP OS-compatible IBM mainframe operating system, using EBCDIC. [[Qemu and other emulators#MUSIC/SP using Sim/390 or Hercules]]
  
Line 145: Line 225:
  
 
[[Category: Operating Systems and Platforms]]
 
[[Category: Operating Systems and Platforms]]
 +
[[Category:FPC]]

Latest revision as of 03:21, 25 June 2021

العربية (ar) Deutsch (de) English (en) français (fr) Bahasa Indonesia (id) português (pt) русский (ru) 中文(中国大陆)‎ (zh_CN)

This list presents all processor architectures and operating system platforms supported by Free Pascal (including experimental implementations).

Classic home computers Gaming consoles Mobile systems Desktop Universal systems (desktop, workstation, server etc.) Embedded Mainframe Virtual machines
OS
Processor
ZX Spectrum MSX GameBoy Advance Nintendo DS Nintendo Wii Android iOS Palm OS / Garnet OS Symbian OS DOS / Go32 AmigaOS AROS Haiku MorphOS TOS BeOS FreeBSD NetBSD OpenBSD Solaris Mac OS Classic macOS (OS X) AIX Linux Win16 Win32 Win64 OS/2 Netware FreeRTOS Embedded z/OS WASI Java
i386 + + + + + + + + + + + + +
x86-64 O + + + + +
i8086 + + +
ARM (AArch32) O O + + O O + + + +
ARM (AArch64) + + + +
PowerPC32 O + + + + + + +
PowerPC64 + + +
m68k + + + + + +
SPARC32 + +
SPARC64 +
MIPS +
PIC +
AVR +
RISC-V + +
Xtensa + + +
Z80 + + +
WebAssembly 32-bit + +
Z Systems O
Java bytecode + +

+: supported; O: under development.

Supported architectures

SVN trunk contains support at various levels of completeness for the following architectures:

Other architectures and their status

  • Webassembly: separate branch, initial implementation only merged to trunk.

Former ports which were removed

  • iA64/Itanium:
    • Non-compiling compiler, only some basic units for the compiler were implemented
    • Itanium has been officially discontinued as of January 30th, 2019
  • Alpha:
    • Non-compiling compiler, only some basic units for the compiler were implemented

Supported targets for i386

Supported targets for AMD64 (x86-64)

Supported targets for i8086

  • DOS
  • Windows 16 bit
  • Embedded

Supported targets for ARM

Supported targets for AArch64

  • Linux for AArch64
  • Target Darwin (iOS 64bit, macOS 64 bit)
  • Windows for ARM64

Supported targets for PowerPC

Supported targets for PowerPC64

  • Linux (2.1.x and later)
  • Target Darwin (Mac OS X) (2.3.x and later)

Supported targets for m68k

See page m68k for details.

Supported targets for SPARC

  • Solaris for SPARC (in maintenance mode)
  • Linux for SPARC

Supported targets for SPARC64

  • Linux for SPARC64

Supported targets for MIPS

  • Linux for MIPS

Supported targets for PIC

  • Embedded

See MIPSEL page for details

Supported targets for AVR

  • Embedded

See AVR page for details.

Supported targets for RISC-V

  • Linux
  • Embedded

Both 32- and 64-bit are supported.

Supported targets for Xtensa

  • Linux
  • FreeRTOS
  • Embedded

Supported targets for Z80

  • ZX Spectrum
  • MSX-DOS
  • Embedded

Unofficial 3rd party ports

  • GP2X (under development)
  • UEFI Unified Extensible Firmware Interface (under early development)
  • ZSeries IBM System/370, S/390 and zSeries mainframes (under development as "i370")

Stalled ports

Unlikely to be ported

Resources for porting to new platforms...

... and keeping existing ones up to date.

  • FPC HowToDo - new additions requiring attention of platform maintainers
  • System unit structure - (work in progress - only skeleton finished) description of System unit internals

Cross compilation

Information about compilation for a different platform as the one running the compiler may be found in Cross compiling.