Infocom, DOS, 40 columns, possible?

Okay this is a little out of left field but this seemed like the best place to ask.

I have a little PDA that runs on an 80186 CPU (HP 200LX). About 6 years ago I used to use it on the bus going to work to play infocom games.

Well today I will be sitting in a hospital’s waiting room waiting for my wife so I thought I’d break this thing out and play some IF on it. The problem is that my eyes have aged since I last used it and whereas I struggled to read that tiny unlit screen 6 years ago now it’s nearly impossible.

I can put it in 40 column mode with the dos command “mode 40” but the infocom games do their page pausing at 80 columns so a wall-o-text just scrolls on by.

Is there any way to force these games to do their pausing at 40 columns’ worth of text instead?

I know there’s probably a plethora of iOS and Android apps for this use case but I wanted to give my 200LX PDA some love and also I enjoy the physical keyboard and most importantly no distractions.

4 Likes

The banner above your post mentions you haven’t made a post in 13 years.

Welcome back.

PS.I have an HP 95LX. I miss the DOS days.

Thanks! Yeah I was dabbling with inform7 back then and made a little game, came here to get some help on inform.

This should be possible by patching the executable, as a last resort. On the original interpreters there is a byte indicating line length. I have found the following data for CP/M interpreters, which suggests the same adjustment can be done for MS-DOS. It would be just a matter of finding the right byte offset. Regrettably I haven’t found what this may be without resorting to a debugger.

This forum has a number of Infocom savants, so I wouldn’t be surprised if someone knew the right offset by heart.

(Edit: I’m assuming you wish to use original media, because otherwise you could always go with the MSDOS version of Frotz and the argument -w 40 to force display line length)

3 Likes

New Zork Times 3.1 says official DOS 2.0 interpreters support 40x25!

1 Like

Confirmed:

The only games I have found that appear to force 80 columns are the protected 160k releases prior to 1985. These are tricky to handle because they use a custom boot loader, but the unprotected versions I have seen (with a different interpreter) appear to work fine with 40 columns. I tested this with DOS 2. The Palmtop uses DOS 5, but I don’t know why this would be any different.

3 Likes

Could frotz254.zip, for 16-bit MS-DOS, work?

https://www.ifarchive.org/indexes/if-archive/infocom/interpreters/frotz/

1 Like

Hmm interesting. The particular game I was going to play is Ballyhoo which is from 86, I believe. If I run that in 40 column mode the opening text scrolls off before I get a chance to read it.

I can try some other Infocom titles and see if they behave differently.
My 200LX is running msdos 5.0, not sure if that matters.

As for frotz254, I did try that and it went into 80 columns, although it restored to 40 column after exiting the game.

1 Like

Frotz may have commandline switches to select screen size. Maybe try -h 25 -w 40 (see frotz(6) [debian man page] )?

1 Like

Ah ha! it took a little playing with the options but I found what works for me:

frotz -h16 -w40 -d0 …/infocom/ballyhoo/data/ballyhoo.dat
(or whatever your data file is)
the -d0 is needed because I guess any other display mode forces 80 columns even if the -w40 is limiting the text to the first 40 columns but -d0 keeps it in 40 columns (assuming you used “mode 40” prior to launching the game)
at first I didn’t think it was working but then I realized that on the hp200 I don’t have 25 rows so the -h16 limits it down even further.

Thanks!

4 Likes

Glad to see you got it to work!

This is another interesting way of playing Z-code games, on a 20x15 character screen on the Commander X16:

1 Like