Turbo Vision

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
Turbo Vision
DeveloperBorland
Initial release1990; 36 years ago (1990)
Repository
  • {{URL|example.com|optional display text}}Lua error in Module:EditAtWikidata at line 29: attempt to index field 'wikibase' (a nil value).
Written in
Engine
    Lua error in Module:EditAtWikidata at line 29: attempt to index field 'wikibase' (a nil value).
    Operating systemMS-DOS
    PlatformIBM PC compatible PC-98
    TypeWidget toolkit
    LicensePublic domain software[1][2]
    Websitetvision.sf.net
    Turbo Vision based IDE for Turbo C++

    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]
    Third-party Turbo Vision implementations
    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]

    See also

    [edit | edit source]

    References

    [edit | edit source]
    1. ^ 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."
    2. ^ 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)
    3. ^ Free Vision on freepascal.org
    4. ^ 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).
    5. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    6. ^ a b c d e Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    7. ^ a b c d Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    8. ^ a b c d e f Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    9. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    10. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    11. ^ a b c d e f Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    12. ^ a b c d e Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    13. ^ a b c d e Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    14. ^ a b c d Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    15. ^ a b c d e f Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    16. ^ a b c Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    17. ^ a b c d Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    18. ^ a b c d e f Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    19. ^ a b c d Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    20. ^ a b c d e Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    21. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    22. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    23. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    24. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    [edit | edit source]

    Lua error in Module:Authority_control at line 153: attempt to index field 'wikibase' (a nil value).