Appendix G — Developer SDK
Beyond the end-user Program Disks, Ad Lib shipped a Developer Toolkit — the C/assembly source of the DOS drivers documented in Chapter 5 and Chapter 7, with buildable examples. This appendix preserves it.
Editions
Three distinct developer/pre-release lineages exist; all are preserved here as authentic floppy images:
| Edition | Disks | Contents |
|---|---|---|
| Developer Toolkit v1.01 | 3 × 720 KB | installer floppies that expand to the SDK source below |
| Beta Software v0.91b | 3 × 720 KB | pre-release drivers/software |
| (Program Disks v1.00) | — | the end-user release, in Appendix E |
Toolkit v1.01 images:
Disk 1 ·
Disk 2 ·
Disk 3.
Beta v0.91b images are under
disks/beta-v0.91b/images/.
Beta v0.91b disk contents
The beta (31 March 1992) is an installer set, structured like the release: a
SETUP.EXE plus a spanned GOLD.CMP archive that expands to a 130-file \GOLD
tree (three weeks before v1.00 — the differences are catalogued in the
v0.91b → v1.00 changelog).
That payload has been decoded and is browsable at
disks/beta-v0.91b/installed/ — note the samples
sit loose in \GOLD (they were only moved into \GOLD\SMP for the v1.00 release)
and SAMPLBNK.EQU is still present (dropped in v1.00). The as-shipped files:
| Size | File | Notes |
|---|---|---|
| 292 536 | SETUP.EXE | beta installer |
| 11 962 | CTRLDRV.EXE | control-chip TSR |
| 1 165 | README.TXT (rendered) | beta notes / hotkey changes |
| 412 698 / 714 950 / 464 053 | GOLD.CMP (disk 1 / 2 / 3) | spanned "Ad Lib Comp." payload (format) |
SDK source (installed toolkit)
The toolkit expands to the driver source in
disks/developer-toolkit-v1.01/installed/.
Each source file is preserved in its original DOS encoding, with a UTF-8
rendering alongside.
| Module | Source | Header | Documents |
|---|---|---|---|
| Control chip | CONTROL.C | CONTROL.H | Ch. 7.1 mixer/setup |
| FM synthesis | FM.ASM | FM.H | Ch. 7.2 YMF262 |
| Digital audio | WAVE.C | WAVE.H | Ch. 7.3 MMA |
| MIDI | MIDI.C | MIDI.H | Ch. 5 |
| Timers | TIMER.C | TIMER.H | Ch. 7 timers |
| Interrupts | INTERR.C | INTERR.H | |
| Get/Set | SET_GET.C | SET_GET.H |
Shared: GLOBAL.H,
DMA.H,
MYMACRO.INC,
MODEL2.MAC,
MAKEFILE.
Pre-built library: DRIVERS.LIB. Editor: ED.EXE. Sampler: SAMPL.EXE.
The toolkit manual itself, SDTK.DOC, is a Microsoft Word-for-DOS binary. The
DOS-era .DOC format was never officially published, so it is preserved
byte-for-byte and rendered
to faithful UTF-8 Markdown — the format decoded directly (CP437 body, 0x07 table
cells, 0x13/14/15 Word fields), with all 51 tables reconstructed and every text
byte preserved:
SDTK manual (rendered).
Example programs (SAMPLE/)
Buildable examples exercising each subsystem:
FMS.C (FM),
MIDIS.C (MIDI),
PLAYBACK.C /
RECORD.C (digital audio),
TIMERS.C (timers),
each with its MAKEFILE and .LNK.