BatteryCheck DevBlog - Playstation 1 progress...

I did not have any hardware PlayStation 1 until just 3-4 weeks ago! Now I have 5 of them! :D Three "phat's" and two PSOne's. Why five consoles???? Well...I first bought a regular Phat for the serial and parallel ports they have that make homebrew development A LOT easier! Then I wanted to add a PSOne to my collection because it's so damn cute and small! :rofl2: To keep the story short....while looking for a PSOne I found a seller that sold 2 phats and two PSOne's for an amazing price! I could not resist that! :D

Before I can do ANY homebrew development work on the PS1 I needed to setup my DEV environment to be able to compile any code at all. That took me a good few days to figure out what was wrong....and with the guidance on Discord from spicyjpeg (thanks dude :yay:) I got it to compile...the MIPS cross-compilers and the PSn00bSDK with examples!

And then yesterday I started diving into the examples, documentation and the libpsn00b sourcecode to get an idea of how things work. My overal impression is that it's different but familiar...it's most similar in a way to how the PSP does things. Which I guess makes sense since they are both Sony PlayStation devices, hahahah. It took me some getting used to 'cmake' while I am used to just 'make' for years now! It's literately completely different even though the idea is the same....you tell 'make/cmake' where your compilers and libraries are, what options to use and where your own source code is. in a nutshell! But seeing the examples, understanding the different compilation method and doing it myself are very different things! :D

While there were MANY steps involved....yesterday I finally made progress in the process of creating my own PlayStation 1 homebrew! I compiled the "template" example and modified it a bit to get the the following result:
1686648547567.png


Yes, it's a simple "Hello World" example with a twist! It also sets a background color and moves a square around the screen. I changed the background to an almost black/grey and the resized the rectangle to be smaller and changed it's color to "andorian blue". Like the blue skin color of andorians...and from my avatar picture. :D

Small steps...but my modification does run in the PCSX-Redux emulator (it has an AMAZING CRT shader!!!!). I wanted to test on hardware but at 23:50 late at night I thought it was enough! Also with 33 Celsius it was already hard enough to be sitting at my desk all that time with three little fan's blowing some air around at me!

The next big step would be to actually load some batteryCheck graphics! But there are a couple of limitations to overcome first. Beyond having free spare time to work on it I need to get the graphics into the right format and for testing embed that into the EXE so I don't require a CD image for now. The other limitation is that a texture has a max size of 256x256 pixels! If that sounds familiar...that's because the PSP and NDS/DSi have the exact same limitation and I have been rambling about it A LOT. :P:rofl2:
Not a big issue for most of the spites but it is a challenge for the menu screen and splash screens. They are 640x480 and I need to think of a way to display them correctly. One single image at 16 bits colors (1A5R5G5B) is already 614kb....out of just 1MB of VRAM! If I use 8bpp with a CLUT (Color LookUp Table) then it would only be 307kb :D.....but I will STILL need to divide the 640x480 pixel image into 256x256 chunks to show it! Or...resize it! either on hardware at runtime or in the conversion process.

Either way....with some luck I will have the menu screen showing on the real hardware! I am 99% sure how to do it for a quick proof-of-concept and maybe even how to include the other splash screens. It won't be efficient and the EXE is going to be close to the 2MB max!! The only downside of that is that it's REALLY slow to upload that over a slow serial cable into the PS1 hardware....but at least no wasted CD's.

Thanks for reading :D

Comments

You should definitely invest in a ODE for your DEV playstation, so you can just drop in ISO files on an SD card, and go.
 
  • Like
Reactions: Archerite
You should definitely invest in a ODE for your DEV playstation, so you can just drop in ISO files on an SD card, and go.
I would really like an ODE...but they are quite picky on the hardware revision they are co patible with! Plus a waiting list and/or out of stock in most places.
I have seen a few alternative projects that are being worked on...but as far as I know there is no finished product from those yet!

The prices all seem te be close to 90 euro's, except PSIO, and that's fine. The GCLoader costs the same for the same features bassically.

The serial port is fine for small EXE uploads and testing. I want to prepare a CD-R with as much of the data files and audio tracks as possible. And in 'ready to use' formats for the PSX so I don't need to waste RAM or VRAM on them. The music should be 'easy' as those will be CD audio tracks for simplicity! :D

I have searched for a memory card SD slot adapter, like MX4SIO on the PS2....but I think it's not there (yet).
 
  • Like
Reactions: KleinesSinchen
You should definitely invest in a ODE for your DEV playstation, so you can just drop in ISO files on an SD card, and go.
Way too expensive, way too little compatibility (hardware revisions), way too complex installation.
No (yet) worth it on PS1 in my opinion.

The serial port is fine for small EXE uploads and testing. I want to prepare a CD-R with as much of the data files and audio tracks as possible. And in 'ready to use' formats for the PSX so I don't need to waste RAM or VRAM on them. The music should be 'easy' as those will be CD audio tracks for simplicity! :D
That is -- in principle -- the correct way to go. Keep in mind that the PS1 would - by default - not allow accessing normal data on CDs without successful SCEx authentication from the inserted CD. CDDA is the only thing that works without.
Yes, I know, pretty much every console has a modchip. Just mentioning it.
 
  • Like
Reactions: Archerite
Way too expensive, way too little compatibility (hardware revisions), way too complex installation.
No (yet) worth it on PS1 in my opinion.
I agree it's expensive but I have not really looked into the exact features of either ODE I found. All I know is they can both load Cd images of an SD card and show some kind of "limited" interface to select a game. I do find it cool that I beleive XStation can communicate with MemCardPro to auto select a memory card image for the selected game. It's not required...but it's nice.

The requirement for very specific hardware revisions is a really big limitation! Shouldn't all the hardware and stuff be the same architecture, chips and design's? I get that pins might be in a different location...but then figure out where they are and design a new PCB for that revision. Or...maybe it's not that simple. I don't know.
That is -- in principle -- the correct way to go. Keep in mind that the PS1 would - by default - not allow accessing normal data on CDs without successful SCEx authentication from the inserted CD. CDDA is the only thing that works without.
Yes, I know, pretty much every console has a modchip. Just mentioning it.
Do you mean that even with a modchip the disc needs to be signed or something? I know the tool that generates the image had some note saying this is not included for obvious reasons. I did not really look into it yet. Out of my five consoles I know for sure that 4 of the can boot CD-R's. The fifth does not have an optical drive so I can't test it. What I do want to look at for those is what revision mainboard is in there. Just to see if they are "XStation compatible" in case I go crazy and buy one anyway.

As for the serial link speed I did see an option to at least set it to 2X or 3X the speed I tested at before...so that will be a huge help in waiting for the uploads to go through it! I do know it's faster that: compile > take out SD card -> put into PC reader -> copy the files -> eject -> put back -> turn on console! I have had to do this with the DS, DSi and GameCube while I was testing on those systems....and it got old REALLY quickly. This is what make me go from GameCube to Wii in less than 2-3 weeks!
 
  • Like
Reactions: KleinesSinchen
Nah, just the SCEx signal. CD drive gets unlocked after receiving a SCEx signal – and this is the case with a modchip. Just mentioned it for the sake of completeness.
Ohh...good!:rofl: I was worried I could not just burn the disc with my data and music and have it readable after you said that! Thought I had mist an important detail! :rofl2::rofl2:

RE: ODDE, I believe someone was working on a Pi Pico based ODDE for PS1..
That correct, but it's still in development and it seems to have similar limitations on hardware revisions it supports.
====
As a short update on the PS1 port progress...I had very little time actually! But I have read the examples and source of the SDK in more detail. And I have an idea of how to make things work.

One issue is that the common TIM image format is quite old and I am trying to figure out how to convert the graphics in this format. On the PSX.Dev discord I was advised not to use TIM at all! But then I need to know how to get the pixel data and CLUT into VRAM!

I 'think' I know how but I had no time to try it out yet! To be continued! :D
 
  • Like
Reactions: DinohScene

Blog entry information

Author
Archerite
Views
416
Comments
7
Last update

More entries in Personal Blogs

More entries from Archerite

General chit-chat
Help Users
  • Psionic Roshambo @ Psionic Roshambo:
    I always wanted one of those Smart Cars with a Hyabusa motor in it.
  • K3Nv2 @ K3Nv2:
    I'm getting sick and tired of cheap ass baking pans now
  • BigOnYa @ BigOnYa:
    I think it be cool to have one that would fit in my pickup truck bed, then I could put down ramps n drive it off.
  • K3Nv2 @ K3Nv2:
    Used this one 5 times already impossible to clean
  • BigOnYa @ BigOnYa:
    You need the $900 copper coated ones, they are good for 10 times cooking before they are un cleanable
  • Psionic Roshambo @ Psionic Roshambo:
    Condoms are only meant to be used once Ken lol
  • K3Nv2 @ K3Nv2:
    Well damn that explains how you were born
  • BigOnYa @ BigOnYa:
    I tried Cavier for the first time today. That shit is nasty. Don't get why people like it.
  • Psionic Roshambo @ Psionic Roshambo:
    Eh it's good with Vodka and crackers
  • Psionic Roshambo @ Psionic Roshambo:
    Gotta have the whole experience
  • Psionic Roshambo @ Psionic Roshambo:
    Drink enough vodka so you can barely taste it
  • K3Nv2 @ K3Nv2:
    Depends on brand rich rich people spend like 500 a tin
  • Psionic Roshambo @ Psionic Roshambo:
    What I'm putting down is you gotta be trashed first lol
    +1
  • K3Nv2 @ K3Nv2:
    Like if psi fucked the fish the quality of the eggs will probably come out abnormal
  • BigOnYa @ BigOnYa:
    We had it spread on crackers, n I had Rum/Coke today. I like all fish and seafoods, but not that.
  • Psionic Roshambo @ Psionic Roshambo:
    Lol sorry Ken it was either the fish or your mom.... I picked the fish lol
    +1
  • K3Nv2 @ K3Nv2:
    Yeah still an abnormal egg came out
  • BigOnYa @ BigOnYa:
    Prob smelled the same anyways
    +1
  • K3Nv2 @ K3Nv2:
    I'd assume most eggs smell the same
  • Psionic Roshambo @ Psionic Roshambo:
    Lol Ken was an egg at one time!
  • Psionic Roshambo @ Psionic Roshambo:
    And a sperm....
  • BigOnYa @ BigOnYa:
    In a little glass tube
  • K3Nv2 @ K3Nv2:
    Yes we were all a white substance at one timr
    K3Nv2 @ K3Nv2: Yes we were all a white substance at one timr