Security News
The Risks of Misguided Research in Supply Chain Security
Snyk's use of malicious npm packages for research raises ethical concerns, highlighting risks in public deployment, data exfiltration, and unauthorized testing.
Tools for extracting assets from Media Station, Inc. CD-ROM titles (including Disney's Animated Storybook)
A Python-based asset extractor and very incomplete bytecode decompiler for Media Station, Inc. CD-ROM children's titles. I loved many of these when I was growing up - especially Dalmatians. The ultimate goal of this repo is to create an engine for ScummVM, but I've found investigation and reverse-engineering easier to do out-of-tree in Python. Please join me in preserving these top-quality children's titles for future generations!
The most important knowledge needed right now is documentation for the bytecode engine (scripts). If you have knowledge or code you can contribute, please let us know!
Get it on PyPI: pip3 install MediaStation
Installing the PyPI package also installs a MediaStation
script that can be invoked from the command line as follows:
# Input directory Export directory
# ................. ...................
MediaStation ~/DALMATIANS/DATA ~/DalmatiansExtract
See and contribute to the updated list on this projects's wiki.
If you like my reverse engineering, you can buy me a matcha latte to show your appreciation 🍵!
Please contribute if you have more details here!
All the data files for known titles are stored in the data/
subdirectory on the CD-ROM. These seem to be the same across the Windows and Mac versions. Some titles have additional files than these (like Tonka Garage, which has some Direct3D models for the car design activity), but these are the known files and formats unique to the Media Station engine.
Media Station titles have these types of files:
*.CXT
)BOOT.STM
)PROFILE._ST
) - ONLY non-OG titles.Each context file generally contains all the assets (and, depending on the version, the scripts) necessary to render one screen of the game. Since the format seems to have been originally designed for Disney's Interactive Storybook, this makes sense.
RIFF
s.RIFF
_chunk_s.
igod
: Indicates a chunk that contains metadata about asset(s) in metadata sections.a000
, where 000
is a string that represents a 3-digit hexadecimal number: Indicates a chunk that contains actual asset data (mainly sounds and bitmaps) with lower-level metadata in metadata sections.Also known as the "system" file. Contains metadata sections with global title information like the following:
When present, contains a human-readable enumeration of metadata like the following:
This doesn't seem to be opened/read by the executables at all while the titles are running. But there is a ton of useful cross-checking info in here.
I re-discovered these titles when I was finding Director titles for the ScummVM Director
engine at GSoC 2020. Coincidentally, the main data file extension (*.CXT
) used in Media
Station titles is the same as that used for protected Director cast archives. I quickly
discovered these weren't Director titles but something completely different - and so this
project was born to preserve them.
Coming soon! For now, the Disney's Animated Storybook article has great background on the early titles, sourced largely from Newton Lee's books.
FAQs
Tools for extracting assets from Media Station, Inc. CD-ROM titles (including Disney's Animated Storybook)
We found that MediaStation demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Snyk's use of malicious npm packages for research raises ethical concerns, highlighting risks in public deployment, data exfiltration, and unauthorized testing.
Research
Security News
Socket researchers found several malicious npm packages typosquatting Chalk and Chokidar, targeting Node.js developers with kill switches and data theft.
Security News
pnpm 10 blocks lifecycle scripts by default to improve security, addressing supply chain attack risks but sparking debate over compatibility and workflow changes.