Extended IO ROM incompatible with 1F IL module ROM
|
12-11-2024, 01:09 AM
(This post was last modified: 12-14-2024 09:13 PM by born2laser.)
Post: #1
|
|||
|
|||
Extended IO ROM incompatible with 1F IL module ROM
I am having a puzzling problem trying to use the Extended IO (82183A) ROM image on my CL, I am hoping I am doing something stupid and one of you can point it out to me.
Here is the situation, I have a 41CL, using the YFNX image in page 8 to avoid page 7 conflicts and can use the IL interface without any issue, both with old HP devices and my PILBox. I mounted the EXIO ROM image in page 9, and when I started trying to use it I found that some functions work fine (COPYFL, for example) but others give weird results. MCOPY spends some time talking with both drives and writes on the destination drive, but ends up corrupting the destination disk image completely, PyILPer can't recognize it anymore. For reference the "autostart and duplication module" has a similar function that works just fine for me Another one easier to test is DIRX, which is supposed to return a file name to the ALPHA register, I get garbage characters (7 of them) instead. This happens for virtual disk and for my real cassette drive, in which case of course I see that the drive reads something from tape. Additionally the function is supposed to return 0 if going past the last file, not happening. I tried with V41 and a virtual loop with ILPer and there everything work as advertised. Here is what I tested: 1) Using different pages in my CL to mount the image (testing if RAM is busted), exact same results everywhere 2) Using the ROM image from ***** and the one that comes with V41 instead of the one in flash, exact same results (they are all the same, the image in flash is not corrupted) Here is the request, somebody in the community please try it out and see if they see the same or is something peculiar with my system. Help! Thanks, Juan |
|||
12-14-2024, 09:12 PM
Post: #2
|
|||
|
|||
RE: weird behavior 41CL with Extended IO ROM
I figured it out!
Turns out I was unjustly blaming the CL or the ROM image (I will rename the thread after I post this). I was forgetting the other difference in my tests. For the V41 I was using a virtual HP-IL module, with the CL I was using a real module. I did not test with my CV because I don't have (yet!) the possibility of loading ROM images, so I can only do it with the CL My HP-IL module has a different version of the ROM (-MASS ST 1F) from the one in the virtual module (-MASS ST 1H). The Extended IO module makes a direct call to the HP-IL module at address 73F8, in the 1H version there is a little loop that reads data from the drive at that address, in the 1F version this lands in a pocket of 18 NOPs, most likely reserved space for future development (duh!). I am attaching the ROM images for those interested. Now, I already knew my HP-IL module was primitive, but since I had not noticed any difference up this point I had completely forgotten about it. As you can see in the linked photo my module is actually a "PIL Module". I got a good deal in TAS because I purchased "as is, untested". I believe the name of the loop changed at some point, besides my module I have what appears to be an internal HP document (from 1980, downloaded from the *** site) that contains basically the same information as the 82166 document (from 1982) available in Eric's site, but refers to the loop as "PIL" Anybody knows the history and wants to share it? Also, for the collectors out there, have you seen a module like mine? How rare is it? Juan |
|||
12-15-2024, 09:53 AM
(This post was last modified: 12-15-2024 10:14 AM by J-F Garnier.)
Post: #3
|
|||
|
|||
RE: Extended IO ROM incompatible with 1F IL module ROM
Thanks for your investigation, and sharing this up-to-now unknown version !
I will comment more about the HP-IL module prototypes and the "PIL" name in another thread. J-F |
|||
12-20-2024, 02:21 AM
Post: #4
|
|||
|
|||
RE: Extended IO ROM incompatible with 1F IL module ROM
(12-15-2024 09:53 AM)J-F Garnier Wrote: Thanks for your investigation, and sharing this up-to-now unknown version ! Thanks J-F, I was actually going to do just that, ask my history question on a new more suitably titled thread, but just then I got delivery of a new toy (90's vintage digital scope) and was antsy to check it out, so I put everything here. Just to wrap things up here, as I needed the DIRX functionality I ended up learning more than I expected about the IL loop and implemented it in FOCAL using low level calls in the extended IO module, that thank goodness behave as advertised. I am attaching it here for reference in the (admittedly unlikely) event somebody else runs into the same problem. DIRXX is obviously much slower than the module function, it does the same thing as DIRX, but it scrambles the stack. Juan |
|||
« Next Oldest | Next Newest »
|
User(s) browsing this thread: 1 Guest(s)