;-*-Midas-*- TITLE BITPRT - Print JCL (or $Q) as x.y bits A=1 B=2 C=3 D=4 E=5 T1=6 T2=7 TTYo==1 JClen==10 Define SYSCAL op,args .Call [Setz ? Sixbit /op/ ? Args ((Setz))] Termin Jclbuf: Block Jclen -1 Comma: 0 LH: 0 ;;; ;;; Ahem ;;; Begin: Syscal OPEN,[%Clbit,,.uao %Climm,,TTYo [Sixbit /TTY/]] .Lose %LsFil .Break 12,[..rJCL,,Jclbuf] Skipn Jclbuf Jrst GetQ Move B,[440700,,Jclbuf] gchar: Ildb C,B Caie C,^C Cain C,^M Jrst Output Caie C,", Jrst NotC Skipe Comma Jrst gchar Movem A,LH Setz A, Setom Comma Jrst gchar NotC: Cail C,"0 Caile C,"7 Jrst gchar Subi C,"0 Lsh A,3 Add A,C Jrst gchar GetQ: .Suset [.rOption,,A] Tlnn A,10000 Jrst Die ;Not called from DDT .Value [Asciz "1/1QîP"] Output: Skipe Comma Hrl A,LH Movei B,4 Move C,[Setz] ;Bit 4.9 iLoop: Movei D,9. Move E,B Addi E,60 Loop: Tdnn A,C Jrst Next .Iot TTYo,E .Iot TTYo,[".] Move T2,D Addi T2,60 .Iot TTYo,T2 .Iot TTYo,[" ] Next: Lsh C,-1 Sojn D,Loop Sojn B,iLoop Die: .Break 16,44000 END BEGIN