home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1993 #3 / NN_1993_3.iso / spool / comp / sources / hp48 / 319 < prev    next >
Encoding:
Text File  |  1993-01-25  |  8.6 KB  |  314 lines

  1. Newsgroups: comp.sources.hp48
  2. Path: sparky!uunet!seq!spell
  3. From: Craig A. Finseth <fin@unet.umn.edu>
  4. Subject:  v08i023:  hp16cemu.caf - Partial HP-16C Emulator v1.0, Part01/01
  5. Message-ID: <1993Jan25.050109.17353@seq.uncwil.edu>
  6. Followup-To: comp.sys.hp48
  7. Sender: spell@seq.uncwil.edu (Chris Spell)
  8. Organization: University of Minnesota, Networking Services.
  9. Date: Mon, 25 Jan 1993 05:01:09 GMT
  10. Approved: spell@seq.uncwil.edu
  11. Lines: 305
  12.  
  13. Checksum:  965356985 (verify with brik -cv)
  14. Submitted-by: Craig A. Finseth <fin@unet.umn.edu>
  15. Posting-number: Volume 8, Issue 23
  16. Archive-name: hp16cemu.caf
  17.  
  18.  
  19. BEGIN_DOC hp16cemu.doc
  20. Written by: Craig Finseth, University of Minnesota
  21. When: 24 Mar 1990
  22. What: Partial HP-16C Emulator
  23.  
  24. ON16    Turn on our special ENTER key.
  25. OFF16    Turn off our special ENTER key.
  26. BASE    MATH:BASE menu.
  27. LJ    Left Justify
  28. MSKL    Mask Left
  29. MSKR    Mask Right
  30.  
  31. RLn    Rotate Left by n
  32. RRn    Rotate Right by n
  33. RLC    Rotate Left through Carry
  34. RRC    Rotate Right through Carry
  35. RLCn    Rotate Left by n through Carry
  36. RRCn    Rotate Right by n through Carry
  37.  
  38. CNTB    Count the number of "1" bits
  39. SB    Set a bit
  40. CB    Clear a bit
  41. TB    Test a bit
  42. TOBIN    Convert an expression to a binary number.
  43. TOREAL    Convert an expression to a real number.
  44.  
  45. TRIMN    Trim N to the current word size.
  46. SWAPC    Swap the bottom bit of the current value with the carry bit.
  47. CARRY    The carry bit.
  48. alphaENTER    Our vectored Enter key.  This key checks to see if the
  49.         first character of the command string is a digit ("0"
  50.         through "9").  If so, it prepends a "#" character to the
  51.         command line.
  52.  
  53.         Note: The USER mode must be active for this to work.
  54.  
  55. HP-16C Functions Not Emulated:
  56.  
  57.     RMD
  58.     DBLR
  59.     DBL/
  60.     DBL*
  61.     1's mode
  62.     UNSGN mode
  63.  
  64. All other HP-16C functions exist in the HP-48SX (e.g., RR, RL, ASR) or
  65. are implemented in a better way in the HP-48SX (e.g., program
  66. control).
  67.  
  68. Checksum: #17d
  69. Size: 1420.5
  70. ------------------------------------------------------------
  71. END_DOC
  72.  
  73. BEGIN_RPL hp16cemu.rpl
  74. %%HP: T(3)A(D)F(.);
  75. DIR
  76.   ON16
  77.     \<< -62 SF -63 SF
  78.     \>>
  79.   OFF16
  80.     \<< -62 CF -63 CF
  81.     \>>
  82.   BASE
  83.     \<< 9 MENU
  84.     \>>
  85.   LJ
  86.     \<< DUP
  87.       IF TOREAL
  88.       THEN TOBIN
  89.         DO RL DUP
  90.         UNTIL # 1d
  91. AND TOREAL
  92.         END RR
  93.       ELSE # 0d
  94.       END
  95.     \>>
  96.   MSKL
  97.     \<< TRIMN \-> n
  98.       \<< # 0d 1 n
  99.         START RR
  100. # 1d RR OR
  101.         NEXT
  102.       \>>
  103.     \>>
  104.   MSKR
  105.     \<< TRIMN \-> n
  106.       \<< # 0d 1 n
  107.         START SL
  108. # 1d OR
  109.         NEXT
  110.       \>>
  111.     \>>
  112.   RLn
  113.     \<< \-> X n
  114.       \<< X TOBIN 1 n
  115. TRIMN
  116.         START RL
  117.         NEXT
  118.       \>>
  119.     \>>
  120.   RRn
  121.     \<< \-> X n
  122.       \<< X TOBIN 1 n
  123. TRIMN
  124.         START RR
  125.         NEXT
  126.       \>>
  127.     \>>
  128.   RLC
  129.     \<< TOBIN RL
  130. SWAPC
  131.     \>>
  132.   RRC
  133.     \<< TOBIN SWAPC
  134. RR
  135.     \>>
  136.   RLCn
  137.     \<< \-> X n
  138.       \<< X TOBIN 1 n
  139. TRIMN
  140.         START RLC
  141.         NEXT
  142.       \>>
  143.     \>>
  144.   RRCn
  145.     \<< \-> X n
  146.       \<< X TOBIN 1 n
  147. TRIMN
  148.         START RRC
  149.         NEXT
  150.       \>>
  151.     \>>
  152.   CNTB
  153.     \<< 0 SWAP TOBIN
  154. 1 RCWS
  155.       START
  156.         IF DUP # 1d
  157. AND TOREAL
  158.         THEN SWAP 1
  159. + SWAP
  160.         END RR
  161.       NEXT DROP
  162.     \>>
  163.   SB
  164.     \<< # 1d SWAP RLn
  165. OR
  166.     \>>
  167.   CB
  168.     \<< # 1d NOT SWAP
  169. RLn AND
  170.     \>>
  171.   TB
  172.     \<< RRn # 1d AND
  173.     \>>
  174.   TOBIN
  175.     \<< \->NUM \-> X
  176.       \<<
  177.         IF X TYPE
  178. 10 \=/
  179.         THEN X RE
  180. R\->B
  181.         ELSE X
  182.         END
  183.       \>>
  184.     \>>
  185.   TOREAL
  186.     \<< \->NUM \-> X
  187.       \<<
  188.         IF X TYPE
  189. 10 ==
  190.         THEN X B\->R
  191.         ELSE X
  192.         END
  193.       \>>
  194.     \>>
  195.   TRIMN
  196.     \<< TOREAL ABS
  197. RCWS MOD
  198.     \>>
  199.   SWAPC
  200.     \<< DUP CARRY
  201. SWAP # 1d AND
  202. 'CARRY' STO SWAP
  203. # 1d NOT AND OR
  204.     \>>
  205.   CARRY # 0d
  206.   \GaENTER
  207.     \<< \-> X
  208.       \<< X 1 1 SUB
  209. NUM \-> Y
  210.         \<<
  211.           IF Y 48 \>=
  212. Y 57 \<= AND
  213.           THEN "#"
  214. X +
  215.           ELSE X
  216.           END
  217.         \>>
  218.       \>> OBJ\->
  219.     \>>
  220. END
  221. END_RPL
  222.  
  223. BEGIN_ASC hp16cemu.asc
  224. %%HP: T(1);
  225. "69A20FF78BA000000060C854E445542560D9D20E16321C432D6E201085E1632D
  226. 6E2010859C2A29C2A2C58C164BC11C432D6E201095E16323CE22D6E201095339
  227. 201000000000000840B9DE1D6E201095339201000000000000750CFCE1387E1A
  228. FE22D9D20C2A207000032D6E20108576BA1B21305BF22D6E2010855DF22EF532
  229. EF532B7FC193632B21302010050341425259550E4A2051000000000000000000
  230. 08200050357514053450D9D20E163278BF184E20503414252595DBBF1E4A2051
  231. 0001000000000000000387E14563284E2050341425259597632DCC02DBBF1E4A
  232. 20510001000000000000000F88E1387E1908E193632B2130AA00050452594D4E
  233. 450D9D20E163284E206045F4255414C4F1AA1EF5C1D4EB193632B21304400060
  234. 45F4255414C460D9D20E16324E5A11C432D6E201085E16323CE22D6E20108568
  235. BC1339201000000000000010279E1AFE22D9D20D6E201085BB691B21305BF22D
  236. 6E2010855DF22EF53293632B2130E90005045F42494E450D9D20E16324E5A11C
  237. 432D6E201085E16323CE22D6E20108568BC1339201000000000000010D9AE1AF
  238. E22D9D20D6E201085AC7C1B9691B21305BF22D6E2010855DF22EF53293632B21
  239. 301A00020452420D9D20E163284E20302525E6E4A20510001000000000000000
  240. 387E193632B21308400020342420D9D20E1632E4A20510001000000000000000
  241. F88E1DBBF184E203025C4E6387E193632B21302500020352420D9D20E1632E4A
  242. 20510001000000000000000DBBF184E203025C4E6908E193632B2130D4000403
  243. 4E4452440D9D20E16324B2A2DBBF184E205045F42494E49C2A2EF5C1301323CE
  244. 2278BF1E4A20510001000000000000000387E184E206045F4255414C4AFE22D9
  245. D20DBBF19C2A276BA1DBBF1B21305DF22BD591C42328DBF193632B2130DB0004
  246. 0252534E640D9D20E16321C432D6E201085D6E2010E6E1632D6E20108584E205
  247. 045F42494E49C2A2D6E2010E684E2050452594D4E43013284E2030252534C423
  248. 2EF53293632B2130190004025C434E640D9D20E16321C432D6E201085D6E2010
  249. E6E1632D6E20108584E205045F42494E49C2A2D6E2010E684E2050452594D4E4
  250. 3013284E203025C434C4232EF53293632B2130190003025253430D9D20E16328
  251. 4E205045F42494E484E20503575140534BD59193632B2130540003025C43430D
  252. 9D20E163284E205045F42494E4B959184E2050357514053493632B2130540003
  253. 02525E630D9D20E16321C432D6E201085D6E2010E6E1632D6E20108584E20504
  254. 5F42494E49C2A2D6E2010E684E2050452594D4E430132BD591C4232EF5329363
  255. 2B2130780003025C4E630D9D20E16321C432D6E201085D6E2010E6E1632D6E20
  256. 108584E205045F42494E49C2A2D6E2010E684E2050452594D4E430132B9591C4
  257. 232EF53293632B21307800040D435B42540D9D20E163284E2050452594D4E41C
  258. 432D6E2010E6E1632E4A205100000000000000000009C2A2D6E2010E630132B1
  259. 691E4A20510001000000000000000908E1C4232EF53293632B2130F900040D43
  260. 5B4C440D9D20E163284E2050452594D4E41C432D6E2010E6E1632E4A20510000
  261. 0000000000000009C2A2D6E2010E630132BD591E4A2051000100000000000000
  262. 0BD591908E1C4232EF53293632B21304A00020C4A420D9D20E163278BF13CE22
  263. 84E206045F4255414C4AFE22D9D2084E205045F42494E43C032B959178BF1DE0
  264. 32E4A20510001000000000000000387E184E206045F4255414C49B632BD591B2
  265. 1305BF22E4A205100000000000000000005DF2293632B2130DC0004024143554
  266. 40D9D20E1632173A26911293632B2130A200050F46464136350D9D20E1632339
  267. 2010000000000002695D2C13392010000000000003695D2C193632B213065000
  268. 40F4E4136340D9D20E1632339201000000000000269472C13392010000000000
  269. 00369472C193632B2130F9B0"
  270. END_ASC
  271.  
  272.  
  273. BYTES: #B9Fh 1418
  274.  
  275. BEGIN_UU hp16cemu.uue
  276. begin 644 hp16cemu.dir
  277. M2%!(4#0X+466*O!_N`H````&C$5.5$52!ITMX&$CP332Y@(!6!XVTN8"`5C)
  278. MHI(L*ES(8;0<P332Y@(!61XV,NPB;2X0D#63`@$``````(`$F^W1Y@(!63,I
  279. M$````````%?`SQZ#YZ'O(ITMP*("!P`PTN8"`5AGJ[$2`[4OTN8"`5C5+^)?
  280. M(_XULO<<.3:R$@,"`5`P%"0EE57@I`(5````````````@`(`!5-705!#!9TM
  281. MX&$CA_N!Y`(%0T%24EF]^^&D`A4`$``````````P>!Y4-H+D`@5#05)267DV
  282. MTLP@O?OAI`(5`!``````````\(@>@^>1@!XY-K(2`ZH`4$`EE=3D5-#9`AXV
  283. M@N0"!E1/4D5!3!^JX5\<3;Z18R,K,4`$``943U)%04P&G2W@82/DI1%,(VTN
  284. M$(#E82/#+M+F`@%8ALLQDP(!`````````7+IH>\BG2W0Y@(!6+N6L1(#M2_2
  285. MY@(!6-4OXE\C.3:R$@.>`%!`]224Y%30V0(>-D)>&L$TTN8"`5@>-C+L(FTN
  286. M$(!EN!PS*1`````````0T*D>^B[2V0)M+A"`I7P<FY:Q$@.U+]+F`@%8U2_B
  287. M7R,Y-K(2`Z$`($`E)-#9`AXV@N0"`U)2;DXJ4`$``0````````"#YY%C(RLQ
  288. M@`0``D-"`ITMX&$C3BI0`0`!`````````(_HT;L?2"XP(,7D-G@>.3:R$@-2
  289. M`"`P)230V0(>-N*D`A4`$`````````#0NQ](+C`@Q>26@!XY-K(2`TT`0##D
  290. M1"5$T-D"'C9"*RJ]^X'D`@543T))3LFBXE\<`S$R["*'^^&D`A4`$```````
  291. M```P>!Y(+F!`]215%,2D[R*=+="['\FB<K8:O?NQ$@/5+[)=&4PR@KT?.3:R
  292. M$@.]`$`@)37D1M#9`AXV$DPC;2X0@-7F`@%N'C;2Y@(!6$@N4$#U))3DE"PJ
  293. M;2X0X(;D`@544DE-3@,Q@N0"`U)20TPRXE\C.3:R$@.1`$`@Q33D1M#9`AXV
  294. M$DPC;2X0@-7F`@%N'C;2Y@(!6$@N4$#U))3DE"PJ;2X0X(;D`@544DE-3@,Q
  295. M@N0"`U),0TPRXE\C.3:R$@.1`#`@)34TT-D"'C:"Y`(%5$]"24Y(+E`P=14$
  296. M-;1=&3DVLA(#10`P(,4T--#9`AXV@N0"!51/0DE.FY6!Y`(%4U=!4$,Y-K(2
  297. M`T4`,"`EY3;0V0(>-A),(VTN$(#5Y@(!;AXVTN8"`5A(+E!`]224Y)0L*FTN
  298. M$."&Y`(%5%))34X#,;)=&4PRXE\C.3:R$@.'`#`@Q>0VT-D"'C823"-M+A"`
  299. MU>8"`6X>-M+F`@%82"Y00/4DE.24+"IM+A#@AN0"!51224U.`S&R61E,,N)?
  300. M(SDVLA(#AP!`T#2U)$70V0(>-H+D`@544DE-3L$TTN8"`6X>-N*D`A4`````
  301. M``````"0+"IM+A#@-A`C&Y;AI`(5`!``````````D(`>3#+B7R,Y-K(2`Y\`
  302. M0-`TM<1$T-D"'C:"Y`(%5%))34[!--+F`@%N'C;BI`(5````````````D"PJ
  303. M;2X0X#80(]N5X:0"%0`0`````````+!=&0GHP20C_C628R,K,4`*``),2@*=
  304. M+>!A(X?[,>PB2"Y@0/4D513$I.\BG2V`Y`(%5$]"24[#,+)9&8?[T0XC3BI0
  305. M`0`!`````````(/G@>0"!E1/4D5!3+DVLET9*S%0^R).*E`!````````````
  306. MU2^28R,K,=`,``1"05-%!)TMX&$C<:-B&2$Y-K(2`RH`4/!D9!1C4]#9`AXV
  307. M,I,"`0``````();5PC&3`@$``````#"6U<*18R,K,6`%``1/3C$V!)TMX&$C
  308. ?,RD0````````8DDG'#,I$````````&-))QPY-K(2`[(2
  309. `
  310. end
  311. sum -r/size 11398/1997 section (from "begin" to "end")
  312. sum -r/size 18950/1426 entire input file
  313. END_UU
  314.