First post, by pavel
- Rank
- Newbie
Hi, guys!
I'm trying to reverse-engineering some old file formats of the FM-music in old games and i would like to do some research with one program that uses quite old Sound Blaster SDK. It allows to play CMF-files through SBFMDRV.COM.
I've looked at hundreds of sites, old FTP-servers and BBS archives. And all i could find is SDK 2.0, more older SBK with the SMF support and also SDK for CMS.
I'm very surprised because a lot of old game developers used this SDK (SBK) to implement the music support in their projects.
Yes, i know about this topic on the forum.
So, newer SDK 2.0 hasn't functions to play CMF files at all. Newer manual prescribes to convert it into MIDI before using in a programm.
There is a very old SBDEVKIT that allows to work with SMFs (Standard Midi File) only. So, it's different.
I found also QB_SBKIT that has some examples and SDK that i need, but it's for Basic. I need the same but for Turbo C or at least for Microsoft C.
I found only the book in Chinese with some examples with using the SDK that i'm looking for. The source code of official sample DEMOFM.C also here. I can't found that file anywhere else with the SDK. According to book this SDK is called "SBK".
The SDK that i'm looking for has the following files:
SBCMUSIC.H
SBC.H
SBCn.LIB where N is type of memory model.
The file SBCL.LIB consists CMF routines and has copyright string inside:
FM-Music Functions, Copyright (c) Creative Technology Pte Ltd, 1990. All rights reserved.
The SDK provides following functions:
Reference for SBFM High Level Functions
sbfm_init
sbfm_version
sbfm_instrument
sbfm_sys_speed
sbfm_song_speed
sbfm_transpose
sbfm_play_music
sbfm_stop_music
sbfm_pause_music
sbfm_resume_music
sbfm_read_status
sbfm_reset
sbfm_terminate
SBFM Low Level Functions:
sbfd_init
sbfd_instrument
sbfd_note_on
sbfd_note_off
sbfd_program_change
sbfd_music_off
sbfd_setmode
sbfd_reset
The SDK was used by GameMaker software.
Finally, i've found the link in this forum on the official SBDEVKIT here manual with proper description, but no link to libraries
According to manual i've found, SBK distributed on the diskettes with the following directory structure:
The diskettes are organized into 5 sub-directories:
\BIN : executable utilities and drivers
\CMF : sample CMF files
\QBASIC : include files, quick libraries and example programs
for QuickBasic and Basic PDS 7.0
\MSC : include files and libraries for Microsoft C and
Turbo C. Example programs for Microsoft C
\TPASCAL : include files, Turbo Pascal Unit (TPU) and examples
program for Turbo Pascal
So, it will be very nice if our dear members of the forum will help to find the floppy images of that SDK (SBK). But any information will be useful as well. As we can see this framework was very popular among the game programmers, but all of i can find is the manual and some Chinese forum with a little pieces of examples. So, i would be very greatful if someone will help me with my search.