Links

HazeMD Releases

    0.14a
  • Source+Binaries
    (internal database rebuild)

    0.12a
  • Source+Binaries

    HazeMD is a Megadrive / Genesis emulator based on the MAME code. It works in exactly the same way MAME does.

Radica (Custom Genesis)

Super Bubble Bobble MD (Unofficial Genesis)

Radica (Custom Genesis)

Indiana Jones' Greatest Adventure (Genesis)

Indiana Jones' Greatest Adventure (Genesis)

Kolibri (32X)

Kolibri (32X)

« Dive Dive!  |  Main  |  Cool! »

December 2nd, 2009

Standing in a Spotlight

One of the features of the Hyper Neogeo 64 hardware is additive blending (and I actually wonder if it’s the only blend mode it supports) Additive blend, as it’s name would suggest adds the colour from one image to another (as opposed to regular alpha blending which averages the colours of the source and destination)

In the most basic terms this means that any black parts of the image to be blended become invisible, and any grey/white parts cause the image to become tinted white. (In reality it can appear a bit more complex as both bitmaps can be full-colour, not greyscale)

We’ve already seen that this is supported on sprites; several places use it, and basic (buggy) support for it on sprites was added in the last MAME update.

It is however also used on the tilemap layers to do special effects. The Samurai Shodown games are a good example of this as they use it on various stages to add dust effects, and lighting effects. The following screens from the Samurai Shodown 64 Warriors Rage attract mode show it being used for a light beam. (Left is the normal tilemap data, right is with the additive blend enabled)


Samurai Shodown 64 Warriors Rage Samurai Shodown 64 Warriors Rage

It’s a subtle effect, but on the real hardware, with the 3d enabled (which it blends over) an impressive one for the time period.

The original Samurai Shodown 64 also uses it, although it’s probably less obvious in screenshots, but this is why there are ’solid’ layers covering the background graphics on some stages at the moment, they’re effect layers. This effect is move obvious when moving because the effect is moving quickly, creating disruptions in the original image which are meant to represent fog / snow.


Samurai Shodown 64 Samurai Shodown 64

Of course, things aren’t that simple. MAME doesn’t natively support additive blending in it’s tilemap draw calls, so I had to copy half of tilemap.c into the driver to hook up the effect, and furthermore it isn’t clear how they enable it on the real hardware, so it’s currently hooked up to some debug keys anyway.

If you combine additive blending, and RGB control registers, you can use the blending to do other effects such as fading something out, or causing a whiteout. I have a feeling that they do this in places, which is making it more confusing and harder to tell which registers enable the / select the fade to use, and which enable the blending.

I wouldn’t expect astronomical progress on Hyper Neogeo 64 the same way that CPS3 was emulated, the 3D especially is tricky, and only really currently works in Fatal Fury, and partially in Buriki One due to some fairly gross 3d-ram access hacks, which don’t REALLY full represent how the hardware works. It’s a somewhat complex system, with limited test cases, and even understanding something as simple as the tilemap ordering and effect enables is difficult due to effects being used together making it hard to isolate individual bits responsible. Also, as a further roadblock, developers who generally do 3D work don’t seem very interested in the driver at all.

In other words, don’t expect these things to be fully playable for at least another couple of years, I know I’m not.

Posted by Haze at December 2nd, 2009 13:07

Comments

Cheer up, I know both Kale and you will be able to identify most, if not all, of those unknown bits, and I think some developer will sooner or later help you with the 3D side of the system.

Posted by: Héctor at December 2, 2009 15:28

For anyone who’s curious, additive blending is used fairly extensively in almost all games these days for things like particle effects and lens-flare textures. Also, for anyone curious about the math behind it, a typical alpha blend equation looks like this for each color channel:

New Framebuffer = (Rendered Color) * Alpha + (Old Framebuffer Value) * (1.0 – Alpha)

The end result is that if the alpha value for the primitive is 1.0, then the rendered color will be completely opaque. If the alpha value is 0, then the rendered color will be completely transparent, and the pre-existing color in the framebuffer will be completely opaque. Anything in between gives you a linear gradient between the two.

For additive blending, it’s much more simple:

New Framebuffer = Old Framebuffer + Rendered Color

As Haze explained, if the rendered color is black – (0, 0, 0) – then nothing will be added to the pre-existing framebuffer value.

Posted by: MooglyGuy at December 2, 2009 17:13

Thanks to everyone who is taking the time to make this possible. I’m obviously a big neo geo junkie and even though I have only played the Playstation Samurai Showdown PSX version of the Neo Geo 64 arcade game, and wasn’t very wowed by it, I appreciate all you folks do in preserving these games!

Posted by: Paratech at December 2, 2009 19:37

Hi David, i have finally bought a TOP2049 EPROM reader/burner. Once i get it, i will dump and send you the joe and mac bootleg roms as promised and also dump the 2 PAL/GAL undumped on RAIMAIS Japan version called on the board B36-04 and B36-05.

Do you have any clues or recommandations to give me before trying to dump ? Is there things that i must not do and take care of ?

Posted by: Dlfrsilver at December 2, 2009 20:09

I’m not really an expert in rom dumping I’m afraid, I tennd to take care of the software side of emulation only.

I can point out obvious problems with dumps if they’re bad, but not how to resolve them.

Posted by: Haze at December 2, 2009 20:24

@Paratech, the PSX 3D Samurai Shodown game has nothing in common with the Hyper Neo Geo 64 titles.

Posted by: Héctor at December 2, 2009 21:50

Thanks for the heads up, maybe the game is better than the Playstation version? I hope so!?

Posted by: Paratech at December 4, 2009 01:26

Haze,I have a question about double Wings,In mame0.135u2 this game marked not working,but In fact once enter the game you can find the game fully playable, so why Mame mark it not working?

Posted by: jark at December 4, 2009 02:02

It crashes if you don’t kill some of the bosses, or at other times if using player 2.

Posted by: Haze at December 4, 2009 07:54

ok,Haze,so you and Kale if can fix the game issue?

Posted by: jark at December 4, 2009 09:40

great update,i’vealways wanted to play those samurai shodown games,dont’ care what the critics said about them.glad to see some update on the driver,and haze,don’t discourage about not seeing results soon…they said the same about cps3 and way back,for killer instinct..granted they are completely different platforms,but if one keeps on following his objectives.. ;)

Posted by: Alexander at December 4, 2009 10:38

No, we won’t be working on Double Wings.

Posted by: Haze at December 4, 2009 12:43

@Héctor: That’s not entirely true. While the PS1 3D SamSho game was not a port of either Hyper title, it was a direct storyline sequel. :)

At any rate, great work, you guys. Even though I have these two games (and Buriki-One) in my arcade cabinet, I still would love to see these games emulated and playable, so that more people would be able to experience these overlooked and underrated gems. Keep up the fantastic effort!

Posted by: Deuce at December 5, 2009 20:19

Dlfrsilver,

The PAL’s/GAL’s might have the security fuse blown so if you can dump them check if see you get various 1’s and 0’s. If all you get is nothing but 1’s then the security fuse was blown and the dump is useless.

Posted by: Kevin Eshbach at December 6, 2009 00:46

I was talking about just graphics and gameplay wise, since Paratech said “Playstation Samurai Showdown PSX version of the Neo Geo 64 arcade game”.

Haze, any news on the HNG 64 front? or did you abandon it to look full-time at Cool Riders?

Posted by: Héctor at December 7, 2009 10:24

as mentioned in the update, I wouldn’t expect to see significant progress on Hng64. I haven’t actually been working on anything the past few days.

Posted by: Haze at December 7, 2009 21:43

It’s not about significant progress, but if we know you aren’t even looking at it anymore we know we shouldn’t expect to see even a bit of it :P.

Posted by: Héctor at December 8, 2009 09:47

Haze,Merry christmas and Happy New year,I hope in 2010 Mame can support More interesting shooting games and Act games

Posted by: jark at December 9, 2009 14:04