 |
forums.ps2dev.org Homebrew PS2, PSP & PS3 Development Discussions
|
| View previous topic :: View next topic |
| Author |
Message |
be2003
Joined: 20 Apr 2006 Posts: 144
|
Posted: Mon Jul 24, 2006 9:26 am Post subject: System Extension (v0.5,cpu,elf loading,mp3,zip) |
|
|
ok this is my first ever experience with the pspsdk, spent 2 days getting it to work and the first thing i did was create a LuaPlayer lrx, i was thinking about what LuaPlayer needed and i decided to port over the fuunctions that were in LuaPlayer 0.17dk2 but are not in the current release(0.20).
So with this lrx you can call all of the added functions in 0.17dk2 :)
Just read the samples on loading modules in Luaplayer and you can call these...
Added Sysext.Quit() which will exit Lua Player back to the PSP browser
Added Sysext.isUmdInserted() and will return true if a UMD is inserted
Added Sysext.initUMD() which will mount the UMD to disk0: (it will not launch it)
Added Sysext.setCpuSpeedHigh(), Sysext.setCpuSpeedMed(), and Sysext.setCpuSpeedReg() which changes the CPU speed to 333 MHz, 266 MHz, and 222 MHz respectively.
This was all based on the 0.17dk2 release and the effect.lrx source so thanks to them. I'm gonna need feedback though because even though it compiled fine, well um i cant find my psp usb cord and cant test it out lol.
I will add all the functions people want and hopefully make a collection of these nice little lrx's.
I would make them System.Quit(), etc. but i am not sure if i can have the library call functions of the same category that is build into the luaplayer...
and the reason i made it a lrx library instead of another release it to avoid it being replaced by a neew version and not keeping the functions implemented. ya so enough chit chat here it is:
right click on the link and click save as or what ever
dont regular click on it or angelfire.com will give you it's little page about direct linking and hating my guts, so right-click "save as" or "Save target as"
http://www.angelfire.com/blog/dev-be2003/sysext.zip
but one again, i need feedback on whether it works... and tell me if you get any errors... must be loaded in a luaplayer with module loading support and kernel mode access...
edit: Just tested it, via neighbor's wifi hehe, works like a charm, now those 3d lua apps run as fast a B-otch. _________________ - be2003
blog
Last edited by be2003 on Wed Jul 26, 2006 5:08 pm; edited 6 times in total |
|
| Back to top |
|
 |
be2003
Joined: 20 Apr 2006 Posts: 144
|
Posted: Mon Jul 24, 2006 9:30 am Post subject: |
|
|
sorry about double post but if ur really newbie then do this:
open the zip and get the sysext.lrx file and put it in your LuaPlayer
folder, the one with luaplayer.prx in it and all the other lrx's.
and add this to the beginning of your code
| Code: | sysext = loadlib( "sysext", "init" )
if sysext then sysext() end
|
edit: i will see if i can change the name over to system, so you can call System.Quit(), etc.
I will add a function to return the current cpu speed...
edit: v0.2 is out at same link:
added Sysext.getCpuSpeed() returns 333, 266, or 222
added Sysext.loadModule(path) - loads a module at path hopefully
yup thats all, i need some ideas folks, anything you wish luaplayer had. _________________ - be2003
blog |
|
| Back to top |
|
 |
be2003
Joined: 20 Apr 2006 Posts: 144
|
Posted: Mon Jul 24, 2006 2:44 pm Post subject: |
|
|
v0.3 is out, and i feel like i'm talking to myself right now, you know this library can solve many of people problems, especially with mp3 support!
yes mp3, here is the readme
| Code: |
-----------------------------------
version 0.3
-----------------------------------
Added Mp3 support :) kinda, all from psp media center --- thanks, all functions but one, MP3.GetTimeString(), i didn't know what it was for...
Includes MP3.Init() initializes the mp3 player
Includes MP3.Play() plays the loaded mp3
Includes MP3.Pause() pauses the playing mp3
Includes MP3.Stop() stops the loaded mp3
Includes MP3.End() ends the loaded mp3 (stops it and unloads it from ram)
Includes MP3.FreeTune() clears the ram of the loaded mp3
Includes MP3.Load(file) loads an mp3 as file
Includes MP3.EndOfStream() return true if the mp3 has ended and false if it didn't, duh
|
enjoy, if anyone's using this, i still want feedback and ideas for what to put in this ... and i would recommend changing the cpu speed to high for mp3 playback.
edit: ok, so getCpuSpeed is broken ... im gonna try a get a fix up soon... _________________ - be2003
blog |
|
| Back to top |
|
 |
daurnimator

Joined: 11 Dec 2005 Posts: 38 Location: melbourne, australia
|
Posted: Mon Jul 24, 2006 11:54 pm Post subject: |
|
|
| how bout a elf launcher? - with callbacks of course... |
|
| Back to top |
|
 |
be2003
Joined: 20 Apr 2006 Posts: 144
|
Posted: Tue Jul 25, 2006 5:29 am Post subject: |
|
|
something like:
Sysext.loadExec(path) to load an elf file, only elf, not 1.0 eboots
-----------------------------------
version 0.4
-----------------------------------
Changed the mp3 api... hre it is:
Includes MP3.Play(file) initializes psp audio loads the file and plays it
Includes MP3.Pause() pauses the playing mp3
Includes MP3.Stop() stops the mp3 unloads it from memory and terminates psp audio
Includes MP3.EndOfStream() return true if the mp3 has ended and false if it didn't, duh
and ...
Added Sysext.loadExec(path) to load an elf executable at path.
*Fixed Sysext.getCpuSpeed() which was broken for some reason...
-----------------------------------
version 0.4b
-----------------------------------
Changed all Sysext.whatever() to System.whatever() and MP3.whatever() to Mp3.whatever()
so call System.Quit() etc.
Attempted to fix the mp3 call again to make it work, remember folks this is my first ever compiled by me thing... lol have fuun
and ...
-----------------------------------
version 0.4c
-----------------------------------
Took out System.loadModule(path) because it sucked at life, eg. Luaplayer didn't want anything to do with it so i decided loadExec was enough.
edit: fixed mp3player, it was that i forgot to put define mp3player.o in the makefile lol...
edit: nevermind its still gay...
now the api looks like this:
Mp3.init() initializes mp3 player
Mp3.play() plays the loaded mp3
Mp3.pause() pauses loaded mp3
Mp3.stop() stops loaded mp3
Mp3.end() ends loaded mp3
Mp3.load(file) loads file as mp3
Mp3.freeTune() removes loaded mp3 from ram
Mp3.endOfStream() return true if the mp3 is over, false if it isnt
make sure to call Mp3.init() before loading and playing mp3's and call Mp3.End() when you are finished. _________________ - be2003
blog |
|
| Back to top |
|
 |
be2003
Joined: 20 Apr 2006 Posts: 144
|
Posted: Wed Jul 26, 2006 5:10 pm Post subject: well v0.5 is out, like anyone cares or knows, lol........... |
|
|
ok here it is:
I added zip. sweet huh! this is alpha so i need feedback, wait, sorry, my bad, i forgot no one cares, or no one uses lua anymore.
well if anyone cares here it is: (at the same link up at the first post.)
-----------------------------------
version 0.5
-----------------------------------
ZIP ZIP ZIP !!!ALPHA!!!
NOT SURE IF MULTIPLE FILE ZIPS WORK...
Added Zip.compress(file, zipout) compress file into zipout, they are both files so they expect a relevant path
Added Zip.extract(zipin, filesout) uncompress zipin into filesout, they are both files so they expect a relevant path _________________ - be2003
blog |
|
| Back to top |
|
 |
Oobles Site Admin
Joined: 17 Jan 2004 Posts: 362 Location: Melbourne, Australia
|
Posted: Wed Jul 26, 2006 5:21 pm Post subject: |
|
|
be2003,
Looks like you've been having fun with those libraries. If you're interested in adding them directly to Subversion let me know. I will have to ask Shine, but I'm sure he would be happy to have your modules in Subversion.
Regards,
David. aka Oobles.
PS. Sorry, I haven't had time to try them out either. No time to Lua at the moment. :( |
|
| Back to top |
|
 |
be2003
Joined: 20 Apr 2006 Posts: 144
|
Posted: Thu Jul 27, 2006 12:38 pm Post subject: |
|
|
[quote="Oobles"]be2003,
Looks like you've been having fun with those libraries. If you're interested in adding them directly to Subversion let me know. I will have to ask Shine, but I'm sure he would be happy to have your modules in Subversion.
Regards,
David. aka Oobles.
PS. Sorry, I haven't had time to try them out either. No time to Lua at the moment. :([/quote]
ya, sure that would be great, i would have added most of the features directly into luaplayer, but we all remember luaplayer 0.17dk2, and i was kinda pissed to hear i can't change my cpu speed or quit to the psp menu, or whatever they call that freakin thing these days...
now, i am looking mostly looking into bug fixes and getting it to run efficiently with no memory leaks... :O
dont' worry i don't think there are any.
maybe i will add adhoc support... holy ker-app (that stands for kernel application...ya...ya....)
i know alot of people were asking for it though. _________________ - be2003
blog |
|
| Back to top |
|
 |
Shine
Joined: 03 Dec 2004 Posts: 728 Location: Germany
|
Posted: Thu Jul 27, 2006 8:08 pm Post subject: |
|
|
I'll add the modules to the official Lua Player distribution, if you like. If someone thinks changing the CPU speed is unsafe, he only needs to delete the sysext module.
AdHoc support sounds great, too.
But I don't like MP3. What do you think about implementing Ogg/Vorbis for Lua Player? There are free MP3 to Ogg converters, like http://audacity.sourceforge.net/ and the file size and quality is the same, but we don't get in trouble for MP3 licensing.
BTW: Maybe you should ask for SVN access, because then it is easier to maintain your modules within the Lua Player repository. |
|
| Back to top |
|
 |
Insert_witty_name
Joined: 10 May 2006 Posts: 376
|
Posted: Thu Jul 27, 2006 11:08 pm Post subject: |
|
|
| Shine wrote: | | But I don't like MP3. What do you think about implementing Ogg/Vorbis for Lua Player? There are free MP3 to Ogg converters, like http://audacity.sourceforge.net/ and the file size and quality is the same, but we don't get in trouble for MP3 licensing |
I'm part way through implementing Ogg support (noticed it was on your todo list), if you wait a few days I'll send you what I have.
I already have the (software) decoding done in C, I just to finalise things in the Lua implementation. The C decoding is based on the PSP Media Center source code. |
|
| Back to top |
|
 |
be2003
Joined: 20 Apr 2006 Posts: 144
|
Posted: Fri Jul 28, 2006 1:07 pm Post subject: |
|
|
ya, i got the mp3 suppprt from pspmediacenter, on my psp it seems like the mp3 doesn't work, but that is probably a couple releases ago, anyway svn access to the svn.ps2dev.org/pspware/trunk/LuaPlayer/modules/sysext folder would be nice because i hate angelfire's guts, only sometimes though. Atleast it is better than geocities.
I will get rid of mp3 and add ogg for sure, then see if i can port a mp3 to ogg converter(doubtful) if it is open-source.
But yes please, add it just wait til i release 0.6, fix some bugs. and does anyone know if System.loadExec(file) works... i haven't tested it out all the way. I provided a sample elf to load(and it actually works). i also added a prx, but that is old and needs to be gone. I will clean up my code, my zip file then release 0.6. thank you all for the replies. _________________ - be2003
blog |
|
| Back to top |
|
 |
Oobles Site Admin
Joined: 17 Jan 2004 Posts: 362 Location: Melbourne, Australia
|
Posted: Fri Jul 28, 2006 2:12 pm Post subject: |
|
|
be2003, as you've been doing a lot of this lua wrapper code. I wonder if you should read up on SWIG. www.swig.org and see if it helps your efforts. I just re-found it this week and will hopefully get to use it to wrap some lua code.
Oobles. |
|
| Back to top |
|
 |
be2003
Joined: 20 Apr 2006 Posts: 144
|
Posted: Fri Jul 28, 2006 2:26 pm Post subject: |
|
|
ah, nice, thanks, im almost done with my next build of sysext, so i will definately use this tool to my advantage, thanks.
edit: haha cygwin had it installed for me and i didn't even know _________________ - be2003
blog |
|
| Back to top |
|
 |
be2003
Joined: 20 Apr 2006 Posts: 144
|
Posted: Fri Jul 28, 2006 3:12 pm Post subject: haha '06 |
|
|
done! yay, ok no more mp3 :( but we gained ogg :| whatever i dont care, so ya... still need feedback on all functions...
same link as above...
-----------------------------------
version 0.6
-----------------------------------
MP3 ABOLISHED! lol, just switched to ogg, yup, i'm serious.
umm... here we go:
Added:
Ogg.init() initializes ogg player
Ogg.play() plays the loaded ogg
Ogg.pause() pauses loaded ogg
Ogg.stop() stops loaded ogg
Ogg.end() ends loaded ogg
Ogg.load(file) loads file as ogg (relative to current path)
Ogg.freeTune() removes loaded ogg from ram
Ogg.getTimeString() call like this 'oggtime = Ogg.getTimeString()' it returns time of ogg in HH:MM:SS form as a string or do:
screen.print(5,5,Ogg.getTimeString(),green) --sample
Ogg.endOfStream() return true if the ogg is over, false if it isnt _________________ - be2003
blog |
|
| Back to top |
|
 |
Insert_witty_name
Joined: 10 May 2006 Posts: 376
|
Posted: Fri Jul 28, 2006 8:30 pm Post subject: Re: haha '06 |
|
|
| be2003 wrote: | done! yay, ok no more mp3 :( but we gained ogg :| whatever i dont care, so ya... still need feedback on all functions...
same link as above...
-----------------------------------
version 0.6
-----------------------------------
MP3 ABOLISHED! lol, just switched to ogg, yup, i'm serious.
umm... here we go:
Added:
Ogg.init() initializes ogg player
Ogg.play() plays the loaded ogg
Ogg.pause() pauses loaded ogg
Ogg.stop() stops loaded ogg
Ogg.end() ends loaded ogg
Ogg.load(file) loads file as ogg (relative to current path)
Ogg.freeTune() removes loaded ogg from ram
Ogg.getTimeString() call like this 'oggtime = Ogg.getTimeString()' it returns time of ogg in HH:MM:SS form as a string or do:
screen.print(5,5,Ogg.getTimeString(),green) --sample
Ogg.endOfStream() return true if the ogg is over, false if it isnt |
I think you should test more before you release something mate - just an observation.
The Ogg stuff working? |
|
| Back to top |
|
 |
be2003
Joined: 20 Apr 2006 Posts: 144
|
Posted: Sat Jul 29, 2006 4:30 pm Post subject: |
|
|
well the problem was(fixed it today) that i had to buy a new usb cable, so icouldn't test it. so i bought one today. _________________ - be2003
blog |
|
| Back to top |
|
 |
daurnimator

Joined: 11 Dec 2005 Posts: 38 Location: melbourne, australia
|
Posted: Sat Jul 29, 2006 10:22 pm Post subject: |
|
|
why get rid of mp3?
its easily available, and many people already have their music in that format...
maybe you got make a 2nd lrx with just mp3? |
|
| Back to top |
|
 |
daurnimator

Joined: 11 Dec 2005 Posts: 38 Location: melbourne, australia
|
Posted: Sat Jul 29, 2006 10:27 pm Post subject: |
|
|
hmmm...
zip is corrupt for me :S
edit: no, it just downloaded the no linking html page :S
- i got it to download, but only in IE.
please host somewhere else.....
also, to add onto your zip support, could you make a function that lists the contents of the zip file? - and also maybe being able to extract only certain files at a time? |
|
| Back to top |
|
 |
cools
Joined: 04 Mar 2006 Posts: 46
|
Posted: Wed Aug 02, 2006 9:30 am Post subject: |
|
|
well if you want to add in the ability to set the cpu to whatever you want just use this:
| Code: |
static int lua_setCpuSpeed(lua_State *L)
{
if (lua_gettop(L) != 1) return luaL_error(L, "Argument error: System.setCpuSpeed(cpu) takes one arguments.");
int cpu = luaL_checkint(L, 1);
if (cpu < 1 || cpu > 333) return luaL_error(L, "invalid speed");
int bus = floor(cpu/2);
if (bus == 0) bus = 1;
scePowerSetClockFrequency(cpu, cpu, bus);
return 0;
}
|
^Its Safe, dont worry!(or so i hope)^
(Not sure if C/C++ is used in libraries)
I hope it helps!
--parts of the code written by youresam (made it safer...) |
|
| Back to top |
|
 |
be2003
Joined: 20 Apr 2006 Posts: 144
|
Posted: Wed Aug 02, 2006 12:43 pm Post subject: |
|
|
that's great code, i would add it except for the fact that lua is for newbs...
i don't want them to have too much power, changing the speed is cool if u need it but not in this case which could fizzle up your psp by some newb:
| Code: |
function weeeeeeeee()
while true do
for i=1,333 do
System.setCpuSpeed(tostring(i))
screen:clear(black)
screen:print(0,0,"weeeeeee:" .. i, white)
screen.flip()
end
for i=333,1 do
System.setCpuSpeed(tostring(i))
screen:clear(black)
screen:print(0,0,"weeeeeee:" .. i, white)
screen.flip()
end
end
end
|
see, no need for newbies gone wild, giving set speeds is pretty nice.
i could add more speeds if that is the issue...
Low -- being 133 mhz
Reg -- being 233 mhz
Med -- being 266 mhz
High -- being 333 mhz _________________ - be2003
blog |
|
| Back to top |
|
 |
cools
Joined: 04 Mar 2006 Posts: 46
|
Posted: Thu Aug 03, 2006 12:04 am Post subject: |
|
|
| ok i understand, but you may still want to add in more speeds |
|
| Back to top |
|
 |
dtodabreezy
Joined: 21 Jun 2006 Posts: 10
|
Posted: Thu Aug 10, 2006 4:07 pm Post subject: |
|
|
| is mp3 still in there that would be good for my game |
|
| Back to top |
|
 |
daurnimator

Joined: 11 Dec 2005 Posts: 38 Location: melbourne, australia
|
Posted: Fri Aug 11, 2006 12:25 am Post subject: |
|
|
if you are still coding this thing, maybe you could make some oslib functions
- have the good image features like rotating etc ;) |
|
| Back to top |
|
 |
romero126
Joined: 24 Dec 2005 Posts: 200
|
Posted: Fri Aug 11, 2006 4:53 am Post subject: |
|
|
| maybe just have a faster blitting system. |
|
| Back to top |
|
 |
be2003
Joined: 20 Apr 2006 Posts: 144
|
Posted: Mon Aug 14, 2006 2:23 pm Post subject: |
|
|
i just dont have time rite now, maybe i will a dd a couple of functions, im gonna change them from static int to int, might be slower, but it will solve tons of issues _________________ - be2003
blog |
|
| Back to top |
|
 |
the underminer
Joined: 03 Oct 2005 Posts: 124 Location: Netherlands
|
Posted: Sat Aug 26, 2006 5:42 pm Post subject: file corrupted |
|
|
I tried to follow the link in your first post be2003, with the right click thing. Once downloaded the zipfile seemed corrupt. Can you re-share the latest mp3-supporting build for me (would be 0.5 I guess) for I might need it in the future.
thnx _________________ Behold! The Underminer got hold of a PSP |
|
| Back to top |
|
 |
Hoshizora
Joined: 28 Aug 2006 Posts: 2
|
Posted: Mon Aug 28, 2006 12:20 am Post subject: |
|
|
| Yes, can you repost v0.5 or reimplement the mp3 functions in your next release please? Thanks! :) |
|
| Back to top |
|
 |
matriculated
Joined: 04 Mar 2006 Posts: 31
|
Posted: Tue Sep 12, 2006 9:09 am Post subject: |
|
|
| Please re-host! Or can some else upload this file? |
|
| Back to top |
|
 |
sou1
Joined: 02 Sep 2005 Posts: 3
|
Posted: Wed Sep 13, 2006 10:47 pm Post subject: multiple play support |
|
|
sorry about my english.
hi be2003, thanks for this cool extension.
can you change the function of ogg player?
i wish multiple play support(look like sound function). |
|
| Back to top |
|
 |
razorrifh
Joined: 04 Jun 2005 Posts: 23 Location: Penn State
|
Posted: Sat Sep 23, 2006 12:29 pm Post subject: |
|
|
| matriculated wrote: | | Please re-host! Or can some else upload this file? |
it worked for me but heres a mirror of version 0.6 http://hackersgonewild.com/sysext.zip
for reference:
| Quote: | Sysext by be2003 for Luaplayer
To use this put the sysext.lrx file in your luaplayer folder and call this from your script:
sysext = loadlib("sysext","init")
if sysext then sysext() end
thanks to John_K's for source from PSPMediaCenter,
-----------------------------------
version 0.1
-----------------------------------
Added Sysext.Quit() which will exit Lua Player back to the PSP browser
Added Sysext.isUmdInserted() and will return true if a UMD is inserted
Added Sysext.initUMD() which will mount the UMD to disk0: (it will not launch it)
Added Sysext.setCpuSpeedHigh()
Added Sysext.setCpuSpeedMed()
Added Sysext.setCpuSpeedReg()
which changes the CPU speed to 333 MHz, 266 MHz, and 222 MHz respectively.
-----------------------------------
version 0.2
-----------------------------------
Added Sysext.getCpuSpeed() which returns the current Cpu speed (333,266,222)
Added Sysext.loadModule(path) set the path of a prx module to load it (alpha, may not work)
-----------------------------------
version 0.3
-----------------------------------
Added Mp3 support :) kinda, all from psp media center --- thanks, all functions but one, MP3.GetTimeString(), i didn't know what it was for...
Includes MP3.Init() initializes the mp3 player
Includes MP3.Play() plays the loaded mp3
Includes MP3.Pause() pauses the playing mp3
Includes MP3.Stop() stops the loaded mp3
Includes MP3.End() ends the loaded mp3 (stops it and unloads it from ram)
Includes MP3.FreeTune() clears the ram of the loaded mp3
Includes MP3.Load(file) loads an mp3 as file
Includes MP3.EndOfStream() return true if the mp3 has ended and false if it didn't, duh
-----------------------------------
version 0.4
-----------------------------------
Changed the mp3 api... hre it is:
Includes MP3.Play(file) initializes psp audio loads the file and plays it
Includes MP3.Pause() pauses the playing mp3
Includes MP3.Stop() stops the mp3 unloads it from memory and terminates psp audio
Includes MP3.EndOfStream() return true if the mp3 has ended and false if it didn't, duh
and ...
Added Sysext.loadExec(path) to load an elf executable at path. must be the whole path, eg. "ms0:/psp/game/lua/testprxandelf/testelf.elf"
*Fixed Sysext.getCpuSpeed() which was broken for some reason...
-----------------------------------
version 0.4b
-----------------------------------
Changed all Sysext.whatever() to System.whatever() and MP3.whatever() to Mp3.whatever()
so call System.Quit() etc.
Attempted to fix the mp3 call again to make it work, remember folks this is my first ever compiled by me thing... lol have fuun
-----------------------------------
version 0.4c
-----------------------------------
Took out System.loadModule(path) because it sucked at life, eg. Luaplayer didn't want anything to do with it so i decided loadExec was enough.
edit: fixed mp3player, it was that i forgot to put define mp3player.o in the makefile lol...
now the api looks like this:
Mp3.init() initializes mp3 player
Mp3.play() plays the loaded mp3
Mp3.pause() pauses loaded mp3
Mp3.stop() stops loaded mp3
Mp3.end() ends loaded mp3
Mp3.load(file) loads file as mp3
Mp3.freeTune() removes loaded mp3 from ram
Mp3.endOfStream() return true if the mp3 is over, false if it isnt
make sure to call Mp3.init() before loading and playing mp3's and call Mp3.End() when you are finished.
-----------------------------------
version 0.5
-----------------------------------
ZIP ZIP ZIP !!!ALPHA!!!
NOT SURE IF MULTIPLE FILE ZIPS WORK...
Added Zip.compress(file, zipout) compress file into zipout, they are both files so they expect a relevant path
Added Zip.extract(zipin, filesout) uncompress zipin into filesout, they are both files so they expect a relevant path
-----------------------------------
version 0.6
-----------------------------------
MP3 ABOLISHED! lol, just switched to ogg, yup, i'm serious.
umm... here we go:
Added:
Ogg.init() initializes ogg player
Ogg.play() plays the loaded ogg
Ogg.pause() pauses loaded ogg
Ogg.stop() stops loaded ogg
Ogg.end() ends loaded ogg
Ogg.load(file) loads file as ogg (relative to current path)
Ogg.freeTune() removes loaded ogg from ram
Ogg.getTimeString() call like this 'oggtime = Ogg.getTimeString()' it returns time of ogg in HH:MM:SS form as a string or do:
screen.print(5,5,Ogg.getTimeString(),green) --sample
Ogg.endOfStream() return true if the ogg is over, false if it isnt |
|
|
| Back to top |
|
 |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|