Website Obituary: TurboPower.com
TurboPower started in 1985 with Mr. Kim Kokkonen writing the famous TurboProfessional toolkit 1.0 many years ago.
TurboProfessional collection was a set or routines for TurboPascal that aids in dos-based 80column x 40rows Menu options, Top-layer drop-down menus, DOS-based Windowed layout and simple single-file system, simple TSR hook, flat-file block I/O (it would resolve 64kb limits). The edit controls, or rather, text-based edit fields would control keyboard and mouse. (Your reviewer call it "TPro")
When TurboPascal 6.0 (with Objects) came out, ObjectProfessional was released, with a re-hash of TurboProfessional as objects instead. There was added, Text-file viewer, mini-help viewer (OPH), and somewhat decent XMS/EMS/Swapping/DPMI support. (Your reviewer call it "OPro")
TurboPower brought over BTree from a German company and called it the famous TurboPower BTree Filer package. BTree filer was an indexed-sequential implementation of the BTree algorithm in commercial package. BTree Filer had ISAM support with IPX/SPX support, Microsoft sharing, NETBIOS support. If you browse around the CompuServe TURBO forums long time ago, there was object-oriented persistence where you could stream / or serialize OPro objects and TurboVision objects into BTree filer. (More info below)
The idea was, long time ago, you were using DOS, CRT, and needed more functionality than required. For example, there was GoToXY, but that moved both cursor position and write to DOS text on that area. There were the IBM PC Interrupt guide, made famous by Peter Norton (anyone remembers the famous Norton Commander?). Thus, it was hard work to make all those code to use:
- Int 21h, 2Fh for DOS services,
- Int 10h for video,
- Int 16h for keyboard, then
- Int 33h for Mouse, then
- make direct memory access (DMA) for Printing and COM port access
- multi-plex DOS using Int 2Fh,
- Custom traps Int 3, 4, 6, 7, 8 (to prevent run-time errors)
- call IBM Lan Manager (now called OS/2), Novell NetWare, Bunyan Vines, MS Network support.
- write correctly to record or file I/O or DBF file support
- swap to disk using overlays, or call XMS, EMS, or DPMI.
- either ANSI.SYS or custom teletype support.
TurboPascal, in those days, you linked to the TurboPascal RTL, but there never seems to be sufficient code. Either you had to spend days browsing the library or hanging around the computer section of the book-store, or attend weekly group meetings:
- If you go to library, all those books would be either checked-out or so old (anyone interested in PDC Unix or K&R C basics?) or so steeped in theory (Knuth's Algorithms volume 1 with code in VAX Assembly). If you got lucky, you could get "interested" your University's librarian and get access to greater time-sharing (with the computer, not with the librarian) and faster computers to try your code out.
- In the computer book-store section, there were those discounts for repeat-buyers, or book-clubs. Those computer books (those days) were bundled together. There were usually with 1 good book and 1 bad book, such as, K&R C++ with AT&T Unix, Vax JCL* guide with Wang Word-Processing guide, or general IBM guides. [JCL: Job Control Language, not Jedi Code Library]
- In those weekly meetings, they were usually sponsored by RS (anyone remembers Radio Shack?) or Compaq (make the switch!) or Heath Cliff (Personal Computing Kits) or IBM (anyone remembers the IBM Joint Development discussions?).
Later years would be the famous IBM PC, with standardized Intel 80186 CPU, a small 2mb Hard disk, 512kb RAM, 5(1/2) inch diskette drives. More expensive models included upgrades included 640kb RAM, dual diskette drives (A:, B:) and bigger hard-disk capacity. The magic that made it work was the Intel 80xxx chip-set that included interrupt multi-plexer, DMA (direct memory access), CPU register-level support.
For example, if you wished to make the serial port (or parallel port) work, you could use Port In, Port Out command to send data to serial port. If you looked at the IBM PC BIOS manual, you could control the Diskette drive (remember the old copy-protection?) and make your own custom "diskette-format" which only your software could read.
In those days, TurboPascal was sold for CP/M and later for IBM PC. Since Intel controlled the CPU and Microsoft controlled the OS, Intel and Microsoft would sell to other vendors. So long as your hard-ware implementation would reset the Intel CPU and chip-set with correct voltages levels, set memory banks to FFh and set the PIC (Programmable Interrupt controller) to "reset" and supply power to the diskette drives, shugart hard-disk and so on, then hand over control to BIOS (anyone remembers the days when the BIOS would say, Checking RAM... 128, 256, 512...), then from BIOS to 1st sector of floppy (beep, beep, beep, beep, beep) and then get a DOS command-prompt, you could call your hardware IBM compatible.
To correctly program the IBM PC (or compatible), you had to have good knowledge of hardware, MS-DOS interrupt calls, and so on. It was hard work writing all those codes. Thus, Mr. Kim Kokkonen wrote if not, one of the first commercial packages for Borland TurboPascal product. Two years later, it won the Jolt Cola awards, one of the highest awards for Software Development.
Using TurboPascal 4/5/6, along with TurboProfessional, you could write nice front-end, small record-type IO, simple keyboard and mouse support, without having to worry too much about memory leaks, memory models, and various C/C++ specifics.
From TurboProfessional, then came ObjectProfessional. In fact, most of the source-code base from TPro and OPro would exceed the quality or completeness found in those BBS's or CompuServe forums. In one package, you could quit spending time browsing around the programming door (or Programming section), or save on CompuServe access time.
Around the next update, TPro and OPro would be DPMI compatible. That spawned off an interesting forth-party add-ons, such as Business Reports (now out of business), OPro spreadsheet add-on (from a company, now out of business) and small WordPerfect clone (now out of business, sued by WordPerfect Corp).
Then, came Turbo Analyst, licensed from code from Per, and then BTree filer. Later would come TurboPower Asynch for DOS (and Windows), and various diskette updates.
Change towards Windows 3.1
With advent of Windows, there were new products, such as, the older packages for 16-bit Windows:
ObjectProfessional -- called Windows Design Library (really old, for 16-bit Windows)
BTree-Filer -- made for both DOS/DPMI/Windows,
Asynchronous Professional -- made DOS/DPMI/Windows 16-bit
TurboAnalyst -- made DOS/DPMI/Windows 16-bit compatible.
Change towards Windows 95
With advent of Windows 95, there was shake-up:
Windows Design Library, ObjectProfessional --> some parts in Orpheus, some in Abbrevia (one-file-system), parts in SysTools
BTree-Filer --> called Flash Filer 1.0, Flash Filer 2.0
Turbo Analyst --> retired, parts in MemProof, parts in SysTools.
Escalon Products* --> On Guard Library, TurboPower essentials.
[* Escalon Products was sold to TurboPower, the owner now works for Microsoft]
Financial issues
TurboPower released a newsletter stating that TurboPower was having some financial issues, and TurboPower would be sold. Few months later, it was sold to Casino Data Systems. CDS took a hands-off approach and used some of their products, presumably, for their Hotel, Reservation and booking system, Casino products.
CDS invested into TurboPower, but it seems that, with 5 million poured over a decade profits were far away. TurboPower took a life of it's own, from Mr. Brian Warner taking over day-to-day activities until a president was found. Mr. De-Rossi came, and then Mr. Eric Hammon, Mr. Julian Bucknall, Mr. Lee (?), Mr. Fred Huffman, Mr. Mike (the AsynchoPro person), Mr. Kent Reisdorph (from Team B). The products were really good...
What's wrong with TurboPower?
What went wrong or was the company doomed from the start?
Your reviewer looked and pondered on various aspects, wondering why TurboPower failed. It had the right people, experts in their field, good accounting practices (you can find them in CDS's SEC (Security Exchange Commissions) filings year after year), good order filfilment, good customer support and excellent products...
Costs
The fall started with Imprise Delphi 4, when prices for Delphi were increased from US$99 to US$149, then US$1500 for the "Professional" version of Delphi. Many hobbyists were disappointed with the new pricing. You can spend a few hundreds on your hobby, but not a few thousands.
Let me explain. If you are a hobbyist, you could spend a few hundreds a month, here and there, but you can't possibly spend a thousand and then a few hundreds here and there as you liked. It would be too expensive.
With high prices, the people who sell add-ons would suffer, and TurboPower was an indirect result of that issue.
Shipping
Your reviewer loves TurboPower, but it made really no sense when shipping. For example, shipping (3 days), the wire-transfer and shipping would eat-up into nearly costs. I don't know about overseas, but it could really get really costly.
Your reviewer saw some complaints about shipping costs, but nope, they always shipped with manuals.
Forever in beta
The legendary products were mired in issues. TurboPower SysTools would have plenty of service patches, FlashFiler would have data-corruption issues, but to be fair, the next week or so, Mr. Julian would get it resolved.
One unusual casualty was Flash Filer, the database that could. The first version was good, but if you added more and more data, there was great risk of corruption. The problems were resolved, but that took over a year leading to FF2. Months after FF2 was released, TurboPower went out of business.
With AsynchProfessional, the product was mired in either driver issues, COMM board issues, or various modem issues. To be fair, there were so many modem versions and so many serial-boards, it was nearly impossible to test all of them, not to mention get it working for overseas customers - Try for example, getting the Caller ID in Brazil (depends on operator; You need to subscribe to CallerID package?) or making a phone call in UAE (you need to make ^7 or ^9 and then wait 5 seconds and call) or work with compatible boards (you need the Hayes-modem compatible ones). Your Fax modem receives needs to be baud 19200 and duplex, and so on.
SysTools/Orpheus was always in development, with some parts left to be desired. For example, the last versions had continually problems with their Grid and editors (to be fair, most of the 1.xx versions were marked depreciated) and newer editors were made.
Newer products, Abbrevia would work well, a good implementation of the PKZIP algorithm. Newer versions had TAR support and ZLib compatible libraries. To be fair, most of the bugs were fixed in later versions, although that resulted in weird bugs such as memory overflow, funny PKZIP compatible errors).
OnGuard had interesting CRC128 algorithm and hashing libraries, but the supposed copy protection had flaws, such as plain-text attacks. The Lockbox had weird RC4/RC5 encryption errors, that was never fixed, so the crypto results were different from standard results. (Use Hagin's DEC library instead).
You could call TurboPower support, but they often prefer you post to their newsgroups.
Not Essential?
Your reviewer could see using Orpheus for grid support, but it was so hard to use, then, SysTools was nice to have, but unless you really needed it, you could live without it. There was no reporting support (that itself is another blog post) or database library other than FlashFiler.
New Kids on the Block
The new kids, notably, Dream Company, DevExpress, LMD had comparable offerings. LMD had good products which competed against SysTools, Opherus.
Developer Express was probably what brought TurboPower down. DeveloperExpress had good product offerings, if you remember the olden days, dxGrid 1.0, 2.0, good offerings (their bars library, master-grid and so on). With DevExpress able to replace most of TurboPower Opherus, Essentials, SysTools there was hardly any more justification for TurboPower...
Sons of TurboPower
In the year 2003, months after awarded "Company of the Year" from Borland, TurboPower went out of business. The employees were absorbed into Aristocrat, but a month later, founded “ComponentScience” (founded by the same person who made Raize components), except Mr. Gary Ferking and Mr. Kent Reisdorph. A year later, ComponentScience went out of business and folded into Fafel technologies. They used to have Fafel flogs (some kind of blog website) that promoted Delphi consulting and later, removed all references to Borland.
Roll Call:
Mr. Kim Kokkonen persued his Masters degree, graduated, now at Intelligent Software Solutions,
Mr. Julian Bucknall went over to DevExpress, replacing CTO Dale Fuller.
Mr Fred Huffman, co-founded ComponentScience and now at Maxim Integrated Products,
Mr. Roy Salisbury and Mr. Robert DelRossi former TurboPower President now at Rocket Gaming Systems.
Mr. Kent Reisdorph and Mr. Gary Ferking, were at R&D at Aristocrat. Mr Kent left, and now at Rocket Gaming Systems.
Mr Mike Welch worked at ComponentScience, now in broadcasting.
Mr Steve Troxell, independent.
[There are others, but your reviewer did not manage to trace them in time before publication]
The king is dead, long live the King.
[Spelling mistakes corrected, re-edited for clarity and accuracy]
[Dates fixed]