About TurboBBS - by Bob Maxwell Those active on the local BBS scene are probably aware of the Turbo BBS at 738-7811. Those who use it may even know that the source code for the program was written by me in Turbo Pascal, and the program is offered as "shareware". It has received remarkably wide distribution: I have heard from users all over the U.S., as well as Australia, Britain, Finland and Saudi Arabia. Why has it been that popular? It isn't all that great as bulletin boards programs go... it lacks a number of features, and really doesn't do anything unique. The key to its success is most likely in its nature, rather than its content: it is available (cheap) in a high-level source code that is easily adapted for different uses. Furthermore, the compiler it requires is quite popular (also cheap), and produces tight, fast object code. The original program was not written to be distributed. It was simply my first (and so far, only) major project using the Turbo Pascal compiler. I wrote the program because (1) I wanted to start a BBS, and (2) the compiler seemed to be well adapted to the task. The program was written in two weeks of evenings and weekends, with file transfers finally being debugged about a month later. It was written for a Kaypro 2 (Z80 based CP/M machine), using two 191K floppy drives. In publicizing the new BBS, I announced it on the Borland International (publishers of Turbo Pascal) SIG on the massive CompuServe system. I was requested by Borland representatives to release the BBS source code: they had implied to a magazine article writer that they had a Pascal BBS program available on the SIG - and they didn't. After some consideration, I released my code - Version 1.00 - on CompuServe and my own BBS. Version 1.00 had a serious flaw: it was specific to the hardware of the Kaypro, and the code accessing said hardware was well scattered within the program. This made modification difficult. The hardware calls only dealt with the modem port and real-time clock (if there was one), and I endeavoured to separate these routines into a special file. Once that was done, not only was the program portable to other CP/M systems, but also to IBM! It was MS-DOS capability that helped its popularity immensely. The second version released of the BBS was 1.05... a vast improvement over its predecessor, but still well-stocked in shortcomings. It is still the current release, and has been in circulation for well over a year. It seems that further additions of features detract from the modularity of the program, and there are many problems deeply locked in the heart of the code - attempting to remove them would create a bug farm of massive proportions. I have learned a great deal from TurboBBS version 1, and am dreaming up version 2... This is a slow process, since I have all sorts of ideas for it. What makes it slower is the fact that I have already written a BBS, so the sense of adventure that drove the original's development is missing. In addition, there is little economic drive, since the contributions received have not been overwhelming - BBS programs are not quite as popular as word processors or spreadsheets. Fortunately, I had no dreams of getting rich from this endeavour! What I value most from writing and distributing TurboBBS is the people I have met because of the program and the BBS I run using it. People look at the expense of time and money in writing and running a bulletin board, and say I'm crazy. They're probably right, but you gain only by giving of yourself.