Max_Chatsworth Posted December 29, 2022 Share Posted December 29, 2022 Is there one that you think runs the closest to the real deal more than others? I've never tried *any* ColecoVision emulators, so I don't have a horse in the race yet...so to speak. Quote Link to comment Share on other sites More sharing options...
Guest Posted December 30, 2022 Share Posted December 30, 2022 This one seems popular. I need to try it myself soon. Quote Link to comment Share on other sites More sharing options...
mr_me Posted December 31, 2022 Share Posted December 31, 2022 I use Mame, it runs better than Coolcv on my old computer. Mame also does a good job emulating Adam and its tape/disk drives. 1 1 Quote Link to comment Share on other sites More sharing options...
Max_Chatsworth Posted December 31, 2022 Author Share Posted December 31, 2022 1 hour ago, mr_me said: I use Mame, it runs better than Coolcv on my old computer. Mame also does a good job emulating Adam and its tape/disk drives. Hmmm...pardon my ignorance, but I didn't realize MAME emulated ColecoVision/Consoles. I thought it just emulated arcade machines? Quote Link to comment Share on other sites More sharing options...
polyex Posted December 31, 2022 Share Posted December 31, 2022 12 minutes ago, Max_Chatsworth said: Hmmm...pardon my ignorance, but I didn't realize MAME emulated ColecoVision/Consoles. I thought it just emulated arcade machines? Since it merged with MESS a while ago, it emulates many different consoles and computers. 1 1 Quote Link to comment Share on other sites More sharing options...
polyex Posted December 31, 2022 Share Posted December 31, 2022 Gear Coleco https://github.com/drhelius/Gearcoleco is a nice emulator just for playing games, and also has an excellent debugger interface. Quote Link to comment Share on other sites More sharing options...
polyex Posted December 31, 2022 Share Posted December 31, 2022 I also use Mame and it is excellent. Quote Link to comment Share on other sites More sharing options...
MrMaddog Posted January 6 Share Posted January 6 I use MAME for the original retail games because it supports "special" controlers like the Super Action Controller and the steering wheel. Some games crash on MAME due to sound issues, for those I use the blueMSX core in RetroArch... And for homebrews, especially the SGM titles, CoolCV works great! Quote Link to comment Share on other sites More sharing options...
Atari Nut Posted January 6 Share Posted January 6 On 12/31/2022 at 11:33 AM, polyex said: Gear Coleco https://github.com/drhelius/Gearcoleco is a nice emulator just for playing games, and also has an excellent debugger interface. Do you know if it supports command-line switches? Quote Link to comment Share on other sites More sharing options...
polyex Posted January 6 Share Posted January 6 1 hour ago, Atari Nut said: Do you know if it supports command-line switches? I know it takes a rom as an argument, and seems to remember your settings you set from the menus, but beyond that I would have to look at the source. Quote Link to comment Share on other sites More sharing options...
kmg Posted January 7 Share Posted January 7 13 hours ago, MrMaddog said: Some games crash on MAME due to sound issues Do you happen to remember which ones? I'd like to look into it, and at the very least file bug reports. Quote Link to comment Share on other sites More sharing options...
+Trebor Posted January 7 Share Posted January 7 8 hours ago, kmg said: Do you happen to remember which ones? I'd like to look into it, and at the very least file bug reports. Any of the ones that require the [S]uper [G]ame [M]odule to be attached to the system. Here are some of the titles: Booming Boy Buck Rogers Super Game Caverns Of Titan Children Of The Night Cold Blood Danger Tower Deep Dungeon Adventure Dragon's Lair Gauntlet Ghostbusters Heroes Arena Jetpac King And Balloon Kings Valley Mecha 8 QBIQS Secret Of The Moai Shmup Shouganai Stray Cat Subroc Super Game Thexder Traffic Jam Txupinazo Uridium Wizard Of Wor Zaxxon Super Game Zombie Incident Spoiler And here are some technical details about the RAM expansion. (For Programmers) Some of you programmers are well aware, ColecoVision work RAM is limited to 1KB, mapped from 6000h to 63FFh, and then mirrored to 6400h until 7FFFh (so 8 times). The ColecoVision also includes 8KB of BIOS routines, mapped from 0000h to 1FFFh. The SGM expands the work RAM from 1KB to 32KB as a maximum. Here is how: 24KB can be mapped from 2000h to 7FFFh. When mapped, the internal 1 KB of RAM is no longer accessible. All legacy software still works normally under this mode. However, since the SGM must also be compatible with the ADAM, the 24 KB of extra RAM is NOT enabled by default. In order to use that expanded memory in a ColecoVision system, the programmer must first enable it. But before doing so, you also need to make sure the module isn’t attached to an ADAM system, otherwise there may be a memory conflict with potential for damaging the ADAM and/or the SGM. So the first step is to check if the 24 KB are already available. If they are, then you have an ADAM system, and the SGM1 expanded memory should NOT be enabled. If no memory is found (in the 2000h-5FFF range), then it is a ColecoVision system and the expanded memory can be enabled. To do so, set bit0 in I/O port 53h to 1, like this (in assembly): LD A,00000001b ; OUT(53h),A You can also map 8 KB of RAM (for a total of 32 KB) to address range 0000h-1FFFh. However, when doing so, the ColecoVision BIOS will be disabled. RAM and BIOS can be mapped back and forth, though. To map RAM to the BIOS area, simply set bit1 in I/O port 7Fh to “0”. In order to keep full compatibility with ADAM systems, all bits in I/O port 7Fh must be set to specific values, though. Here is how you should set the port: if you want the BIOS, set the port to “0001111b”. If you want RAM instead, set the port to “0001101b” (see example above on how to do that in Assembly). Make sure you respect those values, or your game may not work on ADAM systems. Eduardo has planned to release complete ASM libraries for detecting ADAM, SGM, and then setting RAM appropriately. Eduado at Opcode Games recommend using those libraries, so that we can eliminate the risk of enabling the SGM expanded RAM on ADAM systems. Here are the steps required to initialize a Super Game Module game: (Coleco brand.) 1) When initializing your game, use RAM in the 6000h-63FFh range, because the SGM expanded RAM is disabled by default, and you must make sure it isn’t an ADAM before enabling it. 2) Run some memory tests to establish if RAM is already present in the 2000h-5FFFh. If it is, then you have an ADAM system. In that case, DO NOT enable the expanded RAM. Go to step 4 3) If no memory is found, then we have a ColecoVision system, and the SGM expanded RAM can be enabled. Do so by setting I/O port 53h to 01h. You shouldn’t disable expanded RAM after that (i.e., do not access I/O port 53h again after initializing it). 4) Now that you know that 24 KB of RAM is available, your game can start using it. 5) Optionally you can replace the BIOS with RAM, using I/O port 7Fh. Make sure you only use the two values described above (‘00001111b’, ‘00001101b’), or your game may not work on an ADAM system. Quote Link to comment Share on other sites More sharing options...
Atari Nut Posted January 7 Share Posted January 7 (edited) 3 hours ago, Trebor said: Any of the ones that require the [S]uper [G]ame [M]odule to be attached to the system. Here are some of the titles: Booming Boy Buck Rogers Super Game Caverns Of Titan Children Of The Night Cold Blood Danger Tower Deep Dungeon Adventure Dragon's Lair Gauntlet Ghostbusters Heroes Arena Jetpac King And Balloon Kings Valley Mecha 8 QBIQS Secret Of The Moai Shmup Shouganai Stray Cat Subroc Super Game Thexder Traffic Jam Txupinazo Uridium Wizard Of Wor Zaxxon Super Game Zombie Incident Reveal hidden contents And here are some technical details about the RAM expansion. (For Programmers) Some of you programmers are well aware, ColecoVision work RAM is limited to 1KB, mapped from 6000h to 63FFh, and then mirrored to 6400h until 7FFFh (so 8 times). The ColecoVision also includes 8KB of BIOS routines, mapped from 0000h to 1FFFh. The SGM expands the work RAM from 1KB to 32KB as a maximum. Here is how: 24KB can be mapped from 2000h to 7FFFh. When mapped, the internal 1 KB of RAM is no longer accessible. All legacy software still works normally under this mode. However, since the SGM must also be compatible with the ADAM, the 24 KB of extra RAM is NOT enabled by default. In order to use that expanded memory in a ColecoVision system, the programmer must first enable it. But before doing so, you also need to make sure the module isn’t attached to an ADAM system, otherwise there may be a memory conflict with potential for damaging the ADAM and/or the SGM. So the first step is to check if the 24 KB are already available. If they are, then you have an ADAM system, and the SGM1 expanded memory should NOT be enabled. If no memory is found (in the 2000h-5FFF range), then it is a ColecoVision system and the expanded memory can be enabled. To do so, set bit0 in I/O port 53h to 1, like this (in assembly): LD A,00000001b ; OUT(53h),A You can also map 8 KB of RAM (for a total of 32 KB) to address range 0000h-1FFFh. However, when doing so, the ColecoVision BIOS will be disabled. RAM and BIOS can be mapped back and forth, though. To map RAM to the BIOS area, simply set bit1 in I/O port 7Fh to “0”. In order to keep full compatibility with ADAM systems, all bits in I/O port 7Fh must be set to specific values, though. Here is how you should set the port: if you want the BIOS, set the port to “0001111b”. If you want RAM instead, set the port to “0001101b” (see example above on how to do that in Assembly). Make sure you respect those values, or your game may not work on ADAM systems. Eduardo has planned to release complete ASM libraries for detecting ADAM, SGM, and then setting RAM appropriately. Eduado at Opcode Games recommend using those libraries, so that we can eliminate the risk of enabling the SGM expanded RAM on ADAM systems. Here are the steps required to initialize a Super Game Module game: (Coleco brand.) 1) When initializing your game, use RAM in the 6000h-63FFh range, because the SGM expanded RAM is disabled by default, and you must make sure it isn’t an ADAM before enabling it. 2) Run some memory tests to establish if RAM is already present in the 2000h-5FFFh. If it is, then you have an ADAM system. In that case, DO NOT enable the expanded RAM. Go to step 4 3) If no memory is found, then we have a ColecoVision system, and the SGM expanded RAM can be enabled. Do so by setting I/O port 53h to 01h. You shouldn’t disable expanded RAM after that (i.e., do not access I/O port 53h again after initializing it). 4) Now that you know that 24 KB of RAM is available, your game can start using it. 5) Optionally you can replace the BIOS with RAM, using I/O port 7Fh. Make sure you only use the two values described above (‘00001111b’, ‘00001101b’), or your game may not work on an ADAM system. Trebor, are you aware of any rom packs for the Colecovision similar to your 7800 collection? Edited January 7 by Atari Nut Quote Link to comment Share on other sites More sharing options...
roadrunner Posted January 7 Share Posted January 7 BlueMSX Quote Link to comment Share on other sites More sharing options...
MrMaddog Posted January 7 Share Posted January 7 16 hours ago, kmg said: Do you happen to remember which ones? I'd like to look into it, and at the very least file bug reports. Donkey Kong Jr. - Crashes when an enemy hits you (Same with Super DK Jr.) The Heist - Resets to title screen when it tries to start Level 1 Rock 'N Rope - Plays for a few seconds but freezes for no reason Sewer Sam - Crashes when it tries to play a sampled sound when Sam falls in the manhole Squish 'Em Sam - Also crashes when you touch the enemy, constant high pitch noise 1 Quote Link to comment Share on other sites More sharing options...
kmg Posted January 7 Share Posted January 7 44 minutes ago, MrMaddog said: Donkey Kong Jr. - Crashes when an enemy hits you (Same with Super DK Jr.) The Heist - Resets to title screen when it tries to start Level 1 Rock 'N Rope - Plays for a few seconds but freezes for no reason Sewer Sam - Crashes when it tries to play a sampled sound when Sam falls in the manhole Squish 'Em Sam - Also crashes when you touch the enemy, constant high pitch noise Thanks! I tried these, but on my end they all look like they're working. Are you using an older version of MAME? The Heist was fixed in MAME 0.227 (it's one of those games that is sensitive to RAM contents at power up, aka poorly programmed). As for the rest, maybe there was a change to the sound chip code that got them working at some point? 9 hours ago, Trebor said: Any of the ones that require the [S]uper [G]ame [M]odule to be attached to the system. Yeah, it looks like there's no emulation of the expansion module interface the SGM connects to. I guess that makes sense, since it was originally only used for the 2600 and Adam expansion modules. Still, maybe a subset of the functionality could be added to support the SGM. Quote Link to comment Share on other sites More sharing options...
+Trebor Posted January 8 Share Posted January 8 On 1/7/2023 at 5:39 PM, kmg said: Yeah, it looks like there's no emulation of the expansion module interface the SGM connects to. I guess that makes sense, since it was originally only used for the 2600 and Adam expansion modules. Still, maybe a subset of the functionality could be added to support the SGM. The ColecoVision game Turbo used the Expansion Module #2 Driving Controller, which could also be used for the ColecoVision titles: Bump 'n' Jump, Dukes of Hazzard, and Pitstop. On 1/7/2023 at 11:43 AM, Atari Nut said: Trebor, are you aware of any rom packs for the Colecovision similar to your 7800 collection? I am aware of none that are publicly available for homebrews, hacks, demos, and prototypes. Ikrananka did a great job with the retail line-up though. 1 Quote Link to comment Share on other sites More sharing options...
kmg Posted January 9 Share Posted January 9 6 hours ago, Trebor said: The ColecoVision game Turbo used the Expansion Module #2 Driving Controller, which could also be used for the ColecoVision titles: Bump 'n' Jump, Dukes of Hazzard, and Pitstop. Despite the Expansion Module #2 name the driving controller only used a regular joystick port though. The Expansion Module Interface on the other hand is the 60-pin expansion connector. At least that's what's written on the cover door Thanks for pointing out the missing SGM compatibility in MAME. I have a patch I'll submit after I do a little more testing and cleanup. Hopefully they accept it! 1 Quote Link to comment Share on other sites More sharing options...
mr_me Posted January 9 Share Posted January 9 (edited) In addition to the sgm ram and sound chip, homebrew games can also make use of bank switching and a save game feature found in the super game cartridge hardware. Edited January 9 by mr_me Quote Link to comment Share on other sites More sharing options...
MrMaddog Posted January 9 Share Posted January 9 On 1/7/2023 at 5:39 PM, kmg said: Thanks! I tried these, but on my end they all look like they're working. Are you using an older version of MAME? The Heist was fixed in MAME 0.227 (it's one of those games that is sensitive to RAM contents at power up, aka poorly programmed). As for the rest, maybe there was a change to the sound chip code that got them working at some point? Ok, I was using an older version then... I don't like to "upgrade" emulators, especially MAME, because it breaks shader features and also requires a whole new ROM set I have to spend days downloading. 1 Quote Link to comment Share on other sites More sharing options...
zzip Posted January 10 Share Posted January 10 16 hours ago, MrMaddog said: I don't like to "upgrade" emulators, especially MAME, because it breaks shader features and also requires a whole new ROM set I have to spend days downloading. MAME is the worst offender on that front. I spend some time each winter upgrading all my emulators if they had new releases, usually don't have issues. But many times I'll skip doing Mame because I just don't want to deal with it 1 Quote Link to comment Share on other sites More sharing options...
Atari Nut Posted January 11 Share Posted January 11 On 12/31/2022 at 11:33 AM, polyex said: Gear Coleco https://github.com/drhelius/Gearcoleco is a nice emulator just for playing games, and also has an excellent debugger interface. Does Gearcoleco support Super Game Module games? Quote Link to comment Share on other sites More sharing options...
polyex Posted January 11 Share Posted January 11 21 minutes ago, Atari Nut said: Does Gearcoleco support Super Game Module games? No, was planned. https://github.com/drhelius/Gearcoleco/issues/11 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.