[BBC-Micro] RFC: BBC Ethernet API

Sprow info at sprow.co.uk
Thu Jul 23 20:13:48 BST 2009


In article <1248355724.12548.38.camel at mill.internal.reciva.com>,
   Phil Blundell <philb at gnu.org> wrote:
> On Thu, 2009-07-23 at 13:04 +0100, Steve Inglis wrote:
> > On 23 Jul 2009, at 01:50, Jonathan Graham Harston wrote:

[snip]

> > It may well be worth the time now to increase the size of the address  
> > space from/to if we are not going to limit the API to ipv4.
>
> The way this works in BSD sockets (and in RISC OS I think) is that the
> value at X%!20 is a pointer to a block of memory containing the actual
> address (and the value at X%!24 is the length of that block).

Correct, and thus IPv6 capable.
So, you might edit to:

> > > On entry: A%=192, X%=control block, Y%=X%DIV256
> > >          X%?0  = OSWORD send block length
> > >          X%?1  = OSWORD receive block length
> > >          X%?2  = command - same as RISC OS SWI Socket_ command number
> > >          X%?3  = 0
> > >          X%!4  = socket
> > >          X%!8  = address for data
> > >          X%!12 = length
> > >          X%!16 = flags
> > >          X%!20 = address of a block containing the IP address
> > >          X%!24 = length of IP address block

If we're whole heartedly ripping off the Socket_ SWI from RISC OS, should
the Internet event also be considered? Event 19,
Sprow.




More information about the bbc-micro mailing list