Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for KidVid controller #77

Closed
sa666666 opened this issue Jan 17, 2017 · 18 comments
Closed

Add support for KidVid controller #77

sa666666 opened this issue Jan 17, 2017 · 18 comments

Comments

@sa666666
Copy link
Member

sa666666 commented Jan 17, 2017

There is already a partial implementation in the current code, but it doesn't really do much (in particular, it doesn't play any music). Much of the current implementation is from a C-code port of z26. The original was in assembly, so I can't be sure if the C code is even working correctly.

@thrust26
Copy link
Member

thrust26 commented Jan 17, 2017

Back then in 2002, I worked very closely with Eckhard on this. Maybe I can remember, and I still have all the mails.

Well, I remember it was pretty annoying. :)

@thrust26 thrust26 added this to the Prio 2 milestone Aug 18, 2017
@thrust26
Copy link
Member

thrust26 commented Sep 5, 2021

@sa666666 If KidVid works in the latest z26, then its C-code should work well too.

@sa666666
Copy link
Member Author

sa666666 commented Sep 5, 2021

Potentially, but I haven't tested recently. But in z26, the code isn't as abstracted, and KidVid and sound code is mixed together. Also, it would need testing, and you already pointed out that you found it very annoying 😧

@thrust26
Copy link
Member

thrust26 commented Sep 5, 2021

...you already pointed out that you found it very annoying

If you test a game, you will soon find out why. 👿

https://atariage.com/forums/topic/7293-smurfs-save-the-day-without-kid-vid/?do=findComment&comment=1728197

BTW: The most tedious and annoying part was defining all the data. At least that can be skipped now.

@thrust26
Copy link
Member

thrust26 commented Sep 6, 2021

BTW: Kid Vid can be autodetected easily (lda #$03, sta SWACNT(, lda #1, sta SWCHA, not required for unique match)), but I suppose since there are only two ROMs, it is not worth the effort.

Though once we are done, people may ask for PAL versions. So we probably should add auto detection.

@thrust26
Copy link
Member

thrust26 commented Sep 7, 2021

It just occurred to me that, if we get this going (and maybe make it a bit more flexible), people could write games for the 2600 with a synced, high quality soundtrack or even sound effects.

At least in Stella, for the console some extra hardware would be required.

@thrust26
Copy link
Member

thrust26 commented Aug 31, 2022

@sa666666 I had a closer look at the existing code. It seems like signalling back doesn't work and the "tape" continues to run after a song is over.

@DirtyHairy Once we get this fixed, how should we add the songs into the audio code?

@sa666666
Copy link
Member Author

There was never any attempt to get this working in Stella, so it doesn't surprise me. I just converted the z26 C code to C++, and left it as-is. There's likely more work to do there, other than what you suggest.

@thrust26
Copy link
Member

The z26 code is pretty easy to understand. And the converted code should do the same. IMO we are pretty close.

@sa666666
Copy link
Member Author

My main issue at the time was how to integrate the songs into the TIA sound core, just as you mention. In z26 it's sort of hacked into in the sound core directly, but I'd rather use a better approach here.

@thrust26
Copy link
Member

Sure, me too.

@thrust26
Copy link
Member

thrust26 commented Sep 1, 2022

The z26 code is pretty easy to understand. And the converted code should do the same. IMO we are pretty close.

Success, the games can now really be played without the tapes (waaay more pleasant, IMO 😆)

So, the last (and big) ToDo is to add the tape sound.

@thrust26
Copy link
Member

thrust26 commented Sep 2, 2022

We could play the WAV files directly via SDL2 or sample them ourselves (like z26). The former should be easier, but syncing might be a problem.

BTW: There can be TIA sound and WAV files simultaneously.

@sa666666
Copy link
Member Author

sa666666 commented Sep 3, 2022

Should we add an option to disable playing the WAVs with these ROMs?

@thrust26
Copy link
Member

thrust26 commented Sep 3, 2022

Just remove the WAV files if you feel annoyed. 😈

@sa666666
Copy link
Member Author

sa666666 commented Sep 3, 2022

Not for me, for the end user. Something similar to the frequency toggle for Pitfall II. Or we can just add it to the manual, to remove the WAV's if you like.

BTW, now that we (or more specifically, you) are working on esoteric controllers, want to look at Compumate next? 😄

@thrust26
Copy link
Member

thrust26 commented Sep 3, 2022

Not for me, for the end user. Something similar to the frequency toggle for Pitfall II. Or we can just add it to the manual, to remove the WAV's if you like.

The latter. I think we have to explain where to put the WAV files anyway.

BTW, now that we (or more specifically, you) are working on esoteric controllers, want to look at Compumate next? 😄

Definitely not.

@sa666666
Copy link
Member Author

sa666666 commented Sep 3, 2022

OK, it was worth a try 😈

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants