![]() |
| Forums | Gaming News | Videos | Downloads | Today's Posts | Mark Forums Read | Chat | FAQ | Members List | Contact |
| ||||||
This is a discussion on Beginning Programming Tutorials for Windows within the PSP Development Forum forums, part of the PSP Development, Hacks, and Homebrew category; Step 1: Setting up MinPSPW. If you are really interested in Developing for the PSP there are a few steps ...
![]() |
|
|
LinkBack | Thread Tools |
|
|
#1 |
![]() The Cake Is A LIE
|
Step 1: Setting up MinPSPW.
If you are really interested in Developing for the PSP there are a few steps you need to take before you can actually start developing. First off download WinPSPw from: MinPSPw on SourceForge Download and run it. It should now look like this: ![]() The VS support is optional if you don’t use Visual Studio 2008 C++. Once that’s installed go into the command prompt (Start > Run > Cmd) If you are not familiar with it, this is a DOS type prompt were you can type commands are run programs. Now that you are in the Command Prompt type Code:
psp-gcc -v Code:
Using built-in specs. Target: psp Configured with: ../configure --prefix=/usr/local/pspdev --target=psp –enable languages=c,c++ --with-newlib --enable-cxx-flags=-G0 Thread model: single gcc version 4.1.0 (PSPDEV 20060507) Code:
make -v Code:
'psp-gcc' is not recognized as an internal or external command, operable program or batch file. ![]() You will need to start over as you/windows has done something wrong. ![]() Ok, if you can call psp-gcc and make correctly then you are ready to move onto the Next step PS: if you don't use VS you can skip the next step. The next step is not up yet but i will try and write it later tonight |
|
|
|
|
|
#2 |
![]() The Cake Is A LIE
|
Step 2 – Configuring Visual Studio to work with MinPSPw
Ok, in this tutorial I will show you how to set up your windows environment up with MinPSPw and how o configure Visual Studio properly! The previous tutorial is located at which you must have completed to do this step: http://************/psptut1 Ok when setting up MinPSPw you should have ticked the VS support if you use visual studio, if you didn’t and you still want to use VS you should reinstall MinPSPw First off open Microsoft Visual Studio 2008 C++ and click on `New Project` You will get a dialog like this: ![]() Click on Makefile project, this allows us to custom select the commands for Make, make clean, and so on. Make sure you ticked `Visual Studio Support` and type in Code:
vsmake Code:
vsmake clean Code:
vsmake clean && vsmake And Finally Code:
EBOOT.PBP Now your screen should look like: ![]() Now click next and untick `Same as Debug Config` and type all the same in as above. Then if you click finish YOU ARE DONE
Last edited by slasher101; 06-22-2009 at 03:35 AM.. |
|
|
|
|
|
#5 |
![]() |
LOL, that's funny, all this time I've been waiting for the next one, thinking it was the original poster say'n c-c-c w/e, and it was someone else. Then nis dude comes and just eye boggles!!!
GOOD ONE, nice game choice, too! Thanks Bro for the tutorial ![]() cept ain't much for me, ain't working wit dis vista entirely!
__________________
[CENTER][IMG]http://img507.imageshack.us/img507/5891/v2un6.jpg[/IMG] [URL="http://forums.qj.net/f-psp-development-forum-11/t-tutorialhow-to-load-eboots-in-5-steps-64080.html"]How to load Eboots in 5 easy steps.[/URL] [/CENTER] |
|
|
|
|
|
#6 |
![]() The Cake Is A LIE
|
Make sure on Vista your AntiVirus isn't affecting it and also on all EXE'S
RIGHT CLICK >> RUN AS ADMINISTRATOR |
|
|
|
|
|
#7 |
![]() |
you right, it started to work setting them "EXE's" to admin level, but it fixed one problem, then gave me another. I'm done, Nice work doe!
__________________
[CENTER][IMG]http://img507.imageshack.us/img507/5891/v2un6.jpg[/IMG] [URL="http://forums.qj.net/f-psp-development-forum-11/t-tutorialhow-to-load-eboots-in-5-steps-64080.html"]How to load Eboots in 5 easy steps.[/URL] [/CENTER] Last edited by Devun_06; 04-09-2009 at 06:13 PM.. |
|
|
|
|
|
#8 |
![]() The Cake Is A LIE
|
Devun about that PM, i can't send you another pm until you clear out your PM box.
-=Double Post Merge =- Step 3: What is a Makefile? If you have worked with *nix and source codes you will probably know the basics of a Makefile, if not, FEAR NOT! This Step is going down to the basics for a PSP Makfile. If you have a look at a basic one included with MinPSPw C:\ pspsdk\psp\sdk\samples\te mplate\elf_template\Makef ile. This is what it contains: Code:
TARGET = template OBJS = main.o INCDIR = CFLAGS = -O2 -G0 -Wall CXXFLAGS = $(CFLAGS) -fno-exceptions -fno-rtti ASFLAGS = $(CFLAGS) LIBDIR = LDFLAGS = EXTRA_TARGETS = EBOOT.PBP PSP_EBOOT_TITLE = Template PSPSDK=$(shell psp-config --pspsdk-path) include $(PSPSDK)/lib/build.mak Don’t worry though cause im going to go through each line with you. The first line Code:
TARGET = template what name it should give to your ELFfile (Elf’s, PBP’s and PRX’s are covered in the next chapter). If you were to change the targets name to Code:
TARGET = HELLOthisISaTEST Code:
HELLOthisISaTEST.elf Code:
OBJS = main.o Code:
MAIN.C .The line Code:
INCDIR = The next 3 lines you don’t REALLY need to know about, although I might go over them in one of my more advanced tutorials. The only other 2 lines that you need to know about are Code:
EXTRA_TARGETS = EBOOT.PBP And Code:
PSP_EBOOT_TITLE = Template Tutorial: File formats ELF File type --------------------------------------------- Lemme break it down for you. An elf file is basically just a plain executable file. Help within are the basic file coding, linkable libraries (most of them) and all the various game data used within the homebrew (normally) game. PRX File type --------------------------------------------- Ok this file type is a bit more complicated than a plain elf file. This is basically a Playstation Plug-in file. Its relocatable elf that can be stored anywhere memory allows it although with an elf file it can only be stored and executed at 0x88000000*. Most times kernel functions** and libraries are put into a prx file for portability. These file can be dynamically linked with programs and are much like Window’s DLL files. PBP File type --------------------------------------------- This type is the hardest to get the grips on. Basically a compiler (psp-gcc) uses the main c file from your program and compiles it into an ELF, which is just the skeleton for a program, you can’t run these on current firmwares (3.XX kernel). Then prx-gen is used to create a prx file, it takes the elf file and adds some `meat` onto it. Then finally pack-pbp creates your PBP (homebrew program). It add’s all the images you see in the XMB (Cross Media Bar (vsh)) the sound you hear when selecting it, PARAM.SFO (which is a very important file). This library contains everything you need to create a homebrew game. PARAM.SFO -------------------------------------------------- I wasn’t going to do a section about anything else, but I think this is an important file. It is basically Keys that have a Value that is read by the FW to produce results These are the keys: 0: BOOTABLE VALUE=[0,1] 1: CATEGORY VALUE=[unsure] Could any devs that know PM me please. 2: DISC_ID VALUE=[region code for the game] 3: DISC_VERSION VALUE=[region version for the game] 4: PARENTAL_LEVEL VALUE[0-11] Level that is needed to be-able to play the game – default for homebrew games is 0. 5: PSP_SYSTEM_VER VALUE[1XX,2XX,3XX,4XX,5XX] Firmware version needed to play. 6: REGION VALUE=[psp region] 7: TITLE: VALUE=[psp title] Value that shows up in XMB -------------------------------------------------- *I think this is the right memory address, any developers that know send me a PM ** Kernel functions are functions that user hardware directly. And normally require elevated privileges. There, if anyone has any questions drop me a PM. The next tutorial should be on basic programming! --Slasher Last edited by slasher101; 06-22-2009 at 03:35 AM.. Reason: Added Next Step (3) |
|
|
|
|
|
#10 |
![]() ![]() Developer
|
Yes you can. However, if you want to use the C++ Standard Library, you have to link to it.
__________________
[Blog] [Portfolio] [Homebrew Illuminati - Serious Homebrew Development Forums] [I want to make Homebrew FAQ] [How I broke into the Games Industry] [Programming Book List] [Programming Article List] |
|
|
|
|
|
#11 |
![]() Pro Hacker
|
Nice guide man
__________________
Phat PSP 1004 TA-079 v3+Sony 16GB Mark II+Two Sony Softmoded Pandoras with 5.00 m33-6+1.50 kernel+5.01 patch+6.10 version.txt iPhone jailbroken with OS 3.1.2 PS2 Slim model SCPH-75004 + MC boot 1.8 Fujitsu Simens Amilo PA1510+2.5GB Ram+AMD Sempron 3400+ 1.8GHz+Windows XP My site My qj blog My guides Patch the 5.50/6.00 games to work with all FWs My CWCheat databases ![]() ![]() ![]() ![]() ![]() ![]()
|
|
|
|
|
|
#14 |
![]() Pro Hacker
|
Oh nice.
Thanks
__________________
Phat PSP 1004 TA-079 v3+Sony 16GB Mark II+Two Sony Softmoded Pandoras with 5.00 m33-6+1.50 kernel+5.01 patch+6.10 version.txt iPhone jailbroken with OS 3.1.2 PS2 Slim model SCPH-75004 + MC boot 1.8 Fujitsu Simens Amilo PA1510+2.5GB Ram+AMD Sempron 3400+ 1.8GHz+Windows XP My site My qj blog My guides Patch the 5.50/6.00 games to work with all FWs My CWCheat databases ![]() ![]() ![]() ![]() ![]() ![]()
|
|
|
|
|
|
#16 |
![]() The Cake Is A LIE
|
Nope :P
It's going to be on the different psp file types (PBP,PRX&ELF)
__________________
I hate those monkeys ZOMG!
-~Slasher~- ![]() |
|
|
|
|
|
#17 |
![]() The Cake Is A LIE
|
Writing the next one now, with definitely be up within 10 hours
EDIT: NEXT TUTORIAL UP
__________________
I hate those monkeys ZOMG!
-~Slasher~- ![]() Last edited by slasher101; 06-22-2009 at 03:37 AM.. |
|
|
|
|
|
#20 |
![]() The Cake Is A LIE
|
In fact, C/C++ was the initial programming language for PSP, what do you think the LUA interpreters are written in xD
/Slash
__________________
I hate those monkeys ZOMG!
-~Slasher~- ![]() |
|
|
|
|
|
#22 |
![]() The Cake Is A LIE
|
Wasn't planning on writing one. What do you want me to write about?
__________________
I hate those monkeys ZOMG!
-~Slasher~- ![]() |
|
|
|
|
|
#24 |
![]() The Cake Is A LIE
|
Yeah, i suppose i can. Or just look at some other tutorials.
__________________
I hate those monkeys ZOMG!
-~Slasher~- ![]() |
|
|
|
|
|
#27 |
![]() ![]() Developer in Making...
|
heh, Setting up a PSP SDK use to be a hell of a lot harder than this. Good tutorial
__________________
NEWMy New BLOG!NEW The Wentire Worls in two Sectors.... When did I get dev statz?Spoiler for my PSP homebrewReleases:
Spoiler for Great Quotes:
|
|
|
|
|
|
#28 | |
|
Join Date: Sep 2009
Real First Name: David
Location: new hampshire
Just Played: doom
Posts: 2
Trader Feedback: 0
|
Quote:
Sorry I am new to this forum and your last tutorial was very helpful I was able to follow through and have set up the basic application in vc++ |
|
|
|
|
|
|
#30 |
![]() The Cake Is A LIE
|
Yeah, you only really need cygwin on your pc if you need to compile programs that use autoconf etc.
__________________
I hate those monkeys ZOMG!
-~Slasher~- ![]() |
|
|
|
![]() |
| Tags |
| beginning , programming , tutorials , windows |
| Thread Tools | |
|
|