Reverse-engineered FDS BIOS?

Discuss emulation of the Nintendo Entertainment System and Famicom.

Moderator: Moderators

Post Reply
User avatar
LightStruk
Posts: 45
Joined: Sat May 04, 2013 6:44 am

Reverse-engineered FDS BIOS?

Post by LightStruk »

Has anyone ever attempted to make a replacement FDS BIOS? Using the dumped real FDS BIOS obviously works for emulation, but that dump is still a copyrighted work.

The replacement BIOS wouldn't need to be a drop-in replacement for the real thing on real hardware. It would only need to work well enough so that emulating .FDS images works. In other words, it would just need to emulate the real BIOS' behavior from the Famicom's point of view.
tepples
Posts: 22345
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: Reverse-engineered FDS BIOS?

Post by tepples »

There is high-level emulation (HLE), which isn't cycle-accurate but which GBA emulators have successfully offered for a long time. But one thing that makes HLE easy on GBA but hard on FDS is the fact that while GBA uses syscall numbers, FDS uses hardcoded entry points. This is the same thing that makes reimplementing the BIOS from scratch in 6502 assembly language so hard, as the replacement routines have to be the same lengths as the originals..
natt
Posts: 76
Joined: Fri Oct 26, 2012 5:27 pm

Re: Reverse-engineered FDS BIOS?

Post by natt »

I guess I never really checked... do any FDS games use the disk IO regs directly instead of invoking the bios?
ccovell
Posts: 1041
Joined: Sun Mar 19, 2006 9:44 pm
Location: Japan
Contact:

Re: Reverse-engineered FDS BIOS?

Post by ccovell »

Yes, in a sense. Games that have copy protection / counterfeit checks like Doki Doki Panic run their own "implementations" of the BIOS file check routine in software, counting the # of files manually, then reading past what the BIOS just read. So a few games manually edit ZP variables and FDS regs which the BIOS uses.
User avatar
tokumaru
Posts: 12106
Joined: Sat Feb 12, 2005 9:43 pm
Location: Rio de Janeiro - Brazil

Re: Reverse-engineered FDS BIOS?

Post by tokumaru »

tepples wrote:...as the replacement routines have to be the same lengths as the originals..
Can't the new routines just jump around a bit if they happen to be larger than the originals?
tepples
Posts: 22345
Joined: Sun Sep 19, 2004 11:12 pm
Location: NE Indiana, USA (NTSC)
Contact:

Re: Reverse-engineered FDS BIOS?

Post by tepples »

tokumaru wrote:
tepples wrote:...as the replacement routines have to be the same lengths as the originals..
Can't the new routines just jump around a bit if they happen to be larger than the originals?
The ROM of the Enhanced Apple IIe and Apple IIGS computers does that, with some routines stored in a separate ROM bank. But there probably isn't much space left in the FDS BIOS unless you make the intro screen dramatically simpler and use it for overflow.


(I occasionally bump if I have a substantive reply to a post that I found while searching for something else.)
Post Reply