-
Content Count
330 -
Joined
-
Last visited
Content Type
Profiles
Member Map
Forums
Blogs
Gallery
Calendar
Store
Everything posted by ElectricLab
-
Stuart's TI-99/4A - Internet Web Browser
ElectricLab replied to Omega-TI's topic in TI-99/4A Computers
I should add that I'm running Apache on the server at 192.168.0.99 in my above post. -
Stuart's TI-99/4A - Internet Web Browser
ElectricLab replied to Omega-TI's topic in TI-99/4A Computers
I wonder if your embedded webserver is sending something different to the browser in terms of CONTENT-TYPE or other subtlety that Stuart's browser isn't liking, maybe even as simple as a newline character or something. I'm assuming that you can pull of the page on a modern browser served up by the embedded server OK? You could go at this a couple of different ways. You could sniff the traffic of both a successful and non-successful session and compare them. I don't know what the OS/capabilities of your embedded environment are, but if it's Linux, you could easily capture the traffic right on the device with tcpflow. I'd also check the results of both the Apache server and the embedded webserver with a simple telnet check. For example I just did this on my MacBook: telnet 192.168.0.99 80 <enter> GET / <enter> <99ml> <cdef:85:00000000647F7F3F> <cdef:86:0000000098F8F8F0> <cdef:89:000000040C1C3C7C> <cdef:8A:0060E0F0F878F8F8> <p>black on blue example:</p> <br> <p><clr:15><chr:85></clr><clr:15><chr:86></clr></p> <p><clr:15><chr:87></clr><clr:15><chr:88></clr></p> <br><br> <p>black on blue followed by black on white:</p> <br> <p><clr:15><chr:85></clr><clr:15><chr:86></clr><clr:1F><chr:89></clr><clr:1F><chr:8A></clr></p> <p><clr:15><chr:87></clr><clr:15><chr:88></clr><clr:1F><chr:8B></clr><clr:1F><chr:8C></clr></p> </99ml> Also - text should be in <p> tags to be reliably visible in Stuart's browser. -
Stuart's TI-99/4A - Internet Web Browser
ElectricLab replied to Omega-TI's topic in TI-99/4A Computers
A chess board page on myti99.com is the largest page, and the amount of bytes is around 11,800. This page contains lots of custom character definitions and is probably one of the largest I'd ever make. On the server side I try to keep the size of the page down by automatically removing newline characters and keep whitespace to a minimum. That brings up a question I had - does the browser just discard whitespace/newlines when it's parsing the page such that it doesn't actually affect memory utilization if we get sloppy? I figured it best to reduce the traffic to a minimum to make data transfer faster and the fastest web browsing possible. Since Slinkeey is working on some things too, maybe he can chime in on what he's getting for a page size. Thanks, Corey. -
Stuart's TI-99/4A - Internet Web Browser
ElectricLab replied to Omega-TI's topic in TI-99/4A Computers
Yes, you could certainly create a local static route on your network to encompass the IP address where the DNS resolver script currently resides. You could then proxy it to an internal machine running the same script or bring up a machine on that external IP address on your local subnet. This would be a bit of a nasty hack, and I don't think you'll have to do it since it sounds like Stuart is going to put a fix in place. -
Stuart's TI-99/4A - Internet Web Browser
ElectricLab replied to Omega-TI's topic in TI-99/4A Computers
You can't, even if you run a local DNS server. The issue is that if you're dealing with an IP address, DNS wouldn't be queried so you can't redirect it. -
Stuart's TI-99/4A - Internet Web Browser
ElectricLab replied to Omega-TI's topic in TI-99/4A Computers
Indeed it would be handy to have it work with IP addresses instead of hostnames so you could experiment with it. What I did when I was developing was create a dev hostname, which I had to create DNS records for. I've taken to using name-based virtual hosts (Apache FTW!) and puttign some default page up if you connect to it by its IP address only. -
Stuart's TI-99/4A - Internet Web Browser
ElectricLab replied to Omega-TI's topic in TI-99/4A Computers
I believe the browser makes a call to his DNS resolver script, via a hard-coded IP address. You'd not be able to redirect this which is why Stuart suggested a hex/edit of the browser to change this to your local IP address. There are two fixes I can think of: 1) Stuart could modify his DNS resolver script to detect that it's being sent an IP address and not a host name, and simply return the IP address it was given. 2) Stuart could modify the browser to detect that it's been asked to go to an IP address and bypass the host name lookup, and pass this IP address on to the code which generates the call to the serial adapter. I think the first solution is OK since the browser does cache 5 or so IP addresses so it doesn't keep trying to resolve names. -
Stuart's TI-99/4A - Internet Web Browser
ElectricLab replied to Omega-TI's topic in TI-99/4A Computers
Sounds good. I'll be happy to test IP address functionality when you do modify the script. I know you can leave off the 'www' when entering a URL into your browser, and it works OK. -
Stuart's TI-99/4A - Internet Web Browser
ElectricLab replied to Omega-TI's topic in TI-99/4A Computers
I've not used filter_var, but it looks handy. -
Stuart's TI-99/4A - Internet Web Browser
ElectricLab replied to Omega-TI's topic in TI-99/4A Computers
This code should do it: <?php # $host_name = 'myti99.com'; # $host_name = '10.192.2.4'; $host_name = '10.2.3.4/test.html'; print "host_name: $host_name\n"; if (preg_match('/^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}/', $host_name)) { print "That's an IP address\n"; } else { print "That's a hostname!\n"; } ?> I'm not sure if the IP address is passed by itself or has '/somefile.html' along with it when it's passed to your PHP script, so I wrote this regex to account for it. You could change the preg_match to this to match only an IP address and nothing else like this: if (preg_match('/^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/', $host_name)) { -
Stuart's TI-99/4A - Internet Web Browser
ElectricLab replied to Omega-TI's topic in TI-99/4A Computers
Sure thing. If you want to email me the script I can change it, or when I get back to the office I'll come up with a regex to do it. -
Stuart's TI-99/4A - Internet Web Browser
ElectricLab replied to Omega-TI's topic in TI-99/4A Computers
Stuart, wouldn't it be possible to modify the PHP script to realize it's been passed an IP address via a regex and then just return the address back to the browser? If you want, I'd be glad to host a backup of this DNS script here in the States. The browser could be modified to set mine as secondary and automatically check the secondary if the primary doesn't answer. -
Stuart's TI-99/4A - Internet Web Browser
ElectricLab replied to Omega-TI's topic in TI-99/4A Computers
Very cool. I look forward to seeing what you make. If you need a place to host pages, I can provide space on myti99.com. At the very least, when you have stuff ready for prime time, we should make a webring of sorts to bring it all together. -
Stuart's TI-99/4A - Internet Web Browser
ElectricLab replied to Omega-TI's topic in TI-99/4A Computers
No, I don't think that is supported. I believe it will try to do DNS lookup on the address as though it were a name. I suppose Stuart could modify his server-side code to properly return the IP address back to the browser in this case. So.....Are you doing some web dev work for the TI? I'll gladly share what I've learned doing so on myti99.com. -
I am with you there. I use only a specific credit card for online purchases, so it's easy for me to keep tabs on it should any fraud occur. If it does, then I'm not liable anyway so that's how I justify it.
-
Seconded. Greg is a stand-up guy.
-
"So I might end up setting up a second console. One for everyday and one for modding and special purposes." and this is how it begins!
-
The TI-99/4A -- Home Automation Projects (and/or ideas)
ElectricLab replied to Omega-TI's topic in TI-99/4A Computers
I didn't see this posting until today. I've done a significant amount of programming and hardware hacking in home automation. I've been working on my main project for about 18 years, and have had all my home lights controlled with Insteon controllers for about 10 years. Insteon is similar to X10 in that it uses the power mains for comms + a wireless protocol. X10 has lots of problems and pretty much sucks compared to modern stuff. Insteon devices handshake with each other so you can have reliable messaging between devices and the controller. I really wanted the controlling computer to know the exact state of things, and I rarely find anything out of sync with Insteon. I have whole-house stereo audio with individual channels for each room (thanks to cheap USB sound card dongles), complete integration with my ADT alarm system (all sensor data feeds into my HA system), scenes, text-to-speech (provided by festival), sprinkler control, garage door control, thermostat control, etc. All of this is my own home-grown stuff, based on Linux and MySQL as a database, and I have had control of all of this from a mobile device for about 8 years, long before the stuff you see at your favorite home improvement store appeared on shelfs. None of it uses and cloud-based stuff like Nest. I have plans to turn it into a proper open-source project and release it into the wild. I never thought about using a TI for any part of this since I have a lot of computation going on and use a database that has millions of rows in it since I log anything that occurs in the system (including motion events from the alarm system and manual light switch presses). I can create scenes that are useful such as not allowing the kids to turn on the AC in the summer if they leave any doors or windows open I am building a new lab in an outbuilding on my property - maybe I'll set up a TI to serve some of this purpose. I'm sure it could handle some of the simpler I/O like relay control for the sprinklers, etc. It probably could do transmits but might have a hard time keeping up with the huge streams of data I have coming in. -
32k expansion for the side port - released
ElectricLab replied to jedimatt42's topic in TI-99/4A Development
I personally like the coaxial connector you used. Micro-usb connectors that are SMT are a bad idea for something that should have strain relief. -
Do people collect these silent 700/745/750 terminals? I just picked up a very small silent 700 because it was $25 from an estate sale. I already had a larger one with the acoustic coupler built-in. There was a big old 700 in a locking case that is probably still there, in the Boston area. If anyone wants more details I'd be glad to pass the info on.
-
I know I erased some back in the day just by setting them on a window sill, but I think Omega's right - life's too short for EPROMS. I expect this to be on a t-shirt at the next FestWest.
-
Now is a great time to buy black lights because of Halloween. They had little fluorescent fixtures at my local store for ~$20 last year, and they'd probably work well for erasing EPROMS. I should point out that they work great for any Retr0brite projects that people like us probably have
-
Mine too.
-
32k expansion for the side port - released
ElectricLab replied to jedimatt42's topic in TI-99/4A Development
Glad to help, especially for such a worthwhile project. So far, we're keeping under 1085 celsius which is the melting point of copper. -
32k expansion for the side port - released
ElectricLab replied to jedimatt42's topic in TI-99/4A Development
Absolutely. So many people are going to be happy with this.
