Atari 7800 / 2600

thorr
Top Contributor
Posts: 1099
Joined: Mon Jul 06, 2020 9:37 pm
Has thanked: 535 times
Been thanked: 252 times

Re: Atari 7800 / 2600

Unread post by thorr »

Kitrinx wrote: Wed Dec 01, 2021 5:02 pm Mister framework provides only one mouse input, and there's not much I can do about that.
Thanks! Do the Mr. Spinners allow more than one spinner, or do they take up the one mouse input? Can you have two driving controllers using two Mr. Spinners? What I am suggesting is that you could have up to three if you used X, Y, and Z and the three buttons on the one mouse input.
Lightwave
Posts: 231
Joined: Sun May 24, 2020 10:06 pm
Has thanked: 110 times
Been thanked: 68 times

Re: Atari 7800 / 2600

Unread post by Lightwave »

thorr wrote: Wed Dec 01, 2021 4:20 pm As it is right now, the D9 only works for movement on one paddle and no buttons for me so I can't use it at all.
To get this working, you need to go into controller mapping in the core and map "paddle button" to the paddle button, skipping everything else.
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: Wed Dec 01, 2021 5:11 pm
Kitrinx wrote: Wed Dec 01, 2021 5:02 pm Mister framework provides only one mouse input, and there's not much I can do about that.
Thanks! Do the Mr. Spinners allow more than one spinner, or do they take up the one mouse input? Can you have two driving controllers using two Mr. Spinners? What I am suggesting is that you could have up to three if you used X, Y, and Z and the three buttons on the one mouse input.
Here is the project, they create two paddles.
https://github.com/MiSTer-devel/Retro-C ... rollersUSB
thorr
Top Contributor
Posts: 1099
Joined: Mon Jul 06, 2020 9:37 pm
Has thanked: 535 times
Been thanked: 252 times

Re: Atari 7800 / 2600

Unread post by thorr »

Kitrinx wrote: Wed Dec 01, 2021 6:42 pm
thorr wrote: Wed Dec 01, 2021 5:11 pm
Kitrinx wrote: Wed Dec 01, 2021 5:02 pm Mister framework provides only one mouse input, and there's not much I can do about that.
Thanks! Do the Mr. Spinners allow more than one spinner, or do they take up the one mouse input? Can you have two driving controllers using two Mr. Spinners? What I am suggesting is that you could have up to three if you used X, Y, and Z and the three buttons on the one mouse input.
Here is the project, they create two paddles.
https://github.com/MiSTer-devel/Retro-C ... rollersUSB
Correct, but looking at the code, I think the two paddles are mapped as a single joystick with X and Y being the two paddles. I haven't built one, so I can't say for sure. That is the same thing the D9 does currently and it isn't working. Sorry if I am being a pain, and I am really trying not to be. I just have my doubts it will work based on what I am seeing.
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: Wed Dec 01, 2021 7:04 pm
Correct, but looking at the code, I think the two paddles are mapped as a single joystick with X and Y being the two paddles. I haven't built one, so I can't say for sure. That is the same thing the D9 does currently and it isn't working. Sorry if I am being a pain, and I am really trying not to be. I just have my doubts it will work based on what I am seeing.
It creates special paddle devices on mister. They are neither a mouse nor a joystick. The framework has a special port for them, which the core supports.
thorr
Top Contributor
Posts: 1099
Joined: Mon Jul 06, 2020 9:37 pm
Has thanked: 535 times
Been thanked: 252 times

Re: Atari 7800 / 2600

Unread post by thorr »

Kitrinx wrote: Wed Dec 01, 2021 7:34 pm It creates special paddle devices on mister. They are neither a mouse nor a joystick. The framework has a special port for them, which the core supports.
Great! That is the key piece that I was looking for. So if I create a two-Paddles Mr. Spinner, and I choose "Paddle" for Port 1 in the 7800 core, both paddles will work. If I create a second two-Paddles Mr. Spinner, and I choose "Paddle" for Port 2, then four paddles will work? And if I create two infinite spinners and choose Driving controller for Ports 1 and 2, they will both work? Thanks!!
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: Wed Dec 01, 2021 8:42 pm
Kitrinx wrote: Wed Dec 01, 2021 7:34 pm It creates special paddle devices on mister. They are neither a mouse nor a joystick. The framework has a special port for them, which the core supports.
Great! That is the key piece that I was looking for. So if I create a two-Paddles Mr. Spinner, and I choose "Paddle" for Port 1 in the 7800 core, both paddles will work. If I create a second two-Paddles Mr. Spinner, and I choose "Paddle" for Port 2, then four paddles will work? And if I create two infinite spinners and choose Driving controller for Ports 1 and 2, they will both work? Thanks!!
the way it's made, it will assign paddles in the order that you "touch" them.
So if you enable port1 as paddles, and then click a mouse button, the mouse will be 1a, then if you move an analog stick on a controller, that analog stick will be 1b, then if you turn a paddle connected to mr spinner, that will be 2a, and so on.

If you want only paddle 2a and 2b, the only enable paddles for port 2. If you need just 1b, you can assign 1a, then swap it in the menu. It's a goofy situation but I tried to make it pretty flexible.
thorr
Top Contributor
Posts: 1099
Joined: Mon Jul 06, 2020 9:37 pm
Has thanked: 535 times
Been thanked: 252 times

Re: Atari 7800 / 2600

Unread post by thorr »

Ok, that makes sense. Thanks a lot for your help!
thorr
Top Contributor
Posts: 1099
Joined: Mon Jul 06, 2020 9:37 pm
Has thanked: 535 times
Been thanked: 252 times

Re: Atari 7800 / 2600

Unread post by thorr »

Kitrinx wrote: Thu Dec 02, 2021 12:48 am It's a goofy situation but I tried to make it pretty flexible.
I got my GRS spinner today that has a built-in USB connector (not a Mr. Spinner). It works, is very well made, but there is no way as far as I know to adjust the spinner sensitivity, and in Kaboom I have to turn it a lot further than I would like to get it to move the buckets across the screen. Is there anyway you would consider adding a sensitivity adjustment in the menu for the paddles and driving controller? Then I could dial it in just perfect. Thanks for your consideration!
thorr
Top Contributor
Posts: 1099
Joined: Mon Jul 06, 2020 9:37 pm
Has thanked: 535 times
Been thanked: 252 times

Re: Atari 7800 / 2600

Unread post by thorr »

I succeeded in getting one Atari paddle to work with the button with a 2600daptor D9 by doing the following in the 7800 core menu where you define the joystick:
- The first thing it asks you is to press Right. Well, we need to skip this step, but we can't. If we press the spacebar, it thinks we want to use the keyboard. The only option is to press the paddle button on the second paddle. This gets the device recognized so you can define or skip more stuff.
- Skip through the rest of it until you get to Paddle button by using the spacebar
- Press the paddle button on the first paddle.
- Skip the rest using the spacebar

After doing the above, Kaboom works great with one paddle. I have been greatly enjoying playing many paddle games tonight on this amazing core!

I have been in communication with the maker of the 2600daptor about making the second paddle be a second device. The problem is, as described above, even if he did this, it doesn't seem there would be a way to define it because the first thing it asks you is to press Right. There is no Right to press, so you are stuck unless you press space, and from that point you are stuck with pressing keyboard keys instead of paddle buttons.

I have expressed frustration in the past with the way the MiSTer handles its input definitions, and this is just another example. Another example I have used in the past is if I make an arcade panel with two physical joysticks on it, sometimes I want each joystick to be separate players, and sometimes I want them to both work for one player. If I make them separate players, they will work great as separate joysticks. However, if I want to play Super Smash TV on the SNES using my two joysticks, I need the left joystick to be the plus on the SNES controller, and the right joystick to be the SNES buttons. I simply can't do this if they are separate devices and it wants to use the left joystick as player one and the right joystick as player 2. In my opinion, the MiSTER input system needs to allow any device to be anything. Plug in all your stuff, and each core asks you to press whatever you want on any device for "Player 1, left", etc. I am thankful for what we have but frustrated by these limitations and feel powerless to do anything about it.

Yes, I know I can use Mr. Spinner to solve this particular case, but it means I need to buy/build yet another device when the one I have should just work and it sort of does, but only for one player because of these limitations. Mr. Spinner won't solve my Super Smash TV dilemma. Also, I just bought a GRS push/pull Tron spinner, and it comes with its own USB implementation. It doesn't work with Discs of Tron, and the core doesn't allow you to define anything, so it won't work. I am not sure what the solution is for that. Mr. Spinner doesn't have a push/pull spinner option and the only push/pull spinners you can get are from GRS and Groovygamegear and they have their own USB implementation already. My only option is to open an issue on github (already did this) and hope that Discs of Tron can be updated to add support for the GRS directly. Meanwhile, I guess my only option for Discs of Tron is to use Mame because I can define the controls.

I am not blaming anyone for this. It is a general problem that I hope can be addressed. I don't want to come off as ungrateful, but if I don't express these things, they may not ever get noticed or addressed. In Mame, it is quite nice how everything is in a list of what does what. I wish MiSTer could adapt the Mame style of input definitions. If anyone has any suggestions to any of the issues I ran into, I would appreciate the help. It is quite possible I just don't know what I am doing.
Stinky
Posts: 84
Joined: Mon Nov 15, 2021 9:05 pm
Has thanked: 44 times
Been thanked: 9 times

Re: Atari 7800 / 2600

Unread post by Stinky »

Super work, I love Atari!
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 »

You can skip buttons by pressing OSD on MiSTer or another controller. This way you can also map only the paddle button of any paddle. However, at least in my case, only the second paddle button will work even after mapped.
thorr
Top Contributor
Posts: 1099
Joined: Mon Jul 06, 2020 9:37 pm
Has thanked: 535 times
Been thanked: 252 times

Re: Atari 7800 / 2600

Unread post by thorr »

skooter wrote: Thu Dec 02, 2021 9:42 am You can skip buttons by pressing OSD on MiSTer or another controller. This way you can also map only the paddle button of any paddle. However, at least in my case, only the second paddle button will work even after mapped.
Thanks! By "another controller" what exactly do you mean? Do you plug a joystick into the D9 to start it, then switch over to the paddles? I tried that and ended up in a situation where the paddle button on one button worked, and the spinner on the other worked, if I recall correctly. Do you mean a different D9 with something plugged into it? Do you mean anything else, like a USB gamepad? I appreciate your help. Your and others' posts on the D9 helped me get as far as I did at least.
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 »

Another controller in my scenario is a DualShock 4 connected through Bluetooth. I usually play Atari with the original controllers (assigned to Player 1) but with the Dualshock (assigned to Player 2) to use for the console buttons (SELECT, START, etc.) and the OSD. I guess it can be assigned to Player 3 in the case of two-player games, but I never tried.

So I use the Dualshock 4 to navigate in the menus and select the button assignment option, while the paddles are connected through D9. Once there, I use the OSD button on the Dualshock to skip all the buttons. When it is time to press the paddle button, I press the paddle button on the second paddle. Only at this time, MiSTer knows that I'm configuring the paddle because the OSD presses don't count (I just don't touch any other button on the DS while setting the buttons). I skip the rest of the buttons the same way.

Now I select the option to re-assign the controllers, move the second paddle so it is registered as 1A and that's it. I keep using the Dualshock to navigate in the OSD and console buttons.

Notice that I only got this to work for the second paddle. The first paddle maps just fine (apparently) but the button doesn't work even after mapped and I don't know why.
thorr
Top Contributor
Posts: 1099
Joined: Mon Jul 06, 2020 9:37 pm
Has thanked: 535 times
Been thanked: 252 times

Re: Atari 7800 / 2600

Unread post by thorr »

Thank you very much for the detailed explanation. Is OSD the same as "Menu" when defining the buttons on the DS4? This is purely from memory, so for all I know it may say "press a button for OSD", but I don't recall. Thanks again!
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 »

You're probably right. I think it says "Menu" when assigning the buttons.
But I remember reading something like "Hold OSD to cancel" during the assignment, probably because the MiSTer button says OSD.

Anyway, any Bluetooth or USB controller with Menu assigned or the OSD button on MiSTer should work for skipping buttons.
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 »

skooter wrote: Thu Dec 02, 2021 6:46 pm You're probably right. I think it says "Menu" when assigning the buttons.
But I remember reading something like "Hold OSD to cancel" during the assignment, probably because the MiSTer button says OSD.

Anyway, any Bluetooth or USB controller with Menu assigned or the OSD button on MiSTer should work for skipping buttons.
Or the menu button on the IO board.
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 »

Kitrinx wrote: Thu Dec 02, 2021 7:07 pm Or the menu button on the IO board.
That's what I meant by OSD on MiSTer. Both my case and my IO board say 'OSD' instead of Menu.
thorr
Top Contributor
Posts: 1099
Joined: Mon Jul 06, 2020 9:37 pm
Has thanked: 535 times
Been thanked: 252 times

Re: Atari 7800 / 2600

Unread post by thorr »

Thanks! My MiSTer is encased in a NESPi 4 case (this was a lot of work but I managed it) and I don't have access to the OSD button.
User avatar
redsteakraw
Posts: 244
Joined: Sun May 24, 2020 11:19 pm
Has thanked: 1 time
Been thanked: 40 times

Re: Atari 7800 / 2600

Unread post by redsteakraw »

One thing I would say is that with the Daptor D9 Which I primarily use for paddle controllers the problem is that configuring Mister with paddle controllers is near impossible and leads to more trouble than it is worth. What might make it easier if there was a specific define paddle controller dialog streamlined for paddle controllers so I can just plug in the Daptor and configure it once and it will work on all games for the core.
Fear is the mind killer!
thorr
Top Contributor
Posts: 1099
Joined: Mon Jul 06, 2020 9:37 pm
Has thanked: 535 times
Been thanked: 252 times

Re: Atari 7800 / 2600

Unread post by thorr »

For all intents and purposes, on a real Atari 2600, the set of paddles act as one device that is essentially a two-button 2-axis analog joystick. Each DB9 port on the Atari 2600 has one device connected to it. The Atari decides to take this one device and use it for two players in the game code, but it is one device to the console. There could conceivably be a game that uses both paddles by one player, one in each hand set on the floor if the game was designed with that control scheme in mind. The Atari 7800 core is treating each individual paddle as separate devices/players which is causing the main issue. Both paddles combined should be considered one player in the MiSTer and it should ask for paddle button 1 and paddle button 2 in the mapping questions. Warlords uses four paddles, which would be two players in the MiSTer (two DB9's on the Atari 2600). This change of treating both paddles as one controller (which they are) would solve all of the problems.
CMR
Posts: 90
Joined: Sun Dec 20, 2020 12:29 am
Has thanked: 33 times
Been thanked: 8 times

Re: Atari 7800 / 2600

Unread post by CMR »

7800 core is great. Thanks.
KremlingKuthroat19
Posts: 237
Joined: Sat Aug 22, 2020 3:08 am
Has thanked: 27 times
Been thanked: 49 times

Re: Atari 7800 / 2600

Unread post by KremlingKuthroat19 »

Just out of curiosity, when is the original 2600 going to be retired, or "archived"? Just requesting it to be removed since it serves no purpose anymore. The required file extensions for mappers and lack of Supercharger support is enough to make the 2600 core obsolete. Would also like the wiki to be renamed to Atari 7800, 2600 to reflect that it plays both consoles.
User avatar
pgimeno
Top Contributor
Posts: 669
Joined: Thu Jun 11, 2020 9:44 am
Has thanked: 246 times
Been thanked: 208 times

Re: Atari 7800 / 2600

Unread post by pgimeno »

KremlingKuthroat19 wrote: Wed Dec 08, 2021 12:49 pmThe required file extensions for mappers and lack of Supercharger support is enough to make the 2600 core obsolete.
I consider the required file extensions a feature, not a bug. Heuristics may eventually fail.
User avatar
redsteakraw
Posts: 244
Joined: Sun May 24, 2020 11:19 pm
Has thanked: 1 time
Been thanked: 40 times

Re: Atari 7800 / 2600

Unread post by redsteakraw »

Just a tip I copied my 2600 Rom folder into the 7800 folder with the title "0 Atari 2600" so I can easily get to my roms . I haven't touched the old 2600 core since the release. Since it doesn't play Tapper well on my CRT anyway I think retiring the core would probably be best. Ideally though I would like MRA files for console cores so that Mega cores like this that code for multiple systems can be separated out with out actually being forked. So the Coleco and SG-1000 can have their own listings as well as the Sega Mastersystem and Game Gear and the TurboGrafx and SuperGrafx. Even specialized addons could be separated like the Famicom Disk system, Turbo CD and Supercharger.
Fear is the mind killer!
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 »

MRAs for consoles wouldn't work well. Many games have about a dozen or more valid dumps that had to be considered for an MRA. This would mean an immense task to built these MRA files and it would mean an immense task on the user side to filter out which MRAs are needed for them roms on the SD card.

With arcade games it is different. They rely on the Mame Set and there is only 1 dump for every chip (the different versions of the game are not comparable to different dumps of a console cartridge, these different versions had to be considered aditionally).
Lightwave
Posts: 231
Joined: Sun May 24, 2020 10:06 pm
Has thanked: 110 times
Been thanked: 68 times

Re: Atari 7800 / 2600

Unread post by Lightwave »

redsteakraw wrote: Thu Dec 09, 2021 12:02 pm Just a tip I copied my 2600 Rom folder into the 7800 folder with the title "0 Atari 2600" so I can easily get to my roms .
I did the opposite: moved the 2600 ROMs to the root of the core folder, and made a folder within that named "7800" for the 7800 ROMs :)
User avatar
redsteakraw
Posts: 244
Joined: Sun May 24, 2020 11:19 pm
Has thanked: 1 time
Been thanked: 40 times

Re: Atari 7800 / 2600

Unread post by redsteakraw »

Chris23235 wrote: Thu Dec 09, 2021 1:04 pm MRAs for consoles wouldn't work well. Many games have about a dozen or more valid dumps that had to be considered for an MRA. This would mean an immense task to built these MRA files and it would mean an immense task on the user side to filter out which MRAs are needed for them roms on the SD card.

With arcade games it is different. They rely on the Mame Set and there is only 1 dump for every chip (the different versions of the game are not comparable to different dumps of a console cartridge, these different versions had to be considered aditionally).
Just a MRA file for loading the proper Bios file and default rom folder and settings for the given core. So you can load a Japanese MegaDrive or a SuperGraphX and other and have all the right stuff set right from the Menu. Right now we have cores that are set up for everything is all lumped in and you have to constantly reset or dig through the menus. You can have actual separate consoles without the need to separate and maintain different codebases. You can have a SG-1000, GameGear or other separate systems even if they share the same core. Or am I missing something or mislead?
Fear is the mind killer!
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 »

redsteakraw wrote: Thu Dec 09, 2021 3:55 pm
Chris23235 wrote: Thu Dec 09, 2021 1:04 pm MRAs for consoles wouldn't work well. Many games have about a dozen or more valid dumps that had to be considered for an MRA. This would mean an immense task to built these MRA files and it would mean an immense task on the user side to filter out which MRAs are needed for them roms on the SD card.

With arcade games it is different. They rely on the Mame Set and there is only 1 dump for every chip (the different versions of the game are not comparable to different dumps of a console cartridge, these different versions had to be considered aditionally).
Just a MRA file for loading the proper Bios file and default rom folder and settings for the given core. So you can load a Japanese MegaDrive or a SuperGraphX and other and have all the right stuff set right from the Menu. Right now we have cores that are set up for everything is all lumped in and you have to constantly reset or dig through the menus. You can have actual separate consoles without the need to separate and maintain different codebases. You can have a SG-1000, GameGear or other separate systems even if they share the same core. Or am I missing something or mislead?
I think for this different configurations where the easier solution. Several cores like the ST or Amiga core already support this. Here you can save a different settings for a core (e.g. RAM-size, OS Rom, CPU settings, etc.).
jca
Top Contributor
Posts: 1911
Joined: Wed May 27, 2020 1:59 pm
Has thanked: 145 times
Been thanked: 454 times

Re: Atari 7800 / 2600

Unread post by jca »

redsteakraw wrote: Thu Dec 09, 2021 3:55 pm ...
You can have actual separate consoles without the need to separate and maintain different codebases. You can have a SG-1000, GameGear or other separate systems even if they share the same core. Or am I missing something or mislead?
If you don't separate and maintain different codebases you will use the exact same core which will use the same game subfolder and the same config settings. It does not solve anything.
Post Reply