<html><head><style type="text/css"><!-- DIV {margin:0px;} --></style></head><body><div style="font-family:arial, helvetica, sans-serif;font-size:10pt"><DIV></DIV>
<DIV>1. a) Can a program in the Coprocessor (client/ parasite) transfer data from the host to the parasite, or does the program have to reside in the host? The examples in the Acorn Support Group Application Notes and other places I have read always give the example program as existing in the host....</DIV>
<DIV><FONT face="Times New Roman">
<P align=left> </P>
<P align=left>b) How would the example program from the ACorn Support Group Application Notes be changed to reside in the parasite and transfer H-->P??</P>
<P align=left> </P><FONT face="Times New Roman">
<P align=left>CLAIM LDAIM &CO+&10 ; Say my ID is 16</P>
<P align=left>JSR &0406 ; Claim the Tube</P>
<P align=left>BCC CLAIM</P>
<P align=left>LDXIM &00 ; Lo byte of &3000</P>
<P align=left>LDYIM &30 ; Hi byte of &3000</P>
<P align=left>LDAIM 6 ; P -> H, 256 bytes</P>
<P align=left>JSR &0406</P>
<P align=left>JSR ANRTS ; 6 uS delay</P>
<P align=left>JSR ANRTS ; 12 uS delay</P>
<P align=left>JSR ANRTS ; 18 uS delay</P>
<P align=left>LDYIM 0 ; so the initial delay in 19 uS</P>
<P align=left>LOOP LDA &FEE5 ; Get it from the port ( 2 uS = 2)</P>
<P align=left>STAIY &80 ; Put the data byte (+3 uS = 5)</P>
<P align=left>NOP ; (+1 uS = 6)</P>
<P align=left>NOP ; (+1 uS = 7)</P>
<P align=left>NOP ; (+1 uS = 8)</P>
<P align=left>INY ; (+1 uS = 9)</P>
<P align=left>BNE LOOP ; Next data byte (+1.5 uS = 10.5 uS/byte)</P>
<P align=left>LDAIM &80+&10 ; Release code + My ID</P>
<P align=left>JSR &0406 ; Release the Tube</P>
<P> </P>
<P>2. These same documents I have read also mention that BPUT for large amounts of data transfer.....</P>
<P> </P><FONT face="Times New Roman">
<P align=left>"Moving large quantities of data: To move large quantities of data, for example a complete screen update,</P>
<P align=left>the fast Tube BPUT OSBYTE call is used. Prior to the call, some machine code is placed in the I/O</P>
<P align=left>processor ready to handle the data as it arrives across the Tube from the co-processor. When data is ready</P>
<P align=left>to be moved across the Tube, an OSBYTE &9D (157) is made to initiate the users code to in the I/O</P>
<P align=left>processor. The data is moved through Tube register 1 and handled by the user code on the other side. Note</P>
<P align=left>that all OSBYTE calls are vectored through the BYTEV vector at &20A,B in the I/O processor, and this</P>
<P align=left>vector has to be intercepted to detect an OSBYTE &9D call and pick up the X and Y parameters to be used</P>
<P align=left>by the user's code. The advantage of OSBYTE &9D over other OSBYTE calls is that after the X and Y</P>
<P align=left>parameters have been sent across the Tube, control is immediately returned to the parasite. no parameters</P>
<P>are returned."</P></FONT></FONT></FONT></DIV>
<DIV> <BR>Could anyone please elaborate and possibly give small example program?</DIV>
<DIV> </DIV>
<DIV>Thanks</DIV>
<DIV> </DIV>
<DIV>Peter</DIV></div><br>
<hr size=1>
Yahoo!7 Mail has just got even bigger and better with unlimited storage on all webmail accounts. <a href="http://au.docs.yahoo.com/mail/unlimitedstorage.html" target=_blank>Find out more</a>.</body></html>