Recca on the Sega Master System (sort of)

This is the main shmups forum. Chat about shmups in here - keep it on-topic please!
Post Reply
User avatar
Herr Schatten
Posts: 3285
Joined: Wed Jan 26, 2005 12:14 pm
Location: Germany
Contact:

Recca on the Sega Master System (sort of)

Post by Herr Schatten »

https://youtu.be/84mDHnadWcI
Really nice proof of concept. I like the little details like how the status bar apparently has been done by switching to a legacy graphics mode mid-frame. Neat.

This is from the guy who coded Blade Buster and GG Aleste 3, so it’s not a big surprise he can pull this off. He did a couple of other similar one-level demos like that and put videos out in his YT channel, which are worth checking out. I believe the Musha Aleste, Detana!! TwinBee and Gradius II ones have already been talked about around here, but there’s also a pretty cool demake of Super Aleste.
User avatar
Sengoku Strider
Posts: 2498
Joined: Wed Aug 05, 2020 6:21 am

Re: Recca on the Sega Master System (sort of)

Post by Sengoku Strider »

Very cool. I hope it gets finished, I'm sure the Master System could pull this off with smoother technical performance than the Famicom original had. (Also FM sound plz).

Offhand, does anybody know who (if anyone) owns the rights to Naxat's stuff? I know the parent company went under back in 2015.
User avatar
jehu
Posts: 484
Joined: Tue Oct 05, 2021 3:15 am
Location: Space Bomber 1-3

Re: Recca on the Sega Master System (sort of)

Post by jehu »

Very cool to see this running. I'd love it if he put together another production like Blade Buster and cash in on the retro-renaissance. Talented guy.
Sengoku Strider wrote:(Also FM sound plz).
This stood out to me the most watching the video. Incredible technical translation of the game, but Recca derives so much of its identity from the 'watch me punch out your damn CRT speakers' OST.
User avatar
OmegaFlareX
Posts: 889
Joined: Tue Jan 25, 2005 10:15 pm
Location: Virginia, USA

Re: Recca on the Sega Master System (sort of)

Post by OmegaFlareX »

I'm not sure if it's possible during a game, but if they can find a way to use both FM and PSG simultaneously, that would be amazing.
User avatar
Herr Schatten
Posts: 3285
Joined: Wed Jan 26, 2005 12:14 pm
Location: Germany
Contact:

Re: Recca on the Sega Master System (sort of)

Post by Herr Schatten »

OmegaFlareX wrote:I'm not sure if it's possible during a game, but if they can find a way to use both FM and PSG simultaneously, that would be amazing.
Depends on the machine. Having FM and PSG simultaneously is possible on japanese Master Systems and on most third-party produced FM boards (such as those from VileTim). On the Mark III with FM unit, PSG and FM are mutually exclusive. Unmodded western Master Systems have no FM capabilities whatsoever, of course.

Using both sound chips in a busy action game would be difficult, though. Updating FM channels is relatively slow due to being only possible in certain intervals, and there’s nine of them, as opposed to the PSG's four (that also can be updated anytime you want, without any restrictions). You wouldn't really want to use FM sound in a game where every cpu cycle counts. You can actually observe this effect in Aleste / Power Strike: If you switch to FM, there’s noticeably more slowdown.

Anyway, unfortunately, it’s unlikely we’ll ever see more of this project than the linked video. The guy seems to make these little showcases as a fun programming exercise, but as far as I know, he’s never developed any of them further.
User avatar
WelshMegalodon
Posts: 1225
Joined: Fri Dec 11, 2015 5:09 am

Re: Recca on the Sega Master System (sort of)

Post by WelshMegalodon »

Herr Schatten wrote:You wouldn't really want to use FM sound in a game where every cpu cycle counts. You can actually observe this effect in Aleste / Power Strike: If you switch to FM, there’s noticeably more slowdown.
So FM sound makes After Burner even slower? Incredible.
Indie hipsters: "Arcades are so dead"
Finite Continues? Ain't that some shit.
RBelmont wrote:A little math shows that if you overclock a Pi3 to about 3.4 GHz you'll start to be competitive with PCs from 2002. And you'll also set your house on fire
User avatar
Sengoku Strider
Posts: 2498
Joined: Wed Aug 05, 2020 6:21 am

Re: Recca on the Sega Master System (sort of)

Post by Sengoku Strider »

Herr Schatten wrote:
OmegaFlareX wrote:I'm not sure if it's possible during a game, but if they can find a way to use both FM and PSG simultaneously, that would be amazing.
Depends on the machine. Having FM and PSG simultaneously is possible on japanese Master Systems and on most third-party produced FM boards (such as those from VileTim). On the Mark III with FM unit, PSG and FM are mutually exclusive. Unmodded western Master Systems have no FM capabilities whatsoever, of course.

Using both sound chips in a busy action game would be difficult, though. Updating FM channels is relatively slow due to being only possible in certain intervals, and there’s nine of them, as opposed to the PSG's four (that also can be updated anytime you want, without any restrictions). You wouldn't really want to use FM sound in a game where every cpu cycle counts. You can actually observe this effect in Aleste / Power Strike: If you switch to FM, there’s noticeably more slowdown.

Anyway, unfortunately, it’s unlikely we’ll ever see more of this project than the linked video. The guy seems to make these little showcases as a fun programming exercise, but as far as I know, he’s never developed any of them further.
Thanks for that explanation. I'm glad you pop in with these bits of info every now and then, for some reason the technical aspects of the Master System fascinate me.
User avatar
Herr Schatten
Posts: 3285
Joined: Wed Jan 26, 2005 12:14 pm
Location: Germany
Contact:

Re: Recca on the Sega Master System (sort of)

Post by Herr Schatten »

WelshMegalodon wrote:So FM sound makes After Burner even slower? Incredible.
Not necessarily. The frame rate in Afterburner isn’t low because there’s more action on screen than the system can cope with, rather it’s been capped intentionally, because it’s impossible to update the whole name table (tilemap) in a single frame, and you’d get terrible screen tearing if you tried to update it as quickly as possible. Since the game logic is probably not consuming all that much cpu time, especially not if stretched over multiple frames, I’m pretty sure there’s plenty of time to update those FM channels.

Sengoku Strider wrote:for some reason the technical aspects of the Master System fascinate me.
It’s a very capable machine in the right hands, but boy does it have its quirks.
User avatar
Sengoku Strider
Posts: 2498
Joined: Wed Aug 05, 2020 6:21 am

Re: Recca on the Sega Master System (sort of)

Post by Sengoku Strider »

Herr Schatten wrote:It’s a very capable machine in the right hands, but boy does it have its quirks.
Really? What are some of the more unique pitfalls? This stuff is also always fascinating, from trying to wrap my head around the Saturn to finding out the Jaguar firmware was bugged. I've toyed with the idea of getting into Master System programming, but my first year comsci coding skills aren't really sufficient for the task.
User avatar
Sumez
Posts: 8750
Joined: Fri Feb 18, 2011 10:11 am
Location: Denmarku
Contact:

Re: Recca on the Sega Master System (sort of)

Post by Sumez »

IIRC there's some bg/sprite layering limitations that requires unique workarounds, and a lack of sprite flipping means a lot of wasted graphics memory. Not sure what else, tough? It's a pretty solid system.
User avatar
Herr Schatten
Posts: 3285
Joined: Wed Jan 26, 2005 12:14 pm
Location: Germany
Contact:

Re: Recca on the Sega Master System (sort of)

Post by Herr Schatten »

There are some minor quibbles, like how accessing the color RAM during active display always produces visible artifacts, but the main issue is probably the lack of direct access to the video memory. You’ve got this really nice VDP, but you can only communicate with it via a rather slow peripheral port. Imagine you want to put supplies on the shelves in your storage room, but you are forced to push each can through the keyhole, one by one.

Otherwise, as Sumez says, it’s a solid system and quite easy to develop for. Having no sprite flipping hurts a bit, but it’s got flipping of background tiles instead, although that’s not quite as useful. However, it has inspired several developers to go the extra mile and make different side views for onscreen characters, who then, for example, hold their sword always in the same hand regardless of the direction they’re facing, which is kind of neat.
User avatar
OmegaFlareX
Posts: 889
Joined: Tue Jan 25, 2005 10:15 pm
Location: Virginia, USA

Re: Recca on the Sega Master System (sort of)

Post by OmegaFlareX »

Herr Schatten wrote:Depends on the machine. Having FM and PSG simultaneously is possible on japanese Master Systems and on most third-party produced FM boards (such as those from VileTim). On the Mark III with FM unit, PSG and FM are mutually exclusive. Unmodded western Master Systems have no FM capabilities whatsoever, of course.

Using both sound chips in a busy action game would be difficult, though. Updating FM channels is relatively slow due to being only possible in certain intervals, and there’s nine of them, as opposed to the PSG's four (that also can be updated anytime you want, without any restrictions). You wouldn't really want to use FM sound in a game where every cpu cycle counts. You can actually observe this effect in Aleste / Power Strike: If you switch to FM, there’s noticeably more slowdown.
Really interesting info, thank you! I didn't know that the one demonstration I found of FM+PSG is only possible on the JP revision hardware. I guess any games released after that hardware was out needed to also stay compatible with the Mark III+FM so that functionality was never fully used. And the performance issues you mentioned. I've heard the Genesis/MD can do both sound types simultaneously, does that also affect performance?

FWIW, I love the sound of the YM2203 (it's a hybrid FM+PSG) that was used in some early Capcom AC games and others (Space Harrier, Darius apparently). There's just something about combining the square waves with the crunchy FM.
Herr Schatten wrote:but the main issue is probably the lack of direct access to the video memory. You’ve got this really nice VDP, but you can only communicate with it via a rather slow peripheral port. Imagine you want to put supplies on the shelves in your storage room, but you are forced to push each can through the keyhole, one by one.
Hmmm. How did that flaw come about? What portion of the hardware is to blame? Is it the design of the VDP chip itself? Could the console be modded to give it direct access?
Herr Schatten wrote:Having no sprite flipping hurts a bit, but it’s got flipping of background tiles instead, although that’s not quite as useful. However, it has inspired several developers to go the extra mile and make different side views for onscreen characters, who then, for example, hold their sword always in the same hand regardless of the direction they’re facing, which is kind of neat.
Cool. Well now I know why the ROM sizes of the games were far larger than FC/NES stuff. And that Sega used a tech limitation as a positive marketing feature ("The 2-mega cartridge!").
User avatar
Sumez
Posts: 8750
Joined: Fri Feb 18, 2011 10:11 am
Location: Denmarku
Contact:

Re: Recca on the Sega Master System (sort of)

Post by Sumez »

OmegaFlareX wrote:
Herr Schatten wrote:but the main issue is probably the lack of direct access to the video memory. You’ve got this really nice VDP, but you can only communicate with it via a rather slow peripheral port. Imagine you want to put supplies on the shelves in your storage room, but you are forced to push each can through the keyhole, one by one.
Hmmm. How did that flaw come about? What portion of the hardware is to blame? Is it the design of the VDP chip itself? Could the console be modded to give it direct access?
This is the standard for any 2D console at the time, through the 16bit generation as well. Later consoles like MegaDrive and SNES would do it faster, but the process was still the same, you just got DMA channels to speed up the process. :) On NES you need to write to the register manually one byte at a time as well, and it's even worse at handling mid-screen palette changes, even if you're doing it in hblank :D

The reason is that video RAM is handled entirely by the video chip which uses it to output graphics on the screen, so to speak. You can't just have the CPU write to the same RAM at the same time, at least not with the hardware profile used by such systems (dual-access RAM is a thing, but not sure how viable that was for consoles back then). So if you want to write any data to video RAM, the CPU needs to tell the video chip to do it, essentially.

There's a similar situation with the SNES audio CPU, and that one is way crazier :D
User avatar
Herr Schatten
Posts: 3285
Joined: Wed Jan 26, 2005 12:14 pm
Location: Germany
Contact:

Re: Recca on the Sega Master System (sort of)

Post by Herr Schatten »

Sumez has already explained it far better than I could. Let me just add that it certainly wasn’t seen as a flaw by the hardware designers. It probably just didn’t occur to them that anyone would want to switch out the contents of the video memory on the fly, quickly.

Interesting info about the NES, though. I’ve always been under the (apparently wrong) impression that it had more immediate access to the video memory than the SMS. Thanks for clearing that up.
User avatar
nZero
Posts: 2608
Joined: Wed Jan 26, 2005 1:20 am
Location: DC Area
Contact:

Re: Recca on the Sega Master System (sort of)

Post by nZero »

OmegaFlareX wrote:
Herr Schatten wrote:Depends on the machine. Having FM and PSG simultaneously is possible on japanese Master Systems and on most third-party produced FM boards (such as those from VileTim). On the Mark III with FM unit, PSG and FM are mutually exclusive. Unmodded western Master Systems have no FM capabilities whatsoever, of course.

Using both sound chips in a busy action game would be difficult, though. Updating FM channels is relatively slow due to being only possible in certain intervals, and there’s nine of them, as opposed to the PSG's four (that also can be updated anytime you want, without any restrictions). You wouldn't really want to use FM sound in a game where every cpu cycle counts. You can actually observe this effect in Aleste / Power Strike: If you switch to FM, there’s noticeably more slowdown.
Really interesting info, thank you! I didn't know that the one demonstration I found of FM+PSG is only possible on the JP revision hardware. I guess any games released after that hardware was out needed to also stay compatible with the Mark III+FM so that functionality was never fully used. And the performance issues you mentioned. I've heard the Genesis/MD can do both sound types simultaneously, does that also affect performance?
The MD/Genesis has a dedicated sound CPU so it does not affect performance to drive the YM2612 and the SN76489 simultaneously, as the main 68000 processor is only tied up for as long as it takes to upload the sound program to the Z80's pool of RAM. That said, the 68000 can still directly access the FM part and there are some goofy things that can be done involving abuse of the PCM channel that will slam the main CPU.
Image
User avatar
Sumez
Posts: 8750
Joined: Fri Feb 18, 2011 10:11 am
Location: Denmarku
Contact:

Re: Recca on the Sega Master System (sort of)

Post by Sumez »

Herr Schatten wrote:It probably just didn’t occur to them that anyone would want to switch out the contents of the video memory on the fly, quickly.
I don't think that's really true, in fact it's probably the single biggest bottleneck of any 2D video game of the 80s and early 90s. Having to do all your video memory access during vblank puts a very heavy cap on what you can get away with - it's also apparently the source of that annoying screen flashing that happens a lot in the arcade version of Ghosts n Goblins (especially when scrolling in two directions at the same time) because it's trying to do too many updates, and it spills over into the frame rendering.
At the time devs would use all kinds of tricks to get around the issue, such as extending the vblank period via forced blanking (the reason for the lower vertical resolution in Battletoads, and even The Ninja Warriors Again), or sneaking in updates during hblank instead.

I think more than anything it just wasn't practical to design the hardware that way, and even today I'm not really sure how you'd actually go about it if you wanted to allow it.
SavagePencil
Posts: 721
Joined: Mon Nov 11, 2013 4:06 pm

Re: Recca on the Sega Master System (sort of)

Post by SavagePencil »

One interesting aspect of this port is how they did a horizontal status bar at screen bottom while also having vertical scroll. This appears to be flipping to a nonstandard video mode for the status bar, then flipping back for gameplay. I suspect this will break compatibility on a Genesis/MD.
User avatar
FRO
Posts: 2269
Joined: Tue Jan 25, 2005 10:25 pm
Location: Nebraska, USA
Contact:

Re: Recca on the Sega Master System (sort of)

Post by FRO »

Recca was ridiculously impressive for the Famicom hardware, and is equally impressive on Mark III hardware. I would love to see this completed.
User avatar
soupbones
Posts: 422
Joined: Tue May 24, 2011 9:02 pm
Location: New Jersey, U.S.

Re: Recca on the Sega Master System (sort of)

Post by soupbones »

Wow - sure hopes this get finished. Looks amazing!

And thanks for the info on the dev OP - GG3 is one of my favorites, and had no idea he did a NES game (Blade Buster) - will have to check it out!
Post Reply