Series 80 Emulator - File transfer



#13

If I develop programs on the Series 80 emulator, how can I transfer these programs to my HP-85 via Floppy disks?
In the S80EMU, I can write a LIF file. But I don't know how to transfer this file to the HP-85 (rawrite and fdimage do not work on my Windows PC). Any help appreciated...

Thank you,
Juergen


#14

This is a thorny question. I'm assuming you are using a 9121. The problem is twofold. First, modern PC BIOS have trouble with sector sizes other than 512 bytes. I believe your images need to have 256 bytes/sector to be readable on the HP-85. Second, even a fairly old BIOS has difficulty with single sided media. The 9121 uses single sided, double density disks. (SS/DD).

The second problem is easier to deal with. If your disk imaging software can be told to write to only side 0 of a double sided, double density (DS/DD) floppy then that will fool the 9121, as long as the second write enable notch is covered. (Note that these formats are both lower capacity than a standard "HD" floppy disk.) But you still need software that will do that. I don't know of anything running under Windows that will, as a matter of fact. There is a DOS program called TELEDISK.EXE that can do the trick, but it only reads its own peculiar disk image format. Fortunately, quite a lot of HP-85 software is available in that format at hpmuseum.net.

What I do is to beat a long way around the bush. I have an HP-IL card in an ISA slot of my old Pentium/75 system. I use this in conjunction with EMU41 by J.F. Garnier. That is DOS software that I run under Linux. It emulates an HP-41, but also a complete virtual HP-IL loop. If you buy the registered version from JF for 20 Euro, it will use an HP-IL card to talk to real HP-IL hardware. So out there on the real loop, I have a 9114 floppy drive. I use an HP-71B and a BASIC program to copy an HP-85 disk image file-by-file to a real floppy sitting in the 9114. This floppy I can then sneaker net over to the Hp-85 with 9121.

That's a lot of stuff to buy and tinker with just to get a program copied, though. Unless you are addicted to that sort of thing, a more practical approach might be to get an RS232-C interface for the real 85, and use the 87 emulator (if it will do that) or else hyperterm or crt to send the program over as text. It should be considerably easier to do that sort of thing, and cheaper too. Of course, it won't be nearly as much fun. 8)

Good luck!


#15

Thank you, Owen, for this very interesting informations. I think there must be an other way:

1. From inside Series 80 Emulator, save your programs to a LIF file.

2. From this LIF file, extract the programs (with some tool not yet existing), preceded by a DSF header. I don't know what DSF really is, but it is used by LIFUTIL to preserve file type information. Anybody knows something about DSF?

3. Use LIFUTIL to save programs to a floppy disk preformatted on an HP-85.

Except for the tool mentioned in step 2, everything is working on my system. I'm currently analyzing the DSF header, but I do not understand all the bytes. If anyone could provide me some information about what exactly DSF is, I'm sure, I am able to write the missing tool.

Juergen


#16

For # 2, you can use Tony Duell's LIF utilities for Linux. There's also a nice tool for DOS and Windows available from this site, but it is tuned for HP-41 files. For #3, I don't know of anything that works on a modern PC under Windows. Someone else here may know different. I'd love to be proven wrong. 8)

Reading this again, I see that you suggest a floppy preformatted (on a 9121?) on the HP-85. If it is single sided media, you will have difficulties. The only way I have been able to write a single sided image to floppy is using real MS-DOS, double sided (DS/DD) media and a utility that knows to only write to side 0 to simulate single sided media. Maybe LIFUTIL will do this, but I thought I had tried that without success.

Edited: 8 Oct 2005, 8:21 p.m.


#17

See my detailed recantation of some of the above in this thread.

Edited: 9 Oct 2005, 2:17 p.m.

#18

Quote:
For # 2, you can use Tony Duell's LIF utilities for Linux.

I have no Linux (shame on me ;-), but perhaps I can compile the utilities under cygwin...

Quote:
There's also a nice tool for DOS and Windows available from this site, but it is tuned for HP-41 files.

That does not work because HP41UC only handles files with type E080
(41C?) but the HP-85 files have type E020.

Quote:
For #3, I don't know of anything that works on a modern PC under Windows. Someone else here may know different. I'd love to be proven wrong. 8)

On my PC (500 MHz P3) it works perfectly with LIFUTIL. But I had to install an older 3.5"/1.44MB floppy drive.

Quote:
Reading this again, I see that you suggest a floppy preformatted (on a 9121?) on the HP-85. If it is single sided media, you will have difficulties. The only way I have been able to write a single sided image to floppy is using real MS-DOS, double sided (DS/DD) media and a utility that knows to only write to side 0 to simulate single sided media. Maybe LIFUTIL will do this, but I thought I had tried that without success.

As said before, this works on my PC. The only problem is step #2. I will continue work on this and let you know.

Thank you much for your comments!

#19

Howard Owen wrote: 
> That's a lot of stuff to buy and tinker with just to get a program
> copied, though. Unless you are addicted to that sort of thing, a
> more practical approach might be to get an RS232-C interface for
> the real 85, and use the 87 emulator (if it will do that) or
> else hyperterm or crt to send the program over as text. It should
> be considerably easier to do that sort of thing, and cheaper too.

This is what I do to get stuff from my HP-87 to my Windows or Unix PC. I am using a binary program on my HP-87 that allows diskette sectors to be read/written and then a short Basic program to send the data down the serial card to the PC. More details at http://www.series80.org/Articles/uploading-disk-images.html


If you want to use LIFEXE, read http://www.series80.org/Programs/index.html

#20

Have a look at the following articles [1] on the series 80 web site:

http://www.series80.org/Articles/xfer-to-dos.txt
which is an article posted by Greg Goebel (gvg@lvld.hp.com) to comp.sys.hp.misc on xfering data between PCs and Series 80 computers.


Also look at this summary page: http://www.series80.org/Articles/downloading-disk-images.html
which contains suggestions for downloading diskette images to Series-80 floppies.

**vp

[1] articles page at http://www.series80.org/Articles


#21

I already read the article, and I can transfer files from HP-85 to PC and vice versa. rawrite and fdimage did not work on my PC, but LIFUTIL works perfectly. BTW, thank you much for your excellent web site!

The only thing I cannot do is transferring files from the Series 80 Emulator to my HP-85. I can export S80EMU files to a .LIF file, but how do I get this to the HP-85?

My plan is to extract single programs from the .LIF file (easy), preceed them by a DSF header (need specification!), and transfer this files via LIFUTIL to floppy disk. DSF header is needed to preserve file type information. I have no serial interface, so floppy disks are the only way for me to transfer files.

Does anybody know what this DSF header used by LIFUTIL is?


#22

Juergen (CH) wrote:
> Does anybody know what this DSF header used by LIFUTIL is?

Its essentially a single file LIF image (http://www.hpmuseum.org/cgi-sys/cgiwrap/hpmuseum/articles.cgi?read=24) with significantly reduced directory area. The first block (256 chars) is essentially the same as the first block of a LIF volume (differences: there is always only one file on the volume, and the volume label is always HFSLIF).

The second block contains two directory entries (same as a LIF volume) the first is the entry for your file. The really annoying thing is that the directory entry always has the name WS_FILE instead of the LIF filename (what a wasted opportunity). So you need to specify the filename your self.

The second directory entry is of type 0xffff, end of directory entry.

So you can essentially cut&paste from a LIF volume to create a LIFUTIL DSF file.

Following is some hex dumps with comments:

DSF image of file CH4.BIN (from the HP85 training pack):

 000000000000    80004846  534c4946    00000001  10000000    *..HFSLIF........*
000000000010 00000001 00000000 00000001 00000001 *................*
000000000020 00000005 11111111 11110000 00000000 *................*
000000000030 00000000 00000000 00000000 00000000 *................*
*** SAME ***
0000000000f0 00000000 00000000 11111111 11110000 *................*
000000000100 57535f46 494c4520 2020e022 00000002 *WS_FILE ."....*
000000000110 00000003 00000000 00008001 f0020001 *................*
000000000120 00000000 00000000 0000ffff 00000000 *................*
000000000130 00000000 00000000 00000000 00000000 *................*
*** SAME ***
000000000200 4d41494e 000040f0 02000000 00000000 *MAIN..@.........*
000000000210 00000000 00000000 10000c85 7f013751 *..............7Q*
000000000220 9b060343 48340e20 00064740 5a40000e *...CH4. ..G@Z@..*
000000000230 30002f46 40474056 051f494e 434f5252 *0./F@G@V..INCORR*
000000000240 45435420 5052494e 54455220 53504543 *ECT PRINTER SPEC*
000000000250 49464943 4154494f 4ef0ec40 56ec4056 *IFICATION..@V.@V*
000000000260 ec0e4000 3656052d 506c6561 73652073 *..@.6V.-Please s*
000000000270 70656369 66792074 68652070 72696e74 *pecify the print*
000000000280 65722e2e 2e202020 2832206f 72204f54 *er... (2 or OT*

...
...
...

This is the HP85 Training pac diskette image (extracts)

1st sector:

 000000000000    80004241  53494320    00000002  10000000    *..BASIC ........*
000000000010 0000000e 00000000 00000000 00000000 *................*
000000000020 00000000 00000000 00000000 00000000 *................*
*** SAME ***

Directory entry for file CH4

 000000000240    43483420  20202020    2020e022  0000006d    *CH4       ."...m*
000000000250 00000003 00000000 00008001 f0020001 *................*

Comparing the two we see that they have only minnor differences (just the filename and the start sector on disk, which is always 2 for the DSF as the file starts on the third sector of the image (which is block 2 if you start counting blocks from 0)

Summary: To create a DSF archive you:

(a) copy the first two blocks (block 0 and 1) from an existing DSF archive.

(b) copy the LIF directory entry of the file (32 bytes) into the
beginning of the second block (block 1) of the new DSF archive (absolute DSF file address 0x0100).

(c) Edit the file directory entry in the new DSF archive to change the filename to WS_FILE and the starting block to 0x00000002 (absolute DSF file address 0x010C).

(d) Append file contents to DSF archive starting from the third block (block 2), absolute DSF file address 0x0200.

**vp


Edited: 10 Oct 2005, 7:33 p.m.


#23

Vassilis and Howard, thank you much for your valuable support. It helped me to find the following
solution
.

#24

hello all,

There is one thing which have helped me in this case.
It was to switch the floppy drive to 720Ko at BIOS setup.

Hope it helps.
Patrice


Possibly Related Threads...
Thread Author Replies Views Last Post
  HP-80 History, Design and Interesting Facts BShoring 1 419 11-30-2013, 08:50 AM
Last Post: Xavier A. (Brazil)
  Cannot delete file Les Koller 4 681 11-07-2013, 12:17 AM
Last Post: Les Koller
  File Format: hpprgm Thomas Chrapkiewicz 6 975 10-30-2013, 09:32 PM
Last Post: Thomas Chrapkiewicz
  HP-80 Teardown with pictures Max Stone 10 1,226 10-24-2013, 09:10 PM
Last Post: Walter B
  HP-80 CHS Exponent Curiosity Max Stone 4 709 10-22-2013, 02:39 PM
Last Post: Max Stone
  HP-Prime File extension Paul D. Fox 6 738 10-07-2013, 01:45 AM
Last Post: cyrille de Brébisson
  HP 80 emulator Olivier De Smet 4 612 09-02-2013, 09:39 AM
Last Post: Vincent Weber
  HP 35 ... 80 Olivier De Smet 6 908 08-29-2013, 07:25 AM
Last Post: Olivier De Smet
  go71b 'lexs' or 'raws' file format? Christoph Giesselink 2 515 08-21-2013, 02:53 AM
Last Post: Christoph Giesselink
  How to use XnView to create .gro4 file as in OpenFire? arturfeghali 2 422 06-27-2013, 05:57 PM
Last Post: jerome ibanes

Forum Jump: