psp中java,PSP编程概述

这篇博客介绍了如何在PSP上进行编程,包括使用C++和Cygwin在Windows环境下搭建开发环境,以及在PSP上运行HTML、CSS和JavaScript的可能性。作者还分享了一个简单的PSP程序示例,并探讨了Python和Ruby在PSP上的潜在支持情况。
摘要由CSDN通过智能技术生成

元旦准备买NDS,顺带关注了下PSP,其实是想,或许买PSP也不错~

PSP很像一个平台,提供了很多东西,譬如官方的PS模拟器~在上面编程也是个不错的想法。

国外的一个网站提供了很多信息,PS2Dev Network (http://www.ps2dev.org),有教程http://ps2dev.org/psp/Tutorials,现在由于不久前的地震,基本无法登陆那个网站。更多的信息在http://wiki.ps2dev.org/。

要想进行PSP编程,需要学习C或C++。在windows下,需要安装Cygwin http://www.cygwin.com/, 这其实是个模拟linux的环境。在Mac OS X或Linux下需要编译PSPSDK和PSP 工具。这些东西都可以在http://ps2dev.org/psp/Projects找到。

4f1150b881333f12a311ae9ef34da474.png

--

starting positions

for

the character

4f1150b881333f12a311ae9ef34da474.png x

=

200

4f1150b881333f12a311ae9ef34da474.png y

=

100

4f1150b881333f12a311ae9ef34da474.png

4f1150b881333f12a311ae9ef34da474.png

--

A nice color

4f1150b881333f12a311ae9ef34da474.png color

=

Color.new(

128

,

255

, 0)

4f1150b881333f12a311ae9ef34da474.png

4f1150b881333f12a311ae9ef34da474.png

--

this flag tells whether the program needs to draw

4f1150b881333f12a311ae9ef34da474.png draw_character

=

true

4f1150b881333f12a311ae9ef34da474.png

4f1150b881333f12a311ae9ef34da474.png

--

loop forever

4f1150b881333f12a311ae9ef34da474.png

while

true do

4f1150b881333f12a311ae9ef34da474.png

4f1150b881333f12a311ae9ef34da474.png

if

draw_character then

4f1150b881333f12a311ae9ef34da474.png

--

print

a rogue at the x

/

y coordinates

4f1150b881333f12a311ae9ef34da474.png     screen:

print

(x, y,

"

@

"

, color)

4f1150b881333f12a311ae9ef34da474.png     screen.flip()

4f1150b881333f12a311ae9ef34da474.png   end

4f1150b881333f12a311ae9ef34da474.png

4f1150b881333f12a311ae9ef34da474.png

--

check whether the user pressed the pad,

and

move accordingly

4f1150b881333f12a311ae9ef34da474.png   pad

=

Controls.read()

4f1150b881333f12a311ae9ef34da474.png   draw_character

=

true

4f1150b881333f12a311ae9ef34da474.png

if

pad:left() then

4f1150b881333f12a311ae9ef34da474.png     x

=

x

-

3

4f1150b881333f12a311ae9ef34da474.png   elseif pad:right() then

4f1150b881333f12a311ae9ef34da474.png     x

=

x

+

3

4f1150b881333f12a311ae9ef34da474.png   elseif pad:up() then

4f1150b881333f12a311ae9ef34da474.png     y

=

y

-

3

4f1150b881333f12a311ae9ef34da474.png   elseif pad:down() then

4f1150b881333f12a311ae9ef34da474.png     y

=

y

+

3

4f1150b881333f12a311ae9ef34da474.png

else

4f1150b881333f12a311ae9ef34da474.png     draw_character

=

false

4f1150b881333f12a311ae9ef34da474.png   end

4f1150b881333f12a311ae9ef34da474.png

4f1150b881333f12a311ae9ef34da474.png

--

wait

for

the next vertical blank

4f1150b881333f12a311ae9ef34da474.png   screen.waitVblankStart()

4f1150b881333f12a311ae9ef34da474.png

4f1150b881333f12a311ae9ef34da474.png end

4f1150b881333f12a311ae9ef34da474.png

4f1150b881333f12a311ae9ef34da474.png

4f1150b881333f12a311ae9ef34da474.png

4f1150b881333f12a311ae9ef34da474.png

你也可以使用HTML, CSS和JavaScript编写程序在PSP的浏览器上运行。关于这方面的信息,网上已经很多了,这里给一个例子。

4f1150b881333f12a311ae9ef34da474.png

<

html

>

4f1150b881333f12a311ae9ef34da474.png

<

head

><

title

>

Mandelbrot Set

title

>

head

>

4f1150b881333f12a311ae9ef34da474.png

<

body

style

="width: 480px; height: 272px;"

>

4f1150b881333f12a311ae9ef34da474.png

1fa987a29c6482f53d401256f96355eb.png

ca75c07623e1b494fee67e8f316fc310.gif

<

script

language

="JavaScript"

>

9b8a8a44dd1c74ae49c20a7cd451974e.png

d18c02628675d0a2c816449d98bda930.png

d18c02628675d0a2c816449d98bda930.png colors

=

new

Array(

"

black

"

,

"

aqua

"

,

"

blue

"

,

"

fuchsia

"

,

"

gray

"

,

d18c02628675d0a2c816449d98bda930.png

"

green

"

,

"

lime

"

,

"

maroon

"

,

"

navy

"

,

"

olive

"

,

"

purple

"

,

d18c02628675d0a2c816449d98bda930.png

"

red

"

,

"

silver

"

,

"

teal

"

,

"

white

"

,

"

yellow

"

);

d18c02628675d0a2c816449d98bda930.png

97e794c86028c5f5b5461ae5ef440a4c.png

3c6cafce68eb941a00f1998f1d3d3aa6.gif

function

plot()

9b8a8a44dd1c74ae49c20a7cd451974e.png

{

d18c02628675d0a2c816449d98bda930.png

d18c02628675d0a2c816449d98bda930.png   height

=

20

;

d18c02628675d0a2c816449d98bda930.png   width

=

150

;

d18c02628675d0a2c816449d98bda930.png   max

=

17

;

//

maximum number of iterations.

d18c02628675d0a2c816449d98bda930.png

d18c02628675d0a2c816449d98bda930.png   document.write('

<

p style

=

"

font-size: 8px

"

>

');

d18c02628675d0a2c816449d98bda930.png

d18c02628675d0a2c816449d98bda930.png

//

imaginary axis from -1.25 to 1.25

97e794c86028c5f5b5461ae5ef440a4c.png

3c6cafce68eb941a00f1998f1d3d3aa6.gif

for

(y

=

-

1.25

; y

<=

1.25

; y

+=

2.5

/

height)

9b8a8a44dd1c74ae49c20a7cd451974e.png

{

d18c02628675d0a2c816449d98bda930.png

d18c02628675d0a2c816449d98bda930.png

//

real axis from -2.25 to .75

97e794c86028c5f5b5461ae5ef440a4c.png

3c6cafce68eb941a00f1998f1d3d3aa6.gif

for

(x

=

-

2.25

; x

<=

.

75

; x

+=

3

/

width)

9b8a8a44dd1c74ae49c20a7cd451974e.png

{

d18c02628675d0a2c816449d98bda930.png

d18c02628675d0a2c816449d98bda930.png       a1

=

x;

d18c02628675d0a2c816449d98bda930.png       b1

=

y;

97e794c86028c5f5b5461ae5ef440a4c.png

3c6cafce68eb941a00f1998f1d3d3aa6.gif

for

(cnt

=

1

; cnt

<=

max; cnt

++

)

9b8a8a44dd1c74ae49c20a7cd451974e.png

{

d18c02628675d0a2c816449d98bda930.png

d18c02628675d0a2c816449d98bda930.png

//

If the square magnitude of the complex number exceeds

d18c02628675d0a2c816449d98bda930.png

//

the limit, break out of the loop. Otherwise, calculate

d18c02628675d0a2c816449d98bda930.png

//

and loop around again.

d18c02628675d0a2c816449d98bda930.png

//

d18c02628675d0a2c816449d98bda930.png

a

=

a1

*

a1;

d18c02628675d0a2c816449d98bda930.png         b

=

b1

*

b1;

97e794c86028c5f5b5461ae5ef440a4c.png

3c6cafce68eb941a00f1998f1d3d3aa6.gif

if

(a

+

b

>

4.0

)

9b8a8a44dd1c74ae49c20a7cd451974e.png

{

d18c02628675d0a2c816449d98bda930.png

break

;

97e794c86028c5f5b5461ae5ef440a4c.png

3c6cafce68eb941a00f1998f1d3d3aa6.gif         }

else

9b8a8a44dd1c74ae49c20a7cd451974e.png

{

d18c02628675d0a2c816449d98bda930.png           b1

=

2

*

a1

*

b1

+

y;

//

imaginary component

d18c02628675d0a2c816449d98bda930.png

a1

=

a

-

b

+

x;

//

real component

ecedf933ec37d714bd4c2545da43add2.png

}

ecedf933ec37d714bd4c2545da43add2.png       }

97e794c86028c5f5b5461ae5ef440a4c.png

3c6cafce68eb941a00f1998f1d3d3aa6.gif

if

(cnt

>

max)

9b8a8a44dd1c74ae49c20a7cd451974e.png

{

d18c02628675d0a2c816449d98bda930.png

//

At this resolution, the point does not appear to be

d18c02628675d0a2c816449d98bda930.png

//

outside the Mandelbrot set, so use color 0 (black).

d18c02628675d0a2c816449d98bda930.png

cnt

=

0

;

ecedf933ec37d714bd4c2545da43add2.png       }

d18c02628675d0a2c816449d98bda930.png       style

=

'background

-

color: '

+

colors[ cnt

%

16

]

+

';';

d18c02628675d0a2c816449d98bda930.png       document.write('

<

span style

=

"

' + style + '

"

>&

nbsp;

span

>

');

d18c02628675d0a2c816449d98bda930.png

ecedf933ec37d714bd4c2545da43add2.png     }

d18c02628675d0a2c816449d98bda930.png     document.write('

<

br

/>

');

ecedf933ec37d714bd4c2545da43add2.png   }

d18c02628675d0a2c816449d98bda930.png   document.write('

p

>

');

ecedf933ec37d714bd4c2545da43add2.png }

d18c02628675d0a2c816449d98bda930.png

d18c02628675d0a2c816449d98bda930.png plot();

d18c02628675d0a2c816449d98bda930.png

8f1ba5b45633e9678d1db480c16cae3f.png

script

>

4f1150b881333f12a311ae9ef34da474.png

4f1150b881333f12a311ae9ef34da474.png

body

>

4f1150b881333f12a311ae9ef34da474.png

html

>

4f1150b881333f12a311ae9ef34da474.png

4f1150b881333f12a311ae9ef34da474.png

你可以将其与Perl脚本语言结合,编写功能更为强大的程序。

(声明:以上大部分翻译自《PSP Hacks》的Hack 47. Develop for the PSP)

不知道PSP是否支持Python这种脚本语言~大学里看过Python的书~

Lua是linux下的一种编程语言,那另一中语言Ruby是否也可以呢?

posted on 2006-12-30 14:11 李威 阅读(2148) 评论(1)  编辑  收藏

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值