WHDLoad MantisBT - Cabal
View Issue Details
0003550Cabal[WHDLoad Installs Games] slavepublic2016-08-31 20:242022-03-13 22:23
ReporterDanyPPC 
Assigned ToStingRay 
PrioritynormalSeverityfeatureReproducibilityalways
StatusresolvedResolutionfixed 
PlatformOSOS Version
Product Version 
Target VersionFixed in Version 
MachineA1200
CPU68030
CPUSpeed50
ChipSetAGA
GFXCardNone
ChipMem2 MB
FastMem64MB
WorkbenchOS 3.0
KickROM40 - Kick 3.1
KickSoftNone
WHDLoad18.2
imported
Summary0003550: [Cabal] CD32 Pad Option bug
DescriptionCD32 Pad option doesn't work well on:

A1200/030 Rev 1D.4 C= Kick 3.0 WHDLoad 18.2
A1200/ACA030 Rev 2B C= Kick 3.1 WHDLoad 18.2
A1200/030 Rev 1D.4 C= Kick 3.1 WHDLoad 18.2
A1200/PPC/060 Rev 1D.4 AmigaTech Kick 3.1 WHDLoad 18.2

Strange Pause and autofire option on first button.
The Game start in 2 Player Mode even if only the RED Button is pressed on the gamepad.

Tested with: CD32 original Pad, Boomerang CD32 pad, Kipper PSX Adapter, Competition Pro Honey Bee CD32 Pad.

On WinUAE 3.3.0 all is ok.
TagsNo tags attached.
Attached Fileszip usr.zip (35,610) 2021-07-24 18:06
http://mantis.whdload.de/file_download.php?file_id=1256&type=bug

Notes
(0005311)
StingRay   
2016-08-31 21:09   
Can't reproduce. You can still start the single player game with F1 anyway. And what does "Strange pause and autofire option" mean? You need to provide a bit more useful info than that.
(0005312)
DanyPPC   
2016-08-31 21:24   
At the start screen "CABAL" logo, when i press the RED button (1 Player) the game starts always in 2 player mode. Even if i press F1 the game starts in 1 player mode, but then the fire button doesn't work well, sometimes it make pauses after a shot, as it acts for the Play Button that pauses the game.
The second button launches 2 bombs at a time, and generally the direction down of the joystick isn't disabled at all.

All works as expected only on WinUAE, but on original machine i have to disable the 2 button option with CUSTOM3=0.
(0005313)
StingRay   
2016-08-31 23:10   
Why should the down direction be disabled? Disabled is down+fire when using the joypad option, nothing else.

As for the rest, I might create some test versions for you to try, I'll attach these to this ticket, you need to give me feedback then if/when something changes regarding the joypad problems.
(0005314)
DanyPPC   
2016-09-01 07:01   
Of course.

I'll test new slaves on my Amiga Real machines !
WinUAE is only an option for a real Amiga User ;)
(0006889)
JOTD   
2019-06-25 22:44   
In fact we can detect joypad vs joystick using some custom code I use

If wrong detection of joystick as cd32 joypad, pressing button 2 presses ALL CD32 joypad buttons which triggers pause and other strange stuff.

Slave needs to be reassembled with my version of "ReadJoyPad.s" probably and add a "_detect_controller_types" call at the start. Sting will you do the honors?
(0009501)
DanyPPC   
2021-02-01 10:34   
Noone is able to fix 2nd button problem for this game on real Amiga ?
(0009505)
JOTD   
2021-02-02 21:05   
first attempt to fix the issue, please try the attached slave and report back.

If it doesn't work, I have other leads
(0009511)
StingRay   
2021-02-03 09:08   
@JOTD: thanks for taking care of the joypad problem (@DanyPPC: everything can be fixed, it just requires someone to work on the problem and I had lots of other stuff to do in the last months so this patch had a somewhat low priority).

Once you you fixed the joypad problem, please send me the updated source as I have already done some other fixes in the meantime (not joypad related at all), thanks.
(0009514)
JOTD   
2021-02-03 09:22   
@Stingray my pleasure. Just wait for confirmation that it is fixed, as I just updated the readjoypad slave + added controller detect at startup. It may not be enough, and may require joypad read to be relocated in vblank
(0010440)
aardvark82   
2021-06-26 02:53   
The attached slave didn't fix the random pause bug on my A1200 with TF1260. I can't reproduce it on WinUAE.

It doesn't happen very frequently, about once per level in average.

Maybe add option to disable Play=Pause as a workaround?
(0010442)
JOTD   
2021-06-26 14:33   
> It may not be enough, and may require joypad read to be relocated in vblank

It's probably the issue, I'm going to do that. It fixes those issues.
(0010452)
JOTD   
2021-06-27 00:14   
can you test the newly attached slave?
(0010453)
aardvark82   
2021-06-27 01:13   
Still pauses occasionally, but less frequently than the official slave.
This new slave introduced a bug with gunshot sounds, it skips about half of them.
(0010459)
JOTD   
2021-06-27 15:34   
Hi

updated. Can you test again? gunshot sounds should be back

> Strange Pause and autofire option on first button.
> The Game start in 2 Player Mode even if only the RED Button is pressed on the gamepad.

Can you confirm if the "start in 2 player" mode bug is gone too. And with which controller do you have spurious pause issues?
(0010461)
aardvark82   
2021-06-27 21:26   
Gunshot sounds are still bugged with the new slave, only when joypad mode is enabled though. The background music is also affected.

The player 2 bug is gone.

I have Monster Joystick CD32 and KTRL CD32+. I've had pauses with both but they are pretty rare now, can play 10+ minutes without any pauses.

Also, I made a feature request for grenade spam http://mantis.whdload.de/view.php?id=5270
(0010473)
aardvark82   
2021-06-29 17:25   
I tested my controllers with Amiga Test Kit, and apparently occasional phantom button presses do happen with the Play button while frantically pressing other buttons. Maybe it's an EMI interference issue.

So an option to disable Play=Pause could helpful, if this is a common issue with amiga.
(0010491)
JOTD   
2021-07-04 16:43   
changed another thing + fixed grenade spam & cpu dependent loop (x3)

can you test?
(0010495)
aardvark82   
2021-07-05 14:04   
Audio is fixed, but the victory music at the end of each screen cuts off prematurely now, just a minor thing.

Throwing requires two button taps, is that intentional? Still it's much better than grenade spam.

Paused a couple times during a playthrough, but could be due to above-mentioned phantom inputs.
(0010581)
JOTD   
2021-07-21 23:29   
here's an update with grenade throw fixed and 3 button support
(0010585)
Pascal De Maeseneire   
2021-07-22 17:12   
@JOTD
Hi,
I downloaded Your usr.Zip file to try it.
In Your Readme file it seems that there is a new slave v1.3 (21.07.2021).
But in the zip the slave is a version from 2016...
Is there a new one ... Can You check ?
Many Thanks,
Best regards,
Pascal
(0010586)
Solo Kazuki   
2021-07-22 19:42   
Hi, JOTD. Can You also fix this twice grenade bug? It's about throwing two grenades when button is pressed just once.
(0010588)
JOTD   
2021-07-24 18:06   
yes, the twice grenade bug is now fixed. New usr.zip package attached too.
(0010593)
Solo Kazuki   
2021-07-25 13:00   
For me it's working ok now.
(0010594)
Pascal De Maeseneire   
2021-07-25 13:37   
Hi,
For me too it works perfectly now (On my A500ACA500PLUS & my A1200).
Many Thanks,
Best regards,
Pascal
(0010596)
StingRay   
2021-07-25 15:55   
As all joypad related problems appear to be fixed, I'll create the final updated version of the patch in the coming days and hence have assigned this ticket back to me.
(0010597)
JOTD   
2021-07-25 16:10   
(Last edited: 2021-07-25 16:11)
perfect. Note that I have added delays where they were empty DBFs too (highscore and level picture). The latest source is in "usr.zip". Not changing it anymore

(0010995)
StingRay   
2022-03-12 13:44   
The new patch is now available. I have fixed various timing problems (for example, the "level complete" tune is now always fully played as I have patched the code to use the replayer data instead of a simple delay), fixed the blitter and vertical blank interrupt acknowledge, added optional NTSC compatibility and simplified the approach to read the joypad in the vertical blank interrupt. Source is in the archive and can also be found on my Github for those that are nosy and/or interested: https://github.com/MK1Roxxor/WHDLoad_Patches/blob/master/Games/Cabal_WHD.s
(0011001)
Excolion   
2022-03-13 20:57   
Hello, I downloaded the pre-installed game package file "Cabal_v1.3_0638.lha" from Magix's google drive archive and tried it. The game opens, Ocean screen passes, then CABAL main screen with the music appears. At this point, when I press Fire again, the screen starts to transition to the next part but the game immediately crashes with the following error:

error during 'resload_Patch'
invalid command PLCMD_16418 $6 at address $9FB6D8 (Slave $428)

My system: Classic WB FULL, WinUAE 4.2.1 . A1200, 68020, 14 CPUSpeed, AGA, 2 + 8 MB RAM, OS 3.1 , Kick 3.1 , WHDLoad 17.1 .

Any idea why I'm getting this error? I get this error with only three games: Cabal, Fate Gates of Dawn and Darkmere. My other 50+ games work fine. One thing that may give an idea is, older versions of these games work without errors, for example Cabal 1.1 works fine and the previous version of Fate Gates of Dawn (1.0) works fine (FGoD currently inspected in #0005531). Unfortunately 1.2 and 2.0 versions of Darkmere both crashes with this type of error. Thanks in advance.
(0011002)
aardvark82   
2022-03-13 21:28   
Excolion, this is because you are using ancient WHDLoad version.
(0011003)
StingRay   
2022-03-13 21:30   
Please update your WHDLoad version! The error occurs because PL_IFCxxx commands are not available in WHDLoad 17.1.

(0011005)
Excolion   
2022-03-13 22:23   
Yes, it was way back when I purchased WHDLOAD key and I've been using that version all these years. I finally managed to update it and the games no longer crash, thanks a bunch!

Issue History
2016-08-31 20:24DanyPPCNew Issue
2016-08-31 21:09StingRayNote Added: 0005311
2016-08-31 21:09StingRayAssigned To => StingRay
2016-08-31 21:09StingRayStatusnew => assigned
2016-08-31 21:24DanyPPCNote Added: 0005312
2016-08-31 23:10StingRayNote Added: 0005313
2016-09-01 07:01DanyPPCNote Added: 0005314
2019-06-24 12:05StingRayAssigned ToStingRay =>
2019-06-25 22:44JOTDNote Added: 0006889
2021-02-01 10:34DanyPPCNote Added: 0009501
2021-02-01 21:26JOTDAssigned To => JOTD
2021-02-01 21:26JOTDStatusassigned => acknowledged
2021-02-02 21:04JOTDFile Added: Cabal.zip
2021-02-02 21:05JOTDNote Added: 0009505
2021-02-02 21:05JOTDStatusacknowledged => feedback
2021-02-03 09:08StingRayNote Added: 0009511
2021-02-03 09:22JOTDNote Added: 0009514
2021-06-26 02:53aardvark82Note Added: 0010440
2021-06-26 14:33JOTDNote Added: 0010442
2021-06-27 00:13JOTDFile Deleted: Cabal.zip
2021-06-27 00:13JOTDFile Added: Cabal.zip
2021-06-27 00:14JOTDNote Added: 0010452
2021-06-27 01:13aardvark82Note Added: 0010453
2021-06-27 15:31JOTDFile Deleted: Cabal.zip
2021-06-27 15:31JOTDFile Added: Cabal.zip
2021-06-27 15:34JOTDNote Added: 0010459
2021-06-27 15:34JOTDFile Deleted: Cabal.zip
2021-06-27 15:34JOTDFile Added: Cabal.zip
2021-06-27 21:26aardvark82Note Added: 0010461
2021-06-29 17:25aardvark82Note Added: 0010473
2021-07-04 16:42JOTDFile Deleted: Cabal.zip
2021-07-04 16:43JOTDFile Added: Cabal.zip
2021-07-04 16:43JOTDNote Added: 0010491
2021-07-05 14:04aardvark82Note Added: 0010495
2021-07-12 21:34JOTDStatusfeedback => confirmed
2021-07-21 23:28JOTDFile Deleted: Cabal.zip
2021-07-21 23:28JOTDFile Added: usr.zip
2021-07-21 23:29JOTDNote Added: 0010581
2021-07-22 17:12Pascal De MaeseneireNote Added: 0010585
2021-07-22 19:42Solo KazukiNote Added: 0010586
2021-07-24 18:06JOTDNote Added: 0010588
2021-07-24 18:06JOTDFile Deleted: usr.zip
2021-07-24 18:06JOTDFile Added: usr.zip
2021-07-25 13:00Solo KazukiNote Added: 0010593
2021-07-25 13:37Pascal De MaeseneireNote Added: 0010594
2021-07-25 15:55StingRayNote Added: 0010596
2021-07-25 15:55StingRayAssigned ToJOTD => StingRay
2021-07-25 16:10JOTDNote Added: 0010597
2021-07-25 16:11JOTDNote Edited: 0010597bug_revision_view_page.php?bugnote_id=10597#r1431
2022-03-12 13:44StingRayNote Added: 0010995
2022-03-12 13:45StingRayStatusconfirmed => resolved
2022-03-12 13:45StingRayResolutionopen => fixed
2022-03-13 20:57ExcolionNote Added: 0011001
2022-03-13 21:28aardvark82Note Added: 0011002
2022-03-13 21:30StingRayNote Added: 0011003
2022-03-13 21:30StingRayNote Edited: 0011003bug_revision_view_page.php?bugnote_id=11003#r1460
2022-03-13 22:23ExcolionNote Added: 0011005