Road Blaster, now also on SNES

This is an archive of a topic from NESdev BBS, taken in mid-October 2019 before a server upgrade.
View original topic
Road Blaster, now also on SNES
by on (#87969)
Play a 26 year old game on a 21 year old console, today!

by on (#87970)
Looks like a pretty shitty game, but good job on the port. :) Good to see MSU-1 getting used.

by on (#87972)
I wish Mega CD game was that smooth (the video seems quite a bit smoother)

by on (#87973)
From the thread title, I was expecting a port of RoadBlasters, I didn't even know there was a laserdisc game called Road Blaster.

by on (#87980)
Wait, was it a port made by d4s or an actual unreleased prototype? I suppose it's from d4s as there would be no way of manufacturing such a big cart back then but the post wasn't really stating what it was or where it came from... It's impressive none the less! From the video it look like it's smoother than FMV on Sega Saturn 8) Now we wait until someone solder 56 piggy-backed 27c801 EPROM into a cart and try to pass it as a very rare prototype! :lol:

Edit: I just realized the post is by d4s himself lol. So I guess I'm asking you directly but after downloading the game and noticing it's 560Mb, I guess I answered my own question :roll: Somebody's feeling stupid right now :lol:

by on (#87991)
I guess it was supposed to be for the Play Station. With a space ;-)

by on (#88000)
I would love to see someone try and sell this as a cartridge on eBay :D

by on (#88026)
Pretty cool port! BTW, if no-one noticed, that is the same car from the beginning of Double Dragon (not seen on the NES version).

by on (#88030)
What is that cart you are using to load this massive game on your Snes? I think I can see an SD slot at the top but don't think any of the available snes flash cart could support such a massive rom...

by on (#88039)
SkinnyV wrote:
What is that cart you are using to load this massive game on your Snes? I think I can see an SD slot at the top but don't think any of the available snes flash cart could support such a massive rom...


It's called sd2snes.
Sd2snes is a flashcart of sorts and features the only hardware implementation yet of a special device called the MSU1, developed by byuu.
MSU1 gives you 4Gb of storage space and CD-quality audio-playback.

byuu wrote:
I would love to see someone try and sell this as a cartridge on eBay :D


That would be interesting. =)
Thought about a MSU1-less version with HDMA audio streaming and just a big, fat ROM plus custom mapper, too.
FlashROM is dirt-cheap nowadays (~$20 for an 8Gbit chip on digikey), so it's a possibility.
I would certainly love to see a couple of cartridges made of this game, just for the heck of it.
I mailed bunnyboy concerning that, but he didn't even deem it necessary to answer my mail, whatever... :roll:

by on (#88040)
Quote:
I mailed bunnyboy concerning that, but he didn't even deem it necessary to answer my mail, whatever...


Maybe you can PM him at the NA forum if he's still around there. He did publish Shiru's xmas game for the SNES after all, so I don't think he's unwilling to publish yours unless he considered it too much work due to the custom solution.

by on (#88042)
d4s wrote:
FlashROM is dirt-cheap nowadays (~$20 for an 8Gbit chip on digikey), so it's a possibility.

Raw NAND, like the part you linked, requires the mapper to do error correction. SD, on the other hand, has a controller IC to handle this error correction for you and make it appear as a standard block device. So if you can implement an SPI-based SD interface in your custom mapper, you could solder an SD or microSD card onto the board and get cheap big flash that way. I see 8 Gbit for $2.

by on (#88049)
mic_ wrote:
He did publish Shiru's xmas game for the SNES after all,

This game was made by his request.

by on (#88051)
Quote:
Maybe you can PM him at the NA forum if he's still around there.

Well, that probably wouldn't work either.
http://www.nintendoage.com/index.cfm?Fu ... r=bunnyboy
Quote:
(I Don't Read PMs)

by on (#88057)
Contacting bunnyboy about anything is like trying to get in touch personally with Brad Pitt. Every time I had to e-mail him on RetroZone he would take week to reply. I received a powerpak with a dozen tiny hole in the label and considering the price I paid for it was looking for a replacement label at least, e-mailed him on september 27, got a reply on november 8 and none since then.

About the cart, I know about sd2snes, I just didn't know some prototypes were out in the wild. I am waiting for the time they get released, I guess being able to try Road Blaster on it will be one more reason to get one. Stillo pretty awesome to see something like that running on the snes, I remember playing Space Ace and Dragon Lair's on my friend PC back in the 1990 and trust me, it didn't look anything like your port of Road Blaster! :lol:

by on (#88060)
Actually Ikari already sold the first and second batch of his sd2snes already on snesfreaks ;)

by on (#88064)
Quote:
Thought about a MSU1-less version with HDMA audio streaming and just a big, fat ROM plus custom mapper, too.
FlashROM is dirt-cheap nowadays (~$20 for an 8Gbit chip on digikey), so it's a possibility.


As long as you only use it for one data stream, that should be easy. You only need more expensive parallel NOR flash when you want to have two things hitting the storage at different areas simultaneously (audio track + data stream simultaneously.) [that, or you need a really fast chip and lots of buffering ahead.] The other design method is one ROM for data, one ROM for audio tracks. The latter with a TOC.

As for the audio, I was surprised to see you go with sound effects over the MSU1. It was really meant more to be the BGM track, with SPC700 sound effects ... but of course, you are free to use it however you like :D
If you want to implement it on hardware anyway, it's honestly not any harder than a custom bank mapper. The SNES has the left/right audio input pins right on the cart, which act exactly like an RCA input jack.

Although it would be great to have an MSU1 standalone design for just this sort of thing; I understand the appeal of a simpler design. If you want to prototype, I can help set up a custom chip under bsnes so you can get the code working in software first.

Simplest mass storage design: I would advise using a 74LS chip (or two?) to hold a 16-bit register value, map the write latches wherever (say, $?0??????:6000,6001). Then treat all accesses to $40:xxxx as $74LS:xxxx; by routing the 74LS to the upper address lines of your flash chip, and the lower lines directly to the Abus.

<offtopic, sorry>
Truth be told, I really wanted to allow >4GB of storage, and eight audio channels so that you could do BGM+sound effects, and completely ignore the SPC700 (aside from unmuting it at power-on.) Perhaps use it as a math coprocessor or something. But I knew that if I got too carried away, it'd never be implemented in hardware or other emulators.

I stopped at 4GB because that's a common limitation for most portable libc file access functions and for FAT32 and such (IIRC.) Made the 4GB block read-only so that you only had to buffer in one direction, and so any medium could be used. Stopped at one audio channel because each adds seek access overhead for non-parallel ROM; and >1 requires an audio mixer.

So I pretty much designed it to be 'stackable', instead. Idea is that in the future, you just use as many MSU1 'units' as you want. One at $2000-2007, one at $2008-200f, etc. Of course you'll probably never see that in hardware form; so it's strongly advised to stick to one. I really owe a world of thanks to ikari. Had he not made the actual hardware implementation, this idea would have never taken off.
</offtopic>

by on (#88070)
Hias wrote:
Actually Ikari already sold the first and second batch of his sd2snes already on snesfreaks ;)


Crap! I've been following his blog and don't remember seeing any mention of this. Disappointing!

How can English (or french :) ) speaker can acquire one? That website's forum is all in what appear to be German...

by on (#88125)
byuu wrote:
As long as you only use it for one data stream, that should be easy. You only need more expensive parallel NOR flash when you want to have two things hitting the storage at different areas simultaneously (audio track + data stream simultaneously.) [that, or you need a really fast chip and lots of buffering ahead.] The other design method is one ROM for data, one ROM for audio tracks. The latter with a TOC.


At the moment, this cartridge version is more like a pipe dream than anything else.
I would probably try interleaving audio and video data first.

byuu wrote:
As for the audio, I was surprised to see you go with sound effects over the MSU1. It was really meant more to be the BGM track, with SPC700 sound effects ... but of course, you are free to use it however you like :D


Actually, I'm using it exactly in this way:
The warning beeps (which are more or less the only sound effects right now) are generated on the SPC700 and the movie sound comes from the MSU1.
Movie sound includes sound effects, though.
Nothing I can do about that. ;)

I really, really wanted to use the audio track of the Mega CD version(Road Blaster FX/Road Avenger), because it features much better music and sound effects IMHO.
Too bad the sound quality of that version is so bad it's beyond useable.

One day, I'll meet Sakuraba Motoi and he'll readily hand me all the master tapes.
Yeah, I can dream... :/


byuu wrote:
Truth be told, I really wanted to allow >4GB of storage, and eight audio channels so that you could do BGM+sound effects, and completely ignore the SPC700 (aside from unmuting it at power-on.) Perhaps use it as a math coprocessor or something. But I knew that if I got too carried away, it'd never be implemented in hardware or other emulators.


I think you made sensible choices in these regards.
Filling 4GB with worthwhile content is difficult as it is.
And I believe the SPC700 is entirely sufficient for sound effects.

by on (#88366)
Hmm... the MSU-1 would allow me to produce music with no conversion to SPC needed (AKA, no channel limitations). However, I would lose the ability to test the game, as my computer is incompatible with the latest version of bsnes (I only run an iMac G5 running Mac OS X 10.4.11... :( ).

With four gigabytes of memory, that's enough to fit a whole bunch of music in there! I can easily create lots of music, and you'd be surprised at just how much.

by on (#89670)
Just to double check, Road Blasters on BSNES says NTSC mode not supported. Is there a way to change to PAL mode, or does the emu read that from my PC or something?

by on (#89676)
The game must be relying on the very significant boost in VRAM bandwidth that PAL gives.

by on (#89678)
Quote:
Is there a way to change to PAL mode


Settings->Configuration->Advanced->Hardware region

by on (#89681)
> With four gigabytes of memory, that's enough to fit a whole bunch of music in there!

The 4GB is for the data file. You can have up to 65,536 audio tracks that are each as large as you want (>16GB per song if you wanted.)

> Just to double check, Road Blasters on BSNES says NTSC mode not supported.

The default operation in bsnes is region auto-detect, so you must have asked it to override that setting.

by on (#89731)
Greg2600 wrote:
Road Blasters on BSNES says NTSC mode not supported.


Just for the record, the error message says
Quote:
NTSC-mode is not supported yet

by on (#89740)
mic_ wrote:
Quote:
Is there a way to change to PAL mode


Settings->Configuration->Advanced->Hardware region
There's no such Hardware region option, at least not anymore. I have bsnes v085.

by on (#93978)
I've released the finished game earlier this week.
Enjoy & check it out at http://www.dforce3000.de/?uid=43.

FYI, the game runs perfectly fine in NTSC and PAL mode now.

by on (#93983)
Greg2600 wrote:
There's no such Hardware region option, at least not anymore. I have bsnes v085.


The GUI no longer allows overriding the game. Edit the manifest.xml file and set <cartridge region="NTSC"> instead of "PAL". The filename may be "Super Road Blaster.xml".

d4s wrote:
I've released the finished game earlier this week.


This is awesome and you are totally awesome :D
Kudos on making the most visually impressive SNES game ever.

by on (#93996)
If only MSU-1 was more accessible. It's a shame that only SD2SNES supports it right now. =( That and I can't buy an SD2SNES right now even if I wanted it.

by on (#94004)
Nice work. I tried it out and while I'm not a huge fan of the gameplay, it looks like a well presented port. Well done =)

by on (#94018)
MottZilla wrote:
If only MSU-1 was more accessible. It's a shame that only SD2SNES supports it right now. =( That and I can't buy an SD2SNES right now even if I wanted it.


Yes, if only it were emulated or something ... :P

But yeah, I've brought it up with the Snes9X devs. Although MSU1 is only ~4KB of code, the problem is that you need to have an audio mixer to combine the SNES output with it. This would already be there for an emulator with Super Game Boy support, but missing otherwise.

However, providing a strong reason for adding it (playing great games like this), will certainly help make the case for it sooner.
Re: Road Blaster, now also on SNES
by on (#100498)
Finally got me an SD2SNES. Road Blasters (NTSC) works fantastically! Hoping more conversions are on the way!!!!
Re:
by on (#100790)
byuu wrote:
MottZilla wrote:
If only MSU-1 was more accessible. It's a shame that only SD2SNES supports it right now. =( That and I can't buy an SD2SNES right now even if I wanted it.


Yes, if only it were emulated or something ... :P

But yeah, I've brought it up with the Snes9X devs. Although MSU1 is only ~4KB of code, the problem is that you need to have an audio mixer to combine the SNES output with it. This would already be there for an emulator with Super Game Boy support, but missing otherwise.

However, providing a strong reason for adding it (playing great games like this), will certainly help make the case for it sooner.


And adding support in more widely used emulators will encourage developers and ROM hackers to use it. It comes full circle, and everybody wins. I'd love to see that Chrono Trigger FMV hack finished...
Re: Road Blaster, now also on SNES
by on (#100795)
I'd like to see CD audio replacements made more prevalent. There's a lot of awesome video game music remixes, higher quality remasterings, orchestral CDs, etc out there.

I did this for Der Langrisser and for Earthbound. Takes ~10 minutes a game. Trace writes to $214x near a song start, then jump up the call stack until you find the lda #trackNumber; jsr PlayTrack routine. Replace the PlayTrack function with an MSU1 play track command. Done.

But I don't have the time or bandwidth to put together full game sound tracks.

> I'd love to see that Chrono Trigger FMV hack finished...

Yeah, it's a damn shame I was trying to make it an expansion port device first, so it no longer works with MSU1.
But if we kept it that way, Super Road Blaster would not have been possible.
Re: Road Blaster, now also on SNES
by on (#100797)
Why doesn't the CT hack work with MSU-1 anymore? I thought it worked in BSNES... or was that only in an old version? Could the hack be altered to work with the finalized MSU-1?
Re: Road Blaster, now also on SNES
by on (#100798)
It was made for 21fx, which was a prototype of the API that used different registers.
Re: Road Blaster, now also on SNES
by on (#100813)
Could it be modified to work with the finalized design? From my understanding of the hack, all it does is jump to a cutscene at a specified point, then returns at the end of playback. The movie playback aspect is still viable, so is the finalized MSU-1 really not capable of achieving the hack, or is it just not capable of playing it in its current state since it's accessing non-existent registers?
Re: Road Blaster, now also on SNES
by on (#100814)
What changed with MSU-1 from 21FX that made it no longer an expansion port device? I knew you'd changed up the idea, but I never read up on what all changed.
Re: Road Blaster, now also on SNES
by on (#100819)
> What changed with MSU-1 from 21FX that made it no longer an expansion port device?

SNES has two buses. One is 24-bit (A-bus), one is 8-bit (B-bus). The 8-bit bus is all the expansion port has access to, and it's also where you write to VRAM from. You can't DMA from and to the 8-bit bus at the same time.

So as nice as an expansion port is for housing more hardware, working with existing flash carts, and just being cool as shit; it's better for the chip to be on the A-bus, which means inside of a cartridge, so that you can DMA directly from the chip to VRAM. It doubles the amount of data you can get into VRAM because you don't have to copy it to WRAM first.

So 21fx was in $21f0-21f2, and MSU1 is in $2000-2007.
http://byuu.org/21fx/programming-guide
http://byuu.org/snes/msu1/development

I also unrolled the registers to be a bit easier to program for, per ikari's input on what would be easier to do on hardware.

> is the finalized MSU-1 really not capable of achieving the hack

It's more capable than the original, it's just that nobody has ported it to MSU1's new register interface.
It's not hard to do, it's just that there's nobody with both the time and interest to do it.
Re: Road Blaster, now also on SNES
by on (#100821)
byuu wrote:
> What changed with MSU-1 from 21FX that made it no longer an expansion port device?
It's not hard to do, it's just that there's nobody with both the time and interest to do it.


Well, time, interest, and knowledge. I have the first two, but lack the third. I've got a pretty strong software background, and have done assembly work (x86), but never anything on a system like the SNES.
Re: Road Blaster, now also on SNES
by on (#100823)
Time and interest are the things that needed to get knowledge. Read some docs, try some SNES programming tutorials, and you'll obtain it.