Posts: 255
Threads: 59
Joined: Jul 2007
Hello:
Now that I've gotten EMU41 to run properly under XP on my P4 machine, I've begun moving my programs from magnetic cards to both floppy and PC storage. Moving files to and from the 9114B using EMU41 works great. I've left the hdrive1 declaration in the EMU41.INI file to try to save files to virtual mass storage file but that hasn't worked for me.
I tried renaming the hdrive1 file but that made no difference as well as deleting and generating a new hdrive1 file via NEWM 100. Finally, I commented out the XIL 300 in the INI file and then EMU41 would properly save files the virtual mass storage device in the hdrive1 file.
It appears to be some kind of conflict between virtual mass stroage and the 9114B though that doesn't make sense as J-F planned for both internal and external HP-IL devices and they both have separate address IDs and you can have multiple mass storage devices on same HP-IL loop. Has anyone seen this behavior before? I've sent an email to J-F yesterday but I haven't heard back from him yet. I also searched the HP Museum website but found no specific mention of storage issues between virtual and real mass storage devices in EMU41.
It's very possible that J-F never saw any reason to have both virtual and real mass storage devices in use at the same time when he wrote EMU41. If you have a real disk drive connected to the PC, why would you ever need virtual storage? This is a pure guess on my part though. My reasoning for wanting to save files to both devices is that as useful the floppy storage is, I believe strongly in backing up files. I'm thinking of having multiple hdrive1 files with all my programs on them so that in addition to my floppies, I can back up the hrive1 files when I do a PC backup. Also, the 9114B floppy file format is non-standard with Window or Mac PCs so I can't use a regular floppy drive to copy the files to a PC.
Finally, I could just be doing something wrong. I don't have a copy of my EMU41.INI file with me but it's a standard HP-41CX setup with Extended Functions, Time, Printer and HPIL controller along with the Advantage ROM. My declared HP-IL devices are Display, HDRIVE1, FDRIVE1, LPRTER1, DOSLINK and XIL 300.
Any insights are appreciated.
Thanks everyone,
Gerry
Edited: 3 Aug 2009, 3:16 p.m.
Posts: 304
Threads: 23
Joined: Jul 2007
Dear Gerry,
nice to hear from you and your EMU41 & HP-IL activities :-)
I work with EMU41 and HDRIVE1 and external IL-Cass Drive without problems, I think there is no system limitation working with virtual drives and real drives in combination.
May be you get some trouble form the virtual FDRIVE1. This works only correct when you insert a floppy disk (= medium). Without inserted medium you will get trouble. For older floppy drives the firmware is compatible to read the medium from the IL-Disk-Drive 9114, but unfortunately this is not possible for the modern floppy drives. Therefore the best solution is to disactivate the FDRIVE1 in the EMU41.INI file :-)
May be you have the CCD-Module available. If not in real hardware you can use it as rom image file for EMU41. The CCD-Module includes the CAT 0 command, which lists you the virtual and real IL devices on the PC screen: Execute SF15 than CAT 0 and you get the complete list of IL-Devices... The star indicates the primary IL-device.
For some IL-Devices it is better to operate them in the MANIO mode (for example a Printer).
In my IL2000 Interface System manual you find some advanced samples and software routines for HP-41 to operate EMU41 and external IL-devices...
Best wishes - Christoph Klug
Posts: 412
Threads: 40
Joined: Mar 2006
Hi Gerry,
Using multiple mass storage units with the HP41 can be quite tricky!
And many HP41 users are not used to manage multiple units, due to the cost involved at the time.
Excerpt from Emu41 documentation:
Note about the use of multiple mass storage units:
If more than one HDRIVE1, HDRIVE2 and FDRIVE1 drives are simultaneously declared, the
Emu41 (like the HP-41) behaviour is such as this: in AUTOIO mode, Emu41 searches on all
drives for the file to read or write.
Espacially:
You can't know on which drive the HP-41 will write in AUTOIO mode!
In case of no disc in the FDRIVE1 floppy drive, an error is returned, even if the operation was
targeted to the HDRIVE1 or HDRIVE2 drive!
So it is recommended to use both HDRIVE1 et HDRIVE2 with care, and to declare FDRIVE1
only when it is needed.
Look at the HP82160 manual under "Using Multiple Mass Storage Devices", page 39 in the
english edition (feb.81).
This note also applies when using external drives (HP9114, HP82161), or when using an
external HP41C.
And as Christoph mentionned, FDRIVE1 doesn't work on WinXP.
Hope this helps, otherwise give me more details on the errors.
J-F
Posts: 255
Threads: 59
Joined: Jul 2007
Thanks Christoph and J-F for your feedback.
I have been a little reluctant to modify the INI file anymore than necessary with all the issues I've had with it. I have wondered about the FDRIVE1 declaration and I will comment it out tonight to see if that changes the symptoms.
Christoph, I have seen your references to the CCD-Module in your book and I started looking for the BIN file in Warren's DVD on Sunday but it wasn't there. I would like to locate it and put it on my EMU41 as I wanted to use that CAT 0 command to see what actually shows up on the HP-IL loop. It's the perfect troubleshooting tool for this situation. I also started looking for exactly what flag 15 does, but in the 41CX manual, it says flags 12 through 20 are for external device control and to refer to the appropriate manual for details. Which manual?
If it hasn't been obvious, I'm learning HP-IL from scratch and it's a steep learning curve and I'm also learning EMU41 at the same time. I don't understand AutoIO or ManIO yet so I haven't played with them to see what happens and how it affects access to peripherals. There's a lot to absorb and I get confused as to where to look for information and filter it through how the emulator works.
J-F, I agree, using multiple mass storage devices can be tricky. What's so hard for me is that I keep trying to determine that status and location of devices in the loop and I get weird responses. I've been using the SELECT and DIR commands assigned to keys to see what responds as I move up and down the loop. For instance, HDRIVE1 shows up at both address location 1 and 2, with addresses 3, 4 and 5 all being my 9114B. I hadn't started troubleshooting that issue as I was just glad to see EMU41 consistently accessing the 9114. I'm not sure if the DISPLAY declaration puts an actual device on the HP-IL loop but I think it does but I don't know how it would show up in the DOS window. There are many questions that come up when I work on the EMU41 but I'm trying to take it one small piece at a time to see how things work. I'm hoping as time goes on I will gain experience and understanding of the HP-IL loop which I can apply to the real devices through the HP-41. I also have an HP-71B with an HP-IL interface but I've shelved it until I understand HP-IL better. I never got into HP-IL back in the 1980s as it was just too expensive for my use.
Last Sunday night, after I wrote you J-F, I sat down with your EMU41 documentation and read the part you referenced. I completely misinterpreted your first line as I thought it meant if you declared multiple HDRIVE1s, HDRIVE2s or FDRIVE1s at once in the EMU41.INI file which made no sense to me. I thought I was just not understanding what you were talking about. Now I think what you meant was that if you declare HDRIVE1, HDRIVE2 and FDRIVE1 together in the INI file, EMU41 goes out to try to read or all those devices.
Thank you again for your feedback. I will try to implement your ideas tonight or over the next few days and let you know what I find.
I should mention that I did buy another 9114B Sunday and I should see it next week. I still like rotating media like floppy drives. There's something satisfying when I hear the disk spin and know that I made it do that (for better or worse).
Gerry
Edited: 5 Aug 2009, 1:52 p.m. after one or more responses were posted
Posts: 304
Threads: 23
Joined: Jul 2007
Dear Gerry,
please give me your email address :-) And refer to IL2000 System Interface manual page IX.47. May be this helps to operate the 9114 IL-Disk-Drive...
Best wishes - Christoph Klug
Posts: 255
Threads: 59
Joined: Jul 2007
First of all, a correction. The FDRIVE1 declaration is NOT in any of my EMU41.INI flies. Here is a copy of the INI file I'm presently using:
; emu41.ini emu41 init file
[MODULES]
; page size filename
0 12 rom41cx.bin
3 4 cxfcn2d.bin
5 8 cxtime2c.bin
6 4 prter1e.bin
7 4 hpil1h.bin
; ------------
8 12 adv41b.bin
10 4 xio1a.bin
[DEVICES]
DISPLAY
HDRIVE1
LPRTER1
DOSLINK
XIL 300
As far as I know, this is a standard EMU41.INI file yet the internal mass storage device shows up at addresses 1 and 2 and the 9114B shows up at addresses 3 and 4. I tried commenting out DISPLAY, LPRTER1 and DOSLINK and it changed the device addresses on the loop but I'm not sure to what.
There must be something I'm missing because I'm getting really confused on how to configure EMU41.
J-F, the EMU41.INI files you supply with your distributions are fine. I was wrong about what I said and have removed my comments from my original post. My apologies.
Gerry
Edited: 5 Aug 2009, 1:59 p.m.
Posts: 304
Threads: 23
Joined: Jul 2007
Dear Gerry,
please correct the sequence of your virtual IL-devices in the DEVICES section.
Have a look to my EMU.INI file below as reference, this file includes some helfpully comments. This sample is an extractet / shortet version of the EMI41.INI file I add to the HP-IL/PC Interface card..
Regards - Christoph
[MODULES]
;
;
; HP-41CX Rom-Modules :
;
0 12 rom41cx.bin
3 4 cxfcn2d.bin
5 8 cxtime2c.bin
;
; HP-IL Module : hard addressed module to port 6 + 7
;
6 4 ilprin2e.bin ; Printer system rom XROM 29
7 4 ilmass1h.bin ; Mass Storage system rom XROM 28
;
; Advanced-Modules :
;
;8 12 adv41b.bin ; Advantage XROM XX bank switched module
8 8 ccd1b.bin ; CCD vers.B XROM 09 + XROM 11
;
; HP-IL Accessory Modules :
;
10 4 extio1a.bin ; EXT-I/O XROM 23
;X 8 ildev.bin ; Devel XROM 22 + XROM 24
;X 4 extil.bin ; EXT-IL-ROM XROM 27
;11 4 extil2.bin ; EXT-IL-ROM XROM 30 version 2
;11 4 exilplus.rom ; EXT-IL+ROM XROM 27 version + (with new functions = IL2000 Interface System - book edition 2008)
;12 4 skwidbc.bin ; Barcode Plott XROM 08
; RAM-BOX / MLDL :
;
;8 16 hepax1d.bin ; HEPAX XROM 07 bank switched module, needs 3 pages
;14 8 mbkprof.bin ; MBK PROFISET XROM 27 + XROM 31 version 2G
;10 4 rambox.bin ; W&W RAMBOX XROM 31 32KByte version
;8 64 ramboxii.dat ; W&W RAMBOXII XROM 31 64KByte version bank switched bank a+b = HP41CY
;12 8 MLDLRAM.DAT ; 8KByte RAM
;8 96 es_rsu.dat ; ERAMCO RSU 96KByte RAM = 4 banks of 24KByte in page 8 to 13
;14 8 rsu_os.rom ; ERAMCO RSU operating system on page 14 + 15 XROM XX + XROM YY
;
;
[DEVICES]
;
DISPLAY
LPRTER1
HDRIVE1
;HDRIVE2
SERIAL1 1,E3
;SERIAL2 2,E3
;FDRIVE1 ; insert a LIF DD floppy for correct function. Not available for modern PCs.
DOSLINK
;XIL 300 ; HP-IL/PC Interface Card - 700 default address / 300 address for WIN2000/NT/XP
;
Edited: 6 Aug 2009, 3:16 a.m.
Posts: 1,841
Threads: 54
Joined: Jul 2005
Hi Christoph,
please use the [Pre] -formatted tags for listings;-)
Regards
Raymond
Posts: 291
Threads: 63
Joined: Jan 1970
This Message was deleted. This empty message preserves the threading when a post with followup(s) is deleted. If all followups have been removed, the original poster may delete this post again to make this placeholder disappear.
Posts: 1,830
Threads: 113
Joined: Aug 2005
[MODULES]
;
;
; HP-41CX Rom-Modules :
;
0 12 rom41cx.bin
3 4 cxfcn2d.bin
5 8 cxtime2c.bin
;
; HP-IL Module : hard addressed module to port 6 + 7
;
6 4 ilprin2e.bin ; Printer system rom XROM 29
7 4 ilmass1h.bin ; Mass Storage system rom XROM 28
;
; Advanced-Modules :
;
;8 12 adv41b.bin ; Advantage XROM XX bank switched module
8 8 ccd1b.bin ; CCD vers.B XROM 09 + XROM 11
;
; HP-IL Accessory Modules :
;
10 4 extio1a.bin ; EXT-I/O XROM 23
;X 8 ildev.bin ; Devel XROM 22 + XROM 24
;X 4 extil.bin ; EXT-IL-ROM XROM 27
;11 4 extil2.bin ; EXT-IL-ROM XROM 30 version 2
;11 4 exilplus.rom ; EXT-IL+ROM XROM 27 version + (with new functions = IL2000 Interface System - book edition 2008)
;12 4 skwidbc.bin ; Barcode Plott XROM 08
; RAM-BOX / MLDL :
;
;8 16 hepax1d.bin ; HEPAX XROM 07 bank switched module, needs 3 pages
;14 8 mbkprof.bin ; MBK PROFISET XROM 27 + XROM 31 version 2G
;10 4 rambox.bin ; W&W RAMBOX XROM 31 32KByte version
;8 64 ramboxii.dat ; W&W RAMBOXII XROM 31 64KByte version bank switched bank a+b = HP41CY
;12 8 MLDLRAM.DAT ; 8KByte RAM
;8 96 es_rsu.dat ; ERAMCO RSU 96KByte RAM = 4 banks of 24KByte in page 8 to 13
;14 8 rsu_os.rom ; ERAMCO RSU operating system on page 14 + 15 XROM XX + XROM YY
;
;
[DEVICES]
;
DISPLAY
LPRTER1
HDRIVE1
;HDRIVE2
SERIAL1 1,E3
;SERIAL2 2,E3
;FDRIVE1 ; insert a LIF DD floppy for correct function. Not available for modern PCs.
DOSLINK
;XIL 300 ; HP-IL/PC Interface Card - 700 default address / 300 address for WIN2000/NT/XP
;
Posts: 255
Threads: 59
Joined: Jul 2007
All I can say is WOW, now that's an EMU41.INI file. Thank you Christoph for posting this and to Howard for reformatting it to make it readable.
At first blush, my thought is to not remove any lines from the file, only comment out any lines that are not in my version of the INI file. Then I can see how functionality has changed and if the device addressing stabilizes. Now that I have the CCD1B.BIN file, I can use CAT 0 to get a clearer look at what devices are defined and where they are located in the loop. I will need to review the CCD documentation to see what other gems there are to help learn how to control HP-IL.
Even though I have Warren's HP-41C CD, I don't know if it contains all the BIN files listed. I will do some searching and start enabling the newer functionality as I get more comfortable with the application. I am concerned that once I get use to all these new functions, I'm going to have to buy the real thing for my 41s. Oh my aching wallet.:-)
Finally, is there a specific version of EMU41 recommended? I noticed that 2.40 and 2.47 are available on J-F's website. In the What's New page he identifies 2.47 as beta and that it fixes slow access to internal devices from an external HP-41 due to PIL-Box support. With what I'm presently doing, should I stick to 2.40 or move up to 2.47?
Thank you for your support,
Gerry
Posts: 412
Threads: 40
Joined: Mar 2006
is there a specific version of EMU41 recommended?
If version 2.47 works for you, then use it. I kept version 2.40 available as a backup, since the HPIL ISA board support of version 2.47 failed on some systems (but version 2.40 works), and Christoph and myself were unable to identify the problem.
Version 2.47 doesn't add any new features, except the experimental support of the PILBox.
J-F
|