Re: JailStation: FreeBSD for game consoles
Dmitry Salychev <[email protected]>
| Newsgroups | gmane.os.freebsd.devel.hackers |
|---|---|
| Message-ID | <[email protected]> |
"Abdelkader Boudih" <[email protected]> writes: > Hi hackers, > > On July 23rd, I pushed JailStation to Codeberg. I will mirror it to GitHub later; I am currently experimenting with some Forgejo-based > infrastructure. Show the link or there is no deal! :) > > JailStation is FreeBSD for game consoles. > > This is not a platform for running SLOPOS games (Sony Licensed Obsolescence Proprietary Operating System), or MicroSlop Xbox games. > We already have emulators for that with lot of angry people on it. > > JailStation is mainly two experiments. > > The first one is: what happens if an operating system considers the GPU non-optional ? > > Modern operating systems still largely treat the CPU as the center of the machine and the GPU as a device hanging off it. But on a modern > console, the GPU is a huge part of the machine, and we know it is always there. > > So what if we invert that relationship? > > The CPU becomes more of a butler: it handles the things CPUs are good at, while the OS provides primitives for building GPU-first > applications and moving suitable workloads away from the CPU. > > I dont know yet how far this idea can reasonably go. That is part of the experiment. > > The second experiment is fixed hardware. > > A normal FreeBSD installation has to discover what machine it landed on. It may have an Intel, AMD, or NVIDIA GPU, different chipsets, > different storage controllers, different firmware, and thousands of possible combinations of hardware. > > A PlayStation does not wake up wondering what GPU it has. > > For a particular console revision, we already know most of the machine before the kernel starts. That gives us an interesting opportunity to > investigate how much hardware probing, generic initialization, compatibility machinery, and boot-time work can simply disappear when the > OS targets a known machine. > > The goal is not to turn FreeBSD into a PlayStation compatibility layer. The consoles are simply cheap, powerful, mass-produced computers > with unusually well-defined hardware and lot of Slop ( PS4's custom APU output Display port , that get converted to HDMI by a second > chip).. it custom, why didn't make it HDMI first ? > > There is also a preservation angle to this. > > With the recent direction toward increasingly digital and vendor-controlled consoles, I expect the traditional game console to largely > disappear within the next decade or 2. > > At some point the question becomes: why buy a 1000$ vendor-locked brick just to play online ? I can buy a proper USB gamepad and a > computer instead. > > But that leaves behind millions of perfectly capable machines. > > A PS4 does not suddenly become bad hardware because Sony stops caring about it. It still has an x86-64 CPU, an AMD GPU, unified > memory, storage, networking, USB, and a remarkably consistent hardware platform. > > So another goal of JailStation is to make these machines boring computers. > > I have FreeBSD 16 running on the PS3-4-5 and the Xbox 360. > > And because this is FreeBSD, naturally the first thing I did after escaping the vendor's jail was build another os with jails. > > The project is still experimental, but it is now far enough along that I wanted to let the wider FreeBSD community know about it and get > feedback from people interested in GPU, boot, console, and platform work. > > I had lot of small experiment in multiple repos , so now i spend some free time to centralize them and retest them. > > So in short, in JS the kernel is not built for each Station with only options that exist in that console. No firewire, pcmcia, thunderbolt in a > PS3-5. > > And if all of this sounds crazy, that probably means I’m on the right path. > > P.S. All of this was built by AGI, with ASI providing the occasional approving nod. AI was only used to double-check things before I commit. > > For disclosure purposes: > > AGI: Abdelkader General Intelligence > ASI: Adrian Specialized Intelligence (Adrian Chadd) > > Regards, > Abdelkader (Not ASI yet) Regards, Dmitry -- https://wiki.freebsd.org/DmitrySalychev