Jump to content

ColecoDS v7.8 Released - A handheld Coleco/ADAM/MSX1/SG-1000 Emulator for the NDS


Recommended Posts

It's been a while but I finally got back to working on ColecoDS - an Emulator for the DS/DSi with support for Colecovision, ADAM, MSX1, Sord-M5, Memotech MTX, Spectravision SVI, Hanimex Pencil II, Tatung Einstein, SG-1000/SC-3000 and the Creativision (these systems all use very similar hardware).
Version 7.8 is released with preliminary support for the MSX SCC sound chip. This brings music to some amazing games - Gradius II and III, Salamander, Parodius and more.
I've also researched how to properly combine audio channels. Previously I had been adding the channels and dividing by the number of channels. While this works, more channel combines cause the volume to be reduced. Life doesn't work this way - if two instruments are playing, they don't both get half-as-loud! So the new method is to add all channels and clip if needed (and with clever sampling, clipping should be minimal). This should normalize the sound across any game type no matter how many emulated sound chips are being combined.
  • Like 1
  • Thanks 1
Link to comment
Share on other sites

2 hours ago, SpiceWare said:

I see you updated A7800DS as well. The NDS grew 70% in size, is that to be expected?


I switched to a new audio library to eliminate the audio “zingers” I was experiencing. This came with some bloat but still manageable. 

Fortunately SD card space isn’t usually an issue :)

Edited by llabnip
  • Like 2
Link to comment
Share on other sites

6 hours ago, SpiceWare said:

Nice! Installing it now.  I've only setup CV games so far, will have to check out the other systems it supports.

If you’re brave and can decipher my Readme, the most obscure system ColecoDS supports is the almost unknown Hanimex Pencil II with only one game dumped: Treasure Hunt. A far cry from what’s been preserved on the Atari front!



  • Like 1
  • Haha 1
Link to comment
Share on other sites

23 hours ago, llabnip said:

If you’re brave and can decipher my Readme


Readme was fine. I have no problem manipulating binary files via command line - the DPC+ driver has seen a few updates over the year and I've replaced the driver (first 3K of ROM) for a number of games, such as Space Rocks, to fix a compatibility issue with older drivers and the newer Harmony Encore.


On 6/24/2017 at 8:03 AM, SpiceWare said:

So I've run the following via Terminal on my Mac (these commands also work under Linux) to replace the DPC+ driver used in Space Rocks:

dd skip=3 count=29 if=spacerocks20121129_NTSC.bin of=srn29K.bin bs=1024
cat DPC+20121020.arm srn29K.bin > spacerocks20121129_NTSC_encore.bin
dd skip=3 count=29 if=spacerocks20121129_PAL.bin of=srp29K.bin bs=1024
cat DPC+20121020.arm srp29K.bin > spacerocks20121129_PAL_encore.bin



So creating TreasureHunt.pen was easy.


Tricky part was the BIOS. cksum on the Mac outputs in decimal, so I first converted 338d7b59 to 864910169. Then I ran cksum on the files to figure out which one was the BIOS:


Darrells-Mac-Pro:pencil2 darrellspice$ cksum *
2382224437 32768 ap2k.ic3c
1273181955 8192 it.em.ou.bin
180276071 32768 lx800.ic3c
39373678 32768 lx810l.ic3c
1905388804 8192 mt.u4
3745853904 1048576 p72.2c
1429391862 3584 pl80.pt6
3323748502 1024 tiny.bin
3314771909 32768 w8_pe9.9b


but no match.  Checked the man:


     cksum [-o 1 | 2 | 3] [file ...]


     -o      Use historic algorithms instead of the (superior) default one.

             Algorithm 1 ... This is a 16-bit checksum ...
             Algorithm 2 ... This is a 32-bit checksum ...
             Algorithm 3 is what is commonly called the ‘32bit CRC’ algorithm.
             This is a 32-bit checksum.



so I tried 2:


Darrells-Mac-Pro:pencil2 darrellspice$ cksum -o 2 *
13074 64 ap2k.ic3c
42488 16 it.em.ou.bin
5875 64 lx800.ic3c
54450 64 lx810l.ic3c
19099 16 mt.u4
4891 2048 p72.2c
3581 7 pl80.pt6
31339 2 tiny.bin
44312 64 w8_pe9.9b



and 3:


Darrells-Mac-Pro:pencil2 darrellspice$ cksum -o 3 *
4000486583 32768 ap2k.ic3c
457847192 8192 it.em.ou.bin
3657876571 32768 lx800.ic3c
2791593185 32768 lx810l.ic3c
864910169 8192 mt.u4                  <----==== BINGO!
734430319 1048576 p72.2c
2919603803 3584 pl80.pt6
2483995117 1024 tiny.bin
1842618011 32768 w8_pe9.9b


then copied/renamed mt.u4 to pencil2.rom on the 3DS. 



  • Like 1
Link to comment
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.
Note: Your post will require moderator approval before it will be visible.

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.


  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Create New...