[Date Prev][Date Next][Subject Prev][Subject Next][ Date Index][ Subject Index]

Re: New XYENC 1/13/09 release



Reply to note from wbass@xxxxxxxx Thu, 22 Jan 2009 16:24:51 -
0700 (MST)

Here's the full suite of XYENCode|DECode helper frames for U2, with
documentation. Substantially revised and expanded; discard all
earlier versions and use these.

Of course, these routines may have to be revised further if Wally
releases a new version of his programs with a different command-line
syntax. If he does, I will. In the meantime, these work well with
the current release (v0.94). (They're not affected by the bug that
Harry discovered the other day.)

'%--_XYENCode_start--
~~~~'^'^For_XYWWWEB.INF'.'^'^{xyenc,xyde
c,xyrun,xyfmt,xytog,ifei2}'^{xyencl,xyench,xyenclh}'^{xyenc5
0,xydec50,xyrun50}'^'^XYENCode_Helper_Frames_for_XyWrite_IV_
--_C.L.Distefano_rev._1/23/09'^Encode,_Decode,_Format_and_Ex
ecute_XPL_using_Wally_Bass'`s_Amazing_XYENCode_and_XYDECode_
Programs'^'^Wally_Bass'`s_XYENCode_utility_(XYENC.COM)_trans
lates_XPL_programs_into_pure_Ascii,_for_viewing_in_any_text_
editor_or_for_transmission_by_e-mail._Its_companion,_XYDECod
e_(XYDEC.COM),_returns_an_encoded_program_to_the_original_XP
L._White_space_and_XyWrite_formatting_can_be_added_to_XYENCo
ded_programs_to_create_a_structured_listing_that_makes_XPL_e
asier_to_read_and_debug_--_all_without_affecting_decoding._B
ecause_they'`re_blazingly_fast,_these_assembly_language_util
ities_can_be_tightly_integrated_with_XyWrite'`s_command_line
_(CMline),_as_exemplified_by_the_routines_described_below.'^
'^~Required_External_Programs~'^Download_Wally
_Bass'`s_XYENCode_and_XYDECode_package_here'.'^~I~~'JM2.ViewURL'Q2~>h
ttp'.//basspad.com/xywrite/~'^As_of_this_writing,_the
_current_version_was_v0.94_(xyenc094.zip)',_download_the_lat
est_available_version.'^Situate_XYENC.COM_and_XYDEC.COM_in_t
he_directory_that_contains_~'^~'^~CMline_Usage~_(all_commands_launched_with_
)'^---------------------------------------------------'^XYEN
C______XYENCode_current_file_or_DeFined_block'^XYENC/_____Sa
me_as_XYENC,_except_omit_'`'/--'-XYENCode'-start_and____'`'/
--'-XYENCode'-end_delimiters'^XYENCL__)__Same_as_XYENC,_exce
pt_bypass_encoding_of_low-,_high-,'^XYENCH__>___or_both_low-
_and_high-order_Ascii_characters'^XYENCLH_)___(XYENCL.COM,_X
YENCH.COM,_XYENCLH.COM_required)'^XYDEC______XYDECode_curren
t_file,_DeFined_block_or_code_bounded_by_'`'/--'-XYENCode'-s
tart_and_'`'/--'-XYENCode'-end_delimiters'^XYFMT____2-Way_To
ggle_XPL|Formatted_XYENCode_(entire_file_only)'^XYTOG____3-W
ay_Toggle_XPL|Raw_XYENCode|Formatted_XYENCode_(entire_file_o
nly)'^XYRUN____Run_(execute)_XYENCoded_file_or_DeFined_block
'^IFEI2____Test_XPL_code_for_balanced_IF_and_EndIf_statement
s,_with_option_to_display_structured_XYENCoded_listing_(enti
re_file_only)'^~'^~XPL_Usage~'^---------'^
XYENCode_or_XYDECode_string_contents_of_Save/Get_50'^'≪SV50
,'BC'≫'JM2.xyenc50'Q2',*',_S/G_50_has_"'`BC"'^'≪SV50,'`BC'≫
'JM2.xydec50'Q2',*',_S/G_50_has_"'BC"'^'^RUN_XYENCoded_XPL_i
n_Save/Get_50'.'^'≪SV50,'`BCHello,'-World'≫'JM2.xyrun50'Q2
',*',_Decodes_"'`BCHello,'-World"_to_"'BCHello,_World",_then
_executes_it'^'^Additionally,_the_CMline_routines_above_can_
be_called_as_a_child_process_within_an_XPL_program._For_exam
ple'.'^'YD'DL'JM2.xyenc/'Q2',*',_XYENCode_line_under_cursor'^
'^~'^For_use_by_RENUMBER.PM'.'^Renumber_all_XYENCode_he
lper_frames_in_PACK_mode,'^with_OPTIONs_listed_below'.'^'^XY
ENC*,XYDEC'^Default_S/G_range_=_01-06',_50'^FREEZE_50'^'^XYF
MT'^Default_S/G_range_=_01-08',_49-50'^FREEZE_49-50'^'^XYTOG
'^No_S/Gs_used'^'^XYRUN'^Default_S/G_range_=_01-04',_50'^FRE
EZE_50'^'^XYENC50,XYDEC50,XYRUN50'^Default_S/G_range_=_01-04
',_50'^FREEZE_50'^LEFT$(1)'.__'/'^'^IFEI2'^Default_S/G_range
_=_01-05',_50',_96'^FREEZE_50_96'^LEFT$_(1)'.__RK'.'^~
'^-~I-~I-~I-~I-~I-~I-~I-~I-~I-'^~'^'^For_XYWWWEB.U2'.'^
'^{{5xyenc50,xydec50,xyrun50}}_Encode|Decode|RUN_XYENCoded_X
PL_contained_in_S/G_50_[CLD_1/18/09]'^~B~~>~)~>~~>'JM2.GetPath'Q2~+"\"~>~+~+".IN"~>'BXsa_'/01,~<
PV03~>'Q2'BXwt'Q2~+~+".OUT"~>'BXernv_~<
PV01~>'Q2'BXwt'Q2~~~="EN"~>~
~'BXdos/nv/x/z_/c_~XY~.COM_._~<~

'Q2~~'BXexist_~'Q2~)~>~~'BXp'Q2~'BXernv_~'Q2'BXwt'Q2 ~<0~>~~>'JM2.SV50'Q2'BXernv_~< PV01~>'Q2'BXwt'Q2~~="ENC"~>~+"~N("~> ~~~~~'FF'BX run_~'Q2~B'^'^{{5xyenc*,xydec}}_XYENCode|XYDECode_(DF _block_or_entire_file)_[CLD_rev.1/21/09]'^~B~==1 ~>'BXes_1'Q2'DX~~)~>~~~="/"~>~~~>~~< SV03,'`'/--'-XYENCode'-~>'DZ~<1~>'YD~~~~="DEC"~>'XP'LB'BXse__~star t--'Q2~)~>'LB~~ '-'-end--'Q2~>~~~'DF~'DF~~~>'JM2.GetPath'Q2~+"\"+~+"."~> 'DE'BXsad/nv_~in'Q2~~>~~~'BXwt'Q2'DN'BXernv_~out'Q2'BXwt'Q2'BX dos/nv/x/z_/c_~com_._~out<~in'Q2'BXwt'Q2 ~~'BXexist_~out'Q2~)~> ~~'BXp'Q2~'GT'DO'FF'DX~~="ENC"&~< VA|02~><1~>~+"start--'^'^"+~+"'-'-end-- '^"~>~~'LU'LU~~~>'BXme_~out'Q2'BXwt'Q2'BXernv_~out'Q2'BXwt'Q2~)~="ENC"~>~~<>8~>'TG~~~~>'BXseba__'?Z'Q2~) &~==~-2~>'RC'RC~~~~~>'JM2.ReJuMP'Q2'DO'FF~~~~~B '^'^{{5xyrun}}_Run_XYENCoded_XPL_(file_or_DF_block)_[CLD_1/1 1/09]'^~B'BXes_1'Q2'DX'DZ~<0~>~~~~>~~>'JM2.GetPath'Q2~+"\"~>~+"XYRUN.IN"~>~+"XYRUN.P M"~>~<1~>~<1~>~~>~~~~>~~<0&"\"~{~<0~>~~> ~~+"\"~>~~+ ~~>~~~="_"~>~~~~>~~~~<>1~>~< PRNo_file~>~~'DE'BXsad/nv_~'Q2'BXwait'Q2~'BXernv_~'Q2'BXwait'Q2'BXdos/nv/x/z_/c_~xy dec.com_~_~'Q2'BXwait'Q2~~'BX exist_~'Q2~)~>~~'BXp'Q2~~==(~+"XYRUN.IN")~>'BXernv_~'Q2'BX wait'Q2~'DO'FF'BXrun_~_~'Q2~B'^'^{{5xytog }}_XYENCode_3-way_toggle'._XPL|Raw'-ENCode|Formatted'-ENCode _[CLD_rev.1/23/09]'^~B~==1~>'TF'BXch/1__'?<_'?<'Q2 ~)~>'BXch/1__;~<_;~<'Q2~~>~'JM2 .xyfmt'Q2~~~'BXch/1__;~'`_;~'` 'Q2~)~>'BX{ch/1__'BX_'BX}'Q2~~>~ ~~'JM2.xyenc/'Q2~~~~B'^'^{{5 xyfmt}}_Toggle_XPL|formatted_XYENCode_[CLD_rev.1/23/09]'^~B~< IF~==1~>'BXes_1'Q2'DX'XP'TF~',*','^',*',_To ggle_code'^~~~ ~+"AE"~>',*','^'BXch/1__;~'`_;~ '`'Q2~)~>',*','^'BX{ch/1__'BX_'BX}'Q2~ ~>~'JM2.xydec'Q2~~~',*','^'BXch/1__~_~'Q2~)~>',*','^'BX{ch/1__'BX_'BX}'Q2 ~~>~~~',*','^'BX{ch/1__'BX_'BX}'Q2~< IF@not(~)~>~'JM2.xyenc/'Q2~~',*','^'BX ch/1__'BC_'BC'Q2~)~>~~',*','^'BXch/ 1__;~<_;~<'Q2~)~>',*','^'BXch/1__;~'`_ ;~'`'Q2~~>~~~',*','^',*','^ ~'DX~~~~~~~~~ ~~~~~~~~'^~>~'TF',*','^'BXci__;~['Q2 'BXwt'Q2',*','^'BXci_~252'?'BXci_~252;~[;~['?)~>'BXwt'Q2~~',*','^'BXci_~252'?~252; ~['?~252'Q2'BXwt'Q2',*','^~'BXci_~252;~[;~['?~252;~['?~252'Q2~)~>'BXwt'Q2~~< EI~>',*','^'BXci_~252'?~252'?;~[~252'Q2'BXwt'Q2', *','^'BXci_~252'?;~[;~[~252'?;~[~252'Q2'BXwt'Q2', *','^~'BXci__;~[;~[;~)~> 'BXwt'Q2~~',*','^'BXcia_~252;NDI;~>;~[~252;NDI;~> ~252'Q2',*','^'BXci_~252'`;A;X~252;~'`;A;X_;~ ~252'Q2'BXwt'Q2',*','^'BXci_~252'?~252;~'?;~~252'Q2'BXwt'Q2',*','^'BXci_~252'?~252 ;~'?;~~252'Q2'BXwt'Q2',*','^'BXci_~252 '?~252;~'?;~~252'Q2'BXwt'Q2', *','^'BXci_~252'?~252;~'?;~~252'Q2 'BXwt'Q2',*','^'BXci_~252'?~252;~'?;~< MDNM;~>~252'Q2'BXwt'Q2',*','^'BXci_~252;~['?>;~~252'? >;~;~[~252'Q2'BXwt'Q2',*','^'BXcia__'`^_'`^;~['Q2'BX wt'Q2',*','^~'BXcia__'`^;~[;~[_'`^;~['Q2~ )~>'BXwt'Q2~~',*','^'BXci_~252'?'BXci_~252;~[;~['?)~>~~'BXwt'Q2',*','^'BX ci_~252;~'?'?'?'?;~~252'?;~;~[~252'Q2'BXwt'Q2',*','^'BXci__;~[,_,'Q2'BXwt'Q2 ',*','^'BXci_~252;~'`BX~252;~[;~'`BX~252'Q2'BX wt'Q2',*','^'BXci_~252;~[;~[;~'`BX~252;~[;~'` BX~252'Q2'BXwt'Q2',*','^'BXci_~252'`Q2_;~~252'`Q2_;~< MDNM;~>;~[~252'Q2'BXwt'Q2',*','^'BXci_~252'`Q2_;~;~[ ;~[~252'`Q2_;~;~[~252'Q2'BXwt'Q2',*','^'BXci_~252;~< MDNM;~>;~[;~[~252;~;~[~252'Q2'BXwt'Q2',*','^'BXci_~252 '`Q2_;~;~['`,*'`,'`^;~[~252'`Q2_;~'`,*'`,'`^ ;~[~252'Q2'BXwt'Q2',*','^',*','BXci_~252'?B;~[~252'?B~252'Q2 'BXwt'Q2',*','^',*','BX~252','?<~252;~','?<;~ ~252'Q2'BXwt'Q2',*','^',*','BX~252','?>~252;~','?>;~< MDNM;~>~252'Q2'BXwt'Q2',*','^~~',* ','^~~~~~~>',*','^'BXcha_)~)'Q2'BXwt'Q2~~',*','^'TF~~3DI,~3DI'Q2 'CR~>~~~',*','^~~ >1&~<1~>~~~'BXse_ _'?'Q2~)~>'DF'CL'DF~ 'YD'CR',*','^~)=="F"~>~+1~>~+1~>~~~',*','^~- 1~>~-1~>~<0~>~~>~<====_****EXTRA_"+~+"EndIf:~>_HERE'|*** *~~>~~~+1~>~ <1~>~~~>~~',*','^'BX seb__'?<'Q2~~'BXse__'?>'Q2~~',*', '^'TF'BXcia__'?<_~'Q2'BXwt'Q2'BXcia__'?>_:~>'Q2'BXwt'Q2 ',*','^'BXcia__',~_','?<'Q2'BXwt'Q2'BXcia__',:~>_','? >'Q2'BXwt'Q2',*','^'WG~<9~>'MK~'JM2.ReJuMP'Q2 'DO'FF~~~~~< IF~~<5~>~~~ >0~>~+"_&_"~>~~+~~>~< LBk~>~+~~>~~~~~< EI~>~~B'^'^{{5ifei2}}_Check_for_balanced_IF|HF.. .EI_pairs_in_XPL_code_[CLD_1/23/09]'^~B~==1~>'BX es_1'Q2'YD'XD'YD'XP'TF'DX~~~ ~~~~~<1~>~~~~'BXse__;~'Q2~)~>'DF'CL'DF~'YD'CR~)=="F"~>~+1~>~+1~>~~~-1~>~-1~>~<0 ~>~~+1~>~<1~>~~< SX50,~~>~~~~'TF~~+~~~ ~+"IF"~>~~~~=" IF"~>~+"_&_Extra_"~>~~+"EI" ~>~~~+~+"'._View_structured_l ist?_(y|N)"~>'DO'FF'JM2.ReJuMP'Q2'JM2.RK'.01'Q2~)=="Y"~>'BCXYDEC_decodes_to_original'GT'JM2.xyenc/'Q2'JM 2.xyfmt'Q2~~~~~~~B'^ '^{{5SV50}}_SaVe_file_contents_to_S/G_50_(S/G_50_in_&_out'._ d'.\path\filename_in',_file_contents_out)_[CLD_1/18/09]'^~B~< IF~'BXexist_~'Q2~)~>~<0~>~~>'JM2.UsurpB'Q2~<0~>~+",~>~~+ "~>~>"~>~'BXldpm_~,~'Q2'BXwt'Q2~+"~>+""""~>~<0~>'BXremove_"+ ~+"'Q2~~+",~~>"~>~~~>~~~+",50"~>'JM2.ldnb'Q2 ~~~~~B'^'^ '%--_XYENCode___end-- -- Carl Distefano cld@xxxxxxxx