home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1993 #3 / NN_1993_3.iso / spool / comp / sys / hp48 / 7417 < prev    next >
Encoding:
Text File  |  1993-01-28  |  7.6 KB  |  229 lines

  1. Newsgroups: comp.sys.hp48
  2. Path: sparky!uunet!europa.eng.gtefsd.com!emory!sol.ctr.columbia.edu!eff!news.byu.edu!ux1!fcom.cc.utah.edu!cadehp8.eng.utah.edu!kirkland
  3. From: kirkland@cadehp8.eng.utah.edu (Daniel Kirkland)
  4. Subject: USEND and URECV, FAST IR transfer.
  5. Message-ID: <1993Jan28.055923.3360@fcom.cc.utah.edu>
  6. Keywords: USEND, URECV, FAST, IR, TRANSFER
  7. Sender: news@fcom.cc.utah.edu
  8. Organization: University of Utah
  9. Date: Thu, 28 Jan 93 05:59:23 GMT
  10. Lines: 217
  11.  
  12.  
  13. FAST!  FAST!  FAST!
  14.  
  15. More than twice as fast (real time) as TSEND or TSEND2!
  16. At least four times as fast as the HP48 SEND using IR!
  17. More than twice as fast as the HP48 SEND at 9600 baud using
  18. a cable to connect two HP48s!
  19.  
  20. Like I said FAST!
  21.  
  22. No need to store libraries (or anything else) in a variable.
  23. USEND will send a library from level one of one HP48 to level
  24. one of the other HP48.
  25.  
  26.  
  27.  
  28.  
  29. BEGIN_DOC usnd.doc
  30.  
  31. USEND & URECV   
  32. Universal IR Send and Receive
  33. Version 1.1, January 1993
  34. by Dan Kirkland
  35.  
  36.  
  37. USEND and URECV are fast, all purpose, send and receive
  38. programs for FAST data transfer between two HP48's.
  39. With USEND and URECV, you can send objects directly from the
  40. stack without storing them in a variable.
  41. Try putting a library on stack level one and sending it!
  42. You must use USEND on the sending HP48 and URECV on the send HP48.
  43.  
  44.                     FAST!  COMPARE!
  45.  
  46. PACMAN directory from goodies disk #7, 8308.5 bytes.
  47. program used          SEND       TSEND (v2.0)    USEND
  48. time in seconds     115.026       66.072         28.707
  49.  
  50. QED.font from QED1.07, 2244 bytes
  51. program used          SEND       TSEND (v2.0)    USEND
  52. time in seconds      42.273       23.456         6.252
  53.  
  54. A list of small variables, (unknown bytes).
  55. program used          SEND      TSEND (v2.0)     USEND
  56. time in seconds      52.114       31.896         10.483
  57.  
  58. All times were with flag -36 (RECV overwrite active) and
  59. flag -39 (I/O messages suppressed) set to provide the
  60. fastest times for SEND and TSEND.
  61.  
  62.                     
  63.                     USEND  USAGE
  64.  
  65. USEND will send ANY type object from stack level one.
  66. USEND uses flag #1 (user flag).
  67.  
  68.    With flag #1 clear (no 1 in the status area).
  69.  
  70. Defined variables (both global and local variables that have
  71. something 'stored' in them) are sent and stored in the current
  72. directory on the receiving HP48.
  73. Undefined variable names will be sent and left on the stack
  74. of the receiving HP48.
  75.  
  76.   SENDING LISTS
  77.  
  78. The objects in a list will be sent separatly and defined
  79. variables in the list will be stored in the current directory.
  80. To send a list as an complete object, either put the list as
  81. an object in another list or set flag #1 (see below).
  82. Defined variable names nested inside two or more list will
  83. be sent as as names in a list. The object stored in the
  84. variable will not be sent.
  85. Only defined variable names are stored in the current
  86. directory, all other objects are left on the stack of the
  87. receiving HP48.
  88.  
  89.   With flag #1 set (a 1 showing in the status area).
  90.  
  91. Stack level one object sent as is to stack level one of the
  92. receiving HP48.
  93. This means that all variable names will be sent as variable
  94. names only.
  95. Lists will be sent as one complete object.
  96. The receiving HP48 will receive to stack level one exactly
  97. what was sent from level one of the sending HP48.
  98.  
  99.  
  100.                     URECV  USAGE
  101.  
  102. Just execute URECV on the receiving HP48.
  103. URECV does NOT use any flags (flag #1 only needed for USEND).
  104.  
  105.                     SAMPLE PROGRAMS
  106.  
  107. SSTK    (Send Stack)     BYTES: #1332h 34.5
  108.          Arguments:      obj#n ... obj#1 #n  ->
  109. \<<
  110.  \->LIST
  111.  1
  112.  \->LIST 
  113.  USEND
  114. \>>
  115.  
  116. RSTK    (Recv Stack)     BYTES: #CA2BHh 32
  117.          Arguments:                          ->  obj#n ... obj#1
  118.  
  119. \<<
  120.  URECV
  121.  OBJ\->
  122.  DROP
  123. \>>
  124.  
  125. With flag #1 clear, USEND will send the objects in a list
  126. seperately and will store all defined names in the HOME
  127. directory. Set flag #1 or use this next program to send a
  128. list so the receiving HP48 will receive it as the same list.
  129.  
  130. SLIST   (Send List)      BYTES: #49F1h 33
  131.          Arguments:      { obj#1 ... obj#n } ->
  132. \<<
  133.  1
  134.  \->LIST 
  135.  USEND
  136. \>>
  137.  
  138.                     COMMENTS
  139.  
  140. USEND and URECV do not require any setup (except maybe 
  141. flag #1).
  142. USEND and URECV are quiet. They do not display what is
  143. being sent. If the data transfer arrow is blinking, then
  144. everthing is okay.
  145.  
  146. USEND and URECV do not do packet checks like the built in
  147. SEND program (and TSEND). So, don't move the HP48's once
  148. you start the transfer.
  149.  
  150. URECV does a checksum check, so any object is sure to be
  151. the same as the object that was sent.
  152.  
  153. With USEND, there is no longer any need to store a library
  154. in a variable to send it. Just put the library on the stack
  155. and send it. It will be received on the stack of the receiving
  156. HP48 and can then be stored in the proper port with no
  157. variable to purge.
  158.  
  159. USEND and URECV were written and tested on HP48 version E.
  160. USEND and URECV were written in "system" RPL using supported,
  161. unsupported, and some, as yet, undocumented ROM entry points.
  162.  
  163. Feel free to use and/or do with these programs what you wish.
  164. I make no guarantees. If you are overly worried that these
  165. programs (or any other program that I write) may cause you
  166. problems, THEN DON'T USE THEM!
  167.  
  168. Any comments, questions, or suggestions send email to:
  169.  
  170.                    kirkland@ee.utah.edu
  171.  
  172. Dan Kirkland
  173.  
  174. END_DOC
  175.  
  176. BEGIN_ASC usnd.asc
  177. %%HP: T(3)A(D)F(.);
  178. "69A20FF7123000000050552554346550D9D209CB04E5E40D9D2019322FEF3043
  179. 9F280613CCD20F20008FB97601BA110030415C01BD010030515C08D3FEC0B053
  180. 6C63134FA613C370B33135A4A5CB916F43349485339916D9D201192020C00A38
  181. 36B21306A15644E0312040D9D205E413B3A165A4E2A3836B2130FEF304360344
  182. 230A2126DA916D9D20E4056A3836B2130BD37076040D9D205E413B3A165A4E2A
  183. 3836B213088130B204095236FEF3043603C07261204043603C0726A2126DA916
  184. D9D20E4056A3836B2130FD5502A1702C2308F336D9D2048C46AB426881306A15
  185. 644E03D9D205E413B3A165A4E2A3836B21307EE0667326CAF0621E26B21305E1
  186. 7062726FEF304360374726449508DF0679B30BBF06FDD36D9D20E4056A3836B2
  187. 13044230FA450A9226CB916D9D20A3E26592362A170635818DA16D9D202C1267
  188. 5140487352FA3057B30B21300CA30EE170D9D207A726FB7618DA166545684456
  189. EE2508B736990164E7613915051B50B21305E170A211631581B213043370B213
  190. 08BE40D9D206C5131DE40B21306C513B21302130050553554E44450D9D20D295
  191. 1E5E40D9D2019322FEF30439F280613CCD20F20008FB97601BA110030415C01B
  192. D010030515C08D3FEC0B05360BD463C3706A15644E0320F04B33135A4A5CB916
  193. F43344337039916D9D201192020C00A3836B2130F6A369FF308773557B30CB91
  194. 6DEE3211226A2170DEE3213236FEF3096C2662DF26272644E038943611436C9B
  195. 264A7E29FF308773557B308DA16DEE32D9D2050C268DA16D9D2032230522759B
  196. 136B2130DEE32B2130881304495032230300407FE30CBD30FEF3096C2662DF26
  197. 2726FEF30756605923062DF2627263915044E03FEF30756602A1702C23062DF2
  198. 3223090236CB9168D3829FF30D9D205E413B3A165A4E2A3836B21304423044E0
  199. 38C170852304337044230B21308BE40D9D206C5131DE40B21306C513B213049B
  200. B"
  201. END_ASC
  202.  
  203.  
  204. BYTES: #D5F3h 777.5
  205.  
  206. BEGIN_UU usnd.uue
  207. begin 640 usnd
  208. M2%!(4#0X+466*O!_(0,````%55)%0U8%G2V0O$!>3M#9`I$C\OX#-/F"8#',
  209. M+?`"`/B;9Q"K$0`#%,40VQ```Q7%@#WO#`LUQC8Q]&HQ/`<[$U-*6KP9]C1#
  210. M25@SF6&=+1"1`@(,H(-C*S%@&F5$#A,"!)TM4$XQ.QI62BXZ.+82`^\_0&,P
  211. M1#*@$F*M&=;9`DY0IH-C*S&P/0=G0-#9`N44LZ-AI>2B@V,K,8`8`RM`D"5C
  212. M[S]`8S`,)Q8"!#0&PW!B*B'6FF&=+>`$93HXMA(#WU4@&@?",H`_8YTM0,AD
  213. MNB2&&`.F44;D,)TM4$XQ.QI62BXZ.+82`^<.9C=BK`\FX6(K,5`>!R8G]OX#
  214. M-`9S=&)$68#]8)<[L/M@WSW6V0).4*:#8RLQ0"0#KU2@*6*\&=;9`CHN5BEC
  215. MHG%@4QC8&M;9`L(A=A4$A#<EKP-U.[`2`\`ZX!X'G2UP>F*_9X&M8594AD1E
  216. M[E*`>V.9$$9^%I-14+$%*S%0'@<J$391&"LQ0#,'*S&`ZP2=+6!<,=%.L!(#
  217. MQA6S$@,2`U!0-57D1%30V0(M6>'E!)TM$#DB[S]`DR\(%L/<`B\`@+]Y!K$:
  218. M`3!`40RQ#0$P4%$,V//.L%!CL$TV/`>F44;D,`(/M#,QI:3%FV%/,T0S!Y,9
  219. MUMD"$2D@P``Z.+82`V\ZEO\#>#=5MP.\&=;N(Q$BIA('[3X2(V/O/Y#&8B;]
  220. M8G)B1`Z#26,1-,:Y8J3GDO\#>#=5MP/8&M;N(YTM4,!BV!K6V0(C,E`B5[DQ
  221. MMA(#[3ZR$@.(,4"4!2,R,``$]S[`VP/O/Y#&8B;]8G)B[S]P90:5,F#2+R8G
  222. M-AD%1`[S_@-79B`:!\(R8-(O(S*0(&.\&88]*/D_T-D"Y12SHV&EY**#8RLQ
  223. D0"0#1`Z#'`=8,D`S!T0RL!(#N$[0V0+&%1/M!"LQ8%PQ*S$`
  224. `
  225. end
  226. END_UU
  227.  
  228.  
  229.