GORILLA.BAS port to CP/M in Turbo Modula-2. Supported terminals: VT52, VT100, ANSI, ADM-31, KayPro, C128, Memotech monochrome, CPC / Zenith Z19
Failed to load latest commit information.
binary Added chr(255) as block char Jan 2, 2017
dists CPC Update: cursor ON/OFF Aug 18, 2016
source Added chr(255) as block char Jan 2, 2017
LICENSE Initial commit Dec 11, 2015
README.md Update README.md Aug 30, 2016


Gorilla.BAS - CP/M version

This is a Modula-2 (despite the name) implementation for CP/M of the classic "GORILLA.BAS" BASIC game included in MS-DOS 5.0.

Why Turbo Modula-2?

The choice was mainly due to a historic interest: this compiler (never distributed by Borland) was written by Martin Odersky (the inventor of Scala language) and had never been used by a critical mass of users. So it was both a challenging choice and a historic research.

Contents of package

  • source - Source code in Turbo Modula-2 (despite the name ".BAS")
    • xterm.def - XTerm Library: definition module (for terminal portability)
    • xterm.mod - XTerm Library: implementation module
    • game.def - Game Engine: definition module
    • game.mod - Game Engine: implementation module
    • main.mod - Main module (run this)
  • binary - Compiled .COM executable files for CP/M-80
  • dists - Collection of CP/M bootable disk images for Commodore 128 and Memotech MTX
    • gorilla.d71 - Includes C128 CP/M boot code, all sources and binaries, some utilities
    • gorilla.d64 - Includes C128 CP/M boot code, all sources and binaries
    • gorilla.mfloppy - Includes Memotech MTX CP/M boot code and binaries (Memotech type 07 disk image)
    • gorilla-msx.dsk - Includes MSX-DOS boot code and binaries (MSX-DOS disk image)
    • gorilla-cpc.dsk - Includes CP/M for Amstrad CPC6128 boot code and binaries (CPC CP/M disk image)


Thanks to Fabrizio Radica for the idea, YAZE Team for the fantastic Z80 emulator that runs fine on Mac OS X, Lawrence Woodman for sharing informations about CP/M and Turbo Modula-2, Dave Stevenson for sharing informations about Memotech MTX and to Sergio Gervasini and Stefania Calcagno for support.

Screenshots on Commodore 128

Intro screen

C128 version

Game screen - 1

C128 version

Game screen - 2

C128 version