SID Music Player

Windows specific forum
BackupUser
PureBasic Guru
PureBasic Guru
Posts: 16777133
Joined: Tue Apr 22, 2003 7:42 pm

Post by BackupUser »

Restored from previous forum. Originally posted by WolfgangS.

Hi !
This is an extremely small SID player using the LittleSID2.0 Winamp plugin. Thanks to GPI for the information about WinAmp plugins.

Get the winamp.pbi from here: http://www.schliess.com/stuff/winamp.pbi
Get the player+DLL+some of the best SID songs from here:http://www.schliess.com/stuff/wolfgangs_sid_pack.zip

MFG
:)WolfgangS

new:stupid spelling error removed :*(


This is the sourcecode:

Code: Select all

IncludeFile "winamp.pbi"
hWindow=OpenWindow(0,100,100,250,190,#PB_Window_SystemMenu,"FemtoPlayer - Do not distribute")
If init_winamp("in_littlesid.dll","out_ds.dll",hWindow)=0
  winamp_setvolume(255)
  ;winamp_setpan(0) ;?

  If CreateGadgetList(WindowID())   
    ButtonGadget(10,10,10,50,25,"outconfig")
    ButtonGadget(11,10,40,50,25,"outabout")
    ButtonGadget(12,10,70,50,25,"inconfig")
    ButtonGadget(13,10,100,50,25,"inabout")
  
    ButtonGadget(14,10,130,50,25,"STOP")
    
    TextGadget(21,65,167,130,12,"[url]http://WWW.PUREBASIC.COM[/url]")

    ListViewGadget(30, 70, 10, 170, 150) 
  EndIf

  If ExamineDirectory(50, "", "*.sid")
    While NextDirectoryEntry()=1
        AddGadgetItem(30,-1,DirectoryEntryName())
    Wend
  EndIf
EndIf

Repeat
  event=WaitWindowEvent()
  Delay(1)
  If event=#PB_Event_Gadget
    ID=EventGadgetID()      
    Select ID
      Case 10
        winamp_outconfig(WindowID())
      Case 11
        winamp_outabout(WindowID())
      Case 12
        winamp_inconfig(WindowID())
      Case 13
        winamp_inabout(WindowID())
      Case 14
        winamp_stop()
      Case 30
        If EventType()=#PB_EventType_LeftDoubleClick
          a.s=GetGadgetItemText(30,GetGadgetState(30),0): If a.s"":hPlay=winamp_play(a.s):EndIf
        EndIf
    EndSelect
  EndIf
  
  Until event=#PB_Event_CloseWindow

winamp_stop()
quit_winamp()
BackupUser
PureBasic Guru
PureBasic Guru
Posts: 16777133
Joined: Tue Apr 22, 2003 7:42 pm

Post by BackupUser »

Restored from previous forum. Originally posted by Kendrel.

nice stuff, wolfgang :)

finally you found it out how to play sidfiles.

in fact i think the sidamp plugin iam using sounds better, but that thing is a great start.

would we be allowed to use this in games or demos, or are these dlls under a special license or something?!

keep up the good work :)
BackupUser
PureBasic Guru
PureBasic Guru
Posts: 16777133
Joined: Tue Apr 22, 2003 7:42 pm

Post by BackupUser »

Restored from previous forum. Originally posted by WolfgangS.

Hi !
The winamp.pbi is made by GPI. You should ask him for this.
The LittleSID2.0 plugin in is made by a nice comrade called Laurent. http://www.sid6581.org/
He is already programming on LittleSID3.0. You can get mp3´s from the new version. It sounds fantastic. I think it would be helpful for our interest when as much as possible people motivate him to complete his work :wink:)))))
Besides he told me it is no problem to use his plugin in freeware program.
The SoundOutput Plugin is made by Peter Pawlowski. His Homepage is dead but i 'think' it wouldn´t be a problem to use it in a freeware program.

MFG
WolfgangS
BackupUser
PureBasic Guru
PureBasic Guru
Posts: 16777133
Joined: Tue Apr 22, 2003 7:42 pm

Post by BackupUser »

Restored from previous forum. Originally posted by Kendrel.

well, freeware seems to be good... but what about shareware and commercial stuff ? :)
BackupUser
PureBasic Guru
PureBasic Guru
Posts: 16777133
Joined: Tue Apr 22, 2003 7:42 pm

Post by BackupUser »

Restored from previous forum. Originally posted by WolfgangS.

Hi !
Well you have to ask the programmers of the dlls ...

But think the best for you (and me :wink: would be a GPL licence SID player.
In know only the (quite good) sidplay2 (http://sidplay2.sourceforge.net) with this licence but the dll is a oop dll and very difficult to adress from PureBasic.

A GPL solution would be prefect !

Please compare with this:viewtopic.php?t=5014
Have you enough programming skills to implement it with Purebasic ? I don´t :*((



MFG
:)WolfgangS
Post Reply