+  RHDN Forum Archive
|-+  Romhacking
| |-+  ROM Hacking Discussion
| | |-+  Policenauts for PSX almost in ENGLISH
Pages: 1 [2] 3 4 5
Author Topic: Policenauts for PSX almost in ENGLISH  (Read 2 times)
KC
Guest
« Reply #15 on: August 16, 2009, 01:01:15 am »

Some nice notes, but there does seem to be some confusion about the unsigned in some intruction names.
The term "unsigned" doesn't always mean that there's no sign involved. In fact, the addiu value always sign-extends to a full 32 bit word (thus addiu v0,0xFFFF = -1).
I have no idea why they chose to call it like that, but the unsigned here basically just means it won't cause an exception on overflow.
In other instruction, it actually does mean that it won't sign-extend, though. MIPS has a pretty weird naming scheme, the "likely" instructions in MIPS2 and on are exactly the same (likely = the delay slot will only be executed if the branch is taken).
slowbeef
Guest
« Reply #16 on: August 16, 2009, 01:08:03 am »

So just that I'm understanding it:  The delay slot gets executed after s jump - only if a branch likely returns true on a MIPS2?
KC
Guest
« Reply #17 on: August 16, 2009, 01:18:03 am »

Here's an example:

Code:
move v0,r0
beql a0,r0,Skip
li v0,1
Skip:

If a0 is zero, then v0 will be 1, it behaves like any other branch instruction in that case. But if a0 is not zero, then v0 will be 0, because the delay slot has been skipped.
All non-"likely" branches will always execute the delay slot.
Though that doesn't matter for PSX games anyway.
BRPXQZME
Guest
« Reply #18 on: August 16, 2009, 04:37:55 am »

Quote from: DarknessSavior on August 15, 2009, 10:25:01 pm
I'm very impressed. In fact, this guide has inspired me to want to learn MIPS. It's alot simpler looking than 65816. >.>

~DS
It’s simpler in some ways and more complex in others.

Good: MIPS is a RISC architecture. There are less opcodes to learn period, and instructions are constructed sooooo consistently. Disassembly is not a crapshoot: as long as you know it’s code, you know you’ve got the right code for what it is, too;

Bad: You will probably be unable to track all the registers in your head when reading code. Each one does special things and that helps, but ultimately there are up to 30 you might potentially need to keep track of (usually not at the same time, fortunately).

P.S. it’s a great tutorial. Two points of contention. One: Japanese has zero alphabets. What it does have is two syllabaries, and one logographic system. Two: The R5900, VU0 and VU1 are for the PS2 emulation, support for which obviously isn’t quite working in pSX (yet!). Three: The purpose of the ninja is to flip out and kill people.
Kitsune Sniper
Guest
« Reply #19 on: August 16, 2009, 01:28:26 pm »

Quote from: KC on August 16, 2009, 01:01:15 am
I have no idea why they chose to call it like that, but the unsigned here basically just means it won't cause an exception on overflow.
Crack.

We've had discussions about weird programming choices in Konami games in this forum in the past. Some people think that they did this to prevent people from hacking their games, which makes a bit of sense. This was common in the NES era, some games would just crash, behave oddly, or just freeze if you modified some graphic data or changed the text in the game.

Others, like me, think they mostly did drugs while programming. :p
rmco2003
Guest
« Reply #20 on: August 16, 2009, 01:40:46 pm »

It might've just been a bad compiler, didn't most if not all developers use C or C++ for developing on the PSX by this point?

It's either that or the compiler got mindfuck trying to work out what Konami's code was doing Tongue
slowbeef
Guest
« Reply #21 on: August 16, 2009, 02:57:01 pm »

Quote from: Rhys
I'm surprised they made it variable width - that doesn't happen a lot in Japanese games.

Believe it or not, out of all the dialogue in the game there is one scene - it has 12 lines - that are fixed width.  There's a whole different font file just for that one scene, no joke.  I have no idea why.  (I think they redid the scene for the PSX at the last minute.)

Quote from: KC
In other instruction, it actually does mean that it won't sign-extend, though. MIPS has a pretty weird naming scheme, the "likely" instructions in MIPS2 and on are exactly the same (likely = the delay slot will only be executed if the branch is taken).

Here's an example

Oh okay, now I get it.  Seemed weird last night for some reason.  Thanks!

Quote from:
One: Japanese has zero alphabets. What it does have is two syllabaries, and one logographic system. Two: The R5900, VU0 and VU1 are for the PS2 emulation, support for which obviously isn’t quite working in pSX (yet!). Three: The purpose of the ninja is to flip out and kill people.

Cool, good to know - thanks!  I'll edit the doc.

Quote from: Kitsune Sniper
Others, like me, think they mostly did drugs while programming. :p

Some of the shit in there was absolutely ridiculous.  It reeked of "deadline + intern" programming.  The end credits - which I've posted about here before - switch to 640x480 resolution... and I've no idea why since the graphics it uses are actually 320x240 and it upscales them to its new resolution.  No idea why.
rmco2003
Guest
« Reply #22 on: August 16, 2009, 03:06:20 pm »

It seems to me not only did they have poor programmers on the project, they also had highly segregated teams working on all the different parts of the engine with little or no communication between the teams about various things like how printing text and drawing graphics should be done and the formats data should be stored in, and in the end they just stitched it all together and hoped for the best.
butane bob
Guest
« Reply #23 on: August 23, 2009, 12:34:26 am »

So i hear it's coming out in a few hours time, Finally!

http://img199.imageshack.us/img199/4098/policenautsout.jpg
slowbeef
Guest
« Reply #24 on: August 23, 2009, 10:00:55 am »

You hear correctly. We're releasing the patch in one hour.
rmco2003
Guest
« Reply #25 on: August 23, 2009, 11:03:17 am »

I can't see the patch on the site - found a last minute bug or something? Tongue
slowbeef
Guest
« Reply #26 on: August 23, 2009, 11:35:22 am »

Nope.

http://policenauts.net/english/patch.html
RedComet
Guest
« Reply #27 on: August 23, 2009, 12:19:04 pm »

You have secured internet fame for life now. Tongue

Congrats! Cheesy
slowbeef
Guest
« Reply #28 on: August 23, 2009, 12:37:05 pm »

Thanks. I can't believe it's finally over.  I submitted the hack by the by.  Here's hoping 1.0 lasts awhile!
golden
Guest
« Reply #29 on: August 23, 2009, 06:53:59 pm »

Congratulations, that's an epic accomplishment! And the tech docs are a great read.
Pages: 1 [2] 3 4 5  


Powered by SMF 1.1.4 | SMF © 2006-2007, Simple Machines LLC