BS-X technical discussion
Well, if this helps, I recall asking some people about the actual hardware - the internals of the base have some pictures going around, and there's not much in them IIRC. (In fact, I found the pictures on Google Image Search again if anyone needs them.)
IIRC the base hardware isn't much more than a Satellite modem, a Satellite audio pass-through and a new AV setup. Most of the details we may need to get are either in the BIOs, the ROMs, or lost with St. Giga's defunction.
IIRC the base hardware isn't much more than a Satellite modem, a Satellite audio pass-through and a new AV setup. Most of the details we may need to get are either in the BIOs, the ROMs, or lost with St. Giga's defunction.
Ah, so it is the base unit that's breaking these games ... good to know, thanks for looking into it.The "BS checksum" is failing for BS Wai Wai / BS Dragon Quest. Zapping that check, BS Wai Wai will boot but shows nothing with BSNES (SNESGT shows random garble). Tested on all three of them. BSDQ does boot questionable code.
I use Nach's header detection for that. If you're certain they're valid, and they have headers at either 0x7fc0 or 0xffc0, you'll need to get them over to me / Nach to investigate.EDIT 2: There's benen some BS ROMs I've been trying to open that for whatever reason BSNES and SNESGT do not detect as valid Satellaview ROMs. what's up with that?
I haven't even had the time to do much with Matthew's BS-X unit, so no worries. Please take all the time you need, I appreciate the offer even if you don't get around to it.If have to admit that while i love to give out stuff for free, it usually takes me ages to actually build and ship it. (sorry byuu)
The flash write commands are easy enough. You just need a way to run your own code and access the cart port (eg most copiers won't work here.)Rewriting memory packs is not an issue technically.
blargg's serial controller is more than enough. For anyone else, they'll need something like a Tototek flash cart, rip that out while the system is on and slam in a BS-X slotted cart + flash cart. Probably a good thing it's specialized. Don't want people reflashing "blank" carts to sell on eBay as "rare English BS Zelda" carts for a lot more money.
The BS-X base unit code was written in about ten minutes off a really terse document. 90% of the registers had little to no info, so I just made it read the result if mktime(time(0)).As for the timer - IIRC the Timer on BSNES is linked to your Windows clock. Assumedly a decision Byuu made, you'll need to ask about that. I'd suggest an editable timer like SNESGT's.
If I ever get around to working on that again, I'll add a date/time widget to the BS-X loader window and make it save your last setting.
Sorry that it causes you guys so many problems.
It makes up the $21xx registers (modem communication and a real-time clock), and also mixes external sound with the S-DSP, eg how SoundLink works. I'm not aware of any other functions.IIRC the base hardware isn't much more than a Satellite modem, a Satellite audio pass-through and a new AV setup.
Most games seem to die trying to talk to the modem. I hear d4s has some modem faking stuff with his Ultra-3000 BIOS. I'm not really intending to provide such faking with bsnes, I'd prefer to return exactly what the real thing does -- that there's no satellite signal, because there isn't.
Nobody's plausibly going to manage the pipe dream of emulating a full Satellaview system over the internet with or without SoundLink, so no reason getting hopes up for that.
Thanks for the replies everyone. I understand your concerns about flashing empty cards with hacked roms and selling them for much money. Or even flashing empty cards with hacked roms without selling them.
I do however think it would be good to be able to flash cards with the original games, and maybe games that have their time limits or things like that disabled. It's kind of twofold. I understand your vision on keeping the cards' content original, but it's a pity that it is getting harder and harder to get cards with actual (working) content on it.
I own my Satellaview for some years now, and it is a long time ago that I actually played it, so I am not 100% about this. But I think you can play games from the BS-X cartridge only, without having to attach the base unit. But, again, I am not sure. Maybe it holds only for certain games, or not at all, but that is at least what I remember. I will pick up my Satellaview from my mother's house (where it's stored at the moment) soon. I will test some new cards I bought while I lived in Japan, and can test other things if wanted (as long as it doesn't break my system or games). Also, if d4s could send me a dumping cart or something like that, I'm gladly willing to dump my cards and send them to you.
Regarding the flashing of empty cards, the Satellaview has internal memory on which games can be stored, right? Does anyone know if it's possible to copy games from a memory card to the internal storage, and back to (another empty) memory card? Will try it myself as well soon, now that my Japanese is better than a few years ago.
I do however think it would be good to be able to flash cards with the original games, and maybe games that have their time limits or things like that disabled. It's kind of twofold. I understand your vision on keeping the cards' content original, but it's a pity that it is getting harder and harder to get cards with actual (working) content on it.
I own my Satellaview for some years now, and it is a long time ago that I actually played it, so I am not 100% about this. But I think you can play games from the BS-X cartridge only, without having to attach the base unit. But, again, I am not sure. Maybe it holds only for certain games, or not at all, but that is at least what I remember. I will pick up my Satellaview from my mother's house (where it's stored at the moment) soon. I will test some new cards I bought while I lived in Japan, and can test other things if wanted (as long as it doesn't break my system or games). Also, if d4s could send me a dumping cart or something like that, I'm gladly willing to dump my cards and send them to you.
Regarding the flashing of empty cards, the Satellaview has internal memory on which games can be stored, right? Does anyone know if it's possible to copy games from a memory card to the internal storage, and back to (another empty) memory card? Will try it myself as well soon, now that my Japanese is better than a few years ago.
"Most games seem to die trying to talk to the modem. I hear d4s has some modem faking stuff with his Ultra-3000 BIOS. I'm not really intending to provide such faking with bsnes, I'd prefer to return exactly what the real thing does -- that there's no satellite signal, because there isn't. "
Understandable, yet a bit troubling to me - failure to access the modem may be why a lot of the games do not boot outright. (Notably, BS Fuurai no Shiren Dai-2-wa will not boot even through the BIOs on BSNES, making that weird SNES9XSE the only emulator that can run it.)
As for the ROMs that don't show as valid - I'll try to get a more comprehensive list at some point, but off the top of my head, NP Magazine 107 (Which booted in SNESGT to show Nintendo Power Magazine text), Tora no Maki 5-31 (and 5-17 as well)... in fact, looking at the ROMs themselves, the patern seems to be that they're e-booklets done in a certain style that are stored in HiROM.
Anyway, random tidbits: Apparently a header setting causes BS Super Famicom Wars to Error 09. At 7FD5 I removed "9C" (Replaced with 00), and this made the game boot successfully on BSNES.
Understandable, yet a bit troubling to me - failure to access the modem may be why a lot of the games do not boot outright. (Notably, BS Fuurai no Shiren Dai-2-wa will not boot even through the BIOs on BSNES, making that weird SNES9XSE the only emulator that can run it.)
As for the ROMs that don't show as valid - I'll try to get a more comprehensive list at some point, but off the top of my head, NP Magazine 107 (Which booted in SNESGT to show Nintendo Power Magazine text), Tora no Maki 5-31 (and 5-17 as well)... in fact, looking at the ROMs themselves, the patern seems to be that they're e-booklets done in a certain style that are stored in HiROM.
Anyway, random tidbits: Apparently a header setting causes BS Super Famicom Wars to Error 09. At 7FD5 I removed "9C" (Replaced with 00), and this made the game boot successfully on BSNES.
7E9BF401Kiddo wrote:Understandable, yet a bit troubling to me - failure to access the modem may be why a lot of the games do not boot outright. (Notably, BS Fuurai no Shiren Dai-2-wa will not boot even through the BIOs on BSNES, making that weird SNES9XSE the only emulator that can run it.)
7E9BF502
7E9BF800
7E9BF930
These codes will activate the game. When/where they get written is..? o_o
I've also been trying to force-boot the ROM labeled "Satella2-1", but it seems the game also crashed on bootup like Shiren does. (And unlike Shiren, SNES9XSE doesn't boot it, and SNESGT gets as far as a Blue Screen...)
http://kiddocabbusses.tryhappy.net/noth ... -1name.PNG
I at least got it's header name... hrm.
http://kiddocabbusses.tryhappy.net/noth ... -1name.PNG
I at least got it's header name... hrm.
Oh blast! Sorry to bump this topic but...
I recently reset my comp (starting over, somewhat), and I went to get the latest BSNES (as of this writing 0.041)
But I could not seem to load anything Satellaview-y on it - no Memory Packs or Data Carts.
I had to find an old version (0.038) again in order to play them.
Is there something up? Did the feature get broken while I wasn't looking or am I just doing something wrong?
I recently reset my comp (starting over, somewhat), and I went to get the latest BSNES (as of this writing 0.041)
But I could not seem to load anything Satellaview-y on it - no Memory Packs or Data Carts.
I had to find an old version (0.038) again in order to play them.
Is there something up? Did the feature get broken while I wasn't looking or am I just doing something wrong?
-
- ZSNES Developer
- Posts: 3904
- Joined: Tue Jul 27, 2004 10:54 pm
- Location: Solar powered park bench
- Contact:
All the BS Dragon Quest dumps I've seen floating around the net are invalid. Their headers contain values a clean dump never would.byuu wrote:I use Nach's header detection for that. If you're certain they're valid, and they have headers at either 0x7fc0 or 0xffc0, you'll need to get them over to me / Nach to investigate.EDIT 2: There's benen some BS ROMs I've been trying to open that for whatever reason BSNES and SNESGT do not detect as valid Satellaview ROMs. what's up with that?
May 9 2007 - NSRT 3.4, now with lots of hashing and even more accurate information! Go download it.
_____________
Insane Coding
_____________
Insane Coding
Nach: I was not refering to any of the BS Dragon Quest ROMs (In fact, that comes out with a valid checksum and plays rather easily.) - although that ROM has some odd behaviors that definately aren't from the standard release. (Namely the boot menu.)
byuu: Slotted cart datas do not detect, and when I try to access a Memory Pack in the BIOs I get the "Error 08" which IIRC usually only occurs on emulators where the Satellaview devices aren't even being emulated.
Again, I popped in an older version and that worked ok, so I don't know how it could be a problem on my end.
byuu: Slotted cart datas do not detect, and when I try to access a Memory Pack in the BIOs I get the "Error 08" which IIRC usually only occurs on emulators where the Satellaview devices aren't even being emulated.
Again, I popped in an older version and that worked ok, so I don't know how it could be a problem on my end.
Oh, that's where this was. Replied in the wrong area.
Please let me know if you still have trouble with v042. I had the same error 08, didn't notice because I usually stop after seeing the BS-X title screen.Kiddo, you were right about there being a BS-X bug. Actually there were two, heh.
On Windows, it wasn't copying the BIOS name over correctly; and after that, it was throwing errors when you went to boot the cart from the town menu. That took me nearly three hours to track down. Apparently, I changed virtual unsigned Memory::size() to virtual unsigned Memory::size() const, but didn't update BSXFlash::size() to const as well, so it was ignoring it and using the base type, returning 0 for the cart size, which broke mapping.