← Back to context

Comment by a-dub

3 months ago

notably sony also made a handful of "yaroze" units for hobbyist developers. you couldn't ship, but you could write, compile, run and i believe share within the yaroze community.

yaroze was outside of my budget, but thankfully there was another option, there was a commercial game cheat device that could be reflashed with a "caetla" rom which when hooked up to the parallel port on a pc, could be used to ship binaries over from linux. the gcc-mips toolchain worked a treat and there was a header file laying around that implemented the user space wrappers for making system calls into the in-rom kernel.

my fun exploratory project: porting the mpg123 decoder over to the psx1, thereby bringing mp3s to the living room. i was able to get it to decode one frame at a time very slowly on the r3000 (25mhz) cpu with no fpu, but didn't have the skill at the time to embark on an optimization project that maybe could have made use of the rudimentary graphics acceleration (it was some kind of limited integer math accelerator, iirc).

You didn't even need Caetla. You could do that straight-up with the original ROMs for some of the cartridge series (FCD), and X-Link from DOS (or, if you were prepared to get involved with a bit of spicy linux 2.3, bitbang the parallel port yourself from the /dev/ interface for it at the time, the protocol was really simple). You get a live memory monitor you can watch (made it really easy to make cheat codes or look inside stuff for fun), and you can write and debug anything you want - in many ways it was nicer than the official Psy-Q kit Sony adopted, I thought.

Except to be fair, I didn't have a C toolchain, but R3000 assembly language is really nice when you get used to the delay slot.

  • i guess you'd discover that protocol by playing with a yaroze/caetla/etc with some of of device listening in between and recording the words?

    never really got into using the parallel port as a cheap dio until building science rigs years later... (and some fun experiments with using it to do cheap adc when in college)

I wanted one of those things so badly. It inspired me to buy a used DECstation 5000 to get my hands on something with an R3000 CPU to try writing code for the CPU until I could hopefully someday get a Yaroze. That idea didn't really go anywhere though. Thinking that the DECstation was a useful step towards a Yaroze was probably only wishful thinking. I wish I still had the computer, but then there are a lot of things I wish I still had.

yeah, it's called the gameshark, for about $20. You could hook it up to your PC and hack on it, best of all the toolkits were Linux/FreeBSD. outside of SPIM, psx introduced a bunch of hackers to r3k and showed us that the future didn't have to be x86.

  • it was this whole exercise that convinced me to pick up a book on mips "see mips run" which was a first self-study deepdive into microprocessor architecture.

    fun times!