Port of the classic 2048 game to the MPF-II / TK2000 home computer.
Find a file
2025-08-20 18:08:11 +02:00
dsk Add basic disk images 2025-07-28 17:45:33 +02:00
graphics Update loading and main screen 2025-08-20 12:23:52 +02:00
linker-files Update the Makefile to generate woz images 2025-08-20 11:58:04 +02:00
obj Import empty project 2025-07-15 20:51:44 +02:00
out Import empty project 2025-07-15 20:51:44 +02:00
src Update loading and main screen 2025-08-20 12:23:52 +02:00
.gitignore Import empty project 2025-07-15 20:51:44 +02:00
Makefile Update the README 2025-08-20 18:08:11 +02:00
README.md Update the README 2025-08-20 18:08:11 +02:00

TK2048

DISCLAIMER

Any use of this project is under your own responsibility. By using this project You will agree that I cannot be held responsible if it will destroy any of your devices, damage your computer, burn down your house or whatever.

Introduction

I recently built myself a Microdigital TK2000, a clone of an almost-clone (the MPF-II) of an Apple II.

Building it from the boards found in this github repository proved to be a bit of an adventure, but I took a liking to the computer, so I started developing boards for it.

Hardware fiddling is fine, but given that there isn't much software available for the machine and that I wanted to experiment with the Calypsi toolchain a bit, I decided to pick a simple game concept and develop it for the machine.

I decided for 2048, the now-classic tile sliding game, as it provided several advantages as a first time/playground project:

  • Doesn't need complex graphics hardware or advanced artist skills
  • It can be drawn in B/W with static graphics, but animations and colors can be added in the future
  • Sound is not needed either, but can be added for simple events like a tile slide or a button press
  • The game logic is pretty simple
  • Not CPU or memory intensive
  • Can be expanded with support for additional hardware (sound cards, video cards, timers) if so desired, but it's not necessary
  • Floppy drive can be potentially used not only to load the game, but also for saving the high score

TK2048 main game shown on a green phosphor CRT

Current state

The game is playable, and the following features have been implemented:

  • B/W mode
  • Single graphical tileset
  • Crude sound (only beeps)
  • Control via keyboard
  • 5x5 grid, with randomized start and new tiles

How to play

You can move the tiles using the cursor keys. Pushing CTRL-R will make you lose the game and restart it.

The game ends once you reach a tile with a value of 2048.

Floppy version

Just put your floppy in the first drive and power on the TK2000. It will autoboot.

Tape version

Power on the TK2000 with the sound player connected to the EAR input. Once at the > prompt, type the following

CALL -159

This will drop you into the monitor, @ prompt. Type

801.4EBBRA

And press play on tape. If the load completes successfully, the computer will beep and give you back the prompt. Now type:

801G

This will start the game.

How to build

You need the following:

The future

I plan to refactor the whole game, modularize it, and leverage loading of single modules from a floppy disk. This should give more flexibility, expandability, free some memory and allow me to exercise the floppy drive routines I wrote.

As such, V1.0 will probably be the last one supporting loading from tape.