+Torrax Posted August 31, 2020 Share Posted August 31, 2020 Here's the Infocom Fact sheet with the games related to SuperCart at the bottom (added game length column). You need to take the number of rooms, words, and opcodes used in consideration of which interpreter (Regular or SuperCart) to use on the TI-99/4A. The only exception was Seastalker which only works with the SuperCart interpreter. There were many releases for various systems of the time due to the sonar display. Barry Boone fine tuned his 8K-SuperCart interpreter to be more cross platform compatible on the TI. The later releases needed at least 38-40K+ for the interpreter on the various classic systems. Most boxes printed 48K or 128K required along with the systems name on the packaging. VI Game Statistics =================== Game Version Rooms Words Objects Opcodes Length (int) (takeable) (total) ================= ========== ====== ===== =========== ======= ======== Zork I 88.840726 110 697 60 6798 84876 Zork II 48.840904 86 684 50 6804 89912 Deadline 27.831005 51 656 37 6977 108454 Zork III 17.840727 89 564 23 5952 82714 Starcross 17.821021 86 557 25 6566 83792 Suspended 8.840521 63 676 33 6902 105492 Witness, the 22.840924 30 715 22 8945 104664 Planetfall 37.851003 105 669 45 7879 109398 Enchanter 29.860820 74 723 33 8070 111126 Infidel 22.830916 77 613 57 7386 93556 Sorcerer 18.860904 84 1013 36 8963 111052 Cutthroats 23.840809 68 790 21 12600 112558 HHGG 59.851108 31 971 45 10723 113334 Suspect 14.841005 57 674 43 10737 118692 Spellbreaker 87.860904 79 850 60 12472 128916 Ballyhoo 97.851218 36 962 42 15132 128556 Hollywood Hijinx 37.861215 67 854 58 10355 109650 Stationfall 107.870430 105 789 53 10662 128934 Lurking Horror 221.870918 71 773 44 12398 129944 Plundered Hearts 26.870730 57 816 28 13859 128962 Mini-Zork I 34.871124 69 536 46 5204 52216 ====SuperCart==== ========== ====== ===== =========== ======= ========= Seastalker 16.850603 30 911 15 14460 117762 Wishbringer 69.850920 52 1043 35 16223 128904 LGOP 59.861114 75 978 41 13763 129022 Moonmist 9.861022 69 955 26 15900 128866 The number of rooms refers to the internal representation; externally (from the player's point of view) there can be less/more rooms, like in Infidel's never-ending desert around the camp (which in fact consists of only 10 rooms). Likewise the number of takeable objects can be higher than the figure given here. I have only counted objects which have the takebit set in the initial state of the game. Hope this helps anyone that writes any newer adventures out there!! Have fun. Tyler 3 1 Quote Link to comment Share on other sites More sharing options...
hlabrand Posted September 7, 2020 Share Posted September 7, 2020 (edited) I had a little dig to try to find a rule that could predict what will happen ("Do we need a Supercart for this game or not"). The Z-Machine memory is organized in 3 parts: dynamic memory (objects, descriptions, properties, variables, arrays), static memory (grammar table, actions tables, dictionary, etc), and high memory (Z-code, static strings). The total of dynamic + static memory can never exceed 64k (minus 2 bytes); the original idea was that everything before the high memory should be stored in the interpreter's RAM, and everything in the high memory could be loaded off disc as needed. Using Andrew Plotkin's amazing collection of Infocom files https://eblong.com/infocom/, I went and got the story files in the table above and looked at the high memory mark (2-byte big endian value starting at byte number 4 of the story file) Here's my findings: Plundered H 19968 Hitchhiker's 20455 Suspect 20481 Lurking H 21044 Stationfall 21752 Spellbreaker 21573 Hollywood 22148 Ballyhoo 22400 Wishbringer 22601 Seastalker 22989 LGOP 23652 Moonmist 24439 Could we predict that if the high memory mark is past, say, 22500, then we need a SuperCart, but if it's below, we don't? In any case, there is no game violating this rule... (Or maybe it's interpreter-dependent? What's the size of the Infocom interpreter, and could it be something like "size of the terp + high memory must be below, say, 56 Kb" ?) Edited September 7, 2020 by hlabrand Quote Link to comment Share on other sites More sharing options...
+InsaneMultitasker Posted September 7, 2020 Share Posted September 7, 2020 The TI interpreters test the 'begin of paged memory' value in the zfile header. If the z3 value is higher than the available interpreter ram (22k standard; 24k supercart) the game cannot be played. The interpreter loads the z3 file from bytes 0-22K or 0-24K, respectively, and the remaining zfile records are cached in VDP memory on demand. ; 01/7 --- --- [unused by Infocom, used in Standard] ; 02-03 release number ; 04-05 begin of paged memory (byte address) 1 Quote Link to comment Share on other sites More sharing options...
hlabrand Posted September 7, 2020 Share Posted September 7, 2020 Oh, 22k = 22528, so that makes total sense! I had no idea this was known; thanks for the clarification. I'm glad to have a very clear test to know in advance if my game will work without a Supercart or not 1 Quote Link to comment Share on other sites More sharing options...
+Torrax Posted September 8, 2020 Author Share Posted September 8, 2020 Ditto on the clarification. It's been 18 years since I used Inform. The hair and memory is getting a bit rusty there... Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.