Difference between revisions of "Games"

From CPCWiki - THE Amstrad CPC encyclopedia!
Jump to: navigation, search
(Hardware Scrolling)
m (Hardware Scrolling: links)
Line 223: Line 223:
 
| ''Confirmed''
 
| ''Confirmed''
 
|-
 
|-
| [[3D Stunt Rider|3D Stunt Rider]]  
+
| [[3D Stunt Rider]]  
 
| 1985
 
| 1985
 
| No  
 
| No  
Line 231: Line 231:
 
| Yes
 
| Yes
 
|-
 
|-
| [[Action Force|Action Force]]  
+
| [[Action Force]]  
 
| 1988  
 
| 1988  
 
| No  
 
| No  
Line 239: Line 239:
 
| Yes
 
| Yes
 
|-
 
|-
| [[Anarchy|Anarchy]]  
+
| [[The Amazing Shrinking Man|Amazing Shrinking Man (The)]]
 +
| 1986
 +
| Yes
 +
| Yes
 +
| No
 +
| No
 +
| Yes
 +
|-
 +
| [[Anarchy]]  
 
| 1988  
 
| 1988  
 
| No  
 
| No  
Line 246: Line 254:
 
| No
 
| No
 
|-
 
|-
| [[Axys|Axys]]  
+
| [[Axys]]  
 
| 1991  
 
| 1991  
 
| Yes  
 
| Yes  
Line 254: Line 262:
 
| Yes
 
| Yes
 
|-
 
|-
 
+
| [[BMX Kidz]]  
| [[BMX Kidz|BMX Kidz]]  
+
 
| 1988  
 
| 1988  
 
| No
 
| No
Line 263: Line 270:
 
| Yes
 
| Yes
 
|-
 
|-
 
+
| [[Bob Morane Science Fiction]]  
| [[Bob Morane Science Fiction|Bob Morane Science Fiction]]  
+
 
| 1987  
 
| 1987  
 
| Yes  
 
| Yes  
Line 271: Line 277:
 
| No
 
| No
 
|-
 
|-
 
+
| [[Boulder Dash]]  
| [[Boulder Dash|Boulder Dash]]  
+
 
| 1984
 
| 1984
 
| Yes  
 
| Yes  
Line 280: Line 285:
 
| Yes
 
| Yes
 
|-
 
|-
 
+
| [[Builderland]]  
| [[Builderland|Builderland]]  
+
 
| 1991  
 
| 1991  
 
| No  
 
| No  
Line 288: Line 292:
 
| No
 
| No
 
|-
 
|-
 
+
| [[Canadair]]  
| [[Canadair|Canadair]]  
+
 
| 1987
 
| 1987
 
| No  
 
| No  
Line 297: Line 300:
 
| Yes
 
| Yes
 
|-
 
|-
| [[Cyborgs|Cyborgs]]  
+
| [[Cyborgs]]  
 
| 1991  
 
| 1991  
 
| Yes
 
| Yes
Line 305: Line 308:
 
| Yes
 
| Yes
 
|-
 
|-
 
+
| [[Doctor Who and the Mines of Terror]]  
| [[Doctor Who And The Mines Of Terror|Doctor Who And The Mines Of Terror]]  
+
 
| 1986  
 
| 1986  
 
| Yes
 
| Yes
Line 314: Line 316:
 
| Yes
 
| Yes
 
|-
 
|-
 
+
| [[Energy Warrior]]  
| [[Energy Warrior|Energy Warrior]]  
+
 
| 1987  
 
| 1987  
 
| No  
 
| No  
Line 323: Line 324:
 
| Yes
 
| Yes
 
|-
 
|-
 
+
| [[FlySpy]]  
| [[FlySpy|FlySpy]]  
+
 
| 1986  
 
| 1986  
 
| Yes  
 
| Yes  
Line 331: Line 331:
 
| No
 
| No
 
|-
 
|-
| [[Fusion 2|Fusion 2]]  
+
| [[Fusion 2]]  
 
| 1988  
 
| 1988  
 
| No  
 
| No  
Line 338: Line 338:
 
| No
 
| No
 
|-
 
|-
| [[Gothic|Gothic]]  
+
| [[Gothic]]  
 
| 1988  
 
| 1988  
 
| Yes  
 
| Yes  
Line 345: Line 345:
 
| Yes
 
| Yes
 
|-
 
|-
| [[Ghosts 'n' Goblins|Ghosts 'n' Goblins]]  
+
| [[Ghosts 'n' Goblins]]  
 
| 1986  
 
| 1986  
 
| No  
 
| No  
Line 353: Line 353:
 
| Yes
 
| Yes
 
|-
 
|-
 
+
| [[Ghouls 'n' Ghosts]]  
| [[Ghouls 'n' Ghosts|Ghouls 'n' Ghosts]]  
+
 
| 1989  
 
| 1989  
 
| No  
 
| No  
Line 362: Line 361:
 
| Yes
 
| Yes
 
|-
 
|-
 
+
| [[Into The Eagle's Nest]]  
| [[Into The Eagle's Nest|Into The Eagle's Nest]]  
+
 
| 1987  
 
| 1987  
 
| Yes
 
| Yes
Line 371: Line 369:
 
| Yes
 
| Yes
 
|-
 
|-
 
+
| [[Jinks]]  
| [[Jinks|Jinks]]  
+
 
| 1988  
 
| 1988  
 
| No  
 
| No  
Line 380: Line 377:
 
| Yes
 
| Yes
 
|-
 
|-
| [[Killer Cobra|Killer Cobra]]  
+
| [[Killer Cobra]]  
 
| 1987  
 
| 1987  
 
| No  
 
| No  
Line 388: Line 385:
 
| Yes
 
| Yes
 
|-
 
|-
| [[Led Storm|Led Storm]]  
+
| [[Led Storm]]  
 
| 1988  
 
| 1988  
 
| Yes  
 
| Yes  
Line 396: Line 393:
 
| Yes
 
| Yes
 
|-
 
|-
| [[Legend of Kage|Legend of Kage]]  
+
| [[Legend of Kage]]  
 
| 1986  
 
| 1986  
 
| Yes  
 
| Yes  
Line 403: Line 400:
 
| Yes
 
| Yes
 
|-
 
|-
| [[Leviathan|Leviathan]]  
+
| [[Leviathan]]  
 
| 1987  
 
| 1987  
 
| Diagonal  
 
| Diagonal  
Line 411: Line 408:
 
| Yes
 
| Yes
 
|-
 
|-
| [[Le 5eme Axe|Le 5eme Axe]]  
+
| [[Le 5eme Axe]]  
 
| 1985  
 
| 1985  
 
| Yes  
 
| Yes  
Line 418: Line 415:
 
| No
 
| No
 
|-
 
|-
| [[Mission Genocide|Mission Genocide]]  
+
| [[Mission Genocide]]  
 
| 1987  
 
| 1987  
 
| Yes  
 
| Yes  
Line 426: Line 423:
 
| Yes
 
| Yes
 
|-
 
|-
| [[Monty Python's Flying Circus|Monty Python's Flying Circus]]  
+
| [[Monty Python's Flying Circus]]  
 
| 1990  
 
| 1990  
 
| Yes  
 
| Yes  
Line 434: Line 431:
 
| Yes
 
| Yes
 
|-
 
|-
| [[Octoplex|Octoplex]]  
+
| [[Octoplex]]  
 
| 1989  
 
| 1989  
 
| Yes  
 
| Yes  
Line 442: Line 439:
 
| Yes
 
| Yes
 
|-
 
|-
| [[Out Of This World|Out Of This World]]  
+
| [[Out of This World]]  
 
| 1987  
 
| 1987  
 
| No  
 
| No  
Line 450: Line 447:
 
| Yes
 
| Yes
 
|-
 
|-
| [[Paraplane|Paraplane]]  
+
| [[Paraplane]]  
 
| 1992  
 
| 1992  
 
| Yes  
 
| Yes  
Line 457: Line 454:
 
| No
 
| No
 
|-
 
|-
| [[Plate-Forme|Plate-Forme]]  
+
| [[Plate-Forme]]  
 
| 1988  
 
| 1988  
 
| No
 
| No
Line 465: Line 462:
 
| Yes
 
| Yes
 
|-
 
|-
| [[Prehistorik 2|Prehistorik 2]]  
+
| [[Prehistorik 2]]  
 
| 1992  
 
| 1992  
 
| Yes  
 
| Yes  
Line 473: Line 470:
 
| Yes
 
| Yes
 
|-
 
|-
| [[Prohibition|Prohibition]]  
+
| [[Prohibition]]  
 
| 1987  
 
| 1987  
 
| Yes  
 
| Yes  
Line 481: Line 478:
 
| Yes
 
| Yes
 
|-
 
|-
 
+
| [[Realm!]]  
| [[Realm!|Realm!]]  
+
 
| 1987  
 
| 1987  
 
| Yes  
 
| Yes  
Line 490: Line 486:
 
| Yes
 
| Yes
 
|-
 
|-
 
+
| [[The Return of the Jedi|Return of the Jedi (The)]]  
| [[Return of the Jedi (The)|Return of the Jedi (The)]]  
+
 
| 1989  
 
| 1989  
 
| Diagonal  
 
| Diagonal  
Line 499: Line 494:
 
| Yes
 
| Yes
 
|-
 
|-
 
+
| [[Rick Dangerous 2]]  
| [[Rick Dangerous 2|Rick Dangerous 2]]  
+
 
| 1990  
 
| 1990  
 
| No  
 
| No  
Line 507: Line 501:
 
| No
 
| No
 
|-
 
|-
| [[Rig Attack|Rig Attack]]  
+
| [[Rig Attack]]  
 
| 1985
 
| 1985
 
| No  
 
| No  
Line 515: Line 509:
 
| Yes
 
| Yes
 
|-
 
|-
 
+
| [[Roland on the Ropes]]  
 
+
| [[Roland On the Ropes|Roland On the Ropes]]  
+
 
| 1984  
 
| 1984  
 
| Yes  
 
| Yes  
Line 524: Line 516:
 
| No
 
| No
 
|-
 
|-
| [[Sentinel (The)|Sentinel (The)]]  
+
| [[The Sentinel|Sentinel (The)]]  
 
| 1987  
 
| 1987  
 
| Yes  
 
| Yes  
Line 532: Line 524:
 
| Yes
 
| Yes
 
|-
 
|-
| [[Skate Ball|Skate Ball]]  
+
| [[Skate Ball]]  
 
| 1989  
 
| 1989  
 
| No  
 
| No  
Line 540: Line 532:
 
| Yes
 
| Yes
 
|-
 
|-
| [[Skateboard Kidz|Skateboard Kidz]]  
+
| [[Skateboard Kidz]]  
 
| 1988
 
| 1988
 
| Yes  
 
| Yes  
Line 548: Line 540:
 
| Yes
 
| Yes
 
|-
 
|-
| [[Skate Rock|Skate Rock]]  
+
| [[Skate Rock]]  
 
| 1987  
 
| 1987  
 
| No  
 
| No  
Line 556: Line 548:
 
| Yes
 
| Yes
 
|-
 
|-
| [[Skate Wars|Skate Wars]]  
+
| [[Skate Wars]]  
 
| 1990  
 
| 1990  
 
| No  
 
| No  
Line 564: Line 556:
 
| Yes
 
| Yes
 
|-
 
|-
| [[Sly Spy Secret Agent|Sly Spy Secret Agent]]  
+
| [[Sly Spy Secret Agent]]  
 
| 1990  
 
| 1990  
 
| Yes  
 
| Yes  
Line 572: Line 564:
 
| Yes
 
| Yes
 
|-
 
|-
| [[Star Avenger|Star Avenger]]  
+
| [[Star Avenger]]  
 
| 1984  
 
| 1984  
 
| No  
 
| No  
Line 579: Line 571:
 
| No
 
| No
 
|-
 
|-
 
+
| [[Street Machine]]  
| [[Street Machine|Street Machine]]  
+
 
| 1986  
 
| 1986  
 
| Yes
 
| Yes
Line 588: Line 579:
 
| Yes
 
| Yes
 
|-
 
|-
 
+
| [[Striker in the Crypts of Trogan]]  
| [[Stryker In The Crypt Of Trogan|Stryker In The Crypt Of Trogan]]  
+
 
| 1992  
 
| 1992  
 
| Yes  
 
| Yes  
Line 596: Line 586:
 
| No
 
| No
 
|-
 
|-
| [[Super Cauldron|Super Cauldron]]  
+
| [[Super Cauldron]]  
 
| 1992  
 
| 1992  
 
| Yes  
 
| Yes  
Line 604: Line 594:
 
| Yes
 
| Yes
 
|-
 
|-
 
+
| [[Titan]]  
| [[The Amazing Shrinking Man|The Amazing Shrinking Man]]
+
| 1986
+
| Yes
+
| Yes
+
| No
+
| No
+
| Yes
+
|-
+
 
+
| [[Titan|Titan]]  
+
 
| 1988  
 
| 1988  
 
| Yes  
 
| Yes  
Line 621: Line 601:
 
| No
 
| No
 
|-
 
|-
 
 
| [[T.L.L. - Tornado Low Level|Tornado Low Level]]  
 
| [[T.L.L. - Tornado Low Level|Tornado Low Level]]  
 
| 1985  
 
| 1985  
Line 630: Line 609:
 
| Yes
 
| Yes
 
|-
 
|-
| [[Ultima Ratio|Ultima Ratio]]  
+
| [[Ultima Ratio]]  
 
| 1987  
 
| 1987  
 
| Yes  
 
| Yes  
Line 638: Line 617:
 
| Yes
 
| Yes
 
|-
 
|-
 
+
| [[Vector Ball]]  
 
+
| [[Vector Ball|Vector Ball]]  
+
 
| 1988  
 
| 1988  
 
| Diagonal  
 
| Diagonal  
Line 648: Line 625:
 
| Yes
 
| Yes
 
|-
 
|-
 
+
| [[Warhawk]]  
| [[Warhawk|Warhawk]]  
+
 
| 1987  
 
| 1987  
 
| Yes  
 
| Yes  
Line 657: Line 633:
 
| Yes
 
| Yes
 
|-
 
|-
 
+
| [[Xeno]]  
| [[Xeno|Xeno]]  
+
 
| 1986  
 
| 1986  
 
| No  
 
| No  
Line 665: Line 640:
 
| No  
 
| No  
 
| Yes
 
| Yes
|-
 
 
 
|}
 
|}
  

Revision as of 16:43, 14 July 2012

This page covers important facts concerning the Amstrad CPC/Plus games.

With a list of Software houses, and the various and notable technics used in well known games.

For a more complete list of games or game related topics, check the "category:games" (and all its subcategories) at the bottom of this page.


All-time top games

Article moved here

Software Houses

Copy Protection

Loading music

Cassette

Loading from cassette effectively uses all the CPU's time because you have to keep checking the cassette signal to see if it has changed, and you use a CPU timing loop to calculate length of signal.

So to do music and other things during loading requires precise timing. The C64 effectively had interrupt driven loading music and the serial chip handled clocking in of the data bits and signalled an interrupt when the byte of data was ready.


I think only Firebird games had loading music on cassette. The music was composed by Melvyn Wright (www.melright.com). The music data was embeded into the data on cassette. The data was read as a group of 3 bits and 8 data bits. The 3 bits determined if the 8 data bits were for data or for music.


This list is not complete, please add more. Will upload YM of the loading music soon.


Game Loading music
Booty
Comet Game (The) Media:Comet_game_(the)-loader.ym
Harvey Headbanger Media:Harvey_headbanger-loader.ym‎
Thrust Media:Thrust.ym
Spiky Harold Media:Spiky_harold-loader.ym

Disc

The disc system on the Amstrad is "polled" which means the CPU has to keep checking if the FDC (NEC765) has more data to read/write. On the C64 the disc system is interrupt driven.

So to do music while loading requires careful timing and often the use of very small sectors (128bytes).


ZapTBalls

The Demo

5KB Demo 3

Midline Process

Orion Prime

Batman Forever


Games Which use hardware tricks (on old generation cpcs)

Useful if you want to dissect games to work out how they did it.

Please move to somewhere more appropiate


Page Flipping

Most good CPC games use the page-flipping technique in order to display sprites and/or scroll the playing area smoothly. In particular, two memory areas (instead of one) are reserved for the screen ram. In each frame, one of the two screens is displayed in turn, by using the hardware (exactly by changing the screen-offset, Reg 12 and 13 of the CRTC). At the same time, the next frame is being drawn in the non-visible screen until the next frame fly back signal. Then, the same cycle is repeated for each following frame.

The big advantage of this technique is that we can use a whole frame's machine-time for our code (with no animation problems that arise when we alter screen ram at the same time the electron beam displays it on the monitor). On the other hand, page flipping eats up a lot of memory area (which is crucial especially for 64Kb machines). This explains why a lot of games have very small game-areas !

Hardware Scrolling

Hardware scrolling is performed by changing the CRTC registers 12 and 13 (start address).

The scrolling is normally 1 CRTC char (4 mode 0 pixels, 8 mode 1 pixels or 16 mode 2 pixels) in the horizontal and 1 char line (scroll amount dependant on R9 - Max raster but normally 8 scanlines) vertically.

Horizontal scrolling can be made smoother by using R3 (Hsync Width) and makes the scrolling effectively half a CRTC char (2 mode 0 pixels, 4 mode 1 pixels, 8 mode 2 pixels). This effect works well on Amstrad monitors but produces a black and white image on a MP-2 modulator because of the adjusted HSYNC timing.

Vertical scrolling can be made smoother by using R5 (Vertical Adjust) in combination with Rupture/Splitting to make perfect 1 scanline vertical scrolling. This works on all monitors.

This following is a list of games using hardware scrolling:

Title Year Vertical Horizontal R3 R5 Confirmed
3D Stunt Rider 1985 No Yes No No Yes
Action Force 1988 No Yes No No Yes
Amazing Shrinking Man (The) 1986 Yes Yes No No Yes
Anarchy 1988 No Yes No No
Axys 1991 Yes No No Yes Yes
BMX Kidz 1988 No Yes No No Yes
Bob Morane Science Fiction 1987 Yes Yes No No
Boulder Dash 1984 Yes Yes No No Yes
Builderland 1991 No Yes No No
Canadair 1987 No Yes No No Yes
Cyborgs 1991 Yes Yes Yes Yes Yes
Doctor Who and the Mines of Terror 1986 Yes Yes No No Yes
Energy Warrior 1987 No Yes No No Yes
FlySpy 1986 Yes Yes No No
Fusion 2 1988 No Yes No No
Gothic 1988 Yes Yes No Yes
Ghosts 'n' Goblins 1986 No Yes No No Yes
Ghouls 'n' Ghosts 1989 No Yes No No Yes
Into The Eagle's Nest 1987 Yes Yes No No Yes
Jinks 1988 No Yes Yes No Yes
Killer Cobra 1987 No Yes Yes No Yes
Led Storm 1988 Yes No No Yes Yes
Legend of Kage 1986 Yes Yes Yes Yes
Leviathan 1987 Diagonal scroll! No No Yes
Le 5eme Axe 1985 Yes Yes No No
Mission Genocide 1987 Yes No No Yes Yes
Monty Python's Flying Circus 1990 Yes Yes No No Yes
Octoplex 1989 Yes Yes No Yes(?) Yes
Out of This World 1987 No Yes Yes No Yes
Paraplane 1992 Yes Yes No No
Plate-Forme 1988 No Yes No No Yes
Prehistorik 2 1992 Yes Yes Yes Yes Yes
Prohibition 1987 Yes Yes No No Yes
Realm! 1987 Yes Yes No No Yes
Return of the Jedi (The) 1989 Diagonal scroll! No No Yes
Rick Dangerous 2 1990 No Yes No No
Rig Attack 1985 No Yes No No Yes
Roland on the Ropes 1984 Yes Yes No No
Sentinel (The) 1987 Yes Yes No No Yes
Skate Ball 1989 No Yes No No Yes
Skateboard Kidz 1988 Yes No No Yes Yes
Skate Rock 1987 No Yes No No Yes
Skate Wars 1990 No Yes No Yes Yes
Sly Spy Secret Agent 1990 Yes Yes No No Yes
Star Avenger 1984 No Yes No No
Street Machine 1986 Yes Yes No No Yes
Striker in the Crypts of Trogan 1992 Yes Yes No No
Super Cauldron 1992 Yes Yes Yes Yes Yes
Titan 1988 Yes Yes No No
Tornado Low Level 1985 Yes Yes No No Yes
Ultima Ratio 1987 Yes No No Yes Yes
Vector Ball 1988 Diagonal scroll! No No Yes
Warhawk 1987 Yes No No Yes Yes
Xeno 1986 No Yes No No Yes

Rupture (or splitscreen)

A CRTC programming technique used to split the screen into more than one block vertically. This allows each block to reference different ram, or to hardware scroll one block while another is static. This list is not exhaustive.

Title Year Confirmed
Action Force 1988 Yes
Axys 1991 Yes
Dynamic Duo
Energy Warrior 1987 Yes
Enlightenment: Druid 2
Grell and Falla
Mission Genocide 1987 Yes
Octoplex 1989 Yes
Prehistorik 2 1992 Yes
Skate Ball 1989 Yes
Skatewars 1989
Skateboard Kidz 1988 Yes
Snowstrike
Sol Negro(opera)
Storm Warrior 1989 Yes
Super Cauldron 1992 Yes
Turrican 1990 Yes
Twin World (Ubi Soft) 1990 Yes
Ultima Ratio 1987 Yes
Usagi Yojimbo 1988 Yes
Warhawk 1987 Yes
Wonder Boy 1987 Yes
Xyphoes Fantasy

Firmware

The following games are known to use firmware functions. This probably explains why they are poor. If the programmer had used the hardware directly they would have lots more cycles free which they could have used to make the game better.

This list is not exhaustive.

  • Xevious


Shame amongst shames