code: def _pstoref16(ins):
      
      value = ins.quad[2]
      offset = ins.quad[1]
      indirect = offset[0] == '*'
      if indirect:
          offset = offset[1:]
  
      I = int(offset)
      if I >= 0:
          I += 4  # Return Address + "push IX"
  
      output = _f16_oper(value)
  
      if indirect:
          output.append('ld bc, %i' % I)
          output.append('call __PISTORE32')
          REQUIRES.add('pistore32.asm')
          return output
  
      # direct store
      output.append('ld bc, %i' % I)
      output.append('call __PSTORE32')
      REQUIRES.add('pstore32.asm')
  
      return output
docs: Stores 2nd parameter at stack pointer (SP) + X, being
      X 1st parameter.
  
      1st operand must be a SIGNED integer.