Live data from Hacker News

Playstation Architecture: A Practical Analysis

copetti.org

31–40 of 118 posts

Re: Playstation Architecture: A Practical Analysis

#31
The PlayStation was quite great: a straight forward to use machine with unparalleled (for its time) 3D capabilities. It took several years for PCs to catch up with its capabilities (the first two generations of 3D accelerators for PCs were crap, generally speaking).

It's quite amazing what developers were able to push with its hardware. There are some games running at constant 60 fps in high resolutions such as 512x240.

I think a "hidden champion" of the Playstation is the sound processor, the SPU, though. It can mix a massive 24 voices of CD-quality audio in realtime while adding effects like reverb. And the hardware support for ADPCM allows you to store huge amounts of audio data in its 512K of memory.

Re: Playstation Architecture: A Practical Analysis

#32
post #23

Earlier quoted context omitted.

yeah but modern programmers are also solving harder problems. Compare games from early consoles and today, the scope is vastly larger.

Like shipping Electron apps.

Electron solves a very important problem. It efficiently prevents those pesky Linux users from using your software. Most electron apps simply do not work with Wine.

Re: Playstation Architecture: A Practical Analysis

#33
post #23

Earlier quoted context omitted.

yeah but modern programmers are also solving harder problems. Compare games from early consoles and today, the scope is vastly larger.

Like shipping Electron apps.

Honestly dude, I know you are trying to joke and all but this just sounds incredibly rude. This minimization of someone else's skill is petty and absurd. Electron apps serve their purpose and have their place, hating on them will not get you anywhere.

Re: Playstation Architecture: A Practical Analysis

#34
post #23

Earlier quoted context omitted.

Like shipping Electron apps.

Electron solves a very important problem. It efficiently prevents those pesky Linux users from using your software. Most electron apps simply do not work with Wine.

Wait, what? The point of electron is to be cross platform, I never had an issue running an electron app on Linux.

Re: Playstation Architecture: A Practical Analysis

#35

For anyone interested how it was developing for the original PSX (and therefore under hardware constraints) How Crash Bandicoot Hacked The Original Playstation https://www.youtube.com/watch?v=izxXGuVL21o Immensely interesting video! "Old" hardware makes me feel so humble regarding what we have now. Hardware limitations back then really pushed developers towards novel approaches and solutions.

On the same note, I discovered this[1] yesterday. An explanation of why things looked a warped in PS1 games. The explanation actually blew my mind. I had heard the term zbuffer before but didn't really know what it did. [1] https://www.youtube.com/watch?v=x8TO-nrUtSI

He got lots of things wrong though: https://www.reddit.com/r/Games/comments/fnl0o1/why_playstati...

Re: Playstation Architecture: A Practical Analysis

#36
post #23

Earlier quoted context omitted.

yeah but modern programmers are also solving harder problems. Compare games from early consoles and today, the scope is vastly larger.

Like shipping Electron apps.

Writing Electron apps for me, as a matter of fact, brings back the time when one had to be hyper-mindful of CPU cycles, just like back in the day when I was writing Windows apps in C++.

Everything is going through the prism of "but how much will it cost in terms of performance? Granted, this should be the case for server software as well, but in case of clients, you don't know what ghetto shit your code will run on - you write for the worst possible case. Server specs are unknown.

Re: Playstation Architecture: A Practical Analysis

#37
post #34

Earlier quoted context omitted.

Electron solves a very important problem. It efficiently prevents those pesky Linux users from using your software. Most electron apps simply do not work with Wine.

Wait, what? The point of electron is to be cross platform, I never had an issue running an electron app on Linux.

It seems to me that the point of Electron is, in many cases, to leverage existing knowledge of client-side web programming paradigms and tools. Multi-platform support is just a bonus that comes with it.

Re: Playstation Architecture: A Practical Analysis

#38
post #24
post #16

Earlier quoted context omitted.

I think these programmers were forced to understand their subject matter much better than today. Say for (a silly) example you want the first 10 000 digits of Pi. It's pretty easy to just store that today. But back then you didn't just have to know what Pi is , you had to have the smallest program to calculate it that you can think of. Would be interesting to hear too how Tekken 3's coders managed to work with 2 MB o…

Which is why I find so ironic that many still think only languages like Assembly, C or C++ have a place in IoT on devices like ESP32. Sure, we used Assembly when performance was the ultimate goal, but also plenty of high level languages, including stuff like Clipper for database front ends. 512 KB with a couple of MHz are already capable of doing a lot of stuff, one just needs to actually think how to properly implem…

> Which is why I find so ironic that many still think only languages like Assembly, C or C++ have a place in IoT on devices like ESP32.

Short answer, Parkinson's law.

When I browse the Web, open my Windows File Explorer, open Photoshop, open Visual Studio, open just a graphical application that needs GPU acceleration, or do whatever thing that should not be an issue, I find that Parkinson's law very much applies.

https://youtu.be/GC-0tCy4P1U?t=1727

https://youtu.be/GC-0tCy4P1U?t=2172

https://twitter.com/rogerclark/status/1247299730314416128

Wtf. Did you see how fast VS6 started on a machine from almost 20 years ago. Today I get depressed whenever I need to open Visual Studio, and I don't even know that I use any more functionality that wasn't available 20 years ago.

Many many programmers (in my perception at least) are extremely dissatisfied with today's state of computing, and the reason why we got here is the popular opinion that we don't need to worry about performance.

Nobody should optimize representations of Pi or count CPU cycles by default. That's not the point. But if you claim that Java is always fast enough for example, then I think we're having a strong disagreement. It's partly confirmation bias and being unaware of vast parts of the landscape, but it's also a fact, that I couldn't name you a complex GUI written in Java with satisfying ergonomics.

Re: Playstation Architecture: A Practical Analysis

#39
post #15

Spyro looked a lot better without the textures IMO

Spyro without textures and only gourand shading looks like every mobile game from 2009-2019. From the examples it looks like the textures in Spyro were mostly about hiding all the ugliness around the edges from the straight gourand shader output, aside from the characters.

I think Spyro is one of the best examples of Gouraud shading mastery on the system. The textures are there to add detail, in fact they had a basic LOD system for the environment where they swapped textured models with gouraud shaded models using the same tint for objects far away.

The skyboxes were rendered as well as meshes and then shaded, and they still hold up today from an artistic point of view: https://imgur.com/gallery/vocZw

Post reply on HN