A downloadable game

This game is for the ZX Spectrum computer and is based on the arcade game Donkey Kong from 1981 published by Nintendo. It is freeware, I don't charge any money for it. I made it for fun, as a programming challenge, and as an exercise in how to solve the well-known colour problems of ZX Spectrum. All arcade authors are credited in the game, as I make no claim to originality of the game ideas. It is a tribute to the creators of the original game and a demonstration that anyone can make nice-looking games, even for old computers that weren't designed for games.

This is my first finished assembler game. I worked on it from 2022 to 2024, finished it in September 2024, and released the first version to a limited number of people in October 2024 to get some feedback. Probably the main attraction are colours, for which I had to figure out a special graphic system. The game was also released by another publisher in November 2024 after our agreement, because I liked the idea of game cassettes like in the 1980s. It was released as part of a game collection, also exposing it to a wider audience. I wasn't directly part of that business (it was my choice), but it was nice to see my game on pretty cassettes. That version has a modified loading screen with the publisher's name.

We also agreed that I could continue to distribute the game freely with the previous loading screen, and the publisher had no plans to release updated versions (the cassettes had already been made), so I continued to develop the game for the public. In November 2024, I made several graphical and gameplay improvements. In December 2024, I added AY sound (e.g. for ZX Spectrum 128K) and released the game for free on the Spectrum Computing website. In January 2025, I added background music. In February 2025, I made the control screen appear before each new game on ZX Spectrum 128K, added a final animation, and released the game again on the same site. And now it is here.

The game should work on all Spectrum compatible computers since the first ones from 1982. It is also an answer to a long-standing question: Is it possible to make a decent Donkey Kong game for ZX Spectrum?

  • Crash magazine: Crash Smash - 90%
  • Spectrum Computing: Game of the Year - 1. place
  • Planeta Sinclair: Best Arcade & Action Game - 2. place
  • Planeta Sinclair: Game of the Year - 5. place


Since the first version, the game has been improved in several ways:

There is an option to turn on AY sound. It should work on any ZX Spectrum type with an AY sound chip, not only on ZX Spectrum 128K's built-in AY. ZX Spectrum 48K with an external AY (Melodik, ZX-AY, Fuller Box, DK'Tronics 3-Channel Sound Unit) is sufficient, it also works on Timex's built-in AY. If the program detects an AY chip, it automatically selects AY sound, but beeper/AY can also be selected manually on the control screen.

There is an option to turn on background music. It works for both the beeper and AY, and in both cases the music plays simultaneously with other sounds. When the background music is off, the AY sound effects use all three sound channels. When the background music is on, the AY sound effects use only two channels.

When the background music is on, the sound of falling springs plays in the third game stage.

A Mario animation error at the top of the ladders in the first game stage is fixed.

The lifts in the third game stage are faster in level 2 and above. During the first several levels, the fires and ghosts are slightly faster at each subsequent level.

The barrels behaviour in the first game stage is changed to be closer to the original arcade game. There is also a better chance that more fires will appear earlier in the first stage.

The monkey climbing animation plays every time a new game is started. But the jumping part of the animation with the falling girders is still visible only after loading the game.

The "HOW HIGH" screen has the correct monkey picture and correct font before every stage, therefore this screen was removed from the introduction.

The final animation contains the monkey "dance" before the fall. But instead of the correct music, there is still a substitute sound. Maybe it will be fixed in the next version of the game.

There is no longer a corrupted area in the background graphics on the Inves Spectrum + computer.

The game works on more computer types, including Timex TC 2068, Timex TS 2068 and Komputer 2086.

The game can be controlled with a Fuller joystick and both Timex joysticks.

On ZX Spectrum 128K and other computers with extended memory, the introduction and control screen appear before each new game, not only after loading the game.

There is still no high score table, but maybe it will appear in the next version of the game.


Technical information:

The game is for ZX Spectrum 48K. There isn't any special version for ZX Spectrum 128K or Timex computers, there is only one game file which should work on all Spectrum compatible computers (except ZX Spectrum 16K), including less compatible ones.

The game is available as a TAP file, which can be used in ZX Spectrum emulators. It can also be used on a real ZX Spectrum computer using a card reader (DivIDE, DivMMC etc.), or it can be transferred to an audio tape if you prefer an old-school loading experience of the 1980s.

The game works on ZX Spectrum 48K (PAL, NTSC), ZX Spectrum +, ZX Spectrum 128K, ZX Spectrum +2, ZX Spectrum +2A, ZX Spectrum +2B, ZX Spectrum +2E, ZX Spectrum +3, ZX Spectrum +3E, Timex TC 2048 (PAL), Timex TC 2068, Timex TS 2068, Komputer 2086, Delta, Pentagon, Scorpion, Scorpion Turbo +, Didaktik Gama, Didaktik M, Didaktik Kompakt, TK90X (PAL-N, PAL-M), TK95 (PAL-N, PAL-M), Inves Spectrum +, Harlequin, Omni, Leningrad, Vesta IK-30, Orel BK-08, HC-91, BK-001, Dubna, Profi, KAY, ATM Turbo, ATM Turbo 2+, ZX Spectrum Next, N-Go, ZX-Uno and probably some others.

On Dubna, the game works slowly in some situations because this computer only has half the processor frequency.

I am not sure if the game works correctly on ZX Spectrum Next with HDMI output. I've had different feedback from different users, so I recommend using the RGB or VGA output of Spectrum Next.

I don't know if the game works correctly on Timex TC 2048 NTSC, Czerweny CZ 2000, CZ Spectrum, CZ Spectrum Plus, DB Spectrum +, Elwro 800, Sprinter, Baltik, Hobbit, Samsung SPC-650, Spectral, HT 3080C or any other Spectrum compatible computers. I didn't find any emulator of these machines, nor any users, so I can't test it.

I didn't use any game-making engine, high-level language, program library, sound/music editor or modern graphics editor. The game is written in assembly language in the JOE text editor, the graphics are drawn in Art Studio in a ZX Spectrum emulator, and the code is compiled with Pasmo. I also didn't use any automatic code generation, everything is written manually.

There is no raster multicolour engine or similar effects during gameplay, only the colouring of the standing monkey in the introduction is manually timed to use more colours that usual.

I didn't use any source code of the original arcade game, I've never seen it, and I don't think it would be very useful on ZX Spectrum (although it uses the same Z80 processor). Therefore, even though I tried to make the game as accurate as possible, some of the behaviours are a little different, and the graphics and sound had to be done in a completely different way.

Published 22 hours ago
StatusReleased
Rating
Rated 5.0 out of 5 stars
(1 total ratings)
AuthorArtonapilos
Tags8-Bit, ZX Spectrum
Average sessionA few minutes
LanguagesEnglish
InputsKeyboard, Joystick

Download

Download
dk.tap 45 kB