Atari 7800 / 2600

User avatar
skooter
Posts: 60
Joined: Mon May 25, 2020 1:37 pm
Location: Brazil
Has thanked: 1 time
Been thanked: 14 times
Contact:

Re: Atari 7800 / 2600

Unread post by skooter »

I don't know about SNAC, I don't have any. But regarding D9, it could be solved on the mister side with a mister.ini entry to split a device in two based on its VID/PID. It would probably need some code specific to D9, as each button would have to go with one specific axis, and maybe some detection to do that only when the paddles are connected (joysticks are also presented as two axis).

If this is done in the framework, instead of the core, Atari paddles would work for other systems that use multiple paddles (if there are any).
thorr
Top Contributor
Posts: 1100
Joined: Mon Jul 06, 2020 9:37 pm
Has thanked: 537 times
Been thanked: 252 times

Re: Atari 7800 / 2600

Unread post by thorr »

Sounds really great! Make it so... ;-)
User avatar
HerrBerzerk
Posts: 232
Joined: Tue Feb 01, 2022 1:45 pm
Has thanked: 96 times
Been thanked: 30 times

Re: Atari 7800 / 2600

Unread post by HerrBerzerk »

Isn't the same true for the c64 core? Actually the core has a Player1/2 paddle option and the Atari Paddles should work with the C64 (even if the resistor values don't fit 100%), but I don't get paddle controller working with the c64 core.

The c64 schematic for the paddle detection is actually the same as in the 2600. The sid (tia) measures the time needed to load a capacitor and generates a value between 0-255 (I think that's it, I'm no pro).

Maybe the creator of the C64 core is interested in supporting real paddles and the atari core can benefit from it.
thorr
Top Contributor
Posts: 1100
Joined: Mon Jul 06, 2020 9:37 pm
Has thanked: 537 times
Been thanked: 252 times

Re: Atari 7800 / 2600

Unread post by thorr »

I searched and did not see any support for paddles in the C64 core. If I knew how, I would implement it in both cores and allow for adjustments since the paddles were different.
User avatar
HerrBerzerk
Posts: 232
Joined: Tue Feb 01, 2022 1:45 pm
Has thanked: 96 times
Been thanked: 30 times

Re: Atari 7800 / 2600

Unread post by HerrBerzerk »

In the 64 core under Hardware Pot1/2 Pot3/3 you can select Paddles1/2 Paddles 3/4... but I have no idea what it really means... I will check the readme later, maybe it is explained.
User avatar
Kitrinx
Core Developer
Posts: 185
Joined: Sat May 23, 2020 2:14 am
Location: NYC
Has thanked: 1 time
Been thanked: 147 times
Contact:

Re: Atari 7800 / 2600

Unread post by Kitrinx »

Paddles are complicated.

Two paddles being one controller simply doesn't work. I know this is how the original console did it, but it really doesn't matter. It doesn't make sense in the context of the mister framework. There are many different devices that can be mixed together as paddles on mister, and not all of them are even associated with a joystick. It offers paddles to the cores one at a time, and trying to merge two paddles into one controller is simply untenable without a massive maze of options that would make them equally unusable.

I have no objection to someone adding 2600 ADC paddle support, but I can't do it myself because:

1) I dont have any snac or controllers for this, and i'm not interested in getting them. I use ricardo's paddle and it's great, or just the mouse. Even the old 2600 core did not have this code merged. No idea why, but it's not there.

2) The 7800 controllers have special hardware needs for 2 button vs 1 button mode. It needs a new snac board made specially for it, and see #1.

3) The starpath tapes use the adc for tape input, and it can't share this with raw input from paddles. Someone has to change the framework to make this possible, and see #1.

The sensitivity of paddles is automatically tuned to games based on their polling intervals. Real paddles have a range that is much, much too large for any game to poll, so they only use a tiny fragment of the potentiometer's range, near the lower end. I watch for how long the game polls and use this to automatically adjust the range for games so that an axis value of 0 represents the first poll and 255 represents the last poll, so they all work reasonably well. I understand some original paddle converters do a very poor job of allowing you to crop or adjust the range and unfortunately there isn't anything I can do about that. Adding such an option to the core itself will be a pretty poor experience as the ability to dial it in will be extremely limited and unsatisfactory. It's really the jurisdiction of the adapter itself to do this, or in lieu of that, the framework. The core expects a normalized range of 0 to 255 for the full excursion of the paddle, and it's difficult to change that because of how the framework provides spinner, paddle, and analog stick to the core.

It may sound self-serving, but I think the biggest problem here isn't that the core can't handle paddle input, but rather that paddle to usb adapters are just not doing their job very well. The core follows the framework's input paradigm closely. The core is given no ability to discern what type of regular joystick is given to it, other than the analog stick, paddle, and spinner ports, which each support one axis and one button.
thorr
Top Contributor
Posts: 1100
Joined: Mon Jul 06, 2020 9:37 pm
Has thanked: 537 times
Been thanked: 252 times

Re: Atari 7800 / 2600

Unread post by thorr »

Thank you very much for the detailed description. My takeaways from this are two things:

1) Someone can add ADC Paddle Support to the core. This is great news that someday we can possibly look forward to this option. My idea was to replace the ADC function for starpath tapes with the Paddles function as a toggle in the menu. I assume that there is a way to load starpath tapes without using the actual ADC, so in my case I would just leave the setting as Paddles. Maybe someday if I am super ambitious, I will learn how to do this myself, but I highly doubt it. Hopefully long before then, someone else will do this.

2) My previous idea seems like the best current viable option: Make a new USB to 2600 paddle adapter just for the MiSTer 7800 core. It would serve up each DB9 as two devices, and it would use a small portion of the paddle range physically but tell the MiSTer it was 0 to 255. I think I can do this myself, so if time permits and someone else doesn't beat me to it, I will solve this and will share it with the community. I would try to do it in a way that does not require any modification of the internals of the paddles themselves.
User avatar
Kitrinx
Core Developer
Posts: 185
Joined: Sat May 23, 2020 2:14 am
Location: NYC
Has thanked: 1 time
Been thanked: 147 times
Contact:

Re: Atari 7800 / 2600

Unread post by Kitrinx »

with the ADC paddles the problem you will run into is that the ADC bus can't be driven by two separate modules which is what is required. After that you can simply rescale the range to be 0-255 since the only two things using those analog lines are the 7800 controllers and the paddles, it's safe to this, and the 7800 buttons are boolean in nature.

The 7800 console when in 1 button mode changes a pin to become a source rather than a simple pull up. There's no way for the gpio pins to do this without an external relay. The pull up seems that it's not strong enough to act as a source correctly. I have never tested it myself but from what people tell me this is the case.

for the d9dapter I worked with the guy who makes it and he eventually was willing to add an indication to the thing as to when it is using paddles, so it can finally be handled by the framework. Now it's up to Alexey if he wants to add support for it or not in the framework, I gave him all the information a few days ago.
thorr
Top Contributor
Posts: 1100
Joined: Mon Jul 06, 2020 9:37 pm
Has thanked: 537 times
Been thanked: 252 times

Re: Atari 7800 / 2600

Unread post by thorr »

Wow, that is awesome news about the 2600daptor d9! Thank you for working with him to find a solution and for sending this to Alexey (really hope he will implement it after all this). Having the d9 supported is the simplest solution for everyone to benefit from since the d9 supports everything else already. At this point, I won't bother making a custom USB adapter since it appears a viable solution is on the way. The d9 supports Commodore and Atari paddles also already. We may have to revisit the driving controller (original and spinner), but everything else should be good to go. I need to do more testing on this.

For SNAC, it sounds like currently we would need two cores rather than a menu option to toggle the ADC function for paddles, but a framework change could resolve that. Hopefully if/when someone works on this, the framework can be updated to support it. For the 7800 controller, I can live with using the d9 longterm, or maybe the existing Atari SNAC adapter can be easily modded to make it work.

Thanks again for the awesome core and your additional efforts to fix the remaining issues.
User avatar
Chilli_Vibes
Posts: 129
Joined: Sat Mar 12, 2022 4:47 pm
Has thanked: 53 times
Been thanked: 33 times

Re: Atari 7800 / 2600

Unread post by Chilli_Vibes »

The 2600dapter-D9 sounds like a good solution.
Problem for me is, nobody in the UK are selling one, so I would need to take my chances with US to UK delivery.
thorr
Top Contributor
Posts: 1100
Joined: Mon Jul 06, 2020 9:37 pm
Has thanked: 537 times
Been thanked: 252 times

Re: Atari 7800 / 2600

Unread post by thorr »

Regarding the Driving Controller, I tried Indy 500 again. With my Driving Controller, no matter what I do, it won't use it. With my spinner that I made, using "Trackball" I can press the button and it moves forward, but it won't spin. Also on "Trackball" if I move the mouse it will sort of uncontrollably turn. If I put it on "Driving" it automatically presses the throttle without hitting buttons, and the mouse can sort of steer it (better than on Trackball), and the spinner does nothing.

I don't know if it will be possible to get it to use the original driving controller, but this works in Windows with the 2600daptor D9. In Windows it actually acts like a joystick with different specific spots where the movement goes to as I turn it. The spinner I made works with throttle button in the 2600/7800 core with "Trackball" mode, but never works to steer it.

Any suggestions or fixes to get Indy 500 working with at least a spinner controller would be appreciated. Thanks!

Edit: I have been trying to use the 2600daptor D9 with my paddles and I can't get it to work. Using Street Racer, swapping the paddles in the core menu and pressing the buttons moved the right car all the way left and right. Turning the dials did nothing. Deleting all the input mappings in the core menu and 7800 core and remapping just the paddle button did nothing. I can't figure out the secret sauce to get the paddles to move the player.
User avatar
Kitrinx
Core Developer
Posts: 185
Joined: Sat May 23, 2020 2:14 am
Location: NYC
Has thanked: 1 time
Been thanked: 147 times
Contact:

Re: Atari 7800 / 2600

Unread post by Kitrinx »

thorr wrote: Sun Jul 03, 2022 11:49 pm Regarding the Driving Controller, I tried Indy 500 again. With my Driving Controller, no matter what I do, it won't use it. With my spinner that I made, using "Trackball" I can press the button and it moves forward, but it won't spin. Also on "Trackball" if I move the mouse it will sort of uncontrollably turn. If I put it on "Driving" it automatically presses the throttle without hitting buttons, and the mouse can sort of steer it (better than on Trackball), and the spinner does nothing.

I don't know if it will be possible to get it to use the original driving controller, but this works in Windows with the 2600daptor D9. In Windows it actually acts like a joystick with different specific spots where the movement goes to as I turn it. The spinner I made works with throttle button in the 2600/7800 core with "Trackball" mode, but never works to steer it.

Any suggestions or fixes to get Indy 500 working with at least a spinner controller would be appreciated. Thanks!

Edit: I have been trying to use the 2600daptor D9 with my paddles and I can't get it to work. Using Street Racer, swapping the paddles in the core menu and pressing the buttons moved the right car all the way left and right. Turning the dials did nothing. Deleting all the input mappings in the core menu and 7800 core and remapping just the paddle button did nothing. I can't figure out the secret sauce to get the paddles to move the player.
I need to fix the driving controller, I forgot about it. Right now it's much too sensitive when you use the mouse, and it only works with the mouse (or maybe snac?)

I don't have a 2600daptor but people say they work with one paddle. You would likely have to map them since the framework doesn't seem them as proper paddles, and instead relies on analog stick and buttons.
User avatar
HerrBerzerk
Posts: 232
Joined: Tue Feb 01, 2022 1:45 pm
Has thanked: 96 times
Been thanked: 30 times

Re: Atari 7800 / 2600

Unread post by HerrBerzerk »

I did test the driving controller and orginal joystick with snac and it worked fine. More details in my post above.
thorr
Top Contributor
Posts: 1100
Joined: Mon Jul 06, 2020 9:37 pm
Has thanked: 537 times
Been thanked: 252 times

Re: Atari 7800 / 2600

Unread post by thorr »

Confirmed! The driving controller works with SNAC! Once the spinner works properly, then we can play with two players. It should be 16 clicks per revolution. I have the spinner sensitivity set to 50 in the MiSTer.ini for the paddles, so dividing this setting by 3 when using the driving controller might be a good option. Looking forward to this! Thanks!

I had the 2600daptor working previously with paddles, but I can't seem to figure it out now. I even posted how I did it with help from others (map just the paddle button), but it isn't working for me anymore. Can anyone else get the 2600daptor working with paddles right now? Maybe I should be selecting something besides Paddle in the menu, but I think I tried everything. It will map the paddle button, but it won't use the controller properly.

EDIT: I got it working again with the 2600daptor and one paddle! The trick was it wasn't mapped properly in the 2600daptor itself. You need to look at the light when you first plug it in. It won't be flashing. You need to guess which paddle is paddle 1 and press its button and the light will flash right away if it is the correct paddle when you plug in the USB. It won't flash right away if you use the wrong paddle. Then in the core, you need to use the Paddle setting and remap the buttons for this game using only the paddle button, and a menu button from somewhere else to skip everything else. The 2600daptor uses the majority of the range of the paddle, but not all of it. I will have to hook up my real 2600 and compare. A range adjustment setting in the core might be useful (uses only a portion of the values from the input and remaps them to 0-255 and outside of that it ignores any movement).
thorr
Top Contributor
Posts: 1100
Joined: Mon Jul 06, 2020 9:37 pm
Has thanked: 537 times
Been thanked: 252 times

Re: Atari 7800 / 2600

Unread post by thorr »

akeley
Top Contributor
Posts: 1303
Joined: Mon May 25, 2020 7:54 pm
Has thanked: 416 times
Been thanked: 399 times

Re: Atari 7800 / 2600

Unread post by akeley »

Yesterday I've tried a few Supercharger games. On my CRT (15Khz from IO board) the image is somewhat scrambled during the loading part, then when the game loads it's okay. Has anybody seen this behaviour, or is it just me?
User avatar
Kitrinx
Core Developer
Posts: 185
Joined: Sat May 23, 2020 2:14 am
Location: NYC
Has thanked: 1 time
Been thanked: 147 times
Contact:

Re: Atari 7800 / 2600

Unread post by Kitrinx »

supercharger draws at 30fps while it loads. I'm not sure what this was supposed to do with original tv's but that seems to be correct behavior for it.
User avatar
Chris23235
Top Contributor
Posts: 841
Joined: Sun May 24, 2020 8:45 pm
Has thanked: 106 times
Been thanked: 167 times

Re: Atari 7800 / 2600

Unread post by Chris23235 »

Kitrinx wrote: Tue Jul 26, 2022 12:23 pm supercharger draws at 30fps while it loads. I'm not sure what this was supposed to do with original tv's but that seems to be correct behavior for it.
I had a Supercharger for my PAL 2600 and the loading was normal, maybe the TV modulator made sense of the signal for the TV. Unfortunately the Supercharger didn't work with my 7800.
Zeosstud
Posts: 104
Joined: Sun Jun 21, 2020 4:56 pm
Has thanked: 2 times
Been thanked: 25 times

Re: Atari 7800 / 2600

Unread post by Zeosstud »

So, with 13 pages of comments basically saying how great the 7800 core is, I want it known, I must be the problem, and I accept that, still I have a question. My mister is setup mostly for arcade games, I have an Ipac2 controlling all my joysticks and buttons. For the life of me I can not get my setup to play any games with this core. I load the core, go and map buttons, everything seems normal, they try to hit reset to play a game, nothing. I can fire up the a2600 core and play until my heart is content. Anyone have any thoughts? I have tried to kill config type stuff and start over, I just have not come up with the right fix. Any help would be appreciated.

Zeossstud
thorr
Top Contributor
Posts: 1100
Joined: Mon Jul 06, 2020 9:37 pm
Has thanked: 537 times
Been thanked: 252 times

Re: Atari 7800 / 2600

Unread post by thorr »

Zeosstud wrote: Thu Sep 29, 2022 8:10 pm For the life of me I can not get my setup to play any games with this core.
Zeossstud
Try changing the settings in the core menu. I don't recall them at the moment, but stuff like Swap Joysticks, and setting the controller type to Joystick. If you still can't get it, take pictures of all your settings in the core menu on all the pages and sub menus and post them here for reference.
User avatar
Chris23235
Top Contributor
Posts: 841
Joined: Sun May 24, 2020 8:45 pm
Has thanked: 106 times
Been thanked: 167 times

Re: Atari 7800 / 2600

Unread post by Chris23235 »

Has anyone tried the recently released 7800 port of 1942? For me the sound is broken in the A7800 core, all explosions sound totally wrong.
User avatar
NML32
Posts: 288
Joined: Sun May 24, 2020 6:57 pm
Has thanked: 272 times
Been thanked: 43 times

Re: Atari 7800 / 2600

Unread post by NML32 »

Chris23235 wrote: Fri Oct 07, 2022 9:07 pm Has anyone tried the recently released 7800 port of 1942? For me the sound is broken in the A7800 core, all explosions sound totally wrong.
Yes, same for me. I opened a GitHub ticket.

https://github.com/MiSTer-devel/Atari78 ... /issues/18
User avatar
Chris23235
Top Contributor
Posts: 841
Joined: Sun May 24, 2020 8:45 pm
Has thanked: 106 times
Been thanked: 167 times

Re: Atari 7800 / 2600

Unread post by Chris23235 »

NML32 wrote: Fri Oct 07, 2022 10:48 pm
Chris23235 wrote: Fri Oct 07, 2022 9:07 pm Has anyone tried the recently released 7800 port of 1942? For me the sound is broken in the A7800 core, all explosions sound totally wrong.
Yes, same for me. I opened a GitHub ticket.

https://github.com/MiSTer-devel/Atari78 ... /issues/18
Thanks, would have opened it myself, but I wanted to have a confirmation so that I can be sure it wasn't something with my setup.
scampa123
Posts: 6
Joined: Sat Sep 24, 2022 2:07 pm
Been thanked: 1 time

Re: Atari 7800 / 2600

Unread post by scampa123 »

I notice in the cores menu that you can set the difficulty switches, but how does that work?

I was trying to figure out how to change the difficulty for Adventure on the 2600….

Can I use the menu difficulty settings or do I need to press a keyboard key?

Thank you
Lightwave
Posts: 232
Joined: Sun May 24, 2020 10:06 pm
Has thanked: 110 times
Been thanked: 68 times

Re: Atari 7800 / 2600

Unread post by Lightwave »

scampa123 wrote: Fri Oct 14, 2022 1:48 pm I notice in the cores menu that you can set the difficulty switches, but how does that work?

I was trying to figure out how to change the difficulty for Adventure on the 2600….

Can I use the menu difficulty settings or do I need to press a keyboard key?

Thank you
Yes, you can just set the difficulty switches directly from the core menu. There are also keyboard hotkeys if you prefer that (can't remember the exact keys, check the Github readme or maybe they are posted somewhere in this thread)
netbeui
Posts: 148
Joined: Fri Jul 31, 2020 5:04 am
Has thanked: 77 times
Been thanked: 23 times

Re: Atari 7800 / 2600

Unread post by netbeui »

thorr wrote: Mon Jun 27, 2022 10:39 pm Agreed, but I already beat that horse to death and managed to kill it again and unfortunately the answer is no. I keep a copy of the unofficial 2600 SNAC core around for paddle games if I want the authentic experience, or I do the rigamarole with my 2600daptor to get one paddle working with this core. I also built my own paddle for this core with a spinner and it is very very nice, but not authentic.

I haven't tried the driving controller lately with this core, but it would be great if the sensitivity with a third party spinner could be dialed back tremendously to match the low resolution sensitivity of the real driving controller. The driving controller has 16 transitions per revolution. I am not sure if this can be adjusted in the MiSTer.ini.
Hi thorr, I tried your Atari2600_SNAC_20200726.rbf but I can't get my paddle controllers to move in Kaboom. When I press the fire button on one of the paddles it starts the game so I know the controller is recognized but I can't move the buckets to catch the bombs. I've tried a bunch of different settings but no luck, can you please send me your settings from within that core? Also please confirm which core is working for you. Thanks :)
thorr
Top Contributor
Posts: 1100
Joined: Mon Jul 06, 2020 9:37 pm
Has thanked: 537 times
Been thanked: 252 times

Re: Atari 7800 / 2600

Unread post by thorr »

netbeui wrote: Thu Oct 20, 2022 5:58 pm Hi thorr, I tried your Atari2600_SNAC_20200726.rbf but I can't get my paddle controllers to move in Kaboom. When I press the fire button on one of the paddles it starts the game so I know the controller is recognized but I can't move the buckets to catch the bombs. I've tried a bunch of different settings but no luck, can you please send me your settings from within that core? Also please confirm which core is working for you. Thanks :)
Hi, are you using the Atari SNAC adapter with the audio cable and the paddles switch/jumper? This is required for the analog movement. Also, in the core menu, you have to turn the ADC on.
netbeui
Posts: 148
Joined: Fri Jul 31, 2020 5:04 am
Has thanked: 77 times
Been thanked: 23 times

Re: Atari 7800 / 2600

Unread post by netbeui »

thorr wrote: Thu Oct 20, 2022 6:23 pm
netbeui wrote: Thu Oct 20, 2022 5:58 pm Hi thorr, I tried your Atari2600_SNAC_20200726.rbf but I can't get my paddle controllers to move in Kaboom. When I press the fire button on one of the paddles it starts the game so I know the controller is recognized but I can't move the buckets to catch the bombs. I've tried a bunch of different settings but no luck, can you please send me your settings from within that core? Also please confirm which core is working for you. Thanks :)
Hi, are you using the Atari SNAC adapter with the audio cable and the paddles switch/jumper? This is required for the analog movement. Also, in the core menu, you have to turn the ADC on.
Do’h I was using the regular Sega style SNAC adapter. I have a proper Atari SNAC adapter coming in the mail. I’m sure it’ll work just fine once it arrives. So we have to use an unofficial core for this, correct? Or has it been implemented in the official core?
thorr
Top Contributor
Posts: 1100
Joined: Mon Jul 06, 2020 9:37 pm
Has thanked: 537 times
Been thanked: 252 times

Re: Atari 7800 / 2600

Unread post by thorr »

netbeui wrote: Thu Oct 20, 2022 7:00 pm Do’h I was using the regular Sega style SNAC adapter. I have a proper Atari SNAC adapter coming in the mail. I’m sure it’ll work just fine once it arrives. So we have to use an unofficial core for this, correct? Or has it been implemented in the official core?
Correct. You have to use the old unofficial core.
edburns
Posts: 28
Joined: Mon Oct 11, 2021 7:33 pm
Has thanked: 8 times
Been thanked: 2 times

Re: Atari 7800 / 2600

Unread post by edburns »

Hello thorr, pardon this obvious question. Can you please confirm that I must use a headphone cable to connect the audio cable on the Atari SNAC adapter to the audio out jack on the MiSTer? Once I do that, how do I hear the audio?

Thanks,


Ed
Post Reply