Page 1 of 1

Make Mega CD BIOS "Name Based" Rather Than "Location Based"?

Posted: Sat May 14, 2022 1:04 pm
by Bits n Stuff

Make Mega CD BIOS "Name Based" Rather Than "Location Based"?


Re: Make Mega CD BIOS "Name Based" Rather Than "Location Based"?

Posted: Sat May 14, 2022 1:36 pm
by WILL1384
There is a region-free MegaCD BIOS, so you would not need to use multiple BIOS files, and I wonder why the Update_All_MiSTer script does not use it?

Also I dislike that the Update_All_MiSTer script ignores a hard drive full of directories and then recreates the "missing" directories on the SD card, making the files on the hard drive invisible to the cores, and forcing you to delete the directories from the SD card again.

Re: Make Mega CD BIOS "Name Based" Rather Than "Location Based"?

Posted: Sat May 14, 2022 1:43 pm
by jca
WILL1384 wrote: Sat May 14, 2022 1:36 pm ...
Also I dislike that the Update_All_MiSTer script ignores a hard drive full of directories and then recreates the "missing" directories on the SD card, making the files on the hard drive invisible to the cores, and forcing you to delete the directories from the SD card again.
Could you nelaborate on that?
I am using a USB drive which contains everything (almost) and I don't have such a problem.

Re: Make Mega CD BIOS "Name Based" Rather Than "Location Based"?

Posted: Sat May 14, 2022 3:25 pm
by WILL1384
jca wrote: Sat May 14, 2022 1:43 pm
WILL1384 wrote: Sat May 14, 2022 1:36 pm ...
Also I dislike that the Update_All_MiSTer script ignores a hard drive full of directories and then recreates the "missing" directories on the SD card, making the files on the hard drive invisible to the cores, and forcing you to delete the directories from the SD card again.
Could you nelaborate on that?
I am using a USB drive which contains everything (almost) and I don't have such a problem.
I have the following directories deleted from my SD card:

PSX
MegaCD
TGFX16-CD

but they are on my hard drive, and if I run the Update_All_MiSTer script, with the BIOS downloaded enabled, it will download the BIOS files for

PSX
MegaCD
TGFX16-CD

and then make directories for them, and place then on my SD card, but I already had the BIOS files and directories on my hard drive, so now the cores load the downloaded BIOS files from the SD card and will only look in the SD card for the games, so then I need to delete the duplicated directories from the SD card before the cores work correctly again.

I have found with some testing that it's not the "directory" but the BIOS files you need to delete from the SD card, you can leave empty duplicated directories alone, and disabling the "BIOS-Getter" should stop the problem.

BTW I am using an NTFS formatted hard drive, with the PSX, MegaCD, and TGFX16-CD on the root of the hard drive, with no "GAMES" folder on the hard drive.

Re: Make Mega CD BIOS "Name Based" Rather Than "Location Based"?

Posted: Sat May 14, 2022 3:35 pm
by jca
Just create symlinks from where they should be on the SD card to where they are on the USB drive.
Example:
/media/fat/games/PSX -> /media/usbo/PSX
If you use WinSCP it is very easy to do. If you are Linux savvy it should not be a problem using the command prompt.

Re: Make Mega CD BIOS "Name Based" Rather Than "Location Based"?

Posted: Sun May 15, 2022 8:09 am
by H3ML5XLAXBKU
Bits n Stuff wrote: Sat May 14, 2022 1:04 pm I'd long been wondering if we could maybe see a change in the naming of regional BIOS files for this core?
All BIOS files currently have to share the same name (cd_bios.rom) so when the Update All script does its job it automatically creates Europe, Japan and USA folders with the relevant regional cd_bios.rom inside each of those folders.
As somebody who doesn't sort Mega CD games regionally, it's just a little annoying to have to delete unwanted folders after updating each time.
I know the folder creation is down to the Update All script, but that is largely down to all three BIOS files sharing the same name so you can't have more than one in a single location.
Is it possible to change how the core uses the BIOS files so that it's handled in the same way that the PlayStation core handles regional BIOS files by giving each region a different name (USA = boot.rom/Japan = boot1.rom/Europe =boot2.rom) and then the Update All script just places all three in the base PSX folder?
I know this suggestion may not solve your problem completely. But it is possible to disable the bio-getter script from running by configuring configuring update all. Obviously you would need to enable the script if bios files were changed or a new core you were interested which required bios files was released.
WILL1384 wrote: Sat May 14, 2022 1:36 pm There is a region-free MegaCD BIOS, so you would not need to use multiple BIOS files, and I wonder why the Update_All_MiSTer script does not use it?
The script does include the region free bios, but I guess it also includes a bios specific for each region in named directory.
As per the bios getter github read me
Update_All_MiSTer wrote: MegaCD

Code: Select all

US Sega CD 2 (Region Free) 930601 l_oliveira.bin
[BIOS] Mega-CD 2 (Japan) (v2.00C).md
[BIOS] Sega CD 2 (USA) (v2.00).md
[BIOS] Mega-CD 2 (Europe) (v2.00).md

Re: Make Mega CD BIOS "Name Based" Rather Than "Location Based"?

Posted: Mon Jul 18, 2022 1:31 am
by darksakul
WILL1384 wrote: Sat May 14, 2022 1:36 pm There is a region-free MegaCD BIOS, so you would not need to use multiple BIOS files, and I wonder why the Update_All_MiSTer script does not use it?

Also I dislike that the Update_All_MiSTer script ignores a hard drive full of directories and then recreates the "missing" directories on the SD card, making the files on the hard drive invisible to the cores, and forcing you to delete the directories from the SD card again.
There is Region Free BIOS files, the issue is many games will display the wrong colors with a mismatching Bios. Example many Japanese games shows magenta instead of black in both in game graphics and video.
This is something I found out myself happens on both the MiSTer and Real Hardware (using a Mega Everdrive to force the CD Bios to other regions).

Re: Make Mega CD BIOS "Name Based" Rather Than "Location Based"?

Posted: Sun Nov 06, 2022 9:09 pm
by zomgugoff
Bits n Stuff wrote: Sun May 15, 2022 11:16 pm Yeah, I mean there are ways to get around what I'm saying and what I'm saying is hardly what anybody would call essential, I don't even know if it's something that anybody else apart from me would really care about and as with any other changes to cores, it may just not be worth the hassle of implementing it anyway.
One of the things that made me ask for this is that it just seems to be a simpler implementation for the user in the current PS1 core and simplifying these things so that the CD cores are set up in a unified manner.
I'm not even sure there would be any use for more than one BIOS in the PC Engine Duo core or any other CD based console core that may follow in the future, but at least to me, as a user rather than a coder, it makes sense to deal with this the way the PS1 core does.
I agree with you on this naming system. I don't like having to sort my games by region to accommodate the core not using different file names for the BIOS files. It doesn't make sense to have a region selection in the menu that you have to manually set when the BIOS should be determining that anyway. The region selector + individually named BIOS files is makes more sense. Also, organizationally, I'm also not happy with having to try to remember which region a game is in to go load it.

Re: Make Mega CD BIOS "Name Based" Rather Than "Location Based"?

Posted: Mon Nov 07, 2022 1:01 am
by arromdee
Bits n Stuff wrote: Sun May 15, 2022 11:16 pm I'm not even sure there would be any use for more than one BIOS in the PC Engine Duo core or any other CD based console core that may follow in the future
On the PC Engine, some games don't work on some CD bios versions, notoriously Altered Beast and the Games Express games.

Re: Make Mega CD BIOS "Name Based" Rather Than "Location Based"?

Posted: Tue Nov 08, 2022 1:35 pm
by Koston
Seconded, having to sort by region is silly. Besides the already suggested filenames per region, they could also be identified programmatically by checksum, header or similar method. Games requiring a specific BIOS would also do well to advertise this in metadata somewhere.

But, I understand none of this is of much interest to core devs, as it has little to do with reproducing original hardware function.

Another way to approach this is using some of the Extension scripts. There's at least the Favourites and GamesMenu scripts, which both create shortcuts to the menu and could potentially be leveraged here too. The Search script could help, too.

Re: Make Mega CD BIOS "Name Based" Rather Than "Location Based"?

Posted: Mon Oct 23, 2023 9:03 am
by valerino

i realized i had this exact need while playing with the MegaCD core, and i quickly hacked up this :)

https://github.com/valerino/MiSTer_MegaCD_bios_select