Discussion:
[hercules-390] HHC01105E 0:030F Printer: error in function write(): Invalid argument
broweo@yahoo.com [hercules-390]
2018-04-29 19:12:33 UTC
Permalink
I had the (I thought) bright idea to attach a hercules device to a raspberry pi GPIO pin with
"attach 30f 1403 /sys/class/gpio/gpio18/value"


I then ran a program to write either a 1 or 0 to that printer (directly, not through JES).
This does actually work in that the LED goes on and off but I get the HHC01105E error message followed by an EQC MVS error and an abend which I imagine are secondary to whatever hercules is unhappy about. I've googled for the message and found one reference to invalid characters in printer output. The manual says the message is not documented. The only place I see HHC1105 in the source is in printer.c and it looks like an unsupported device type in the attach processing rather than at write time.


The console output follows then the C program that's doing the writing. How can I find out what's causing the error or get around it.


19.07.10 JOB 181 $HASP100 GCCMVS2 ON READER1 19.07.10 JOB 181 $HASP373 GCCMVS2 STARTED - INIT 1 - CLASS A - SYS TK4- 19.07.11 JOB 181 IEF403I GCCMVS2 - STARTED - TIME=19.07.11 19.07.27 JOB 181 IEF236I ALLOC. FOR GCCMVS2 GO S1 19.07.27 JOB 181 IEF237I 30F ALLOCATED TO OUTPUT 19.07.27 JOB 181 +OH Hello HHC01105E 0:030F Printer: error in function write(): Invalid argument 19.07.27 JOB 181 IEA000I 30F,EQC,09,0E00,1000,,,GCCMVS2 ,19.07.27 19.07.27 JOB 181 IEC020I 001-1,GCCMVS2,GO,OUTPUT,30F 19.07.27 JOB 181 IEC020I NO ERROR HANDLING, (SYNAD), EXIT SPECIFIED 19.07.28 JOB 181 IEF450I GCCMVS2 GO S1 - ABEND S001 U0000 - TIME=19.07.28 19.07.28 JOB 181 IEF404I GCCMVS2 - ENDED - TIME=19.07.28 19.07.28 JOB 181 $HASP395 GCCMVS2 ENDED 19.07.28 $HASP309 INIT 1 INACTIVE ******** C=A 19.07.28 JOB 181 $HASP150 GCCMVS2 ON PRINTER1 480 LINES 19.07.28 $HASP160 PRINTER1 INACTIVE - CLASS=A 19.07.28 JOB 181 $HASP250 GCCMVS2 IS PURGED


//GCCMVS2 JOB CLASS=A,MSGCLASS=A,REGION=4096K //S1 EXEC GCCCLG,COS1='-S',PARM.ASM='DECK,LIST' //SYSIN DD * #include <stdio.h> int main(int argc, char *argv[]) { FILE *fp; asm(" WTO 'OH Hello' "); fp = fopen("dd:output", "w"); fprintf(fp, "1234567890"); fclose(fp); asm(" WTO 'OK Bye' "); return 0; } //GO.OUTPUT DD UNIT=30F,DISP=OLD,DCB=(LRECL=10,BLKSIZE=4,RECFM=F)
Gerhard Postpischil gerhardp@charter.net [hercules-390]
2018-04-29 20:48:20 UTC
Permalink
Post by ***@yahoo.com [hercules-390]
This does actually work in that the LED goes on and off but I get the
HHC01105E error message followed by an EQC MVS error and an abend which
I imagine are secondary to whatever hercules is unhappy about. I've
googled for the message and found one reference to invalid characters in
printer output. The manual says the message is not documented. The only
place I see HHC1105 in the source is in printer.c and it looks like an
unsupported device type in the attach processing rather than at write time.
On real hardware a 1403 cannot be used until the UCS buffer is loaded.
That's a function the operators used to perform with a stand-alone deck,
and that's done by JES these days. Perhaps if you use the printer under
JES, and then drain it, your direct write to the printer will work.

Gerhard Postpischil
Bradford, VT

---
This email has been checked for viruses by AVG.
http://www.avg.com
broweo@yahoo.com [hercules-390]
2018-04-29 22:33:55 UTC
Permalink
Ahh: that could be the kind of thing that's going on. I had picked on the 1403 thinking of it as a dumb printer. I'll try initializing it with jes or i'll try a different device type - i was originally planning on a card punch anyway.
kerravon86@yahoo.com.au [hercules-390]
2018-04-30 03:17:26 UTC
Permalink
Post by ***@yahoo.com [hercules-390]
DCB=(LRECL=10,BLKSIZE=4,RECFM=F)
For RECFM=F, your LRECL and BLKSIZE should
be the same.

BFN. Paul.
dwegscheid@sbcglobal.net [hercules-390]
2018-05-01 13:26:33 UTC
Permalink
"Bright idea"? horrible pun.

Kidding aside, that's a >>great<< idea....


---In hercules-***@yahoogroups.com, <***@...> wrote :

I had the (I thought) bright idea to attach a hercules device to a raspberry pi GPIO pin with
"attach 30f 1403 /sys/class/gpio/gpio18/value"
broweo@yahoo.com [hercules-390]
2018-05-02 11:27:45 UTC
Permalink
haha - not solved but pretty simple: The GPIO process addressed by attach /sys/class/gpio/gpio18/value is happy to respond if you send a "1" or "0" but if you send anything else, you get the invalid argument response and subsequent equipment check.


I haven't figured how to solve it yet but i think it's doable and, on the upside, the CCW trace function is pretty splendid. I wish i'd had these tools(or this degree of access) when i was a working system programmer.
Loading...