On 08/06/2018 14:29, Jan Bredenbeek via Ql-Users wrote:
Sure, but this is not the whole story. For example when I ran your
code just now in a daughter SBASIC, with no free memory, it returns
ok, but peeking result I get an err.ipar!
Depending on circumstances, there are a number of possible paths this
routine can take. From my own investigations (I wish Id written up
what I did, not only the conclusion!) in some cases this routine
forgets to set error code on a successful return.
On 8 June 2018 at 13:26, pjwitte via Ql-Users <email@example.com>
It appears that, on an error, QDOS doesnt return here at all!
Under SMSQ/E it may return an error (IMEM), but the error code is not
always set! That implies that you could get a wrong result, depending on
what was in D0 before the call.
I've tested this earlier using this code on SMSQmulator:
result dc.l 0
When loading this into RESPR and then doing CALL base+4 I get an
'insufficient memory' error. But PEEK_L(base) returns 0 so the code never
got to the point where it stores the result.
QL-Users Mailing List