ZX Spectrum

Jet Set Mixup

Jswmm.co.uk (Сайт),

Авторы: , ,

Жанр: Платформеры

Доступные версии

 Оригинальная версия


  • Русский
  • English


  • Интерфейс 2(?)
  • Кемпстон джойстик(?)
  • Клавиатура(?)


  • Один
  • Описание
  • Информация

Jet Set Mixup

Game Builder: Andy Ford

Technical Development: Ian Rushforth

Technical Contribution: Daniel Gromann



‘Jet Set Mixup’ is a redesign of Matthew Smith’s classic ZX Spectrum 48K game ‘Jet Set Willy’. It can be played on a real Spectrum, on the Sinclair ZX Spectrum Vega/Vega+ or on a computer, game console or another device using a ZX Spectrum emulator.

The layout of ‘Jet Set Mixup’ is almost identical to that of ‘Jet Set Willy’, but most of the original guardians have gone on holiday, and have been replaced on duty by sprites from ‘Manic Miner’ and ‘Jet Set Willy II’. Furthermore, the player is offered a choice of sprites with which they can play the game. We hope you enjoy this ‘mixup’!



I. Acknowledgements and thanks

II. Instructions

III. Game history and technical information

IV. The legal bit

V. Closing remarks




I. Acknowledgements and thanks

The authors would like to express their gratitude to:

– Matthew Smith, creator of the original ‘Jet Set Willy’ and ‘Manic Miner’. Many of the ‘Manic Miner’ sprites were used in ‘Jet Set Mixup’.

– Derrick P. Rowson and Steve Wetherill, authors of ‘Jet Set Willy II: The Final Frontier’, from which a number of sprites were sourced for ‘Jet Set Mixup’.

– John Elliott, for his excellent JSW Editor (JSWED, http://www.seasip.info/Jsw/jswed.html), which was the main tool used to create the game, and for JSWED’s accompanying documentation. John also came up with a patch which ensures that Willy’s facing direction and frame of animation are reset at the start of each game.

– Richard Dymond (‘SkoolKid’), for his complete Jet Set Willy disassembly (http://skoolkid.github.io/jetsetwilly/), which was of great assistance in implementing various code modifications and optimisations in ‘Jet Set Mixup’.

– Geoff Eddy, in whose JSW games the playing sprite varies on a room-by-room basis. This aspect of the ‘Geoff Mode’ game engine provided inspiration for the technical solution to implement the ‘Sprite Mode’ feature in ‘Jet Set Mixup’. Geoff’s idea for collectable items to cycle through eight INK colours (rather than four, as is the case in ‘Matthew Mode’) has also been implemented in an optimised form. Geoff’s games can be downloaded from an archived version of his website, accessible via the Wayback Machine (https://web.archive.org/web/20030805002513/http://www.cix.co.uk:80/~morven/jsw/index.html), which also provides some very useful technical documentation

– Dr Andrew Broad, for his JSW-related technical documents (http://www.oocities.org/andrewbroad/spectrum/willy/), in particular his ‘Technical Notes on Jet Set Willy: The Lord of the Rings’, which were of great assistance in implementing the ‘Sprite Mode’ in ‘Jet Set Mixup’. Thanks also to Andrew for establishing and managing the Manic Miner & Jet Set Willy Yahoo! Group (https://groups.yahoo.com/neo/groups/manicminerandjetsetwilly/info).

– Daniel Gromann, for extensive playtesting of ‘Jet Set Mixup’ in all ‘Sprite Modes’. Daniel’s JSW Central website (www.jswcentral.org) is a rich source of information on JSW & MM games.

– Stuart Brady, for his Cell-Graphics Bug Fix, which ensures that all cell graphics are drawn as the designer (Matthew Smith in this case) intended.

– Jonathan Graham Harston, for his ‘Full Z80 Opcode List Including Undocumented Opcodes’ (http://www.z80.info/z80oplist.txt), for his ‘Jet Set Willy’ related documentation (http://mdfs.net/Software/JSW/) and for his elegant Pause Bug Fix.

– James Moxham, for his ‘ZINT Z80 Interpreter’ (http://www.z80.info/z80code.htm), which is a highly informative introduction to the Z80 instruction set that was often referred to during the development of ‘Jet Set Mixup’.

– The authors of Binary Hex Converter (http://www.binaryhexconverter.com/), which was the standard tool used to convert values back and forth between the decimal, binary and hexadecimal systems. The Bitwise Calculator at http://www.miniwebtool.com/bitwise-calculator/ was also a useful tool.

– The ZX Spin team, for their ZX Spin (http://www.zophar.net/sinclair/zx-spin.html), which was used by Daniel Gromann in playtesting.

– Jan Bobrowski, for his Qaop/JS HTML5 ZX Spectrum emulator, which was used by Ian Rushforth in playtesting.

– Claus Jahn, for his ZX-Modules (http://www.zx-modules.de), particularly ZX-Paintbrush which was used by Andy Ford during the creation of the loading, title and ‘Game Over’ screens.




II. Instructions

The object of the game is to guide Willy (or whichever playing sprite you choose) and collect all of the flashing items scattered around his mansion, avoiding the moving and unmoving guardians and the stationary nasties which may kill you (as will falling from an excessive height). With all the items collected, the player needs to go to ‘The Master Bedroom’ where Maria will no longer be blocking access to Willy’s bed.

After loading the game, the player is presented with a ‘Sprite Options’ menu screen. Press a number key from 0 to 9 to choose a playing sprite and proceed to the title screen.

Use O-Left, P-Right (or a combination of keys from the top row of letters) and SPACE or any of the letters from the bottom row to jump.
A-G pauses the game; any other key unpauses it.
H-ENTER/RETURN toggle the music ON/OFF.
Pressing SHIFT+SPACE together at the same time abandons the current game.

‘Jet Set Mixup’ has been fully playtested, and it is possible to complete the game in all ‘Sprite Modes’ without losing a single life.




III. Game history and technical information

‘Jet Set Mixup’ was initially intended to be a simple ‘one rainy day’ project by Andy Ford, starting with the original ‘Jet Set Willy’ but replacing the majority of the sprites with ones from ‘Manic Miner’ and ‘Jet Set Willy II’, as well as other minor tweaks such as:

1. Removal of the clock / time limit
2. Changing the item counter to indicate the number remaining
3. Minor adjustments to the ‘lower screen’ (the status area) display such as the lives colouring and the text positioning
4. Removal of unwanted routines such as the keypad and screen-flash

But one thing led to another and once two other contributors (Ian Rushforth and Daniel Gromann) joined in, further ideas were discussed and considered. At one point there was a choice of eight different starting locations; this was simply added to the end of the Basic loader to provide the player with a little bit of variety. However this ‘feature’ did not make it into the final game as a different idea was discussed…

The possibility of a different player sprite upon each room entry; this was quite easy to do via interrupting the four calls to move Willy into a room to the left, right, up or down as appropriate; but once again we discussed the merits of this and decided to offer the player a choice, as well as mixing things up even more…

The game now offers the player a choice of eight initial playing sprites to pick from including Willy, as well as two special ‘Random Modes’. The first Random Mode choice changes the sprite upon entry to each room (or loss of life) to one of the eight playing sprites, selected at random as the name suggests! In the second Random Mode, a sprite change also occurs each time an item is collected, along with another little effect.

We decided to make the sprite selection part of the ‘new game’ routine, so that the player has the chance to change their ‘Sprite Mode’ prior to starting up each new game. This is something that the original ‘Pick a Location’ idea did not offer (being part of the loader, the location option was only offered immediately after loading up the game file).

The notion of a non-Willy playing sprite in a JSW game was of course Matthew Smith’s innovation, in the original game’s ‘The Nightmare Room’. However, the sprite change there is hard-wired by the game engine to take place in that room only. The idea of the playing sprite changing regularly during the course of the game was originally a feature of Geoff Eddy’s JSW games (also implemented, with meticulous documentation, in Andrew Broad’s ‘Jet Set Willy: The Lord of the Rings’). In those games, the playing sprite is determined on a room-by-room basis, via a spare ‘offset byte’ in the current room buffer. In ‘Jet Set Mixup’, Daniel Gromann modified Geoff’s solution so that the playing sprite is controlled by a global game variable, the value of which is set when a number is selected on the ‘Sprite Options’ menu screen.

In turn, that provided the foundation for the ‘Random Modes’ in ‘Jet Set Mixup’. The code to implement the sprite change each time a room is entered (or a life is lost) was initially written by Daniel, and further developed/optimised by Ian Rushforth. Ian then created the ‘Sprite Options’ menu screen, and implemented the sprite change upon collection of items in ‘Random+ Mode’ (in the process, accidentally inventing the concept of an ‘Item-Collection Patch Vector’!).

Further changes that we have implemented include a redesigned title screen using a large ‘handwritten’ style font and an enhanced ‘Game Over’ screen.




IV. The legal bit

‘Jet Set Mixup’ is freeware, and all of its innovative elements may freely be reused in other projects. If you do so, please acknowledge their authorship.




V. Closing remarks

We hope you enjoy playing ‘Jet Set Mixup’ as much as we did writing it! Please also check out its sister project, ‘Jet Set Mini’, released on the same day.

If you have any queries, comments or general feedback, please contact us on the email address below, or come and visit our Jet Set Willy & Manic Miner Community at jswmm.co.uk to join in with Willy-based discussions!


Andy Ford, Ian Rushforth & Daniel Gromann, 21st July 2017

Можете начать играть в Jet Set Mixup онлайн. Это игра-платформер, которую создали Andy Ford (Spider), Ian Rushforth (IRF) и Daniel Gromann, была опубликована компанией Jswmm.co.uk в 2017 году в Сайт.

Не запускается или глючит игра, или не можете пройти? Спросите в комментариях.

Уведомлять об
Inline Feedbacks
View all comments

Сохранённые игры[X]



Помощь уже в пути!

Не забывайте периодически сохранять игровой прогресс на сервере (клавишей F8), чтобы уверенно продвигаться вперёд!

Если вы гость на сайте, то прогресс будет сохранён только в памяти браузера и потеряется при закрытии. Чтобы этого не произошло - просто войдите в свой профиль.

Для загрузки сохранённой игры жмите F3 или откройте меню "Диск" кнопкой на правой панели.

Если игра не запускается, или у вас есть вопросы по игре - задайте их ниже.



  • x1 [256x192]
  • x2 [512x384]
  • x3 [768x576]
  • Полный


Кликни в окно эмулятора, чтобы управлять!
Would love your thoughts, please comment.x