LIF interchange (71B|75C|41C) <-> 85B


I have just taken delivery on a 9121D dual floppy unit. I hooked it up to my 85B and saved a couple of files onto a single sided disc. Then I placed this disc in my 9114 and did a CAT of the drive from my 71B. To my joy, the catalog appeared, albeit with unknown (to the 71B) file types listed against the HP85 BASIC files. Next I tried serving out a LIF image of one of Vassilis' HP85 disks to the 71B with EMU41. The idea was to copy these to the 9114 and thus sneakernet software onto the 85. Unfortunately, the 71B reported "Unknown file type" on any attempt to copy the files out of the virtual LIF disk and onto the 9114.

Does anyone know how to manipulate the LIF file type from a 71B? There must be a LEX file somewhere that lets you diddle the bits on disk. (I can do this in Linux, but while the resulting file should copy using the 71B, the result on the 85 would be an incorrect file type.)


Hi Howard,

The basic HP-71B can't copy file of unknown format, but if you load the JPC ROM into Emu71 (or in a HP-71B), then you will be able to copy foreign file from one disk to another (but not to load them into the HP71 /Emu71 of course).


Edited: 21 Aug 2005, 3:33 p.m.


Oh, cool! Thanks, JF!

Did I mention that this guy's software is great?


No joy, I'm afraid. The JPC ROM (jcpromx.bin) correctly handles LIF files for HP-75 and HP-41, but not for HP-85.

Your software is still cool, though. 8)


This is turning out to be kind of fun. The JPC ROM has a file type LEX that recognizes other handheld machine's files. So HP-75 and HP-41 file types are recognized by the 71B (or by EMU71) when that ROM is loaded. But it doesn't cope with HP85 file types. However, looking through Joe's LEX file index, I ran across EXTFILES, which is described like so:


EXTFILES “External Files Poll Handler”. This lexfile does not add any keywords to BASIC, but extends the number of file types that the HP-71 recognizes. The HP-71 normally recognizes only BASIC, KEY, TEXT, SDATA, DATA, LEX and BIN file types, and refuses to copy files into memory (or from disc to disc) if they are of any other type. The FORTH ROM allows a new file type, FORTH files, to be copied, and identifies these files by putting “FORTH” into their catalog string. The EXTFILES lexfile takes this idea a step further. It makes just about every file type known to the handheld community recognizable to the HP-71, and not only allows it to copy them, it identifies them in their catalog listing. No longer do we need to decipher file type code numbers. SIZE: 502 bytes.

"Great," I thought, "this is just the code the JPC ROM used." But the part about "every file type known to the handheld community" made me decide to try it out. It's included in from JF's site. Sure enough, when I loaded it into EMU71 (after turning off the JPC ROM) I was able to list a LIF image of the HP-85 games pac with "PROG8" as the file type! Next I tried 'COPY "BLACKJ:3" to ":6"', with the 6th HP-IL device being my 9114, and I got "HPIL ERR:File Protect".

Bummer. Well, I know I skimmed past the informationo on how to remove that protection somewhere in the PPC or HPPC archives. I seem to recall it uses two characters as the unlock key, so brute force should work pretty well if nothing else. More research is called for. Good thing I enjoy that sort of thing. 8)


As many will know, the "protected" status of a LIF file is merely a different file type in the directory. I believe there is also another method of locking up files that may involve encryption, but this isn't it. Just finding the appropriate unprotected type number of the file type and changing it in the directory is enough to allow the file to be copied. This is trivial when you are dealing with an image of the disk, of course.

Circumventing copy protection is not my usual modus when dealing with computers. My dislike of the DMCA notwithstanding, I usually try not to mess with that sort of thing. But the bits in this case were free to copy in the form of a disk image, but not as individual files. I believe that makes circumventing the non-protecting copy protection OK. That's a self serving interpretation, but I'll stick by it. 8)


Congrat Howard!

Despite my approximative suggession, you made it!



Thanks, Jeff!

It's a little cumbersome, but I've now copied over several of the disks available at Vassilis' site.

One other item of interest: the 71B thinks the disks have less capacity than they actually do. I recall reading about this in the PPC journals, together with a hack for getting around it. At any rate, it means that I have to copy the files to the real floppy in two passes. So here's the process:

  1. Copy an HP-85 disk image to EMU71's hdrive2.dat
  2. CATalog the disk to see if there are protected files
  3. Use a hex editor in another window to modify the file type fields to the unprotected types.
  4. Format a floppy on the HP-85/9121. (The 85 won't be able to read a disk formatted by the 71B)
  5. Put this floppy in the 9114
  6. Write a 71 BASIC program to copy the files from the LIF image to the 9114
  7. Wait until the copy bombs out with "Disk Full"
  8. Put the floppy back in the 9121
  9. Format another floppy in the second 9121 drive
  10. Write an HP-85 BASIC program to copy the files from the first floppy to the second
  11. Delete all the files on the first floppy and PACK it. (Faster than reinitializing.)
  12. Put it back in the 9114
  13. Finish copying the balance of the files remaining in the disk image
  14. Sneaker net the disk back to the 9121
  15. Copy the rest of the files to the second floppy

The thing that stands out for me in trying to get stuff done on these old machines is the amount of grunt work involved. The above process is an example. On Linux, I do some bash scripting with a little Perl mixed in, or else (more rarely) a full-blown Perl program, and I get 99% of what I need done with comparatively little effort. the extra work in these 20th century models isn't just due to the more primitive tools available, though. It also has to do with the number of incompatible systems you have to traverse in order to get things done.


Howard Owen wrote:
> 4.Format a floppy on the HP-85/9121. (The 85 won't be able to read a disk formatted by the 71B)

False! The 85 can read disks formatted by the 71B (and the 41C).

You are just using the wrong drive. The 9121 is SINGLE sided, while the 9114A/B are DOUBLE sided. If you use a double sided drive with you 85 (e.g. the 9122) you will be able to read 9114A/B disks.

BTW note that to use the 9122 with the HP85 you will need the EMS rom (available from


Edited: 24 Aug 2005, 4:50 p.m.


Gee, I happen to have a 9122 gathering dust. How do I get the EMS ROM of which you speak? (On my real 85B, that is.)


You can download the ROM image from the Series80 web site
then you need either the 82929A Programmable ROM drawer
or a ROM emulator (somebody posted a link some time ago).


Possibly Related Threads...
Thread Author Replies Views Last Post
  [HP-41][HP-71B][HP-75C/D][HP-IL] Found a mother-lode of programs on rdj 2 873 11-26-2013, 05:31 PM
Last Post: rdj
  HP 75C 75D Olivier De Smet 2 645 02-04-2013, 08:49 AM
Last Post: Paul Berger (Canada)
  HP 75C Joerg Woerner 0 423 04-10-2011, 09:50 PM
Last Post: Joerg Woerner
  LIF Utilities for linux Christoph Giesselink 7 1,180 02-24-2011, 03:46 PM
Last Post: Juergen Keller
  HP-IL 71B to 71B via HPIL Geoff Quickfall 11 1,725 12-01-2010, 06:55 PM
Last Post: Michael Meyer
  LIF file viewer for windows ? John Robinson 5 962 06-21-2010, 04:24 PM
Last Post: Juergen Keller
  Some progress (HP 85B) Olivier De Smet 3 792 05-02-2010, 03:01 AM
Last Post: Olivier De Smet
  Reading and writing text files from/to LIF-files: Two new scripts Geir Isene 1 522 03-08-2010, 06:14 PM
Last Post: Egan Ford
  LIF file specification Geir Isene 2 663 03-06-2010, 10:41 AM
Last Post: Geir Isene
  HP-41: Read/Write XM file from a LIF-file? Geir Isene 6 987 03-04-2010, 02:44 PM
Last Post: Geir Isene

Forum Jump: