What Does "BIOS Enable" Do?
- Threepwood
- Posts: 133
- Joined: Mon May 25, 2020 9:14 am
- Has thanked: 4 times
- Been thanked: 23 times
What Does "BIOS Enable" Do?
I am not sure what the "BIOS Enable/Disable" option does. Can somebody please explain?
- theflynn49
- Core Developer
- Posts: 15
- Joined: Sun Jun 07, 2020 9:14 pm
- Has thanked: 9 times
- Been thanked: 23 times
Re: What Does "BIOS Enable" Do?
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.
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.
- Threepwood
- Posts: 133
- Joined: Mon May 25, 2020 9:14 am
- Has thanked: 4 times
- Been thanked: 23 times
Re: What Does "BIOS Enable" Do?
Thanks a lot, that explains the function welltheflynn49 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.
Does the smsboot.asm need to be downloaded separate or is it baked into the core?theflynn49 wrote: ↑Sun Jun 07, 2020 9:21 pm There is a bios-replacement file in SMSBootLoader/smsboot.asm
Also thank you for registering here and that you took the time to answer my question about the BIOS enable option.
- theflynn49
- Core Developer
- Posts: 15
- Joined: Sun Jun 07, 2020 9:14 pm
- Has thanked: 9 times
- Been thanked: 23 times
Re: What Does "BIOS Enable" Do?
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.
It's not the original BIOS, it has been rewritten.
- theflynn49
- Core Developer
- Posts: 15
- Joined: Sun Jun 07, 2020 9:14 pm
- Has thanked: 9 times
- Been thanked: 23 times
Re: What Does "BIOS Enable" Do?
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 ?
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?
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.
- Threepwood
- Posts: 133
- Joined: Mon May 25, 2020 9:14 am
- Has thanked: 4 times
- Been thanked: 23 times
Re: What Does "BIOS Enable" Do?
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.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.
Re: What Does "BIOS Enable" Do?
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.Threepwood wrote: ↑Wed Jun 10, 2020 7:25 amYou 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.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.
- Threepwood
- Posts: 133
- Joined: Mon May 25, 2020 9:14 am
- Has thanked: 4 times
- Been thanked: 23 times
Re: What Does "BIOS Enable" Do?
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).theflynn49 wrote: ↑Tue Jun 09, 2020 2:12 pm [...] I am not even sure that the original machine has a bios. [...]
Here a nice compilation of startup screens https://www.youtube.com/watch?v=6nSbt-GyJqY
Re: What Does "BIOS Enable" Do?
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.
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.
- theflynn49
- Core Developer
- Posts: 15
- Joined: Sun Jun 07, 2020 9:14 pm
- Has thanked: 9 times
- Been thanked: 23 times
Re: What Does "BIOS Enable" Do?
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.
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?
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?
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.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.
Re: What Does "BIOS Enable" Do?
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?
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??
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?
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!
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!
- skooter
- Posts: 65
- Joined: Mon May 25, 2020 1:37 pm
- Location: Brazil
- Has thanked: 2 times
- Been thanked: 19 times
- Contact:
Re: What Does "BIOS Enable" Do?
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
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
Skooter Blog
https://www.skooterblog.com/
https://www.skooterblog.com/
- marcelosofth
- Posts: 174
- Joined: Wed Sep 22, 2021 10:03 pm
- Location: Brazil - São Paulo
- Has thanked: 8 times
- Been thanked: 4 times
- Contact:
Re: What Does "BIOS Enable" Do?
Hello friends, any updates on how to choose Bios at startup of each game?
-
- Posts: 1
- Joined: Tue Apr 19, 2022 4:40 pm
Re: What Does "BIOS Enable" Do?
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?
Me too, I hope some dev can give this some attention.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.