Jump to content
GarageResearch

ColEm Emulator for Windows, Android, and Linux

Recommended Posts

Hello, All!

I've published ColEm 4.4, the ColecoVision emulator for Windows and Linux, as well as the source code for porting ColEm to other platforms:

http://fms.komkon.org/ColEm/-- homepage
http://fms.komkon.org/ColEm/ColEm44-Windows-bin.zip-- free Windows version

http://fms.komkon.org/ColEm/ColEm44-Ubuntu-x86-bin.tgz -- free Linux version
http://fms.komkon.org/ColEm/ColEm44-Source.zip -- sources

This release adds support for more modern MegaCart cartridges, such as Buckrogers, Subroc, Zaxxon, and Dragon's Lair. The SGM emulation state is now saved to .STA files. I have also added support for 24c08 and 24c256 EEPROM chips, so both Black Onyx and Boxxle fully work now, saving EEPROM contents to .SAV files. ColEm will determine the need for EEPROM automatically, by ROM's CRC, or you can force EEPROM emulation with -24c08 and -24c256 options in Linux. The Windows version offers menu items for switching EEPROM type, as well as links to AtariAge ColecoVision forum, Coleco software publishers, and other sites. Finally, I have fixed a bug restoring background screen color from .STA files. See below for all the changes.

ALL CHANGES:
* Added ROM page switch specific for carts with EEPROM.
* Added 24c08 EEPROM support (Black Onyx saves now).
* Added 24c256 EEPROM support (Boxxle works).
* Now saving EEPROM state into .SAV files.
* Now saving SGM state into .STA files.
* Now accepting both AA55h and 55AAh MegaCarts.
* SGM games Buckrogers, Subroc, Zaxxon, Dragon's Lair work.
* Fixed restoring background screen color from .STA files.
* Added EEPROM menu selections to ColEm-Windows.
* Added links to CV Addict and AtariAge forums to ColEm-Windows.
* Added -24c08, -24c256, and -noeeprom command line options.
* Compiled ColEm-Unix with -Wall and eliminated warnings.
* Replaced -DNO_WAVE_INTERPOLATION with -DWAVE_INTERPOLATION, off by default.
* Removed old LoadSTA() and SaveSTA() code.
* Finally deprecated -DNEW_STATES.

Have fun!
PS: I will use this thread to post ColEm release news and answer questions about ColEm. If you have a question or suggestion, please, feel free to ask it here.
  • Like 3

Share this post


Link to post
Share on other sites

 

Hello, All!

 

I've published ColEm 4.4, the ColecoVision emulator for Windows and Linux, as well as the source code for porting ColEm to other platforms:

 

http://fms.komkon.org/ColEm/-- homepage

http://fms.komkon.org/ColEm/ColEm44-Windows-bin.zip-- free Windows version

http://fms.komkon.org/ColEm/ColEm44-Ubuntu-x86-bin.tgz -- free Linux version

http://fms.komkon.org/ColEm/ColEm44-Source.zip -- sources

 

This release adds support for more modern MegaCart cartridges, such as Buckrogers, Subroc, Zaxxon, and Dragon's Lair. The SGM emulation state is now saved to .STA files. I have also added support for 24c08 and 24c256 EEPROM chips, so both Black Onyx and Boxxle fully work now, saving EEPROM contents to .SAV files. ColEm will determine the need for EEPROM automatically, by ROM's CRC, or you can force EEPROM emulation with -24c08 and -24c256 options in Linux. The Windows version offers menu items for switching EEPROM type, as well as links to AtariAge ColecoVision forum, Coleco software publishers, and other sites. Finally, I have fixed a bug restoring background screen color from .STA files. See below for all the changes.

 

ALL CHANGES:

* Added ROM page switch specific for carts with EEPROM.

* Added 24c08 EEPROM support (Black Onyx saves now).

* Added 24c256 EEPROM support (Boxxle works).

* Now saving EEPROM state into .SAV files.

* Now saving SGM state into .STA files.

* Now accepting both AA55h and 55AAh MegaCarts.

* SGM games Buckrogers, Subroc, Zaxxon, Dragon's Lair work.

* Fixed restoring background screen color from .STA files.

* Added EEPROM menu selections to ColEm-Windows.

* Added links to CV Addict and AtariAge forums to ColEm-Windows.

* Added -24c08, -24c256, and -noeeprom command line options.

* Compiled ColEm-Unix with -Wall and eliminated warnings.

* Replaced -DNO_WAVE_INTERPOLATION with -DWAVE_INTERPOLATION, off by default.

* Removed old LoadSTA() and SaveSTA() code.

* Finally deprecated -DNEW_STATES.

 

Have fun!

PS: I will use this thread to post ColEm release news and answer questions about ColEm. If you have a question or suggestion, please, feel free to ask it here.

 

 

hmm. I tried to download but Windows Deferder said there was a virus. Trojan something. Tried again but wouldn't let me download.

Share this post


Link to post
Share on other sites

hmm. I tried to download but Windows Deferder said there was a virus. Trojan something. Tried again but wouldn't let me download.

 

ColEm 4.4 downloaded without issue on my Windows 10 machine. It's running Windows Defender as well including all patches applied with system up to date.

Share this post


Link to post
Share on other sites

 

ColEm 4.4 downloaded without issue on my Windows 10 machine. It's running Windows Defender as well including all patches applied with system up to date.

 

hmm. Tried it again and now it downloads just fine. Don't know what to say.

Share this post


Link to post
Share on other sites

Hello, All!

ColEm 4.4 for Android is now online, adding the same changes as the Windows/Linux version, released this week, and more:

https://play.google.com/store/apps/details?id=com.fms.colem -- free version
https://play.google.com/store/apps/details?id=com.fms.colem.deluxe -- full version
http://garageresearch.aptoide.com/ -- on Aptoide
http://android.oms.apps.opera.com/en_us/catalog.php?vendor_id=199556 -- in Opera Store

The new ColEm will recognize and run more MegaCarts, such as Buckrogers, Subroc, Zaxxon, and Dragon's Lair. I have also added EEPROM emulation, so both Black Onyx and Boxxle should work. For AndroidTV users with multiple input devices, I made sure that the first player always gets the stock gamepad, and both players can exit app and open in-app menus. See below for all the changes.

ALL CHANGES:
* Released free ColEm 4.4 for Windows and Linux.
* Now accepting both AA55h and 55AAh MegaCarts.
* SGM games Buckrogers, Subroc, Zaxxon, Dragon's Lair work.
* Added ROM page switch specific for carts with EEPROM.
* Added 24c08 EEPROM support (Black Onyx saves now).
* Added 24c256 EEPROM support (Boxxle works).
* Fixed restoring background screen color from .STA files.
* Now saving EEPROM state into .SAV files.
* Now saving SGM state into .STA files.
* Made sure first player always gets stock gamepad on Nvidia ShieldTV.
* Either player can open menu or exit emulation now.
* Compiled ColEm with -Wall and eliminated warnings.
* Replaced -DNO_WAVE_INTERPOLATION with -DWAVE_INTERPOLATION, off by default.
* Removed old LoadSTA() and SaveSTA() code.
* Finally deprecated -DNEW_STATES.

Have fun!

Share this post


Link to post
Share on other sites

Only Cart PCB left to emulate is the new Opcode Super Cart with SaveRAM that he used for some of his newer releases like Penguin Adventure and Gradius. Pretty sure there is no info to be had for this PCB.

Share this post


Link to post
Share on other sites

Only Cart PCB left to emulate is the new Opcode Super Cart with SaveRAM that he used for some of his newer releases like Penguin Adventure and Gradius. Pretty sure there is no info to be had for this PCB.

Well, as usual, in order to emulate this I need some information on the hardware, or at least one ROM file using it.

Share this post


Link to post
Share on other sites

Just tried to play Lord of the Dungeon and it doesn't work. Title screen doesn't show "Lord of the Dungeon" and when trying to start a game the monster sprites are garbled, the game then states that the "Party has been wiped out!" and the game resets.

Share this post


Link to post
Share on other sites

Just tried to play Lord of the Dungeon and it doesn't work. Title screen doesn't show "Lord of the Dungeon" and when trying to start a game the monster sprites are garbled, the game then states that the "Party has been wiped out!" and the game resets.

CVAddict lists this prototype game as the first to have battery-backed save RAM. That is the most likely reason it does not work, since this is the first time I hear about battery-backed RAM in original ColecoVision cartridges. Going to take a look.

Share this post


Link to post
Share on other sites

Yep - it is the one and only game for the CV that has battery backed up ram.

Well, the one and only Legacy game and I think the first with SaveRAM for any cartridge based system of the time. BlueMSX emulates it properly, not sure of the other emulators.

Share this post


Link to post
Share on other sites

Looks like Lord Of The Dungeon maps that SRAM to E000h but simply making that region writable does not fix it. If anyone has information on how SRAM works, feel free to post it here: this will save me some time.

Share this post


Link to post
Share on other sites

Well, the one and only Legacy game and I think the first with SaveRAM for any cartridge based system of the time. BlueMSX emulates it properly, not sure of the other emulators.

 

What are the non-legacy games that use battery backed-up RAM?

 

CoolCV works perfectly with Lord of the Dungeon. For example, performing a system reset with CoolCV doesn't clear the RAM so doing this in the midst of a Lord of the Dungeon game behaves just like the real cartridge in that your party of characters, their stats as well as the "Cartridge Stats" are all preserved. Saving a game "snapshot" also preserves all of these as well. But, just like the cart, if you reset the game while in the middle of a battle then upon restarting your party is "wiped out".

Share this post


Link to post
Share on other sites

Found the information on that SRAM, added it to ColEm. Should (hopefully) work in the next release.

 

Great - I look forward to trying it out.

Share this post


Link to post
Share on other sites

There are two versions of the Lord of the Dungeon ROM out there that have seen significant distribution. One that looks for read and writes to RAM between $4000-$47FF and another that looks between $6000-$67FF.

 

Additionally, there is a dump posted, a 32K image, provided by Daniel, with some disassembly included. Bruce provided some additional insight on that dump.

 

There is a 24K version graciously provided by Ikrananka.

 

That means there are (at least) four considerably different dumps of the game that exist and out in the wild. However, it's believed the last one mentioned is considered the 'definitive' final image of the game.

Share this post


Link to post
Share on other sites

Thanks Trebor, I'd forgotten most of that so a great reminder :)

 

It is indeed my 24K version that I was testing out on ColEm and it is also this version that works perfectly in blueMSX and CoolCV. Hoping that it will soon work just as well with the next version of ColEm.

  • Like 1

Share this post


Link to post
Share on other sites

Ikrananka... non-Legacy games would be new releases such as Boxxle, Black Onyx, etc.

Share this post


Link to post
Share on other sites

Ikrananka... non-Legacy games would be new releases such as Boxxle, Black Onyx, etc.

 

But they're not "battery" backed up ram are they? I thought that they used EEPROMs to save the games.

Share this post


Link to post
Share on other sites

But they're not "battery" backed up ram are they? I thought that they used EEPROMs to save the games.

Well, considering the cartridge port on the ColecoVision doesn't have "write" lines to send data to the cart (you can only read from it, by design) then I would expect that the savegame feature in either Lord of the Dungeon or Black Onyx and Boxxle are rather similar in implementation. Although there are probably differences too, I'm not tech-savvy enough to look into the implementation differences.

Share this post


Link to post
Share on other sites

Well, considering the cartridge port on the ColecoVision doesn't have "write" lines to send data to the cart (you can only read from it, by design) then I would expect that the savegame feature in either Lord of the Dungeon or Black Onyx and Boxxle are rather similar in implementation. Although there are probably differences too, I'm not tech-savvy enough to look into the implementation differences.

 

I guess all I was wondering was if those new games use a battery in the cart to maintain the saved game in memory.

 

You do state on your Team Pixelboy website that The Black Onyx uses an EEPROM to store the saved game data. With it being an EEPROM I am assuming therefore that it does not use a battery like Lord of the Dungeon.

Edited by Ikrananka

Share this post


Link to post
Share on other sites

Yeah, the actual technology used is quite different. One requires a battery to keep a small electrical current going to keep the data alive. EEPROMs are solid-state data storage devices, in the same vein as floppy discs. Those don't need electrical current to keep the data alive.

  • Like 1

Share this post


Link to post
Share on other sites

The binary of Lord of the Dungeon I've is 24K, the 2K RAM is replicated in the zone $e000-$ffff, unfortunately I didn't took note about what address is used to write and what address is used to read, I simply made it readable/writable like an ordinary RAM.

Share this post


Link to post
Share on other sites

The binary of Lord of the Dungeon I've is 24K, the 2K RAM is replicated in the zone $e000-$ffff, unfortunately I didn't took note about what address is used to write and what address is used to read, I simply made it readable/writable like an ordinary RAM.

 

Well, whatever you did works fine. So far I have have found the 24K ROM of Lord of the Dungeon and CoolCV to behave in the same way a cart does in the real CV except that a game must be saved and restored using the CoolCV snapshot feature.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...