From: <hp...@we...> - 2022-06-29 22:59:18
|
Hello René! Am 29.06.2022 um 18:37 schrieb René Jansen: > I mostly compile the stages with ’trace results’ and see what flows. In the new 4.04 you can even use Marc’s ’trace interactive’. Thank you for this hint. Sorry, I did not test it yet. Nonetheless I achieved at last the first binary output of my converter. I'll publish it when all works as desired (have to remove also all holdover from OS/2 Pipelines). There are several severe errors in Specs stage, also in few others. As long as your "Pipelines Guide and Reference" shows in chapter 8 'For a complete description we refer to the IBM Pipelines documentation' I will regard all disparities as errors. Even without reference to the role model, some bugs just thwart the use of NetRexx Pipelines. For example, I was not able to write a binary file. What I found today: i) reverse fails and/or specs fails I'd expect same results from either > ... !spec pad 0 w1 d2x 1.4 r!spec 3.2 1 1.2 n and > ... !spec pad 00 w1 d2c 1.2 r!reverse!spec pad 0 *-* c2x 1.4 r with input 0..1023 === ii) specs fails > .. literal 0010001110000000000000010000000000000110!spec w1 b2c 1!spec pad 0 *-* c2x 1.10 r returns: 0002380106 === iii) specs fails > Address '' ripe '"(MkR_x sep !) literal 410042!', > 'spec w1 x2c 1!reverse!spec *-* c2x 1!term' returns: 42041 expected: 420041 === iv) probably a problem of ooRexx: > Address ... with output use (f) with "..." a nice NetRexx pipeline circumvents filing binary files. '0A'x is interpretet as linened, '80'x and above is changed to "?" === Therefore I had to do some annoying post-processing in Rexx: Without Vchar stage I'm forced to do it binary... > jfg = 'spec pad 0 w1 d2x 13.4 r read w1 d2x 9.4 r read w1 d2x 5.4 r read w1 d2x 1.4 r', > '!spec *-* x2b 1!fblock 16!spec 7.10 1!join 3!spec pad 0 w1 b2x 1.10 r' > f = .stream~new(modid || '.ROM') > if f~open("W REP BI REC 5120") \== "READY:" then exit, > RxMessageBox('Could not open file for writing ROM list,', > 'procedure ends.', , 'OK', 'STOP') > Address '' ripe '"(MkR_8 sep !) cons!' jfg '!term', > with input stem rom. output stem bin. > do i = 1 to bin.0; f~CharOut(reverse(x2c(bin.i))); end (Stem rom. contains 4096 decimal values in the range 0..1023) I find it pretty disgraceful writing data prepared with a pipeline using a loop in Rexx. Best, M. |