atari800 / atari800

Atari 8-bit computer and 5200 console emulator
https://atari800.github.io/
GNU General Public License v2.0
347 stars 95 forks source link

"Bounty Bob Strikes Back" cart version doesn't recognize the space bar #33

Closed Shamus397 closed 3 years ago

Shamus397 commented 6 years ago

This is with the latest version in the git repo and has been an issue for a long time now, going back to v3.1.0 and before. For some reason, the cartridge version of "Bounty Bob Strikes Back" doesn't react when the space bar is pressed on level 2. Also, the lift does not activate when you jump on it either (which it should). Using "1" and "2" on the keyboard to activate the transporters works as it should, so it's not ignoring all keys. This is on an XL NTSC emulated system, using a USB gamepad for input; host system is Linux/SDL.

I also verified that all works normally with the tape version (XL/PAL), so it's just the cart version that has this issue.

mikrosk commented 5 years ago

@Shamus397 can you try to reproduce without the gamepad, using keyboard -> joystick emulation only?

mikrosk commented 5 years ago

@ChoccyHobNob as you are the local BBSB expert ;), can you confirm this?

a8bit commented 5 years ago

Sure I’ll give BBSB a good going over today (it’s only 8am here) and let you know about stereo and the space bar

On Jun 18, 2019, at 07:45, Miro Kropáček notifications@github.com wrote:

@ChoccyHobNob https://github.com/ChoccyHobNob as you are the local BBSB expert ;), can you confirm this?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/atari800/atari800/issues/33?email_source=notifications&email_token=AAADDUO3MRPH7M5OJVRVZFLP3DKG7A5CNFSM4FEEFCD2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODX6KR7Y#issuecomment-503097599, or mute the thread https://github.com/notifications/unsubscribe-auth/AAADDUP3Z4NBM3QCM4QJWZDP3DKG7ANCNFSM4FEEFCDQ.

a8bit commented 5 years ago

OK So, The BBSB works in real hardware even if Stereo POKEYs are installed. I tried multiple versions all of them were fine.

The space bar thing is a different issue to what is being reported. The game has a Utility Hoist (First time you use it is level 2) when you land on the hoist you stick to it, the joystick moves the hoist around, you press space to stop it to get off or press space again to re-stick to it.

In Atari800 if you land on the hoist it doesn’t get activated at all so you can’t control it.

This is true for all versions except for the USGold cassette version which works fine and the Homesoft XEX version which is also OK.

Obviously this all works fine on real hardware, also works in Altirra.

There is discussion about it on AtariAge back to 2010 so it’s been a known thing with this emulator for a long time.

There is another issue with BBSB in that it doesn’t work (the joystick is non-responsive) if you have a U1MB installed (The Homesoft XEX is fixed to work, none of the other versions are controllable at all. That made testing all this on real hardware a royal pain as my 1088XEL has a U1MB.

On Jun 18, 2019, at 08:06, Steve Boswell steve@choccyhobnob.com wrote:

Sure I’ll give BBSB a good going over today (it’s only 8am here) and let you know about stereo and the space bar

On Jun 18, 2019, at 07:45, Miro Kropáček <notifications@github.com mailto:notifications@github.com> wrote:

@ChoccyHobNob https://github.com/ChoccyHobNob as you are the local BBSB expert ;), can you confirm this?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/atari800/atari800/issues/33?email_source=notifications&email_token=AAADDUO3MRPH7M5OJVRVZFLP3DKG7A5CNFSM4FEEFCD2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODX6KR7Y#issuecomment-503097599, or mute the thread https://github.com/notifications/unsubscribe-auth/AAADDUP3Z4NBM3QCM4QJWZDP3DKG7ANCNFSM4FEEFCDQ.

joysfera commented 5 years ago

so all we need is to point users to Homesoft XEX version and we're good?

a8bit commented 5 years ago

ಠ_ಠ

On Jun 18, 2019, at 14:35, Petr Stehlík notifications@github.com wrote:

so all we need is to point users to Homesoft XEX version and we're good?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/atari800/atari800/issues/33?email_source=notifications&email_token=AAADDUMT26OGHSLRYKBVLTTP3E2H3A5CNFSM4FEEFCD2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODX7XETI#issuecomment-503280205, or mute the thread https://github.com/notifications/unsubscribe-auth/AAADDUORIFFP6DGPV64S67LP3E2H3ANCNFSM4FEEFCDQ.

Shamus397 commented 5 years ago

Yes, it displays the exact same behavior using the built-in emulated (keyboard) joystick. As an aside, at some point I seem to remember this being fixed but I can't for the life of me remember which version it was (I could also be misremembering that, as it was a quite a few years ago). FWIW.

mikrosk commented 5 years ago

Obviously this all works fine on real hardware, also works in Altirra.

Does this apply also for the stereo bug? Because the original thread mentioned in #10 says that it doesn't work in Altirra and works on real hardware only by chance.

a8bit commented 5 years ago

The stereo bug is also a problem in Altirra.

I couldn’t get it to fail at all yesterday in real hardware using multiple carts, multiple times.

On Jun 19, 2019, at 00:47, Miro Kropáček notifications@github.com wrote:

Obviously this all works fine on real hardware, also works in Altirra.

Does this apply also for the stereo bug? Because the original thread mentioned in #10 https://github.com/atari800/atari800/issues/10 says that it doesn't work in Altirra and works on real hardware only by chance.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/atari800/atari800/issues/33?email_source=notifications&email_token=AAADDUL7B4PMYOC4IEZTHR3P3HB6XA5CNFSM4FEEFCD2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODYAYIMI#issuecomment-503415857, or mute the thread https://github.com/notifications/unsubscribe-auth/AAADDUP27MTSQE6NKOQPBXLP3HB6XANCNFSM4FEEFCDQ.

joysfera commented 5 years ago

Another option is to turn off the stereo POKEY support and also extended memory support and let every user enable it on their own, if I understand the stereo POKEY issue correctly. Would that fix some of the BBSB issues? And would it be worth it?

a8bit commented 5 years ago

Yes, by default atari800 should emulate a standard Atari, if a user wants to add a stereo POKEY or more memory, that is a decision they should make for themselves.

A while ago I brought up that there is no command line switch to enable/disable stereo (or memory over 128K) I found a workaround using multiple config files and you closed the issue but really those options should have a command line switch, especially if you are making the decision to disable it by default…

On Jun 19, 2019, at 08:37, Petr Stehlík notifications@github.com wrote:

Another option is to turn off the stereo POKEY support and also extended memory support and let every user enable it on their own, if I understand the stereo POKEY issue correctly. Would that fix some of the BBSB issues? And would it be worth it?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/atari800/atari800/issues/33?email_source=notifications&email_token=AAADDUNOQMOXAO3S37BVFULP3IZCVA5CNFSM4FEEFCD2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODYB4QFY#issuecomment-503564311, or mute the thread https://github.com/notifications/unsubscribe-auth/AAADDUJB7RMMJ4OPQJFHR2LP3IZCVANCNFSM4FEEFCDQ.

Shamus397 commented 5 years ago

This problem is unrelated to the stereo pokey option; also, I had stereo pokey disabled (I never have that option enabled). I feel I should also add that this was on an emulated stock XL with no extras enabled either (no extra memory, no patches, etc). So whatever the issue is, it's probably in the core of the emulation.

mikrosk commented 5 years ago

Sure, I was just asking to make sure that Altirra somehow magically hasn't started working with the stereo bug (as it is reportedly working with this space bar bug).

@ChoccyHobNob can you point me to the AtariAge thread discussing this (space bar) bug? Just in case, whether it doesn't provide some leads what's wrong.

a8bit commented 5 years ago

Yeah there is a bug in atari800 which causes the lift not to activate in BBSB.

On Jun 19, 2019, at 13:30, Shamus397 notifications@github.com wrote:

This problem is unrelated to the stereo pokey option; also, I had stereo pokey disabled (I never have that option enabled). I feel I should also add that this was on an emulated stock XL with no extras enabled either (no extra memory, no patches, etc). So whatever the issue is, it's probably in the core of the emulation.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/atari800/atari800/issues/33?email_source=notifications&email_token=AAADDUL7NCYJI6JIY2MAGVTP3J3KZA5CNFSM4FEEFCD2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODYCYEKI#issuecomment-503677481, or mute the thread https://github.com/notifications/unsubscribe-auth/AAADDUKX3NGVY3MYMLX5TMLP3J3KZANCNFSM4FEEFCDQ.

a8bit commented 5 years ago

It doesn’t provide any leads, just Kr0tki telling everyone to use a better emulator

https://atariage.com/forums/topic/167524-how-do-i-work-the-utility-hoist-in-bounty-bob-strikes-back/

On Jun 19, 2019, at 14:08, Miro Kropáček notifications@github.com wrote:

Sure, I was just asking to make sure that Altirra somehow magically hasn't started working with the stereo bug (as it is reportedly working with this space bar bug).

@ChoccyHobNob https://github.com/ChoccyHobNob can you point me to the AtariAge thread discussing this (space bar) bug? Just in case, whether it doesn't provide some leads what's wrong.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/atari800/atari800/issues/33?email_source=notifications&email_token=AAADDUNKMUAEJBA2LQR2SKDP3J7ZFA5CNFSM4FEEFCD2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODYC3I3Q#issuecomment-503690350, or mute the thread https://github.com/notifications/unsubscribe-auth/AAADDUMMCN5OPAON4X6NSGLP3J7ZFANCNFSM4FEEFCDQ.

joysfera commented 5 years ago

This video should get even those who don't remember the game on the same page: https://youtu.be/18n-MBlVIvw?t=172 Issue with the lift could be caused by undetected PGM collision, if the lift is a PMG (some special sort of extra wide missile or something). Just guessing.

mikrosk commented 4 years ago

I confirm the issue. Since I spent half an hour to get into level two :), I'm attaching a saved state for debugging purposes. Use it as atari800 -state bbsb.sav.

It would really help if somebody could provide a disassembled code snapshot (maybe someone from the AA experts?) so we would know how does the check look like.

bbsb.sav.zip

EDIT: Just to be 100% clear, you need also the file from Atari Mania: http://www.atarimania.com/game-atari-400-800-xl-xe-bounty-bob-strikes-back_6014.html

So if you haven't used the cart before, run it as atari800 -state bbsb.sav -cart Bounty\ Bob\ Strikes\ Back\!.rom

kr0tki commented 3 years ago

Closing - fixed by PR #123.