Page 1 of 1

Export? Client?

Posted: Thu May 27, 2004 9:40 am
by Madman
I'm new to PS2 dev, and I've a few questions to start me off.

It says on the Start Here page,
"Do I need a mod-chip to start development?
No. You can use the ps2-independence exploit which allows you to boot a program like ps2link(see below) off a memory card. To load programs onto the memory card you must use a commercial save game tool such as Datel's Xport. "

How do you get the ps2-independence exploit? Datel's Xport?

"What do I need to get my programs to run on my Playstation 2?
There is a number of different ods available, but the most popular is using the Sony Ethernet Adapter and a Loader and client program combination to send the program over a TCP/IP connection. On the Ps2, the following loaders are available..."

So if i got the Sony Ethernet Adapter +ps2link +ps2client i could send files to the memory that are opened by the independance exploit? Or is using a USB to USB cable easier?

Whats a compiler? And what programming language is used for ps2? Will c# work? Is there a tutorial for a 3d game engine?


PS. I'm a 3d game mdeller, and could PS2 use .3ds or MAX files straight from 3ds Max in the games?

Posted: Thu May 27, 2004 10:01 am
by pixel
Xport is only a tool that can help you uploading the exploit to your memory card. The exploit is to be found on mrbrown's webpage. It's a "simple" file.

The USB<-->USB cable won't work without the exploit either. That is, this usb cable only replaces the ethernet part of the above list. You still need ps2link running on the PS2, which is only possible thanks to the exploit.


Now, to the last (and more difficult) part:

A compiler is something that will "translate" a listing of instruction in a given language written by you or anybody else, into a language understandable by a given hardware.

In short: the machine won't understand directly what you'll program. Have to translate it before so it might understand. That's what the compiler is here for.

Currently, there is only one compiler available here for the PS2: a C/C++ compiler. So, forget about C#.

Now, writing a full 3D engine is a quite huge task for a complete programmer newbie. Not impossible though. I suggest you to read basically all you can find about "OpenGL".

And reading 3DS max meshes on the PS2 is only depending on the software you'll run on it. That is, it depends on your programming skills.

Posted: Thu May 27, 2004 12:25 pm
by Madman
Wait so I need the Xport for the exploit to get on the PS2, and from there. I use the USB cable to send files to the memory card which is opened with the exploit. Wheres the Ps2 link and ps2client come in?

So I need to be able to transfer files back and forth between the ps2, and be able to let the ps2 translate the lanauges from the files?

Posted: Thu May 27, 2004 2:52 pm
by mharris
There are a number of ways to get the exploit loaded onto a memory card. Xport is one way; burning a CDR and using something like Swap Magic or a modded system is another; finding a friend who already has the exploit installed is yet another. The important thing to be aware of is that once you've loaded it onto your memory card, you don't need any of the above -- Xport, modchip, swap magic, not even friends ;-)

The exploit lets you run a program on your ps2 from the memory card. Typically (around here at least), this is ps2link. ps2link is mostly a program loader, it communicates via the network adaptor to a host machine (your PC). On the PC, you run a client program (e.g., pksh) that communicates with ps2link via ethernet, there are commands to load and run a program from your PC's hard disk. Your ps2 program can also (via the 'host:' device) load datafiles (models, sounds, etc.) from the PC's disk. If you have a hard drive in your ps2, there is a library to support that as well.

A compiler translates source code into machine code. As pixel said, the only one that's readily available is Gnu C/C++. Although there are "open" implementations of C#, and it could theoretically be ported to the ps2dev environment, that might be a big undertaking -- I don't know much about C#, but it probably makes many assumptions about an underlying OS that's not really present in the ps2dev world. The same applies for Java; porting the language itself is no big deal, but supporting the VM and the class libraries would be a multi-year project.

In case you're interested, I'm currently working on porting a Scheme implementation, but that's not for the faint of heart either, although it's a great language for writing game code ;-) Bottom line: if you don't know C, you'd better learn it.

Reading 3DS files (or whatever) would require you to either write one yourself, or port one (there are a few open libs that read them). That part isn't tricky, but doing something useful with it -- like rendering it on the PS2 -- is also going to require some elbow grease.

And as far as a tutorial on game engines, you're talking about a big undertaking. My advice is to first learn the basics of ps2 development, which requires learning a bit about the ps2 architecture -- the Ars Technica article is a good start. Look at dreamtime's tutorials, although they're a little dated -- I recall having problems getting some of them to build with recent toolchains. Also, look at some of the ps2dev-based graphics libraries that are available, like ito.

There are numerous books available about game development -- shy away from the ones that are heavily biased toward one architecture (e.g., DirectX). Understanding the basics is very important, and is independent of the programming language or machine architecture. If you have a poorly thought-out system and use crappy algorithms, it's going to suck no matter what the language or platform are. (a lot of so-called professional developers still don't get this).

Sorry this is so long-winded, HTH

Posted: Thu May 27, 2004 11:33 pm
by Madman
So I need a Xport(I dont want a modchip, or swap disc. I tried reading about modchips, I dont wanna solder it on) to get the Exploit, and the Exploit runs PS2 link, which communicates with my comp, while running a client so I can transfer files?

Posted: Fri May 28, 2004 12:39 am
by mharris
Madman wrote:So I need a Xport(I dont want a modchip, or swap disc. I tried reading about modchips, I dont wanna solder it on) to get the Exploit, and the Exploit runs PS2 link, which communicates with my comp, while running a client so I can transfer files?
Sure, whatever works for you.

Maybe I'll start an online business selling memcards with the exploit pre-installed ;-)

Posted: Sat May 29, 2004 8:17 am
by Madman
where do i get the Xport?

Posted: Sat May 29, 2004 10:20 am
by Oobles
I'm interested in your scheme implementation. Why did you pick sheme? What makes it a good language for games? Is scheme a scripting language, or does it compile to bytecode of some kind?

And because I'm always interested in looking to see new stuff to write in news, are you going to release it. :)

Oobles.

Posted: Sat May 29, 2004 3:08 pm
by mrbrown

Posted: Mon May 31, 2004 2:39 pm
by mharris
Oobles wrote:I'm interested in your scheme implementation. Why did you pick sheme? What makes it a good language for games? Is scheme a scripting language, or does it compile to bytecode of some kind?

And because I'm always interested in looking to see new stuff to write in news, are you going to release it. :)
Scheme is a functional language, very similar to Lisp (from which it was derived). It is much lighter than Common Lisp -- there are only a handful of predefined symbols. Scheme, like Lisp, is an interpreted language, (although there are "compilers") and makes no real distinction between programs and data.

The lexical structure is about as simple as it can get :there are four tokens, ( ) ' and " plus comments, whitespace, numbers, and identifiers. The syntax is even simpler: everything is an atom or a list.

It's a good "scripting" language for games because of its versatility and simplicity. It's used in several products, ranging from games like Jak and Daxter to tools like the GIMP ("script-fu" is Scheme). In a game, it could be used for mission design, AI definitions, data, etc. Like I said above, the code/data line is very blurry.

To answer your other questions as well as I can:

Why did I pick it? It seemed like it would be interesting and maybe useful, although I must admit that the use of it by Naughty Dog (Jak etc.) was the main motivator. I have a vague dream of it being one component of a yet-to-be-written game engine, but one thing at a time...

Will I release it? Absolutely -- when it's closer to being useful. The implementation I'm using is SCM, which is released under the GPL, so my release, if/when it happens, will be covered under the same terms. Don't worry, I'll let you know :)

m

Posted: Thu Jun 03, 2004 11:53 am
by soks
I HONESTLY think selling exploit memoery cards would be a good way for the site to raise money (I'm sure it would help the site out somehow).

Not to mention I would buy one NOW... as opposed to getting the whole linux/ps2 kit later...

Speaking of stuff... is it "wrong" of me to get a swap disk to do the mem-card transfter... I mean it is technically illegal is it not?...

Posted: Thu Jun 03, 2004 11:31 pm
by mharris
soks wrote:Speaking of stuff... is it "wrong" of me to get a swap disk to do the mem-card transfter... I mean it is technically illegal is it not?...
It's a grey area around here I guess. So long as you're not using for warez0ring I don't think anyone should have a problem with it. I bought it and used so I could run sjeep's exploit installer, and haven't used it since.

Posted: Fri Jun 04, 2004 5:09 am
by soks
Thanks mr harris... oh... have you seen lost in translation? heh... won't make that joke.

But yeah, I'd be too lazy to warez-it-up on console... too much effort for games I already have bought.

Ummm... buy swap disk... umm... am I crossing all fields of legality by downloading one? (can I even)... I just really wanna play w/ this stuff and I only have like 2 weeks left before I can't for a LONG TIME.

Posted: Fri Jun 04, 2004 10:15 pm
by mharris
soks wrote:Ummm... buy swap disk... umm... am I crossing all fields of legality by downloading one? (can I even)...
Wait... you want to download something, presumably to burn to a CD-R, that will allow you to boot from a CD-R? I think you're missing the point here ;-)

Swap Magic is a licensed developer, so they have the magic Sony special sauce that allows their disc to boot. Unless you have a modchip, your options are limited.

Posted: Sat Jun 05, 2004 3:10 am
by mr bob
since when is success-hk a licensed developer? hehe.. the technique they use is stolen from datel, which is in turn stolen from sony. early gamesharks used the boot sector from crazy taxi. they used the same technique on ps1 to make bootable unlicensed discs.

Posted: Sat Jun 05, 2004 11:27 am
by soks
O_O swap magic is licensed? if they're licensed then why would we bother w/ having to get around boot if they let us do it... err... I mean.

Crap.

I'll just go get PS2-Linux now... well as soon as this check clears.

Posted: Mon Jun 07, 2004 2:30 pm
by mharris
mharris wrote:
soks wrote:Swap Magic is a licensed developer, so they have the magic Sony special sauce that allows their disc to boot.
OK, so I was speaking without checking my facts first... I assumed that since their CD & DVD were bootable that they had paid their thirty pieces of silver to Sony, and were at least licensed developers. This may or may not be the case, I dunno.

I still stand by my original point -- there's not much sense in trying to download something, if you have no way to boot it in the first place...