Cosmo's Cosmic Adventures

From ModdingWiki

Jump to: navigation, search
Edge of map!
Cosmo's Cosmic Adventures title screen

This is the main page for Cosmo's Cosmic Adventures. For a complete list of all pages related to this game, visit the Cosmo's Cosmic Adventures category page.

Cosmo's Cosmic Adventure, also known simply as Cosmo, is a three part series chronicling the adventures of Cosmo, a small, green sucker-handed alien boy who is seeking his parents after a meteor collision forces them to land their ship on a dangerous and uncharted planet.

File formats

This section lists the major file formats used in the game.

  • B800 Text - 4000-byte *.MNI files are text screens shown at exit (e.g. NOMEMORY.MNI)
  • Cosmo Tileinfo Format - information about how to lay out the actor tiles. ACTRINFO.MNI, PLYRINFO.MNI and CARTINFO.MNI are in this format.
  • Cosmo Tileset Format - ACTORS.MNI, BD*.MNI, CARTOON.MNI, MASKTILE.MNI, PLAYER.MNI and TILES.MNI are all tilesets.
  • Cosmo Level Format - A*.MNI are game levels.
  • CMP Format the COSMOx.VOL and COSMOx.STN files contain most of the game files in this format
  • Inverse Frequency Sound format the SOUNDSx.MNI files are in this format, there are 3 per episode
  • IMF Format - game music (most of the M*.MNI files are music files, e.g. MHAPPY.MNI) - see #Notes below
  • Full-screen planar EGA - 32,000 byte *.MNI files are 320x200 full-screen images (in four planes: blue, green, red, intensity). TITLE1.MNI is the image on the right, which is in this format.
  • VOL Format - group file storing the game data (both the *.VOL and *.STN files are in this format.)
  • Text is contained in the exectuable in all episodes, but in Cosmo 1 & 2, the executable is compressed by LZEXE, and can be uncompressed with UNLZEXE.

Notes

  • The Cosmo engine was later updated and used for Duke Nukem II, which is why the games share a number of file formats.
  • In the original Cosmo Engine, the graphics memory is allocated after the memory used for storing the IMF file loaded for the current level. This has the unfortunate side effect of corrupting the entire tileset graphics table in memory, turning the graphics into random colours when a complex IMF file is loaded. This is because the data from the IMF file overflows its allocated memory and overwrites the start of the tileset data. Of course this only happens in memory, so the corruption is not permanent upon exiting. The corruption will occur whenever that particular over-sized IMF file is loaded, but the corruption will completely disappear if the IMF file is removed from the group file or replaced with a less-complex version (i.e. by reducing the number of notes.) This does not appear to affect how the program runs, only affecting the tileset graphics.

TODO: Find out what the size limit really is on Cosmo IMF files

The limit appears to be around 40K, which is above the size of nearly all Apogee IMF files, but not at the limit of IMF file size (63.9K)

Personal tools
programming