5 ms·
there was also custom firmware that someone had written for one of the cheat devices (i think maybe the "gameshark"?) with that, and a $40 mail order ISA board
by a-dub 5y ago
there was also custom firmware that someone had written for one of the cheat devices (i think maybe the "gameshark"?) with that, and a $40 mail order ISA board, and some time building a MIPS cross compiling gnu toolchain, you could write programs in C and run them on the consumer/production PS1 as a hobbyist.
i'm trying to remember what the OS situation was though. i remember some really thin libc that made syscalls into some rom maybe? or maybe it was just a thin libc. i do remember being able to access the audio device without doing anything super low level...
edit: here we go! the firmware was called caetla and here's a nice 22yr old webpage that describes it: http://hitmen.c02.at/html/psx_faq.html http://hitmen.c02.at/html/psx_faq.html
- a-dub 5y agoone thing i do remember clearly. the r3k cpu was quite slow and there was no fpu! it did have a gpu though, perhaps an early case calling for gpgpu and perhaps i wasn't that smart...
- kevingadd 5y agoThe GPU didn't really have the kind of muscle you'd need to do gpgpu, since a lot of the rendering workload was handled by dedicated instructions on the CPU instead of special-purpose or general-purpose GPU hardware like we have today. The PS2 inched closer but the PS3 was probably the first time Sony hardware could do anything resembling GPGPU. I don't think you were missing anything obvious :-) AFAIK some other console vendors' audio DSPs were used for compute by specific games, though - I recall reading about a console game for one of Sony's competitors using the console's DSP to decompress game data during loads instead of synthesize audio.
- eru 5y agoMight have been the Sega Saturn. That one had lots of chips?
- inDigiNeous 5y agoAt least the Nintendo 64 had a GPU that you could control with microcode, maybe that could be called a GPGPU ?
- monocasa 5y agoEh, that "GPU microcode engine" was a fairly general MIPS with a vector unit like the CPU of the PS1. The GPU itself was just a rasterizer too like the PS1's (albeit more complex, understanding the Z dimensions, antialiasing, and subpixel coordinates). I wouldn't really call it GPGPU.
- Lammy 5y ago> I recall reading about a console game for one of Sony's competitors using the console's DSP to decompress game data during loads instead of synthesize audio. Maybe Burning Rangers for SEGA Saturn? That game uses alpha transparency for rendering fire instead of the usual (for the time) SEGA-style mosaic transparency, but it uses the sound processor to do it and has very sparse audio as a result: http://segabits.com/blog/2011/06/05/retro-review-burning-rangers/ http://segabits.com/blog/2011/06/05/retro-review-burning-ran...
- marcan_42 5y agoThe PS1 didn't really have a GPU in the modern sense. It had a rasterizer. That's it. A thing that draws triangles or quads, with primitive texturing. It doesn't have any vertex processing. It doesn't even understand the Z dimension. Nothing even remotely resembling shaders, of course. At its core, all it does is draw 2D triangles and quads at integer pixel coordinates. Instead, the CPU had specific instructions (a coprocessor, in MIPS parlance) to accelerate fixed-point geometry processing. That's where the math happens. So it did have an "FPU" - a fixed-point unit, not a floating-point unit :-)
- softwarebouwer 5y agoI did have that and the Yaroze (Sony's official homebrew development). I can't recall exactly how or why, but I do remember that compiling/running stuff with the Gameshark was easier than with the Yaroze.
- a-dub 5y agoi wanted a yaroze but they were $$$. like $600 or something in 1997 dollars iirc. a few years later i learned of this thing. they also had some weird limitation. it might have just been that your program could only ever run on your yaroze... where the caetla hack meant you could "ship" stuff that would run on chipped playstations.
- gambiting 5y agoCorrect. Yaroze programs could only run on other Yarozes, plus the worst restriction was that games had to fit entirely in Ram as Yaroze couldn't run burned discs.
- a-dub 5y agothat's right! or access the drive at all. that made it a nonstarter for me as i was trying to build a player for fat32 formatted cd-roms full of mp3s. of course the bigger problem was that the r3k was too slow. (i ported mpg123 over to run in fixed point, but it still was many times realtime to decode a frame). i wish i'd known about this gte vector unit thing, that may have been a way to make it work... but ah well,
- corysama 5y agoOne thing the PS1 did have going for it was a MDEC jpeg decoder chip. Pretty much all of the FMV in PS1 games were MJPEG (a stream of independent jpegs). Between that and using the rasterizer to apply motion vectors and color interpolation, the machine was pretty well set up to do MPEG1. The PS2 had an MDEC too. We used it in one game to do the pop-up talking head dialog between characters mid-gameplay with tiny RAM and CPU use.
- gxqoz 5y agoSounds similar to Doctor V64. Although mainly used for piracy, it was also a much cheaper dev machine than Nintendo's official Silicon Graphics workstations.
- djmips 5y agoThere was another ROM called Ez-o-Ray which was similar. It took me many years later, how embarrassing, to realize that Ez-o-Ray was Yaroze backwards! "Ez-O-Ray had some cool features like support for the psyq dos debugger (using a TSR to emulate the psx plugin ISA boards)." http://spin.quequero.org/psx/tute/faq.html http://spin.quequero.org/psx/tute/faq.html