Harry Doldersum logo

MCBase software:
  • General info
  • Windows version
  • DOS version
  • Download center
  • Online ordering
  • User newsletter
  • Product history

    General links:
  • Contact us
  • Site entry
  • Search page
  • Site map
  • Site revisions



    Earn money as an MCBase affiliate!
    Earn money as an
    MCBase affiliate!




    5 star award from GeekFiles.com



    Award of Excellence from FileCart.com



    SoftwareSeeker.com editors choose MCBase as 'Editor's Pick'



    User comments on MCBase


    FileHungry awards 5 stars to MCBase!



    5 star rating from FileCart.com



    5 star rating from BrotherSoft.com




    FreeTrialSoft.com editors choose MCBase as 'Editor's Pick'



    5 star rating from FreeTrialSoft.com



    5 cup rating from 5Cup.com



    User comments on MCBase



    4 star rating from File Transit



    4 star rating from UKWares



    4 star rating from Download32.com



    MCBase - DOS/Win3:
    Powered by Borland Pascal V7



    MCBase - Windows:
    From Vision to Code - Powered by Delphi



  • MCBase - the Music Collection dataBase sytem MCBase - Music Collection database
    MCBase
    the Music Collection dataBase system

    How a database application came to be.

    Website contents: copyright © 1993-99, Harry Doldersum.
    Document version: juli 30th, 1999 (updated).

    MCBase - the Music Collection dataBase system - history.

    MCBase is an application, written by a music collector - for other music collectors.

    I've been collecting music for a long time now. It's somewhere between 1972 and 1975, I guess, when I realize that I'm losing track of the various songs that are available in my music collection. I seem to spend more time just looking for a certain song, then it takes to play the darn thing.

    (As it appears, this was the beginning of an interesting spin-off from my music collecting hobby).

    At first, I just wrote everything down in a small binder. Soon, I realized that this was a very unpractical solution for a growing collection: I tended to do a frequent rewrite of the binder, just to keep at least a bit of logic into it. It didn't take me long, to realize that I was on the wrong track...

    So I got me a card index system (bit of a "Rolodex" idea) and started off to rewrite the whole collection onto those cards. This concept kept me going for quite a while (some 10 years at least, for which I needed two card index systems, in order to store all my data) before I ran into a familiar problem: I lost track of all the songs in my collection. So much for the Rolodex concept...
    Although sufficient for smaller collections, it doesn't support larger collections, when it comes to detailed data retrieval. If I needed to know which interpretations of "Black Magic Woman" were available in my collection, I was browsing through the card indexes for an entire evening.
    I had to come up with a better alternative...

    Around that time, Commodore Business Machines came out with their C-128D. It had 2 (wow!) 64kb memory banks, a good rom-based Basic interpreter and a triple boot facility, allowing me either native C-128 mode, a genuine C64 mode and a CP/M 3.0 mode. I fitted the basic machine with a second 5¼" diskdrive and a 512Kb memory extension.

    At first, I wrote a small program in C-128 basic, which I had called "Muziek Bestand" (if my memory serves me right), to handle my collection in a flat-file structure. In itself, it wasn't bad at all, only it's code was structured like spaghetti <g> and I had to reinvent the wheel each time I thought of a new feature. Since I wasn't thinking of using the software anywhere else as on my own computer, I considered that there should be an easier way to extend my software, when I saw a need for it.

    The alternative was quickly thought up: the C-128 offered it's CP/M mode, on which I could use Ashton Tate's dBaseII (a database oriented interpreter environment). At that time, I also took into consideration, that it would be easier to port the data and the program code to the MS-DOS platform (should the need occur). This led to the first "real" application that I ever wrote: "MBASE", which was completed somewhere in 1988.
    Click to enlarge: MBase, a CP/M implementation, using dBaseII...I wrote a routine to write the data from the C-128 database to a textfile, ported that file from the C-128 to the CP/M platform and wrote a dBase routine to import the datafile into the dBaseII database structure I had thought up. This was the very first time, that I had changed the method of handling my music collection without needing to process all the collection's data again. What a relief! <g>
    Later, when "MBase" had evolved to version 3.0, I released it into the public domain. That was in December 1990. By that time, it extensively used all of the resources the C-128 CP/M mode could offer and it was a good solution to work with. At some stage in this period, I ported the dBaseII code to dBaseIII(+), for a user that had a MS-DOS system with dBaseIII(+).

    Then, there came some requests from folks who didn't have the dBase interpreter, if they could have a "standalone" executeable of the "MBase" database system. Around that time, I was already playing around with Borland's Turbo Pascal and I also found a Pascal library that could be used to access dBase databases from within Pascal: GS_dBase (which later became "Halcyon" from Griffin Solutions).
    Click to enlarge: MCBase V1.x - implementation for MS-DOS...Using Turbo Pascal (which was replaced later on by the professional version "Borland Pascal") and Griffin Solutions dBase access libraries, I wrote the second generation of my Music Collection dataBase system, which was now called "MCBase" and was based on a relational database model. This implementation, "MCBase" V1.0, was released as shareware in June, 1993. It's user interface was still based on the same menu oriented structure as was used in the prior "MBase" versions, but proved to be a quite successful implementation of my database concept.
    (Note: This versions most recent release, MCBase V1.1g, is still available, be it on request only - it's a very suitable implementation for "low-end" computers. If you are interested in a copy, contact us).

    The next step was, that I considered that more items in the database needed to be handled with relations. In "MCBase" V1.x, only the album and the artist entries were handled as a relation. The other fields (composer, writer, producer and category) were not related to a database of their own and were, as such, more difficult to trace back - especially if the names were typed slightly different from each other. So, it was "back to the drawing board" for me... ;-)

    Click to enlarge: MCBase V2.x, for MS-DOS and Windows V3.x ...Since Borland Pascal had it's "Turbo Vision" framework on board, I decided to use that splendid user interface for my new implementation. It incorporated a windowed user interface, with full mouse support and some other facilities that appeared to be quite handy.
    So, in August 1995, "MCBase" V2.x was born. All the database entries were now relational, except for the songtitle, playing time and the location code. This release was really packed with added functionality, while most suggestions for those came from other users. This release, for MS-DOS and MS-Windows V3.x, is still available for download. You may find life-size screenshots on the "MCBase for DOS/Win3 screen previews" page.
    A complete listing of this implementation's features is also available.


    I guess it was in 1996, when I finally installed Windows (V3.11) on my 80386 computer. Not long after that, I wanted to port my "MCBase" project to the windows environment. Using Windows' built in support for OLE and Multi media, it shouldn't be difficult to add Multi Media support to MCBase? Well, think again... <g> As it appeared in a later stage, Windows V3.x was way to much limited to handle any chunks of memory larger than 64Kb.
    Of course, one can create work-arounds for that and handle those chunks of data piece-by-piece. But since Microsoft had already introduced Windows95, it appeared more sensible to jump directly to that platform. Windows95 didn't have the 64Kb memory segment limitations and promised "green pastures" for the "MCBase" project.

    So, I've bought myself a Pentium machine with Windows95 and Borland's Delphi3 - that was around the end of '97 - and began the third total rewrite of the MCBase project. This time, I had my mind set on three main issues: Click here to access the MCBase V3.x information and download pages!
    • adding support for the storage of graphics and multi media clips (both sound and video) to the MCBase concept.
    • adding more relations to the concept (including media relations, since some users had been inquiring about it)
    • to be able to access the collection's data through every entry possible, in a highly flexible manner.
    This resulted in the application as it is now available for download: MCBase V3.

    Click here to access the MCBase V3.x information and download pages!

    Click to enlarge: sample dialog...This new release is fast, robust and reliable (as the beta tests proved) - yet still easy to use. All data in the collection is accessible by means of flexible dialogs that all have various navigation possibilities built in - guaranteed to give a maximum performance in data accessability. Click here for life-size MCBase V3.x screenshots.

    The database system is also capable to store graphics, sound and video clips. The graphics are added by means of "cut & paste" methods, while the sound and video clips are added by import (and export) methods. Due to the import/export technology, it doesn't matter what format these multi media clips are - they are handled as BLOb's (Binairy Large Objects). The clips can be played directly from their containers - as long as they're in a format supported by your computer's multi media system. (Otherwise, you can play them in the required application, by simply exporting them with a click of a mouse).

    Click to enlarge: Report window sample...Various "standard" report jobs have been built in, giving the user an easy way to get the collection's data printed. And also - apart from these standard report jobs - a powerful User Report Designer has been implemented. Using this designer, a user can create a report in every possible layout that he/she might think of. The data and graphics represented in that report can be gathered in various ways, SQL queries included.
    A full listing of this implementation's features is also available.

    I've come a long way, since I started out documenting my collection in that small binder. This version of my MCBase software currently fullfills every need I could ever think of when it comes to managing my music collection. I hope - and trust - you will come to the same conclusion when evaluating the shareware version.


    Harry Doldersum.


    If this page is framed into another site, click here...