Psnee Modchip

0 views
Skip to first unread message

Ene Vinson

unread,
Aug 4, 2024, 6:55:33 PM8/4/24
to skidbotthankdem
ThePsNee modchip is a newer chip that has been under development during the last couple of years, and is still under active development. PsNee modchips should work with every version of the PlayStation 1. They can be made using many AVR processors, including the Arduino Uno, Arduino Pro Mini, ATtiny85, and ATtiny45. This guide covers everything you need to know about choosing, programming, and installing a PsNee modchip into your PlayStation.

Below is a list of all PlayStation 1 motherboard versions, along with the console model numbers associated with them. You can get a good idea of what board you have by looking at the model number underneath your system (something like SCPH-7501).


These chips fall into two categories, ATmega based chips, and ATtiny based chips. ATmega chips cost more, but allow for BIOS patching for SCPH-102 systems, as well as debugging for developers. ATtiny chips cost less, but lack those two features. ATmega chips are also considerably larger in size, making them more difficult to fit into a system when compared to the ATtiny chips.


Hello, I just ordered from you and succesfully modded my PsONE,

A tip for future installers, After soldering, my psone wasnt fully booting every time, the cd motor was spinning way too fast and not reading cds, what happened was that when I soldered the vias points, my wire went too long on the other side of the board and was touching the metal shield causing a short, after cutting the excess wire, no more issues!! excellent modchip!


Japanese systems past early SCPH-3000 systems have additional BIOS region locking. Meaning that even with a modchip you can only play Japanese region games. You either need to patch the games to be Japanese region, or swap the BIOS chip with an American BIOS chip.


Is this possible to replace PSIO in the future? The reader emulation has become so popular since it was introduced in DreamCast and I wonder if this could do the same in the future, without depending on PSIO


You have to compile the PsNee .ino with the Arduino IDE, and then take the .hex from the build output directory and flash that. You also need to disable the clkdiv/8 fuse (all the other default fuses should be fine).


I programmed the then-latest release of PsNee onto a Digispark clone board. Digispark boards are/were an Arduino-compatible platform that is based around the ATtiny85 microcontroller, and are fantastic pieces of hardware1.


Of course, they were eventually turned into a very cheap Chinese clone. I used to use them all the time for adding a bit of smarts to small jobs, but gradually moved onto Nano and Pro Mini clones when they became just as cheap, easier to get, and easier to work with.


This wiring technique really cleaned up the whole install, except I had to go back and desolder these wires a few times. The melted insulation and clumsy re-strippings were testaments to the fact that I still should have left more slack to work with. It would also have been nice to have a different pinout on the chip that would allow for a straighter wire routing. Still, I was fairly happy with this.


At first, the seller sent me an NTSC/U MM3. Makes sense: I live in North America, why would I want a Japanese modchip? After explaining the situation to them, they sent me an NTSC/J one instead, free of charge. Awesome!


I installed this new one in the messiest way possible, by bending the legs of the chip and globbing solder to fly wires everywhere. At this point, I was pretty much done with the project; a really far cry from the original Digispark clone implementation with nice tight wires.


After removing the disc drive and pushing the laser carriage around with my finger, I noticed that it would happily move outboard of the disc spindle, but stopped dead about halfway. This is because the laser carriage is crooked!


After looking closely at the drive assembly, I realized that the plastic rail everything travels in had popped out of the front. Probably, someone had dropped something heavy on this PS1 in the past, and the laser carriage could no longer move.


I do have an original PAL PlayStation 1 (SCPH-9002), and whileone can run homebrew, out-of-region games and dump the BIOS usingthe disc swap trick, this is a bit tedious, very timing sensitiveand might not be best for the discs or the CD spindle motor inthe long run.


These days, there's a neat open source project calledPsNeewhich allows to use an Arduino Pro Mini for a modchip. Whileprobably a bit overkill, it's a more educational project thanbuying and soldering in a MM3 modchip or something (not tomention the various PS1 emulators on PC and other platforms).


After adding the VCC solder point, labelling the wires and hookingit up to an Arduino Uno, flashing the PsNee firmware with theArduino IDE, it was time for a first risky test (don't do thisat home, or at least never touch the power supply parts and thespinning disc). The screwdriver was used to push down the CD-ROMdoor button so that the PS1 thinks the disc door is shut. I didnot yet have an out-of region PS1 disc (since then, my Japaneseversion of Wip3out arrived, and it works fine with the PAL console),so I had to resort to a burned disc:


This is how my setup looked. The Arduino Uno used there was onlya temporary solution, until the Arduino Pro Mini 3.3V arrived afew days later. For now, I decided to use the grill openings atthe bottom front of the console to bring the wires to the Arduinowhile being able to close the console (you can see the VCC solderpoint in this shot):


After a few days, the Arduino Pro Mini arrived, so it was time totest it, this time being powered from the 3.3V VCC pin from the PS1directly, no need for an external power supply (using a 3.3VUSB-to-Serial adapter to actually program the Arduino from the IDE):


That all worked fine (I did change the PsNee code to always send the"SCEE" signal to speed up booting, no need to make it "universal").So next up was soldering the wires to the Pro Mini (of course,removing the wires from the front grill outlets of the console sothat I could move all of it into the console):


For some reason (lazyness comes to mind), I didn't shorten the wiresenough, so there's quite some extra cable length I had to tuck away.I protected the connections on the Pro Mini with some black insulationtape, and some generous use of hot glue made it fit nicely and stayin place:


Then finally, after a successful final test if the in-case installationdidn't mess with the functionality, it was time to put the case backtogether, and test it in its final form. As a nice side effect, the LEDs(power LED and "activity" LED), are visible at the front when the consoleis on, which looks kind of neat, and the activity LED lights up when theinjection takes place (so easy to debug in case it breaks in the future):


I can trace the history of how I got involved in computers back to playing and modding video games. While I wasn't smart enough to mod game consoles when I was young, my dad wasn't bad at it. He modded my PS1 to have a little switch in the back that would allow it to play burnt games. They say the apple doesn't fall far from the tree.


Fast-forward to today and I no longer have my original PS1. I remember some games wouldn't load anymore and I had gotten a PS2. So why keep an old console? Turns out the answer is nostalgia and memories. You miss what you don't have anymore.


PSX modchips work by electrically stifling the output originally generated by whatever CD is inside the drive and then injecting a new, faked signal into the CD microcontroller. This causes the PS1 to believe that whatever disc is inside is legitimate and proceed to boot up.


The first "open source" modchip was reverse engineered by a guy named "The Old Crow". Surprisingly, The Old Crow specializes in electronic music synthesizers, not hacking video game consoles. It's from his modchip that most other modchips are derived from in some sense. He originally reverse engineered a commercial PS1 modchip that was designed by a western engineer working for a Chinese company.


MM3 is the most common PS1 modchip seen/used today. Its only real downside is that it uses an internal oscillator which can become out of sync with the oscillator used by the CD drive. If this happens you simply need to reboot your console to try reading again.


PSNee is an open source modchip originally written by TheFrietMan. Development on it was later continued by others and it appears to work rather well on all Playstation 1/PSOne models. Based on the code I believe it attempts to infer where the PS1 is in the boot process to begin injecting fake SCEX strings. Unfortunately PSNee is complicated to install. The provided diagrams are atrocious and nowhere near as simple as the available diagrams for MM3 and Mayumi. I worked out the pinout for the Attiny45 but I ended up going with MM3 and Mayumi because it's easier.


The breadboard has wires that are soldered to the correct MM3 points and then labeled with the corresponding pin number. By using this breadboard I can test modchips that I make much faster than soldering to the board over and over again.


I mostly created this as a proof of concept and I'm unlikely to maintain it very much. While I don't recommend using my modchip, I hope that the community adopts it and helps improve it. Despite being a dead console, the PSX community is fairly active.


With PsNeePy, you can remotely update the ESP8266 over WiFi, debug remotely, and also reset the chip easily. Having spent many hours working on the PS1 at this point, a more modern experience is quite refreshing.


Thanks to an anonymous friend for my PS1, Sharan for fixing my PS1, William Quade for the excellent diagrams, AssemblerGames for having good information despite not accepting me into the forum, and PSXDEV for answering some of my questions.


The modchips on a PS1 are various different devices that defeat the licensed media detection that the console has. Note that strictly speaking this isn't "copy protection" - it doesn't care what the data on the disc is, it just tries to ascertain if the media itself has a fingerprint that identifies it as a licensed disc. This is why swap tricks work - as long as the correctly licensed media is present during the test it can be swapped out for a copy later and the console will boot the media (later boot ROMs added another media test to the process, which is why later consoles need a double swap.

3a8082e126
Reply all
Reply to author
Forward
0 new messages