Welcome! « Thread Started on Jul 5, 2004, 11:06am »
I've set this board up as a place for BDS C users (the few that there may actually still be... ) to network a bit. I'll also be glad to answer any questions that arise, to the extent that I can remember anything any more about how BDS C works
Enjoy, -leor
« Last Edit: Jul 5, 2004, 11:16am by Leor Zolman »
Joined: Aug 2004 Gender: Male Posts: 1 Location: Chattanooga, TN
Re: Welcome! « Reply #1 on Aug 28, 2004, 11:18pm »
Leor,
Thanks for your contribution to the art and science of computing.
IMO, BDS C made later advances possible by providing a robust, stable and affordable platform for microcomputer users at a critical point in microcomputing's development. By allowing programmers to use CP/M systems to write useful software, as well as providing a stable learning environment for many fledgling programmers, BDS C is directly responsible (in a good way) for much of what came after.
I don't know how much contribution I can make to this forum, but I'm here to help for what that's worth.
You can see how much traffic this boards gets, LOL...
On top of that, the board never informs me when there's a post, even though I've asked it to...
In any case, thanks for the kind words. I was pretty fortunate to be in a position to have thought of creating BDS C when I did, and then to not know enough about compiler design to believe I could actually pull it off.
I must've started using BDS C around 1980. I did some things with it that were pretty sophisticated for that time. One application simultaneously handled serial input from a guilford SMAC analyzer, a Coulter counter and also served up a user-interface for collecting urology reports. When all data was collected pre-admission test reports would be printed that combined the results of the various testing inputs. There were a number of other applications I developed using BDS C. Some would be considered embedded. I really enjoyed using that compiler.
I must've started using BDS C around 1980. I did some things with it that were pretty sophisticated for that time. One application simultaneously handled serial input from a guilford SMAC analyzer, a Coulter counter and also served up a user-interface for collecting urology reports. When all data was collected pre-admission test reports would be printed that combined the results of the various testing inputs. There were a number of other applications I developed using BDS C. Some would be considered embedded. I really enjoyed using that compiler.
Thanks much.
Thanks, Neal! I do seem to recall your name... has a familiar ring to it -leor
« Last Edit: Dec 10, 2004, 9:55pm by Leor Zolman »
Joined: Mar 2006 Gender: Male Posts: 2 Location: Newington, CT
Re: Welcome! « Reply #6 on Mar 27, 2006, 12:08pm »
Hi Leor -
I just wanted to thank you for putting your compilers into the Public Domain. I purchased both your CP/M and your Z-System compilers but no longer have a computer than can read 5 1/4" disks so was pleased to find that you have a web site and that you have made the compilers available.
I have always been interested in "minimal" languages and "minimal" operating systems.
For example, Les Hankock (had to misspell his name to get past the profanity police) wrote TINY.C, a tiny interpreter which was published in Dr. Dobb's #41 (January 1980), pages 21-8.
(Of course the issue of how to de-library comes up. Kinda reminds you of computers that don't have 5 1/4" drives.)
Another "minimal" language is Mouse, which Peter Grogono built in 1979. I have done quite a bit of work with Mouse (which ends up being quite a capable language despite its mostly single-character command set.)
Recently, I revised a Mouse tutorial that I wrote some time back and had an interest in not only putting the latest version on the web but also in making sure that everything was in the Public Domain. Simeon Cran's MYZ80 Z80 CPU emulator has a Public Domain version so it, along with a Mouse interpreter and sample Mouse programs, may now be found at
The reason I joined your BDS C board was to say there are still a few people left who appreciate CP/M and your compiler and to also say that the last few days have been a lot of fun re-learning the details of the C language and what you need to do to get a particular program called CMP.C to really work well under BOTH CP/M and under Z-System no matter whether you run the version compiled w/ your BDS C compiler OR your BDS Z compiler.
This was all motivated by my discovery that when I ran CMP.COM, which I had built with the BDS Z compiler a long time ago, in a CP/M environment, the Usage display was garbled. This was caused by a subtle bug in the logic which tested for the presence of Z-System and which resulted in CMP.COM thinking it was running under Z-System when it was not. The Usage display includes the name of the program in its text and the name of the program is CMP under CP/M but it's whatever the .COM file's name is under Z-System.
Specifically, when I run cmp30c built with the BDS C compiler under either CP/M or Z-System, it now shows
11:02 B0:BDSC>cmp30c
Usage: CMP {d1:}fn1.tp1 {d2:}fn2.tp2 {-bhexnum} Option -b used for binary files. hexnum is hex load address
When I run cmp30c built with the BDS Z compiler under Z-System, it shows
11:05 B1:BDSZ>cmp30c
Usage: CMP30C {dir1:}fn1.tp1 {dir2:}fn2.tp2 {-bhexnum} Option -b used for binary files. hexnum is hex load address
If I run the cmp30c built w/ BDS Z under CP/M, it shows
11:05 B1:BDSZ>nzcpm (this switches to CP/M)
A>b: B>user 1 B1>cmp30c
Usage: CMP {d1:}fn1.tp1 {d2:}fn2.tp2 {-bhexnum} Option -b used for binary files. hexnum is hex load address
While I was at it, I discovered a couple of other bugs involving the clear screen logic and what to do when the end of file is reached in one file before it is reached in the other. CMP itself, being a file compare program, was used to compare both different versions of its own source code and its own executable code.
Thanks, Lee.... it's fun (and always a bit mind-blowing) to see people still playing with BDS C.
To be honest, I should have given it away years earlier than I did. But the tools for, say, creating the PDF from the User's Guide may not have been available much earlier... and I didn't want the folks who'd paid money for the Z version to be upset by having it become freeware a short time after.
Joined: Mar 2006 Gender: Male Posts: 2 Location: Newington, CT
Re: Welcome! « Reply #8 on Jun 1, 2006, 5:41pm »
Leor -
Well, it's me again. My Mom prolly just turned over in her grave at that grammatical gaffe, but sometimes it's fun to be wrong. Anyway, I've just wrapped up a "Tutorial" I've called MaxZ80 which is kind of a play on MyZ80 and Max. (My brother grew a pumpkin which was labeled a Max variety on the package last year and then decided to distribute the seeds from it to a bunch of people for $15 for three seeds; all proceeds are going to Children International - so far he's raised almost $500 and is sponsoring a little girl in Dominican Republic - but I digress.) MaxZ80 is an 18 Chapter Tutorial which I dubbed "Hints" since there is no way you can cover CP/M, Z-System etc. thoroughly in the something like 100 pages inside.
I don't really even have an audience in mind and also, since the pages are heavily dependent on using Simeon Cran's Z80 CPU Emulator, I can't distribute it until I get an OK from him. And the last few times anybody I know has tried to contact him, he has not responded.
The final paragraph in Chapter 18 goes like this:
"As CP/M and Z-System have not been sold or developed for about 15 years (it is now 2006), it seems fitting to end with this example of a fellow who put his heart and soul into producing a CP/M and later a Z-System application which sold thousands of copies and then gave it away. There are many examples in this Tutorial of Public Domain software. The website
holds a lot of formerly commercial CP/M software. It is hoped that the MyZ80 package by Simeon Cran that runs when you launch MYZ80.EXE will be released as well."
Oh, if it wasn't obvious, you're the "fellow" I'm talking about.
I plan on writing a real handwritten letter to Simeon in the near future to ask him where he's at on this issue. I would be so pleased if he 1. responded and 2. released his work.
which is an index into this 18 Chapter "Tutorial" on all sorts of stuff that, I hope, if read, possibly a couple of times, and then played with, will be of interest to maybe a few people. It represents a fair amount of work on my part. I did it just to document what eventually emerged from the never-to-be-duplicated period that started in 1975 and ended about 25 years later.
I was introduced to CP/M shortly after it came out. I'll never forget the day. I was attending some computer meeting at Trinity college here in the Hartford, CT area. I owned a Kaypro (or was it an Altair?) at the time. Some guy who was actually doing consulting work for people in business that had CP/M-based machines told us about DIR, REN, ERA etc. I don't know why, but I was hooked.
Anyway, I think this might be my third effort to capture, in some interesting way, what became of what Gary Kildall started. My second effort was described by Jay Sage as being pretty much of a disaster. And he was right. I tried to pack too much stuff into too little space. This latest thing suffers I expect from this inclination I have but I like to think it has some potential, as it flows from Chapter to Chapter in a hopefully more connected and understandable way.
In any case, it's not that big a deal. I've got it off my chest and it also has some pretty cool "handwriting" stuff which if you spend some time you'll learn about.
Hope your consulting business is going OK and appreciate your providing this forum for die-hards who think the 8-bit world is still and will always be the foundation of everything that followed.
I wanted to tell you (somewhat late) that using BDS C was one of the really fun things of my early days in computing. I was one of your satisfied customers. I believe I purchased at least two releases. I wish I had kept the first manual set but it succumbed to a massive clean up around 1996. Anyway, your software beat the heck out of other systems from that period. It was fast, easy to use and generated reasonably tight code for the time.
Personally, I ended up using it to learn C and to roll lots of useful utilities for myself and later for various departments at Tulane Univ (in New Orleans) where I worked for the computer center in the 80's. I wouldn't be surprised to find some bits still in use there. I did one specialized comm / upload / download program for a custom S-100 based system in the Physic's dept (the S-100 box was the A/D and D/A interface for the prof's experiments. I provided a junior version of Kermit so he could communicate with the University's mainframe systems (some DEC-20's and a large IBM 308x system). In the BioStat group I wrote a very small, high reliability comm program that they used for years to upload field data from Africa to France to New Orleans to get around weird government restrictions in some of those places.
Anyway, I just wanted you to know that your efforts were appreciated. You don't see many software systems these days which are as elegant and fast as it was. I will have to download the binaries and pull it up in an emulator for old times sake.
[When I first saw your handle, "Madbeing", I thought for sure here was another piece of spam...that's mostly what I do on this board, clean up the spam, lol....]
Anyway, BDS C was a fun thing to have been involved with, and I'm really happy about the fact that lots of creative developers got their leg-up into doing C and/or C++ development by having this access to a reasonable C development system on the old 8-bit machines. My only regret was that I didn't have much of a head for business, and missed several opportunities to allow the product to snowball into bigger and more contemporary things. But then, the world probably never needed Yet Another Bill Gates anyway!