Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!samsung!uakari.primate.wisc.edu!sdd.hp.com!elroy.jpl.nasa.gov!lll-winken!unixhub!shelby!snorkelwacker!ai-lab!rice-chex!bson From: bson@rice-chex.ai.mit.edu (Jan Brittenson) Newsgroups: comp.sys.handhelds Subject: RPL constructs Message-ID: <11408@life.ai.mit.edu> Date: 17 Oct 90 00:28:05 GMT Sender: news@ai.mit.edu Organization: nil Lines: 131 Could someone who knows, please describe how conditionals, loops, and CASEs are stored internally? I need it to get SAD 1.02 to disassemble RPL code. Actually, it already does, but I intend to supply macros for common RPL constructs to get the indentation correct. Oh, and could someone explain what reals (i.e. 64-bit floating point words) look like? Things like how the exponent is stored, the exponent sign, the mantissa sign, etc. I haven't done any thorough investigation here, and only know vaguely what is what. Also, please voice your opinion on the following (PROGRAM and END are SAD macros, which currently is the only way to define proper indentation among other things) format: 1cb86 Cmd_TYPE: 1cb86 d9d20 PROGRAM 1cb8b 5aa81 #18aa5 1cb90 d9d20 PROGRAM 1cb95 d9f81 #18f9d 1cb9a 9ff30 Short_1 ; ; #3ff9 1cb9f 4b2a2 Real_0 ; ; #2a2b4 1cba4 30040 Short_2 ; ; #4003 1cba9 9c2a2 Real_1 ; ; #2a2c9 1cbae d0040 Short_3 ; ; #400d 1cbb3 ed2a2 Real_2 ; ; #2a2de 1cbb8 71040 Short_4 ; ; #4017 1cbbd 1bdc1 #1cdb1 1cbc2 12040 Short_5 ; ; #4021 1cbc7 d13a2 Real_5 ; ; #2a31d 1cbcc b2040 Short_6 ; ; #402b 1cbd1 233a2 Real_6 ; ; #2a332 1cbd6 53040 Short_7 ; ; #4035 1cbdb 743a2 Real_7 ; ; #2a347 1cbe0 f3040 Short_8 ; ; #403f 1cbe5 4ddc1 #1cdd4 1cbea 94040 Short_9 ; ; #4049 1cbef 173a2 Real_9 ; ; #2a371 1cbf4 d5040 Short_0bh ; ; #405d 1cbf9 7e056 Real_10 ; ; #650e7 1cbfe 76040 Short_0ch ; ; #4067 1cc03 3392010 REAL 1.1E1 0000000 0000110 1cc18 17040 Short_0dh ; ; #4071 1cc1d 3392010 REAL 1.2E1 0000000 0000210 1cc32 b7040 Short_0eh ; ; #407b 1cc37 3392010 REAL 1.3E1 0000000 0000310 1cc4c 58040 Short_0fh ; ; #4085 1cc51 3392010 REAL 1.4E1 0000000 0000410 1cc66 52140 Short_1fh ; ; #4125 1cc6b 3392010 REAL 2.0E1 0000000 0000020 1cc80 03b46 Short_2fh ; ; #64b30 1cc85 3392010 REAL 1.5E1 0000000 0000510 1cc9a 11920f3 ADDRESS #3f 000 1cca4 3392010 REAL 2.1E1 0000000 0000120 1ccb9 11920f4 ADDRESS #4f 000 1ccc3 3392010 REAL 2.2E1 0000000 0000220 1ccd8 11920f5 ADDRESS #5f 000 1cce2 3392010 REAL 2.3E1 0000000 0000320 1ccf7 11920f6 ADDRESS #6f 000 1cd01 3392010 REAL 2.4E1 0000000 0000420 1cd16 11920f7 ADDRESS #7f 000 1cd20 3392010 REAL 2.5E1 0000000 0000520 1cd35 e2d46 Short_8fh ; ; #64d2e 1cd3a 3392010 REAL 1.6E1 0000000 0000610 1cd4f 06d46 Short_9fh ; ; #64d60 1cd54 3392010 REAL 1.7E1 0000000 0000710 1cd69 11920fa ADDRESS #af 000 1cd73 3392010 REAL 2.6E1 0000000 0000620 1cd88 fef30 Short_0 ; ; #3fef 1cd8d 3392010 REAL 2.7E1 0000000 0000720 1cda2 b2130 END 1cda7 b9f06 #60f9b 1cdac b2130 END 1cdb1 d9d20 PROGRAM 1cdb6 88130 Dup ; ; #3188 1cdbb b3226 #6223b 1cdc0 8da16 #61ad8 1cdc5 3f2a2 Real_3 ; ; #2a2f3 1cdca 803a2 Real_4 ; ; #2a308 1cdcf b2130 END 1cdd4 d9d20 PROGRAM 1cdd9 9af16 #61fa9 1cdde da916 Branch_if_true ; ; #619ad 1cde3 c53a2 Real_8 ; ; #2a35c 1cde8 d2a62 #26a2d 1cded 39916 Branch_if_false ; ; #61993 1cdf2 3392010 REAL 1.8E1 0000000 0000810 1ce07 3392010 REAL 1.9E1 0000000 0000910 1ce1c b2130 END