Date: September 16, 1994 From: rodger@connected.com (Rodger Rosenbaum) To: jaykaye@kbbs.com (Joseph K. Horn) Re: <-RPL-> [Note: the following is just another reason to abandon the <-RPL-> library (on GD9) and use Jazz instead. -jkh-] Hi Joe, I've been trying to port Carlos Ferraro's POLY package to the GX, and I have discovered a bug in <-RPL->. When using ->COD to assemble the following code fragment: HS=0 3 I found that the assembler does not recognize the data field (the 3) and assembles it as if it were: HS=0 0. Both the SX and GX versions of <-RPL-> have the bug. --------- Note from Joe Horn: It's worse than that. Here's the scoop: (1) The assembler should turn "HS=0 n" into opcode "82n", but instead it always turns it into "820". Workaround: use "NIBHEX 82n" as recommended by SASM.DOC, or use "XM=0", "SB=0", "SR=0", "MP=0" or "CLRHST" when n=1, 2, 4, 8, or F, respectively. (2) The disassembler should turn opcode "82F" into "CLRHST" and then increment the disassembly pointer by 3 to go to the next opcode. Instead, it increments the pointer by 2, thus resuming disassembly at the "F" of "82F" and thereby making a royal mess of at least one line of disassembly after the CLRHST since the nibble boundaries of the commands has been messed up. Workaround: none. Hint: After using RPL-> with flag -4 set (disassembler turned on), perform << "CLRHST" POS >> to see whether or not a CLRHST was disassembled. If so, toss the entire output of RPL->, turn off flag -4, and do the RPL-> again. NOTE WELL: It is <-RPL-> that has this bug, NOT JAZZ. Jazz works fine.