Page 1 of 1

What Does "BIOS Enable" Do?

Posted: Sat Jun 06, 2020 8:13 pm
by Threepwood
I am not sure what the "BIOS Enable/Disable" option does. Can somebody please explain?

Re: What Does "BIOS Enable" Do?

Posted: Sun Jun 07, 2020 9:21 pm
by theflynn49
Hi,
There is a bios-replacement file in SMSBootLoader/smsboot.asm which initialize some ram and some registers if I remember correctly.
It does different things if SMS or GG is detected/selected.
Control is passed to the rom bios at reset.

If BIOS is disabled, this just doesn't happen. Some exotic games need this I guess.
hope this helps.

Re: What Does "BIOS Enable" Do?

Posted: Sun Jun 07, 2020 9:49 pm
by Threepwood
theflynn49 wrote: Sun Jun 07, 2020 9:21 pm initialize some ram and some registers if I remember correctly.
It does different things if SMS or GG is detected/selected.
Control is passed to the rom bios at reset.
Thanks a lot, that explains the function well :)

theflynn49 wrote: Sun Jun 07, 2020 9:21 pm There is a bios-replacement file in SMSBootLoader/smsboot.asm
Does the smsboot.asm need to be downloaded separate or is it baked into the core?

Also thank you for registering here and that you took the time to answer my question about the BIOS enable option.

Re: What Does "BIOS Enable" Do?

Posted: Mon Jun 08, 2020 8:33 am
by theflynn49
It's embedded. The compile process generates the file mboot.mif, which is loaded during the core generation by Quartus into a memory array.
It's not the original BIOS, it has been rewritten.

Re: What Does "BIOS Enable" Do?

Posted: Mon Jun 08, 2020 11:16 pm
by Lancelot
Can custom bioses be used in the SMS core?

Re: What Does "BIOS Enable" Do?

Posted: Tue Jun 09, 2020 2:12 pm
by theflynn49
Honestly I do not fully understand your question.
As far as i know, there is no such thing as a 'custom bios', and I don't really see any reason to make or have one.
This bios just initialize registers and memory to make games work. I am not even sure that the original machine has a bios.
What could happen is that an exotic game does not work because it relies on a specific register value at start time which is not initialized properly.
In such a case, you'd just modify the .asm file as a developer to fix it, and that's the end of the story. I've done that many times in the past, especially because the GG machine has different init values than the SMS one, and a few games do mind.
Maybe tell me exactly what you want to achieve so I can give you a better advice ?

Re: What Does "BIOS Enable" Do?

Posted: Wed Jun 10, 2020 7:15 am
by Lancelot
I would like to load other bios versions, EverDrive cart has the option to load different SMS BIOS versions and I really like the feature. I like to load the regional version from Brazil for nostalgic feelings. There are many bios released in the system life, most have different graphic/animation and sound. Would make my MiSTer more like my original Master System in 1990.

Re: What Does "BIOS Enable" Do?

Posted: Wed Jun 10, 2020 7:25 am
by Threepwood
Lancelot wrote: Wed Jun 10, 2020 7:15 am I would like to load other bios versions, EverDrive cart has the option to load different SMS BIOS versions and I really like the feature. I like to load the regional version from Brazil for nostalgic feelings. There are many bios released in the system life, most have different graphic/animation and sound. Would make my MiSTer more like my original Master System in 1990.
You load them just like games. You would only see it when no cart is inserted anyways :) I think the behavior you are asking for is for the Master System to load such a BIOS or system ROM automatically when no cart is inserted.

Re: What Does "BIOS Enable" Do?

Posted: Wed Jun 10, 2020 7:33 am
by Lancelot
Threepwood wrote: Wed Jun 10, 2020 7:25 am
Lancelot wrote: Wed Jun 10, 2020 7:15 am I would like to load other bios versions, EverDrive cart has the option to load different SMS BIOS versions and I really like the feature. I like to load the regional version from Brazil for nostalgic feelings. There are many bios released in the system life, most have different graphic/animation and sound. Would make my MiSTer more like my original Master System in 1990.
You load them just like games. You would only see it when no cart is inserted anyways :) I think the behavior you are asking for is for the Master System to load such a BIOS or system ROM automatically when no cart is inserted.
Yes, exactly, this action (bios chime first, then game) bring the core closer to the real experience I had with the native system. I can do it in EverDrive, can’t in MiSter.

Re: What Does "BIOS Enable" Do?

Posted: Wed Jun 10, 2020 7:47 am
by Threepwood
Lancelot wrote: Wed Jun 10, 2020 7:33 am Yes, exactly, this action (bios chime first, then game) [...]
theflynn49 wrote: Tue Jun 09, 2020 2:12 pm [...] I am not even sure that the original machine has a bios. [...]
Quite a few versions actually. The early v1.3 even has a hidden game included (snail maze), while the later versions just loaded a game when no cart was inserted. Or would "system ROM" be a more fitting term? The Master System would play the logo chime from the system ROM and then load the cart (it is great that we do not need any dumped BIOS files to play, by the way, kudos for that).

Here a nice compilation of startup screens https://www.youtube.com/watch?v=6nSbt-GyJqY

Re: What Does "BIOS Enable" Do?

Posted: Wed Jun 10, 2020 8:07 am
by Lancelot
Yes, mine was Safari Hunt + Hang On and a third hidden one (Snail Maze). I could play these three games booting the system without a cart inserted. When a cart is inserted, the bios chime (animated graphic + sound) plays before the game loads, this is the expected behavior I hope to see in MiSTer some day.

The best one in my opinion is the japanese on with the Space Harrier theme, that’s glorious but that particular bios (or rom) does not work when I try to load it. I load this on EverDrive sometimes just to listen to the soundtrack, glorious indeed.

Re: What Does "BIOS Enable" Do?

Posted: Wed Jun 10, 2020 9:48 am
by theflynn49
Interesting.
There is a page in smspower with all the known bioses : https://www.smspower.org/Development/BIOSes

Some change could be made to Mister to add a bios load parameter, instead of loading the mboot.mif file by default, but that's some work because for the moment it's statically loaded.

Re: What Does "BIOS Enable" Do?

Posted: Thu Jun 18, 2020 7:09 pm
by eightbit
I was actually quite surprised as well not to have the ability to allow the SMS BIOS to launch before a game. Instead we have this static Sega logo...which I have never seen before. On a real Master System, the SMS BIOS would come up with the Sega chime before the game. Or, when you turned it on without a game, the BIOS would run and then run into the built in game(s) or to the "Enjoy" screen....which also had the built in Snail Maze game if you press "UP" + 1 & 2.

Re: What Does "BIOS Enable" Do?

Posted: Fri Jun 19, 2020 10:14 am
by Lancelot
eightbit wrote: Thu Jun 18, 2020 7:09 pm I was actually quite surprised as well not to have the ability to allow the SMS BIOS to launch before a game. Instead we have this static Sega logo...which I have never seen before. On a real Master System, the SMS BIOS would come up with the Sega chime before the game. Or, when you turned it on without a game, the BIOS would run and then run into the built in game(s) or to the "Enjoy" screen....which also had the built in Snail Maze game if you press "UP" + 1 & 2.
This static Sega logo is a EU bios version, if I”m not mistaken. There are many official versions in each region. I was disappointed because Terraonion’s Mega SD also does not have this feature as it loads the game directly. I even asked them for for the feature but was ignored. Perhaps some dev can look at the Krikzz implementation for his EverDrive and replicate it on MiSTer, it would be awesome.

Re: What Does "BIOS Enable" Do?

Posted: Fri Jun 19, 2020 11:48 pm
by eightbit
At least if you have the BIOS files extracted to .sms ROM format you can load them that way in the core. That's how I sometimes play the snail maze game (and relive the nostalgia!).

Re: What Does "BIOS Enable" Do?

Posted: Sun Jun 28, 2020 5:51 am
by antibolo
You can put a BIOS file in the SMS folder and rename it to boot.rom so it gets loaded at the core startup. It won't show up on subsequent games, of course, but that's good enough for me!

On a related note, it seems the Japanese v2.1 BIOS (the really cool Space Harrier-themed one) does not seem to work on MiSTer for some reason??

Re: What Does "BIOS Enable" Do?

Posted: Sun Jun 28, 2020 6:58 pm
by antibolo
Did some digging into the disassembly of the Japanese v2.1 ROM, turns out the cartridge detection code incorrectly detects a cartridge, hence why the demo screen never shows up.

A quick hack you can do to make it work on MiSTer is to open the ROM in a hex editor and change the byte at address 0x0118 to C9. This bypasses the cart detection routine completely.

And then put that modified ROM in the SMS folder as boot.rom, and presto! You get a neat splash screen for the SMS core!

Re: What Does "BIOS Enable" Do?

Posted: Mon Jul 20, 2020 5:24 pm
by skooter
I used to leave the BIOS option on, but I was playing Psychic World yesterday and I noticed the animations before each stage were really slow. I disabled the BIOS option and it started working fine. I don't know if it's a bug or expected behavior.

I captured both the wrong behavior (with the BIOS option on) and the right one (with the BIOS option off) in this video:
https://youtu.be/aiXGHCZrDZE?t=522

Re: What Does "BIOS Enable" Do?

Posted: Mon Oct 11, 2021 1:02 pm
by marcelosofth
Hello friends, any updates on how to choose Bios at startup of each game?

Re: What Does "BIOS Enable" Do?

Posted: Tue Apr 19, 2022 4:42 pm
by masamunexc
I'm waiting for any updates on this issue as well. I'd like it to boot with the animated bios with the Se-ga jingle. This is probably the only misstep I have seen MiSTer make actually, I'm surprised this isn't easily done.

Re: What Does "BIOS Enable" Do?

Posted: Sat Jun 04, 2022 2:16 am
by Lancelot
masamunexc wrote: Tue Apr 19, 2022 4:42 pm I'm waiting for any updates on this issue as well. I'd like it to boot with the animated bios with the Se-ga jingle. This is probably the only misstep I have seen MiSTer make actually, I'm surprised this isn't easily done.
Me too, I hope some dev can give this some attention.