MonkeyPro58 now up! [MONKEY NEWS]

Monkey Forums/Monkey Programming/MonkeyPro58 now up! [MONKEY NEWS]

marksibly(Posted 2012) [#1]
Hi,

MonkeyPro58 is now up!

This includes a bunch of bugfixes (probably more than I'm comfortable with for one release) but perhaps most intriguingly, support for Sony's new Play Station Suite SDK in the form of a new 'pss' target.

The pss target allows you to run monkey games on the new Sony Vita and (theoretically/untested) Android devices.

This is highly experimental, but already features a (nearly) full implementation of mojo. The only thing missing is the ability to pause sounds (although you can still pause music).

You can download the pss SDK here:

http://www.playstation.com/pss/index_e.html

You can't as yet actually sell/release pss games, as this is part of an 'open beta'.

Note that to upload games to a Vita, you will need Wifi/3G internet as the Vita side software needs to 'phone home' every 24 hours (grrrr...). The SDK does include an simple/excellent emulator though.

Apart from the pss target, the other target I plan on implementing soon-ish is a 'metro' target for Windows 8 on tablets. I've started work on this but it'll probably be a way off yet.

Anyway, here's the update info (I apparently forgot to release v57...)


***** V58 *****

Modules:

mojo - Added (highly) experimental pss support!

opengl - Fixed leak in c++ LoadImageData.

reflection - Fixed bug where class member const/function names were fully qualified.

java lang - String.Join now uses StringBuilder instead of StringBuffer.


Targets:

Pss - Added! Added config var PSS_PATH="${PROGRAMFILES}\SCE\Pss" to bin\config.winnt.txt

Android - MonkeyData.loadString now uses StringBuilder instead of StringBuffer.


Trans (v1.34)

Fixed scoping bug where code could access globals via class members.

Fixed some error line bugs.


***** V57 *****

Modules:

xna mojo - scissor rect now clipped to device rect.

mojo graphics - implemented muddy_shoes' GrabImage bugfix.

android mojo - fixed paused music restarting at OnResume.

ios mojo - added kludge to detect 'dead' touch events.


Trans (v1.33)

Fixed Alias with primtive Int, Float, String types, eg: Alias MyInt=Int,MyString=String etc.




simonh(Posted 2012) [#2]
Nice! Must get myself a Vita to test this.


Samah(Posted 2012) [#3]
I assume you changed StringBuffer to StringBuilder for speed? Hmm... this might break my threading module. Having said that, developers shouldn't be trying to write to the same variable on multiple threads anyway (without a lock).


Soap(Posted 2012) [#4]
Awesome! :D


marksibly(Posted 2012) [#5]
Hi,

> I assume you changed StringBuffer to StringBuilder for speed?

Yep.

But threading-wise, I don't think it'll matter as the StringBuilder objects used by Monkey are all 'local' objects - ie: each thread will allocate its own.

The problem would be if you had a 'global' StringBuilder, like a static instance or a field, that 2 threads were trying to use at once.


Neuro(Posted 2012) [#6]
Pss - Added! Added config var PSS_PATH="${PROGRAMFILES}\SCE\Pss" to bin\config.winnt.txt

Wait a minute...what can this be!!?? Awesome!!!!


therevills(Posted 2012) [#7]
Cool! Thanks for the update Mark :)

Any thoughts on making adding new targets easier?

http://www.monkeycoder.co.nz/Community/posts.php?topic=2692#27156


Neuro(Posted 2012) [#8]
Ok here's some test run using the PSP Vita target.

Running the Blob Monster code by Charlie (this one ran smoothly!) :


Running an Asteroids rendition by therevils (couldn't play it since controls didn't mapped out) :


And finally, running NoOdle's version of Asteroids which was also unplayable and ran extremely choppy on the Vita :



Samah(Posted 2012) [#9]
But threading-wise, I don't think it'll matter as the StringBuilder objects used by Monkey are all 'local' objects - ie: each thread will allocate its own.

...I'm disappointed in myself that I didn't think of that.
/facepalm


Soap(Posted 2012) [#10]
Thank you for sharing, Neuro. Now I need a Vita. (:


dopeyrulz(Posted 2012) [#11]
Apart from the pss target, the other target I plan on implementing soon-ish is a 'metro' target for Windows 8 on tablets. I've started work on this but it'll probably be a way off yet.

Mark - awesome news!! Can I please ask if this will be the C++/DirectX implementation?


Richard Betson(Posted 2012) [#12]
Just so cool! GJ!


GC-Martijn(Posted 2012) [#13]
I have a sony xperia S , i will test this soon !


taumel(Posted 2012) [#14]
Wow for the PSS target and coming up Win 8 support.


MikeHart(Posted 2012) [#15]
PSS Target = pure awesomeness!!!


CodeGit(Posted 2012) [#16]
Brilliant!!! I had my first program running on my PS VITA in less than 10 minutes (I already had the pss SDK installed). WOW, Awesome. Thanks Mark.


Raz(Posted 2012) [#17]
Wow that didn't take long! Nice one!


Raz(Posted 2012) [#18]
The Vita has shoulder buttons right?


therevills(Posted 2012) [#19]
The Vita has shoulder buttons right?

Yep:

http://upload.wikimedia.org/wikipedia/commons/8/89/PlayStation_Vita_Layout.svg


Raz(Posted 2012) [#20]
Yay, no reason why I shouldn't try to get Ninjah going on it :)


Shinkiro1(Posted 2012) [#21]
Amazing. I didn't expected you would be that quick with an update.

Also what's the meaning of the interpreter example in the bananas/mak folder?
Something was mentioned on your blog i think.


Rex Rhino(Posted 2012) [#22]
Would love to develop for a PS Vita, but geez, they cost almost as much as I paid for my PS3 console!


TeaBoy(Posted 2012) [#23]
wow, this is super cool! :o)

Looking at some of the examples for PS Vita, this looks very exciting!


ziggy(Posted 2012) [#24]
Awesome news and awesome update!


siread(Posted 2012) [#25]
Wow. Now looking for the best Vita deal. This was just the excuse I needed. Thanks Mark.


benmc(Posted 2012) [#26]
Thanks for this. For the type of games I'm making, the PS Vita market may be a golden opportunity. Bummer that the device is kind-of expensive.


Why0Why(Posted 2012) [#27]
Monkey is incredible. The option to write once and publish to so many popular targets still blows me away. I tell everyone I know that is interested in coding about Monkey.


hardcoal(Posted 2012) [#28]
Monkey is also the cheapest option of all others!

Corona although it rocks wants like 350$ per year (sick bastards!)
and they dont even provide a code editor!

Unity is a hole in the pocket but it comes at least free for starters.

I say stick with monkey and in the future is will be worth it.

besides that its community is the most intelligent of all :p)


therevills(Posted 2012) [#29]
Mark I know you said the pss target was nearly feature complete with Mojo, but this is just to remind you to add Discard to Images ;)


siread(Posted 2012) [#30]
Just took delivery of my PS Vita. Gotta say that it is one sexy piece of kit and reminded me how much better a dedicated gaming console is compared to a phone/tablet. I can't wait to start developing on this. :)


TeaBoy(Posted 2012) [#31]
@siread, how much did you pay for your PS VITA? I want one ;o)


siread(Posted 2012) [#32]
I got mine from Amazon for £180. Picked up Wipeout and a 16gb card too (though Amazon sent me a bloody 4gb card despite the delivery note saying 16gb - they are sending a replacement). I think it was £240 all in.

I'm very impressed with the PSN Store. Loads of PSP titles for £7 and loads of Minis. Definitely gonna need that 16gb card if not more!


matt(Posted 2012) [#33]
The higher capacity cards are faster than the smaller ones, bizarrely.


Neuro(Posted 2012) [#34]
Gotta say that it is one sexy piece of kit and reminded me how much better a dedicated gaming console is compared to a phone/tablet.

Exactly my thoughts when i first started playing with it. While it can do the typical camera, watch videos/music, netflix, video chat, phone (apparently with skype), surf the web (fast little browser too), this thing is definitely a total gaming beast. The augmented capabilities are quite impressive too.

The higher capacity cards are faster than the smaller ones, bizarrely.

Aren't SSD drives the same way?


visionastral(Posted 2012) [#35]
Mmmm... I don't want to get down the hype but I'm probably the only one not beign able to compile after the upgrade. I'm making GLFW and just after upgrading and deleting the build folders, now it will not compile and says:
C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\CL.exe /c /I"../bdwgc/libatomic_ops-1.2/src" /I../bdwgc/include /I../stb /I../
openal/include /I../glfw/include /I../glfw/lib /I../glfw/lib/win32 /Zi /nologo /W0 /WX- /O2 /Oi /Oy- /GL /D WIN32 /D NDEBUG /D _WINDOWS /D _MBCS /Gm- /EHsc /MT /GS /Gy- 
/fp:precise /Zc:wchar_t /Zc:forScope /Fo"C:\CODE\miniB3D\ShadowMappingEngine.build\glfw\vc2010\build\Release\\"
 /Fd"C:\CODE\miniB3D\ShadowMappingEngine.build\glfw\vc2010\build\Release\vc100.pdb" /Gd /TP /analyze- /errorReport:queue ..\main.cpp
  main.cpp
..\main.cpp(2794): error C2146: syntax error : missing ')' before identifier '_' [C:\CODE\miniB3D\ShadowMappingEngine.build\glfw\vc2010\MonkeyGame.vcxproj]
..\main.cpp(2794): error C2059: syntax error : ')' [C:\CODE\miniB3D\ShadowMappingEngine.build\glfw\vc2010\MonkeyGame.vcxproj]
..\main.cpp(2794): error C2065: '_' : undeclared identifier [C:\CODE\miniB3D\ShadowMappingEngine.build\glfw\vc2010\MonkeyGame.vcxproj]
..\main.cpp(2794): error C2146: syntax error : missing ';' before identifier 'free' [C:\CODE\miniB3D\ShadowMappingEngine.build\glfw\vc2010\MonkeyGame.vcxproj]
Done Building Project "C:\CODE\miniB3D\ShadowMappingEngine.build\glfw\vc2010\MonkeyGame.vcxproj" (default targets) -- FAILED.
Done Building Project "C:\CODE\miniB3D\ShadowMappingEngine.build\glfw\vc2010\MonkeyGame.sln" (default targets) -- FAILED.

Build FAILED.

"C:\CODE\miniB3D\ShadowMappingEngine.build\glfw\vc2010\MonkeyGame.sln" (default target) (1) ->
"C:\CODE\miniB3D\ShadowMappingEngine.build\glfw\vc2010\MonkeyGame.vcxproj" (default target) (2) ->
(ClCompile target) -> 
  ..\main.cpp(2794): error C2146: syntax error : missing ')' before identifier '_' [C:\CODE\miniB3D\ShadowMappingEngine.build\glfw\vc2010\MonkeyGame.vcxproj]
  ..\main.cpp(2794): error C2059: syntax error : ')' [C:\CODE\miniB3D\ShadowMappingEngine.build\glfw\vc2010\MonkeyGame.vcxproj]
  ..\main.cpp(2794): error C2065: '_' : undeclared identifier [C:\CODE\miniB3D\ShadowMappingEngine.build\glfw\vc2010\MonkeyGame.vcxproj]
  ..\main.cpp(2794): error C2146: syntax error : missing ';' before identifier 'free' [C:\CODE\miniB3D\ShadowMappingEngine.build\glfw\vc2010\MonkeyGame.vcxproj]

    0 Warning(s)
    4 Error(s)

Time Elapsed 00:00:04.58
TRANS FAILED: TRANS Failed to execute 'C:\Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe /p:Configuration=Release;Platform="win32" MonkeyGame.sln', return code=1
Abnormal program termination. Exit code: -1


Any help will be nice!


visionastral(Posted 2012) [#36]
By the way, my brother just bought a psvita and I was thinking it would be nice to develop for it! GOOD TIMING MARK! xD


visionastral(Posted 2012) [#37]
it seems this update has broken GLFW


slenkar(Posted 2012) [#38]
did you delete the build folder?


AdamRedwoods(Posted 2012) [#39]
can you show us the line from the resulting main.cpp code for line 2146, 2059, 2065? it would help to see if it's trans is making problems.


visionastral(Posted 2012) [#40]
I uninstalled the update so it took me a little time to set it up again.
Now, there is the main.cpp line with the bug: (line 2794)

	
	~DataBuffer(){
		if( _data _) free( _data );
	}
	


It seems related to the DataBuffer's memory leak.
the correct line should be:

if( _data ) free ( _data );


-edit-

Should I post a bug report or it is ok to leave this here?


Xaron(Posted 2012) [#41]
You could join this one. ;)

http://monkeycoder.co.nz/Community/posts.php?topic=2796


visionastral(Posted 2012) [#42]
You could join this one. ;)


xD
done!


Soap(Posted 2012) [#43]
For Vita maybe have print/errors go to Application Output window in PSS when debugging?

Got a device, tested a few things. Some things work others do not. Most things which do work are kind of choppy - low FPS. But that is expected. I'm glad that this is going to be an official target. :)

Could we get some more forums for different new things like Vita target?


Neuro(Posted 2012) [#44]
Yeah the Vita target is kinda stutters a bit with the framerates. Still works pretty well though. Also, the deadzones for the analog sticks are shaky but thats correctable in code. BTW, has anyone has been able to get the trigger buttons to work on the Vita? It works fine in XNA though, but doesn't translate on the Vita target.


visionastral(Posted 2012) [#45]
it's been 2 weeks an nobody has fixed that extra character trans bug?