BBC Micro Z-Machine Interpreter

From Retrosoftware

(Difference between revisions)
Jump to: navigation, search
Line 19: Line 19:
The assembled code may end up being supplied as a ROM image, or as a disk program. Cassette support is unlikely due to the size of Z-Machine games (v5 games can potentially reach 256 KB).
The assembled code may end up being supplied as a ROM image, or as a disk program. Cassette support is unlikely due to the size of Z-Machine games (v5 games can potentially reach 256 KB).
-
TESTING: We will require testers to playthrough games they are intimately familiar with (or are prepared to follow a walk-through). Please volunteer in the forum below, if you're willing to try out any of the games listed in the testing matrix below, when development reaches the beta-testing phase.
+
'''TESTERS''': We will require testers to playthrough games they are intimately familiar with (or are prepared to follow a walk-through). Please volunteer in the forum below, if you're willing to try out any of the games listed in the testing matrix below, when development reaches the beta-testing phase.
[http://www.retrosoftware.co.uk/forum/viewforum.php?f=30 Discuss BBC Micro Z-Machine Interpreter]
[http://www.retrosoftware.co.uk/forum/viewforum.php?f=30 Discuss BBC Micro Z-Machine Interpreter]

Revision as of 13:15, 9 April 2008

Contents

BBC Micro Z-Machine v1.1 (Infocom v3) Interpreter by Jon Welch

License

Software license TBC


Introduction

Legendary text adventure developer, Infocom, designed their games to run as a virtual machine, known as a Z-Machine. This meant that all of the company's interactive fiction games could be ported to a new platform by simply porting the underlying Z-Machine Interpreter. Infocom never officially released a port of their games to the BBC Micro, though they were rumoured to have created a prototype interpreter which was abandoned due to concerns about potential software piracy. In the '90s, fans reverse-engineered the Z-Machine format and have ported the Z-Machine Interpreter to many new platforms including mobile phones, hand-held consoles and PDAs. A new language, Inform, was also created for designing new adventures which could be complied into the Z-machine format.

This project aims to port the Z-Machine Interpreter to the BBC Micro, allowing you to run most of the non-graphical Infocom back-catalogue of games, as well as many modern adventures created with Inform.

The initial version will be written in BBC BASIC. This will require an ARM co-processor (emulable in BeebEm) or a machine running Risc OS to run, and will be very slow.

This version will feed into the development of a native 6502 assembler version, which is aimed to fit into a standard BBC Micro Model B with disk drive. Features below will be implemented based purely on how much memory is available, how fast the assembled version runs, how much slow-down the disk interaction causes etc.

The assembled code may end up being supplied as a ROM image, or as a disk program. Cassette support is unlikely due to the size of Z-Machine games (v5 games can potentially reach 256 KB).

TESTERS: We will require testers to playthrough games they are intimately familiar with (or are prepared to follow a walk-through). Please volunteer in the forum below, if you're willing to try out any of the games listed in the testing matrix below, when development reaches the beta-testing phase.

Discuss BBC Micro Z-Machine Interpreter


Potential Feature Support

  • Support for Z-Machine v3
  • Support for Z-Machine v4?
  • Support for Z-Machine v5?
  • Coloured Text?
  • Bold / Italic Text?
  • Quetzal portable save-games support?
  • Limited Blorb Support (ability to extract Z-code file from blorb file and play it)?


Unlikely Feature Support

  • Support for Z-Machine v6 and above
  • Sound
  • Pictures
  • Mouse


Downloads

BBC Micro Z-Machine Interpreter
Latest "unofficial" release. See change log below.
http://www.g7jjf.com/progs/zmach.zip


Sample Screenshots

Image:BBCMicroZMachineInterpreter-Advent.png
BBC Micro Z-Machine Interpreter running a Z-code port of the
original 350 point Adventure / Colossal Cave by Crowther & Woods

Posted: Sun Apr 06, 2008 14:10



Compatibility Testing Matrix



Commercial Infocom Games
Game Filename Z-code
Version
File
Length
Tested First Few Moves Tested to
Completion On Date
Tested with
BBC Interpreter
Version
Tested By
Ballyhoo ballyhoo.z3 v3 153,600 - - - -
Cutthroats cutthroa.z3 v3 112,640 - - - -
Deadline deadline.z3 v3 122,880 - - - -
Enchanter enchante.z3 v3 122,880 - - - -
Hitchhiker's Guide to the Galaxy (851108) hhgg.z3 v3 113,664 - - - -
Hollywood Hijinx hollywoo.z3 v3 109,651 - - - -
Infidel infidel.z3 v3 122,880 - - - -
Leather Goddesses of Phobos leather.z3 v3 129,023 - - - -
Moonmist moonmist.z3 v3 153,600 - - - -
Planetfall planetfa.z3 v3 122,880 - - - -
Plundered Hearts plundere.z3 v3 128,963 - - - -
Seastalker seastalk.z3 v3 117,763 - - - -
Sorcerer sorcerer.z3 v3 122,880 - - - -
Spellbreaker spellbre.z3 v3 153,600 - - - -
Suspect suspect.z3 v3 122,880 - - - -
Starcross starcros.z3 v3 92,160 - - - -
Stationfall stationf.z3 v3 153,600 - - - -
Suspended suspend.z3 v3 122,880 - - - -
The Lurking Horror (includes sound) lurking.z3 v3 153,600 - - - -
The Witness witness.z3 v3 122,880 - - - -
Wishbringer wishbrin.z3 v3 128,905 - - - -
Zork I zork1.z3 v3 92,160 - - - -
Zork II zork2.z3 v3 92,160 - - - -
Zork III zork3.z3 v3 92,160 - - - -
A Mind Forever Voyaging amfv.z4 v4 262,018 - - - -
Bureaucracy bureaucr.z4 v4 243,341 - - - -
Nord and Bert nordandb.z4 v4 170,285 - - - -
Trinity trinity.z4 v4 262,065 - - - -
Beyond Zork beyondzo.z5 v5 276,480 - - - -
Borderzone borderzo.z5 v5 178,373 - - - -
Hitchhiker's Guide to the Galaxy Solid Gold (871119) hitchhik.z5 v5 184,320 - - - -
Sherlock sherlock.z5 v5 188,445 - - - -



Free IF Archive Games
Game Filename Z-code
Version
File
Length
Tested First Few Moves Tested to
Completion On Date
Tested with
BBC Interpreter
Version
Tested By
Colossal Cave / Adventure
(350 points)
Advent.z5 v5 138,240 - - - -
Conan Kill Everything ConanKillEverything.z5 v5 91,136 - - - -
Crobe Crobe.z5 v5 89,088 - - - -
Countdown to Doom CtDoom.z5 v5 132,608 - - - -
Fyleet Fyleet.z5 v5 137,728 - - - -
Interactive Fiction: Quake quake.z5 v5 133,120 - - - -
Last Days of Doom LDoDoom.z5 v5 200,192 - - - -
Return to Doom RtDoom.z5 v5 179,200 - - - -
Scott Adams' Marvel Adventure: Hulk HULK.z5 v5 25,600 - - - -
Scott Adams' Marvel Adventure: Spider-man SPIDERMN.z5 v5 27,136 - - - -
ZDungeon zdungeon.z5 v5 188,928 - - - -
Zork - The Cavern of Doom cavern.z5 v5 133,120 - - - -
Zork: The Undiscovered Underground ZTUU.z5 v5 102,912 - - - -


Change Log

Not released yet