PDA

View Full Version : PSP Quake 1 ver. 1.0



jurajstyk
November 10th, 2007, 19:07
Release by jurajstyk

This is a port of ID Software's Quake 1 to the PSP.
Based on PSP Quake port by Peter Mackay and Chris Swindle.

Developed and tested on PSP with firmware version '3.40 OE'.

Features
--------

Working:
- Music playback trough MP3 implemented with MAD audio library (can be switched on/off from options menu)
- Software and Hardware rendering.
- Single player game
- Sound
- Save/Load
- Console commands
- Command line params (through 'quake.cmdline' file)
- Multiple screen resolutions in software rendering (trough command line params)
- User made maps loading (from console or command line params)
- User made mods loading (through command line params)
- Demo recording and playback (from console)
- On Screen Keyboard

Known issues:
- Some mods or maps might not work due to memory constrains or might not work correctly
- timerefresh command disabled in hardware rendering (stability issue)
- Some maps require raising 'r_maxsurfs' and 'r_maxedges' to render correctly in SW client
(can be done from command line or console)

See readme file for details and installation instructions

Download and Give Feedback Via Comments

dark heart
November 10th, 2007, 22:09
thanks! your the best!

michael chan
November 10th, 2007, 22:21
Nice Job!

When im on hardware rendering. my weapons dont render properly. my gun looks like a weird messed up polygon. u may want to fix that on ur next release (if ur making a next realese)

oh yeah.., can u add strafing to the analog stick? so analog stick would be move forward and backwards and strafe left to right? in options u would be able to disable analog strafe or enable it ^_^..)

thx!, gj btw

psman
November 11th, 2007, 00:06
quake for psp!!! outragous!!!

jurajstyk
November 11th, 2007, 02:07
When im on hardware rendering. my weapons dont render properly. my gun looks like a weird messed up polygon.

Try removing ms2 files (they may be corrupted) from glquake directory that is located inside ID1 directory . They will be automatically generated again on next start.

michael chan
November 11th, 2007, 02:29
Try removing ms2 files (they may be corrupted) from glquake directory that is located inside ID1 directory . They will be automatically generated again on next start.

ah nice, i can see my single barrel shotgun =D!

is there somehow a way to make me strafe with my analog? like my analog would be strafe left and right and move forward and back instead on turn left and right and mover forward and backwards?

btw, thx

jurajstyk
November 11th, 2007, 03:32
is there somehow a way to make me strafe with my analog?

One possible option is to use JoySens kernel plugin
which allows to swap input from d-pad and analog
nub (if strafing is configured on d-pad then you should be able to strafe with analog).
JoySens works in quake but only in version that runs in user mode.

Aryn
November 11th, 2007, 06:38
I am definitely impressed by this piece of homebrew.

This version of Quake for the PSP has MP3 playback, something I have been desiring for a long time, and the graphics actually look a little bit better than other versions of Quake for the PSP so far.

The only feature request I have would be the ability to select from multiple command line files, for the purpose of loading different mods and addons and stuff like that. I hope that somebody adds this feature in the near future.

Raziel-chan
November 11th, 2007, 12:38
Woo-hoo, awesome! Such clear graphics and so fast!

Just one question - is the lack of visual deformation underwater a flaw of glQuake itself, or this port?

cya
Raziel-chan

Neel
November 11th, 2007, 13:21
Can someone please explain to me which version to use?

From what I can gather, the graphics in HW rendering are better. What about user mode or kernal mode?

Raziel-chan
November 11th, 2007, 13:25
Can someone please explain to me which version to use?

From what I can gather, the graphics in HW rendering are better. What about user mode or kernal mode?

HW - runs smoothly at 222 mhz while SW sometimes staggers even at 333,plus HW has superb image quality.

KM - Kernel Mode - for use with the 1.5 kernel. If you have a fat PSP with kernel 1.5 available you can run both KM and UM versions.

UM - User Mode - for kernels 2++. If you have a fat psp on the newest 3.71 m33 firmware and you didn't install the 1.50 addon, then use this. Use this as well if you have the slim PSP.

cya
Raziel-chan

jurajstyk
November 11th, 2007, 14:25
Just one question - is the lack of visual deformation underwater a flaw of glQuake itself, or this port?

glQuake did have 'underwater warping' but it just did no look very good (you could see some ugly gaps between polygons)

Neel
November 11th, 2007, 14:43
Thanks a lot. :)

Quake now looks so much nicer. When I compare it to the old psp Quake, I wonder how I managed to play it. Will try the mp3 feature later.

jurajstyk
November 11th, 2007, 14:49
Can someone please explain to me which version to use?

From what I can gather, the graphics in HW rendering are better. What about user mode or kernal mode?

If you could run all versions then I would recommend using user mode with HW rendering.

In user mode it is possible to access kernel mode plugins like JoySens which are unaccessible in kernel mode.

HW rendering is faster and looks better however it use some memory as texture cache which means that internal quake heap is smaller.
As a result of this some mods will only run in SW rendering because they need more heap memory than standard quake.

Raziel-chan
November 11th, 2007, 15:00
Ahh, so that's the case.

Anyway, I think that it should be pointed out in the readme that adding tracks and switching music on increases the requirements and that the game should be played on 333 mhz then to be smooth.

The game choked on a VBR mp3 with ABR at 136. While one such track was okay for the main menu, while the console was sliding up at the beginning of the starting level it slowed down to a one frame per second slide show while looping a distorted one or two second-long fragment of the track. After the console window disappeared it stayed that way.
After conversion to 192 kbit CBR it's fine, but, still, to be smooth it has to be played on 333 mhz (HW version).

I don't know what causes it, but it somehow makes psp's own ghosting worse in some cases - maybe it's the game's refresh rate.

Sometimes shadows have Z-buffer problems - flickering, partially disappearing, e.t.c. So far it happened in one place only - the first episode, under the ledge where you can get by shooting the screen on the column by the first exploding box in the game.

Otherwise, it's near-perfect. I can't believe how smooth it runs with music on on 333mhz - even when a grenade explodes into your face it does not slow down, plus now it's real 480x272, not stretched 320x240.

Oh, one more problem - sometimes the games seems to have problems loading sounds when the music is on. Like when you pick up a box of amo - it halts for a fraction of a second while loading the sound. Are the levels loaded on the fly or preloaded?

Anyway, keep up the good work.

...

Are you considering updating the Hexen II port? I can't get it to run on my slim psp, even with eloader. Just asking :3

cya
Raziel-chan

bah
November 11th, 2007, 17:05
This is a fantastic port of glquake, thanks for making an old favourite look its best on the PSP. :)
HW_KM runs great on my 1.5 PSP.

r-complex
November 11th, 2007, 18:18
Holy $hit! Thanks Brother! Works Great! So Far.. So Good!

GPeter7
November 11th, 2007, 20:58
:thumbup: Super Nice Job! Awesome, super clear graphics A+, I am definitely impressed. :thumbup:

Glock Killer
November 11th, 2007, 21:34
Can you tell me how i can get the old light from
peterm?

i have created lots of maps but i donīt placed lights on the map.

with PeterMs engine you donīt need to place lights.

i have downloaded your source can you tell which file i must edit?

Be3f
November 12th, 2007, 10:41
OMFG WOW... I'm shocked... That's what i've been waiting for from PSP-scene for the last 2 years...
jurajstyk - Impressive work!!! Did you modify offical Quake V2 sources, or used Quake V3 beta as a base?

Be3f
November 12th, 2007, 10:59
P.S. It will become more the awesome, if you implement Ad-Hock support and add v-sync option! :roll:

jurajstyk
November 12th, 2007, 21:21
Did you modify offical Quake V2 sources, or used Quake V3 beta as a base?

I get the source from their svn repository on sourceforge site but judging from things that was already implemented it was 'Quake V3 beta'

jurajstyk
November 12th, 2007, 21:28
i have created lots of maps but i donīt placed lights on the map.

If you have a map without any lights then you should set 'r_fullbright' console variable to '1' which will make engine ignore precomputed lightmaps (which are not there in this case) and use uniform lighting instead

jurajstyk
November 12th, 2007, 22:15
Are you considering updating the Hexen II port? I can't get it to run on my slim psp, even with eloader. Just asking :3


I have recompiled Hexen II in user mode and it seem to run without problems on my PSP with fw3.40 OE.
So if you want to try running it on Slim PSP there is link
below (I dont have a Slim PSP so I cannot test if it works)

http://jurajstyk.host.sk/files/hexen2psp/PSP_Hexen_2_v1_1_UM_EBOOT_ONLY.zip

There is just eboot inside package so if you need the other files too they are here: http://jurajstyk.host.sk/download.htm

Raziel-chan
November 13th, 2007, 00:06
I have recompiled Hexen II in user mode and it seem to run without problems on my PSP with fw3.40 OE.
So if you want to try running it on Slim PSP there is link
below (I dont have a Slim PSP so I cannot test if it works)

http://jurajstyk.host.sk/files/hexen2psp/PSP_Hexen_2_v1_1_UM_EBOOT_ONLY.zip

There is just eboot inside package so if you need the other files too they are here: http://jurajstyk.host.sk/download.htm

Yes! It works perfectly (other than PSP's own analog nub wonkiness - if I want to aim precisely, it's too slow when turning around, while if I want to turn around fast, it's too imprecise to aim accurately :3). I haven't tested it with it sound, but, as of now, it works flawlessly.

Still, I'll probably play quake more due to the silky-smooth HW rendering o.0

Anyway, thanks, thanks and a thousand times thanks! You are the best!

cya
Raziel-chan

Be3f
November 13th, 2007, 10:02
jurajstyk some small bugs in HW build: skybox doesn't reload while changing a level (previous level's sky is renderen on all next lvls!) Little artifacts appear, when you swim in the water. Sprites have no bilinear interpolation.

3.XX HW kernel build, allocating extra 32MB heap from 64MB PSP-Slim RAM and using 3.XX fw modules (such as net modules, supporting WPA encoding for routers, instead of 1.5 fw net modules) seems to a good idea!

Is there any chance to increase heap size? PSP-phat has 24 MB user-RAM partition, of cource boot files eat some memory, but you allocate only 18-19Mb total memory?

Oh, and i can only imagine Hexen II with HW rendering on PSP... :rolleyes:

Huge thanks after all!!

Be3f
November 13th, 2007, 12:24
How about the analog nub tolerance and acceleration options in the next release? Take a look: http://emergencyexit.untergrund.net/2007/07/advanced-button-management-in-quake-2/

float calcInput(unsigned char axis, float speed, float tol, float acc) {
float t = ((float)axis / 128.0f) - 1.0f;
if(t == 0.0f) {
return 0.0f;
}
float a = fabs(t);
if(a < tol) {
return 0.0f;
}
a -= tol;
a /= (1.0f - tol);
a = powf(a, acc);
a *= speed;
if(t < 0.0f) {
t = -a;
} else {
t = a;
}
return t;
}

jurajstyk
November 13th, 2007, 17:27
jurajstyk
skybox doesn't reload while changing a level

Is there any chance to increase heap size? PSP-phat has 24 MB user-RAM partition, of cource boot files eat some memory, but you allocate only 18-19Mb total memory?


Yes the sky texture is not reloaded (that's bug)

I guess some of the available memory is taken by loaded modules. With SW version i could get to use slightly over 20 MB memmory but HW version would not run above 19 MB (Maybe it's because Graphic Chip uses some part of it for caching)

MDave
November 14th, 2007, 18:58
Hi jurajstyk, excellent work on finishing off the hardware version port! I've been trying to compile your source code, but have been getting these errors:


In file included from ../quakedef.h(266) ,
from battery.cpp(25) :
../psp/video_hardware.h(22) :22: error: psptypes.h: No such file or directory
../psp/video_hardware.h(161) : error: 'ScePspFMatrix4' does not name a type
battery.cpp(35) : error: 'scePowerGetBatteryLifePercent' was not declared in thi
s scope
battery.cpp(36) : error: 'scePowerGetBatteryChargingStatus' was not declared in
this scope
battery.cpp: In function 'void quake::battery::check()':
battery.cpp(41) : error: 'scePowerIsBatteryExist' was not declared in this scope

battery.cpp(48) : error: 'scePowerGetBatteryLifePercent' was not declared in thi
s scope
battery.cpp(49) : error: 'scePowerGetBatteryChargingStatus' was not declared in
this scope
battery.cpp(71) : error: 'scePowerGetBatteryLifeTime' was not declared in this s
cope
make: *** [battery.o] Error 1

Thats when I run the build_hw_km.bat file.

I'm also using the PSPDev Environment for Win32 by xorloser, any ideas? Do you have a special setup, or use an updated sdk inside of pspdev?

EDIT: Hmm, it seems to compile fine in cygwin, strange :P ignore this post!

frukc
November 16th, 2007, 15:25
sorry for stupid question, but could not solve this by my own - where i have to put my mp3's so they can be played in quake? :confused:

Raziel-chan
November 16th, 2007, 22:13
sorry for stupid question, but could not solve this by my own - where i have to put my mp3's so they can be played in quake? :confused:

The 'readme.txt' file supplied with the game is named like that for a reason... Read me... I compel thee to read my black and white lettery glory...

MP#s go in <gamedir>/mp3, where <gamedir> is the directory where you have the eboot file and mp3 is a subdirectory within it.

cya
Raziel-chan

Be3f
November 17th, 2007, 09:17
Yes the sky texture is not reloaded (that's bug)
Ok, how about sprites filtering? Seems like they slowdown the framerate much in the huge scenes with blowing grenades... (

I can't load any files (maps, demos, cfgs) from the console - works only via autoexec.cfg (HW_KM installed into PSP/GAME dir with 1.50 kernel in the recovery, firmware 3.40 OE-A)! Can only change settings.

About music - i've dumped Quake-CD into mp3 96Kb/s 44KHz... WOW it's like magic, unbeleavable!!! I can't untedstand, how could i play quake on PSP without music! But i don't understand one thing: there are 10 tracks on the Quake-CD, so i've got 01-10.mp3s on the Memory Stick, but some Quake levels (eg: E1M6and E2M4) require file 11.mp3 Emm, sorry, WTF? o_O

Perfomance is extremely high! Timedemo demo1 results in 90,8 average FPS on 333 MHz! (closed "Quake V3 beta" with no lightmapping ran at 106,5 FPS - just a lil slowdown in Quake 1.0, but awesome graphics inprovement!) With music it gets 61,7 FPS - yes, framerate dropps down, but it is reasonable sacrafice for the huge atmosphere, Replaying compaign on the Nigthmare difficulty =)

jurajstyk
November 17th, 2007, 18:18
I can't load any files (maps, demos, cfgs) from the console - works only via autoexec.cfg

10 tracks on the Quake-CD, so i've got 01-10.mp3s on the Memory Stick, but some Quake levels (eg: E1M6and E2M4) require file 11.mp3 Emm, sorry, WTF? o_O


Loading maps and demos should work from console. (maps should be in id1\maps subdirectory and demos in id1 subdirectory)

Ex:
to play demo33.dem file placed in Id1 directory type:
timedemo demo33
or
playdemo demo33

to load map test1.bsp placed in Id1\maps directory type:
map test1

Sorry, the mp3 files should be actually named 02.mp3 to 11.mp3 since track 1 is actually a data track on original CD (It's written wrong in the readme because I assumed that data track would be as track 0 but it is actually as track 1)

O-bake
November 18th, 2007, 19:35
Can someone recommend sites where you can download new Mods or Maps?
I remeber I've seen some Mods that looked like whole new games a few years ago.
I'm not sure if these where Mods or just used the Engine or whatever.
Hopefully, someone can explain it for dummies ;)

Be3f
November 19th, 2007, 09:41
maps should be in id1\maps subdirectory and demos in id1 subdirectory
S
Of cource i put maps in the right folders and can load them from the autoexec.cfg, but the same commands (e.g. map test1) don't work in the console! (says "can't load maps/test1.bsp" or something like this) Have no idea why...


Sorry, the mp3 files should be actually named 02.mp3 to 11.mp3 since track 1 is actually a data track on original CD
Oh, thanks, i see... Another mistake in the readme: MP3 folder must be in the root of the Quake-PSP dir, not in the id1 ;)

=================================

I've made a new PIC1.PNG (using Quake boxart) and edited ICON0.PNG, added SND0.AT3 (small part of the Metallica - Nothing Else Matters) and recompiled Hardware Kernel EBOOT with no kxploit (single EBOOT, no second dir with %). That's how it's displayed in the PSP XMB:

http://img150.imageshack.us/img150/3633/q1pspsy3.png

Download the EBOOT here (http://files.filefront.com/PSP+Quake1+HW+KM+Be3fsEdinrar/;9084196;/fileinfo.html)

If you like this EBOOT-art jurajstyk, include it into the next release ;)

jurkevicz
November 19th, 2007, 13:36
very nice indeed.

jurajstyk
November 19th, 2007, 20:36
Of cource i put maps in the right folders and can load them from the autoexec.cfg, but the same commands (e.g. map test1) don't work in the console! (says "can't load maps/test1.bsp" or something like this) Have no idea why...


Was it Couldn't spawn server message?
It seems that for maps inside pak files name included after map command must have correct case.
map start would work but
map START will result in Couldn't spawn server maps/START.bsp

Top rows in OSK are lowercase and bottom rows are uppercase letters.

Be3f
November 21st, 2007, 13:10
It seems that for maps inside pak files name included after map command must have correct case.
map start would work but
map START will result in Couldn't spawn server maps/START.bsp

Top rows in OSK are lowercase and bottom rows are uppercase letters.
Oh, that's it, i'm dumb, thanx again! ;)

How about the Ad-Hock in the next release? :rolleyes: It was already implemented in the Q-PSP V2 by PeterM & CSwindle and you've also implemented it into your Hexen-II PSP port! :thumbup:

Ingame (GUI or console) cmdlines/mods loader could also be excelent, if possible...:confused: :rolleyes:

da1writer
November 22nd, 2007, 10:57
Could someone tell me how to add a "file" in order to add command lines. TxT file isn't working, so what type of file do I need to add and to what directory?

EDIT: Nevermind, I figured out how to do it.
For those who want to know, here's the steps to take.

1) Go into your computers start menu (click on Start bar/button) and go into All Programs=>Accessories=>Command Prompt (different folders)
2) Once inside Command Prompt, type in copy con quake.cmdline and press enter
3) Now on the next line add any command line you want from the readme file provided in the PSPQuake folder. I wanted to up the speed to 333 mhz, so I typed in -cpu333 and pressed enter.
(Note- Add as many command lines you want, just keep following step 3)
4) Once you finish adding all your command lines you wanted, hold the control button (ctrl button on keyboard) and the letter z (also on keyboard). Press enter and the file will be saved wherever the command propt said it would (mine is defaulted to look in directory C:\Documents and Settings\da1writer).
5) Copy the file into the main PSPQuake directory where the main eboot is at. Play game and you will see the command line options you did are working!

Hope that helps a few people out...

Be3f
November 24th, 2007, 10:00
http://www.dcemu.co.uk/vbulletin/showthread.php?t=80087 - Psp Slim Optimized build/sources from Cpasjuste



Oh and here's a temporary fix for the player skins in multiplayer (dosn't use the color's set in the options, but better then the garbage that's usually seen.)

In video_hardware_main.cpp, in the R_DrawAliasModel function:
Code:


change this line:

if (currententity->colormap != vid.colormap/* && !gl_nocolors.value*/)

into:

if (currententity->colormap != vid.colormap && 0)
(http://forums.ps2dev.org/viewtopic.php?p=61240&sid=157e82ac54dbb964fb4445796032bd71#61240)

Are all textures cashed in the video memory, or in the main RAM? Now there is enough RAM for mipmaps, or even hi-rez textures with mips In PSP-Slim. Can anyone imlement the additional textures support to the Slim version, like almost all modern PCQuake-ports have? With 16 bit color (the best solution is imho GU_COLOR_5650 - perfomance/quality balance), higher resolutions and standart format (better TGA). I guess that 96x96 or 128x128 res (instead of original 32x32) for textures will be the best compromice (quality/memory/perfomance), and mipmapping will save high framerate...

I have a huge collection of defferent Quake-retexturing PAKs (and the unique compilation of the best textures from these packs - all 600+ textures are remastered very professionaly!) and wanna play around with them in Irfan View for Quake-PSPSlim, but i'm noob in C coding...

Murdock
December 1st, 2007, 11:44
Thank you for all the time you put into this very good port of Quake for the PSP!

It's really great and looks much better than the old software version of Quake ported by Peter (eventough I liked his very much and played a lot, too :) )

I don't want to be pushy, but when can we expect another release, maybe with the bugs fixed? :p

Will you implement Multiplayer Support? I haven't tried to play multiplayer, so I didn't even notice it's not implemented, but s/o here in the forum mentioned it ... So I assume there is no multiplayer support yet. Are you planning to implement it at all? I hope so :) I'd love to play some Quake 1 deathmatch at christmas :D

lusid
December 2nd, 2007, 10:42
Multiplayer does work but it is a little buggy.

What works:
Hosting games
Joining games hosted on a PSP
Joining games hosted on a PC
Searching for games on the local subnet
Joining a server by hostname or IP address

What needs work:
-Map loading:
sometimes the map never load, instead it will spew "--> client to server keepalive" into the console

-Switching Maps:
Switching maps takes a really long time, although pushing select will usually nudge it along

Whats missing:
A server browser (quake1.net and quakeone.com maintain server lists)

I have not tested server side mods yet. But if something with +hook works I'll be a happy camper.

Is there a running bug list? I know the sky issue, but thats minor. Sometimes when a map loads, I'll get a weird display. 4 small screens with screwed up colors, followed soon after by a crash. the water warp effect doesn't seem to work, but I usually turn that off anyway.

Be3f
December 11th, 2007, 10:34
Quake I: Arena 0.75 mod optimized for PSP (by lupus)
http://pspupdates.qj.net/Quake-I-Arena-0-75-mod-for-PSP/pg/49/aid/109397

dvdivx
December 20th, 2007, 18:39
KM_HW and UM_HW versions don't work for me. 3.71M33v3 on a fat PSP. Gives the following error on the PSP:

The following error occurred:
Hunk_Alloc: failed on 1544814608 bytes
Press CROSS to quit.

This error occurs right after game launch (it appears briefly).
I hope that homebrew doesn't turn into slim only since the slim has more memory. Just want to play quake NOT quake arena or MP.

bah
December 21st, 2007, 06:26
KM_HW runs beautifully on my fat PSP running firmware 1.5, it must be something to do with your custom firmware.

Is it set to use the 1.5 kernel to run homebrew? Have you got plugins running or something? It's as if there's not enough free ram.

jurajstyk: You are a bloody legend, I'm almost done playing all 4 chapters on hard. This is a truly fantastic port.

No_one_in_particular
January 7th, 2008, 10:46
Okay, I've read the readme, and thought I'd done everything right.
-added the PSP_Quake1_HW_UM folder to GAME
-added ID1 to GAME
-added MP3 to GAME

however, on launch I get this:
http://i5.photobucket.com/albums/y167/MorningGlory123/snap0002.jpg

To be honest a lot of this goes over my head, so I wouldn't know what's wrong with the config file if it came around for a cuppa...

sanosuki01
February 4th, 2008, 07:20
hi guys, new here... im wondering what should i put on my psp...

i mean, the quake files there are 4 of them...

im on 3.71 m33-3

and i dont have the original game...