Nothing new to release today - but I did spend a few hours last night and another couple this morning looking at the 'known issues' list. The #1 question I get asked is "did you know game X doesn't work?" and or "Can you fix X?" - and 99% of the time it's already marked as a known issue in the readme doc which means I've already looked at it and haven't figured out a solution yet. To paraphrase the imortal words of
@RocketRobz - if I knew what the problem was, I'd have already fixed it
So here's where we are at with ColecoDS. I'll add some notes below as to my "best guess" as to what the problem is in case there is some intrepid developer 10 years from now who wants to dust this stuff off and make the emulators even better.
Group 1:
- Fathom won't render screen properly. Unknown cause.
- Sudoku has graphical issues (still playable).
- Super Pac Man has major graphical issues.
For the above group, my best guess is that the VDP (tms9918 display chip) emulation isn't perfect. In the technical documentation (which I recently uploaded to the github page for this project) it's clear that the VDP address/control latch should be reset on every data/control read/write... but it's not. ColEM got that wrong - and they knew it because there is a comment in the original ColEM project source that says it had to disable the reset of the latch to get some games to run right... and it's true... when I try to handle the latch correctly, it causes
more problems than doing it wrong. So ... for now... wrong it is!
Group 2:
- Deep Dungeon Adventures won't run.
- Uridium won't run.
The above group won't start... they are both Super Game and/or MegaCart modules though 95% of other games in those categories start fine. My best guess on the first 2 games is that they are reading some port during startup and not seeing something they expect... the main reason I'm guessing this is that the "secret Easter egg" game on Deep Dungeon Adventures works when pressing and holding the #5 key on the 2nd controller - so the game is clearly running - but not starting up the main game properly.
Group 3:
- Super Space Acer crashes after a few seconds of play.
- Missile-Strike crashes about 10-15 seconds into the gameplay.
- Astrostorm crashes about 10-15 seconds into the gameplay.
- Arno Dash and Diamond Dash 2 glitch out soon after loading.
- Pillars won't run - crashes a few seconds after starting.
- Vexxed won't run - crashes a few seconds after starting.
This group is less known... 6 of those 7 the games are from two developers very new to the homebrew scene and at least one of them doesn't have real colecovision hardware to test on... so it's possible they are doing something a bit unusual that works on some emulators and not others. As a wild-ass guess... I'd say they are maybe reading some area of memory or some port they shouldn't and/or doing so at the wrong time and the emulator doesn't behave exactly like a real system would.
Group 4:
- Ghostblaster starts but controls don't work.
- Pitfall II Arcade port (from SG1000) shows title screen but button press isn't recognized to start.
The two games that won't start because neither recognizes a button press. Might be related to the "guess" I had above for Group 2. I'm fairly sure I've got the input bits set correctly when reading the joystick port but maybe real hardware does it a little differently.
Group 5:
- 64K Activision PCB carts have no EEPROM support (Black Onyx, Boxxle - both playable without saves).
The EEPROM support is just missing. Haven't found the time to add it - especially given that we have Save/Load State support which is just as good as having the EEPROM support so there's no real loss here.