⚠️ Warning: This is a draft ⚠️

This means it might contain formatting issues, incorrect code, conceptual problems, or other severe issues.

If you want to help to improve and eventually enable this page, please fork RosettaGit's repository and open a merge request on GitHub.

==$BLOCK.REX== This Classic REXX program is used by the '''$T.REX''' program to generate character strings used to display (big) blocked letters such as:


     $$       BBBBBBBBBBB   LLLL           OOOOOOOOOO    CCCCCCCCCC   KKKK     KKK                RRRRRRRRRRR   EEEEEEEEEEEE  XXXX    XXXX
 $$$$$$$$$$   BBBBBBBBBBBB  LLLL          OOOOOOOOOOOO  CCCCCCCCCCCC  KKKK     KK                 RRRRRRRRRRRR  EEEEEEEEEEEE  XXXX    XXXX
$$$$$$$$$$$$   BB       BB   LL           OOO      OOO  CCC       CC   KK     KK                   RR       RR  EE        EE   XX      XX
$$   $$        BB       BB   LL           OO        OO  CC        CC   KK    KK                    RR       RR  EE              XX    XX
$$   $$        BB       BB   LL           OO        OO  CC             KK   KK                     RR       RR  EE   EE          XX  XX
$$$$$$$$$$$    BBBBBBBBBBB   LL           OO        OO  CC             KKKKKK                      RRRRRRRRRRR  EEEEEEE           XXXX
 $$$$$$$$$$$   BBBBBBBBBB    LL           OO        OO  CC             KKKKKK                      RRRRRRRRRR   EEEEEEE           XXXX
     $$   $$   BB       BB   LL     LLLL  OO        OO  CC             KK   KK                     RR   RR      EE   EE          XX  XX
     $$   $$   BB       BB   LL     LLLL  OO        OO  CC        CC   KK    KK                    RR    RR     EE              XX    XX
$$$$$$$$$$$$   BB       BB   LL      LL   OOO      OOO  CCC       CC   KK     KK                   RR     RR    EE        EE   XX      XX
 $$$$$$$$$$   BBBBBBBBBBBB   LLLLLLLLLL   OOOOOOOOOOOO  CCCCCCCCCCCC  KKKK     KK        ..       RRRR     RR   EEEEEEEEEEEE  XXXX    XXXX
     $$       BBBBBBBBBBB    LLLLLLLLLL    OOOOOOOOOO    CCCCCCCCCC   KKKK     KKK       ..       RRRR      RR  EEEEEEEEEEEE  XXXX    XXXX

/**/trace o;parse arg !;if !all(arg()) then exit;if !cms then address '';signal on halt;signal on novalue;signal on syntax
/*                      This REXX program was created by $BLOCK__ REX C:\$\ */
/*                      created: Tuesday 05/11/2010 22:04:45 */

_=space(!!)                      /*get 1st arg, preserve case.*/
                                 /*don't support ? for $BLOCK.*/
if _=='' then _=' '
if words(_)>1 then call er 59
c2bb='character-to-be-blocked'
if length(_)==2 then do
                     if \datatype(_,'X') then call er 40,_ c2bb
                     _=x2c(_)
                     end
if length(_)\==1 then call er 30,_ c2bb 1
?=0
_=c2x(_)

if _=='01' /* 01 */ then ?='7FEFFFC03D9BD9BC03C03CF3C63C03FFF7FE'
if _=='02' /* 02 */ then ?='7FEFFFFFFE67E67FFFFFFF0FF9FFFFFFF7FE'
if _=='03' /* 03 */ then ?='30C79EFFFFFFFFFFFF7FE7FE3FC1F80F006'
if _=='04' /* 04 */ then ?='0600F01F83FC7FEFFFFFF7FE3FC1F80F006'
if _=='05' /* 05 */ then ?='0F01F81F80F036C7FEFFFFFF7FE36C0600F'
if _=='06' /* 06 */ then ?='0600F01F83FC7FEFFFFFFFFF7FE36C0600F'
if _=='07' /* 07 */ then ?='0000000000F01F81F81F81F80F'
if _=='08' /* 08 */ then ?='FFFFFFFFFF0FE07E07E07E07F0FFFFFFFFFF'
if _=='09' /* 09 */ then ?='0003FC7FE70E60660660660670E7FE3FC'
if _=='0A' /* 0A */ then ?='FFFFFFE07CF3DFBDFBDFBDFBCF3E07FFFFFF'
if _=='0B' /* 0B */ then ?='03F01F00F01B1F93FC30C30C30C30C3FC1F8'
if _=='0C' /* 0C */ then ?='1F83FC30C30C30C3FC1F80600603FC3FC06'
if _=='0D' /* 0D */ then ?='7FF7FF6036037FF7FF600600600600E00C'
if _=='0E' /* 0E */ then ?='7FF7FF6036037FF7FF603603603607E06C'
if _=='0F' /* 0F */ then ?='8F1CF36F63FCFFFF9FF9FFFF3FC6F6CF38F1'
if _=='10' /* 10 */ then ?='C00F00FC0FF0FFCFFFFFFFFCFF0FC0F00C'
if _=='11' /* 11 */ then ?='00300F03F0FF3FFFFFFFF3FF0FF03F00F003'
if _=='12' /* 12 */ then ?='0600F01F83FC7FE0600607FE3FC1F80F006'
if _=='13' /* 13 */ then ?='30C79E79E79E79E79E30C30C00000030C30C'
if _=='14' /* 14 */ then ?='7FFFFFC33C33C33FF37F3033033033033033'
if _=='15' /* 15 */ then ?='0FC1FE1800F01F81981981F80F00187F83F'
if _=='16' /* 16 */ then ?=jr('1F81F81F81F81F81F8')
if _=='17' /* 17 */ then ?='0600F01F83FC7FE0607FE3FC1F80F0060FFF'
if _=='18' /* 18 */ then ?='0600F01F836C666C6306006006006006006'
if _=='19' /* 19 */ then ?='060060060060060060C6366636C1F80F006'
if _=='1A' /* 1A */ then ?='06003001800C006FFFFFF00600C01803006'
if _=='1B' /* 1B */ then ?='0600C0180300600FFFFFF6003001800C006'
if _=='1C' /* 1C */ then ?='0000000000001801801801F81F8'
if _=='1D' /* 1D */ then ?='00009019839C79EFFFFFF79E39C19809'
if _=='1E' /* 1E */ then ?='0600600F00F01F81F83FC3FC7FE7FEFFFFFF'
if _=='1F' /* 1F */ then ?='FFFFFF7FE7FE3FC3FC1F81F80F00F006006'
if _=='21' /*  ! */ then ?='0600F00F00F00F00F00F006006000006006'
if _=='22' /*  " */ then ?='198198'
if _=='23' /*  # */ then ?='198198198FFFFFF198198FFFFFF198198198'
if _=='24' /*  $ */ then ?='0607FEFFFC60C60FFE7FF063063FFF7FE06'
if _=='25' /*  % */ then ?='703F86D8CF987300600C018E31F61BC1F80E'
if _=='26' /*  & */ then ?='3F87FC60C6183301F03E0633C1BC0FFFE7FF'
if _=='27' /*  ' */ then ?='0600600C'
if _=='28' /*  ( */ then ?='0600C01803003006006003003001800C006'
if _=='29' /*  ) */ then ?='0C006003001801800C00C0180180300600C'
if _=='2A' /*  * */ then ?='C0360630C1980F0FFFFFF0F019830C606C03'
if _=='2B' /*  + */ then ?='0000000600600603FC3FC06006006'
if _=='2C' /*  , */ then ?=jr('600600C0')
if _=='2D' /*  - */ then ?='0000000000000003FC3FC'
if _=='2E' /*  . */ then ?=jr('60060')
if _=='2F' /*  / */ then ?='00300600C0180300600C0180300600C008'
if _=='30' /*  0 */ then ?='3FC7FE70E60660666666660660670E7FE3FC'
if _=='31' /*  1 */ then ?='0600E01E00600600600600600600601F81F8'
if _=='32' /*  2 */ then ?='3FC7FE6066060180300C03006006067FE7FE'
if _=='33' /*  3 */ then ?='3FC7FE60600600C03803800C0066067FE3FC'
if _=='34' /*  4 */ then ?='0380780D81983187FE7FE01801801803C03C'
if _=='35' /*  5 */ then ?='7FE7FE6006006007F07F800C0066067FE3FC'
if _=='36' /*  6 */ then ?='1FC3FE6066006006FC7FE7066066063FC1F8'
if _=='37' /*  7 */ then ?='7FE7FE60600600C01803006006006006006'
if _=='38' /*  8 */ then ?='1F83FC60660630C1F81F830C6066063FC1F8'
if _=='39' /*  9 */ then ?='1FC3FE60660660E3FE1F60060066063FC1F8'
if _=='3A' /*  : */ then ?=jr('60060000000000000060060000')
if _=='3B' /*  ; */ then ?=jr('600600000000000000600600C0')
if _=='3C' /*  < */ then ?='00300C0300C0300C00C003000C003000C003'
if _=='3D' /*  = */ then ?='0000000003FC3FC0000003FC3FC'
if _=='3E' /*  > */ then ?='C003000C003000C00300300C0300C0300C'
if _=='3F' /*  ? */ then ?='0F01F830C60600600C01803006006000006'
if _=='40' /*  @ */ then ?='7FEFFFC03CFBDFBD9BDFECFCC00C007FE3FE'
if _=='41' /*  A */ then ?='0600F019830C6066067FE7FE606606F0FF0F'
if _=='42' /*  B */ then ?='FFEFFF6036036037FF7FE603603603FFFFFE'
if _=='43' /*  C */ then ?='7FEFFFE03C03C00C00C00C00C03E03FFF7FE'
if _=='44' /*  D */ then ?='FFCFFE607603603603603603603607FFEFFC'
if _=='45' /*  E */ then ?='FFFFFFC03C00C60FE0FE0C60C00C03FFFFFF'
if _=='46' /*  F */ then ?='FFFFFFC03C00C60FE0FE0C60C00C00C00C'
if _=='47' /*  G */ then ?='7FEFFFE03C00C00C00C7FC7FC63E07FFF7FC'
if _=='48' /*  H */ then ?='F0FF0F6066066067FE7FE606606606F0FF0F'
if _=='49' /*  I */ then ?='1F81F80600600600600600600600601F81F8'
if _=='4A' /*  J */ then ?='0FF0FF018018018018C18C18C18E387F03E'
if _=='4B' /*  K */ then ?='F07F0660C6186307E07E063061860CF06F07'
if _=='4C' /*  L */ then ?='F00F0060060060060060060F60F6067FE7FE'
if _=='4D' /*  M */ then ?='E07E0770E79E7FE6F6666606606606F0FF0F'
if _=='4E' /*  N */ then ?='E0FE0F7067867C66E667663E61E60EF07F07'
if _=='4F' /*  O */ then ?='7FEFFFE07C03C03C03C03C03C03E07FFF7FE'
if _=='50' /*  P */ then ?='FFEFFF6036036037FF7FE600600600F00F'
if _=='51' /*  Q */ then ?='7FEFFFE07C03C03C03C33C33C33E1BFFF7FE'
if _=='52' /*  R */ then ?='FFEFFF6036036037FF7FE63061860CF06F03'
if _=='53' /*  S */ then ?='3FC7FE70660F6003F81FC00EF066067FE3FC'
if _=='54' /*  T */ then ?='FFFFFFC63C630600600600600600600F00F'
if _=='55' /*  U */ then ?='F0FF0F60660660660660660660670E7FE3FC'
if _=='56' /*  V */ then ?='F0FF0F60660660660630C30C1981980F006'
if _=='57' /*  W */ then ?='F0FF0F6066066066666F67FE79E70E606606'
if _=='58' /*  X */ then ?='F0FF0F60630C1980F00F019830C606F0FF0F'
if _=='59' /*  Y */ then ?='F0FF0F60630C1980F00600600600600F00F'
if _=='5A' /*  Z */ then ?='FFFFFFC0EC1C0380700E01C0383703FFFFFF'
if _=='5B' /*  [ */ then ?='0F00F00C00C00C00C00C00C00C00C00F00F'
if _=='5C' /*  \ */ then ?='C006003001800C006003001800C006003001'
if _=='5D' /*  ] */ then ?='1E01E00600600600600600600600601E01E'
if _=='5E' /*  ^ */ then ?='0600F019830C606C03801'
if _=='5F' /*  _ */ then ?=jr('7FE7FE')
if _=='60' /*  ` */ then ?='06006003'
if _=='61' /*  a */ then ?=jr('1FC1FE0063FE7FE6067FE3FF000')
if _=='62' /*  b */ then ?='6006006007FC7FE6066066066067FE7FC'
if _=='63' /*  c */ then ?=jr('3FC7FE6066006006067FE3FC000')
if _=='64' /*  d */ then ?='0060060063FE7FE6066066066067FE3FE'
if _=='65' /*  e */ then ?=jr('3FC7FE6067FE7FE6007FC3F8000')
if _=='66' /*  f */ then ?='0780FC0CC0C03F03F00C00C00C00C00C'
if _=='67' /*  g */ then ?=jr('3FE7FE6066067FE3FE0067FE3FC')
if _=='68' /*  h */ then ?='6006006006F87FC70E606606606606606'
if _=='69' /*  i */ then ?='0000600000F00600600600600600600F'
if _=='6A' /*  j */ then ?='00000C00000C00C00C00C00C30C30C1F80F'
if _=='6B' /*  k */ then ?='6006006186306606C07E073061860C606'
if _=='6C' /*  l */ then ?='0E00600600600600600600600600600F'
if _=='6D' /*  m */ then ?=jr('79C7FE666666666666666666000')
if _=='6E' /*  n */ then ?=jr('77C7FE70E606606606606606000')
if _=='6F' /*  o */ then ?=jr('3FC7FE6066066066067FE3FC000')
if _=='70' /*  p */ then ?=jr('7FC7FE6066067FE7FC600600600')
if _=='71' /*  q */ then ?=jr('3FE7FE6066067FE3FE006006006')
if _=='72' /*  r */ then ?=jr('6FC7FE706600600600600600000')
if _=='73' /*  s */ then ?=jr('3FC7FE6007FC3FE0067FE3FC000')
if _=='74' /*  t */ then ?='0C00C07F87F80C00C00C00C00CC0FC078'
if _=='75' /*  u */ then ?=jr('6066066066066066067FE3FB000')
if _=='76' /*  v */ then ?=jr('60660660660630C1980F0060000')
if _=='77' /*  w */ then ?=jr('C03C03C63CF3D9BF0FE07C03000')
if _=='78' /*  x */ then ?=jr('70E30C1980F00F019830C70E000')
if _=='79' /*  y */ then ?=jr('6066066066063FE1FE0067FE3FC')
if _=='7A' /*  z */ then ?=jr('7FE7FE00C0700E03007FE7FE000')
if _=='7B' /*  { */ then ?='0700F00C00C01803003001800C00C00F007'
if _=='7C' /*  | */ then ?='06006006006006000000006006006006006'
if _=='7D' /*  } */ then ?='1C01E00600600300180180300600601E01C'
if _=='7E' /*  ~ */ then ?='0000E03F7F3EE1C'
if _=='7F' /*   */ then ?='0600F019830C606C03C03C03C03C03FFFFFF'
if _=='9B' /*  ¢ */ then ?='0600603FC7FE6666606606667FE3FC06006'
if _=='9C' /*  £ */ then ?='0F81FC38E306300FC0FC0300300703DFF7FE'
if _=='9D' /*  ¥ */ then ?='F0FF0F60630C1980F07FE7FE0607FE7FE06'
if _=='9E' /*  ₧ */ then ?='FF0FF8C18C18FF8FF3CC6DE6CC3CC3CC3CC6'
if _=='9F' /*  ƒ */ then ?='03C07E0660601F81F80600600606607E03C'
if _=='A8' /*  ¿ */ then ?='0600000600600C018030060060630C1F80F'
if _=='A9' /*  ⌐ */ then ?=jr('3FC3FC300300300000000')
if _=='AA' /*  ¬ */ then ?=jr('3FC3FC00C00C00C000000')
if _=='AB' /*  ½ */ then ?='403C0640C41843046EED1182304608C1081F'
if _=='AC' /*  ¼ */ then ?='403C0640C418430462EC618A31263FC02802'
if _=='AD' /*  ¡ */ then ?='0600600000600600F00F00F00F00F00F006'
if _=='AE' /*  « */ then ?='0630C618C318630C60C6063031818C0C6063'
if _=='AF' /*  » */ then ?='C6063031818C0C60630630C618C318630C6'
if _=='B0' /*  ░ */ then ?='6DB9246DB9246DB9246DB9246DB9246DB924'
if _=='B1' /*  ▒ */ then ?='6DBDB66DBDB66DBDB66DBDB66DBDB66DBDB6'
if _=='B2' /*  ▓ */ then ?='EEE777EEE777EEE777EEE777EEE777EEE777'
if _=='B3' /*  │ */ then ?='06006006006006006006006006006006006'
if _=='C4' /*  ─ */ then ?='000000000000000FFFFFF'
if _=='DB' /*  █ */ then ?='FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF'
if _=='DC' /*  ▄ */ then ?=jr('FFFFFFFFFFFFFFFFFF')
if _=='DD' /*  ▌ */ then ?='FC0FC0FC0FC0FC0FC0FC0FC0FC0FC0FC0FC'
if _=='DE' /*  ▐ */ then ?='03F03F03F03F03F03F03F03F03F03F03F03F'
if _=='DF' /*  ▀ */ then ?='FFFFFFFFFFFFFFFFFF'
if _=='E0' /*  α */ then ?=jr('3F37FFC1EC0CC0CC1C7FE3F3000')
if _=='E1' /*  ß */ then ?='3FC7FE6066067FE7FC6066067FE7FC6006'
if _=='E2' /*  Γ */ then ?='FFFFFFC03C03C00C00C00C00C00C00C00C'
if _=='E3' /*  π */ then ?='FFFFFF30C30C30C30C30C30C30C30C30E30E'
if _=='E4' /*  Σ */ then ?='FFF7FF3031800C00600600C01803037FFFFF'
if _=='E5' /*  σ */ then ?=jr('3FF7FF6066066067FE3FC000')
if _=='E6' /*  µ */ then ?=jr('60660660660660660670E7FC600C00')
if _=='E7' /*  τ */ then ?='773FFFC6E06006006006006006006006006'
if _=='E8' /*  Φ */ then ?='0607FEFFFC63C63C63C63C63C63FFF7FE06'
if _=='E9' /*  Θ */ then ?='0001F87FEC03C03DFBDFBC03C037FE1F8'
if _=='EA' /*  Ω */ then ?='1F87FEC03C03C03C03C0360630C198F9FF9F'
if _=='EA' /*  Ω */ then ?='1F87FEC03C03C03C03C0360630C198F9FF9F'
if _=='EB' /*  δ */ then ?='3FC7003800E00387FEFFFC03C03C03FFF7FE'
if _=='EC' /*  ∞ */ then ?='00000000039C6F6C63C636F639C'
if _=='ED' /*  φ */ then ?='0000000603FC7FE6666667FE3FC06'
if _=='EE' /*  ε */ then ?='0000000F03FC6007E07E06003FC1F8'
if _=='EF' /*  ∩ */ then ?='0000F01F830C606606606606606606'
if _=='F0' /*  ≡ */ then ?='0000003FC3FC0003FC3FC0003FC3FC'
if _=='F1' /*  ± */ then ?='0600600603FC3FC0600600600003FC3FC'
if _=='F2' /*  ≥ */ then ?='7001C007001C00701C0701C07000007FF7FF'
if _=='F3' /*  ≤ */ then ?='00E0380E0380E003800E003800E000FFEFFE'
if _=='F6' /*  ÷ */ then ?='000000060060000FFFFFF00006006'
if _=='F7' /*  ≈ */ then ?='0000E03F7F3EE1C0000E03F7F3EE1C'
if _=='F8' /*  ° */ then ?='0F01F81981981F80F'
if _=='F9' /*  ∙ */ then ?='0000000000F01F81F81F81F80F'
if _=='FB' /*  √ */ then ?='03F03F030030030030E30F301B00F007003'
if _=='FC' /*  ⁿ */ then ?='77C7FE70E606606606606'
if _=='FD' /*  ² */ then ?='3FC7FE70E0380C03007FE7FE'
if _=='FE' /*  ■ */ then ?='0000000001F81F81F81F81F81F8'
return left(?,36,0)


/*═════════════════════════════general 1-line subs══════════════════════*/
!all:!!=!;!=space(!);upper !;call !fid;!nt=right(!var('OS'),2)=='NT';!cls=word('CLS VMFCLEAR CLRSCREEN',1+!cms+!tso*2);if arg(1)\==1 then return 0;if wordpos(!,'? ?SAMPLES ?AUTHOR ?FLOW')==0 then return 0;!call=']$H';call '$H' !fn !;!call=;return 1
!cal:if symbol('!CALL')\=="VAR" then !call=;return !call
!env:!env='ENVIRONMENT';if !sys=='MSDOS'|!brexx|!r4|!roo then !env='SYSTEM';if !os2 then !env='OS2'!env;!ebcdic=1=='f0'x;if !crx then !env='DOS';return
!fid:parse upper source !sys !fun !fid . 1 . . !fn !ft !fm .;call !sys;if !dos then do;_=lastpos('\',!fn);!fm=left(!fn,_);!fn=substr(!fn,_+1);parse var !fn !fn '.' !ft;end;return word(0 !fn !ft !fm,1+('0'arg(1)))
!rex:parse upper version !ver !vernum !verdate .;!brexx='BY'==!vernum;!kexx='KEXX'==!ver;!pcrexx='REXX/PERSONAL'==!ver|'REXX/PC'==!ver;!r4='REXX-R4'==!ver;!regina='REXX-REGINA'==left(!ver,11);!roo='REXX-ROO'==!ver;call !env;return
!sys:!cms=!sys=='CMS';!os2=!sys=='OS2';!tso=!sys=='TSO'|!sys=='MVS';!vse=!sys=='VSE';!dos=pos('DOS',!sys)\==0|pos('WIN',!sys)\==0|!sys=='CMD';!crx=left(!sys,6)=='DOSCRX';call !rex;return
!var:call !fid;if !kexx then return space(dosenv(arg(1)));return space(value(arg(1),,!env))
er:parse arg _1,_2;call '$ERR' "14"p(_1) p(word(_1,2) !fid(1)) _2;if _1<0 then return _1;exit result
p:return word(arg(1),1)
halt:call er .1
jr:return right(arg(1),36,0)
novalue:!sigl=sigl;call er 17,!fid(2) !fid(3) !sigl condition('D') sourceline(!sigl)
syntax:!sigl=sigl;call er 13,!fid(2) !fid(3) !sigl !cal() condition('D') sourceline(!sigl)
/* ♦♦♦ end-of-program. ♦♦♦ */

The '''$BLOCK__.REX''' Classic REXX program is included here ──► [["$BLOCK--.REX"]].

The Classic REXX program '''$BLOCK__.REX''' is used to generate the ''' $BLOCK.REX''' program.

[[Category:REXX library routines]]