Page 1 of 31
UniROM 8.0.K - GDB Debugging, install/backup to/from memory card, homebrew from memcard, etc
Posted: April 27th, 2015, 6:09 am
by sickle
Been a long time coming, but here's the first tentative release of Unirom 8!
It comes as a BootDisc (green) and ROM (blue) combo.
Both have the import player, serial tools, hex editor, flappy credits, ROM flashing, etc.
Additionally the ROM has the nocash unlock and Caetla SxS support.
It's been entirely rewritten in C, so most of it's fresh.
Let me know if you spot any glaring issues.
Release page on Github (Download here)
https://github.com/JonathanDotCel/uniro ... 1/releases
The readme, also on github.
https://github.com/JonathanDotCel/uniro ... re_for_ps1
Source will be uploaded as I find time!
Please enjoy, take care, and wash your hands.
~sickle.
04_05_2020:
8.0.2b Released - see page 20 or github or readme.md for details!
----Version 6-7b notes----
► Show Spoiler
[center]The official UniROM program by Sickle[/center]

Okie, this is a pretty experimental build but fixes a bunch of issues. If you're wondering where to start, "R2" is the new boot sequence which auto-applies the unlock. Miniupdate: Just stuffed Squaresoft74's complete rom collection into the .zip!
Refresher:
~ Standalone - Use on smaller carts (E.g. 128k)
~ Caetla - Caetla+Unirom combined. * (Carts > 128k) *
~ Plugin - Has shendo's MCLaunch as an optional addon.**
~ NTSC - Use for Jap/American consoles. ***
Release Notes:
~ Built in Serial Comms
~ Removed embedded PSXSerial
~ Experimental .BIN upload (PC tool coming soon)
~ More room for plugins!
~ Improved shell boot sequence (uses BIOS's own boot routine, will warn if you have really old unsupported bios (working on it)).
~ Improved fastboot (displays status, fixes a few errors).
~ Cheat codes (CAETLA now has them and it doesn't crash).
~ Skipped many version numbers arbitrarily (I find weird things amusing).
Downloads:
PSXDEV.net: http://psxdev.net/downloads/unirom.zip (All versions)
Notes:
* Switch between them at the menu or with the switch atop the cartridge.
** You can add your own plugins to any rom that isn't already _PLUGIN.
*** This is a version of Caetla pre-set to NTSC. Use if for example XFlash supports writing to your EEPROM, but Caetla doesn't. (So it won't be able to save settings once it's on there).
Further Notes:
The patched BIOS boot is not working on the really old BIOS's. I could take a stab but without a console in front of me, you'll have to make do with one of the following boot methods: fastboot, CAETLA fastboot, CAETLA fullboot, CAETLA via CDROM menu.
Thanks/Credits:
(All original authors are credited in the .zip for their respective contributions/)
Orion_, Intar Technologies, Foo Chen Hon, Shadow, Jihad/HITMEN, Silpheed/HITMEN, Tim Schuerwegen, Barog/Napalm, Cat, K-Comms, Herben, Cybdyn, Type 79, Inc/Lightforce, nocash/no$, TriMesh, Squaresoft74 and all you lovely PSX Peeps.
Don't get me wrong, this was a lot of work, but as you can see overall it quite heavily relies on other peoples' software, so big a thanks to everyone.
~Sickle
---- Older Notes ----
► Show Spoiler

Minor Update to 0.44
-Fixed the bug whereby the cart would boot straight into XFlash if 4th bit of 0x379 was set. (Status port, pin 13 "Select" IIRC).
-Bundled a patched copy of XLink95 with the rest of the PC side software.
-Typos and some other things I can't remember.
http://sicklebrick.com/wp-downloads/sic ... se_044.rar

Minor Update to 0.24
Main Changes:
-PSXSerial auto run on SIO activity
-XFlash auto run with PIO activity
-Plugin System (add your menu stuff)
-OMG SO MUCH COMPRESSION! (smaller size)
-Stuffed the original FCD ROMs on the disk just incase.
Little Changes:
-Tidied up the code a bit
-Booting should be *way* more stable
-Tidied up the CD boot code a little
-Compressed a few bits for space
-Patched XFlash to have comms auto-enabled
-Stuffed the original FCD ROMs on the disk just incase.
Lol, that was a ridiculous amount of work to disassemble and replicate the SIO libs in ASM, but hopefully the convenience is worth it! As usual, massive thanks to everyone who's helped, given suggestions, let me use their software, etc. \o/
Thanks to Shendo for letting me use MCLauncher - this will likely be the focus of the next update!
http://sicklebrick.com/wp-downloads/sic ... se_024.rar
~Sickle
UniRom 0.2 Release stuff:....

Unirom Combines:
Major update: GUI, nocash unlock and fastboot.
While the first release likely wasn't very much use to anyone other than myself in developing the ROM, or kinda for the fun of it, here we're finally looking at something pretty practical and stable. I'll probably be turning my attention elsewhere for the time being, but hopefully now that it's under the 256k(caetla)/128k(standalone) marks it'll get some use =)
Unirom Combines:
-Caetla 0.34 (for catflap/etc over LPT)
-X-Flash (for X-Killer over LPT)
-PSXSerial 1.3 (for use with PSXSerial over serial)
-MYAR (Foo Chen Hong's third party AR style comms)
Load with Switch on = Caetla
Load with Switch off = UniROM screen
@ Caetla screen:
- nocash unlock is automatically applied for Eur/US systems
- disk autoswap is applied for Jap/Unknown systems.
@ UniROM screen:
- Triangle = Load xFlash (supports XLink/XKiller)
- Circle = Load PSXSerial (supports PSXSerial)
- Square = Boot to PSX BIOS (supports 24bit colour)
- Cross = Menu Selection
- L1 = Disk Swap
- R1 = nocash unlock
- Start/Select = Caetla
- Some other menu options and hidden button combos.
- UniROM screen (supports MYAR/PAR protocol)
Included in the download:
PC Side:
- PSXSerial 1.3 (Shadow & Jihad)
- MyAR (Foo Chen Hon)
- XKiller & GiveIO (Tim Schuerwegen & Sickle)
- CatflapIO (Intar Technologies & Orion_)
PSX Side:
- 224kb Full version with Caetla for Xplorer/PAR, etc
- (Plus a pre-saved NTSC version for XFX carts)
- 112kb Lite version without caetla (128kb carts)
- ISO With XFlash + All Caetla, All XPlorer, UniROM Lite, UniROM Full
(Burn with ImgBurn @ slowest speed, boot with swap trick or whatever)
Changes Since first release:
- New menu system!
- New 7pt font. (Brian Kent's 'HomeSpun')
- Added NoCash's Secret Unlock Codes.
- Added SmartCart/Ahoy/Zippy style disk auto-stopping.
- Crunched PSXSerial and XFlash (smaller .exes).
- Pal NTSC auto detection (UniROM, not Caetla)
- Standalone/Emulator/EXE/Caetla version
- Fixed a bug causing caetla to write over stored data.
- Fixed CD IRQ delay issues.
- Caetla now does auto-stop/nocash unlock.
- Fixed Caetla not booting from hard power on.
- Choose fast/full/comms boot regardless of switch state.
- Fixed BIOS booting
- Prepatched Caetla for PAL/NTSC systems.
- Separate menu for standalone version.
- Got the CD part of fastboot working. Yay.
Todo:
- Implement Xplorer style routines rather than GS (at the main screen, XFlash uses Xplorer anyway)
- Recompile MyAR with GiveIO or InpOut support.
- Work nocash unlock into regular BIOS boot.
Note:
As you might know, Caetla 0.34 can be a bit finnicky on the XplorerFX due to it using a different kind of flash mem.
Sometimes flashing while the switch is "on" and flicking the switch while resetting the PSX afterwards helps.
Either way there's an NTSC vesion in the download already. Woo.
Version 0.2 - May 2015 (filesize is smaller)
http://sicklebrick.com/wp-downloads/sic ... ase_02.rar
Version 0.1 - Apr 2015
http://sicklebrick.com/wp-downloads/sic ... ase_01.rar
Re: UniROM [Caetla+PSXSerial+XFlash+MyAR embedded]
Posted: April 27th, 2015, 10:53 am
by Greg
Awesome!

Re: UniROM 0.2 [new menu, nocash unlock, fastboot]
Posted: May 31st, 2015, 1:55 pm
by sickle
May 31st - Release 0.2
Re: UniROM 0.2 [new menu, nocash unlock, fastboot]
Posted: June 28th, 2015, 1:49 am
by Type 79
This is great

Re: UniROM 0.2 [new menu, nocash unlock, fastboot]
Posted: June 29th, 2015, 9:01 pm
by hethemlrijk
Amazing work, is it possible to modify and make a caetla + secret unlock only that would fit into the 128kb flash?
Re: UniROM 0.2 [new menu, nocash unlock, fastboot]
Posted: July 11th, 2015, 4:07 pm
by sickle
hethemlrijk wrote:Amazing work, is it possible to modify and make a caetla + secret unlock only that would fit into the 128kb flash?
Yes! It's planned to be bundled with the next UniROM release (saves me hassle of maintaining separate things), but I wanted to tidy up UniROM's boot sequence a little and have both roms share the same code chunk so yeah, there will be a 128k caetla one soon enough =)
Re: UniROM 0.2 [new menu, nocash unlock, fastboot]
Posted: July 13th, 2015, 8:17 am
by hethemlrijk
Great news!
I look forward to it. I will have to do some extra mods to my PSX ready for it such as dual oscillator mod

Re: UniROM 0.2 [new menu, nocash unlock, fastboot]
Posted: July 18th, 2015, 10:15 am
by sickle
Heheh, I've only got the modchip switch so far but that sounds pretty cool... never realised it was possible.
Probably won't be done this weekend - it's kinda time consuming but I don't want it to drag on too long either... so uhm.. soon!
Re: UniROM 0.2 [new menu, nocash unlock, fastboot]
Posted: July 26th, 2015, 2:13 am
by Aergan
Many thanks for this, it's breathed new life into my PlayStation & Xplorer FX Pro.
Via PSX Serial, I now have an easy route into my memory cards from modern OSes without the need to find my hardware with parallel I/O.
Eagerly awaiting future releases/improvements.
Re: UniROM 0.2 [new menu, nocash unlock, fastboot]
Posted: August 1st, 2015, 3:38 am
by sickle
Aergan:
If I had the time, would it be a good thing to have the ROM boot straight into PSXSerial when it detects comms?
Been toying with the idea of modifying XFlash similarly rather than continuing to implement upload features natively.
Re: UniROM 0.2 [new menu, nocash unlock, fastboot]
Posted: August 1st, 2015, 11:59 pm
by Aergan
sicklebrick wrote:Aergan:
If I had the time, would it be a good thing to have the ROM boot straight into PSXSerial when it detects comms?
Been toying with the idea of modifying XFlash similarly rather than continuing to implement upload features natively.
Personally, I would love to have an option for Shendo's
PS1CardLink (thus cutting out a few steps).
If you've got the time I sure don't mind testing any improvements.
Do you have any tips or options for getting action replay code packs registered? Currently I'm getting the black screen which I assume is down to no default pack installed or it's that silly version that attempts to load of a memory card.
Re: UniROM 0.2 [new menu, nocash unlock, fastboot]
Posted: August 2nd, 2015, 3:42 am
by sickle
Hmm, I see what you mean, yeah - that program and/or something to launch .exe's off a memcard would be pretty handy.
I'm kinda weary of stuffing too much more into the base ROM, but I was thinking of allowing the user to just append a .EXE at the end of the rom (little batch file should do it), then when you attempt to launch, the rom checks the first few bytes beyond it's own end.. if it detects the PSX .EXE header it continues, if not it just shows a messagebox "no plugin installed".
Tbh I think that would be the better and more future-proof option to allow customization... thoughts?
example:
-rename cardlinkto plugin.exe
-run addplugin.bat
-read instructions? lol
-generates unirom_and_plugin.rom
-"plugin" item on unirom now runs this .exe?
Edit:
Also, not sure what you mean about getting action replay code packs registered... you mean like the plaintext cheat code lists that you can upload to the card? Remember Caetla can't flash the rom on certain card types (unsupported flash mem chip)... could that be an issue?
Re: UniROM 0.2 [new menu, nocash unlock, fastboot]
Posted: August 2nd, 2015, 7:13 am
by danhans42
I upgraded my Xplorer to UniROM and just wanted to say what a cracking piece of work it is!
Last time I used cheats with Caetla I a 99% sure they are stored on a memory card. The plaintext stuff is converted using one of the caetla tools which you upload to the memorycard.
Re: UniROM 0.2 [new menu, nocash unlock, fastboot]
Posted: August 2nd, 2015, 9:17 am
by Shendo
sicklebrick wrote:Hmm, I see what you mean, yeah - that program and/or something to launch .exe's off a memcard would be pretty handy.
You can use
MCLaunch for that but there is a 112 KB size limit so it's not suitable for everything.
Re: UniROM 0.2 [new menu, nocash unlock, fastboot]
Posted: August 2nd, 2015, 3:45 pm
by sickle
danhans42 wrote: Last time I used cheats with Caetla I a 99% sure they are stored on a memory card. The plaintext stuff is converted using one of the caetla tools which you upload to the memorycard.
Heh, cheers man, but it really it's just a menu and lots of other peoples' work!
I totally forgot that Caetla stored cheats on the card though, that makes way more sense.
Shendo/Aergan -
Given that there's about 12kb left free on the standalone version (I always want this to fit on 128kb cards) and 24kb on the caetla version (228kb) I guess PS1CardLink is out of the question as a "core" program, but I could possibly put MCLaunch in there (as it compresses to ~17kb).
Wouldn't leave a lot of space for future code, but it's always an option if you're cool with it Shendo?
(I'd prefer to include the entire zip and a link to your thread too, just to make things easier on future people)
Standalone on 128kb cart = mostly full
Combined on 128kb cart = doesn't fit
Standalone on XPlorer = 128kb free
Combined on Xplorer= mostly full
Standalone on Xplorer FX = 256kb free
Combined on XplorerFX = 128kb free
This is why I was considering the plugin option, you'd just name PS1CardLink to plugin.exe, run "add_plugin.bat" or whatever, and upload "unirom_caetla_plus_plugin.rom"
That way you could have XLink,PSXSerial,PS1CardLink and MCLauncher all on the one cart, which seems pretty awesome actually =)
Re: UniROM 0.2 [new menu, nocash unlock, fastboot]
Posted: August 2nd, 2015, 9:29 pm
by danhans42
Caetla has an inbuilt facility to launch EXEs from the memorycard too. Not sure if its as good as what Shendo coded but it always worked well for me
Re: UniROM 0.2 [new menu, nocash unlock, fastboot]
Posted: August 3rd, 2015, 2:00 am
by Aergan
sicklebrick wrote:This is why I was considering the plugin option, you'd just name PS1CardLink to plugin.exe, run "add_plugin.bat" or whatever, and upload "unirom_caetla_plus_plugin.rom"
That way you could have XLink,PSXSerial,PS1CardLink and MCLauncher all on the one cart, which seems pretty awesome actually =)
That would be pretty awesome actually. At the moment i'm mostly using Windows and a script to launch PSX Serial to upload PS1CardLink when UniROM is placed into PSXSerial mode. It works well but it would be nicer to have a more native / faster to access option if possible.
I have two Xplorer FX carts; one FX "original" on the default 4.52 PAL ROM and the other FX "Professional" using UniROM 0.2. As far as I'm aware they are both the larger storage versions (and include VMS).
Are there any options for memory address searching/editing via UniROM/Caetla Xplorer ?
Many years ago I used to have an AR clone (translucent case, blue PCB) that was running a Caetla ROM and it didn't require the codes to be stored on the memory card. I had a friend with a different knock-off cart (white case, green PCB) that did require one and I don't believe we ever got it to work properly after he lost the card.
All the tools to manage Caetla AR/GS codes seem to rely on a communications card rather than the Xplorer parallel I/O?
Re: UniROM 0.2 [new menu, nocash unlock, fastboot]
Posted: August 3rd, 2015, 5:56 am
by sickle
danhans42 wrote:Caetla has an inbuilt facility to launch EXEs from the memorycard too. Not sure if its as good as what Shendo coded but it always worked well for me
Hahah, thanks - in all the time I've used Caetla, I never realised that!
It's awesome and all, but I think one of the hurdles for entry for people wanting to have a go at coding for the PSX is the complexity of it all. 10-15 years ago it was likely easier 'cause you'd have a parallel port or ISA slot for the comms card, but now I see a lot of people asking questions then giving up 'cause it's pretty tricky to find a single source of all the tools and hardware to get up and going quickly (i.e. before losing interest). So I'm really intent on having a standalone 128k version of UniROM that's as usable as possible - i.e. comes with its own recovery disk, can be reflashed by itsself, and offers both serial/parallel comms.
I get the feeling it'd be easier for someone with an old generic 128k cart to get something built with Unirom+PSXSerial than to build a Freewing and flash Caetla or other kinda card replacement.
(especially with a lot of those 128k carts having disabled/removed DB25 connectors)
For those reasons really, I think it'd be pretty nice to include MCLaunch if Shendo was up for the idea - there's only a few KB left and you can do a fair amount with the space on an MC!
Aergan wrote:
That would be pretty awesome actually. At the moment i'm mostly using Windows and a script to launch PSX Serial to upload PS1CardLink when UniROM is placed into PSXSerial mode. It works well but it would be nicer to have a more native / faster to access option if possible...
This is something I've really been wanting to look into actually...
Somehow, the Xplorer carts all let you do live in-game cheat engine style searches while the game was running, and I've not gotten to the bottom of this yet (or how the cheats are actually applied!). My best guess for the moment is they install a memory hook on a function that's prettymuch guaranteed to be called (GPU wait/update?) and then resume normal execution?
It seems you're working on something that's pretty cheat heavy right now, so I could suggest switching over to an actual Xplorer rom if you're able to use the parallel port. You could use xlink (
http://www.psxdev.net/forum/viewtopic.php?f=60&t=746 ) for the searching/testing, X-Killer
http://www.psxdev.net/forum/viewtopic.php?f=60&t=392 ) for flashing, uploading and dumping and stuff (X-kIller works with XPlorer rom and XFlash software alike), and there are tools to upload your cheats from a plain text file.
I really do want to look into that, but for the time being 0.3 is focused on adding the plugin idea, fixing the fastboot a little and general cleanup of the source - then maybe remove some of the MyAR routines in favour of just triggering XFlash, and seeing if it's possible to launch PSXSerial without interfering.
Re: UniROM 0.2 [new menu, nocash unlock, fastboot]
Posted: August 3rd, 2015, 8:17 pm
by Aergan
sicklebrick wrote:
This is something I've really been wanting to look into actually...
Somehow, the Xplorer carts all let you do live in-game cheat engine style searches while the game was running, and I've not gotten to the bottom of this yet (or how the cheats are actually applied!). My best guess for the moment is they install a memory hook on a function that's prettymuch guaranteed to be called (GPU wait/update?) and then resume normal execution?
It seems you're working on something that's pretty cheat heavy right now, so I could suggest switching over to an actual Xplorer rom if you're able to use the parallel port. You could use xlink (
http://www.psxdev.net/forum/viewtopic.php?f=60&t=746 ) for the searching/testing, X-Killer
http://www.psxdev.net/forum/viewtopic.php?f=60&t=392 ) for flashing, uploading and dumping and stuff (X-kIller works with XPlorer rom and XFlash software alike), and there are tools to upload your cheats from a plain text file.
I really do want to look into that, but for the time being 0.3 is focused on adding the plugin idea, fixing the fastboot a little and general cleanup of the source - then maybe remove some of the MyAR routines in favour of just triggering XFlash, and seeing if it's possible to launch PSXSerial without interfering.
I've got X-Killer and X-Link 95, X-Link DOS but that involves switching to the other cart (non-UniROM). I was wondering if there's any options for Caetla for similar functionality? or if it's more or less Xplorer only territory (for now).
I have a lot of codes I was working on that I never got a chance to finish that I would like to get back into one day. To get that working in a stable way, I'm having to load VMWare Player + WinME under Linux but I can get X-Killer working natively under Wine and X-Link DOS under DOSEmu (just about, crashes out on write access).
Either way, I've got a fairly decent method of managing memory cards and uploading PSX EXE's which I am very grateful for!

Re: UniROM 0.2 [new menu, nocash unlock, fastboot]
Posted: August 4th, 2015, 4:10 am
by sickle
Aww jeez... off the top of my head, XLink (PC) works with XFlash + Xplorer Rom, but it doesn't work the other way around ( XLink won't talk to the XFlash CD).
I don't *think* caetla has so many of the in-game features, like cheat searching and all that, you could possibly do it via catflap or XFlash (PC) by resetting the console and dumping the mem out before it's overwritten?
I remember there being similar GameShark code finders, but I dunno how compatible they are with an Xplorer running Caetla. For one, Caetla uses a different way to pulse/ack bytes over the parallel port even on Xplorer cart... but y'know, it could be incompatible in terms of both the protocol and the send/acknowledge routines.
Have you tried to see if it's possible to pause, dump memory and dump the VRAM under caetla with catflap while a game is running? If so you could knock up your own GUI to do the business in C# -it's ridiculously easy to get the comms up and running with the catflap source sitting next to you (just pay close attention to Send vs Send8). If it was to work, then I guess, just like XPlorer you'd have to start the game with cheats enabled or somethng?