that got me wondering... would a 100 min CDR work on a PlayStation? i'm thinking it would but ive never seen anyone try. maybe i'll grab a hold of some. i dont think any retail PS1 game actually exceeds 650 mb, but they can be burned on 700mb so i'm theorizing it should work. but can we utilize the extra space of a 100 min 900MB CDR?
yeah if i make a indie PS1 homebrew game i'll like to release them on Mini CDs. I hear most PS1 games are actually small, they just fill it up with movies or music. there's a sizable amount of PS1 games that would fit on mini cd, there's Crash Bandicoot 2, NBA hangtime, Raiden Project, RPG Maker, and i remember back in the day they used to rip Music and Movies out of games to make it smaller to download.
but anyway, the msg you quoted is actually me wondering about 900mb CDRs, they are 100 mins instead of 74 or 80min. I'm interested in testing that too.
i also wonder if people can put a game on the PS1 memory card. sure they're only 128kb, but NES games was mostly 40kb. and we've seen people use the memory card for stuff like freepsxboot and other demos like this
but anyway, the msg you quoted is actually me wondering about 900mb CDRs, they are 100 mins instead of 74 or 80min. I'm interested in testing that too.
not sure if Meido Menu uses a Audio Track but my method is using mkpsxiso which is rebuilding a ISO so it's still one data track. basically rebuilding is like when you rip a game's contents, and you add additional content on the disc, IE a second game that you also ripped, then combine them all together into one ISO by using mkpsxiso to build it
it dont have to be a secondary game, it can be appending more data, like in my RPG Maker example, i added additional BGM music by appending more seq+vab BGMs at the end of the SOUND0.BIN file. you can add additional EXE demos, games, images, or any files you like.
as for any risks, meh i dont mind. it can blow up my PSX, im not really concerned about any risks. i like to experiment
Yea it won’t damage/blow it up, just higher risk of the game freezing during a random seek. Definitely like the experimentation. Just for me personally I’d rather not have my game lock up randomly when I haven’t saved in hours.
Tbh cramming so much data on the disc *might* be helping you avoid this issue, since no mater where it internally “overseeks” to it won’t likely be in unburned area of the disc.
not sure if Meido Menu uses a Audio Track but my method is using mkpsxiso which is rebuilding a ISO so it's still one data track. basically rebuilding is like when you rip a game's contents, and you add additional content on the disc, IE a second game that you also ripped, then combine them all together into one ISO by using mkpsxiso to build it
it dont have to be a secondary game, it can be appending more data, like in my RPG Maker example, i added additional BGM music by appending more seq+vab BGMs at the end of the SOUND0.BIN file. you can add additional EXE demos, games, images, or any files you like.
as for any risks, meh i dont mind. it can blow up my PSX, im not really concerned about any risks. i like to experiment
its great to hear that the Audio CDs will at least work. if you ever want to try a game with those discs, u may wanna look into Medio Menu which is a homebrew that lets you make game compilation discs. i haven't tried it myself but ive seen videos on it.
mkpsxiso is great, in the past i tried romhacking a few games by injecting new data with cdmage, and a limitation to that is files must be the same size or less when replacing, and ive tried rebuilding a ISO before with another program but it would always hangup if i replace a file with a larger size, IE fmv movie or audio.
but lately ive been using mkpsxiso and they must be doing something to recalculate the LBA address or something cuz im getting a lot of success with it where i can basically rebuild a ISO and add new EXEs, games, larger sized files, demos whatever and it still work.
a lot of rom hackers use mkpsxiso to add more content to a disc. Hiltop has a lot of videos on the subject. the stuff he did for Mega Man Legends 2 is elite level stuff
Yea it won’t damage/blow it up, just higher risk of the game freezing during a random seek. Definitely like the experimentation. Just for me personally I’d rather not have my game lock up randomly when I haven’t saved in hours.
Tbh cramming so much data on the disc *might* be helping you avoid this issue, since no mater where it internally “overseeks” to it won’t likely be in unburned area of the disc.
well the demo i showcased was really only about 133mb so there's a lot more data i can add, i was more so just testing to see if my idea work. so the main game is RPG Maker which is only about 58mb, though there is a unused DUMMY.DAT file which is 32mb, and also a DUMMY.str which is 1.34mb so technically can rebuild the game with mkpsxiso and it'll only be 24mb. Then there's Raiden Project which consist of 2 games (raiden I & II) but that game is only 55mb, then i added imbnes with Mike Tyson's punch out which is only about 1mb, and i added a homebrew called PIMP which can playback str video, and another homebrew called 240p suite which is a set of tools to adjust the geometry on a CRT.
if u ever mess with Demo CDs, like interactive samplers or PlayStation Magazine with Demos and Net Yaroze games, the concept is like that. on a PS1 disc you'll see files like SCUS_XXX, those are executable files. Some games just have the .EXE extension, the SYSTEM.CNF basically tells the PS1 what file to load.
so in RPG Maker i just modified the game to hijack the Message 1 dialogue event, to have it call the loadexec command. that way i can tell the game which EXE to load. i just needa figure out a way to have it return to where i last left off, without that then my idea is kinda pointless
Rpg Maker actually contains 4 executables, there's the SLUS_006.40 which starts up with logos, then it goes into the MAIN.EXE, this is the Main Menu which let's the user select between RPG Maker and Anime Maker. The RPG Maker game is located in RPG3/RPG.EXE and Anime Maker is located in ANIM/ANIM.EXE so i would have to load it like this:
cdrom:\ANIM\ANIM.EXE;1
it appears most games only have one executable, but Demo discs and compilation style games such as Raiden Project has multiple Exes. i'm relatively new to PSX Development but it appears that before a game gets published, they typically test it out as EXE first. So a lot of those sample demos found on the official Developer's CD are named BALLS.EXE, DINO.EXE, MOVIE.EXE
some homebrews like imbnes or PIMP the executable is simply named NES.EXE or PSX.EXE and that's the file they boot up with and the SYSTEM.CNF would look like
BOOT=cdrom:\NES.EXE;1
So filenames aren't really important, they probably do that to obfuscate it but really those SLUS_XXX.XX are EXEs and they can be named anything except maybe .str as i believe that is reserved for movies only
Post automatically merged:
im thinking about switching the loadexec command to use something more like a gameshark feature where i can overwrite values to a specific address in RAM. that'll give me a lot more control including the Loadexec command, it's similiar to what they do with Lua scripts where they modify the Ram in real time
Rpg Maker actually contains 4 executables, there's the SLUS_006.40 which starts up with logos, then it goes into the MAIN.EXE, this is the Main Menu which let's the user select between RPG Maker and Anime Maker. The RPG Maker game is located in RPG3/RPG.EXE and Anime Maker is located in ANIM/ANIM.EXE so i would have to load it like this:
cdrom:\ANIM\ANIM.EXE;1
it appears most games only have one executable, but Demo discs and compilation style games such as Raiden Project has multiple Exes. i'm relatively new to PSX Development but it appears that before a game gets published, they typically test it out as EXE first. So a lot of those sample demos found on the official Developer's CD are named BALLS.EXE, DINO.EXE, MOVIE.EXE
some homebrews like imbnes or PIMP the executable is simply named NES.EXE or PSX.EXE and that's the file they boot up with and the SYSTEM.CNF would look like
BOOT=cdrom:\NES.EXE;1
So filenames aren't really important, they probably do that to obfuscate it but really those SLUS_XXX.XX are EXEs and they can be named anything except maybe .str as i believe that is reserved for movies only
Post automatically merged:
im thinking about switching the loadexec command to use something more like a gameshark feature where i can overwrite values to a specific address in RAM. that'll give me a lot more control including the Loadexec command, it's similiar to what they do with Lua scripts where they modify the Ram in real time
sure, i actually did something like that. i was in a rpg maker discord showcasing some of my findings, and i swapped the MAIN.EXE with my own custom MAIN.EXE which was really jus a example demo from the psn00bSDK called rgb24.exe
it basically display a 640x480 24bit image. not really practical to use 24bit as they are only used only for static images or FMVs, cant add any other objects ontop of it i dont think.
This example demonstrates the 24-bit color mode of the PS1. This mode is
not practical for gameplay as the GPU can only draw graphics primitives
in 16-bit color depth so this feature would normally be used only for
fullscreen graphic illustrations or FMV sequences.
but if you know how to code, u can create your own EXE with whatever and it'll run. so in my case i'll have to code it to launch RPG Maker or Anime Maker too
another idea i had was to make a RPG Maker Collection where it's a compilation of user created RM1 games. so if i do that i'll probably have to make my own custom menu too.
its great to hear that the Audio CDs will at least work. if you ever want to try a game with those discs, u may wanna look into Medio Menu which is a homebrew that lets you make game compilation discs. i haven't tried it myself but ive seen videos on it.
mkpsxiso is great, in the past i tried romhacking a few games by injecting new data with cdmage, and a limitation to that is files must be the same size or less when replacing, and ive tried rebuilding a ISO before with another program but it would always hangup if i replace a file with a larger size, IE fmv movie or audio.
but lately ive been using mkpsxiso and they must be doing something to recalculate the LBA address or something cuz im getting a lot of success with it where i can basically rebuild a ISO and add new EXEs, games, larger sized files, demos whatever and it still work.
a lot of rom hackers use mkpsxiso to add more content to a disc. Hiltop has a lot of videos on the subject. the stuff he did for Mega Man Legends 2 is elite level stuff
Post automatically merged:
well the demo i showcased was really only about 133mb so there's a lot more data i can add, i was more so just testing to see if my idea work. so the main game is RPG Maker which is only about 58mb, though there is a unused DUMMY.DAT file which is 32mb, and also a DUMMY.str which is 1.34mb so technically can rebuild the game with mkpsxiso and it'll only be 24mb. Then there's Raiden Project which consist of 2 games (raiden I & II) but that game is only 55mb, then i added imbnes with Mike Tyson's punch out which is only about 1mb, and i added a homebrew called PIMP which can playback str video, and another homebrew called 240p suite which is a set of tools to adjust the geometry on a CRT.
if u ever mess with Demo CDs, like interactive samplers or PlayStation Magazine with Demos and Net Yaroze games, the concept is like that. on a PS1 disc you'll see files like SCUS_XXX, those are executable files. Some games just have the .EXE extension, the SYSTEM.CNF basically tells the PS1 what file to load.
so in RPG Maker i just modified the game to hijack the Message 1 dialogue event, to have it call the loadexec command. that way i can tell the game which EXE to load. i just needa figure out a way to have it return to where i last left off, without that then my idea is kinda pointless
that's good to know. i imagine it's only Japanese titles since the PS1 released in North America in sept 1995. unless the North American ver of Ridge Racer follows the same structure as the Japanese ver.
so a little update on my project, i finally was able to figure out how to mirror a quicksave to a different area in Ram. in this case the quicksave is stored in 8073e200 and i made a copy to 807FE200 which is near the end of the Ram
i got it to load a quicksave from a different ram address I mirrored, now i needa figure out how to get it to autoload on startup
My idea is to make a duplicate RPG3.exe and name it something like RPG0.exe. It’ll function the same except it’ll be used for the autoload feature only. So if a user launches a new exe like raiden project, and then return to rpg maker, i'll have it load RPG0.exe instead which will autoload the quicksave immediately on launch
I always assumed that RAM gets cleared when launching a new exe, but it appears that only areas that are used get overwritten. So I made a mirror copy of the quicksave to 807fxxxx and it survived when launching a different exe whereas the default at 8073xxxx gets cleared and overwritten
originally my idea was to use the 2KB scratchpad to store the quicksave. but a memory card block is 8KB however my idae was to compress it with LZC which will make it a little under 2KB, then have it load the save from there. but now that i found out Ram doesn't get cleared when calling loadexec then i dont have to do that. https://psx.arthus.net/sdk/Psy-Q/DOCS/TRAINING/Summer97/bdldex.pdf
chatgpt lied to me man
if i hadnt tried it myself i would have believed them. unless this only works with emulation? i dont know, guess only way to find out is to try
that's good to know. i imagine it's only Japanese titles since the PS1 released in North America in sept 1995. unless the North American ver of Ridge Racer follows the same structure as the Japanese ver.
so a little update on my project, i finally was able to figure out how to mirror a quicksave to a different area in Ram. in this case the quicksave is stored in 8073e200 and i made a copy to 807FE200 which is near the end of the Ram
i got it to load a quicksave from a different ram address I mirrored, now i needa figure out how to get it to autoload on startup
My idea is to make a duplicate RPG3.exe and name it something like RPG0.exe. It’ll function the same except it’ll be used for the autoload feature only. So if a user launches a new exe like raiden project, and then return to rpg maker, i'll have it load RPG0.exe instead which will autoload the quicksave immediately on launch
I always assumed that RAM gets cleared when launching a new exe, but it appears that only areas that are used get overwritten. So I made a mirror copy of the quicksave to 807fxxxx and it survived when launching a different exe whereas the default at 8073xxxx gets cleared and overwritten
originally my idea was to use the 2KB scratchpad to store the quicksave. but a memory card block is 8KB however my idae was to compress it with LZC which will make it a little under 2KB, then have it load the save from there. but now that i found out Ram doesn't get cleared when calling loadexec then i dont have to do that. https://psx.arthus.net/sdk/Psy-Q/DOCS/TRAINING/Summer97/bdldex.pdf
Hehe we all learn some way. Ai is great for double checking things you already know, basically nothing else. I’ll tell Gemini hey this c func is supposed to do this, does it? And it will explain why yes or no, and I’ll be like either oh yea I’m off by one or hmm maybe I’m writing this wrong let me tell it something else
that's good to know. i imagine it's only Japanese titles since the PS1 released in North America in sept 1995. unless the North American ver of Ridge Racer follows the same structure as the Japanese ver.
so a little update on my project, i finally was able to figure out how to mirror a quicksave to a different area in Ram. in this case the quicksave is stored in 8073e200 and i made a copy to 807FE200 which is near the end of the Ram
i got it to load a quicksave from a different ram address I mirrored, now i needa figure out how to get it to autoload on startup
My idea is to make a duplicate RPG3.exe and name it something like RPG0.exe. It’ll function the same except it’ll be used for the autoload feature only. So if a user launches a new exe like raiden project, and then return to rpg maker, i'll have it load RPG0.exe instead which will autoload the quicksave immediately on launch
I always assumed that RAM gets cleared when launching a new exe, but it appears that only areas that are used get overwritten. So I made a mirror copy of the quicksave to 807fxxxx and it survived when launching a different exe whereas the default at 8073xxxx gets cleared and overwritten
originally my idea was to use the 2KB scratchpad to store the quicksave. but a memory card block is 8KB however my idae was to compress it with LZC which will make it a little under 2KB, then have it load the save from there. but now that i found out Ram doesn't get cleared when calling loadexec then i dont have to do that. https://psx.arthus.net/sdk/Psy-Q/DOCS/TRAINING/Summer97/bdldex.pdf
Yes, only early Japanese titles or internal betas/hombrews is gonna be named PSX.EXE. And those internal calls… it’s completely valid to all the versions of the bios and was the original intended method before they realized people needed more freedom in event handling, etc. interestingly enough there WAS a RAM bug regarding clearing very late into the PSX development, not exactly tied to anything other then the RAM of the dev kits in 94 wouldn’t clear until x amount of seconds. Notoriously the psx bios is buggy af which is why many developers ignored it and went their own way, which Sony totally supported back then.
Anything to kill the Saturn. Tbh the hardware was so much better and the support was there to back it up, sega never had a chance and paid the price
Really what you want I think can be accomplished from basically having a GameShark code check a button combo and then with the exception vectors execute load n exec
Hehe we all learn some way. Ai is great for double checking things you already know, basically nothing else. I’ll tell Gemini hey this c func is supposed to do this, does it? And it will explain why yes or no, and I’ll be like either oh yea I’m off by one or hmm maybe I’m writing this wrong let me tell it something else
Post automatically merged:
Yes, only early Japanese titles or internal betas/hombrews is gonna be named PSX.EXE. And those internal calls… it’s completely valid to all the versions of the bios and was the original intended method before they realized people needed more freedom in event handling, etc. interestingly enough there WAS a RAM bug regarding clearing very late into the PSX development, not exactly tied to anything other then the RAM of the dev kits in 94 wouldn’t clear until x amount of seconds. Notoriously the psx bios is buggy af which is why many developers ignored it and went their own way, which Sony totally supported back then.
Anything to kill the Saturn. Tbh the hardware was so much better and the support was there to back it up, sega never had a chance and paid the price
Really what you want I think can be accomplished from basically having a GameShark code check a button combo and then with the exception vectors execute load n exec
ai is very useful especially those who are beginners or clueless. people tend to be reluctant to ask dumb questions on programming forums cuz they are afraid of of being judged, but with Ai you can ask all the dumb questions u want.
of course u cant just blindly accept everything it feed u cuz u can be stuck in a endless loop. being able to discern and employ different tactics and experiment with different ideas until u narrow it down and corner it and pinpoint a solution or find desired result u looking for makes it a useful tool. i view it more like a game. similar to those who go on the hunt searching for lost media or obscure info. sometimes u jus gotta do detective work
in the past i use Chatgpt to port some games and emulators over to the playstation classic such as this flycast fork where i used chatgpt to help me add this Auto underclock feature to improve FMV playback on low spec devices
i also used it to help me port Perfect Dark
there's no way in hell i would have been able to do that on my own, unless i devote 10,000 hours into it. but as a hobbyist, Ai is great. even when it comes to this RPG Maker PSX project, using Ai helps accelerate the speed by 200x
quick demonstration of my Resume feature after loading a exe
basically i can now launch different PSX games and have it return to where i last left off. i spent 3 weeks on this shit lol i nearly gave up. not out the woodwork yet though, i still needa try it on real hardware
Post automatically merged:
here it is tested with Namco Museum Vol 5. Adding that balloon my ISO up to 734 mb.
now i needa get hold of some 900mb CDRs to test this out with. jus need to add a few more data in
Seemingly out of nowhere a PC port for Pokemon Platinum has surfaced online, bundled alongside the source code for those interested in building and developing it for...
With very little in the way of announcement, Valve has today increased the price of the Steam Deck but some fairly considerable margins. Both of the available models...
Nintendo's expected Summer showcase is here, offering up plenty of new announcements and exciting reveals. Let's see what they have in store in the latest Nintendo...
Continuing with the great news of Pokémon Platinum getting a native unofficial PC port just a few days ago, today, yet another classic title from the franchise has...
The latest in a growing number of native PC ports, Paper Mario ReCut got its first pre-release build earlier this week. Based on the N64 recompilation toolchain, the...
When you talk about 3DS emulation, most people would jump to Citra. As the defacto choice since its first release it's seen tremendous success, and even after its...
What once seemed like a far off dream, and after many, many community restarts throughout the years, the elusive Mother 1 / EarthBound Beginnings Remake, which is a...
A whole hour of PlayStation content is on the way, thanks to the latest State of Play showcase. Headlining the stream will be Marvel's Wolverine, alongside a...
After much speculation, a lot of which being caused by dbrand's unceremonious reveal of their Companion Cube casing, the Steam Machine is finally available to order...
Since being decompiled Super Mario 64 has seen a considerable amount of interest. We've had multiple PC ports, but the efforts beyond that are really astounding. It's...
After much speculation, a lot of which being caused by dbrand's unceremonious reveal of their Companion Cube casing, the Steam Machine is finally available to order...
With very little in the way of announcement, Valve has today increased the price of the Steam Deck but some fairly considerable margins. Both of the available models...
Nintendo's expected Summer showcase is here, offering up plenty of new announcements and exciting reveals. Let's see what they have in store in the latest Nintendo...
Seemingly out of nowhere a PC port for Pokemon Platinum has surfaced online, bundled alongside the source code for those interested in building and developing it for...
With rumours circulating about a Nintendo Direct in the coming days and weeks, fans are left speculating and hoping as to what might be included. At the centre of all...
The latest in a growing number of native PC ports, Paper Mario ReCut got its first pre-release build earlier this week. Based on the N64 recompilation toolchain, the...
After much speculation and rumour, the fabled Nintendo Direct is upon us. Set to go live tomorrow, the 9th of June, at 3pm in the UK, it'll feature 50 minutes of...
A whole hour of PlayStation content is on the way, thanks to the latest State of Play showcase. Headlining the stream will be Marvel's Wolverine, alongside a...
Following an investigation over misleading commercial practices, today Nintendo has been imposed a fine of 35 million euros related to the controller malfunctions...
For the first time in 13 years, the Call of Duty series will again return to Nintendo's consoles. Set to launch on the 23rd of October, the latest release, Modern...