I din’t expect to write homebrew for my Switch this early but it happen quite fast.
Have set a goal for my self to make some homebrew for al my modded consoles.
So I found my self installing DevKitPro on my OSX 10.14.6 Mac.
The installation was not that easy, but in the end I got the example files compiled.
Look at that nice build log:
What would borat say?
Just need to install everything by pacman -Sy ….
Check this pastbin to check what i have installed:
So after that, it was time for some “hello world” testing.
is it not a beauty 😀
Real “Hello World” screenshot (made in Vakantie park Aqua Delta I was bored)
After a few hours of copy and past work.
I made a hello world combining audio sdl and time example:
Used some of my ownmusicBartclub: music for the mind (freak sounds)
“Music for the Mind aka Helloween”
Now after some more googling and searching and I found a few homebrew sources to compile.
But sadly there where some broken Makefiles and because
I just started my journey into Switch develpement these things made my progress halt.
But in the end i made a nice small demo in SDL 2 to get me started.
I wanted graphics in my demo so i guessed I needed to learn some SDL2
Made a Icon 😀 for it
Here is a 30 second preview captured by the Switch of the Demo:
Like i said it’s just a few examples thrown together.
Audio SDL2 and SDL2 PNG example (not include in switch example pack link below)
And my own music again Electragazan sounds a bit 8 bit (a bit)
Binary Download build version for your Switch.
(Place .nro in new folder on you SD:/Switch/ folder)
I made this tutorial because there are some issues for pal users even Kazade could get it working 😀 His tutorial “Quote Kazade’s”
But for PAL, it gets even more complicated. Generally PAL modems are classed as Model B modems – they require a line voltage. However, I found that not many PAL users had had much luck getting connected, and when I tried, it didn’t work for me either, even with a line voltage inducer!
Here is a quick Tutorial to flash DreamPi on OSX
Get (DreamPi 1.7 Image) from the Kazade’s page: Or Download here!
Extract .7z using unarchiver or any extractor that can extract 7Z
Open Etcher: Load DreamPi-1.7.img If you inserted your SD check if it selected and press flash!: Wait until Flashed and Validating are done!
After write and check insert into Raspberry PI and give your PI power. (Don’t connect the modem!!)
DreamPi will start up on boot.
This is all you need todo if you want to boot in you Pi you can do it like this:
Once you booted your will be prompt a Login screen.
you can change the password: passwd
Extra info for Pal users:
I found that there is a strict boot sequence I need to follow.
If I do every thing in sequence it works every time.
I recommend to login SSH or via HDMI composted what ever monitor the log after boot!
using this command:
sudo tail -f /var/log/syslog
This is how you can follow the activity of your DreamPi: At this point the Pi is resolving domains. Good point to connect the modem: Reason for not connecting modem not at boot is because modem would not get found in DreamPI script.
If you wait until boot it works every time.
Now you wait until you see that DreamPi is ready for a connect from your Dreamcast:
At this point Dreampi is starting up:
Here is it starting Up your modem. Keep on waiting….
Here you can find your Dreamcast IP : default 192.168.x.98 if free (replace x with your mine 1)
And the OK gives you the signal to connect the Line Inducer for the extra 18V. Other wise you will get Line buzzy error
At this point your done on your Pi takes like 2 – 5 min I guess at the most.
After that I found out I could reconnect change games etc without any problems.
Leaving it connect for longer than a day I never got this to work. I have a feeling DreamPi crashes at one point.
Need to consult te logs for that….
OK lets continue with the tutorial.
Open the ports for your dreamcast so login to your router.
The easy way out is just open your Dreamcast ip 192.168.x.98 in your router using DMZ: Otherwise you need to port forward all ports needed for the different games
After this your done boot up your dreamcast and Quake 3 or Web browser to config your modem:
I used Quake this is my setup:
The requirement to dial that specific number was removed pre version 1.0 and now it will answer any number that’s dialed. DreamPi doesn’t require a specific username or password either. But you need to fill it in so go crazy!
Just a log entry when i connect to Quake 3 servers.
Dra600n of AirWalk Studios released his make of Fix it Felix jr. on genesis to the public a couple months ago.
It works on the Mega Everdrive. However some times some of the sprites are missing and you have to reset the game to make them show. Download link to the Rom
It works perfect on RetroPie.
[Marathon Mode]: Down Right A C Up Left A
[Blood Code]: A B A C A B B
[Extra Time]: A C C Right Up A Left
I Did some Rom Modding.. (again) 😀
Found this Rom made by Kaze Emanuar (Download)
Like the concept of it, but it was laking some extra textures..
So I added some more 2 make it more Bowsette like…
Still work in progress no release plannend for now.
So there is now Download link for now.
Here are some screenshot of the textures, I changed so far:
Some in game screenshots:
I use N64Rip to change the in game graphics: Good link for information on those textures, you will need a Hex Calculator to count the hex values together.
Did also some text editing changed Mario in to Bowsette.
Just started N64 Rom modding so still checking out the tools and most of them don’t work on OSX. (10.14.5)
Found a few that run well under playonmac.
Got bored and made a nice box art for it:
Credits for the nice background Pixiltales..
Needed for my Retropie 😀
Format the usb device in FAT32 (NOT EXFAT!), The usb device must have only one partition and the partition table must be mbr (MS-DOS (FAT32)), if the installer does not recognize the usb device use this program for format it: Download!
If you have connected the PSVR disconnect it, also remove the processor unit (PU), keep only the PS4 connected to the TV.
Go to the ps4 audio / video settings and set the resolution to 1080p.
Go to the system settings and disable Enable HDMI connection and Enable HDCP
Copy the bzImage, intramfs.cpio.gz and psxitarch.tar.xz files to the root of the usb device.
Connect the usb device in the ps4.
Connect mouse and keyboard
Open the web browser and visit this page https : //psxita.it/linux-loader to start the linux loader payload (the page can be kept in the cache if you want), for those who want to use the bin can take it from here: Download ! md5: d5e698431b577bb83638a06cdc0eaf33
After a few seconds the ps4 should reboot, wait until rescueshell appears
Write exec install-psxitarch.sh to start installing psxitarch linux
Wait, you should see a long list of files that are copied to the usb, at the end (after about 25/30 minutes) the distro should start automatically. If it doesn’t start, type exec start-psxitarch.sh
The distro does not require you to enter a username and password but you will need it if you would like to obtain root permissions:
CHANGE VRAM SIZE
The default payload you find on the https : //psxita.it/linux-loader page sets the Vram to 2GB, if you want to set it to 3GB use this payload to start linux: https : //psxita.it/linux-loader-vram3 , if instead you want to set it to 1GB: https : //psxita.it/linux-loader-vram1
You can use the payload you prefer at any time but during the psxitarch installation NEVER use the vram3 payload.
NOTE: RAM and VRAM are a single block, so the more vrams assigned, the lower the RAM. Do your accounts.
KNOWN ISSUES AND POSSIBLE SOLUTIONS
The distro should be compatible with all ps4 models but some monitors and TVs with strange resolutions could give problems and not display anything on screen, if you have the chance try another tv.
Graphics acceleration on ps4 pro is not yet fully exploited.
The internal HD per hour is detected only on the CUH-10xxx and CUH-11xxx models.
Vulkan RADV drivers are not stable yet (it will surely improve with time) in certain emulators / games they could give problems or perform worse than opengl, while in other better ones (see dolphin-emu).
The wifi and the bluetooth could in some cases crash (disappear), in the case reboot the PS4, if it still does not work disable the network and launch linux using the cache. NOTE: despite the fix on some versions of ps4 the wifi and / or the bt may not work, unfortunately we have not yet found a valid solution for all consoles.
In rare cases, USB devices (mouse, keyboard, …) may not be detected, in case the console is restarted
It could happen that after installation some items in the menu are missing, to correct the problem go to “Jwm Config” and select “Refresh Menu”.
We want to thank the people who have and continue to contribute to the development of Linux on PS4 (hoping not to forget anyone) Valentinbreiz , shuffle2 , flatz , CelesteBlue
The testers, who put up with us all these days, thanks for the patience guys;) Shim , antonwantstosleep , glitch, Astromatik, Anekcahap
And all the guys on the discrete channel Official Playstation 4 Scene
The USB device that you will use will be completely formatted, all the data will be deleted !!
Copy the initramfs, the bzImage, and the psxitarch.tar.xz file to the root of the USB device
Connect the USB device to the PS4, if you have connected other USB devices disconnect them (you must have only one USB device connected)
Start the exploit
Start the payload
Wait a few seconds, the screen should go black and then the rescushell screen will appear
Connect the keyboard, write: exec install-psxitarch.sh (the keyboard layout is set to the US, to write the dash you have to use the key‘
Wait until the distro is installed (you should see a long list of files that are copied to the USB), the installation time varies from USB to USB (if you are crazy enough to install the distro on USB 2.0 it should take about 25 minutes)
After the installation, the distro should start by itself and show you the login screen, if you do not start to write exec start-psxitarch.sh
(from the next restart the distro should start alone, you will not have to write anything)
My first ps3 that i modded i used my ipod touch to unlock it.
it was fairly easy to do below you can find a guide to setup the exploit.
This picture shows the mod in progress.
(How to install PSfreedom on iPod touch 1G)Updated PL3 payload
What you will need:
An iPod Touch 1g running 3.1.2 with blackra1n Vmware Player Ubuntu 10.04 Openiboot PS3freedom for ipod touch PL3 PS3freedom for iPhone 2g/3g PL3 Winscp iFunbox
OpenSSH (Installed from Cydia on your iPod touch)Alright, so I start here assuming you have the above.
Please note that 3.1.2 iPods with redsn0w may or may not work.Install ubuntu on your vmware player and start it.
First we will install OpeniBoot, get it from the link.
First, make a folder in your home directory named openiboot, move the files from the download above into the openiboot folder.Now, open a terminal (under applications, accessories) and type “cd ~/openiboot” without the quotes. Next, type “sudo su” (for the rest of this section, do not type the commands with the quotes around them). Enter your password that you use to sign in to linux (don’t be afraid if you don’t see yourself typing anything, its a security feature).Now then, we get to installing openiboot. Plug your iPod touch in with recovery mode (shows up as connect to itunes on your iPod). In VMware, go to the VM tab, go to removable devices, and look for anything saying apple device or iPod. On that, click “Connect (Disconnect from Host)”.Now, in terminal type “./loadibec openiboot.img3″. You should see openiboot come up on your iPod Touch. On your iPod Touch, click the top left button once, so you highlight Console. Now, click your home button. On linux, in terminal, type “./oibc” quickly after doing that last step. You should see the text on your iPod come up in the linux terminal. When you see “Welcome to OpeniBoot” type “install” into the terminal.
You should it start to install, so wait a few minutes until it is completed. Congratulations, you have installed OpeniBoot and finished the first part of the tutorial!
Now then, to get the exploit installed installed ( Don’t need ubuntu from now on)
Take the 2 files from the .gz(extract using 7zip) you downloaded (android.img.gz, zimage) and put them in a place you will remember. Next, open up iFunbox(in windows) and navigate to root file system/private/ and copy those 2 files into the var folder (root file system/private/var).
Make sure that the 2 files are exactly the same size as the files on your computer, as this is an annoying part to screw up on. Now that that is done, open up winscp. But before you can do anything with that, go to your iPod Touch and find your IP address (Press the blue arrow in Wifi Settings).
Now, copy the IP address into the winscp “host name” box. Then put the name “root” as username, and the password “alpine” as the password. Now, before connecting, change the file protocol to scp. Then, press login. It should take a moment, then display your iPod Touch directories on the right side of the screen.
Navigate to private/var and check that all 2 files are there. Now, right click each file, select properties, and change the permissions to 777 (make sure the first 3 rows of boxes are selected).
Turn your iPod Touch off, and then on, and OpeniBoot should come up. Select Android, and it should boot.
The actual exploit.
Switch of ps3 and then switch it off and on at the back.
Have the iPod connected to the PS3 with no other USB devices.
Click on Android on your ipod
When you see the Loading Firmware line, hit your power+eject
Press power then eject quickly.
Should boot up with the 2 new icons
Back in the hay days of the ps3RealPsDevContacted me to test his new ps3 tool.
Its a all in one tool for ps3 in a nice GUI.
He contacted me because i have been checking different build versions of eboot.bin files.
Results of scetool:
I shared a lot of info on forums like psx-scene.com ps3hax.com and i got his attention.
On twitter he asked me to beta test the final version of his tool.
I never beta tested a program my self and found it a great honor to do.
Over twitter i told him my results and he updated the bugs afterwards.
This was a great experions and found it very cool.
Below is the release info on psx-scene.com where you can download the tool your self.
He has also stated he plans on releasing the source code to his project at a later time, so others may continue the work he started. He has told me the reason he wishes to stop work on this project, is so that he can move on to develop other projects. Below you will find all 12 releases, all of which were released here at PSX-Scene first. Thanks PsDev!
It has been fun making this program, it has gone threw 12 awesome updates. I’m sad to stop working on it, but I’m happy to see what you guys can continue to make it into. I will release the source code, but not today, not in this thread. lets leave that for another time and focus on this release. This is also the most stable version, all features have been tested not only by me but other people too, (Dcnigma, Industerialcode) and all features work properly.
scetool v0.28 added
New keys added to keyset
New script for EBOOT resigning
New file system layout
Removed do it button
Now everytime you select a option from one of the drop down menu it does that option right away
Removed SELF tool
Every option has its individual message box completion of operation
There is a new way that the file system works. There is a individual folder for all the tools (PUP Tools, scetool, Core_os Tool ect) And when you want to use the tool just place the file in the correct folder and use the GUI. This system is cleaner and allows me to not use as much code.
there is a script in the scetool folder called fix. This script is what can be edited to your standards for the EBOOT resigning. I did this so if you want to sign for 3.41 ect or change compression or anything just edit the script and run the GUI no need for new update, much more efficient
FOR /F "tokens=1,2 delims= " %%A IN ('scetool.exe -i EBOOT.BIN') DO (
if [%%A]==[ContentID] set CID=%%B
scetool.exe --decrypt EBOOT.BIN EBOOT.ELF
rename EBOOT.BIN ORIGINAL_EBOOT.BIN > NUL
scetool.exe --sce-type=SELF --compress-data=FALSE --skip-sections=TRUE --key-revision=0A --self-auth-id=1010000001000003 --self-add-shdrs=TRUE --self-vendor-id=01000002 --self-type=NPDRM --self-fw-version=0003005500000000 --np-license-type=FREE --np-content-id=%CID% --np-app-type=EXEC --np-real-fname=EBOOT.BIN --encrypt EBOOT.ELF EBOOT.BIN
del /Q EBOOT.ELF > NUL
scetool -i EBOOT.BIN
There is no more “Do It” button, since I change the way the files are modified I thought I will just make every option a button it self, si when you click the option you like from the drop down menu it will do the operation
Note* After click may take a sec for the operation to start be patient.