While exploring how CDTV titles store preferences and save data, we found ourselves reconstructing a mostly forgotten part of the platform: the bookmark and cardmark ID numbers. With no official records surviving from the Commodore era, we’ve compiled everything we know into a new community resource: the CDTV Bookmark & Cardmark ID Registry!
One of the lesser-known but technically interesting features of the CDTV platform is its support for persistent storage through bookmarks and cardmarks (a subject matter we’ve touched upon many times here at CDTV Land). Because of the CDTV player’s read-only CD-ROM drive, Commodore engineered a system that allows CDTV titles to store small bits of data, such as configuration settings or game saves, using internal non-volatile memory or external memory cards.
Bookmarks live inside the CDTV player, cardmarks live inside memory cards
Bookmark memory is separate from the standard 1 MB of system RAM in CDTV systems; it’s non-volatile, meaning its contents persist even when the machine is powered off. Because of this, it’s extremely limited in size: only 4 KB is available, and it must be shared by all CDTV titles that use bookmarks.
To prevent conflicts between different CDTV titles writing to the same memory, Commodore introduced a 32-bit identifier system, consisting of a 16-bit Manufacturer ID and a 16-bit Product ID. This combination uniquely identifies each bookmark or cardmark in memory and is enforced by the bookmark.device and cardmark.device drivers in the CDTV operating system ROM. In the early 1990s, developers could request a Bookmark Manufacturer ID directly from Commodore, but no official list of assigned IDs was ever published, and is almost certainly lost to time.
The New Registry
To address this, we’ve now created the CDTV Bookmark & Cardmark Identifier Registry on GitHub. It documents all known Manufacturer IDs and Bookmark IDs used by original CDTV titles, as well as more recent homebrew and hobbyist projects. It also provides a way for developers to request a new ID to ensure their software doesn’t inadvertently conflict with existing titles.
If you’re (thinking of) developing for CDTV or looking up existing bookmark IDs, this registry should serve as a helpful reference. In the absence of any surviving authority we think it’s a practical community solution. You’ll also find details on the ID structure and some basic guidance for using bookmarks in your own titles. ■