Space Cadet Pinball for MorphOS
  • Caterpillar
    Caterpillar
    Puni
    Posts: 25 from 2020/7/21
    From: Norway
    Holy smokes! BeWorld has ported Space Cadet to MorphOS! Just found out when visiting MorphOS Storage a few minutes ago. I love pinball games and this one is a nice classic for sure. Keep up the great work! Donation has been sent. ;-)

    Anyone else tried Space Cadet on MorphOS yet?
    Member of Void - An Amiga demo group (website)
  • »13.11.21 - 20:27
    Profile Visit Website
  • MorphOS Developer
    jacadcaps
    Posts: 2538 from 2003/3/5
    From: Canada
    Nice!
  • »13.11.21 - 20:56
    Profile Visit Website
  • Order of the Butterfly
    Order of the Butterfly
    beworld
    Posts: 465 from 2010/2/10
    From: FRANCE
    Thank you for your support.

    Several of us played in front of a webcam at the "MicroAlchime" event in France.
    IMac G5 2.1,PowerMac 2.7,PowerBook 1.5
    My MOS ports
  • »14.11.21 - 05:38
    Profile Visit Website
  • Order of the Butterfly
    Order of the Butterfly
    BatteMan
    Posts: 255 from 2003/2/24
    From: France
    A very nice pinball !

    Thx you BeWorld for this port ! You rulez ;)
    Proud user of MorphOS since 2003 !
  • »15.11.21 - 14:18
    Profile Visit Website
  • Caterpillar
    Caterpillar
    Primax
    Posts: 37 from 2021/7/2
    Unfortunately I do not get it rnning here on my X5000...only a black screen.
    And yes, I have installed the latest 'SDL_2.0.16_Libraries.lha'.

    @BeWorld

    Does the game require a special gfx card...?

    Thanks!
    AmigaOne X5000 @ 2GHz / 4GB RAM / Radeon HD 5450 / AmigaOS 4.1 Final Edition / MorphOS 3.15
    Amiga1200 / Blizzard 1230 IV / 128 MB RAM / AmigaOS 3.9
  • »28.11.21 - 11:08
    Profile Visit Website
  • Order of the Butterfly
    Order of the Butterfly
    beworld
    Posts: 465 from 2010/2/10
    From: FRANCE
    mmm

    To be sur, i test SpaceCadet with QEmu (no GFX Card) with SDL 2.0.16 and SDL 2.0.14...
    All seem working here... so i dont have any idea why black screen.


    Are you test others games ?

    [ Edité par beworld 28.11.2021 - 14:50 ]

    [ Edité par beworld 28.11.2021 - 14:51 ]
    IMac G5 2.1,PowerMac 2.7,PowerBook 1.5
    My MOS ports
  • »28.11.21 - 13:49
    Profile Visit Website
  • Caterpillar
    Caterpillar
    Puni
    Posts: 25 from 2020/7/21
    From: Norway
    Quote:

    Primax wrote:
    Unfortunately I do not get it rnning here on my X5000...only a black screen.
    And yes, I have installed the latest 'SDL_2.0.16_Libraries.lha'.

    @BeWorld

    Does the game require a special gfx card...?

    Thanks!


    Hi Primax,

    Does the same happen (black screen) with both versions (software and hardware renderer)? Do you get a window or does it go full screen? Hope you'll get it working. :-)

    [ Edited by Puni 28.11.2021 - 15:52 ]
    Member of Void - An Amiga demo group (website)
  • »28.11.21 - 15:52
    Profile Visit Website
  • Moderator
    hooligan
    Posts: 1948 from 2003/2/23
    From: Lahti, Finland
    I have been a fan of Pinball Arcade by Farsight studios for years. Well made pinball simulators are the best joy
    www.mikseri.net/hooligan <- Free music
  • »28.11.21 - 19:36
    Profile Visit Website
  • Caterpillar
    Caterpillar
    Primax
    Posts: 37 from 2021/7/2
    Sorry, it is a white, not a black screen...;)

    But nothing happens. Except: After a few seconds the window gets the name:
    *** Application is meditating ***

    I also checked my libraries because first I thought I had downloaded the latest sdl2-archive but have not installed it. But it seems I did: sdl2.library v53.4, sdl2_mixer.library v53.5.

    Do I need anything else? Any library?

    Thanks!
    AmigaOne X5000 @ 2GHz / 4GB RAM / Radeon HD 5450 / AmigaOS 4.1 Final Edition / MorphOS 3.15
    Amiga1200 / Blizzard 1230 IV / 128 MB RAM / AmigaOS 3.9
  • »29.11.21 - 19:05
    Profile Visit Website
  • Butterfly
    Butterfly
    Mozzerfan
    Posts: 71 from 2016/10/5
    I have the same problem on my sam460ex.
    Makes me wonder if the game uses altivec.

    Quote:

    Primax wrote:
    Sorry, it is a white, not a black screen...;)

    But nothing happens. Except: After a few seconds the window gets the name:
    *** Application is meditating ***

    I also checked my libraries because first I thought I had downloaded the latest sdl2-archive but have not installed it. But it seems I did: sdl2.library v53.4, sdl2_mixer.library v53.5.

    Do I need anything else? Any library?

    Thanks!
  • »29.11.21 - 19:21
    Profile
  • Caterpillar
    Caterpillar
    Primax
    Posts: 37 from 2021/7/2
    PS: Just tested two other games..._

    - for OpenTTD I get the same issue....
    - but OpenTyrian works fine...
    AmigaOne X5000 @ 2GHz / 4GB RAM / Radeon HD 5450 / AmigaOS 4.1 Final Edition / MorphOS 3.15
    Amiga1200 / Blizzard 1230 IV / 128 MB RAM / AmigaOS 3.9
  • »29.11.21 - 19:22
    Profile Visit Website
  • Order of the Butterfly
    Order of the Butterfly
    beworld
    Posts: 465 from 2010/2/10
    From: FRANCE
    Radeon HD 5450 have 2D acceleration and no overlay but we talking about software renderer here.

    SDL2 need MorphOS 3.15 but here seem the case

    So ... i dont know exactly what problem here.. worse some games working ?!?!
    IMac G5 2.1,PowerMac 2.7,PowerBook 1.5
    My MOS ports
  • »30.11.21 - 07:05
    Profile Visit Website
  • Butterfly
    Butterfly
    Mozzerfan
    Posts: 71 from 2016/10/5
    I'm using a Radeon x1550 on my sam460ex. It has full 2D/3D support.
    And I'm having the exact same problems.

    edit: I've tried the following games:
    OpenTyrian: works
    Cannonball:works
    Super Methane Brothers:works
    OpenTTD: doesn't work , same problem as pinball space cadet.

    Quote:

    beworld wrote:

    Radeon HD 5450 have 2D acceleration and no overlay but we talking about software renderer here.

    SDL2 need MorphOS 3.15 but here seem the case

    So ... i dont know exactly what problem here.. worse some games working ?!?!





    [ Edited by Mozzerfan 30.11.2021 - 10:28 ]
  • »30.11.21 - 09:11
    Profile
  • Order of the Butterfly
    Order of the Butterfly
    beworld
    Posts: 465 from 2010/2/10
    From: FRANCE
    @mozzerfan
    Altivec... look at any SDL2 window in the menu : Misc / system info
    But i dont think Altivec is the cause, because some games working and other not...

    Have you try with SDL 2.0.14 ?

    Possible to have a screenshot of GraphicsBoards utility ? (to check Pixels formats...)

    pity that I do not have a sam or X5000 to test and check where is the problem.... :(
    IMac G5 2.1,PowerMac 2.7,PowerBook 1.5
    My MOS ports
  • »30.11.21 - 10:56
    Profile Visit Website
  • Butterfly
    Butterfly
    Mozzerfan
    Posts: 71 from 2016/10/5
    The X5000 and the sam460ex have no altivec, so that would explain it.

    edit: will post screenshot later.

    Quote:

    beworld wrote:
    @mozzerfan
    Altivec... look at any SDL2 window in the menu : Misc / system info
    But i dont think Altivec is the cause, because some games working and other not...

    Have you try with SDL 2.0.14 ?

    Possible to have a screenshot of GraphicsBoards utility ? (to check Pixels formats...)

    pity that I do not have a sam or X5000 to test and check where is the problem.... :(





    [ Edited by Mozzerfan 30.11.2021 - 12:09 ]
  • »30.11.21 - 10:58
    Profile
  • MorphOS Developer
    cyfm
    Posts: 449 from 2003/4/11
    From: Germany
    It is most likely related to the unavailable AltiVec engine:

    Code:
    87.099| >>> Exception 48 <Altivec not available>
    87.103| ----------------------------------------------------------------------
    87.110| Quark Thread TID 0000000010020010 Name ABox
    87.115| SRR0 0x1891c430 SRR1 0x0000f030
    87.119| LR 0x189262e0 CTR 0x189262c8
    87.122| CR 0x48882248 XER 0x00000400
    87.126| GPR[00] 00000010 1869aa80 170292f0 190b9ac8 190b9ac8 00002987 00000001 00000000
    87.134| GPR[08] ff0000c0 00000001 ffffacf2 189262c8 00000000 188befa0 0000530e 00000000
    87.142| GPR[16] 14c56158 188a0000 188a0000 188a0000 188e2e60 00000000 00000000 00000000
    87.149| GPR[24] 14c56298 190b7aa8 ffffffff 0000003c 0000007f 190a7aa8 190b6e08 190a7960
    87.157| FPSCR 82020000
    87.159| FPR[00] fff80000002fef4d 0000000041300000 0000000041300000 3f1000003f100000
    87.167| FPR[04] 402c000000000000 3fe3a00000000000 4330000000000041 3fe0000000000000
    87.174| FPR[08] 3f90000000000000 3f60000000000000 3f61111111111111 433000008007f60b
    87.182| FPR[12] 401815a07b352a84 3ff2fc8ed695ca31 0000000000000000 0000000000000000
    87.189| FPR[16] 0000000000000000 0000000000000000 0000000000000000 0000000000000000
    87.196| FPR[20] 0000000000000000 0000000000000000 0000000000000000 0000000000000000
    87.204| FPR[24] 0000000000000000 0000000000000000 0000000000000000 0000000000000000
    87.211| FPR[28] 0000000000000000 0000000000000000 0000000000000000 3fe3333340000000
    87.219| IABR 00000000
    87.221| DABR 00000007
    87.223| MMCR0 00000000
    87.225| MMCR1 00000000
    87.228| MMCR2 00000000
    87.230| PMC1 00000000 PMC2 00000000 PMC3 00000000 PMC4 00000000
    87.236| SIA 00000000
    87.238| SDA 00000000
    87.240| >>> Quark Thread Stack History
    87.244| ----------------------------------------------------------------------
    87.251| StackFrame[ 0].LR[0x1892507c] -> LIBS:sdl2.library [Hunk 1 Offset 0x00008d9c]
    87.258| StackFrame[ 1].LR[0x18aea1ec] -> LIBS:sdl2_mixer.library [Hunk 1 Offset 0x0001d10c]
    87.266| StackFrame[ 2].LR[0x18aea7ac] -> LIBS:sdl2_mixer.library [Hunk 1 Offset 0x0001d6cc]
    87.275| StackFrame[ 3].LR[0x18aea94c] -> LIBS:sdl2_mixer.library [Hunk 1 Offset 0x0001d86c]
    87.283| StackFrame[ 4].LR[0x18ae79cc] -> LIBS:sdl2_mixer.library [Hunk 1 Offset 0x0001a8ec]
    87.291| StackFrame[ 5].LR[0x18ae2be4] -> LIBS:sdl2_mixer.library [Hunk 1 Offset 0x00015b04]
    87.299| StackFrame[ 6].LR[0x18ad3bdc] -> LIBS:sdl2_mixer.library [Hunk 1 Offset 0x00006afc]
    87.307| StackFrame[ 7].LR[0x18ad3a3c] -> LIBS:sdl2_mixer.library [Hunk 1 Offset 0x0000695c]
    87.315| StackFrame[ 8].LR[0x18ace168] -> LIBS:sdl2_mixer.library [Hunk 1 Offset 0x00001088]
    87.323| StackFrame[ 9].LR[0x187429ac] -> Work:games/SpaceCadetPinball/SpaceCadetPinball [Hunk 1 Offset 0x0009c774]
    87.333| StackFrame[10].LR[0x18742c18] -> Work:games/SpaceCadetPinball/SpaceCadetPinball [Hunk 1 Offset 0x0009c9e0]
    87.343| StackFrame[11].LR[0x186a8374] -> Work:games/SpaceCadetPinball/SpaceCadetPinball [Hunk 1 Offset 0x0000213c]
    87.353| StackFrame[12].LR[0x18799e44] -> Work:games/SpaceCadetPinball/SpaceCadetPinball [Hunk 1 Offset 0x000f3c0c]
    87.363| StackFrame[13].LR[0x186a67d8] -> Work:games/SpaceCadetPinball/SpaceCadetPinball [Hunk 1 Offset 0x000005a0]
    87.374| StackFrame[14].LR[0x186a65cc] -> Work:games/SpaceCadetPinball/SpaceCadetPinball [Hunk 1 Offset 0x00000394]
    87.384| StackFrame[15].LR[0x1010fe80] -> exec_of_604e.elf [Hunk 0 Offset 0x0000fe80 Function NewPPCStackSwap]


    You can try yourself by adding NOALTIVEC to the boot arguments if you develop/try on a AltiVec-capable machine in order to test with disabled AltiVec engine.
  • »30.11.21 - 12:05
    Profile Visit Website
  • Caterpillar
    Caterpillar
    Primax
    Posts: 37 from 2021/7/2
    PS: Had tested it also with Radeon X1650 gfx card. Same result.
    AmigaOne X5000 @ 2GHz / 4GB RAM / Radeon HD 5450 / AmigaOS 4.1 Final Edition / MorphOS 3.15
    Amiga1200 / Blizzard 1230 IV / 128 MB RAM / AmigaOS 3.9
  • »30.11.21 - 13:32
    Profile Visit Website
  • Order of the Butterfly
    Order of the Butterfly
    beworld
    Posts: 465 from 2010/2/10
    From: FRANCE
    Thanks Cyfm for LOGS and tips to disable ALTIVEC, i check that as soon as possible.
    IMac G5 2.1,PowerMac 2.7,PowerBook 1.5
    My MOS ports
  • »30.11.21 - 14:34
    Profile Visit Website
  • Order of the Butterfly
    Order of the Butterfly
    beworld
    Posts: 465 from 2010/2/10
    From: FRANCE
    i found a bug

    @primax mozzerfan

    You can find SDL 2.0.16 with fix here : https://www.morphos-storage.net/upload/test/SDL_2.0.16_Libraries.lha

    Can you test before i put it in real morphos storage ? thanks


    @cyfm

    Detection Altivec seem good but for some reason, SDL2 crash.

    HasAltiVec return 0 in all SDL2, so it's good. (i test with NOALTIVEC in boot)

    the crash is here :
    https://github.com/BeWorld2018/SDL/blob/MorphOS/src/core/morphos/SDL_cpu.c#L148

    but when HasAltiVec=0, this code isnt execute (normal) but CRASH...
    if i comment this code into condition then WORKING....
    I dont understand why....

    To fix the bug, i only delete all call of SDL_CopyAndSwap16/32 in SDL2/SDL2_Mixer/SDL_Image
    I think it's not necessary to have that, in original version of SDL2 is not present, i add that why time to optimize... but it may not be a good idea to do this.
    IMac G5 2.1,PowerMac 2.7,PowerBook 1.5
    My MOS ports
  • »30.11.21 - 18:37
    Profile Visit Website
  • Butterfly
    Butterfly
    Mozzerfan
    Posts: 71 from 2016/10/5
    YES!!! space cadet pinball and openttd both work now on my sam460.
    Many thanks Beworld !!! I didn't try to play openttd but it doesn't crash anymore and the game menu shows up now.

    Quote:

    beworld wrote:
    i found a bug

    @primax mozzerfan

    You can find SDL 2.0.16 with fix here : https://www.morphos-storage.net/upload/test/SDL_2.0.16_Libraries.lha

    Can you test before i put it in real morphos storage ? thanks



  • »30.11.21 - 19:05
    Profile
  • Order of the Butterfly
    Order of the Butterfly
    beworld
    Posts: 465 from 2010/2/10
    From: FRANCE
    Perfect thanks !

    Quote:

    Mozzerfan a écrit :
    YES!!! space cadet pinball and openttd both work now on my sam460.
    Many thanks Beworld !!! I didn't try to play openttd but it doesn't crash anymore and the game menu shows up now.

    Quote:

    beworld wrote:
    i found a bug

    @primax mozzerfan

    You can find SDL 2.0.16 with fix here : https://www.morphos-storage.net/upload/test/SDL_2.0.16_Libraries.lha

    Can you test before i put it in real morphos storage ? thanks






    IMac G5 2.1,PowerMac 2.7,PowerBook 1.5
    My MOS ports
  • »30.11.21 - 19:21
    Profile Visit Website
  • Caterpillar
    Caterpillar
    Primax
    Posts: 37 from 2021/7/2
    @beworld

    I can confirm it! Both games start and work.
    Only issue I have for both: I cannot correctly quit them. If I 'exit' via the menu, then they freeze...
    AmigaOne X5000 @ 2GHz / 4GB RAM / Radeon HD 5450 / AmigaOS 4.1 Final Edition / MorphOS 3.15
    Amiga1200 / Blizzard 1230 IV / 128 MB RAM / AmigaOS 3.9
  • »30.11.21 - 19:26
    Profile Visit Website
  • Order of the Butterfly
    Order of the Butterfly
    beworld
    Posts: 465 from 2010/2/10
    From: FRANCE
    @primax ok, which game ? SpaceCadet and possible to have crash log ? via logtool (send PM)
    IMac G5 2.1,PowerMac 2.7,PowerBook 1.5
    My MOS ports
  • »30.11.21 - 19:40
    Profile Visit Website
  • MorphOS Developer
    cyfm
    Posts: 449 from 2003/4/11
    From: Germany
    Quote:

    beworld schrieb:

    @cyfm

    Detection Altivec seem good but for some reason, SDL2 crash.

    HasAltiVec return 0 in all SDL2, so it's good. (i test with NOALTIVEC in boot)

    the crash is here :
    https://github.com/BeWorld2018/SDL/blob/MorphOS/src/core/morphos/SDL_cpu.c#L148




    You basically can not call functions with code containing AltiVec instructions on a non-AltiVec CPU, even if you have some HasAltiVec check in there at the very top.
    Typically, it will already execute some AltiVec specific code in the prolog.
  • »30.11.21 - 20:06
    Profile Visit Website
  • Order of the Butterfly
    Order of the Butterfly
    beworld
    Posts: 465 from 2010/2/10
    From: FRANCE
    ok thank you for the explanations

    Quote:

    cyfm a écrit :
    Quote:

    beworld schrieb:

    @cyfm

    Detection Altivec seem good but for some reason, SDL2 crash.

    HasAltiVec return 0 in all SDL2, so it's good. (i test with NOALTIVEC in boot)

    the crash is here :
    https://github.com/BeWorld2018/SDL/blob/MorphOS/src/core/morphos/SDL_cpu.c#L148




    You basically can not call functions with code containing AltiVec instructions on a non-AltiVec CPU, even if you have some HasAltiVec check in there at the very top.
    Typically, it will already execute some AltiVec specific code in the prolog.



    IMac G5 2.1,PowerMac 2.7,PowerBook 1.5
    My MOS ports
  • »30.11.21 - 20:15
    Profile Visit Website