From: alou@elde1.epfl.ch
Newsgroups: comp.sys.hp48
Subject: X&Y Modem v2.2 for Hp48
Date: 5 Oct 92 02:42:18 GMT
Organization: Ecole Polytechnique Federale de Lausanne

________________________________________________________________

                    X&Y Modem v2.2 for HP48
________________________________________________________________
CHANGE FROM v2.0 :
-The bug in ERRSET/ERRTRAP has been fixed.
-The XLIB name have changed ! sorry.

CHANGE FROM v2.1 :
-The bug concerning the IOPAR has been fixed.
-The program check the battery before beginning the communication. 


SETUPXYM : 
  CRC  : toggle flag 57. If flag is true then CRC else CHK.
         Used only with XModem in reception (CRC is automaticaly
         choosen with YModem)
  REPL : toggle flag -36 (see manual)
  EXIT : do a lastmenu

SENDM :
  Send with X or Ymodem depending on the first stack object :

  1: global_name/local_name  -> 1: list       use Ymodem
     Equivalent to SEND Kermit command
     example: 'ABC'

  1: :IO:name                -> 1: list       use Ymodem
     Equivalent to ARCHIVE
     example: :IO:Sep3

  1: :port#:name             -> 1: list       use Ymodem
     send a library or a Backup object
     example: i/  :0:1275    
              ii/ :&:ABC

  1: list                    -> 1: list       use Ymodem
     send one or more objects listed above
     example: { :IO:Sep3 :0:1275 :0:1092 FFT }

  1: any                     ->               use Xmodem
     if the object isn't of a type listed above, it will be send with
     XModem protocol(see remark below).

  The output list contains the unsends objects(files not found in the
  current path).

RECX :
  Receive with XModem protocol. Flag 57 specify CRC or CHK.
  This command is usefull to receive a library on stack.
                             -> 1: object

RECY :
  Receive one or more files with YModem protocol. This command is
  equivalent to the RECV command of Kermit.
                             -> 


REMARK :
i/
Sending an object from the HP48 to a PC with Xmodem protocol (not Ymodem protocol) is not a good idea : this object cannot be received from HP48 with the standard RECV Kermit command. Why ?
- because Xmodem don't send the file header which contains the size in bytes of the object. This information is used by RECV Kermit command to check if the file has been corrupted.
So a file sended with Xmodem can be received only with Xmodem and Ymodem.

In conclusion:
- a file send with Ymodem is safe : you can receive it later with Kermit, Xmodem and Ymodem protocol.
- a file send with Xmodem is not safe : you can receive it with only Xmodem and Ymodem protocol.

ii/
X&Ymodem automatically select the serial port for the communication and transferts are made in binary mode. So the flags -33 and -35 have no effects. You can choose the speed (9600, 4800, 2400, 1200) in the SETUP submenu of the IO menu.

iii/
You must set the size of a bloc to 128 bytes (short bloc) in the configuration of your comunication program in your PC.


KNOWN BUG :
None.


CREDITS:
  Hewlett-Packard for their Tools.
  Alonzo Gariepy for his Saturn Processor Notes.
  Jan Brittenson for his Star and his MLDL library.
  Detlef Mueller, Raymond Hellstern and Rick Grevelle for their
    Library constructor.
  Chuck Forsberg for his notes on the protocols XModem and YModem.
  And to all people who gave us a lot information about Hp28, 48 on
    mail, news and FTP-server.

Maurice Alou & Edouard Westphal

alou@elde.epfl.ch
westphal@elde.epfl.ch
   
********************************************************************
**** Do a backup with the standard ARCHIVE before using the library!
********************************************************************

Library name : X-Y Modem v2.2
Library ID   : 1275
Size         : 3550
Chk          : # 65E9h

0
 \ /
--X-------------------------------------------------------------------
 / \
O
%%HP: T(1)A(R)F(.);
"04B207BB10E085D29502D4F64656D6026723E223E0BF40CA10F000002A107C00
08E920DB000C2A2010000500005200054F44502E4F647025487075636475646D
100035F484025487075636475646320003224C6F636B6025487075636475646F
1000C4F6374702F666023597E636E2520002416460224C6F636B602E457D6265
627D9D2011920BF40090770B2130E1B20FD20042000F4000F970F8FF0E300E10
0000F970F8FF0E3002100000194098C8022006100000194098C90230041000E1
19409849021004108B33194098490210041FDE121960BD691310079172C23D20
2521119780D4E8E22720252115DCC45EAEA2263025311578775FAAA666106511
B5317553AAE446104715A493B5589AC642104215A6D6B45FFEE1CA104A15A654
B45F6C308800C80DE654B6767700880C980D4654B3F8D000898F980D475635AF
000089939C0D45D2743100008190950D55997F10000080901505153CC3000000
C29C1505972E80000000429F150D92E30000000046B30589B2F1000000004720
0588AE300000000045200D88EE00000000006560898C40000000000025E0888F
0000000000002D808883000000000000A9808C00000000000000B8808F000000
000000009880830000000000000098C0000000000000000098F0000000000000
0000D8300000000000000000F000000000000000000030000000000000000000
CCD20180008FB97601371340616414613416E16F142D23112EA1003171DA8F18
9500713406169146134D61108F3895007134146134169D2306DE8F3895015838
D34150CCD20B50008FB97601BB11001421301A2950142130164D015A2D6F0EAE
AEA184136C213414713517915F715C78D34150CCD20570008FB97601BB110014
21301A2950142130164D015A2D6F0EAEAEA184136C213415A73769A20FF715C7
1361741451C414713517915978D34150D9D20FEF305D550F3040C1C1629E20BF
481047A20D6E2020E2F6B21300D47032230E5E40D9D2067B4629E20BF4010497
031192026B20CC950A81502C2302095093140CBD30CC950A8150C2A207100070
84F4D45444942570A8150E4A20F0000119200000044B7329E20BF4A1029E20BF
4410B21308BE40D9D20D6E2020E2F629E20BF49101DE40B2130D6E2020E2F629
E20BF49104423079470B2130CCD20350008F146608FB9760174147C21341C414
3131174143818F84174CC43115E015D01601705CE8D34150D9D20CCD20122008
F146601028FD5F301098FB9760147C2135AC31B3E60714A8086050B47111CC41
71013110740111A7DF0FE77F031F7AE513313110014F1717DD0A6D52F11AE610
A7ED01370677500713555A11813511ACE10A119E61096C8FD210981AF1A10807
8AEBF1FCD40715D08F2D7608F925608D94150764034000078F982135617130CE
5FE3420C0067AF31609664003318196240023430A00668F1B9760714A908008F
E8D003430A00656F8FAC01348F196114C0131F7D5118134D294F7114AA62161A
6D53F77CF0114A7520161A6D52FD076107210D5F6F671AFD97B9F0128840808A
F50850C6A6457080890860E3808A0A08088057080890808A5A08088557080895
808ACA08088C5708089C0C52A01DBC36A3836B2130D9D2023E46EF116616500E
D30C12162095047A2003D4303D43B21300D470592305D5507E3166B316AB426C
1C16FEF3029E20BF4610BCE26A8150881306165023E46D2C26D9D20350404CA3
629E20BF4510852307E3166B316C773623E467FE3032230E90163004029E20BF
4510322305D550C1216C1C166B3168DF060ED3029E20BF4610B9F0659230A815
0B2130D9D20B4826A815076E26B2130350402C2306165082E46CBD3023E467FE
30B9F06BBF0629E20BF451085230794702A170C2A20700004044413A2170A383
69FF305E413A2170A383688130C2A207000081EFC36D9D2010343A3836B2130C
2A20700006079B308C170B2130D9D207CE5088130D72124AC36D9D204A7E27F8
16AF250B9F0629E20BF4710B21308813047A20C435685356463562B156B2130F
E34601916D9D204A7E27F816AF250B9F06F2A26DA916AF25032230F804029E20
BF401049703FD55029E20BF4410B21308813030A50A3B460ED30B4826530262C
230E612657B3001916AF25096126CB916AEC8174726300401BE36D9D20535268
139088130B3A16649268139088130B3A16442303004081390B2130813908E816
AF250B48267CE5063556B5250FB92042EE25032230961268DA16880419EB5039
15051B50F804029E20BF401049703FD55029E20BF4410B2130D9D2029E20BF4B
00E5E40D9D20F6A3639916D9D2029E20BF4F0029E20BF4E00B2130FA4509E550
322303C370322301945343370FA4509E550322303C3707472662226A2170D9D2
0CF25618E50B213029E20BF43104337029E20BF4E00B21308BE4029E20BF4D00
29E20BF4C00B2130D9D20DEE3229E20BF4210B2130D9D2029E20BF4F00322309
EB50E1456EE250EF1162095081736FED30E8E30FBD818B261391500BB26FD550
23E46C1C1639150350409FF30FEF3029E20BF4510852309FF305E413A2170A38
36EA8D379B30B3A1685056A3836B2130D9D2049B469FF305E413A2170A3836EA
8D3EFC365273555735B2130D9D2029E20BF4F00FD55023E46C1C16350409FF30
FEF3029E20BF451085230B2130D9D20C2A2090000818144413A21704423029E2
0BF4C001DE40B2130D9D206C513D6E2020E2662A6C1D6E2020E296BC9E279470
B2130D9D2064540300401BE30A3336D9D201192041C00A3836B2130736C1E46C
19B136F4AE2B20409545047A20D6E2020E266D6E2020E296B21300D470931401
6735F71401673570761D6E2020E2969FF30C9B269FF30E99E200CD1BC9E273BE
2C631302DC15FDE2B2130CCD20B44008FB97608F735608FB97608FE316034000
10E3437DB31218FD7B508FADB50118145135174143F4F4103818F29108AC31F3
E60715308086050B472F30920ACAAC5311081A6091FCD40715D0691034100006
8323460C006D2281AF1B8AA1E794231605C0A4C4BD3151AE572A234000217062
5D23151A4D53E3420C0063E13420BF468D13430BF46DC1AC53140966A1315196
16064903410BF469A13110966FB3400E007AF14CBAE870F142BBEC9644581A61
996660674FB669662381A60981AF103400100C281AF0881AF1BCE81AF0BACA6F
0F3450BF46E213440BF463218FADB50134147135174147D73D840584054383D2
17415372D912361C4201103400100CA31F7AE513018114AAE2962B031A1966B0
A6D55E450161132137135EA1411C4137818F3F818F395622AAF231A12015571C
430F14517F174137144D51348F91030AF2136134E9818F2515C516534CCD2014
4164132130818FBF818FB4DBC9E2D51441848F91030818F1AD9144D2D531608A
96031817C80078AEBF1FCD40715D0D48DC753081AF181343108AE594B50B6534
00E007710400148161A6D58E79106D408F982135007700CE5FE011F976071530
908008FE8D003430A00646F8FAC01348F196114C0181AF1813594F42D131F714
BA68171A6E53F14BB6096C00033118AE5D22814B840808AF50850C6A64570808
90860E3808A0A08088057080890808A5A08088557080895808ACA08088C57080
89C0C52A171A6D549DA34FFFF00EF28AE0003D9D20300405E413A2170A3836C9
A3650803322303004050803C273682E46C6336D9D201192040BF4A3836B21309
1D30B3A161192050BF4A3836B2130D9D2049B469DE36EA8D3C2A207000051350
403F2A25FDE2CF1462A17010343C7816A383685230A182669816D9D203C5D2A3
836B21302C23044413A2170A383611920100005E4138C170A2116DE050FB9201
079B30B3A161192020BF4A3836B2130D9D20C631329E20BF48009FF3029E20BF
490029E20BF4A00DBC36A3836B2130D9D2049B46527352A17029E20BF4800FEF
3029E20BF4900A1D465E413A2170A3836C2A20700006044413A2170A38368813
0DE050E14564C536EE170D9D2029E20BF470074726E14569FF301B54695236ED
DF23991631581C2A20B00008595D4EDDF24423031581B21305E17044230B2130
D9D2029E20BF4B00E5E40D9D203991629E20BF460029E20BF4700B21308BE402
9E20BF4D0029E20BF4C00B21308BF4400D9D20E1A81CA03129E20BF4B1053621
CF14697611C2A20F00006723E223FD00D1153621E4B469E04097611C2A201400
054E20275543545058414C4026202D4E20214C4F455020202F4344502932308F
115362112040C1B4697611C2A20B100034F464645454024594D45408F1153621
66C463504097611F2293B21308BF4300D9D20E1A8118A3029E20BF4500B21308
BF4200D9D20E1A810CA3029E20BF4500B21308BF4100D9D20ECE81B204029E20
BF41105304029E20BF41101204029E20BF42101704029E20BF4110FEF30D9D20
29E20BF4B00E5E40D9D2029E20BF4F0049703FD55029E20BF4410B21308BE402
9E20BF4D0029E20BF4C00B2130B21308BF4000D9D2047A2047A20D9D2088704C
2A20B000034253449B468773599CE3B2130D9D208870449B46881309DE365573
552735B2130B213047A20D9D20887049C0E3751404873599CE3B2130D9D20887
04751402ADE3B2130B21309E5509E5509E55047A2096756D9D20887049B314B2
130B2130B213068F04B2130E4A201900050FFF64EFFB1EFF0FDFFCECFF68CFFF
9BFFB5BFF49AFF71AFF2C5FFDE4FF4B4FF874FF034FF4F3FF933FFA13FF732FF
A50FF56EEF62CEF9CBEFC8AEFD0AEF8A9EFD19EF436EFE4A206C000000000000
00000064000B50000000000000B5000000000000000000000000000000000000
00000008500040255434852004025543495300503554E444D410080355445550
58595D4000801424F455458595D4400A2000E3000D5000550009200066C49E56"