This BIOS displays a simple message and an icon before booting the game, ala DS (the official games are unaffected) The icon, description, pallet, even the font can be customized Examples: My sonic hack (Temporary icon) Test ROM This requires a special header, which I'll put the it in my next post Below Download: BIOS Test ROM ("Hello World!") The BIOS checks for the string "GF64" at $C0 and starting from $D0, it grabs the full [LONG] locations of the pallet, font, icon and description (in this order) From the "Hello World!" ROM: Code (ASM): dc.l $FFFE00,Entrypoint,ErrorTrap,ErrorTrap dc.l ErrorTrap,ErrorTrap,ErrorTrap,ErrorTrap dc.l ErrorTrap,ErrorTrap,ErrorTrap,ErrorTrap dc.l ErrorTrap,ErrorTrap,ErrorTrap,ErrorTrap dc.l ErrorTrap,ErrorTrap,ErrorTrap,ErrorTrap dc.l ErrorTrap,ErrorTrap,ErrorTrap,ErrorTrap dc.l ErrorTrap,ErrorTrap,ErrorTrap,ErrorTrap dc.l HBlank,ErrorTrap,VBlank,ErrorTrap dc.l ErrorTrap,ErrorTrap,ErrorTrap,ErrorTrap dc.l ErrorTrap,ErrorTrap,ErrorTrap,ErrorTrap dc.l ErrorTrap,ErrorTrap,ErrorTrap,ErrorTrap dc.l ErrorTrap,ErrorTrap,ErrorTrap,ErrorTrap dc.b "GF64 " dc.l BIOS_Pal,BIOS_art_txt,BIOS_art_icon,BIOS_txt dc.b " " ; Reserved for something else... dc.b " " dc.b "SEGA Genesis " dc.b "(C)GF64 2010.???" ;the board replaced ( C ) [without spaces] to (C) dc.b "GF64",$27,"s SAMPLE PROGRAM " dc.b "GF64",$27,"s SAMPLE PROGRAM " dc.b "GM MK-1337 -00" dc.w 0 dc.b "J " dc.l 0 dc.l 0 dc.l $FF0000 dc.l $FFFFFF dc.l $20202020 dc.l $20202020 dc.l $20202020 dc.b " " dc.b "JUE " ; Note: the data can be placed anywere in the ROM BIOS_Pal: incbin "BIOS\pal.bin" even BIOS_Art_Txt: incbin "BIOS\art.bin" ;Font even BIOS_Art_Icon: incbin "BIOS\icon.bin" ;Icon 32x32 even ; "}" = space ; "{" = end-of-text BIOS_Txt: dc.b "Sample Program","}" dc.b "}" dc.b "}" dc.b "\#_day/\#_month/2011","{" even
This is nice, though I'm not sure if it would be of use... Why not show it to the people at http://gendev.spritesmind.net/forum/? It's a community dedicated to Mega Drive homebrew and hardware-related research.
I don't think its too useful, but nice novelity none the less. I would not use TRAP vectors for the addresses though, there's some unused chunks you could use instead.
^ That's the reason why I used $C0 True. I only made this for testing purposes... but it looked good to show it here, oh well.