Latest News
!System updates

Development tools
C/C++ Tools

Writing 32-bit code
32-bit introduction
32-bit overview
32-bit technical
Memory issues
Developer tools
Paul Skirrow's Guide (PDF)
Download area

32-bit APIs
API changes
CallASWI
FileCore

RISC OS 5
Overview
BBC BASIC
CDFS driver
OS_ClaimDeviceVector behaviour
CDFS
Draw clipping
GraphicsV
HAL
Internet
UTF8 & Japanese support
International IME support
MIMEMap
Module PostInit/Final
PCI Manager
PDumper
Podules
Resource allocation
SCSI
Service Calls
UCS fonts
USB
WIMP API Changes
WIMP Flags

IYONIX pc
DDR memory
Help system
Keyboard layout
Miscellaneous
PCI slots

Opportunities

Iyonix Ltd
IYONIX home page
Contact details

   

Internet

Introduction

The IYONIX pc has a 10/100/1000Mbit/s Ethernet Interface built in and an RJ45 connector on the back panel. RISC OS 5.01 is currently being supplied with Version 5 of the Internet stack is in ROM and this includes PPP and EtherK modules.

There has been some confusion about error numbers returned by Internet calls in RISC OS 5 although the behaviour is unchanged from RISC OS 3.50:

Error numbers used by DCI 4

The Internet module provided with RISC OS 5 uses the same version of the DCI (Device Control Interface) protocol that was introduced in RISC OS 3.50. Programmers using the DCI 4 version of the Internet module should note that the error codes returned by SockLib calls are different to those returned by the corresponding Socket_... SWIs.

When calling Internet SockLib routines any errors are normally indicated by a return value of -1 with the Internet error number in the errno global variable and error numbers are in the range 0 to 87 as documented under ERRNO in the RISC OS Programmer's Reference Manual (PRM) volume 5a (page 5a-380 of the printed copy).

However, when calling Internet routines as using the Socket_... SWI any errors are returned using the conventional RISC OS mechanism, i.e. the V (overflow) flag is set and R0 points to an error block. In this instance the error number in the error block is &20E00 greater than the Internet error number.

This is in accordance with the error mechanism described in the section The Internet module - SWI Calls in the PRM (page 5a-463 of the printed copy).

For example, the CONNECT call might return &24 in errno to indicate that a non-blocking connection is in progress, but the equivalent SWI call to Socket_Connect under the same circumstances would return &20E24.

© 2006 IYONIX Ltd 32-bit RISC OS