Main Restorations Software Audio/Jukebox/MP3 Everything Else Buy/Sell/Trade
Project Announcements Monitor/Video GroovyMAME Merit/JVL Touchscreen Meet Up Retail Vendors
Driving & Racing Woodworking Software Support Forums Consoles Project Arcade Reviews
Automated Projects Artwork Frontend Support Forums Pinball Forum Discussion Old Boards
Raspberry Pi & Dev Board controls.dat Linux Miscellaneous Arcade Wiki Discussion Old Archives
Lightguns Arcade1Up Try the site in https mode Site News

Unread posts | New Replies | Recent posts | Rules | Chatroom | Wiki | File Repository | RSS | Submit news

  

Author Topic: Plugins: Document API for JukePlugSys  (Read 182901 times)

0 Members and 1 Guest are viewing this topic.

Space Fractal

  • Wiki Master
  • Trade Count: (+1)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 1888
  • Last login:September 26, 2023, 11:32:13 am
  • Space Fractal
    • Space Fractal
Re: Plugins: v1.01 Document API for JukePlugSys (!! DONE, YES FINALLY DONE !!)
« Reply #280 on: January 19, 2008, 02:54:56 am »
UncleT, SOmethings you can do which some unsupported commands:

Why not support JUKE_SONG_NEXT?
It's just the same song as the first song in your queue?

 LCDS can't typical not need show more than 2 songs, hence the command can been good so it avoid to manage the queue. It only why that command is added. Should been easy to add, because you can send this command just after JUKE_SONG_START (check the first song in the queue and send its songinfo to that command, if there is also a last one song in the queue).

Juke_Command("JUKE_SONG_PLAYMODE", "AnyMode"):
Can you not use this command with "Idle Mode On", "Repeat On", "AttractMode NoActive" and "AttractMode Active" messages? Otherwice it should been empty if all modes is off. PLAYMODE is just a message command and can been used with your defined features as well.

Juke_Command("JUKE_APP_GAINFOCUS","")
Juke_Command("JUKE_APP_LOSTFOCUS","")

If you have options to minimize (like to tray) and maximize your software, use them there, elsewice don't support these commands.

ETC the above is just ideas how you could use them in your software.



Im are going to make a SONGLIST plugin to show the queue and hope it show the same in both MultiJuke And UncleT Jukebox.... Im creating this plugin so we can make sure the songlist would work as it should on all software....

The plugin is unicode aware if enabled. PureBasic is strong with UTF8/Unicode/AscII convertings.


« Last Edit: January 19, 2008, 03:06:31 am by Space Fractal »
Decade Old Work: MultiFE, ArcadeMusicBox
Today Works: Various Spectrum Next games from Rusty Pixels and html5 games.

loadman

  • Wiki Contributor
  • Trade Count: (+3)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 4305
  • Last login:August 17, 2020, 03:23:55 am
  • Cocktail Cab owner and MaLa FE developer
    • MaLa
Re: Plugins: v1.01 Document API for JukePlugSys (!! DONE, YES FINALLY DONE !!)
« Reply #281 on: January 19, 2008, 04:19:15 am »
Why not support JUKE_SONG_NEXT?
It's just the same song as the first song in your queue?
 LCDS can't typical not need show more than 2 songs, hence the command can been good so it avoid to manage the queue. It only why that command is added.

Good point  ;D  It would be more usefull to me than the song queue for what I want to do short term if that makes any diffrence to your priorities  :dunno

unclet

  • Trade Count: (+4)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 3561
  • Last login:April 26, 2023, 07:34:43 pm
Re: Plugins: v1.01 Document API for JukePlugSys (!! DONE, YES FINALLY DONE !!)
« Reply #282 on: January 19, 2008, 07:59:48 am »
Quote
Why not support JUKE_SONG_NEXT?
It's just the same song as the first song in your queue?

 LCDS can't typical not need show more than 2 songs, hence the command can been good so it avoid to manage the queue. It only why that command is added. Should been easy to add, because you can send this command just after JUKE_SONG_START (check the first song in the queue and send its songinfo to that command, if there is also a last one song in the queue).

Well, this is the easy case ...... but there are other cases which need to be considered as well which were not that straightforward for me to implement at the moment.    I will revisit this issue though.   Keep in mind my software allows the user to randomly insert songs into the queue, delete songs from the queue, clear the queue, move songs around the queue so the "next song" can change at any time.  This is where all the extra functionality of determining the "next" song gets to be a pain ...... although I will revisit this command.

Quote
Juke_Command("JUKE_SONG_PLAYMODE", "AnyMode"):
Can you not use this command with "Idle Mode On", "Repeat On", "AttractMode NoActive" and "AttractMode Active" messages? Otherwice it should been empty if all modes is off. PLAYMODE is just a message command and can been used with your defined features as well.
I could look into using this command for something ....


Quote
Juke_Command("JUKE_APP_GAINFOCUS","")
Juke_Command("JUKE_APP_LOSTFOCUS","")

If you have options to minimize (like to tray) and maximize your software, use them there, elsewice don't support these commands.
If these commands were called "JUKE_APP_MINIMIZED" and "JUKE_APP_RESTORED" then I would use them.   But right now, they are called "GAINFOCUS" and "LOSTFOCUS".  The term "focus" indicates whether the window is the user's current active working window in their environment or not.  Since I do not just have one main window but have many popup windows which can be displayed, then my "main" window will go out/in of focus everytime one of these popup windows are opened/closed.

Again, if you rename "LOSTFOCUS" to be "MINIMIZED" and "GAINFOCUS" to be "RESTORED", then I can use them ..... otherwise this is not worth the effort for me .... however, if you dont I might add these commands myself as PLUGIN_EVENTs ..... so let me know what you think

Quote
The plugin is unicode aware if enabled. PureBasic is strong with UTF8/Unicode/AscII convertings.
My software does not support Unicode, so I guess the plugin will always be disabled for me.
« Last Edit: January 19, 2008, 08:47:22 am by unclet »

Space Fractal

  • Wiki Master
  • Trade Count: (+1)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 1888
  • Last login:September 26, 2023, 11:32:13 am
  • Space Fractal
    • Space Fractal
Re: Plugins: v1.01 Document API for JukePlugSys (!! DONE, YES FINALLY DONE !!)
« Reply #283 on: January 19, 2008, 08:31:02 am »
I wont really change the SDK again for renamed commands and break combatible. It pretty the same if I should use ATTRACKMODE commands for the SCREENSAVER in MultiJuke (even it not the same, it would been usable).

Other applications typical only use one Windows and these commands would been much more sence. So for you you really only can call them under minimize and maximize. In MultiJuke I Send these commands when the Window is lost focus or when the windows is minimized (I cant really see it should use both MAXIMAZED and GAINFOCUS commands?). Maybe I should write a bit indepth about these commands?


For the SONG_NEXT, I recommered to add a function and checking for the queue each time the have changed something in the queue (you cant change anything in MultiJuke). If the string is changed in the new function (In BlitzMax, you can global a strings inside a function), you can resend the command again with the new info.

For My plugini its would never get a TRUE statement for the unicode, sence I have set unicode flag as FALSE by default....

« Last Edit: January 19, 2008, 08:34:05 am by Space Fractal »
Decade Old Work: MultiFE, ArcadeMusicBox
Today Works: Various Spectrum Next games from Rusty Pixels and html5 games.

unclet

  • Trade Count: (+4)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 3561
  • Last login:April 26, 2023, 07:34:43 pm
Re: Plugins: v1.01 Document API for JukePlugSys (!! DONE, YES FINALLY DONE !!)
« Reply #284 on: January 19, 2008, 08:51:05 am »
Quote
I wont really change the SDK again for renamed commands and break combatible. It pretty the same if I should use ATTRACKMODE commands for the SCREENSAVER in MultiJuke (even it not the same, it would been usable).

Other applications typical only use one Windows and these commands would been much more sence. So for you you really only can call them under minimize and maximize. In MultiJuke I Send these commands when the Window is lost focus or when the windows is minimized (I cant really see it should use both MAXIMAZED and GAINFOCUS commands?). Maybe I should write a bit indepth about these commands?
Well since you call the LOSTFOCUS command when the window loses focus AND when the window is minimized, then it makes sense the command is called "LOSTFOCUS" then.   This is just too much of a hassle to implement in my code to do the same thing as you since I have many windows.    If I implement it then both of our implementation of these commands would be different .... which would not be right, so I chose not to implement it.

Quote
For the SONG_NEXT, I recommered to add a function and checking for the queue each time the have changed something in the queue (you cant change anything in MultiJuke). If the string is changed in the new function (In BlitzMax, you can global a strings inside a function), you can resend the command again with the new info.
Exactly what I have coded now to use ..... just need to use it now  ;D

How do you inform the plugin that "there is no longer a NEXT song"?  Basically, when my song queue becomes empty, I think I should just send a "JUKE_SONGLIST_CLEAR" to indicate the song queue has been cleared ..... or are you sending a "JUKE_SONG_NEXT" command with no data in it?


** Also, I do not think the "JUKE_SONG_NEXT" command should include the "system" data .....
« Last Edit: January 19, 2008, 09:16:11 am by unclet »

Space Fractal

  • Wiki Master
  • Trade Count: (+1)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 1888
  • Last login:September 26, 2023, 11:32:13 am
  • Space Fractal
    • Space Fractal
Re: Plugins: v1.01 Document API for JukePlugSys (!! DONE, YES FINALLY DONE !!)
« Reply #285 on: January 19, 2008, 09:36:58 am »
System data might been used in MultiJuke if rest of the songs in a album was added when a user choiced a song in MulJuke when the no songs is in queue or is curretly played ("no songs is playing"). Im not sure you have have use of it, so you might just set that system to zero. SONG_NEXT is basically the same as first song in queue (even it might been changed by the user).

The AND should read as AND/OR abot the FOCUS (NOT just ADD), MultiJuke send the command when ONE of them was "activated", not wait when both a accoured. It could been better distripted in the document. That is how I used these commands.... Otherwice I and LoadMand have no clue when your software have been minimezed and maximazed, if he want to use these functions.

JUKE_SONGLIST_CLEAR should not been needed here. I personly recommered you to just send empty data. But I guess both methods might works, but last one might been safer.


BTW. I could elsewice add "JUKE_APP_SUSPEND" and "JUKE_APP_RESTORED" as alternative names to these focus commands? Or should I rename to these to? OK with others (I ask that because it now over V1.0 and wont change without I heard).
« Last Edit: January 19, 2008, 09:56:10 am by Space Fractal »
Decade Old Work: MultiFE, ArcadeMusicBox
Today Works: Various Spectrum Next games from Rusty Pixels and html5 games.

unclet

  • Trade Count: (+4)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 3561
  • Last login:April 26, 2023, 07:34:43 pm
Re: Plugins: v1.01 Document API for JukePlugSys (!! DONE, YES FINALLY DONE !!)
« Reply #286 on: January 19, 2008, 10:25:12 am »
Quote
JUKE_SONGLIST_CLEAR should not been needed here. I personally recommend you to just send empty data. But I guess both methods might works, but last one might been safer.
Actually I think plugin authors should be able to handle both of these cases.  If they get a SONG_NEXT command with empty data, then they know there is no "next" song.   If they get a SONGLIST_CLEAR command then they should understand there is no next song either.   As a result, I will leave it up to the plugin authors to code for both cases.


Quote
BTW. I could otherwise add "JUKE_APP_SUSPEND" and "JUKE_APP_RESTORED" as alternative names to these focus commands? Or should I rename to these to? OK with others (I ask that because it now over V1.0 and wont change without I heard).

If we use these commands differently then it still does not matter what you call the commands themeselves ... the problem would be that be do not implement them the same.

What I mean is ...... if MultiJuke is going to use the "LOSTFOCUS" command to indicate the folllowing two things:

1) Application no longer has the focus
2) Application has been minimized

... and my software is only going to use it to support (2), then we are both not implementing this command the same way which would be bad.  As a result, since I can not support (1) then I decided not to support the "LOSTFOCUS" command at all.

 I can only inform the plugin when the application has been "minimized" and "restored".  If you want to add commands (or rename the current ones to) "JUKE_APP_MINIMIZED" and "JUKE_APP_RESTORED" then I can use them, otherwise it will not work for me. 

The correct way to handle this is to keep the "GAINFOCUS" and "LOSTFOCUS" commands, but also add two new commands called "JUKE_APP_MINIMIZED" and "JUKE_APP_RESTORED".    If you do this then the jukebox software can clear indicate what they are doing to the plugin.



Space Fractal

  • Wiki Master
  • Trade Count: (+1)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 1888
  • Last login:September 26, 2023, 11:32:13 am
  • Space Fractal
    • Space Fractal
Re: Plugins: v1.01 Document API for JukePlugSys (!! DONE, YES FINALLY DONE !!)
« Reply #287 on: January 19, 2008, 10:46:07 am »
I add these two commands, so the SDK would still been backward combatible. No need to change the code again.

I can't do sent a SONGLIST_CLEAR from MultiJuke, but only clear the SONG_NEXT info... But for your application its a good idea to use both commands.

That is why I next week will finish a songlist based plugin to test the queue/playlist system ised in various system and make sure it doing that correct....
Decade Old Work: MultiFE, ArcadeMusicBox
Today Works: Various Spectrum Next games from Rusty Pixels and html5 games.

unclet

  • Trade Count: (+4)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 3561
  • Last login:April 26, 2023, 07:34:43 pm
Re: Plugins: v1.01 Document API for JukePlugSys (!! DONE, YES FINALLY DONE !!)
« Reply #288 on: January 19, 2008, 11:42:47 am »
I add these two commands, so the SDK would still been backward combatible. No need to change the code again.

I can't do sent a SONGLIST_CLEAR from MultiJuke, but only clear the SONG_NEXT info... But for your application its a good idea to use both commands.

That is why I next week will finish a songlist based plugin to test the queue/playlist system ised in various system and make sure it doing that correct....


Good .....  I will support the new commands now.


Here is my new command set:

BLUE = supporting
RED = NOT supporting.   

Quote
PCHAR  Juke_GetPluginInfo();
int    Juke_Initialize(value);
int    Juke_Shutdown(value);
int    Juke_Configure(HWND hWndParent);
PCHAR  Juke_Command(Pchar Namer, PChar Value);


Juke_Command("JUKE_APP_GAINFOCUS","")
Juke_Command("JUKE_APP_LOSTFOCUS","")

Juke_Command("JUKE_APP_RESTORED","")
Juke_Command("JUKE_APP_MINIMIZED","")
UNICODE_SUPPORT$=Juke_Command("JUKE_APP_UNICODE","TRUE or FALSE")
Juke_Command("JUKE_APP_HOST","SOFTWARE NAME")

Juke_Command("JUKE_SONGLIST_ADD_SONG","system|postition|title|artist|album|genre|totalDuration|TrackNr|AlbumNr|more")
Juke_Command("JUKE_SONGLIST_REMOVE_SONG", "position")
Juke_Command("JUKE_SONGLIST_MOVE_SONG", "oldPosition|newPosition")
Juke_Command("JUKE_SONGLIST_CLEAR", "")
Juke_Command("JUKE_SONGLIST_CURRENTPOSITION", "position")
SuggestionFile=Juke_Command("JUKE_SONGLIST_SUGGESTION", "LastPlayedFile")


Juke_Command("JUKE_SONG_START","system|title|artist|album|genre|totalDuration|TrackNr|AlbumNr")
Juke_Command("JUKE_SONG_NEXT","system|title|artist|album|genre|totalDuration|TrackNr|AlbumNr")
Juke_Command("JUKE_SONG_FINISH","")
Juke_Command("JUKE_SONG_RESTART", "")
Juke_Command("JUKE_SONG_SKIP","")
Juke_Command("JUKE_SONG_PAUSE","")
Juke_Command("JUKE_SONG_RESUME","")
Juke_Command("JUKE_SONG_PLAYMODE", "modeTextString")
Juke_Command("JUKE_SONG_FASTFWD_START","")
Juke_Command("JUKE_SONG_FASTFWD_FINISH","")
Juke_Command("JUKE_SONG_FASTREV_START","")
Juke_Command("JUKE_SONG_FASTREV_FINISH","")
Juke_Command("JUKE_SONG_PLAY_POSITION",curPosSecs|totalDuration)

Juke_Command("JUKE_ENTER_ALBUM_VALUE", "VALUE")
Juke_Command("JUKE_ENTER_TRACK_VALUE", "VALUE")

Juke_Command("JUKE_VOLUME_CHANGE", "system|curVolumeLevel|minVolumeLevel|maxVolumeLevel")
Juke_Command("JUKE_VOLUME_MUTE", "TRUE or FALSE")


JukeCommand("JUKE_PLUGIN_EVENT_CREATE", "PLUGIN_EVENT_(name)|valueStr")

    where "PLUGIN_EVENT_(name)|valueStr" can be one of the following:

    PLUGIN_EVENT_APP_EXIT|""
    PLUGIN_EVENT_PLAY|""
    PLUGIN_EVENT_PAUSE|""
    PLUGIN_EVENT_FASTREV|"KEYDOWN KEYUP"
    PLUGIN_EVENT_FASTFWD|"KEYDOWN KEYUP"
    PLUGIN_EVENT_SKIP|""
    PLUGIN_EVENT_VOLUMESET|"NUMBER"
    PLUGIN_EVENT_VOLUMEMUTE|"ON OFF"
    PLUGIN_EVENT_VOLUMEUP|"KEYDOWN KEYUP"
    PLUGIN_EVENT_VOLUMEDOWN|"KEYDOWN KEYUP"
    PLUGIN_EVENT_SONGQ_CLEAR|""
    PLUGIN_EVENT_SONGQ_REPEAT|"ON OFF"
    PLUGIN_EVENT_IDLEPLAY_ACTIVATE|"ON OFF"
    PLUGIN_EVENT_ENTERSEL_DIGIT|"NUMBER"
    PLUGIN_EVENT_ENTERSEL_CLEAR|""
    PLUGIN_EVENT_ENTERSEL_DELETE|""
    PLUGIN_EVENT_ENTERSEL_PLAY|""
    PLUGIN_EVENT_ALBUM_COVERS_FLIP_BACKWARD|""
    PLUGIN_EVENT_ALBUM_COVERS_FLIP_FORWARD|""


Juke_Command("JUKE_PLUGIN_EVENT_SEND", "PLUGIN_EVENT_(name)|valueStr")

    where "PLUGIN_EVENT_(name)|valueStr" can be one of the following:
   
    PLUGIN_EVENT_APP_EXIT|""
        (application has exited)
   
    PLUGIN_EVENT_SONGQ_REPEAT|"ON" or "OFF"
        (song queue repeat button is turned ON/OFF)
   
    PLUGIN_EVENT_IDLEPLAY_ACTIVATE|"ON" or "OFF"
        (idle play button is turned ON/OFF)

    PLUGIN_EVENT_ALBUM_COVERS_FLIP_BACKWARD|""
        (album covers were flipped backward)

    PLUGIN_EVENT_ALBUM_COVERS_FLIP_FORWARD|""
        (album covers were flipped forward)



retValStr = Juke_Command("JUKE_PLUGIN_EVENT_GET", "")

    where "retValStr" is of the format "PLUGIN_EVENT_(name)|valueStr" and can be one of the following:
   
    PLUGIN_EVENT_APP_EXIT|""
        (application should exit)

    PLUGIN_EVENT_PLAY|""
        (click the PLAY media button)

    PLUGIN_EVENT_PAUSE|""
        (click the {AUSE media button)

    PLUGIN_EVENT_FASTREV|"KEYDOWN" or "KEYUP"
        (KEYDOWN = start fast reversing the song)
        (KEYUP   = stop  fast reversing the song)

    PLUGIN_EVENT_FASTFWD|"KEYDOWN" or "KEYUP"
        (KEYDOWN = start fast forwarding the song)
        (KEYUP   = stop  fast forwarding the song)

    PLUGIN_EVENT_SKIP|""
        (click the SKIP media button)

    PLUGIN_EVENT_VOLUMESET|"NUMBER"
        (set the volume level directly)

    PLUGIN_EVENT_VOLUMEMUTE|"ON" or "OFF"
        (turn volume mute ON/OFF)

    PLUGIN_EVENT_VOLUMEUP|"KEYDOWN" or "KEYUP"
        (KEYDOWN = start increasing the volume)
        (KEYUP   = stop  increasing the volume)

    PLUGIN_EVENT_VOLUMEDOWN|"KEYDOWN" or "KEYUP"
        (KEYDOWN = start decreasing the volume)
        (KEYUP   = stop  decreasing the volume)

    PLUGIN_EVENT_SONGQ_CLEAR|""
        (click song queue CLEAR button)

    PLUGIN_EVENT_SONGQ_REPEAT|"ON" or "OFF"
        (turn song queue repeat button ON/OFF)

    PLUGIN_EVENT_IDLEPLAY_ACTIVATE|"ON" or "OFF"
        (turn idle-play activate button ON/OFF)

    PLUGIN_EVENT_ENTERSEL_DIGIT|"NUMBER"
        (click specific enter selection number button)

    PLUGIN_EVENT_ENTERSEL_CLEAR|""
        (click CLEAR enter selection button)

    PLUGIN_EVENT_ENTERSEL_DELETE|""
        (click DELETE enter selection button)

    PLUGIN_EVENT_ENTERSEL_PLAY|""
        (click PLAY enter selection button)

    PLUGIN_EVENT_ALBUM_COVERS_FLIP_BACKWARD|""
        (flip album covers page backward)

    PLUGIN_EVENT_ALBUM_COVERS_FLIP_FORWARD|""
        (flip album covers page forward)



« Last Edit: January 19, 2008, 12:03:54 pm by unclet »

unclet

  • Trade Count: (+4)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 3561
  • Last login:April 26, 2023, 07:34:43 pm
Re: Plugins: v1.02 Document API for JukePlugSys (!! DONE, YES FINALLY DONE !!)
« Reply #289 on: January 19, 2008, 12:33:50 pm »
headkaze
I have a VB problem I just noticed and perhaps you can help.

problem solved .... nevermind
« Last Edit: January 19, 2008, 02:10:01 pm by unclet »

Space Fractal

  • Wiki Master
  • Trade Count: (+1)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 1888
  • Last login:September 26, 2023, 11:32:13 am
  • Space Fractal
    • Space Fractal
Re: Plugins: v1.02 Document API for JukePlugSys (!! DONE, YES FINALLY DONE !!)
« Reply #290 on: January 19, 2008, 12:39:30 pm »
you should include this to you homepage and/or in a readme file for your software. I create mine soon. Still messing about few commands list. It one of the harder one (JUKE_KEY_EVENT_GET). I still make sure it can compile under both Windows and Linux (without the plugin system).

You have mightbeen checking the speed of your mouse whn you moving you mouse? You could code it, so it only is a "user interaction" when the mouse is moved about 5 pixels from the original position when the idle mode was activated.....
« Last Edit: January 19, 2008, 12:41:11 pm by Space Fractal »
Decade Old Work: MultiFE, ArcadeMusicBox
Today Works: Various Spectrum Next games from Rusty Pixels and html5 games.

unclet

  • Trade Count: (+4)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 3561
  • Last login:April 26, 2023, 07:34:43 pm
Re: Plugins: v1.02 Document API for JukePlugSys (!! DONE, YES FINALLY DONE !!)
« Reply #291 on: January 19, 2008, 12:55:11 pm »

Quote
you should include this to you homepage and/or in a readme file for your software. I create mine soon. Still messing about few commands list. It one of the harder one (JUKE_KEY_EVENT_GET). I still make sure it can compile under both Windows and Linux (without the plugin system).
This is already embedded inside my jukebox application.  I might add it to my homepage but I think I might be too lazy to change all that stuff ....  :P

Quote
You have might been checking the speed of your mouse whn you moving you mouse? You could code it, so it only is a "user interaction" when the mouse is moved about 5 pixels from the original position when the idle mode was activated.....
I have no idea what I am checking ... I got the mouse hook stuff from somewhere online.  I just know it used to work like a charm and only inform me when the mouse actually moved.    :dunno

Space Fractal

  • Wiki Master
  • Trade Count: (+1)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 1888
  • Last login:September 26, 2023, 11:32:13 am
  • Space Fractal
    • Space Fractal
Re: Plugins: v1.02 Document API for JukePlugSys (!! DONE, YES FINALLY DONE !!)
« Reply #292 on: January 19, 2008, 01:56:58 pm »
I hope you get it to work 100%, otherwice make a ektra check how much the mouse is moved (the mouse event might accuar even 1 pixels or such).

Im are not far from finish and guess I can get it finish a beta tomorrow. But I do wait to you to been finished to and release your beta or release. I need to checking if the GET command actuelly works as it should from a plugin. Hence I create a simple sample test later.

Im only missing to add the shutdown feature I have in my app (of course a Event feature).


Decade Old Work: MultiFE, ArcadeMusicBox
Today Works: Various Spectrum Next games from Rusty Pixels and html5 games.

unclet

  • Trade Count: (+4)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 3561
  • Last login:April 26, 2023, 07:34:43 pm
Re: Plugins: v1.02 Document API for JukePlugSys (!! DONE, YES FINALLY DONE !!)
« Reply #293 on: January 19, 2008, 02:10:39 pm »
Yeah I decided to do what you recommend and simply look for mouse movement and not hook the mouse events .... works better .....    :applaud:

Space Fractal

  • Wiki Master
  • Trade Count: (+1)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 1888
  • Last login:September 26, 2023, 11:32:13 am
  • Space Fractal
    • Space Fractal
Re: Plugins: v1.02 Document API for JukePlugSys (!! DONE, YES FINALLY DONE !!)
« Reply #294 on: January 19, 2008, 02:21:46 pm »
I have never used such a hooks in my own application, since it act like most (BLitzMax) games would do.

Otherwice I have added all commands my software can support, but I need some internal testing before release.

I have also added the new command from v1.02 too. MultiJuke will send a JUKE_APP_MINIMIZED and then JUKE_APP_LOSTFOCUS just after. If just the windows focus is lost, MINIMIZED is not send.

But it seen we soon have working versions using this system soon  :D. I guess we create a new thread about it. PM me when you are ready. Barcrest you can pm me to, if you want a simulate release in same thread (or you could doing that job, UncleT?).
« Last Edit: January 19, 2008, 02:30:39 pm by Space Fractal »
Decade Old Work: MultiFE, ArcadeMusicBox
Today Works: Various Spectrum Next games from Rusty Pixels and html5 games.

unclet

  • Trade Count: (+4)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 3561
  • Last login:April 26, 2023, 07:34:43 pm
Re: Plugins: v1.02 Document API for JukePlugSys (!! DONE, YES FINALLY DONE !!)
« Reply #295 on: January 19, 2008, 02:42:25 pm »
I would just release a new software version of my jukebox like I normally do.   If you make a thread before me, then I can simply add to it later and vice versa ... no big deal.

unclet

  • Trade Count: (+4)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 3561
  • Last login:April 26, 2023, 07:34:43 pm
Re: Plugins: v1.02 Document API for JukePlugSys (!! DONE, YES FINALLY DONE !!)
« Reply #296 on: January 19, 2008, 04:16:31 pm »
Ok, I wrapped everything up much quicker than I thought .....

The new v3.0 of my jukebox software can be found at my site. 

    http://unclet.arcadecontrols.com/Jukebox/

I also added a new section for PLUGINs as well. 

Let me know how it works .....  I will not officially announce the release until I see it is working with some plugins ....

loadman

  • Wiki Contributor
  • Trade Count: (+3)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 4305
  • Last login:August 17, 2020, 03:23:55 am
  • Cocktail Cab owner and MaLa FE developer
    • MaLa
Re: Plugins: v1.02 Document API for JukePlugSys (!! DONE, YES FINALLY DONE !!)
« Reply #297 on: January 19, 2008, 06:22:03 pm »
Ok, I wrapped everything up much quicker than I thought .....

The new v3.0 of my jukebox software can be found at my site. 

    http://unclet.arcadecontrols.com/Jukebox/

I also added a new section for PLUGINs as well. 

Let me know how it works .....  I will not officially announce the release until I see it is working with some plugins ....

so far so good  :applaud:

Q)  How often are you firing the 'JUKE_PLUGIN_EVENT_GET'?  I was thinking it might be good to have the polling a configuarable value option?  What do you think?.  Depending on the speed of your system you may wish to adjust that?   :dunno 
   I was just thinking on a slow system you might have to accept that you only get this once once a sec and on a fast every 10ms   :dunno  And testing to have that slowed down (or even turned off) might be handy  ;)
« Last Edit: January 19, 2008, 08:34:19 pm by loadman »

Space Fractal

  • Wiki Master
  • Trade Count: (+1)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 1888
  • Last login:September 26, 2023, 11:32:13 am
  • Space Fractal
    • Space Fractal
Re: Plugins: v1.02 Document API for JukePlugSys (!! DONE, YES FINALLY DONE !!)
« Reply #298 on: January 19, 2008, 07:19:31 pm »
Congra, UncleT  :cheers:

I release my own one tomorrow or one of the fellow days, when I got more testing. Mine would just update with a new version number from 1.06 to 1.07 (Plug-in support is just a another new feature, even it major).

In MultiJuke I simple do that in each screen flip which is updated 30FPS, so it about 33.33ms timer I use (if it dosent skip a frame over). In MultiJuke's Jukebox GUI the FPS can been set at 60 fps, which the ms would been 20 (this is due with smooth scrolling).

JukeplugSys.com
I have the http://www.jukeplugsys.com domain based on wordpress. I think all plug-in releases should realease that soon as well host using this system. Something Headkaze and Loadman can help me with (please register on the homepage) and also create some content on it?
« Last Edit: January 19, 2008, 07:21:21 pm by Space Fractal »
Decade Old Work: MultiFE, ArcadeMusicBox
Today Works: Various Spectrum Next games from Rusty Pixels and html5 games.

loadman

  • Wiki Contributor
  • Trade Count: (+3)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 4305
  • Last login:August 17, 2020, 03:23:55 am
  • Cocktail Cab owner and MaLa FE developer
    • MaLa
Re: Plugins: v1.02 Document API for JukePlugSys (!! DONE, YES FINALLY DONE !!)
« Reply #299 on: January 19, 2008, 08:33:04 pm »
JukeplugSys.com
I have the http://www.jukeplugsys.com domain based on wordpress. I think all plug-in releases should realease that soon as well host using this system. Something Headkaze and Loadman can help me with (please register on the homepage) and also create some content on it?

What do we want to use this minisite for?  Can you leave attachments on it?

I think documentation should be on the wiki personally so anyone can add to it. but plug-ins can be on the website IMHO

unclet

  • Trade Count: (+4)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 3561
  • Last login:April 26, 2023, 07:34:43 pm
Re: Plugins: v1.02 Document API for JukePlugSys (!! DONE, YES FINALLY DONE !!)
« Reply #300 on: January 19, 2008, 08:34:51 pm »
Quote
Q)  How often are you firing the 'JUKE_PLUGIN_EVENT_GET'?  I was thinking it might be good to have the polling a configuarable value option?  What do you think?.

Good idea .... now go download v3.01 ..... there is a new "Settings" tab under the Plugins option menu

 ;D

loadman

  • Wiki Contributor
  • Trade Count: (+3)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 4305
  • Last login:August 17, 2020, 03:23:55 am
  • Cocktail Cab owner and MaLa FE developer
    • MaLa
Re: Plugins: v1.02 Document API for JukePlugSys (!! DONE, YES FINALLY DONE !!)
« Reply #301 on: January 19, 2008, 09:05:28 pm »
Quote
Q)  How often are you firing the 'JUKE_PLUGIN_EVENT_GET'?  I was thinking it might be good to have the polling a configuarable value option?  What do you think?.

Good idea .... now go download v3.01 ..... there is a new "Settings" tab under the Plugins option menu

 ;D

About time... Geeeeez   :laugh2:      :applaud:

Space Fractal

  • Wiki Master
  • Trade Count: (+1)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 1888
  • Last login:September 26, 2023, 11:32:13 am
  • Space Fractal
    • Space Fractal
Re: Plugins: v1.02 Document API for JukePlugSys (!! DONE, YES FINALLY DONE !!)
« Reply #302 on: January 19, 2008, 09:21:12 pm »
I have not used it very much, but it can have I seen, otherwice I just create some space where there plugins can been placed and linked from the website. So I could grant you ftp space for releasing your plugins and for helping me with the website.

IF you want to help me, I can set you as adminstrator for the page? But I need a registration, before I can set a status.

I guess i going to use these Categories when created (havent looked much on this one, due I want codning MultiJuke first):
- News
- Jukebox software
- SDK
- Plugin Releases


I havea lots of space and bandwidth left, and is just added the domain on my normal webhotel. So it only the new domain I paid, not a extra webhotel.

THis domain would been a nice presentation for get attension for other plugin writers and get other jukebox software to get it added into thier system.

The really it need it get a content and a logo, one to website and small one to been used by the Jukeboxsoftware.

NB. I just set your status as editor, loadman.
« Last Edit: January 19, 2008, 09:23:38 pm by Space Fractal »
Decade Old Work: MultiFE, ArcadeMusicBox
Today Works: Various Spectrum Next games from Rusty Pixels and html5 games.

loadman

  • Wiki Contributor
  • Trade Count: (+3)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 4305
  • Last login:August 17, 2020, 03:23:55 am
  • Cocktail Cab owner and MaLa FE developer
    • MaLa
Re: Plugins: v1.02 Document API for JukePlugSys (!! DONE, YES FINALLY DONE !!)
« Reply #303 on: January 19, 2008, 09:45:55 pm »
IF you want to help me, I can set you as adminstrator for the page? But I need a registration, before I can set a status.

I have already.

Quote
NB. I just set your status as editor, loadman.
Cool

Good idea .... now go download v3.01 ..... there is a new "Settings" tab under the Plugins option menu
 ;D

Sweet.

I notice that even if a Plug-in is not enabled it still send the plug-in things like:

 int Juke_Initialize(value) 
 int Juke_Shutdown(value)

Is that ok?  Probably is but just checking :-) 
Thinking about it more you really do need to send the shutdown otherwise a plug-in would crash on Jukebox shutdown if you have initialised it.

Cool

As you were  :cheers:
« Last Edit: January 19, 2008, 09:55:50 pm by loadman »

Space Fractal

  • Wiki Master
  • Trade Count: (+1)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 1888
  • Last login:September 26, 2023, 11:32:13 am
  • Space Fractal
    • Space Fractal
Re: Plugins: v1.02 Document API for JukePlugSys (!! DONE, YES FINALLY DONE !!)
« Reply #304 on: January 19, 2008, 09:51:57 pm »
Just created some start pages, I hope you are available to edit these. Seen there are bit problems with IE7, cant add links or pictures, but can do add files for the snapshots of software.

I hope HeadKaze would do the same, so he can update the SDK directly on the page as well.
Decade Old Work: MultiFE, ArcadeMusicBox
Today Works: Various Spectrum Next games from Rusty Pixels and html5 games.

unclet

  • Trade Count: (+4)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 3561
  • Last login:April 26, 2023, 07:34:43 pm
Re: Plugins: v1.02 Document API for JukePlugSys (!! DONE, YES FINALLY DONE !!)
« Reply #305 on: January 19, 2008, 10:05:36 pm »
Quote
I notice that even if a Plug-in is not enabled it still send the plug-in things like:

 int Juke_Initialize(value)
 int Juke_Shutdown(value)

Exactly .... the Initialize command must be done when the jukebox application starts for each plugin since this is how it determines whether the plugin is "valid" or not.  If it is valid, then it will be listed on the "Plugins" options page.    Of course, if it was initialized, then it must Shutdown() after.

Glad you like the "Settings" tab I added.  You attached the picture of this Settings page ... are you pointing out a problem with it?

loadman

  • Wiki Contributor
  • Trade Count: (+3)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 4305
  • Last login:August 17, 2020, 03:23:55 am
  • Cocktail Cab owner and MaLa FE developer
    • MaLa
Re: Plugins: v1.02 Document API for JukePlugSys (!! DONE, YES FINALLY DONE !!)
« Reply #306 on: January 19, 2008, 10:24:45 pm »
Quote
Just created some start pages, I hope you are available to edit these
I will have a go tonight (AEST)

Glad you like the "Settings" tab I added.  You attached the picture of this Settings page ... are you pointing out a problem with it?

No just showing others of your fine work so they may do the same  ;)

Space Fractal

  • Wiki Master
  • Trade Count: (+1)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 1888
  • Last login:September 26, 2023, 11:32:13 am
  • Space Fractal
    • Space Fractal
Re: Plugins: v1.02 Document API for JukePlugSys (!! DONE, YES FINALLY DONE !!)
« Reply #307 on: January 20, 2008, 06:19:36 am »
Loadman, Seen you edited the start page, but its a new page, so I guess I moved it into "About" page instead and let this is the start page.

When the pages is finished we can so use the news for any new releases.


For The Timer, I really use 33.33ms timer for mine.... But MultiJuke works a bit diffencent.
Decade Old Work: MultiFE, ArcadeMusicBox
Today Works: Various Spectrum Next games from Rusty Pixels and html5 games.

unclet

  • Trade Count: (+4)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 3561
  • Last login:April 26, 2023, 07:34:43 pm
Re: Plugins: v1.02 Document API for JukePlugSys (!! DONE, YES FINALLY DONE !!)
« Reply #308 on: January 20, 2008, 12:34:06 pm »
Will someone please go into the http://www.jukeplugsys.com site and change the current snapshot of my jukebox software for me to this one (it is the 5th screenshot from the top located at my site)

http://unclet.arcadecontrols.com/Jukebox/snaps/snap05full.jpg


btw:  Good job on the site ......
« Last Edit: January 20, 2008, 12:40:24 pm by unclet »

Space Fractal

  • Wiki Master
  • Trade Count: (+1)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 1888
  • Last login:September 26, 2023, 11:32:13 am
  • Space Fractal
    • Space Fractal
Re: Plugins: v1.02 Document API for JukePlugSys (!! DONE, YES FINALLY DONE !!)
« Reply #309 on: January 20, 2008, 01:53:24 pm »
done  :D. Since you are one of authors of this projects, I can give you editor status if you register on the page.

I diddent countinue on the queue plugin, but instead near finish a basic remote plugin to test out the functions in MultiJuke also works.... It still not finished (missing some features, as you can see on the LOOP button), but that one would been good to fix bugs, if the plugin didden't do as it should.... I release it on the homepage soon when done as long with MultiJuke.

« Last Edit: January 20, 2008, 02:00:36 pm by Space Fractal »
Decade Old Work: MultiFE, ArcadeMusicBox
Today Works: Various Spectrum Next games from Rusty Pixels and html5 games.

unclet

  • Trade Count: (+4)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 3561
  • Last login:April 26, 2023, 07:34:43 pm
Re: Plugins: v1.02 Document API for JukePlugSys (!! DONE, YES FINALLY DONE !!)
« Reply #310 on: January 20, 2008, 04:01:14 pm »
Quote
done 
Thanks

Quote
Since you are one of authors of this projects, I can give you editor status if you register on the page.
I registered already this morning, but I doubt I will spend time updating the site.  I just do not like updating webpages and such.    I am just happy to be done updating the software and updating my own site so I can now get back to finishing up my jukebox build.    :)

loadman

  • Wiki Contributor
  • Trade Count: (+3)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 4305
  • Last login:August 17, 2020, 03:23:55 am
  • Cocktail Cab owner and MaLa FE developer
    • MaLa
Re: Plugins: v1.02 Document API for JukePlugSys (!! DONE, YES FINALLY DONE !!)
« Reply #311 on: January 20, 2008, 05:29:57 pm »
Quote
but instead near finish a basic remote plugin to test out the functions in MultiJuke also works...

Cool


I am just happy to be done updating the software and updating my own site so I can now get back to finishing up my jukebox build.    :)

Don't forget to post pictures  ;D

unclet

  • Trade Count: (+4)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 3561
  • Last login:April 26, 2023, 07:34:43 pm
Re: Plugins: v1.02 Document API for JukePlugSys (!! DONE, YES FINALLY DONE !!)
« Reply #312 on: January 20, 2008, 05:39:46 pm »
Quote
Don't forget to post pictures
Of course .....   :applaud:

Space Fractal

  • Wiki Master
  • Trade Count: (+1)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 1888
  • Last login:September 26, 2023, 11:32:13 am
  • Space Fractal
    • Space Fractal
Re: Plugins: v1.02 Document API for JukePlugSys (!! DONE, YES FINALLY DONE !!)
« Reply #313 on: January 21, 2008, 11:47:53 am »
2 software is released with this system. We still missing Freebox and maybe DWJukebox...
Decade Old Work: MultiFE, ArcadeMusicBox
Today Works: Various Spectrum Next games from Rusty Pixels and html5 games.

unclet

  • Trade Count: (+4)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 3561
  • Last login:April 26, 2023, 07:34:43 pm
Re: Plugins: v1.02 Document API for JukePlugSys (!! DONE, YES FINALLY DONE !!)
« Reply #314 on: January 21, 2008, 12:45:39 pm »
 :cheers:   :cheers:

unclet

  • Trade Count: (+4)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 3561
  • Last login:April 26, 2023, 07:34:43 pm
Re: Plugins: v1.02 Document API for JukePlugSys (!! DONE, YES FINALLY DONE !!)
« Reply #315 on: January 21, 2008, 02:37:22 pm »
I was bored at work so I decided to update the Wiki ........

http://wiki.arcadecontrols.com/wiki/Jukebox_Plug-Ins


loadman

  • Wiki Contributor
  • Trade Count: (+3)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 4305
  • Last login:August 17, 2020, 03:23:55 am
  • Cocktail Cab owner and MaLa FE developer
    • MaLa
Re: Plugins: v1.02 Document API for JukePlugSys (!! DONE, YES FINALLY DONE !!)
« Reply #316 on: January 21, 2008, 04:25:22 pm »
2 software is released with this system. We still missing Freebox and maybe DWJukebox...

I'm sure they will come onbaord with encouragement, support and time  ;)

I was bored at work so I decided to update the Wiki ........

http://wiki.arcadecontrols.com/wiki/Jukebox_Plug-Ins


I just had a quick look but very nice formatting  :applaud:

Space Fractal

  • Wiki Master
  • Trade Count: (+1)
  • Full Member
  • *****
  • Offline Offline
  • Posts: 1888
  • Last login:September 26, 2023, 11:32:13 am
  • Space Fractal
    • Space Fractal
Re: Plugins: v1.02 Document API for JukePlugSys (!! DONE, YES FINALLY DONE !!)
« Reply #317 on: January 21, 2008, 06:24:38 pm »
I changed the formatting a bit around BackGround fact, But I do really like the formatting on the SDK itself.

I might remove all html tags and replace them with wiki tags sooner of later.
Decade Old Work: MultiFE, ArcadeMusicBox
Today Works: Various Spectrum Next games from Rusty Pixels and html5 games.

unclet

  • Trade Count: (+4)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 3561
  • Last login:April 26, 2023, 07:34:43 pm
Re: Plugins: v1.02 Document API for JukePlugSys (!! DONE, YES FINALLY DONE !!)
« Reply #318 on: January 21, 2008, 06:54:26 pm »
Yeah, I did not understand the wiki tags at all.  I would have liked to do color, but had no idea how to do that.

Also, I discovered by accident that when the text is not fully left justified, then it is all placed into a box  ...... oh well ... I just went with what I figured out and ran with it.

Do what you want with it ... no worries from me ...... I was just really bored at work today.   ::)

loadman

  • Wiki Contributor
  • Trade Count: (+3)
  • Full Member
  • ***
  • Offline Offline
  • Posts: 4305
  • Last login:August 17, 2020, 03:23:55 am
  • Cocktail Cab owner and MaLa FE developer
    • MaLa
Re: Plugins: v1.02 Document API for JukePlugSys (!! DONE, YES FINALLY DONE !!)
« Reply #319 on: January 21, 2008, 08:23:56 pm »
..... I was just really bored at work today.   ::)

I wish I was   :o