SDL & Linux ARM

Discuss SDL programming with the RebelSDL plugin here
kikems
Posts: 6
Joined: Wed Jan 23, 2019 7:55 pm

Re: SDL & Linux ARM

Post by kikems »

I have a problem with Hollywood 7.1 and RebelSDL ( I think the problem is the same with all other plugins ) on Raspbian ARM. The problem is when try to compile from the interface of Hollywood a project with linked plugin, not finish compilation and not finish creation of archive. I you compile without link plugin it works.
User avatar
airsoftsoftwair
Posts: 5594
Joined: Fri Feb 12, 2010 2:33 pm
Location: Germany
Contact:

Re: SDL & Linux ARM

Post by airsoftsoftwair »

What happens exactly? Do you get any error message?
kikems
Posts: 6
Joined: Wed Jan 23, 2019 7:55 pm

Re: SDL & Linux ARM

Post by kikems »

airsoftsoftwair wrote: Thu Jan 24, 2019 9:56 pm What happens exactly? Do you get any error message?
No , the log windows of compiling stop when link Rebelsdl to the executable. For example , if I add @REQUIRE "oggvorbis" before @REQUIRE "rebelsdl" , ogg vorbis plugin linked to the executable but always stop when try to link RebelSDL. You can press OK button and message windows of "Compilation successfull" appear without errors but outputsize of executable is too small , my executable of 3Mb not run on ARM linux and if I compile the same source from my MacOSx the executable file for Linux ARM works and have a size of 10 Mb
User avatar
airsoftsoftwair
Posts: 5594
Joined: Fri Feb 12, 2010 2:33 pm
Location: Germany
Contact:

Re: SDL & Linux ARM

Post by airsoftsoftwair »

Ok, please post a very small example script so that I can test it here. Also post the output of

Code: Select all

ls -Rla <your-Hollywood-directory>/LinkerPlugins
so that I can see your plugin setup.
kikems
Posts: 6
Joined: Wed Jan 23, 2019 7:55 pm

Re: SDL & Linux ARM

Post by kikems »

airsoftsoftwair wrote: Sat Jan 26, 2019 12:20 pm Ok, please post a very small example script so that I can test it here. Also post the output of

Code: Select all

ls -Rla <your-Hollywood-directory>/LinkerPlugins
so that I can see your plugin setup.
Here Output from terminal

Code: Select all

pi@kikemspi:~ $ ls -Rla Documents/Hollywood/LinkerPlugins
Documents/Hollywood/LinkerPlugins:
total 92
drwxrwxr-x 23 pi pi 4096 mar  4  2018 .
drwxrwxr-x  6 pi pi 4096 ene 23 19:01 ..
drwxrwxr-x  2 pi pi 4096 ene 23 18:37 arm64-android-v8a
drwxrwxr-x  2 pi pi 4096 ene 23 18:37 arm-android
drwxrwxr-x  2 pi pi 4096 ene 23 18:37 arm-android-v7a
drwxrwxr-x  2 pi pi 4096 ene 23 18:37 arm-ios
drwxrwxr-x  2 pi pi 4096 ene 23 18:46 arm-linux
drwxrwxr-x  2 pi pi 4096 ene 23 18:37 m68k-amigaos
drwxrwxr-x  2 pi pi 4096 ene 23 18:37 m881-amigaos
drwxrwxr-x  2 pi pi 4096 ene 23 18:37 ppc-amigaos
drwxrwxr-x  2 pi pi 4096 ene 23 18:37 ppc-linux
drwxrwxr-x  2 pi pi 4096 ene 23 18:37 ppc-macos
drwxrwxr-x  2 pi pi 4096 ene 23 18:37 ppc-morphos
drwxrwxr-x  2 pi pi 4096 ene 23 18:37 ppc-warpup
drwxrwxr-x  2 pi pi 4096 ene 23 18:37 x64-linux
drwxrwxr-x  2 pi pi 4096 ene 23 18:37 x64-macos
drwxrwxr-x  2 pi pi 4096 ene 23 18:37 x64-windows
drwxrwxr-x  2 pi pi 4096 ene 23 18:37 x64-windows-console
drwxrwxr-x  2 pi pi 4096 ene 23 18:37 x86-aros
drwxrwxr-x  2 pi pi 4096 ene 23 18:37 x86-linux
drwxrwxr-x  2 pi pi 4096 ene 23 18:37 x86-macos
drwxrwxr-x  2 pi pi 4096 ene 23 18:37 x86-windows
drwxrwxr-x  2 pi pi 4096 ene 23 18:37 x86-windows-console

Documents/Hollywood/LinkerPlugins/arm64-android-v8a:
total 12
drwxrwxr-x  2 pi pi 4096 ene 23 18:37 .
drwxrwxr-x 23 pi pi 4096 mar  4  2018 ..
-rwxrwxr-x  1 pi pi   74 mar  5  2016 .dummy

Documents/Hollywood/LinkerPlugins/arm-android:
total 12
drwxrwxr-x  2 pi pi 4096 ene 23 18:37 .
drwxrwxr-x 23 pi pi 4096 mar  4  2018 ..
-rwxrwxr-x  1 pi pi   74 mar  5  2016 .dummy

Documents/Hollywood/LinkerPlugins/arm-android-v7a:
total 12
drwxrwxr-x  2 pi pi 4096 ene 23 18:37 .
drwxrwxr-x 23 pi pi 4096 mar  4  2018 ..
-rwxrwxr-x  1 pi pi   74 mar  5  2016 .dummy

Documents/Hollywood/LinkerPlugins/arm-ios:
total 12
drwxrwxr-x  2 pi pi 4096 ene 23 18:37 .
drwxrwxr-x 23 pi pi 4096 mar  4  2018 ..
-rwxrwxr-x  1 pi pi   74 mar  5  2016 .dummy

Documents/Hollywood/LinkerPlugins/arm-linux:
total 8564
drwxrwxr-x  2 pi pi    4096 ene 23 18:46 .
drwxrwxr-x 23 pi pi    4096 mar  4  2018 ..
-rwxrwxr-x  1 pi pi 2143588 mar 25  2017 avcodec.hwp
-rwxrwxr-x  1 pi pi      74 mar  5  2016 .dummy
-rwxrwxr-x  1 pi pi  264532 may 19  2017 glgalore.hwp
-rwxrwxr-x  1 pi pi  112952 nov  4  2017 malibu.hwp
-rwxrwxr-x  1 pi pi  262076 jul  4  2015 oggtheora.hwp
-rwxrwxr-x  1 pi pi  181004 jul  4  2015 oggvorbis.hwp
-rwxrwxr-x  1 pi pi 4313312 mar  3  2018 rapagui.hwp
-rwxrwxr-x  1 pi pi 1465696 sep  9  2017 rebelsdl.hwp

Documents/Hollywood/LinkerPlugins/m68k-amigaos:
total 3132
drwxrwxr-x  2 pi pi    4096 ene 23 18:37 .
drwxrwxr-x 23 pi pi    4096 mar  4  2018 ..
-rwxrwxr-x  1 pi pi 2327700 mar 25  2017 avcodec.hwp
-rwxrwxr-x  1 pi pi      74 mar  5  2016 .dummy
-rwxrwxr-x  1 pi pi  266400 jul  5  2015 oggtheora.hwp
-rwxrwxr-x  1 pi pi  215696 jul  5  2015 oggvorbis.hwp
-rwxrwxr-x  1 pi pi   17284 ene 10  2016 plananarama.hwp
-rwxrwxr-x  1 pi pi  355420 sep 22  2017 rapagui.hwp

Documents/Hollywood/LinkerPlugins/m881-amigaos:
total 3088
drwxrwxr-x  2 pi pi    4096 ene 23 18:37 .
drwxrwxr-x 23 pi pi    4096 mar  4  2018 ..
-rwxrwxr-x  1 pi pi 2224452 mar 25  2017 avcodec.hwp
-rwxrwxr-x  1 pi pi      74 mar  5  2016 .dummy
-rwxrwxr-x  1 pi pi  147712 may 19  2017 glgalore.hwp
-rwxrwxr-x  1 pi pi  219280 jul  5  2015 oggtheora.hwp
-rwxrwxr-x  1 pi pi  170412 jul  5  2015 oggvorbis.hwp
-rwxrwxr-x  1 pi pi   17284 ene 10  2016 plananarama.hwp
-rwxrwxr-x  1 pi pi  355420 sep 22  2017 rapagui.hwp

Documents/Hollywood/LinkerPlugins/ppc-amigaos:
total 4080
drwxrwxr-x  2 pi pi    4096 ene 23 18:37 .
drwxrwxr-x 23 pi pi    4096 mar  4  2018 ..
-rwxrwxr-x  1 pi pi 2538268 mar 25  2017 avcodec.hwp
-rwxrwxr-x  1 pi pi      74 mar  5  2016 .dummy
-rwxrwxr-x  1 pi pi  275112 may 19  2017 glgalore.hwp
-rwxrwxr-x  1 pi pi  375580 jul  6  2015 oggtheora.hwp
-rwxrwxr-x  1 pi pi  295152 jul  6  2015 oggvorbis.hwp
-rwxrwxr-x  1 pi pi  668664 sep 22  2017 rapagui.hwp

Documents/Hollywood/LinkerPlugins/ppc-linux:
total 9988
drwxrwxr-x  2 pi pi    4096 ene 23 18:37 .
drwxrwxr-x 23 pi pi    4096 mar  4  2018 ..
-rwxrwxr-x  1 pi pi 2285268 mar 25  2017 avcodec.hwp
-rwxrwxr-x  1 pi pi      74 mar  5  2016 .dummy
-rwxrwxr-x  1 pi pi  322696 may 19  2017 glgalore.hwp
-rwxrwxr-x  1 pi pi  328711 jul  4  2015 oggtheora.hwp
-rwxrwxr-x  1 pi pi  228100 jul  4  2015 oggvorbis.hwp
-rwxrwxr-x  1 pi pi 5279547 sep 22  2017 rapagui.hwp
-rwxrwxr-x  1 pi pi 1764364 sep  9  2017 rebelsdl.hwp

Documents/Hollywood/LinkerPlugins/ppc-macos:
total 9768
drwxrwxr-x  2 pi pi    4096 ene 23 18:37 .
drwxrwxr-x 23 pi pi    4096 mar  4  2018 ..
-rwxrwxr-x  1 pi pi 1933200 mar 25  2017 avcodec.hwp
-rwxrwxr-x  1 pi pi      74 mar  5  2016 .dummy
-rwxrwxr-x  1 pi pi  254832 may 19  2017 glgalore.hwp
-rwxrwxr-x  1 pi pi  276748 jul  3  2015 oggtheora.hwp
-rwxrwxr-x  1 pi pi  211600 jul  3  2015 oggvorbis.hwp
-rwxrwxr-x  1 pi pi 5459744 sep 22  2017 rapagui.hwp
-rwxrwxr-x  1 pi pi 1846448 sep  9  2017 rebelsdl.hwp

Documents/Hollywood/LinkerPlugins/ppc-morphos:
total 3756
drwxrwxr-x  2 pi pi    4096 ene 23 18:37 .
drwxrwxr-x 23 pi pi    4096 mar  4  2018 ..
-rwxrwxr-x  1 pi pi 2418568 mar 25  2017 avcodec.hwp
-rwxrwxr-x  1 pi pi      74 mar  5  2016 .dummy
-rwxrwxr-x  1 pi pi  262200 may 19  2017 glgalore.hwp
-rwxrwxr-x  1 pi pi  332664 jul  5  2015 oggtheora.hwp
-rwxrwxr-x  1 pi pi  245240 jul  5  2015 oggvorbis.hwp
-rwxrwxr-x  1 pi pi  472700 sep 22  2017 rapagui.hwp
-rwxrwxr-x  1 pi pi   88704 sep  9  2017 rebelsdl.hwp

Documents/Hollywood/LinkerPlugins/ppc-warpup:
total 3156
drwxrwxr-x  2 pi pi    4096 ene 23 18:37 .
drwxrwxr-x 23 pi pi    4096 mar  4  2018 ..
-rwxrwxr-x  1 pi pi 2698088 mar 25  2017 avcodec.hwp
-rwxrwxr-x  1 pi pi      74 mar  5  2016 .dummy
-rwxrwxr-x  1 pi pi  291984 jul  5  2015 oggtheora.hwp
-rwxrwxr-x  1 pi pi  221836 jul  5  2015 oggvorbis.hwp

Documents/Hollywood/LinkerPlugins/x64-linux:
total 10048
drwxrwxr-x  2 pi pi    4096 ene 23 18:37 .
drwxrwxr-x 23 pi pi    4096 mar  4  2018 ..
-rwxrwxr-x  1 pi pi 2429003 mar 25  2017 avcodec.hwp
-rwxrwxr-x  1 pi pi      74 mar  5  2016 .dummy
-rwxrwxr-x  1 pi pi  324856 may 19  2017 glgalore.hwp
-rwxrwxr-x  1 pi pi  338913 oct 28  2016 oggtheora.hwp
-rwxrwxr-x  1 pi pi  256152 oct 28  2016 oggvorbis.hwp
-rwxrwxr-x  1 pi pi 5476746 sep 22  2017 rapagui.hwp
-rwxrwxr-x  1 pi pi 1437464 sep  9  2017 rebelsdl.hwp

Documents/Hollywood/LinkerPlugins/x64-macos:
total 8964
drwxrwxr-x  2 pi pi    4096 ene 23 18:37 .
drwxrwxr-x 23 pi pi    4096 mar  4  2018 ..
-rwxrwxr-x  1 pi pi 2275184 mar 25  2017 avcodec.hwp
-rwxrwxr-x  1 pi pi      74 mar  5  2016 .dummy
-rwxrwxr-x  1 pi pi  255240 may 19  2017 glgalore.hwp
-rwxrwxr-x  1 pi pi  297784 oct 28  2016 oggtheora.hwp
-rwxrwxr-x  1 pi pi  210984 oct 28  2016 oggvorbis.hwp
-rwxrwxr-x  1 pi pi 4562328 sep 22  2017 rapagui.hwp
-rwxrwxr-x  1 pi pi 1552420 sep  9  2017 rebelsdl.hwp

Documents/Hollywood/LinkerPlugins/x64-windows:
total 8080
drwxrwxr-x  2 pi pi    4096 ene 23 18:37 .
drwxrwxr-x 23 pi pi    4096 mar  4  2018 ..
-rwxrwxr-x  1 pi pi 1917440 mar 25  2017 avcodec.hwp
-rwxrwxr-x  1 pi pi      74 mar  5  2016 .dummy
-rwxrwxr-x  1 pi pi  298496 may 19  2017 glgalore.hwp
-rwxrwxr-x  1 pi pi  320512 nov  8  2016 oggtheora.hwp
-rwxrwxr-x  1 pi pi  253440 nov  8  2016 oggvorbis.hwp
-rwxrwxr-x  1 pi pi 4377088 sep 22  2017 rapagui.hwp
-rwxrwxr-x  1 pi pi 1083392 sep  9  2017 rebelsdl.hwp

Documents/Hollywood/LinkerPlugins/x64-windows-console:
total 12
drwxrwxr-x  2 pi pi 4096 ene 23 18:37 .
drwxrwxr-x 23 pi pi 4096 mar  4  2018 ..
-rwxrwxr-x  1 pi pi   74 mar  5  2016 .dummy

Documents/Hollywood/LinkerPlugins/x86-aros:
total 3760
drwxrwxr-x  2 pi pi    4096 ene 23 18:37 .
drwxrwxr-x 23 pi pi    4096 mar  4  2018 ..
-rwxrwxr-x  1 pi pi 2539544 mar 25  2017 avcodec.hwp
-rwxrwxr-x  1 pi pi      74 mar  5  2016 .dummy
-rwxrwxr-x  1 pi pi  245764 may 19  2017 glgalore.hwp
-rwxrwxr-x  1 pi pi  322904 jul  5  2015 oggtheora.hwp
-rwxrwxr-x  1 pi pi  225816 jul  5  2015 oggvorbis.hwp
-rwxrwxr-x  1 pi pi  488680 sep 22  2017 rapagui.hwp

Documents/Hollywood/LinkerPlugins/x86-linux:
total 8852
drwxrwxr-x  2 pi pi    4096 ene 23 18:37 .
drwxrwxr-x 23 pi pi    4096 mar  4  2018 ..
-rwxrwxr-x  1 pi pi 2201714 mar 25  2017 avcodec.hwp
-rwxrwxr-x  1 pi pi      74 mar  5  2016 .dummy
-rwxrwxr-x  1 pi pi  298044 may 19  2017 glgalore.hwp
-rwxrwxr-x  1 pi pi  290511 jul  4  2015 oggtheora.hwp
-rwxrwxr-x  1 pi pi  193956 jul  4  2015 oggvorbis.hwp
-rwxrwxr-x  1 pi pi 4721493 sep 22  2017 rapagui.hwp
-rwxrwxr-x  1 pi pi 1338172 sep  9  2017 rebelsdl.hwp

Documents/Hollywood/LinkerPlugins/x86-macos:
total 8448
drwxrwxr-x  2 pi pi    4096 ene 23 18:37 .
drwxrwxr-x 23 pi pi    4096 mar  4  2018 ..
-rwxrwxr-x  1 pi pi 2322412 mar 25  2017 avcodec.hwp
-rwxrwxr-x  1 pi pi      74 mar  5  2016 .dummy
-rwxrwxr-x  1 pi pi  215900 may 19  2017 glgalore.hwp
-rwxrwxr-x  1 pi pi  281340 jul  3  2015 oggtheora.hwp
-rwxrwxr-x  1 pi pi  202624 jul  3  2015 oggvorbis.hwp
-rwxrwxr-x  1 pi pi 4200400 sep 22  2017 rapagui.hwp
-rwxrwxr-x  1 pi pi 1408580 sep  9  2017 rebelsdl.hwp

Documents/Hollywood/LinkerPlugins/x86-windows:
total 6180
drwxrwxr-x  2 pi pi    4096 ene 23 18:37 .
drwxrwxr-x 23 pi pi    4096 mar  4  2018 ..
-rwxrwxr-x  1 pi pi 1608192 mar 25  2017 avcodec.hwp
-rwxrwxr-x  1 pi pi      74 mar  5  2016 .dummy
-rwxrwxr-x  1 pi pi  267776 may 19  2017 glgalore.hwp
-rwxrwxr-x  1 pi pi  315392 jul  8  2015 oggtheora.hwp
-rwxrwxr-x  1 pi pi  265728 jul  8  2015 oggvorbis.hwp
-rwxrwxr-x  1 pi pi 2974208 sep 22  2017 rapagui.hwp
-rwxrwxr-x  1 pi pi  876032 sep  9  2017 rebelsdl.hwp

Documents/Hollywood/LinkerPlugins/x86-windows-console:
total 12
drwxrwxr-x  2 pi pi 4096 ene 23 18:37 .
drwxrwxr-x 23 pi pi 4096 mar  4  2018 ..
-rwxrwxr-x  1 pi pi   74 mar  5  2016 .dummy
Here the code from RebelSDL examples of Aladdin

Code: Select all

/****************************************************************
**                                                             **
** Name:        Prodigy Cracktro "Aladdin"                     **
** Author:      Mr.X of Barracuda                              **
** Version:     1.1                                            **
** Date:        13.05.17                                       **
** Interpreter: Hollywood 6.0                                  **
** Licence:     Sample program for Hollywood                   **
**                                                             **
** History:                                                    **
**                                                             **
** 1.1: (13.05.17)                                             **
**                                                             **
** - adapted for RebelSDL                                      **
**                                                             **
** 1.0: (14.05.05)                                             **
**                                                             **
** - initial release                                           **
**                                                             **
****************************************************************/

/*
** Important! Check if the used Hollywood version is at least
** version 6.0!
*/
@VERSION 6,0
@REQUIRE "rebelsdl", {Link = True, RenderDriver = "rpi"}
/*
** This script requires the RebelSDL plugin
*/
@REQUIRE "rebelsdl"

@BRUSH 5, "Logo.png", {Transparency = $421021}
@BRUSH 6, "font.png"

@MUSIC 1, "vision.mod"
@SAMPLE 1, "yeayea.wav"

@DISPLAY {Width = 720, Height = 520, Color = $211021}

/* initialize the cracktro font */
Function p_InitFont()

        Local x, y, k, nx, y

        CreateBrush(7, 584 * 2, 16)
        SelectBrush(7)

        ; perform a hard-scale on the font so that every char has 16x16 pixels
        For y = 0 To 7

                For k = 0 To 1
                        nx = 0
                        For x = 0 To 583
                                DisplayBrushPart(6, x, y, nx, ny, 1, 1)
                                DisplayBrushPart(6, x, y, nx + 1, ny, 1, 1)
                                nx = nx + 2
                        Next
                        ny = ny + 1
                Next
        Next

        EndSelect

        SetBrushTransparency(7, #BLACK)

        ; for shadow text
        CopyBrush(7, 8)
        ReplaceColors(8, {#WHITE, #BLACK})

EndFunction

/* create a lookup table for our font */
Function p_InitText()

        Local f$ = " !'()*+-./:ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz"

        chars = {}

        For Local x = 0 To 72
                chars[Asc(MidStr(f$, x, 1))] = x * 16
        Next

        Local t$ = {
        "     CRIME IS ART !\n\n" ..
        "   AND ART IS CRIME !\n\n" ..
        "WHAT WE WANNA TELL YOU :\n\n" ..
        "   THAT WAS A RHYME !",
        "             * PRODIGY *\n\n" ..
        "      CRACKED FOR URE PLEASURE:\n\n" ..
        "   ALADDIN from VIRGIN! * FINAL! *\n\n" ..
        "--------------------------------------\n" ..
        "GAME SUPPLIED BY :        *   SUX!   *\n" ..
        "GAME CRACKED  BY :        * HITPOINT *\n" ..
        "--------------------------------------\n" ..
        "      * RELEASED ON 20/11/94 ! *",
        "           * INTRO CREDITS *\n\n" ..
        "--------------------------------------\n" ..
        "CODING BY :                * ALPHA1! *\n" ..
        "ADDITIONAL CODING:         * SIRIAX! *\n" ..
        "DESIGN BY :                * SIRIAX! *\n" ..
        "GRAFIX BY :                * SIRIAX! *\n" ..
        "MUSIC BY  :                * LAXICAL *\n" ..
        "--------------------------------------\n\n" ..
        "THIS RELEASE IS DEDICATED TO * NOSCHY *\n\n" ..
        "PRODIGY - WE ARE LIKE...COOL AND STUFF!"}

        texts = {}
        texts[0] = StrToArray(t$[0])
        texts[1] = StrToArray(t$[1])
        texts[2] = StrToArray(t$[2])

EndFunction

/* create the background pic plus shift effect */
Function p_InitBG()

        Local v = {}
        Local k

        ; setup polygon with 24 spikes
        For k = 0 To 23

                v[i] = k * 32
                v[i+1] = 15
                v[i+2] = k * 32 + 16
                v[i+3] = 0
                v[i+4] = (k + 1) * 32
                v[i+5] = 15

                i = i + 6

        Next

        v[i] = 0
        v[i+1] = 15

        SetFillStyle(#FILLCOLOR)

        ; create bgpic
        CreateBrush(3, 720, 520, $211021)
        SelectBrush(3)
        Box(0, 86, 720, 348, $421021)
        DisplayBrush(5, 96, 180)
        EndSelect
        BrushToBGPic(3, 2)

        DisplayBGPic(2)

        ; create upper spikes
        CreateBrush(3, 32 * 24, 16, $211021)
        SelectBrush(3)
        Polygon(0, 0, v, i + 1, $421021)
        EndSelect

        ; create lower spikes
        CreateBrush(4, 32 * 24, 16, $421021)
        SelectBrush(4)
        Polygon(0, 0, v, i + 1, $211021)
        EndSelect

        CreateClipRegion(1, #BOX, 0, 86, 720, 348)

EndFunction

/* creates a new text object */
Function p_MakeText()

        Local t = texts[ct]
        Local k, maxchrs, lines = 0, 0, 1
        Local chrs, x, y = 0

        ; calculate width & height of the texts
        While t[k] <> 0
                If t[k] = 10
                        If chrs > maxchrs Then maxchrs = chrs
                        chrs = 0
                        lines = lines + 1
                Else
                        chrs = chrs + 1
                EndIf

                k = k + 1
        Wend

        If chrs > maxchrs Then maxchrs = chrs

        ypos = (348 - lines * 22) \ 2 + 86
        ypos2 = ypos
        textw = maxchrs * 16 + 6
        texth = lines * 22

        CreateBrush(9, textw, texth, #RED)
        SelectBrush(9)

        k = 0

        ; render text + shadow to the brush
        While t[k] <> 0
                If t[k] = 10
                        x = 0
                        y = y + 20
                Else
                        DisplayBrushPart(8, chars[t[k]], 0, x + 6, y + 10, 16, 16)  ; shadow
                        DisplayBrushPart(7, chars[t[k]], 0, x, y, 16, 16)           ; text
                        chrs = chrs + 1
                        x = x + 16
                EndIf

                k = k + 1
        Wend

        EndSelect

        SetBrushTransparency(9, #RED)   ; make it transparent

        ; wrap to next text object
        ct = Wrap(ct + 1, 0, 3)

        Switch ct
        Case 1:
                accel = accel - 3 * 2.75
        Case 0:
                accel = accel - 2 * 2
        Case 2:
                accel = accel - 0.5
        EndSwitch

        CreateSprite(1, #BRUSH, 9)

EndFunction

/* move text objects in and out of the screen */
Function p_SwitchText()

        If rev = False

                ypos2 = ypos2 + accel
                accel = accel + 2.75

                If ypos2 >= 452
                        p_MakeText()
                        rev = True
                        ypos2 = 450
                EndIf

        Else

                ypos2 = ypos2 - accel
                accel = accel - 2.75

                If accel < 2 Then accel = 2

                If ypos2 <= ypos
                        StartTimer(1)
                        accel = 3
                        rev = False
                        ypos2 = ypos
                EndIf

        EndIf

        DisplaySprite(1, #CENTER, ypos2)

EndFunction

/* prepare cross-fade */
Function p_PrepareExit()

        If exit = True Then Return

        CreateBrush(10, 720, 520)
        SelectBrush(10)
        DisplayBrush(5, 96, 180)
        EndSelect

        BGPicToBrush(2, 11)
        SelectBrush(11)
        DisplayBrush(3, x1, 70)
        DisplayBrush(4, x2, 434)
        EndSelect

        RemoveSprite(1)

        SetClipRegion(0)

        exit = True

EndFunction

/* check if ESC was pressed */
Function p_CheckKey(msg)

	If msg.key = "ESC" Then p_PrepareExit()

EndFunction

/* this function is called 25 times per second */
Function p_MainLoop()

        ; are we in exit mode?
        If exit = True

                ; phase 0: fade out bg!
                ; phase 1: fade Prodigy to white
                ; phase 2: fade Prodigy to black

                Switch phase
                Case 0:
                        CopyBrush(10, 12)
                        MixBrush(12, 11, 255 - ratio)
                        DisplayBrush(12, 0, 0)

                        ratio = ratio + 5

                        If ratio = 270 Then phase = 1

                Case 1:
                        CopyBrush(5, 10)
                        TintBrush(5, #WHITE, 255 - ratio)
                        DisplayBrush(5, 96, 180)

                        ratio = ratio - 5

                        If ratio = 165
                                StopMusic(1)
                                PlaySample(1)
                        EndIf

                        If ratio = 0 Then phase = 2

                Case 2:
                        CopyBrush(5, 10)
                        TintBrush(5, #BLACK, ratio)
                        DisplayBrush(5, 96, 180)

                        ratio = ratio + 5

                        If ratio = 255
                                WaitSampleEnd(1)
                                Wait(50)
                                End
                        EndIf
                EndSwitch

        Else

                ;refresh the display

                SetClipRegion(0)
                DisplayBrush(3, x1, 70)
                DisplayBrush(4, x2, 434)

                SetClipRegion(1)

                If GetTimer(1) > 4000

                        p_SwitchText()

                Else

                        DisplaySprite(1, #CENTER, ypos)

                EndIf

                If IsLeftMouse() = True Then p_PrepareExit()

                x1 = x1 - 4
                x2 = x2 + 4

                If x1 = -32 Then x1 = 0
                If x2 = 0 Then x2 = -32

        EndIf

EndFunction

p_InitText()
p_InitFont()
p_InitBG()

x2 = -32

InstallEventHandler({CloseWindow = p_PrepareExit, OnKeyDown = p_CheckKey})

p_MakeText()

StartTimer(1)

PlayMusic(1)

accel = 3

; endless loop
Repeat
	p_MainLoop
	CheckEvent
Forever
User avatar
airsoftsoftwair
Posts: 5594
Joined: Fri Feb 12, 2010 2:33 pm
Location: Germany
Contact:

Re: SDL & Linux ARM

Post by airsoftsoftwair »

Ok, I can reproduce it here, will be fixed. Thanks for reporting!
kikems
Posts: 6
Joined: Wed Jan 23, 2019 7:55 pm

Re: SDL & Linux ARM

Post by kikems »

airsoftsoftwair wrote: Sun Jan 27, 2019 11:24 am Ok, I can reproduce it here, will be fixed. Thanks for reporting!
Thanks to you for your awesome work with Hollywood to make it available in all platforms possible.
User avatar
airsoftsoftwair
Posts: 5594
Joined: Fri Feb 12, 2010 2:33 pm
Location: Germany
Contact:

Re: SDL & Linux ARM

Post by airsoftsoftwair »

Code: Select all

- Fix [Linux/arm]: Memory access fault when trying to link Hollywood plugins to an executables 
User avatar
Allanon
Posts: 732
Joined: Sun Feb 14, 2010 7:53 pm
Location: Italy
Contact:

Re: SDL & Linux ARM

Post by Allanon »

Hello all!

I'm resurrecting this thread to ask what is the situation with the rebelSDL plugin on Odroid UX4, I've tested today a program I made but the plugin on the download forum is still the 1.0 which gives an error (the program doesn't recognize the plugin saying it is missing).
I've tried an old experimental version which I believe is the one Andreas compiled some time ago and posted on this thread, but, even if there are no crashes, from the messages on the console and the very low frame rate, I can see that it is working in software mode.

Reading back this thread SamuraiCrow said something about recompiling the SDL library but I've no clue on how to do this job, if some kind soul could help me to get hardware acceleration with rebelSDL it would be wonderful :D
User avatar
airsoftsoftwair
Posts: 5594
Joined: Fri Feb 12, 2010 2:33 pm
Location: Germany
Contact:

Re: SDL & Linux ARM

Post by airsoftsoftwair »

What does Odroid UX4 use for hw acceleration? OpenGL or OpenGL ES?
Post Reply