Graphics capabilities and home conversions.

Want to air your opinions on the latest issue of Retro Gamer? Step inside...

Moderators: mknott, NickThorpe, lcarlson, Darran@Retro Gamer, MMohammed

User avatar
zerocool
Posts: 719
Joined: Mon Mar 06, 2006 1:55 pm

Re: Graphics capabilities and home conversions.

Post by zerocool » Fri May 08, 2009 3:13 pm

TMR wrote: Yeah, but how many people doing the kicking are Speccy people who've previously used the argument "it's gameplay that's important, not graphics" i wonder? =-)
But at the end of the day, it's a port... they didn't even try.
Image

User avatar
joefish
Posts: 3072
Joined: Mon Mar 23, 2009 9:05 pm

Re: Graphics capabilities and home conversions.

Post by joefish » Fri May 08, 2009 5:03 pm

I'm afraid I don't have the time to produce a podcast - I was suggesting this as an idea for those who get paid to produce these articles!
zerocool wrote:The CPC used a smaller display window in order to speed things up a little when scrolling.
Interesting you notice this. Take a look at the games that run in a smaller window, particularly in four colour mode (e.g. Knight Lore, Alien 8, R-Type) and you'll find they all use exactly the same size window - 256 x 192. That's because that's exactly the resolution of the Spectrum's screen, so the graphics could be ported straight across. A little recolouring and you have the Amstrad version's graphics. Run the different versions side-by-side in emulators and you'll see they're pixel-perfect identical. If you know Amstrad games, can you name any that use a black border to reduce the area but don't just mimic this screen size?

All the better Amstrad graphics were clearly designed specifically for the Amstrad. If R-Type had been done that way, it would probably have been the best of the crop. I used to love playing Nemesis on my mate's 6128 as it looked far better than the Spectrum version. The MSX version looked great too, but wasn't as smooth. The example you gave of Mr. Heli is an interesting one as it's the only example I know of that goes the other way - the Amstrad 16-colour sprites were ported to the Spectrum, with all the colours removed, where they then look pretty rough.

But Mr Heli on the Amstrad, colourful as it is, still has some traits of the Spectrum version. The windowed display is one of them. The way the top third of that window (and it's exactly one third - 64 lines) is a scoreboard is another. The Spectrum had a complex interleaved way of storing its screen, that broke it up into three 2K bands. If you wanted to make a Spectrum game run quicker, you'd typically sacrifice either the top third or the bottom third for a status display leaving you only 4K to update. But these are only things you'd spot if you looked at all the versions. You can see this approach in lots of Spectrum games, and it even spills over onto far more powerful machines, such as the Atari ST version of Robocop 2 (I recently had this pointed out to me by one of the developers).

As for the C64 sprites, I wasn't particularly criticising how R-Type or Katakis works. Doing that in 6 weeks is quite an achievement. But it's generally the case that the more extra features are put into the hardware, the less versatile it is when you need to do something in software. You get it on later machines too - the Amiga's hardware could shift 2D graphics far better than the ST, but when it came to 3D the performance gap was a lot narrower. And a lot of games were just designed to run the same on both, so weren't optimised for either. You still see this sometimes on PS2 / XBox and PS3 / XBox360 games - average games that don't push either platform.

But really on all of these, just like the 8 bits, the good games are down to programmers who know the platform and how best to exploit it, and the bad conversions were down to limited time and budgets.

Now if anyone wants some homework, they could try explaining to me how all the bits and bytes that made up the Amstrad screen displays were stored. Because that's one machine where I don't know what to look out for in the graphics. And we haven't even got into the tricks you could pull by interfering with the display at exactly the right moments. You could squeeze more colours per character out of the Spectrum, get more sprites on-screen on the C64, but I'd also love to know what tricks you could play with the Amstrad's hardware. Maybe that's for another thread.
Last edited by joefish on Fri May 08, 2009 5:17 pm, edited 1 time in total.

User avatar
joefish
Posts: 3072
Joined: Mon Mar 23, 2009 9:05 pm

Re: Graphics capabilities and home conversions.

Post by joefish » Fri May 08, 2009 5:12 pm

zerocool wrote:
Matt_B wrote:
TMR wrote:i'm not sure why the CPC version takes such a kicking when it's essentially the same game but a little slower and with less colours...
I'd say that it gets a bashing precisely because of those reasons. Even its most vehement critics tend to agree that it does play quite nicely though.
Yep, I agree... it's as if they didn't even try, instead it probably went something like this "er I know what to do, let's port it across to the CPC version - quick and dirty job".
I think if you dig, you'll probably find this one was down to budgets, just like TMR said about the C64 version. How many of each machine were there in homes at the time? The expected number of sales would have been a big factor in deciding how much resource went into each version. That's just the way business works. I know some people will now jump up and down and say it's not about how many machines were sold and this is just more platform bashing, but frankly, a business couldn't give a toss about the hardware specs. Look how everyone fell in behind the Gameboy rather than every other technically superior handheld.

User avatar
zerocool
Posts: 719
Joined: Mon Mar 06, 2006 1:55 pm

Re: Graphics capabilities and home conversions.

Post by zerocool » Fri May 08, 2009 5:42 pm

R-Type is a port at the end of the day, it wouldn't have taken that much extra for a major publisher to have produced a CPC specific version, if it'd got a good review in the mags it would have sold censored loads... instead a few mags slagged it off a bit, hence poor sales.

As for techy things you could do on a CPC, (forgive me if I come across as drunk, it's because I am) It’s not as black and white as people may think… when it comes to vertical and horizontal scrolling, the CPC can fine scroll with a little bit of trickery... see games like Mission Genocide and Warhawk, along with Star Sabre. It'll be interesting to see if newer games can pull off a single pixel scroll, but even if they do, it'll be moving in steps equal to one multicolour pixel, whereas on the c64, a shoot-em-up would usually fine scroll in increments of one hi-res pixel. However; although complicated – programmers later in the CPC’s life kinda discovered how to push a little more out of the old CPC hardware. With a bit more CRTC based jiggery pokery we can shift the position of the screen on the monitor left by 2 pixels. Normally that would look odd, but if we stretch the display to eliminate the left and right borders, we now have smooth 2 pixel scrolling at 50 fps in a handful of CPU cycles. Combine that with a page flipped display and we can in theory have ultra smooth pixel perfect scrolling at almost no cost; huh? Well ok, you got me; it all comes at the cost of memory… and in theory a CPC 464 with 64K would need really tight code to prevail. Star Sabre is probably the closest example I can think of, but this game only manages 25FPS using a similar technique. In other words, and at risk of repeating myself, to have smoother scrolling in a game, with a high frame rate… you’d need to mess around, and buffer the screen - with an offset of one or more pixels using the CRTC tricks. This drastically chomps away at the memory, and would inevitably force the programmers hand towards reducing the size and overall quality of the game. You don't have this same uphill battle as much with the CPC6128, so kinda makes things a bit easier.
Image

User avatar
TMR
Posts: 5756
Joined: Wed Dec 21, 2005 10:56 am
Location: Leeds, U.K.
Contact:

Re: Graphics capabilities and home conversions.

Post by TMR » Sat May 09, 2009 8:48 am

joefish wrote:If you know Amstrad games, can you name any that use a black border to reduce the area but don't just mimic this screen size?
i can help there, Mission Genocide does it and there's no Spectrum version of that so it's nothing to do with conversion; one reason for going for that screen width is that when it's at full size the screen is 80 bytes wide and the reduction makes it 64 bytes; in machine code, multiplying by 64 is lots easier than multiplying by 80, it can be done with logical shifts.
joefish wrote:You get it on later machines too - the Amiga's hardware could shift 2D graphics far better than the ST, but when it came to 3D the performance gap was a lot narrower.
The Amiga's Blitter could draw lines and fill areas, that's why the Amiga filled vector demos tended to be better than the ST ones. The game programmers were, again, taking the path of least resistance and using similar code for both games.
joefish wrote:Now if anyone wants some homework, they could try explaining to me how all the bits and bytes that made up the Amstrad screen displays were stored.
Mode 2 is bit per pixel, mode 1 is bit pairs per pixel and mode 0 uses a nybble per pixel. The RAM is arranged so that running through from start to end fills the top pixel line of each "character" row, then the second line of each, third and so on. Apart from the RAM layout, the BBC Micro is very similar but has less colours and a few more modes (including a nice 160x256 one that uses bit pairs instead of nybbles so uses half the screen RAM).
joefish wrote:And we haven't even got into the tricks you could pull by interfering with the display at exactly the right moments.
Actually, we have... =-)

The biggie is changing the origin point of the screen, it can be used for smooth vertical scrolling as with games like Warhawk or Mission Genocide but because it can only step two bytes at a time, horizontal scrolling is locked down to moving in four mode 0 pixel steps; some games use that directly such as Killer Cobra where it hammers along at four mode 0 pixels a frame and others skip frames like Zarkon or Savage with the best example being the 2008 release Star Sabre which keeps two buffers offset by a byte and toggles between them every other frame, nudging the CTRC every other update.

User avatar
TMR
Posts: 5756
Joined: Wed Dec 21, 2005 10:56 am
Location: Leeds, U.K.
Contact:

Re: Graphics capabilities and home conversions.

Post by TMR » Sat May 09, 2009 8:51 am

zerocool wrote:R-Type is a port at the end of the day, it wouldn't have taken that much extra for a major publisher to have produced a CPC specific version, if it'd got a good review in the mags it would have sold censored loads... instead a few mags slagged it off a bit, hence poor sales.
No, it would have taken extra; six months of a team developing bespoke CPC code at however many pounds per head.

User avatar
joefish
Posts: 3072
Joined: Mon Mar 23, 2009 9:05 pm

Re: Graphics capabilities and home conversions.

Post by joefish » Sat May 09, 2009 9:23 am

TMR wrote:Mode 2 is bit per pixel, mode 1 is bit pairs per pixel and mode 0 uses a nybble per pixel. The RAM is arranged so that running through from start to end fills the top pixel line of each "character" row, then the second line of each, third and so on. Apart from the RAM layout, the BBC Micro is very similar but has less colours and a few more modes (including a nice 160x256 one that uses bit pairs instead of nybbles so uses half the screen RAM).
Thanks. I thought I'd read somewhere that it didn't actually use the top four bits of a byte for one pixel then the bottom four bits for the next. That the bits were interleaved in a more complex way. But I may have been reading the diagram wrong.

Surprising that the screen was interleaved per character row. That's almost as much of a pain as the Spectrum. I can see it would also interfere with vertical pixel scrolling. I did find a document that listed the enhancements for the GX4000 console and the subsequent 'Plus' machines, but not the original specs.

I know on the Spectrum the screen is arranged with the top line of each character row for the first 8 character rows, then down and down through those characters until you get to 2K for the lot. Then it repeats this for the next 8 rows, and then the last 8. It's a pain to calculate the screen address of any one pixel, but if you're drawing whole characters, it means the next character is at +1 byte, or the next line of that one character is at +256 bytes (+1 on the hi-byte of a 2-byte address). Something I suspect the programmers of Spectrum R-Type were VERY familiar with...

Sadly you couldn't move the screen address around on the Spectrum. It wasn't even until the 128K came out that you could page in one of two different memory banks of screen memory. You could finally draw on a hidden screen and page it in instantly instead of having to copy it from a buffer to the screen in software, or to time your drawing carefully to avoid flicker. But by then I was already looking to the ST. There again was another odd one where the screen pointer could only be set to a multiple of 256 bytes. So you could hardware scroll vertically by 8 pixels (5x256 bytes) but that was about it unless you wanted to really do some crazy timed effects.

User avatar
TMR
Posts: 5756
Joined: Wed Dec 21, 2005 10:56 am
Location: Leeds, U.K.
Contact:

Re: Graphics capabilities and home conversions.

Post by TMR » Sat May 09, 2009 10:01 am

joefish wrote:Thanks. I thought I'd read somewhere that it didn't actually use the top four bits of a byte for one pixel then the bottom four bits for the next. That the bits were interleaved in a more complex way. But I may have been reading the diagram wrong.
i've just tried it in a CPC emulator, seems the bits are mixed together and there are "flash" modes as well... i was getting it mixed up with something else (the BBC i think!) - i know the screen RAM layout's right, mind.
joefish wrote:Surprising that the screen was interleaved per character row. That's almost as much of a pain as the Spectrum. I can see it would also interfere with vertical pixel scrolling.
i think that's why quite a few games dropped to using 64 byte wide displays, to make the calculations a bit easier; from what i understand, Mission Genocide uses four colours on backgrounds and four on sprites to make ORing the sprites in and ANDing them out at speed possible.
joefish wrote:Sadly you couldn't move the screen address around on the Spectrum.
You can't do it on the C64... at least not officially. =-)

User avatar
zerocool
Posts: 719
Joined: Mon Mar 06, 2006 1:55 pm

Re: Graphics capabilities and home conversions.

Post by zerocool » Sat May 09, 2009 2:00 pm

Slightly off the subject, but anyone know where I can download this?

Armalyte for windows pc, I've never been able to get the C64 version I've got working.

http://www.youtube.com/watch?v=8pV4Ajr19IQ
Image

User avatar
TMR
Posts: 5756
Joined: Wed Dec 21, 2005 10:56 am
Location: Leeds, U.K.
Contact:

Re: Graphics capabilities and home conversions.

Post by TMR » Sat May 09, 2009 3:55 pm

zerocool wrote:Slightly off the subject, but anyone know where I can download this?
You can't download it, partly because it's not finished yet but mostly because it'll be available to buy from Psytronik when it is.
zerocool wrote:I've never been able to get the C64 version I've got working.
In what way?

User avatar
markopoloman
Posts: 11657
Joined: Thu Dec 01, 2005 9:03 pm
Location: Poole, Dorset

Re: Graphics capabilities and home conversions.

Post by markopoloman » Sun May 10, 2009 11:08 am

TMR wrote:
Without wanting to sound immodest, i'm probably one of the better suited bunnies to write a piece like that... but i'd never actually pitch the idea because i honestly don't think the majority of readers would enjoy reading it; judging from the feedback we've had from the more technical discussions on this message board, there aren't many people who want to know what is going on "under the hood".

Well, I am 100% sure that there would be a MASSIVE amount of readers that would love that article to happen. PITCH the idea TMR and get a vote going on here to get a feeling...............
OFF TOPIC DISCUSSIONS - http://retrocanteen.boards.net/

User avatar
zerocool
Posts: 719
Joined: Mon Mar 06, 2006 1:55 pm

Re: Graphics capabilities and home conversions.

Post by zerocool » Sun May 10, 2009 11:11 am

I might buy that then, as the graphics look much improved but authentic to the C64 screens I've seen.

A for the C64 emulator I use, it just won't accept my joystick, although it does for every other game... really weird. I have played it, but it was on my old laptop that got nicked in spain.
Image

psj3809
Posts: 18950
Joined: Tue Jan 03, 2006 10:28 am

Re: Graphics capabilities and home conversions.

Post by psj3809 » Sun May 10, 2009 1:34 pm

Just depends on what team worked on the game.

Look at Bomb Jack or Commando on the Speccy, compared to say Breakthru', Jailbreak, 1942 or Jackal, all of which were crap.

If the 'Commando' team worked on Jackal that could have been a great conversion, instead Konami hired a bunch of muppets and it was a dire conversion.

User avatar
joefish
Posts: 3072
Joined: Mon Mar 23, 2009 9:05 pm

Re: Graphics capabilities and home conversions.

Post by joefish » Sun May 10, 2009 3:44 pm

I know what you're saying, but I think what we've learnt here is that just like any industry, you can pick the best guy in the world for the job, but give him a stupid deadline and a tiny budget and you'll get a less than perfect result. Although Imagine is proof that unending budgets and timescales don't make for decent product either. So yeah, some of them were probably just crap. :lol:

User avatar
zerocool
Posts: 719
Joined: Mon Mar 06, 2006 1:55 pm

Re: Graphics capabilities and home conversions.

Post by zerocool » Wed May 20, 2009 6:51 am

The likes of Dave perry, Richard Aplin, Mike Lamb, Andrew Deakin, John Brandwood, John O`Brien and Paul Murray were the best programmers on the CPC, they all had to work to tight deadlines and achieved wonderful things... bad programmers will always find something to blame, other than themselves. One of Ocean's programmers 'Andy D' had only three weeks to program Total Recall, and it looks and plays superbly. I know of programmers that had 3-6 months and produced utter tripe.

So sorry, the whole time thing doesn't wash with me... however; cr@p programmers does!
Image

Post Reply

Who is online

Users browsing this forum: No registered users and 3 guests