Shadow of the Beast on Amstrad CPC+!!

Page 7/10
1 | 2 | 3 | 4 | 5 | 6 | | 8 | 9 | 10

By JohnHassink

Ambassador (5408)

JohnHassink's picture

03-03-2018, 04:53

Are you guys still theorizing 'n' speculating about recreating a game for MSX that was technically impressive for Amiga at the time, but plays about as pleasantly as a baseball bat to the nutsack? Big smile (even the general Amiga fan will admit that much, as it's more like a tech demo than a game)
My two cents: Use all that awesome knowledge to create a game that's actually fun to play. Wink Running Naked in a Field of Flowers

By DarkSchneider

Paladin (864)

DarkSchneider's picture

03-03-2018, 11:27

Right the best is always to design for the machine and not reverse. But keep in mind that this is a SOTB thread, then is good to talk about how to port it.

On MSX2 and MSX2+, the scroll strips and planes can be done:
- Strips: line interrupts on IM2. You set the first one, a counter, and on each one you set the next one, also modify the cyclic scroll or adjust register and update the strip tiles.
- Planes: can only do the non-overlapping one, like the bottom one, forget about trees. We can see the bottom one do not overlap at all with the characters, so no problem with flickering. Then simply, on any of the previous line interrupts, set the sprites on magnified mode and set the tables register pointing to the "plane gfx" pattern sprite tables. On VBLANK restore them. Magnified sprites are much ignored but as seen on the CPC+ version they can be pretty handy for some tricks.

By Grauw

Ascended (8400)

Grauw's picture

03-03-2018, 13:14

maxis wrote:

Never have seen the back-to-back line spliced screen without any blank lines or artifacts.

That’s totally possible though, I’ve done it and I’ve seen others do it. The horizontal blanking period is 86 pixels / 57 cycles long (94 pixels / 62 cycles when border masking on V9958), plenty to get at least one regular register write in, possibly followed by a quick second write via indirect register access.

Proof ROM

(Tried to make a Turrican II-like sky gradient with palette splits. An earlier version had dithering even, but I didn’t like the look of it.)

By sd_snatcher

Prophet (3055)

sd_snatcher's picture

03-03-2018, 12:36

Grauw wrote:

Also, looks like this turned into another system vs system bitching thread.

I second that.

JohnHassink wrote:

Use all that awesome knowledge to create a game that's actually fun to play. Wink Running Naked in a Field of Flowers

And second that too.

I can't see anything productive in bitching about the way the MSX hardware is, while idealizing how other systems are. All systems had their limitations and flaws. There was no perfect 8-bit architecture.

If it's not only for the pleasure of whining, then there are only two possible productive approaches: A V9990 cartridge, or to code for another system that has the desired characteristics. But that the summer love for such systems might not survive the actual hardware reality. Smile

What I really see on other systems, specially the C64 (and more recently the CPC) is that they're well aware of the system restrictions and take it for granted. They then challenge their brains to produce the best possible outcome under those restrictions.

By Grauw

Ascended (8400)

Grauw's picture

03-03-2018, 14:00

Note that if you respond directly to a line interrupt it will be tough to get a tight split, it will be dependent on CPU speed and other factors (like short DI sections in the main code). The trick is to set a split one line ahead (with a fast-responding ISR like IM2 or hooking 38H in DOS), then poll for the HR horizontal retrace flag to get an actual tight split on the next line.

In addition to synchronising to HR, you can also rely a bit on the fact that any MSX CPU will slow down when accessing the VDP, so during heavy VDP I/O (polling, writing) the differences between 3.58 MHz / 7.16 MHz Z80 and R800 CPU speeds will be somewhat normalized (but of course testing is required).

By Timmy

Expert (106)

Timmy's picture

03-03-2018, 14:43

JohnHassink wrote:

Are you guys still theorizing 'n' speculating about recreating a game for MSX that was technically impressive for Amiga at the time, but plays about as pleasantly as a baseball bat to the nutsack? Big smile (even the general Amiga fan will admit that much, as it's more like a tech demo than a game)
My two cents: Use all that awesome knowledge to create a game that's actually fun to play. Wink Running Naked in a Field of Flowers

I agree with all of that. But did you know that the 8-bit conversions of the game were actually considered good games on the 8-bit machines? I just read some reviews from the C64, CPC and the Spectrum versions, and they were very glad that the game plays well, even if they had to cut some corners. And unlike the Amiga version, you don't have to load the disk every other screen.

It is telling, though, to see that many people here would rather like to theoretise about porting not-very-good games to the MSX. An outsider (like me) would think these MSX people don't like good games.

Anyway, back to this parallaxing thing, if I wanted do parallax scrolling on the MSX, I'd probably use a lot of pre-calculated tiles. As someone who doesn't have a lot of knowledge of the VDP, I do wonder how easy it is to switch between tile banks (not sure if they are called that here) on both the MSX1 and 2.

By Grauw

Ascended (8400)

Grauw's picture

03-03-2018, 15:15

I’m always in favour of making new games, really, rather than porting an existing game Smile.

But when just theorizing on the forum, looking at an existing game makes for an easy subject to talk about. And maybe the techniques can be used for something new.

Changing the pattern table base address is simply a register write. Can also be done in a split. On MSX1 I would say the amount of video memory would be the biggest challenge but on MSX2 memory is a non-issue for the tile modes.

By DarkSchneider

Paladin (864)

DarkSchneider's picture

04-03-2018, 10:16

Agree. I have my own preference about what game styles could be ported better.

- On MSX2, NES like games. On SC4 games like Megaman, Ninja Gaiden, and etc. could be ported very well to MSX2. NES also has limited sprites, also its graphics although in a different way than the SC4 has its limitations. Then balancing the equation IMO is the best target.

- On MSX2+, SMS like games. The SMS has better sprites, but on MSX2+ we can get probably better graphics, the SMS has 32 on-screen colors instead 16, but with improved palette and SC12 for cinematics the MSX2+ I think it takes advantage. Also, in some cases like maybe RPG, SC8 could be used, combined with hardware sprites we could get something like a SNES style game for graphics with simpler characters (sprites). In any case using SC8 we sacrifice vastly the number of tiles available, my own preference is to use SC5.

Then we have MSX-oriented style games, this is games by screens instead scroll, that can use SC5 even on MSX2 very well. But in this case we are talking about MSX2 like games from start, they are no "ports".

About "ports", I use the word as games not typically made on the system but yes on other systems, because the MSX2 and 2+ can do them perfectly.

And, as said, the best would be those "like games", but making own new ones, instead porting. Then instead porting Megaman 3, take the idea and use your character, your design, maps, enemies, weapons...

By AxelStone

Prophet (2674)

AxelStone's picture

04-03-2018, 12:50

Returning to the origin of the thread, I must say that this demo is really impressive, Amstrad CPC plus seems to be a very capable and underused machine.

By erpirao

Paladin (931)

erpirao's picture

04-03-2018, 22:35

msx2+ from disk..
sc5
sonyc msx2+ 1995
sc11
m-kid, playing demo,

Page 7/10
1 | 2 | 3 | 4 | 5 | 6 | | 8 | 9 | 10