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

Bits n Stuff
Posts: 2
Joined: Sun May 24, 2020 7:31 pm
Has thanked: 57 times
Been thanked: 1 time

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

Unread post by Bits n Stuff »

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

WILL1384
Posts: 40
Joined: Sun Apr 04, 2021 6:42 pm
Has thanked: 4 times
Been thanked: 16 times

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

Unread post 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.
jca
Top Contributor
Posts: 1911
Joined: Wed May 27, 2020 1:59 pm
Has thanked: 145 times
Been thanked: 454 times

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

Unread post 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.
WILL1384
Posts: 40
Joined: Sun Apr 04, 2021 6:42 pm
Has thanked: 4 times
Been thanked: 16 times

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

Unread post 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.
jca
Top Contributor
Posts: 1911
Joined: Wed May 27, 2020 1:59 pm
Has thanked: 145 times
Been thanked: 454 times

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

Unread post 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.
User avatar
H3ML5XLAXBKU
Posts: 15
Joined: Wed Jun 24, 2020 4:43 am
Has thanked: 5 times
Been thanked: 4 times

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

Unread post 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
User avatar
darksakul
Posts: 352
Joined: Mon May 25, 2020 4:34 pm
Has thanked: 397 times
Been thanked: 73 times

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

Unread post 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).
It is my great regret that we live in an age that is proud of machines that think and suspicious of people who try to.
User avatar
zomgugoff
Posts: 33
Joined: Sun May 24, 2020 8:54 pm

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

Unread post 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.
arromdee
Posts: 31
Joined: Mon Jul 11, 2022 9:24 am
Been thanked: 3 times

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

Unread post 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.
Koston
Posts: 58
Joined: Sat Feb 13, 2021 12:25 pm
Has thanked: 45 times
Been thanked: 31 times

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

Unread post 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.
valerino
Posts: 12
Joined: Sun Feb 27, 2022 5:40 pm
Been thanked: 1 time

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

Unread post 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

Post Reply