• Updated 2023-07-12: Hello, Guest! Welcome back, and be sure to check out this follow-up post about our outage a week or so ago.

Old Mac, Modern Internet

jhorvath911

Well-known member
With all the talk that's going on lately with old macs and internet this seems like an appropriate place to share what I think would be really cool. I wish that I could use for instance the old AOL software on one of my 68k macs but have current content delivered to the application. It would be a single interface to access email, get information from the web, and we already know the Client software runs on our machines.

So basically it would be setting up a server to allow connection from old mac running aol client and deliver current content. And the whole point that it would be a stripped down tool that's keeping you from having to deal with the complexities of the internet.

 

mactjaap

Well-known member
@VMSZealot

Maybe my lack of good English synonyms made your eyebrows frowns! When I say “discuss"  I mean there is no actual prototype or piece of usable software. As for the legacyweb.net there is. We can test it and see what we think.

 If your solution is ready to test I volunteer as well!

When developing the MacIPgw and MacIPgw I also needed testers and they didn’t come in bundles. So I was very happy Mattis of the Datormuseum (computer museum) in Sweden did test it.

http://www.datormuseum.se/computers/apple/macintosh-plus

 

markyb86

Well-known member
 I wish that I could use for instance the old AOL software on one of my 68k macs but have current content delivered to the application. 
Now this is something I can get behind. Sort of how all the different iPhone apps deliver content in their own ways.

 

bigmessowires

Well-known member
I wish that I could use for instance the old AOL software on one of my 68k macs but have current content delivered to the application. It would be a single interface to access email, get information from the web, and we already know the Client software runs on our machines.
I think we've exceeded the maximum number of near-identical efforts that can be underway at 68kmla at the same time. :)

Competing case mod efforts: 4

Competing old mac, modern internet efforts: 5

segmentation fault, core dumped

 

VMSZealot

Well-known member
As I say, within the month I aim to get a universal installer out (when I say universal installer, i mean an installer that you can download and use to install my software on any Linux / Unix machine, be it PC, RPi, old PPC Mac…) and open source the code on Git Hub. Then you can try it, improve it, make suggestions or roll it into your own solutions.

The first version will handle email only, and specifically tested with iCloud and Gmail. The next version will extend to being a web proxy. Then I'd like to add syncing for contacts and calendar - and we'll see where we go from there.

Actually, and for the fun of it, if anyone knows the protocol specifications for eWorld perhaps we could resurrect that too!

 

VMSZealot

Well-known member
No information on the eWorld protocols?

Never mind.  Here's a progress update for you.  IMAPS functionality is now implemented and tested with Google.  I haven't tried it with iCloud yet.  I will, but first I want to get POP working.

Once POP is working, I'll get SMTP going - and then build an installer and put it on GitHub for you all to play with.

 

agent_js03

Well-known member
Wow. Great minds think alike and all that. Reading that post though, it looks like it might be a clever collection of existing software. Certainly, it mentions using stunnel - which isn't the easiest software to use.

The solution that I'm writing will be self contained and, hopefully, a lot simpler to configure and set up. No tunnelling will happen at all - to the vintage computer the Pi will look like the server. When it makes a request to the Pi (when requesting a page, requesting email, sending email) it will send it to the Pi and then the Pi will process it and make a separate request of its own, using modern internet standards. When the Pi receives a response it will package it up appropriately and then return it to the requesting machine.

Sure, this approach will add a little latency - but not enough that you'd notice.
Hi,

I am the author of that project. If you look at the github, part of the appeal is that it uses ansible to automatically configure your stunnel for you. In fact, it configures pretty much everything for you. All you do is edit a configuration file, run it and bam, you are done.

I can see however that having everything configurable in the same place post-installation, such as through a UI, would be preferable. Maybe that should be your focus. There is no need to "reinvent the wheel" so to speak by writing software that all these other components already do. Just write a web interface or something where you can configure your mail settings, etc. and then click save, and it will automatically update all the configuration files.

I guarantee you it is a lot easier to install packages and edit configuration files than it is to write your own version of all these things.

 

agent_js03

Well-known member
my thought in the past was using an external co-processor to do all the rendering, Like a server as you suggest, or a Pi, or something along the lines. 

But instead of coming back to the old browser as images, it needs to come back as full content, just in a language the older machines can understand. 

Almost like a translator of sorts. That would be one way. 

The other way would be a co-processor running the entire browser except for the UI, and its outputbuffer/displaybuffer gets dumped to a custom "browser" written to run on those old machines. So they work and act like todays browsers and are just as responsive, because all the heavy hitting is done on the copro. Then your mouse movement, key types, and mouse action are all sent as datagrams/packets/etc back to the browser engine running on the copro. browser processes those as if it were running on the native machine, and then browser responds like it normally would, say hovering over hamburger menus, etc... and re-renders what it needs to and dumps it back to the displaybuffer. 

Sure the UI then becomes a "terminal" at that point, but at least the internet browsing would be responsive. and the UI looks native instead of a window that is like an X-window remote connection. 
I have often thought of this as a solution as well. It is challenging because HTML/javascript/etc keeps changing constantly, plus to my understanding there is always more than one way to do something. So for example translating the newer 'divs' to tables and whatnot may not end up looking the way you want them to, not to mention that with javascript functionality increasing, you would have to somehow simulate the newer javascript functionality at the server level and then use the older javascript on the client. I can't think of any way of doing this other than manually.

 

VMSZealot

Well-known member
Hi,

I am the author of that project. If you look at the github, part of the appeal is that it uses ansible to automatically configure your stunnel for you. In fact, it configures pretty much everything for you. All you do is edit a configuration file, run it and bam, you are done.

I can see however that having everything configurable in the same place post-installation, such as through a UI, would be preferable. Maybe that should be your focus. There is no need to "reinvent the wheel" so to speak by writing software that all these other components already do. Just write a web interface or something where you can configure your mail settings, etc. and then click save, and it will automatically update all the configuration files.

I guarantee you it is a lot easier to install packages and edit configuration files than it is to write your own version of all these things.
My tool is coming along more slowly than I'd hoped (the pressures of work and all that!) but it can now fetch email from multiple accounts and serve them up to a classic Mac - any classic Mac capable of running an email client. As long as it can connect to the server (using Ethernet or SLIP) then my tool will work. I haven't put the code on Git yet because I haven't (yet) finished SMTP.

I confess that I couldn't work out how to make stunnel work, although that's probably just an example of me being dense. Example configuration files, with annotations describing what each setting does, for common email services like Gmail and iCloud, might be helpful.

That said though, unless I am missing something, I suspect that my tool might have value for some users - not least because a client (the classic Mac) can connect using POP3 and receive their email from an IMAP server. I don't believe that this is what stunnel was designed to be able to do.

Perhaps, though, if you could make stunnel easier to configure (or, at least, provide detailed examples covering the settings for stunnel for common email providers (as mentioned previously) and also the settings that need to be used in common Classic email software to work with stunnel (Eudora, Emailer, Outlook Express etc)), someone could roll up an easy to set up Linux server image to serve up internetty goodness to the retro computing community…

 

VMSZealot

Well-known member
Okay - so progress has been made and screenshots will be available soon. Claris Emailer and Eudora are both able to retrieve email from Gmail successfully (without enabling POP on Gmail). SMTP isn't working yet, and neither is entirely happy with displaying some modern email - fortunately though, owing to the way my software works, I can fix this - the email can be interpreted and reformatted when it gets sent to the vintage computer. That's for another day though - I want to get SMTP working first.

I think I've had a bit of a cunning plan for getting Internet working too. My thoughts are that vintage computers don't actually need to display modern internet. No one with a vintage computer is going to be doing Facebook, Internet Banking, ordering things from Amazon, or watching iPlayer. Browsing certainly - but a computer from 1995 (or earlier) isn't really going to need Internet more advanced than Internet from the late 20th Century.

That being the case, there's a ready source of Internet Pages good to go - no need for (much) reformatting. It's called Wayback Machine - and, yes, it's a little slow - but so are our computers. Here is how I think that it might work:

Raspberry Pi (or other computer) is the gateway.

Vintage computer makes a request for, say, www.apple.com

Gateway computer receives request and looks in its configuration to see what date page it should be requesting (for example, the gateway might be configured to request pages from 1998).

It will try to retrieve the page within that timespan but, if it can't get it, it will edge forward through time until it finds a page that matches.

Once it gets the page it removes the floating Wayback Machine bar and sends the page on to the requesting vintage computer.

The gateway computer would also have a simple search engine webpage on it to provide a launching point to Wayback Machine.

So, any thoughts anyone? Any objections to this method, or suggestions on how to make it work?

 

Machead

Well-known member
Probably the first problem I could think of is that the information, together with the format, is regressed to e.g. 1998.  We're not running our Macs in 1998; we're running them in 2017.  What would that do to sites like 68kmla?  My 6360 was current in 1998, and my G4 didn't even exist!

 

agent_js03

Well-known member
Here's my cheat sheet for the efforts being discussed. Please correct any errors.

Denodster is trying to build Mozilla for PPC, then will attempt to make a 68K version of that. 

Agent_js03 is developing something called LegacyWeb. It uses a Rasperry Pi as a proxy (if that's the right term). Secure email is accomplished through stunnel. Some type of unspecified proxy software filters and simplifies web pages on the fly.

VMS Zealot is developing a very similar project with no name (Old Mac, Modern Internet thread). It also uses a Raspberry Pi as a proxy, but the approach is slightly different. For this project, the RPi *is* the server instead of acting as a man in the middle. 

And then mactjaap has MacIPgw which has existed for some time. It can run on an Orange Pi, and it contains proxy components with a similar purpose to the others. Stunnel for email, http 1.1 to 1.0 proxy, web rendering proxy.

The efforts from Agent_js03 and VMS Zealot seem very similar to me. Maybe they can combine their efforts?
Clarification needed here...

I am not really using a "proxy" solution per se for web pages, I am developing individual pages that use APIs (such as Google Maps, weather, etc.) to serve that data to the older pc/mac.

Also as demonstrated by this thread:

https://68kmla.org/forums/index.php?/topic/30827-testing-the-legacywebnet-project-use-modern-web-on-older-softwarehardware/

the ansibleized is not fully working yet on the raspberry pi. I have modified it manually to work on my raspberry pi, but haven't checked in those changes yet or made them more "productionized." I plan to do this when I have the time. I am currently about to have two kids under 2 and also have some home related projects going on, so time is a commodity and I admit progress on this project is about to come to a very slow creep.

 

agent_js03

Well-known member
With all the talk that's going on lately with old macs and internet this seems like an appropriate place to share what I think would be really cool. I wish that I could use for instance the old AOL software on one of my 68k macs but have current content delivered to the application. It would be a single interface to access email, get information from the web, and we already know the Client software runs on our machines.

So basically it would be setting up a server to allow connection from old mac running aol client and deliver current content. And the whole point that it would be a stripped down tool that's keeping you from having to deal with the complexities of the internet.
It's funny you mention it, I had actually started working a while back on a python project to mock the OSCAR protocol used by AOL instant messenger. The goal being that you could write another component that links to, say, facebook chat, and then delivers buddy lists, IMs, etc. to the AIM client as if it were to an AIM account. I had gotten as far as successfully mocking an login, and fetching some statistics. I then gave up on it. It's actually not horribly onerous, but for one guy with very little time on his hands, it got to be too much.

When I get home I will look on my personal laptop and find out what git repo I was committing to, if anyone is interested.

 

VMSZealot

Well-known member
Okay - so I still haven't entirely decided what it's called, and it's still only partially working, but here it is https://github.com/PascalHarris/NetGateway - have fun.

I've got rather a lot on at the moment, so I make no promises as to when I'll finish writing it, but it has tremendous scope for improvement (reformatting email into a more vintage friendly format, for example - as you can see, there are escape codes in the UTF which it definitely doesn't like) - and it may be that others have good ideas for how to improve it.  If you do want to improve it, be sure to make your commits with full and detailed comments - otherwise I'll reject them.  Not out of spite, but just because I don't have time to work out what your change does and why.

Be sure to read the Preliminary Instructions file first - it'll tell you how to install and configure this tool.  If you have any questions feel free - but, in the meantime, behold the LCIII reading modern Gmail.  Neat, huh?

PICTURE1.jpg.2a4e9a6f4f450f1c2560189b85ccee2c.jpg


PICTURE2.jpg.c464e25e21e9f8e14607bb534bd33f04.jpg


 
Last edited by a moderator:

mactjaap

Well-known member
Please add the pictures as attachment to this forum. If you did you can include them to your post. And they will be part of the future of this forum.

 

VMSZealot

Well-known member
@mactjaap - Love to. Er.  How?

As to the deletion bug, it's a brown paper bag job.  I'm deeply embarrassed, and I hide my head in shame.  I'll fix it immediately.  Before anyone notices, hopefully!

 
Top