TVision homepage / Turbo Vision resources

Turbo Vision resources

This is a collection of all Turbo Vision C++ sources I found on the net; there are some Borland Pascal programs too. I preferred to copy these files instead of making links because I believe these links will get lost quickly. Additions and suggestions will be greatly appreciated; send complete references to

These are quick links to the sections below:

Borland site

These files were dowloaded from Borland's official Turbo Vision ftp site at Borland or Imprise.

  1. modifying the desktop pattern
  2. drawing a desktop background
  3. example of changing the text in a dialog box
  4. example of coding modeless vs. modal dialog boxes
  5. demonstrates creating a user-defined resource for Turbo Vision
  6. examples of streaming
  7. example of printing to stderr
  8. using a button end the modal state
  9. help demo
  10. provides a stepwise progession of listbox examples
  11. this demonstrates creating a simple list box in a dialog
  12. demonstrates creating nested menus using TSubMenu
  13. demonstrates creating menus using overloaded operator+
  14. example of message passing
  15. message handling example
  16. example of specializing TInputLine to accept numeric input only
  17. building Turbo Vision library for DOS overlays
  18. functions required for creating a user defined class for streaming
  19. demonstrates creating a simple pop-up menu using class TMenuBox
  20. also demonstrates creating a simple pop-up menu using class TMenuBox
  21. an example of using multiple radio buttons
  22. creating your own class for writing to a resource file
  23. example based on the CALC.CPP code in the Turbo Vision demos directory
  24. streaming a User Defined Dialog
  25. example of using TMemo and overriding a draw member function of TBackground
  26. this sample code demonstrates creating context sensitive help
  27. creating a TListBox
  28. describes a method of adding control validation to TV
  29. discusses using BIOS and graphics methods for displaying Turbo Vision
  30. this program is an example of controlling the dos screen upon exit
  31. known problems with Turbo Vision, and code modification fixes
  32. TMemo class example
  33. simple Turbo Vision File Editor
  34. serial Communications Example
  35. changing static text in a dialog box
  36. Borland's public release of Turbo Vision 2.0

Dialogs section

  1. J.H. Price: dynamic text demonstration
  2. edit a TListBox item using a TInputLine
  3. control multiple lists with a common scrollbar
  4. sample code for making resource file
  5. message input box replacement version 2.00
  6. message input box replacement, many features - BC3.1
  7. message input box replacement, many features - BC4.x
  8. a status box like the IDE's and a message window
  9. mark multiple items in a collection - toggle values
  10. password dialog and simple algorithm
  11. how to implement pxeng with TListBox
  12. fix memory problem for large radio button cluster
  13. sample code reading a resource file
  14. scrolling dialog box - revision
  15. scrolling dialog box
  16. a streamable combo box
  17. TextVu, fast TextView replacement, Pascal src
  18. numeric dialog box inputs
  19. input line Paradox style
  20. derived from TInputLine, a PDX style picture class
  21. scrollbar using long, not ushort - PXEngine demo
  22. numeric input routines for TP 6.0 and Turbo Vision
  23. numeric input routines for TP 6.0 and Turbo Vision
  24. create TurboVision dialog boxes w/hidden msgs
  25. TListBox and PXEng example
  26. examples of scientific data dialog box

Desktop section

  1. draw a background logo on desktop
  2. how to stream desktop objects to file
  3. class for a dumb terminal object
  4. demonstrates how to put hints on the status line
  5. example of cascading menu items
  6. messages put to the status line
  7. demonstrates a screen saver using ISR routines
  8. uses CTRL- key hotkey combinations
  9. allows toggled items to appear in a menu
  10. adds a title bar above the menu bar
  11. TTY style class implementation
  12. color Image Desktops for TP7/TV w/src, F.Earnest
  13. demonstrates how to put hints on the status line
  14. example of making windows iconic
  15. all the defines for TV1.03 in one header file

Gadgets section

  1. G. Rossi: cheap clock (BP)
  2. click alternates clock between 12 and 24 h time
  3. implement gauges in a dialog box
  4. TV2, beeps on mouse click outside specified area
  5. background printer object
  6. progress bar utility
  7. ScreenSave routines for TurboVision, E.Groothuis
  8. how to change language at runtime dynamically
  9. another progress bar utility, expands on
  10. a simple TP 7.0 screen saver for Turbo Vision
  11. exploding windows and dialog boxes

Graphics section

  1. graphics Engine for Turbo Vision (BP7 or TP7), J.Pelt
  2. excellent graphics library for Turbo Vision
  3. excellent graphics library for Turbo Vision
  4. Graphic Vision 1.01 (BP)
  5. Graphic Vision 2.01 (BP)
  6. alternate to (originally tvalt2.txt)
  7. graphics library for Turbo Vision
  8. make Borland TurboVision run in graphics (C++), C.Burke
  9. make TurboVision run in graphics mode (PAS), C.Burke
  10. library of graphics routines

Database section

  1. demo of TV and PXEngine, use with to test
  2. TV and PXEngine sample classes for input/output
  3. Data Entry Platform for TurboVision, R.Beck

Editor section

  1. colour syntax highlighter class
  2. text file editor with Borland Turbo Vision src, J.Ferguson
  3. enhanced TEditor object for TP7/TurboVision
  4. enhanced TEditor object for TP7/TurboVision
  5. virtual memory text editor library for TV
  6. memo implementation of THistory
  7. TEditor class replacement for TV 1.03
  8. TEditor class replacement for TV 2.0

Spreadsheet section

  1. simple spreadsheet (BP)
  2. simple spreadsheet (BP)
  3. spreadsheet like object

Graphical user interface section

  1. message passing from a dialog to a window
  2. make Turbo Vision look like Norton, A.Zimarev
  3. common files for TV screen generator (real and prot. mode)
  4. TurboVision 2.0 screen generator (real mode)
  5. TurboVision 2.0 screen generator (protected mode)
  6. class extensions from TInputLine
  7. updates
  8. validation classes for TV2.0
  9. field validation object - later version
  10. field validation object
  11. print text to screen after exiting TV

Help section

  1. allows user to go back one page in help window
  2. free help compiler (BP)
  3. universal helpfile creating utility (BP)
  4. complete freeware replacement for TV's help system
  5. Turbo Vision Study Guide - teaches TV
  6. demo of help system with commentary
  7. tvhc-1.0.2.tgz: S. Clushin: port of the Help Compiler

Library section

  1. provide support for all textmodes in Turbo Vision
  2. advanced gadgets for TV; very interesting
  3. serial object for TurboVision (needs a FOSSIL driver)
  4. some numerical inputroutines for TurboVision (TP/BP)
  5. object-oriented database for TP6.0/TurboVision
  6. TV resource dumper for TP 7.0 and TV 2.0
  7. TV 2.0 extensions, inputlines, 3D dialog boxes, R.Hansen
  8. many stream additions for TP/BP, Duncan Murdoch
  9. library of extensions and miscellaneous
  10. improves TV help and VGA and VESA
  11. improves TV help and VGA and VESA
  12. improves TV help and VGA and VESA

Memory section

  1. DPMI Exception Handler Library for TV 2.0
  2. TV1.03 and BC3.1 in protected mode - complete sources
  3. how to use Memcheck with TV1.03
  4. memory checking utility for compiling
  5. spawns programmes without destroying desktop

Palette section

  1. implements black text on a black background
  2. permits you to change the palette easily
  3. selector dialog for application colours
  4. save and restore palette as resource
  5. dynamic selection of palette
  6. palette routines for TV

Patch section

  1. use TV2 with BC++ 3.1 (not protected mode)
  2. use TV2 with BC++ 3.1
  3. use TV1.03 with BC++ 4.x
  4. how to use far virtual tables in TV
  5. TV library from BI (not tested)
  6. Oliver Suciu's port of TV to g++
  7. a bug list with many fixes for TV and BC
  8. TObjstrm patch for the library
  9. sysint.asm patch for the library
  10. sysint.asm patch for the library
  11. differences between TV 1.0 and TV 1.03
  12. pharlap DOS extender patches for TV1.03
  13. similar to above but in diff format
  14. the latest bug release for TV2 (1996.11.18), now with source
  15. further source code on converting TV to DLL
  16. further comment on converting TV to DLL
  17. patches source code to convert TV to DLL
  18. tv2pat.exe: more patches for TV2.0
  19. how to patch TV1.03/BC4.x
  20. the current bug list for TV 1.03 April 1996
  21. project file for BC4.x
  22. older patches for TV1.03
  23. patches TV1.03 for PharLap DOS extender
  24. BC4.x project for TV1.03 overlays
  25. Portable 32 Bit TurboVision

TechInfo section

Borland International makes technical advice available through a series known as TechInfo, abbreviated as TInnnn. The series is not limited to TV and covers other topics relevant to Borland products. Each issue covers a specific topic.

All issues in this series mentioning Turbo Vision are listed here; these text files have been bundled together under the name for an easy download.

  1. the Borland TechInfo series on TV
  2. TI1006: overlaying Turbo Vision (1992.08.12)
  3. TI1011: modal and Modeless Dialog Boxes using Turbo Vision (1992.08.12)
  4. TI1013: making string lists using Turbo Vision (1992.08.12)
  5. TI1020: understanding & Using Turbo Vision's Palette (1992.08.21)
  6. TI1021: how to extract text from a TEditor Buffer (1992.10.23)
  7. TI1022: initialization Order of Objects & Turbo Vision (1992.12.03)
  8. TI1023: persistent Objects using Turbo Vision (1992.12.23)
  9. TI1025: optimizing Screen Updates with Turbo Vision v3.1 (1992.12.23)
  10. TI1033: example of derived TListViewer for Turbo Vision (1992.12.23)
  11. TI1158: a modal dialog from a modal dialog with Turbo Vision (1992.11.11)
  12. TI1159: graying Buttons with Turbo Vision (1992.11.11)
  13. TI1160: dynamically modifying Turbo Vision menus (1992.12.03)
  14. TI1296: using Turbo Vision resource files (1993.10.25)
  15. TI1297: example of password entry using a TInputLine (1993.10.25)
  16. TI1369: changing the color of shadows in Turbo Vision (1993.10.25)
  17. TI1395: how to use HeapView in a Turbo Vision program (1993.10.25)
  18. TI1398: Tools.h++ from Rogue Wave conflicts with Turbo Vision (1993.10.25)
  19. TI1532: continuously updated message box in Turbo Vision (1992.12.03)
  20. TI1541: using cmReleasedFocus message to update a dialog box (1993.10.25)
  21. TI1549: switching between text video modes in Turbo Vision (1993.10.25)
  22. TI1552: Turbo Vision example of determining cursor position (1993.10.25)
  23. TI1553: how to override freeItem for Collections (1993.10.25)
  24. TI1554: context sensitive help example (Turbo Vision) (1993.08.30)
  25. TI1555: example of a restricted InputLine (Turbo Vision) (1993.10.25)
  26. TI1557: creating red error dialog boxes in Turbo Vision (1993.10.25)
  27. TI1558: saving/restoring the mouse state in Turbo Vision (1993.09.01)
  28. TI1701: Turbo Vision: streaming a user defined dialog (1993.10.07)
  29. TI1707: broadcast to close a Turbo Vision Modeless Dialog (1993.10.12)
  30. TI1708: using setData to initialize dialog box contents (1993.10.25)
  31. TI1712: Turbo Vision Dialog Box (Modal/Modeless) Examples (1993.10.25)
  32. TI1720: how to disable a button in Turbo Vision (1993.10.25)
  33. TI1730: inserting text into a Turbo Vision window (1993.10.21)
  34. TI1752: rebuilding Turbo Vision 1.0x with Borland C++ 4.0 (1994.01.13)
  35. TI1753: using Turbo Vision 1.0x with Borland C++ 4.0 (1994.01.13)
  36. TI1773: how to build DOS applications in Borland C++ 4.0 (1994.01.25)
  37. TI1778: common questions and answers about Borland C++ 4.0 (1994.02.17)

Utilities section

  1. dialog design tool
  2. dialog design tool
  3. generates menus
  4. for TVDT users, TMemo shoehorned into TView
  5. TurboVision 2.0 screen generator, 1of3, prot mode
  6. TurboVision 2.0 screen gen., 3of3, common files
  7. TurboVision 2.0 screen generator, 2of3, real mode
  8. Shazam II, Code + Resource Generator for TP, J.Stein
  9. TVHC2MSG + improved TVHC 1.1a for TurboVis
  10. Turbo Vision Installer: install for beginners
  11. B. Ziegler: Turbo Vision life (BP)
  12. Turbo Vision resource workshop by Balazs Scheidler
  13. Turbo Vision resource workshop by Balazs Scheidler
  14. Turbo Vision resource workshop by Balazs Scheidler
  15. TP/BP Turbo Vision Utilities Kit, A.Levitas
  16. TVWorkshop - generates C++ source
  17. demonstration menu bar generator

Turbo Vision sources section

There are three official versions of Turbo Vision, made available by Borland in successive products:

TV 1.0
This version of the application frameworks came with BC++ 3.0. Only one file is available:
  1. Turbo Vision 1.0 (16-bit) for BC++ 3.0
TV 1.03
This version came with BC++ 3.1. Its TV.H contains a #define _TV_VERSION which is not present in the earlier version. Related files are:
  1. Turbo Vision 1.03 (16-bit) for BC++ 3.1
  2. Turbo Vision 1.03 ported to DJGPP by Robert Hoehne, library and include files
  3. Turbo Vision 1.03 ported to DJGPP by Robert Hoehne, complete source files
  4. Portable TV: TV1.03 for OS/2, WATCOM & DOS4GW, DJGPP
  5. help compiler for Portable TV (optional, the original BC help compiler works as well)
  6. special djgpp iostreams for Portable TV, if you have problems with the original dj iostreams
  7. special emx iostreams for Portable TV, if you have problems with the original emx iostreams
TV 2.0
This is part of the PowerPack for DOS designed for use with BC 4.x; its main characteristics are: These are all related files I found:
  1. Borland's public release of Turbo Vision 2.0
  2. Turbo Vision 2.0 (16- and 32-bit) for BC++ 4.02+, unmodified sources
  3. Turbo Vision 2.0 with Eric Woodruff's bug fixes

Missing files section

When searching for useful sources, I found a large number of dead links; their related files are listed below. If you have one or more of these missing files, please send them to me.

  1. radio button handleEvent routine
  2. radio button handleEvent routine
  3. extended dialog class, ENTER works like TAB
  4. InputField class for dialog boxes
  5. change appearance of output fields with setData()
  6. TCollection for a picklist similar to THistory
  7. password inputline code snippet
  8. hints for using Turbo Vision resource files
  9. TV code from 4/94 CUJ article by S. Welstead
  10. a string inputline class, with demo programme
  11. creating a second modal dialog from within a first
  12. modified TInputLine that parses input as it is entered
  13. put check boxes in a TSubMenu
  14. shelling to DOS
  15. array implementation of menu items
  16. replaces first character of menuline name with mark character
  17. menu play and a scrolling menu bar, very interesting
  18. example of TV menu nesting
  19. Maxwell's print stream classes, supports many printers
  20. Patrick Reilly's original printer stream class
  21. Roger Nelson's extended gadgets library, use pkunzip -d
  22. rvisionc.lzh: same as above, uses lha.exe to unpack
  23. a string class for TV
  24. simple paradox table viewer for TV
  25. some mouse routines that run under Turbo Vision
  26. an About Box with a timer
  27. virtual listbox demo
  28. a listbox viewer
  29. earlier version of that includes src
  30. modules necessary to implement a word wrapping editor
  31. creates a spreadsheet in .WK1 format
  32. help dialog boxes with hints on the statusline
  33. notes on learning TV
  34. same as above, in Word Perfect format
  35. TStreamView class
  36. TField and TDate class library
  37. example programme using TField
  38. hardware error handler library for TV
  39. demo of a class library to extend the functionality of TV
  40. how to add memory checking to the library
  41. revision of
  42. Example makefile for Turbo Vision experiments
  43. Magic Vision v2.0, graphics mode of TV
  44. Robert Hoehne's port of TV to g++, header changes and lib
  45. Robert Hoehne's port of TV to g++, source changes
  46. Problems building DPMI 16-bit TVDT 2.5 apps with BTVDT.LIB
  47. tv4gcc.tgz: TurboVision for ICC, BCC and GCC/EMX, port by Alain Borel
  48. Turbo Vision resource workshop by Balazs Scheidler

TVision homepage / Turbo Vision resources