Skip to content

nzeemin/uknc-desolate

Repository files navigation

uknc-desolate

Ported Desolate game from TI-83 Plus calculator to soviet computer UKNC (УКНЦ).

License: MIT

Thanks a lot to tr1p1ea for the original game! Thanks to zx-pk.ru forum members for all the help and support!

The main challenge was to convert ~4K lines of Z80 assembly code to PDP-11 MACRO assembler, in other words, to convert all the code to very different processor. Plus the usual stuff like difference in video and input. So the work took like 18 days to convert the code and fix all the bugs found.

Controls to use in the game:

  • Arrows - movement
  • Space - look/shoot
  • I - Inventory
  • Q - switch look/shoot mode
  • P - return to menu
  • Other keys (usually I prefer Tab) - close all pop-ups

Play the game online using UKNCBTL WASM emulator: https://nzeemin.github.io/ukncbtl-wasm/index.html?state=https://nzeemin.github.io/ukncbtl/desolate.uknc&run=1

The original game

Written by Patrick Prendergast (tr1p1ea) for TI-83/TI-84 calculators.

Links:

To run the game on Wabbitemu emulator:

  1. Run Wabbitemu, select ROM file
  2. File Open DesData.8xp
  3. MEM, select Archive; PRGM, select DesData; ENTER
  4. File Open Desolate.8xp
  5. File Open MIRAGEOS.8xk
  6. APPS select MirageOS
  7. Select Main > Desolate

Tools used to develop the port

  • RT-11 simulator written by Dmitry Patronov, to run RT-11 commands MACRO and LINK directly from the Windows command line
  • UKNCBTL utilities: rt11dsk to work with disk images, sav2cartridge to prepare UKNC ROM cartridge
  • pclink11: to link object modules just like LINK command do, but mostly to test pclink11
  • VSCode as the primary code editor
  • Visual Studio and C# to write some code converting binary data (tiles, sprites, strings, tables), see the code in SpriteRotate folder

Emulators of the machine, to test the result:

Links