BBC Micro Z-Machine Interpreter
From Retrosoftware
| 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). | ||
| - | + | '''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
original 350 point Adventure / Colossal Cave by Crowther & Woods
Posted: Sun Apr 06, 2008 14:10
Compatibility Testing Matrix
| 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 | - | - | - | - |
| 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