ElectricLab Posted February 4, 2016 Share Posted February 4, 2016 I'll have to bring a couple of systems to demo, which is fine by me. I think if wa can have a mini swap meet that would be cool. I certainly have some extra stuff and some wants. Quote Link to comment Share on other sites More sharing options...
+jedimatt42 Posted February 4, 2016 Share Posted February 4, 2016 Omega, Sorry about that (That'll teach me to make entries on my iPhone on AtariAge ) To view somerandomurl.com on the TI using this program, you'd enter: www.myti99.com/xlat/?somerandomurl.com I had omitted the question mark which is necessary at this time. I could modify the web server to work without it, but I didn't take the time before. As for the 'm.' in the Reddit example, that's a pseudo-standard host name that I've seen websites use to indicate a mobile site. Some sites will do device/screen resolution detection and redirect small screens to a mobile-oriented site hosted on m.whateverurl.com. It's certainly not a true standard and not a guaranteed thing at this time. This is cool ElectricLab, I was going to ask if anyone thought a translation proxy would be useful I just received my UDS 10 in the mail today, so I'll be getting on board and trying all this out 3 Quote Link to comment Share on other sites More sharing options...
Omega-TI Posted February 4, 2016 Author Share Posted February 4, 2016 This is cool ElectricLab, I was going to ask if anyone through a translation proxy would be useful I just received my UDS 10 in the mail today, so I'll be getting on board and trying all this out EXCELLENT! Glad to have you on board! Stuart's browser is sure coming into it's own now with all these these new applications and stuff. I wonder who'll make the next big application? Speaking of which, I better turn on the TI and see if it's my move in Internet Chess! I have three games in progress, but I think I'm about to be handed my posterior in one of them. Quote Link to comment Share on other sites More sharing options...
ElectricLab Posted February 4, 2016 Share Posted February 4, 2016 This is cool ElectricLab, I was going to ask if anyone through a translation proxy would be useful I just received my UDS 10 in the mail today, so I'll be getting on board and trying all this out Awesome! That translation program is one I threw together quickly, and is just a collection of regexes. Are you a developer? 1 Quote Link to comment Share on other sites More sharing options...
Omega-TI Posted February 4, 2016 Author Share Posted February 4, 2016 This is cool ElectricLab, I was going to ask if anyone through a translation proxy would be useful Awesome! That translation program is one I threw together quickly, and is just a collection of regexes. Are you a developer? Cool! I can't wait to see what you guy's work up. You'll both be at Fest West, so it's gonna be a BLAST! Quote Link to comment Share on other sites More sharing options...
+jedimatt42 Posted February 4, 2016 Share Posted February 4, 2016 Awesome! That translation program is one I threw together quickly, and is just a collection of regexes. Are you a developer? I am a developer, thanks to my early exposure to the TI. And I am practically your neighbor. ( unincorporated Washington County near the edges of Beaverton and Hillsboro. ) The filter is cool. The hint to aim at mobile sites is a good one, as they frequently reduce the noise. As popular as 'Bootstrap' is, it might even be possible to transform the layout. I was also thinking about adapting a static site generator like Jbake, to include STUARTML or whatever it is called automatically when generating sites from markdown. Just ideas at this point. I must start soldering a serial cable together for my UDS, so I can try some of this out. ( Someone must have noticed this already, but the UDS-10 mac-address always has '4a' in it. 00-20-4a-___, a nice way to identify the IP address from the home router ) -M@ 2 Quote Link to comment Share on other sites More sharing options...
ElectricLab Posted February 4, 2016 Share Posted February 4, 2016 I am a developer, thanks to my early exposure to the TI. And I am practically your neighbor. ( unincorporated Washington County near the edges of Beaverton and Hillsboro. ) The filter is cool. The hint to aim at mobile sites is a good one, as they frequently reduce the noise. As popular as 'Bootstrap' is, it might even be possible to transform the layout. I was also thinking about adapting a static site generator like Jbake, to include STUARTML or whatever it is called automatically when generating sites from markdown. Just ideas at this point. I must start soldering a serial cable together for my UDS, so I can try some of this out. -M@ That's cool. I live and work to the Hillsboro Airport. We'll have to meet up for lunch one of these days. By the way, I took the chess game down for a bit while I fix the 'check/checkmate' bug. It turns out chess logic is harder than I initially thought Anyway I took the page down because 500 errors look especially awful on the small TI screen. Quote Link to comment Share on other sites More sharing options...
Omega-TI Posted February 5, 2016 Author Share Posted February 5, 2016 ( Someone must have noticed this already, but the UDS-10 mac-address always has '4a' in it. 00-20-4a-___, a nice way to identify the IP address from the home router ) -M@ Well I'll be, I had not noticed... it DOES have a 4a in the MAC address! 2 Quote Link to comment Share on other sites More sharing options...
ElectricLab Posted February 6, 2016 Share Posted February 6, 2016 Well I'll be, I had not noticed... it DOES have a 4a in the MAC address! Well that's one of the coolest coincidences ever Hey jedimatt42 - I was wondering if you had any luck with that cable? I have the chess game working really well now. I am scheming on a couple of new game ideas, and it would be cool to collaborate on one. Quote Link to comment Share on other sites More sharing options...
Mika73 Posted February 6, 2016 Share Posted February 6, 2016 Is there Ethernet adapter for TI99/4A that could be used with web browser? Also IRC client would be very nice. Sent from my iPhone using Tapatalk Quote Link to comment Share on other sites More sharing options...
ElectricLab Posted February 6, 2016 Share Posted February 6, 2016 Is there Ethernet adapter for TI99/4A that could be used with web browser? Also IRC client would be very nice. Sent from my iPhone using Tapatalk Mika73, Yes there is. A handful of us are using the Lantronix UDS-10 devices. Stuart Conner has created a web browser that uses this device. All you need is: A TI with a serial interface, either a PEB or NanoPEB (The sidecar interface would probably work also), A Lantronix UDS-10 box (usually readily available on eBay), an Editor/Assembler cartridge and a copy of Stuart Conner's browser which he made available here: http://www.avjd51.dsl.pipex.com/ti/ti.htm#internet_web_browser I have made a chess game that allows for multiplayer matches using this browser, and you can play it on your TI at: myti99.com (You first have to register using a modern computer on myti99.com) I should add you might have to make a custom-made cable. There are plenty of people here to help you along the way. Cheers, Corey. 1 Quote Link to comment Share on other sites More sharing options...
+mizapf Posted February 6, 2016 Share Posted February 6, 2016 Yes, but to be precise, the UDS is not an Ethernet adapter as you would expect in a PC, but it is a serial/TCP bridge. Quote Link to comment Share on other sites More sharing options...
+jedimatt42 Posted February 6, 2016 Share Posted February 6, 2016 Well that's one of the coolest coincidences ever Hey jedimatt42 - I was wondering if you had any luck with that cable? I have the chess game working really well now. I am scheming on a couple of new game ideas, and it would be cool to collaborate on one. I wired it up wrong Wednesday. Had to work too late Thursday night. But I finally rebuilt the cable and got the UDS and TI talking last night, using TIMXT. Today I'll make a browser cartridge eprom, and then go from there. Are you partial to a particular software stack? Something linux friendly? Most of my experience is in java below the web stack, but I have JSP'ed, Grailed, cgi'ed w/perl, Clojure/Clojurescripted, and mostly do REST api now. I probably looked at php once. But PHP strikes me as a healthy choice for getting patterns established, and it is easy to deploy to hosting sites. -M@ Quote Link to comment Share on other sites More sharing options...
ElectricLab Posted February 6, 2016 Share Posted February 6, 2016 Yes, but to be precise, the UDS is not an Ethernet adapter as you would expect in a PC, but it is a serial/TCP bridge. Correct. This is the only way you'll get any network connectivity with the TI, which I guess is how I took the question. There's no way the TI has enough memory and computing power to host a TCP/IP stack and do anything else useful. Quote Link to comment Share on other sites More sharing options...
ElectricLab Posted February 6, 2016 Share Posted February 6, 2016 (edited) I wired it up wrong Wednesday. Had to work too late Thursday night. But I finally rebuilt the cable and got the UDS and TI talking last night, using TIMXT. Today I'll make a browser cartridge eprom, and then go from there. Are you partial to a particular software stack? Something linux friendly? Most of my experience is in java below the web stack, but I have JSP'ed, Grailed, cgi'ed w/perl, Clojure/Clojurescripted, and mostly do REST api now. I probably looked at php once. But PHP strikes me as a healthy choice for getting patterns established, and it is easy to deploy to hosting sites. -M@ That's cool. I'd like to get setup to burn eproms - I haven't done that since the late 80s when we used to hack our PC BIOS roms. As for software for our envisioned TI webring, I created that user registration system would I though I could present to other programmers via an API, so they could write their own games and host them where/how ever they'd like. I want it to be modeled sort of like the game center that Apple and Android uses, where anyone can create and distribute games and use a common user database. We could open this up to other retro platforms as well, and play games against C64 users for example. Basically I want the system to be language and technology agnostic on the backend so anyone who wants to create cool games or apps in their preferred language can do so and we can link them together. It sounds like we have similar backgrounds. I have done mountains of Perl and really still like it (myTI99.com's user system and the chess game are in Perl) but I've also done PHP coding with a couple of frameworks, and I started learning Grails last year but now my day job involves hardware, C#, and Powershell. I think actually straight CGI-style with Perl or PHP is going to be easiest for the fact that there is such a small amount text that you can send to the TI browser due to the platform's constraints. Stuart has done a fantastic job of pushing the limits of what a browser can do, but you can only go so far. Even with my chess game, I have to watch the whitespace that gets printed to back to the TI to save space and I keep my form variables to 1-2 character names. Quite a few times I had to find ways to reduce the output, which was actually really fun to be honest. I think a little more work could be done on the browser side where whitespace can be removed from the stream as it's being loaded into the browsers parser, and things like the Apache header preamble stuff could be ignored, leaving more room for his 99ML code. Anyway I just feel that if I attempted to use a framework for the chess game, I'd have had a heck of a time making tight enough HTML/99ML. Also, rIght now there is no support for cookies with the browser making it difficult to tell users apart on the web, so I got around this by using a screen name and PIN that get used in each hyperlink on the page. Obviously this is lame in terms of security, but hopefully only Retronauts like us will be using this and gentlemanly behavior will be the norm. I thought about trying to use the remote user's IP address for this, but IP addresses change frequently, and I needed to support two machines behind a NAT router like I did during game development. This is all from my personal findings, and certainly nothing is etched in stone. I'm certainly no expert and would love to hear others' ideas. My hope is that we can tie things together with an open user registration backend and make a webring and this thing will expand and be full of useful things to do on the web with our ancient systems -Corey. Edited February 6, 2016 by ElectricLab Quote Link to comment Share on other sites More sharing options...
+mizapf Posted February 6, 2016 Share Posted February 6, 2016 Correct. This is the only way you'll get any network connectivity with the TI, which I guess is how I took the question. There's no way the TI has enough memory and computing power to host a TCP/IP stack and do anything else useful. Well, around 1997 or so I kicked off a liitle project to implement a TCP/IP stack on the Geneve; I called it TCPIP99. At least I got so far as implementing a ping server (ICMP) on a SLIP driver. So I could, in fact, ping my Geneve from the PC and got back the echo replies. However, with all those considerations about reassembly buffers for the IP layer, and at the same time the disappearance of modem connections, the project stalled somewhere at that point. 2 Quote Link to comment Share on other sites More sharing options...
+Schmitzi Posted February 7, 2016 Share Posted February 7, 2016 . What interface did you use for that ? go go Quote Link to comment Share on other sites More sharing options...
Omega-TI Posted February 7, 2016 Author Share Posted February 7, 2016 Schmitzi, That could be used on a label of Stuart's cartridge-based browser to show that it's REQUIRED. 1 Quote Link to comment Share on other sites More sharing options...
+Schmitzi Posted February 7, 2016 Share Posted February 7, 2016 Hi, I have tested chess today, with the NanoPEB F18A v1, XB2.7, UDS-10, Vonets VAP11N, and it works with an 1:1-cable (mouse-extension) (There are some gender-changers and 9p->25p in th game, but (I think) no NullModem..... -> Worx Same config with NanoPEB v2 -> NOPE Worx not nothing no I have to check my cable tomorrow, if it is really 1:1, and the go on with the NanoPEB V2.... Wasn´t there a difference on the RS232-chip, regarding v1 and v2 ? v2 the newer UART 16550 or so ? Should it work with the v2 ? I will tell here if I can see clearly ♪♫ ...or not Ralf @Corey, is there a thread for chess-requests/ideas ? Quote Link to comment Share on other sites More sharing options...
ElectricLab Posted February 7, 2016 Share Posted February 7, 2016 Hi, I have tested chess today, with the NanoPEB F18A v1, XB2.7, UDS-10, Vonets VAP11N, and it works with an 1:1-cable (mouse-extension) (There are some gender-changers and 9p->25p in th game, but (I think) no NullModem..... -> Worx Same config with NanoPEB v2 -> NOPE Worx not nothing no I have to check my cable tomorrow, if it is really 1:1, and the go on with the NanoPEB V2.... Wasn´t there a difference on the RS232-chip, regarding v1 and v2 ? v2 the newer UART 16550 or so ? Should it work with the v2 ? I will tell here if I can see clearly ♪♫ ...or not Ralf @Corey, is there a thread for chess-requests/ideas ? Good idea Quote Link to comment Share on other sites More sharing options...
Stuart Posted February 7, 2016 Share Posted February 7, 2016 schmitzi, on 07 Feb 2016 - 01:16 AM, said: Same config with NanoPEB v2 -> NOPE Worx not nothing no I have to check my cable tomorrow, if it is really 1:1, and the go on with the NanoPEB V2.... Wasn´t there a difference on the RS232-chip, regarding v1 and v2 ? v2 the newer UART 16550 or so ? Should it work with the v2 ? The browser interfaces with the TMS9902 serial chip directly, so it will only work with the NanoPEB v1. It *won't* work with the NanoPEB v2 with the 16550. @Corey - maybe something to clarify on your myti99.com homepage. Stuart. 2 Quote Link to comment Share on other sites More sharing options...
Stuart Posted February 7, 2016 Share Posted February 7, 2016 Well, around 1997 or so I kicked off a liitle project to implement a TCP/IP stack on the Geneve; I called it TCPIP99. At least I got so far as implementing a ping server (ICMP) on a SLIP driver. So I could, in fact, ping my Geneve from the PC and got back the echo replies. However, with all those considerations about reassembly buffers for the IP layer, and at the same time the disappearance of modem connections, the project stalled somewhere at that point. What hardware did you use to connect the Geneve to the Ethernet? Quote Link to comment Share on other sites More sharing options...
+mizapf Posted February 7, 2016 Share Posted February 7, 2016 (edited) SLIP: Serial Line Internet Protocol; sorry, I forgot to explain. Alternatively, you could implement PPP, but SLIP was enough for me for a start. https://tools.ietf.org/html/rfc1055 Although you would eventually have a serial-based connection, you can use a PC as a router between the TI/Geneve and the Internet. You would just have to install a SLIP driver on the PC, and the PC will connect to the outside world by its full network connection. I guess you won't be able to bridge the SLIP and the Ethernet interface, but instead you would have to set up a subnet for that serial connection. Edited February 7, 2016 by mizapf 1 Quote Link to comment Share on other sites More sharing options...
ElectricLab Posted February 8, 2016 Share Posted February 8, 2016 The browser interfaces with the TMS9902 serial chip directly, so it will only work with the NanoPEB v1. It *won't* work with the NanoPEB v2 with the 16550. @Corey - maybe something to clarify on your myti99.com homepage. Stuart. Website updated. 1 Quote Link to comment Share on other sites More sharing options...
pnr Posted February 12, 2016 Share Posted February 12, 2016 ElectricLab, on 06 Feb 2016 - 9:08 PM, said: Correct. This is the only way you'll get any network connectivity with the TI, which I guess is how I took the question. There's no way the TI has enough memory and computing power to host a TCP/IP stack and do anything else useful. Well, around 1997 or so I kicked off a liitle project to implement a TCP/IP stack on the Geneve; I called it TCPIP99. At least I got so far as implementing a ping server (ICMP) on a SLIP driver. So I could, in fact, ping my Geneve from the PC and got back the echo replies. However, with all those considerations about reassembly buffers for the IP layer, and at the same time the disappearance of modem connections, the project stalled somewhere at that point. That's interesting! In the past few weeks I've spent considerable time looking at the 1985-ish BSD tcp/ip stack as implemented for the PDP11 (2.9 BSD, 2.11 BSD and Ultrix11). The Ultrix version of the code looks the most interesting as it was adapted to run on a PDP11 without seperate I/D space (we would need a tms99105 for that). I've so far found that to support 5-10 simultaneous sockets one needs ~5KB of heap and ~30KB of buffer space. Not sure how much code is needed, my current estimate would be around 25KB. A Geneve can support that, as can a Cortex. Possibly it could work on a ti99/4a with a sams memory card. My idea is similar to yours: build a tcp/ip stack with a serial line driver (SLIP, CSLIP, PPP,etc.) and use a PC as a virtual ISP. If this was still the 90's it would work dialing in to the ISP over a modem. IP fragment reassembly is indeed one of the more involved bits of code, about 700 lines of C code. For a walkthrough of the code I can recommend "TCP/IP Illustrated, volume 2" by Stevens. According to a contemporary usenet post it really did work on a 1970's PDP11/40 in a two user Ultrix setup. A tms9995 has about the same processing power so should be fast enough (but back then we were over the moon with response times of several seconds). 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.