[Coco] Can anyone verify an error in the NitrOS9 tech manual?

Gregory Law glaw at live.com
Sat May 20 10:48:23 EDT 2017


I went back to the Microware OS-9 System Programmer's Manual and it 
states the correct registers are X for the MS 16 bits and U for the LS 
16 bits. This is corrected on the SourceForge wiki.

On 5/20/2017 7:36:44 AM, "Dave Philipsen" <dave at davebiz.com> wrote:

>I think I have found what appears to be an error in the NitrOS9 
>Technical Manual on page 145.  This page explains the use of the F$Seek 
>system call which repositions a file pointer.  The entry conditions of 
>the system call in the original OS9 Level 2 Technical Reference are:
>
>A = path number
>X = MS 16 bits of desired file position
>U = LS 16 bits of desired file position
>
>The reference to using the user stack pointer in this case seems 
>illogical since the U pointer is used for a pointer to the user memory 
>area in an OS9 program and you normally would not want to disrupt it.  
>Logically, one would think that this is a typo and the 'U' should be 
>replaced with 'Y' above.
>
>And if you read the NitrOS9 Technical manual on page 145 it appears 
>that this 'typo' has been corrected as the entry conditions read:
>
>A = path number
>X = MS 16 bits of desired file position
>Y = LS 16 bits of desired file position
>
>However, I have found that indeed the correct usage is as described in 
>the original OS9 reference using the user stack pointer, U.  I believe 
>that there is no 'typo' in the original manual and that the NitrOS9 
>manual is wrong.  Therefore, in most cases, the programmer must save 
>the value in "U", make the system call, then restore the value in "U".
>
>Can anyone verify this?
>
>
>Dave
>
>
>-- Coco mailing list
>Coco at maltedmedia.com
>https://pairlist5.pair.net/mailman/listinfo/coco



More information about the Coco mailing list