This is a great overview. I don't remember having to put in padding instructions to prevent the pipeline issues mentioned here; maybe we just never ran into that. (I wrote pretty much all the R3000 code for Crash 1 and just do not recall problems like that coming up.) To us the elephant in the room limitation of PS1 is not mentioned here as far as I could tell from a quick read-through: it had no Z-buffer. This meant…
Architecture of the Playstation
11–20 of 116 posts
Re: Architecture of the Playstation
#12This is a great overview. I don't remember having to put in padding instructions to prevent the pipeline issues mentioned here; maybe we just never ran into that. (I wrote pretty much all the R3000 code for Crash 1 and just do not recall problems like that coming up.) To us the elephant in the room limitation of PS1 is not mentioned here as far as I could tell from a quick read-through: it had no Z-buffer. This meant…
I notice another game today on here using ClojureScript. Apart from a lack of tooling / engine, is Lisp better suited for gamedev?
Re: Architecture of the Playstation
#13The PSX did not age well. I noticed this at a friend house, while looking for something in the garage we came across his old system and games. We could not resist taking it back into the house and setting it up. The first thing I noticed was how long the load times were. And how noisy the machine was when reading and seeking on the discs. The next thing was the primitive texture mapping. Polygons 'jiggling' and 'spar…
Re: Architecture of the Playstation
#14The PSX did not age well. I noticed this at a friend house, while looking for something in the garage we came across his old system and games. We could not resist taking it back into the house and setting it up. The first thing I noticed was how long the load times were. And how noisy the machine was when reading and seeking on the discs. The next thing was the primitive texture mapping. Polygons 'jiggling' and 'spar…
The N64 has it’s own set of graphical limitations, but hold up a bit better to the test of time, IMO. At the time I know it was the school yard debate of which looked better and many felt the sharpness of the PS1 was preferred over the softer N64 image.
Re: Architecture of the Playstation
#15- A year ago, an old version of this article got shared in hn (https://news.ycombinator.com/item?id=22932134) and since then, google started positioning my site in their search results, and many forums started noticing the site. Yay!
- Fast forward, I graduated from uni, continued working on more articles in my free time, and with all the newly acquired knowledge, I decided to re-write the old PS1 article to make it much more informational and accurate - This is the one you are seeing right now.
- The rewrite wasn’t easy, though. Luckily, I found very kind and talented experts that lent me a hand, you can see them credited in the ‘Changelog’ at the end of the article. Curiously enough, we are still debating on Discord about some discrepancies regarding the main diagram shown in the article. LSI’s docs (the CPU manufacturer) and Sony’s docs contradict each other when they explain the layout of the CPU’s ‘main’ bus! But don’t worry about it, it doesn’t affect any statement in the article. It’s more of a need to have everything as accurate as possible.
Finally, I’m always open to comments, improvements, suggestions, anything really! I share the writings here (https://github.com/flipacholas/Architecture-of-consoles) to discuss improvements but you can also find my email in the site.
PS: The insight shared by developers in the parent thread is phenomenal.
Re: Architecture of the Playstation
#16This is a great overview. I don't remember having to put in padding instructions to prevent the pipeline issues mentioned here; maybe we just never ran into that. (I wrote pretty much all the R3000 code for Crash 1 and just do not recall problems like that coming up.) To us the elephant in the room limitation of PS1 is not mentioned here as far as I could tell from a quick read-through: it had no Z-buffer. This meant…
If you were using the GNU assembler, it automatically fills branch delay slots with nop instructions unless you prefix assembly code as using `.set noreorder`. GAS would also handle load delay slots as well.
Re: Architecture of the Playstation
#17Re: Architecture of the Playstation
#18This is a great overview. I don't remember having to put in padding instructions to prevent the pipeline issues mentioned here; maybe we just never ran into that. (I wrote pretty much all the R3000 code for Crash 1 and just do not recall problems like that coming up.) To us the elephant in the room limitation of PS1 is not mentioned here as far as I could tell from a quick read-through: it had no Z-buffer. This meant…
> This is a great overview. I don't remember having to put in padding instructions to prevent the pipeline issues mentioned here; maybe we just never ran into that. (I wrote pretty much all the R3000 code for Crash 1 and just do not recall problems like that coming up.) If you were using the GNU assembler, it automatically fills branch delay slots with nop instructions unless you prefix assembly code as using `.set n…
Re: Architecture of the Playstation
#19This is a great overview. I don't remember having to put in padding instructions to prevent the pipeline issues mentioned here; maybe we just never ran into that. (I wrote pretty much all the R3000 code for Crash 1 and just do not recall problems like that coming up.) To us the elephant in the room limitation of PS1 is not mentioned here as far as I could tell from a quick read-through: it had no Z-buffer. This meant…
Legend. I've heard the original GOAL code is floating around somewhere online. Is there any chance Sony ever releases it into the public domain? I notice another game today on here using ClojureScript. Apart from a lack of tooling / engine, is Lisp better suited for gamedev?
It was very powerful to be able to write code for critters and other animated objects in GOOL/GOAL because it was both conceptually simple and compiled into tiny amounts of code, which mattered a lot when you only had 2MB of RAM (half of which was video RAM if I recall correctly).
Re: Architecture of the Playstation
#20Truly excellent information, but the "tabs" that you have to click in order to read the next part is positively the worst UX I have ever seen on a static website.
I'm not a web dev though, so I don't mind switching to a better pattern. Do you know a better one?