Re: JailStation: FreeBSD for game consoles
"Abdelkader Boudih" <[email protected]>
| Newsgroups | gmane.os.freebsd.devel.hackers |
|---|---|
| Message-ID | <[email protected]> |
Thanks Adrian. I avoided putting the link in the original email because I was trying not to get spam-filtered. *Mark*, the Xbox 360 is doable. There are plenty of videos online explaining how to bootstrap the machine into Linux. The main difference here is replacing that last stage so it boots a FreeBSD kernel instead. The tree currently has support/work for: • Xbox OG , git reverted from FreeBSD’s own git history. • Xbox 360 , I ported the platform work by studying a Linux tree. • PS3, still present in the FreeBSD tree, but it requires particular models/firmware versions. IMO it should be yanked. *Tomek*, as I wrote in the first message, the goal is not to emulate Sony’s environment or break Sony’s encryption. That work has already been done elsewhere. What I actually want to experiment with is an architecture where the GPU is not considered optional. If the GPU is guaranteed to exist, then some classes of parallel work that we normally schedule on CPUs could be expressed as OS primitives and moved to the GPU instead. Consoles are interesting for this because the hardware is fixed: we know exactly which GPU is there before the kernel even boots. Also i have 40+ i bought from cybercafes during Covid. This would still be FreeBSD. I want to preserve the FreeBSD ABI, userland, jails, and the rest of the ecosystem instead of `inventing` an entirely new operating system just for the experiment and post it in /r/osdev. Any bug i find while digging in JSBSD, i will upstream it.. And i get free fixes by cherry-picking upstream. Maybe I’ll also add Rust to the kernel, just to demonstrate how bad an idea all of this really is. :D Just kidding about Rust. Regards, Abdelkader On Mon, 10 Aug 2026, at 21:26, Adrian Chadd wrote: > On Mon, 10 Aug 2026 at 12:01, Dmitry Salychev <[email protected]> wrote: > > > > "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! :) > > I found it with a quick web search! > > https://codeberg.org/JailStation/jailstation-bsd > > > > -a > > > > > > > > > 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 > > >