Giter Club home page Giter Club logo

plip2slip's Introduction

plip2slip
=========

"Build a PLIP-to-SLIP HW Bridge device using an Arduino board for speeding up
Internet on a stock Amiga 500."

Copyright (C) 2011 Christian Vogelgsang <[email protected]>

Released under the GNU Public License V2 (see COPYING for details)

Introduction
------------

An Amiga 500 has no special ethernet or other network ports for connecting to
the Internet. Typically a SLIP (serial line internet protocol) device is used
to transfer all IP packets via the serial RS 232 interface to another computer
with fast ethernet connection. With the on-board serial port a maximum speed
of 9600 Baud (~ 1 KiB/s) could be achieved running Amiga OS.

Faster speeds could be achieved by using a PLIP (parallel port IP) device that
uses the parallel port to transfer IP packets to another host. Since the Amiga
parallel port is fully bi-directional you can use a half-duplex protocol and
then transfer an IP packet byte-by-byte over the port. This is done in the
magPLIP driver available on Aminet[1]. Unfortunately, this approach requires
an Amiga or another Computer with a fully bi-directional port on the peer side.
With this parallel approach you can achieve up to 15-20 KiB/s transfer speeds.

The idea in this project is to use the custom I/O ports of an AVR microcontroller
board (here an Arduino 2009) and implement the parallel port there. The mcu
implements the magPLIP protocol and can then receive and send packets to/from
the Amiga.

On the other hand, the Arduino uses an FTDI 232 USB-to-Serial bridge to allow
fast serial data transfers. On a 16 MHz AVR you can use serial rates up to 500
KiBit/s (~ 55 KiB/s). With proper RTS/CTS flow control the AVR can handle
these data rates easily.

The "plip2slip" firmware developed in this project now bridges these two
ports. A PC is connected with a fast serial link to the AVR and the Amiga is
connected with its parallel port. As a result the amiga can achieve full PLIP
speed while the PC runs a fast SLIP link.

On the PC I use Linux with a patched slattach tool to support the fast serial
rates. The Amiga magPLIP device is slightly patched to better support the AVR.
All patches are available in this project.

The data flow is as follows:

Internet <->   PC   <--SLIP-->  Arduino  <--PLIP-->  Amiga 500
              Linux            plip2slip            magPLIP + AmiTCP

[1] http://aminet.net/package/comm/net/magPLIP38.1


plip2slip Documentation
-----------------------

 doc/hardware.txt               How to build the device hardware
 doc/terminal.txt               How to setup a serial terminal for command mode
 contrib/magplip/README         How to install the AMIGA network module
 contrib/slattach/README        How to patch and setup SLIP on Linux

plip2slip's People

Contributors

cnvogelg avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.