As announced as being in the prototype stage last month, I am now pleased to announce that the Trinity Ethernet Interface is now available! The concept of Trinity it to bring ethernet to your Sam with the goal of getting the Sam onto the Internet. The interface consists of three main sections - hence the name Trinity.
The first and most important part is the ethernet controller, a self-contained chip to deal with the communication side of things. The second section is a 128K EEPROM which is used for storing settings for the ethernet configuration and for ethernet applications. (This was originally just 8K as announced in the last Sam Revival, but having kicked the idea about a bit with other people I upped it to 128K). The third section is a card slot for MMC and SD flash memory cards to expand the memory of the interface, as well as being another means of mass storage for your Sam files. And all three peripherals are linked to the Sam via a microcontroller. I've got several Trinity interfaces ready built up in stock, and they are priced at GBP 69.99 + postage. There's a photo of the final version now up on my website. Now of course, hardware is just an expensive paperweight without any software to use it and that's coming along in leaps and bounds thanks to the talents of Adrian Brown and Simon Owen. They received the first two Trinity interfaces off the production line (well, my soldering bench!) about a fortnight ago. Thanks to a small mess up by the board manufacturers they only sent me 2 PCBs instead of a larger quantity but that was enough to get the two needed for Simon and Adrian. They were sent out along with a pile of my documentation on the hardware, datasheets and some test programs I'd written, and then there was another delay thanks to the mailstrike which delayed Adrian's by about 5 days... Anyway, as soon as they had arrived they were programming at an alarming rate! Adrian has been porting the uIP TCP/IP stack - converting the C code into Z80 by hand for optimised code instead of just cross compiling, while Simon had been working on the device driver to control the ethernet controller on Trinity, first within a day or two it was just detecting incoming packets and printing the raw data on the screen, then he continued to make it into a useful set of routines to initiliase the ethernet controller and to receive and transmit packets. After about a week of furious coding, last weekend saw Adrian's and Simon's parts being linked together and Sam answered a PING... our Sam's were alive on the net! Oh the fun of repeatedly PINGing the Sams to get the responces back, it's a small step but it marks the start of Sam's journey onto the internet! Here's Adrian to give his view on what he thinks of the Trinity, and where he is with the coding.... Adrian: "The Trinity hardware is another very nice looking piece of kit from Quazar, with the usual top level of support with any questions you may have. I was keen to get started. I plugged it in, put a network cable into it and started a few tools Quazar had sent over. It seemed to be working nicely. The main thing I wanted to get started on was the network side of things. Unfortunately, unlike your PC, a network cable and hardware into a machine doesnt mean you can instantly start using the net. With a few simple tests I could see information coming in via the network cable I needed to write a TCP/IP stack to allow myself and others write programs that use the network, such as simple file transfers and even a web browser on the Sam. I spoke with Simon Owen, Frode and Colin regarding this and we decided to port a lightweight TCP/IP stack called uIP. I started work on the packet handling while Simon started work on the Trinity interface code. We soon had it working so the Sam was able to listen and reply to ICMP ping commands, TCP and UDP packets are almost done then we can start work on the fun applications. Probably the main application I would like to get written and working using Trinity is a cross platform development system allowing me to write and build programs and data on my PC and send this across to the Sam via the network to run. Also having a debugger on the PC linked to the Sam would be great. I would certainly improve the speed of developlment of Sam titles for me. With Trinity, soon sam will have a wide range of network products such as IRC clients, MSN clients and web browsers. Its great to see people still putting a lot of time and energy into Sam products." Thanks Adrian, you summed up in a nutshell - once his TCP/IP stack is fully complete with UDP and TCP packet handling, it should be relatively easy to start writing applications to use the internet. E-mail, FTP, MSN Messenger, IRC, even a simple text based web browser are all on the 'To-Do' list! I'm just finishing of updating the technical documentation for the hardware side of Trinity. I put in a few extra routines were put into the firmware last week and the updates have been sent to Simon and Adrian - faster data transfer, LED twinkling, and some other control functions for giving a few coding shortcuts, and next for me is sorting out documentation for using the onboard EEPROM and accompanying source code for routines to utilise that - as it'll have a system of allocating and storing data in 1K chunks so applications can save their settings there, as well as holding the general internet settings. I know Adrian is planning to make a start on documenting his port of uIP once it's completed. There'll certainly be a wealth of info and source code for anyone who is thinking about programming applications to use it! All the best, Colin ===== Quazar : Hardware, Software, Spares and Repairs for the Sam Coupe 1995-2007 - Celebrating 12 Years of developing for the Sam Coupe Website: http://www.samcoupe.com/