Cybernoid Posted April 9, 2010 Share Posted April 9, 2010 Hi All, I am back on AtariAge after a small hiatus. I have been sitting on the Ethernet Cart and Contiki port project for some time now. Originally, I wanted to produce the ethernet cart boards and provide the software and make a little bit of extra $... but I have decided that this is just plain selfish. So, what I want to do is release the Atari Port of the Contiki software into the open software domain and allow anyone to download the executables and the source code. I can also provide instructions for making the cart. I would like to avoid just handing the source code over to one other person for fear of that person just sitting on it and not doing anything with it like I have for years. (Sorry guys!) Anyway, what I am looking for is this: Someone to host a sourceforge (or some other source-code/revision-control site) site where I can upload the source code and current executables. Someone to take the instructions on how to build the PC board and actually build a PC board or full carts. The instructions are simple, but I would like to find someone who can produce boards for those who don't want to weld a soldering iron... I am not completely leaving the project and will be around to help, but I do not think that I have time to HEAD a project like this. The current status of the project is that a couple of prototype boards have worked, the simple telnet application works (See the youtube video in my signature below), and the telnet daemon to telnet into an Atari Server works. Some other code for web browser, email, ftp, vnc, etc could all be updated easily if the code can be squeezed down in size or if someone with better knowledge of running under the OS ROM or in extended memory banks could get that to work. The code is there, and it compiles. Everything other than telnet just does not fit into the Atari memory yet. Well, with that, I would also like to say that the Atari Community here and elsewhere online RULES! I have had some great fun making applications, games and some hardware for the our beloved Atari 8bit. If you cannot help with this project, if you have liked any of my previous Atari 8-bit projects (Click, Blackbox, JellyBeans, Color ANSI Terminal, 6-bit PCM player, Atari Terminal Server for the PC, bmp2atascii.pl or detokenize.pl), and IF YOU WANT TO, please send me a donation here: Donate Now! You certainly do not have to send any donations, but just if you want to. I have put many hours into these projects and did it for the fun not the money. And, I really would rather give out the Contiki source code rather than no one use it, anyway... Let me know if you can help... Thanks, Chris ps - Here are some informational links: Where to buy a cs8900a board for around $35: http://microcontroll...roducts_id=1202 http://www.olimex.co.../cs8900a-h.html Contiki main website: http://www.sics.se/contiki/ Quote Link to comment Share on other sites More sharing options...
Kernal Posted April 9, 2010 Share Posted April 9, 2010 I would like to build this into my 65xe or my 800xl.. ill get the board if u will help with the instructions and the contiki! also where can i get a copy of the atari port of contiki.. can u post it here. Quote Link to comment Share on other sites More sharing options...
Cybernoid Posted April 9, 2010 Author Share Posted April 9, 2010 (edited) Hi Kernal. Sure thing. Here is the latest Telnet application. I'll post more software and hardware instructions this weekend on my site. For now, this defaults the Atari IP address to 192.168.111.128, so your router will have to handle that IP address. The hardware will mostly require the cs8900a board, an LS138 dip and some ribbon cable...more details to come. contiki_21.zip Edited April 9, 2010 by Cybernoid Quote Link to comment Share on other sites More sharing options...
Shawn Jefferson Posted April 10, 2010 Share Posted April 10, 2010 (edited) Chris, Are you using the 2.x Contiki for this port, or the old 1.x version? Judging from the file name, I guess 2.x ? Can you post the source code here? Edited April 10, 2010 by Shawn Jefferson Quote Link to comment Share on other sites More sharing options...
Cybernoid Posted April 10, 2010 Author Share Posted April 10, 2010 I am using Contiki 2.1. I think 2.4 is now available, so I will move to that eventually. I will post the source code on the new sourceforge page thanks to danwinslow. Shawn, do you want to join the project? Quote Link to comment Share on other sites More sharing options...
doctorclu Posted April 10, 2010 Share Posted April 10, 2010 I am using Contiki 2.1. I think 2.4 is now available, so I will move to that eventually. I will post the source code on the new sourceforge page thanks to danwinslow. Shawn, do you want to join the project? Hey Cybernoid, great to see you working on this! Have to give this a shot soon. Quote Link to comment Share on other sites More sharing options...
danwinslow Posted April 10, 2010 Share Posted April 10, 2010 could all be updated easily if the code can be squeezed down in size or if someone with better knowledge of running under the OS ROM or in extended memory banks could get that to work. The code is there, and it compiles. Everything other than telnet just does not fit into the Atari memory yet. I have a pretty useable way to write banked code in C...part of the motivation originally was to try and fit a TCP stack ( uIP ) into the atari and still have application space left over. There's some examples in the sourceforge lib...but I need to refresh it the code's been improved since I posted that lib. Quote Link to comment Share on other sites More sharing options...
Shawn Jefferson Posted April 10, 2010 Share Posted April 10, 2010 I am using Contiki 2.1. I think 2.4 is now available, so I will move to that eventually. I will post the source code on the new sourceforge page thanks to danwinslow. Shawn, do you want to join the project? I am interested in it, for sure! I looked at Contiki in the past, and took at look at the code again yesterday. I think that one could set it up so that each "process" runs in a seperate bank (extended memory, or cartridge). The uIP stack, CTK and the core bits would need to be in main RAM. From what I could see the call_process function is called to passed every event to the process. If you could extend the process structure to maintain the bank that the process exists in, it should work. Maybe something like the MyIDE flash cart from Atarimax could be developed, a Contiki cart, with flash and the CS ethernet hardware too. Quote Link to comment Share on other sites More sharing options...
+Philsan Posted April 10, 2010 Share Posted April 10, 2010 In the past I appreciated Contiki and a browser running on a C64 so I definitely would buy the hardware to make this happen on A8. I wonder if Flazzjazzcat could insert this software into his new GUI. Quote Link to comment Share on other sites More sharing options...
danwinslow Posted April 10, 2010 Share Posted April 10, 2010 I am using Contiki 2.1. I think 2.4 is now available, so I will move to that eventually. I will post the source code on the new sourceforge page thanks to danwinslow. Shawn, do you want to join the project? I am interested in it, for sure! I looked at Contiki in the past, and took at look at the code again yesterday. I think that one could set it up so that each "process" runs in a seperate bank (extended memory, or cartridge). The uIP stack, CTK and the core bits would need to be in main RAM. From what I could see the call_process function is called to passed every event to the process. If you could extend the process structure to maintain the bank that the process exists in, it should work. Maybe something like the MyIDE flash cart from Atarimax could be developed, a Contiki cart, with flash and the CS ethernet hardware too. In my experience banking sections is going to take more re-arranging than that...there's significant problems with cross-bank calls and global/local variables etc. You need to set up a marshalling layer in non-banked memory, and/or carefully restrict what the code in the banks can call. Quote Link to comment Share on other sites More sharing options...
Shawn Jefferson Posted April 10, 2010 Share Posted April 10, 2010 (edited) If you can keep the runtime, uip, core ctk and DATA segment in low memory you should be ok. ??? I've got one project that does something very similiar, and as long as you don't do any cross-bank calls (or take an approach like you suggest) you are ok. Does a Contiki "process" call another Contiki "process" directly, or only via events? Edited April 10, 2010 by Shawn Jefferson Quote Link to comment Share on other sites More sharing options...
Cybernoid Posted April 10, 2010 Author Share Posted April 10, 2010 I have messed with the Contiki code and did manage to get the telnet application to run with extended banks. The problem that I was running into was that the contiki core itself was too big for some applications to run from low memory. For the web browser, more code from the core was needed. I was in the process of looking into running the contiki core in low mem and under the OS ROM and have different application code in extended banks... I am certain there is a way to work it out, but it is complicated for sure, but we will get there some how... I have uploaded the source code to sourceforge, and it can be found here: http://ataricc65lib.svn.sourceforge.net/viewvc/ataricc65lib/contiki-2.1/ I added some code in files called extmem.[ch] (I think, if memory serves me). I modified the Contiki protothread calls to switch memory banks from thread to thread so that the main contiki thread would run from low mem and the application threads from different extended banks. It is currently disabled in the current source, but I think I will make a branch in the SVN tree to create an extended bank code set. Shawn (and any else with C or assembly knowledge and a willingness to help) send me a PM, so I can add you to the list of developers on sourceforge. Quote Link to comment Share on other sites More sharing options...
Cybernoid Posted April 10, 2010 Author Share Posted April 10, 2010 If you can keep the runtime, uip, core ctk and DATA segment in low memory you should be ok. ??? I've got one project that does something very similiar, and as long as you don't do any cross-bank calls (or take an approach like you suggest) you are ok. Does a Contiki "process" call another Contiki "process" directly, or only via events? They can be called either way... directly, via events (timer, key, ethernet ready, etc) Quote Link to comment Share on other sites More sharing options...
Cybernoid Posted April 10, 2010 Author Share Posted April 10, 2010 In the past I appreciated Contiki and a browser running on a C64 so I definitely would buy the hardware to make this happen on A8. I wonder if Flazzjazzcat could insert this software into his new GUI. Hmmm, I had talked with Flazzjazzcat a while ago and borrowed his code for running under the OS ROM... Quote Link to comment Share on other sites More sharing options...
danwinslow Posted April 10, 2010 Share Posted April 10, 2010 I have messed with the Contiki code and did manage to get the telnet application to run with extended banks. The problem that I was running into was that the contiki core itself was too big for some applications to run from low memory. For the web browser, more code from the core was needed. I was in the process of looking into running the contiki core in low mem and under the OS ROM and have different application code in extended banks... I am certain there is a way to work it out, but it is complicated for sure, but we will get there some how... I have uploaded the source code to sourceforge, and it can be found here: http://ataricc65lib.svn.sourceforge.net/viewvc/ataricc65lib/contiki-2.1/ I added some code in files called extmem.[ch] (I think, if memory serves me). I modified the Contiki protothread calls to switch memory banks from thread to thread so that the main contiki thread would run from low mem and the application threads from different extended banks. It is currently disabled in the current source, but I think I will make a branch in the SVN tree to create an extended bank code set. Shawn (and any else with C or assembly knowledge and a willingness to help) send me a PM, so I can add you to the list of developers on sourceforge. Yep, I think its doable too, but will take some careful segmenting of code and probably a marshalling layer. Quote Link to comment Share on other sites More sharing options...
Cybernoid Posted April 10, 2010 Author Share Posted April 10, 2010 I definitely have to thank everyone for this!!! In less than 2 days, we already have a webpage (thanks to beta-tester, hardware guy and now webmaster, puppetmark), sourceforge thanks to danwinslow, and many people interested in helping with the source code and with building boards. If that is not community support, I do not know what is. Way to go y'all! Check out the new webpage: http://www.atari8ethernet.com More to show up on that site, I am sure, so keep an eye out... Thanks again! Chris Quote Link to comment Share on other sites More sharing options...
flashjazzcat Posted April 11, 2010 Share Posted April 11, 2010 Count me in - if I can help somehow. I'm just gearing up for a full-on attempt at the GUI (having a break from The Last Word for a while before starting the cart version), and this Contiki thingy looks excellent... just downloading the sources. Quote Link to comment Share on other sites More sharing options...
spookt Posted April 11, 2010 Share Posted April 11, 2010 (edited) Well I can handle a soldering iron and I'd really love to see this get off the ground, so if I can get hold of a cs8900a dev board after payday I'll have a go at knocking up an interface to help with testing. The cart interface on the website looks pretty simple so shouldn't be too much work. Edited April 11, 2010 by spookt Quote Link to comment Share on other sites More sharing options...
Cybernoid Posted April 11, 2010 Author Share Posted April 11, 2010 Sounds good spookt. The more testers the merrier! Flashjazzcat, glad to have your help and expertise on board! Quote Link to comment Share on other sites More sharing options...
Velcro_SP Posted April 11, 2010 Share Posted April 11, 2010 Great to see that page. Rooting for all you brilliant coders to come up with something that makes it easy to put my 800 on the Internet! Quote Link to comment Share on other sites More sharing options...
Mr.Amiga500 Posted April 11, 2010 Share Posted April 11, 2010 Great to see that page. Rooting for all you brilliant coders to come up with something that makes it easy to put my 800 on the Internet! I'd love to see an 800 on the internet. Imagine a 1979 computer on the internet! What is the oldest home computer anybody ever got "on the internet" (not just connecting, but doing something "useful")? Is it 1982(83?) C64? Did anybody get an Apple II on the internet? I used a 1987 Amiga 500 as my main internet computer for 6 years. A 1985 Amiga 1000 can also "easily" get on the internet. I'm interested to see "how low we can go". Quote Link to comment Share on other sites More sharing options...
Cebus Capucinis Posted April 11, 2010 Share Posted April 11, 2010 Quote Link to comment Share on other sites More sharing options...
Mr.Amiga500 Posted April 11, 2010 Share Posted April 11, 2010 You got one of those things on the internet? (...but how could you tell if you had ) Quote Link to comment Share on other sites More sharing options...
Cebus Capucinis Posted April 11, 2010 Share Posted April 11, 2010 I am fluent in binary and can instantly translate long sequences into images. Altair 8800 porn is the best porn. Quote Link to comment Share on other sites More sharing options...
Mr.Amiga500 Posted April 11, 2010 Share Posted April 11, 2010 I am fluent in binary and can instantly translate long sequences into images. Altair 8800 porn is the best porn. Impressive. I was about to make a complex elaborate joke involving blinking LEDs, porn, binary errors and three-legged camel, but I decided just to let it go. 1 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.