Good PS1 Homebrew

Discussion of development of software for any "obsolete" computer or video game system. See the WSdev wiki and ObscureDev wiki for more information on certain platforms.
Post Reply
User avatar
Nikku4211
Posts: 569
Joined: Sun Dec 15, 2019 1:28 pm
Location: Florida
Contact:

Good PS1 Homebrew

Post by Nikku4211 »

I have just installed UniROM v8.0.d and flashed it to my PS1 GameShark cartridge.

I've looked in the PSX-Place and I could find very little PS1 homebrew. Can anyone point me to some more cool PS1 homebrew games that I can burn (to a CD-R)?

I am not looking for emulators, as I prefer to play games on real hardware anyway.
I have an ASD, so empathy is not natural for me. If I hurt you, I apologise.
calima
Posts: 1745
Joined: Tue Oct 06, 2015 10:16 am

Re: Good PS1 Homebrew

Post by calima »

There isn't much. OrionSoft sells a couple, those aren't freely available. The older Net Yaroze games aren't exactly homebrew, but close enough.

A pain to develop for, and an inability to distribute games that run on unmodified consoles -> not much interest.
User avatar
Nikku4211
Posts: 569
Joined: Sun Dec 15, 2019 1:28 pm
Location: Florida
Contact:

Re: Good PS1 Homebrew

Post by Nikku4211 »

calima wrote: Wed Jan 06, 2021 2:01 am There isn't much. OrionSoft sells a couple, those aren't freely available. The older Net Yaroze games aren't exactly homebrew, but close enough.

A pain to develop for, and an inability to distribute games that run on unmodified consoles -> not much interest.
Don't those Net Yaroze games require a Net Yaroze PS1 to play?

If only there was some place online where I can find the OrionSoft games...
I have an ASD, so empathy is not natural for me. If I hurt you, I apologise.
Pokun
Posts: 2681
Joined: Tue May 28, 2013 5:49 am
Location: Hokkaido, Japan

Re: Good PS1 Homebrew

Post by Pokun »

Considering the Playstation sold better than the Nintendo 64 it's kind of strange that there are so little homebrew for it. The 64 is also supposedly very hard to develop for and it hadn't a good flashcart solution until the Everdrive came (the PS1 had tons of disc-swap tricks and pirate chips since back in the day), yet it has much more homebrew. It got both official and unofficial devkits as well.

I remember there was the Roll Boss Rush homebrew game, but that's about it.

Well Net Yaroze is homebrew using official tools, and there are a lot of it. Net Yaroze games loads from the memory card slot though (and must fit entirely in RAM), so I don't know what you must do to be able to launch them on a normal unmodified PS1. There are compilation discs with Net Yaroze games that can be burned though.
Some games like Xi was originally a Net Yaroze game that got a licensed release. It's basically the same game on a pressed disc but with added music on the CD.

Magic Castle is an action-RPG-roguelike Net Yaroze homebrew game that was recently released after 23 years since it started being developed. Looks very professional, but it was made by two people who later became professional game developers and are still working in the industry.
Oziphantom
Posts: 1565
Joined: Tue Feb 07, 2017 2:03 am

Re: Good PS1 Homebrew

Post by Oziphantom »

I would say the N64 is ultimately easier to develop for than the PS1, in some regards. The programmable pipeline stuff is a harder than fixed pipeline, but these days Shaders are common and once you set up a standard code set, not really an issue anymore.

The PS1 however has really tight memory limits, most people see "no FPU" as "No I don't want to", dealing with fixed point is a "learning curve". Poly models have to be really low res, the will wobble and look garbage. The CPU is not very powerful so you will need to focus on optimization a lot vs the far more powerful N64 CPU. Disc streaming is a pain and you need to put time and effort into disc optimization and packing data into shared groups so you can load without it taking forever, vs the N64s just point to ROM and go. You can probably get away with C++ more on the N64, you can do it on the PS1 but really wouldn't recommended it, while the N64 depends on the game, might not be a deal breaker. PS1 model format is quirky, the whole machine is a Kutaragi special, its a SPC on steroids BBR included so the audio system is "interesting".
User avatar
Nikku4211
Posts: 569
Joined: Sun Dec 15, 2019 1:28 pm
Location: Florida
Contact:

Re: Good PS1 Homebrew

Post by Nikku4211 »

Pokun wrote: Wed Jan 06, 2021 6:59 am I remember there was the Roll Boss Rush homebrew game, but that's about it.
It seems our definitions of 'good' are not congruent with each other. uwu

Saw a video of the gameplay. Didn't like it. Not really into boss rush games, and I'm definitely not into half the game's fullscreen animations.
Pokun wrote: Wed Jan 06, 2021 6:59 am Well Net Yaroze is homebrew using official tools, and there are a lot of it. Net Yaroze games loads from the memory card slot though (and must fit entirely in RAM), so I don't know what you must do to be able to launch them on a normal unmodified PS1. There are compilation discs with Net Yaroze games that can be burned though.
Some games like Xi was originally a Net Yaroze game that got a licensed release. It's basically the same game on a pressed disc but with added music on the CD.
They load from memory card? I really need to write this down somewhere.

And some publishers really just took some Net Yaroze games and put them on a disc with minimal additions? Hmm... I think there's a word for that involving digging something up and putting it somewhere else...
Pokun wrote: Wed Jan 06, 2021 6:59 am Magic Castle is an action-RPG-roguelike Net Yaroze homebrew game that was recently released after 23 years since it started being developed. Looks very professional, but it was made by two people who later became professional game developers and are still working in the industry.
I just burned that game, and I couldn't get it to work on my softmodded UniROM-equipped PS1. Maybe it's because the memory card I used was full, or maybe UniROM just isn't compatible with Net Yaroze, I'm not sure. I have to try it with an empty memory card next time.

Turns out when the menu loads the game and then boots me back to the menu, I actually have to load the game again, and then it'll work.

What da fadda fakkeen fak?

And when I booted the game, I heard some weird white noise or something that went on as long as I was on the title screen. From the way the sound fades out, I think this is actually some SNES-style pitch modulation going on, as I am aware that the PS1's audio system is just an S-DSP+.
Last edited by Nikku4211 on Thu Jan 07, 2021 7:38 am, edited 1 time in total.
I have an ASD, so empathy is not natural for me. If I hurt you, I apologise.
Pokun
Posts: 2681
Joined: Tue May 28, 2013 5:49 am
Location: Hokkaido, Japan

Re: Good PS1 Homebrew

Post by Pokun »

Good homebrew is a luxury you won't find on most systems except the more popular homebrew systems (like NES and Game Boy). IMHO it's exciting just to get arbitrary code to run at all on the system, especially one that uses the hardware features (like 3D in the case of PS1).


The PS1 can't boot programs from the memory card like the PS2 can (which is exploited by Free MCBOOT). I don't have a Net Yaroze and don't know the details, but it supposedly comes with a dongle device that you use to hook up the computer to the memory card slot with so that you can load your creations to your PS1's RAM.
You need the dongle + serial cable, the Net Yaroze PS1 and the Net Yaroze disc to do this, so I'm not sure this can be exploited for homebrew booting on a regular PS1.
The disc only works in the Net Yaroze version of the PS1, but I guess it would work with the usual region/backup workarounds, as it's just a PS1 disc with its own region code (SCEW instead of SCEI/SCEA/SCEE). If someone reproduced the memory card dongle, maybe it could be done without the official setup.

Since a Net Yaroze game has to fit in RAM there's not much room for PCM sound. When releasing Xi they just added Red Book audio to fill the CD I guess. The game itself is very small since it was developed entirely on the Net Yaroze and must fit in RAM. I don't know if it won some contest or something and got published. It apparently sold very well. I have a copy and it was dirt cheap (Japanese version).



BTW while PS1 homebrew are few, Pocketstation homebrew are much more numerous. They include a number of very useful tools, such as the Pocketstation BIOS tool (view ID and dump BIOS among other things), Rewrite ID (can change the ID to anything you want, useful for some games like FF8 that uses the ID) and Pocketstation Save Manager (manage save files in the memory card memory directly on the Pocketstation).
http://onorisoft.free.fr/retro.htm - Has some of the above homebrew. Also has tools and PS1 homebrew.
https://w.atwiki.jp/pocketstation/pages/25.html - Japanese site with Pocketstation stuff.
Pocketstation is also very cheap nowadays, and is used by some English games such as FF8 and Saga Frontier 2.

I upload homebrew to a Pocketstation simply by using a PS2 and Free MCBOOT via a USB dongle. I used Sony's official Playstation 3 Memory Card USB-adapter to install Free MCBOOT on a PS2 memory card. That seemed to be the easiest way to enable PS2 homebrew at the time, and allows me to backup PS1 memory cards as a bonus.


Oziphantom wrote: Wed Jan 06, 2021 9:26 am I would say the N64 is ultimately easier to develop for than the PS1, in some regards. The programmable pipeline stuff is a harder than fixed pipeline, but these days Shaders are common and once you set up a standard code set, not really an issue anymore.

The PS1 however has really tight memory limits, most people see "no FPU" as "No I don't want to", dealing with fixed point is a "learning curve". Poly models have to be really low res, the will wobble and look garbage. The CPU is not very powerful so you will need to focus on optimization a lot vs the far more powerful N64 CPU. Disc streaming is a pain and you need to put time and effort into disc optimization and packing data into shared groups so you can load without it taking forever, vs the N64s just point to ROM and go. You can probably get away with C++ more on the N64, you can do it on the PS1 but really wouldn't recommended it, while the N64 depends on the game, might not be a deal breaker. PS1 model format is quirky, the whole machine is a Kutaragi special, its a SPC on steroids BBR included so the audio system is "interesting".
OK so the PS1 is also quite challenging. I guess the main reason it got more third party developers might have been Nintendo's monopoly on expensive cartridge production, while Sony had a much cheaper license fee. And not so much because the 64 was harder to develop for.
I'd really like to get into 3D someday and program both the PS1 and 64, but it's way too much for me to handle now.
User avatar
Bregalad
Posts: 8056
Joined: Fri Nov 12, 2004 2:49 pm
Location: Divonne-les-bains, France

Re: Good PS1 Homebrew

Post by Bregalad »

calima wrote: Wed Jan 06, 2021 2:01 am A pain to develop for, and an inability to distribute games that run on unmodified consoles -> not much interest.
Homebrew is easy to run on a barely modified PS1 with the disk swapping technique. The only modification needed (which is easily revertable) is to insert a match in a hole to make the console believe the cover is permanently closed.
I think this is actually some SNES-style pitch modulation going on, as I am aware that the PS1's audio system is just an SPC700+.
More likely a S-DSP+. The DSP part is very similar, with 24 channels instead of 8, and blocks of 14 samples instead of 8. However, there's no dedicated sound processor such as the SPC700.
Useless, lumbering half-wits don't scare us.
Pokun
Posts: 2681
Joined: Tue May 28, 2013 5:49 am
Location: Hokkaido, Japan

Re: Good PS1 Homebrew

Post by Pokun »

It should be said that forcing the disc to stop in the disc-swap technique is very bad for the drive. But yeah, there were certainly many more solutions for PS1 than for the 64 even back in the day. I friend of mine had burned discs and used a parallel-port cheat device to swap discs with. Much safer as it can stop the disc in software and there is no need for a match or spring at the lid switch. It wouldn't work with multi-disc games that didn't allow you to save in between though. So the FF games would work but not Metal Gear Solid.

The 64 on the other hand only had some rare cheat devices that I personally never saw back in its days.


For homebrew development a solution where you don't have to keep burning CD-R discs every time you want to test on real hardware would be better.
calima
Posts: 1745
Joined: Tue Oct 06, 2015 10:16 am

Re: Good PS1 Homebrew

Post by calima »

Bregalad wrote: Wed Jan 06, 2021 3:06 pm
calima wrote: Wed Jan 06, 2021 2:01 am A pain to develop for, and an inability to distribute games that run on unmodified consoles -> not much interest.
Homebrew is easy to run on a barely modified PS1 with the disk swapping technique. The only modification needed (which is easily revertable) is to insert a match in a hole to make the console believe the cover is permanently closed.
That is not viable (as a market). Telling casual gamers to do something that has high chance of breaking their console.
Pokun wrote: Wed Jan 06, 2021 5:22 pm For homebrew development a solution where you don't have to keep burning CD-R discs every time you want to test on real hardware would be better.
Those exist. PSIO and direct parallel cables with some action replay/etc.
User avatar
Bregalad
Posts: 8056
Joined: Fri Nov 12, 2004 2:49 pm
Location: Divonne-les-bains, France

Re: Good PS1 Homebrew

Post by Bregalad »

I have a pressed disk who allows me to swap safely without breaking anything. I think if a homebrew game was produced in sufficient quantities, a pressed disc with the correct security codes could be produced (instead of burned discs) and so no modification at all would be necessary.
Useless, lumbering half-wits don't scare us.
Oziphantom
Posts: 1565
Joined: Tue Feb 07, 2017 2:03 am

Re: Good PS1 Homebrew

Post by Oziphantom »

Pokun wrote: Wed Jan 06, 2021 11:36 am The PS1 can't boot programs from the memory card like the PS2 can (which is exploited by Free MCBOOT). I don't have a Net Yaroze and don't know the details, but it supposedly comes with a dongle device that you use to hook up the computer to the memory card slot with so that you can load your creations to your PS1's RAM.
No it uses the Expansion Port to transfer data, my guess is the memory card is used as extra "RAM" to hold the custom calls and transfer protocols etc.
You need the dongle + serial cable, the Net Yaroze PS1 and the Net Yaroze disc to do this, so I'm not sure this can be exploited for homebrew booting on a regular PS1.
The disc only works in the Net Yaroze version of the PS1, but I guess it would work with the usual region/backup workarounds, as it's just a PS1 disc with its own region code (SCEW instead of SCEI/SCEA/SCEE). If someone reproduced the memory card dongle, maybe it could be done without the official setup.
I think it has a custom boot ROM and encryption system that is not "standard dev kit". However I feel that making a new kit that uses custom BIOS etc would be much easier these days. Given we have flashable BIOSes.

But if I was to make a devkit today, I would use an ODE but give it USB transfer so you can upload an iso to it, and then use a "Game Hunter" or similar cart with provisions of putting a debugger system in your allocated 2MB somewhere and use the Hunter for PC communication.
Since a Net Yaroze game has to fit in RAM there's not much room for PCM sound. When releasing Xi they just added Red Book audio to fill the CD I guess. The game itself is very small since it was developed entirely on the Net Yaroze and must fit in RAM. I don't know if it won some contest or something and got published. It apparently sold very well. I have a copy and it was dirt cheap (Japanese version).
This seems to be a common Myth. ALL PS1 games had to fit in the 2MB of RAM. They may have removed Overlay support in the compiler, but you can download new executables from the CD-ROM and exec them. You can also download other files.

Oziphantom wrote: Wed Jan 06, 2021 9:26 am I would say the N64 is ultimately easier to develop for than the PS1, in some regards. The programmable pipeline stuff is a harder than fixed pipeline, but these days Shaders are common and once you set up a standard code set, not really an issue anymore.

The PS1 however has really tight memory limits, most people see "no FPU" as "No I don't want to", dealing with fixed point is a "learning curve". Poly models have to be really low res, the will wobble and look garbage. The CPU is not very powerful so you will need to focus on optimization a lot vs the far more powerful N64 CPU. Disc streaming is a pain and you need to put time and effort into disc optimization and packing data into shared groups so you can load without it taking forever, vs the N64s just point to ROM and go. You can probably get away with C++ more on the N64, you can do it on the PS1 but really wouldn't recommended it, while the N64 depends on the game, might not be a deal breaker. PS1 model format is quirky, the whole machine is a Kutaragi special, its a SPC on steroids BBR included so the audio system is "interesting".
OK so the PS1 is also quite challenging. I guess the main reason it got more third party developers might have been Nintendo's monopoly on expensive cartridge production, while Sony had a much cheaper license fee. And not so much because the 64 was harder to develop for.
I'd really like to get into 3D someday and program both the PS1 and 64, but it's way too much for me to handle now.
Nintendo insisted on 1million purchase upfront, my guess it was $ and not carts. Sony wooed developers with "we can do runs of 10,000 if you want". Which really took the risk out of development, but also made it shovel ware city.
Pokun
Posts: 2681
Joined: Tue May 28, 2013 5:49 am
Location: Hokkaido, Japan

Re: Good PS1 Homebrew

Post by Pokun »

Bregalad wrote: Thu Jan 07, 2021 3:00 am I have a pressed disk who allows me to swap safely without breaking anything. I think if a homebrew game was produced in sufficient quantities, a pressed disc with the correct security codes could be produced (instead of burned discs) and so no modification at all would be necessary.
What disc is it that you have?
Can the region code be encoded without Sony's equipment? Even if it could it wouldn't be region-free, and you would have to make a press run for every region.

Oziphantom wrote: Thu Jan 07, 2021 5:55 am
Pokun wrote: Wed Jan 06, 2021 11:36 am The PS1 can't boot programs from the memory card like the PS2 can (which is exploited by Free MCBOOT). I don't have a Net Yaroze and don't know the details, but it supposedly comes with a dongle device that you use to hook up the computer to the memory card slot with so that you can load your creations to your PS1's RAM.
No it uses the Expansion Port to transfer data, my guess is the memory card is used as extra "RAM" to hold the custom calls and transfer protocols etc.
Oh you are right, I misunderstood how it works. So you need the Access Card, the boot disc and the serial cable for it to work.

The only thing special with the Net Yaroze PS1 though, appears to be that it's region free and black. It allows all region codes SCEI, SCEA, SCEE and SCEW, but still requires one of them (unlike the professional development PS1) and therefore can't play CD-R discs. This difference lies in the MECHACON, everything else is like in a normal PS1. I know there are some PS1 games that checks the region of the BIOS ROM though, and locks up if it's the wrong one, so I guess it might not be 100% region free (unless it's one of the earlier BIOS versions that appears to slip through this check).

It sounds like the Access Card is a security thing (just like the SCEW region code of the boot disc). Sony didn't want people without a Net Yaroze to easily exploit it for piracy. There's nothing that says it wouldn't work on a normal PS1, but it could only be gotten by buying the whole kit.

Oziphantom wrote: Thu Jan 07, 2021 5:55 am
Since a Net Yaroze game has to fit in RAM there's not much room for PCM sound. When releasing Xi they just added Red Book audio to fill the CD I guess. The game itself is very small since it was developed entirely on the Net Yaroze and must fit in RAM. I don't know if it won some contest or something and got published. It apparently sold very well. I have a copy and it was dirt cheap (Japanese version).
This seems to be a common Myth. ALL PS1 games had to fit in the 2MB of RAM. They may have removed Overlay support in the compiler, but you can download new executables from the CD-ROM and exec them. You can also download other files.
You mean that Net Yaroze homebrew can request more data from the serial cable and therefore has virtually unlimited program size? I suspected so, but I can't find any info that confirms it. Even if it can't do that out of the box, I guess the homebrew program could upload more data manually.
I think everyone here knows that code on tape, disk or optical disc media normally requires to be uploaded to RAM before it can be executed by a CPU.



The only problem I have with the PSIO (besides compatibility with games), is that it requires a small mod on the console. The UniROM alternative seems like the most attractive alternative right now.
Oziphantom
Posts: 1565
Joined: Tue Feb 07, 2017 2:03 am

Re: Good PS1 Homebrew

Post by Oziphantom »

Pokun wrote: Thu Jan 07, 2021 8:27 am
Oziphantom wrote: Thu Jan 07, 2021 5:55 am
Since a Net Yaroze game has to fit in RAM there's not much room for PCM sound. When releasing Xi they just added Red Book audio to fill the CD I guess. The game itself is very small since it was developed entirely on the Net Yaroze and must fit in RAM. I don't know if it won some contest or something and got published. It apparently sold very well. I have a copy and it was dirt cheap (Japanese version).
This seems to be a common Myth. ALL PS1 games had to fit in the 2MB of RAM. They may have removed Overlay support in the compiler, but you can download new executables from the CD-ROM and exec them. You can also download other files.
You mean that Net Yaroze homebrew can request more data from the serial cable and therefore has virtually unlimited program size? I suspected so, but I can't find any info that confirms it. Even if it can't do that out of the box, I guess the homebrew program could upload more data manually.
I think everyone here knows that code on tape, disk or optical disc media normally requires to be uploaded to RAM before it can be executed by a CPU.
It has BIOS functions to load from Serial and also LoadCD and LoadExecCD. You can look up the manuals on archive.org, page 284? 9? something around there has it.
Post Reply