Turbo Vision
This article needs additional citations for verification. (January 2017) |
| Turbo Vision | |
|---|---|
| Developer | Borland |
| Initial release | 1990 |
| Repository |
|
| Written in | |
| Engine | |
| Operating system | MS-DOS |
| Platform | IBM PC compatible PC-98 |
| Type | Widget toolkit |
| License | Public domain software[1][2] |
| Website | tvision |

Turbo Vision is a character-mode text user interface framework included with Borland Pascal, Turbo Pascal, and Borland C++ circa 1990. It was used by Borland itself to write the integrated development environments (IDE) for these programming languages. By default, Turbo Vision applications replicate the look and feel of these IDEs, including edit controls, list boxes, check boxes, radio buttons and menus, all of which have built-in mouse support. Later it was deprecated in favor of Object Windows Library, the Win16 API, and the GUI tools of Borland Delphi.
Around 1997, the C++ version, including source code, was released by Borland into the public domain[1][2]. Several developers and developer teams have worked on their own versions of the framework afterwards. Some of them have been listed in the table below.
The Pascal version, which was distributed alongside Borland Pascal 7 on a "bonus" disk, was never released under a free software license, so the Free Pascal project recreated its own version by backporting a clone made by Leon de Boer that ran in graphical mode back to textmode. The result is called Free Vision.[3] Over the years this codebase has grown stable on nearly all operating systems and architectures that FPC supports. The textmode IDE is very close to the original TP environment, with built-in compiler and IDE much closer than e.g. RHIDE, and supporting functionality like code folding.
Unicode support
[edit | edit source]One of the factors limiting Turbo Vision's popularity was the absence of Unicode support in the original Borland version. As of October 2020, there are Unicode versions for C++[4] and Free Pascal.[5]
Third-party implementations
[edit | edit source]| Project name | Active | Latest release | Last update | Unicode support | Language | Graphical | Platforms | License |
|---|---|---|---|---|---|---|---|---|
| Turbo Vision (magiblot)[4] | Yes | No stable releases (according to GitHub)[4] | As of May 2025, project is active[4] | Yes (UTF-8)[4] | C++[4] | No | DOS, Linux, Windows[4] | MIT[4] |
| Free Vision[6][7][8] | Yes | FPC 3.2.2[9] | As of February 2025, project is active[10] | Yes (since February 2022)[6][7][8] | Pascal[6][7][8] | No | Most platforms supported by FPC (tested on Linux and Windows)[6][7][8] | LGPL with linking exception[6] |
| TVision port to the GNU compiler[11] | No | 2.0.3[11] | 17 November 2016[11] | No | C++[11] | No | DOS, FreeBSD, Linux, QNX, Solaris and Win32[11] | GPL[11] |
| Port for Virtual Pascal[12] | No | 2.1 Build 279[12] | 13 May 2004[12] | No information | Pascal[12] | No | Windows, OS/2, Linux[12] | No information |
| GraphVision[13][14] | No | 2.01[13][14] | 23 April 2001 (file date)[13] | No information | Pascal[13][14] | Yes | DOS (graphics mode)[13][14] | No information |
| TVision (Sergio Sigala)[15] | No | 0.8[15] | 10 August 2001[15] | No | C++[15] | No | Linux and FreeBSD[15] | BSD-like[15] |
| Port for TMT Pascal[16][17] | No | Not specified | 18 August 2000 (file date)[17] | No information | Pascal[16][17] | No | DOS (TMT Pascal)[16][17] | No information |
| Graphics Vision (MKM Software)[18] | No | 3.0 (DOS/DPMI/Windows), 2.10R2, 2.01 (DOS)[18] | 9 February 1999 (version 3.0)[18] | No information | Pascal[18] | Yes | DOS, Windows, Linux (GV/FPC), DPMI[18] | Free for individual use, commercial license, DOS libraries - LGPL[18] |
| Super Vision[19] | No | 2.2[19] | Unknown | No information | Pascal[19] | Yes | DOS (SVGA)[19] | No information |
| Turbo Vision for Rust[20] | Yes | 1.0.0[20] | 18 November 2025 | Yes | Rust[20] | No | MacOS, Windows, Linux[20] | MIT[20] |
Applications using Turbo Vision
[edit | edit source]- Dos Navigator
- IBM Handshaker
- SET Edtor
- RHIDE
- OSPlus Text editor[21]
- TMBasic[22]
- NE (NO EDLIN)[8]
- EditV[8]
- IDA (DOS version)
- turbo (text editor)[23]
- tvterm (terminal emulator)[24]
See also
[edit | edit source]References
[edit | edit source]- ^ a b Tvision "What about copyrights? [...] According to a FAQ entry in the Borland's site (was in http://www.inprise.com/devsupport/bcppbuilder/faq/QNA906.html[permanent dead link] when I saw it) the code is public domain. I also asked in the Borland's newsgroup and the TeamB people (not official people but they are who give technical support in the net) said me the FAQ was right."
- ^ a b Turbo Vision - by Borland Developer Support Staff on community.borland.com/ "Question: Where can I find the public domain version of Turbo Vision? Answer: It can be found at ftp.inprise.com/pub/borlandcpp/devsupport/archive/turbovision/" (1998, archived)
- ^ Free Vision on freepascal.org
- ^ a b c d e f g h Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ a b c d e Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ a b c d Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ a b c d e f Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ a b c d e f Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ a b c d e Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ a b c d e Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ a b c d Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ a b c d e f Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ a b c Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ a b c d Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ a b c d e f Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ a b c d Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ a b c d e Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
External links
[edit | edit source]- Free Vision - Free Pascal's implementation of Turbo Vision
- TVision website
- "Sigala's version"
- Turbo Vision resources
- A lookalike implementation for Java
Lua error in Module:Authority_control at line 153: attempt to index field 'wikibase' (a nil value).