Today I released the newest edition of the Marina IP stack for Apple II computers. This edition adds DNS name resolution, as well as several other bug fixes and improvements. Domain name resolution means that users can use human-readable names such as instead of hard-to-remember IP addresses like to access resources on the Internet.

The Marina IP stack is the newest networking implementation for the Apple II series, designed to have better RFC-compliance than existing
implementations. Written in 6502 assembly language, it is compatible with all Apple II models that accept the Uthernet card in slot 3.

For more information, and links to download and documentation, visit the official Marina web site:

Here is the change log:

  • Added checks on destination address for incoming datagrams
  • Datagrams not addressed to our IP, or to broadcast, or DHCP replies, are dropped.
  • Broadcast flag is set for incoming broadcast datagrams
  • IP datagrams with head longer than 20 bytes are checksummed and accepted, but options are not processed
  • Fixed checksum routine to work with IP headers longer than 20 bytes
  • Fixed the check for UDP datagrams sent with no checksum (offset was off by one)
  • Added NETBCAST for storing network broadcast address, e.g. 169.254.255 or
  • Incoming check for broadcasts now looks for “all ones” or the network broadcast address
  • Updated IPSEND to use the new check on NETBCAST
  • Wrote IPTOHEX subroutine to convert dotted decimal addresses to 4 hex digits
  • ARPTEST and UDPSENDTEST now take a user-supplied IP address
  • Bug fix: datagrams with Link-Local destination addresses were being forwarded to router when a routable address was configured
  • Intitial DNS resolver implementation that queries for A records
  • IPSEND now uses a retry counter for ARP requests. It will not fail if the MAC address was not in the ARP table
  • IPSEND forces TTL to 255 when destination is a Link-Local address
  • Increased size of ARP table from 4 to 5
  • Display of incoming IP datagrams shows source address
  • Renamed UTHERDEMO file to MARINA