The Wayback Machine - https://web.archive.org/web/20160205052002/https://github.com/sblendorio/gorilla-cpm
Skip to content
GORILLA.BAS port to CP/M in Turbo Modula-2. Supported terminals: VT52, VT100, ANSI, ADM-31, KayPro, C128, Memotech monochrome
Modula-2

README.md

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)

Credits

Thanks to Fabrizio Radica for the idea, YAZE Team for the fantastic CP/M 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

Something went wrong with that request. Please try again.