CDTV OS 2.35 for Memory Cards

CDTV OS 2.35 for Memory Cards


To upgrade your CDTV player to the latest and greatest CDTV OS version 2.35 you normally need to open up your CDTV player, remove the original ROMs and install the new ROMs. But what if there were an easier way to upgrade your CDTV player to 2.35 without even opening it? Well, if you happen to own one of those elusive CDTV memory cards, now you can!

 

“What sorcery is this?”, you say. “Surely it cannot be that simple to upgrade the CDTV operating system, simply by inserting a memory card into the front panel of the CDTV player? Be gone, mad man! And take thy devilish memory card with thee!” Hold on, my friend. It is that simple! You see, the CDTV memory cards were some of the most criminally underused versatile components of the CDTV player. Storing game saves is just one of the many tricks they have up their sleeve.

CDTV player with memory cards and remote

To illustrate this point, CDTV OS 2.35  has now been “ported” to the CD1401 and CD1405 memory cards, and yes, simply inserting a CDTV memory card that is programmed with CDTV OS 2.35 will override any lower version CDTV OS ROM you might have installed in your CDTV player. Remove the memory card and you have your old CDTV OS ROM back. It is really that simple.

Memory Boost

So, is that all it does? Hell, no! You also get a nice bonus when you install 2.35 on your memory card, because that’s just how we roll at CDTV Land: It also automatically configures all unused memory card space as extra Fast RAM for your CDTV player! This memory is added automatically on boot. No need to mess around with AddMem.

Add precious Fast RAM, save precious Chip RAM.

The CDTV OS 2.35 upgrade in its current iteration only takes up about 22K of memory card space. That means you will not only gain an easily reversible upgrade to CDTV OS 2.35, but you will also gain 40K of Fast RAM with a CD1401 memory card and even 230K of Fast RAM with a CD1405 memory card. All without opening your CDTV player and simply by inserting your pre-programmed memory card.

Compatibility

The CDTV OS 2.35 upgrade for memory cards has been specifically created to work with unmodified/stock CDTV players (model CD1000) with Kickstart 1.3 and CDTV OS 1.0. If you happen to own an unmodified CD1000, and really want to keep it that way, but at the same time you’re interested in trying out some of the advantages of CDTV OS 2.35, then this one’s for you! It will add the following 2.35 features to your stock CDTV player as long as the memory card is inserted:

  • Boot any Amiga CD-ROM (not just CDTV titles).[1] Or author your own CDTV titles without the CDTV.tm file and without ISOCD. Just use your favorite CD-ROM burning software and you’re off to the races.
  • Harddisk boot delay. If you have a SCSI HDD attached to your CD1000, you can now finally access the CDTV title screen and Preferences screen again. And what’s more, with the extra Fast RAM you get, you may not need to disable the HDD anymore to conserve memory.
  • Force exit CDTV Title Screen with Escape key. Allows you to override the HDD boot delay or just plain exit cdstrap to drop down to the Kickstart bootstrap module.
  • Improved CD-ROM filesystem read performance through updated cdfs.library.
  • Bookmark.device buffer overflow bugfix.
  • Extra Fast RAM automatically added on boot!
  • Flashy new “CDTV 2.35” string on your title screen to impress people with.

CDTV OS 2.35

SLIM FIT
CDTV OS 2.35 for memory cards is a slightly cutdown version of the ROM version of CDTV OS 2.35. There is no 68030 / 32-bit Fast RAM support implemented at the moment, but since this upgrade is primarily intended for use with stock CDTV players, this shouldn’t be a problem for most users. Future versions may support 68030 and 32-bit Fast RAM.

How does it work?

Both the Kickstart ROM and the CDTV OS ROM in your CDTV player are built modularly.[2] They contain various software modules like the Amiga operating system kernel (called Exec), device drivers, libraries and more. On system startup all these modules are initialized and merged, and together they form a cohesive whole that forms the Amiga operating system (and the CDTV operating system, which is more or less a pseudo operating system, built on top of the Amiga operating system).[3] These modules are called resident modules.

Typically these resident modules reside in ROM chips, but they can also be located on disk or, as in the case of the CDTV player, on memory cards! And here’s the trick: when multiple versions of a specific resident module are detected inside a system, the module with the highest version number or priority value wins! Because CDTV OS 2.35 only changes a limited number of modules of the CDTV OS ROM, these updated modules are placed on the memory card, but with a higher priority! As a result, the system initialization code will choose the higher priority CDTV OS 2.35 modules on the memory card and ignore the corresponding modules inside the ROM chips.

Overriding ROM modules using the memory card

This resident module scheme was already present in the very first Amiga Kickstart way back in 1985, which is just mind blowing. (Man, I love Amiga!) And it is no surprise that this functionality was extended to support CDTV memory cards, because the smart engineer who created the Exec kernel, Carl Sassenrath, was also heavily involved with the CDTV project. Thanks to this foresight in January of 1991 by the CDTV project team[4] it was possible in 2023 at CDTV Land Laboratories to port CDTV OS 2.35 to memory cards, which is the first time this memory card super power has properly been used publicly. Better late than never!

CDTV LAND LABS
At any given point in time, there are many projects brewing simultaneously at CDTV Land. Instead of waiting for every project to be “complete” before it is released, some long term projects are now released as soon as they are functional and useful. These projects carry the “CDTV Land Laboratories” logo, which means they’re proof-of-concepts, experimental, potentially unstable, may blow up (that one’s a joke) and will most likely see updates in the future, until they eventually “graduate” to a proper release.

Installation

The installer software that programs your CDTV memory card with all this fancy functionality comes on CD-ROM or floppy disk, whichever you prefer. You just insert the memory card in your CDTV player and then insert the CDTV OS 2.35 installation floppy disk or CD-ROM and boot from it and follow the instructions to install it to your memory card. After installation you don’t need the disc anymore. Simply eject the disc and reboot with the memory card still inserted and you will be rocking CDTV OS 2.35 with extra Fast RAM in no time! Carl would be proud.

The installer software

Availability

As with CDTV OS 2.35 proper, 2.35 for memory cards is not an official product. CDTV Land is also not a company, but a community effort to improve and update the CDTV platform. It’s cool stuff for CDTV. Made with love, not for profit. That means 2.35 for memory cards, like everything else from CDTV Land, is available free of charge! The ADF and ISO images for the installer software are automatically generated by the newest version of the CDTV OS 2.35 patch Docker image on GitHub. Because portions of the ROM image that are installed on the memory card are still copyrighted and because legal proceedings are still ongoing in the Amiga world, patching is unfortunately the only way to distribute this software for the moment without breaching copyright.

OPEN SOURCE
All the components that are not part of the Commodore/Amiga IP, i.e. written by CDTV Land, are as always available as open source and freely usable and distributable under the GPLv3 license. E.g. the resident module that adds memory card RAM to the system pool (cardram) is availabe on GitHub as both source code and as a loadable module.

Future Memory

Finally the CDTV community can use these CDTV memory cards for something more than just Sim City game saves, which makes them much more useful and not just a collector’s item to sit pretty on a shelf. You can expect more CDTV memory card functionality in the future from CDTV Land, so hold on to those cards! The fun has only just begun.

However, this memory card experiment does mark the final chapter in the story of CDTV OS 2.35, which has now fully matured into a stable and worthwhile upgrade for many CDTV owners. It is available for CD1000, A570 and A690 in traditional ROM form, and from today also for CD1000 in memory card form, using the CD1401 or CD1405. 

The end of the road!

So does that mean this is also the end for CDTV OS improvements? Of course not! It just means it’s time for a new story. A story called 2.36. The focus at CDTV Land will now shift to improving CDTV OS even further with more stability, more compatibility and some new stuff thrown into the mix. Even though development on 2.36 is already underway, it’s still in very early stages and a release is still a long, long way off, so 2.35 will remain king of the hill for quite some time to come.

Just what the improvements in 2.36 are, we’ll keep under wraps for now, but rest assured that it’ll be worthwhile and that this is the place you’ll hear about it first!

Footnotes

  1. You can boot any Amiga CD-ROM, but of course your system must also meet the system requirements of the software that’s on the CD-ROM, like memory or Kickstart ROM version.
  2. The same goes for your A500 with an A570/A690 CD-ROM drive.
  3. This is a simplification of how it works.
  4. The exec.library build that added memory card resident module scanning is V34 revision 1001, and was built on January 30th, 1991. Its first known appearence is in the Beta version 2.9 ROM of the CDTV OS, which was released for testing in early February 1991.