From: Greg King (gngking_at_erols.com)
Date: 2004-04-19 20:41:21
-----Original Message-----
From: Larry Mollica
Date: Monday, April 19, 2004 04:04 AM
>
> I don't know why HP thought that certain things deserved to be bus
> commands, while most of the instrument control is done with regular
> data. Maybe they had a reason, but for us it's just a big pain.
When an HPIB controller sends a command to an instrument, it might be
saying, "listen to only the HPIB bus; we're more important than local
control." Then, when it sends an "unlock front panel" command, it is
saying, "listen to local commands; they are more important than anything
that comes from the bus." That kind of thinking might be how HP justifies
claiming that some device-commands are bus-commands.
>
>>I vaguely remember that OPEN keeps ATN set to "active" while it sends the
>>file-name string. If I'm correct, then you could pretend to open (and
>>close) a file. You would use the device-command that you want to send as
>>the name of that phony file.
>
> That should be easy to try. I will give it a shot next weekend, maybe.
>
> One potential problem is some of the HP bus commands were control
> characters, although many were printable. I'll have to get my hands
> on manuals before I can tell if this method would do us any good.
You can put any eight-bit number into a string-expression by using the
CHR$() function.
OPEN 6, 27, 0, CHR$(1): CLOSE 6
>
> If you set the HP dip-switch to a value of 5, then
> OPEN 1,5
> will give you control. (The front panel locks upon the first PRINT#,
> and stays that way until you turn off or reset the instrument. Either
> of which destroys any setup the PET may have done.)
>
> Most of the functions, like say, entering a frequency value, are
> normal data, as in a PRINT# command. We have been able to get this
> kind of stuff (mostly) working.
>
> PRINT#1, "A1";
> will, for example, select a specific relay in an HP switch-box.
I'm glad to see that two obvious problems don't exist:
1. You can choose an instrument.
2. You can talk to it.
But, I see another problem: different sets of character-codes. The CBM
uses PETSCII, while HP's devices use ASCII. So, your BASIC programs must
translate letters.
-----Original Message-----
From: Marko Mäkelä
Date: Monday, April 19, 2004 04:45 AM
>
> BTW, there is some magic in the high-order bits of the file number, and
> possibly device number. One of them controls CR to CR/LF transformation,
> and setting another bit avoids sending the secondary address,
> if I remember correctly. This is on the Commodore serial bus; I haven't
> disassembled the PET firmware.
Yes. When the logical-file-number is greater than 127, PRINT# appends a
line-feed to carriage-returns. ( It doesn't translate to ASCII, though,
which is a shame. :-/ )
When the secondary-address is higher than 127, it is not sent over the bus.
Also, OPEN and CLOSE act locally only; they do nothing (including sending
file-names) to the bus.
Message was sent through the cbm-hackers mailing list
Archive generated by hypermail pre-2.1.8.